diff --git a/.gitignore b/.gitignore
index e70d5ac884..a316adf1e5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,6 +19,8 @@ koha-tmpl/intranet-tmpl/prog/css/calendar.css
koha-tmpl/intranet-tmpl/prog/css/calendar-rtl.css
koha-tmpl/intranet-tmpl/prog/css/holds.css
koha-tmpl/intranet-tmpl/prog/css/holds-rtl.css
+koha-tmpl/intranet-tmpl/prog/css/ill-requests.css
+koha-tmpl/intranet-tmpl/prog/css/ill-requests-rtl.css
koha-tmpl/intranet-tmpl/prog/css/installer.css
koha-tmpl/intranet-tmpl/prog/css/installer-rtl.css
koha-tmpl/intranet-tmpl/prog/css/mainpage.css
diff --git a/ill/ill-requests.pl b/ill/ill-requests.pl
index 02af20935d..0db9c09b1e 100755
--- a/ill/ill-requests.pl
+++ b/ill/ill-requests.pl
@@ -503,10 +503,11 @@ if ($backends_available) {
}
$template->param(
- backends => $backends,
- types => [ "Book", "Article", "Journal" ],
- op => $op,
- branches => Koha::Libraries->search,
+ backends => $backends,
+ types => [ "Book", "Article", "Journal" ],
+ op => $op,
+ branches => Koha::Libraries->search,
+ illreq_tabs => C4::Context->yaml_preference('ILLRequestsTabs'),
);
output_html_with_http_headers( $cgi, $cookie, $template->output );
diff --git a/koha-tmpl/intranet-tmpl/prog/css/src/ill-requests.scss b/koha-tmpl/intranet-tmpl/prog/css/src/ill-requests.scss
new file mode 100644
index 0000000000..1433a16583
--- /dev/null
+++ b/koha-tmpl/intranet-tmpl/prog/css/src/ill-requests.scss
@@ -0,0 +1,16 @@
+form#illfilter_form div.ms-parent button.ms-choice span.placeholder {
+ background-color: transparent;
+ cursor: default;
+}
+
+form#illfilter_form div.ms-parent button.ms-choice {
+ height: calc(1.5em + .75rem + 2px);
+}
+
+form#illfilter_form div.ms-parent div.ms-drop input[type="checkbox"] {
+ margin-left: -1.25rem
+}
+
+form#illfilter_form div.ms-parent div.ms-drop ul > li {
+ padding: .25rem 8px;
+}
\ No newline at end of file
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/ill-filter.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/ill-filter.inc
index 4d3a2e0ca8..8c4e48530a 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/ill-filter.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/ill-filter.inc
@@ -19,7 +19,7 @@
-
+
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/ill-list-table-strings.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/ill-list-table-strings.inc
index f0b0d8194e..7a7989b331 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/ill-list-table-strings.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/ill-list-table-strings.inc
@@ -3,7 +3,6 @@
var ill_borrower_details = _("View patron details");
var ill_manage = _("Manage request");
var ill_manage_select_backend_first = _("Select a backend first");
- var ill_all_statuses = _("All statuses");
var ill_all_status_aliases = _("All status aliases");
var ill_no_status_alias = _("No status alias");
var ill_status_aliases = _("Status aliases");
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/ill/ill-requests.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/ill/ill-requests.tt
index cb6aff2067..26ba077ed9 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/ill/ill-requests.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/ill/ill-requests.tt
@@ -16,6 +16,8 @@
[% END %]
[% INCLUDE 'doc-head-close.inc' %]
+[% Asset.css("css/ill-requests.css") | $raw %]
+[% Asset.css("lib/jquery/plugins/multiple-select/multiple-select.min.css") | $raw %]
@@ -835,6 +837,18 @@
[% END %]
+ [% WRAPPER tabs id= "ill-list-tabs" %]
+ [% WRAPPER tabs_nav %]
+ [% WRAPPER tab_item tabname= "ill-list-tab-all" bt_active= 1 %]
+ All
+ [% END %]
+ [% FOREACH illreq_tab IN illreq_tabs %]
+ [% WRAPPER tab_item tabname= "ill-list-tab-${loop.index}" %]
+ [% illreq_tab.name | html %]
+ [% END %]
+ [% END %]
+ [% END # /WRAPPER tabs_nav %]
+ [% END %]
Details for all requests
[% INCLUDE 'ill-list-table.inc' %]
@@ -1132,6 +1146,7 @@
[% IF op == 'generic_confirm' && Koha.Preference('ILLCheckAvailability') %]
[% Asset.js("js/ill-availability-partner.js") | $raw %]
[% END %]
+ [% Asset.js("lib/jquery/plugins/multiple-select/multiple-select.min.js") | $raw %]
[% END %]
[% TRY %]
diff --git a/koha-tmpl/intranet-tmpl/prog/js/ill-list-table.js b/koha-tmpl/intranet-tmpl/prog/js/ill-list-table.js
index 5bb38ed9e7..798e656b4d 100644
--- a/koha-tmpl/intranet-tmpl/prog/js/ill-list-table.js
+++ b/koha-tmpl/intranet-tmpl/prog/js/ill-list-table.js
@@ -17,6 +17,26 @@ $(document).ready(function () {
$("#addcomment").toggleClass("content_hidden");
});
+ $("div#ill-list-tabs a[id^='ill-list-tab'").on("click", function (e) {
+ e.preventDefault();
+ var select_status_el = $("form#illfilter_form select#illfilter_status");
+ var tab_statuses = $(this).children('span').attr("data-statuses");
+ if (tab_statuses) {
+ tab_statuses.split('|').forEach((select_status_option) => {
+ if ($("#illfilter_status option[value='"+select_status_option+"']").length === 0) {
+ select_status_el.append($('"
- );
statuses
.sort((a, b) => a.str.localeCompare(b.str))
.forEach(function (status) {
@@ -558,6 +575,13 @@ $(document).ready(function () {
""
);
});
+ $("select#illfilter_status").multipleSelect( {
+ placeholder: _("Please select ..."),
+ selectAllText: _("Select all"),
+ allSelected: _("All selected"),
+ countSelected: _("# of % selected"),
+ noMatchesFound: _("No matches found"),
+ } );
}
function addStatusAliasOptions(status_aliases) {