From 31591cc1eb96e588302684d7a7de0076e8d42c78 Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Wed, 24 Feb 2021 13:34:14 +0000 Subject: [PATCH] Bug 27773: Hide unique holidays and exceptions which have passed This patch modifies the display of unique holidays and holiday exceptions so that dates in the past are hidden by default. A corresponding "Show past entries" checkbox can be checked to show the hidden entries. This patch also moves the inline CSS to a separate file because I want to. To test you should have some unique holidays and holiday exceptions in your system from the past and in the future. - Apply the patch and go to Tools -> Calendar - In the tables of existing holidays, check that no dates in the past appear in the "Exceptions" or "Unique holidays" tables. - Checking the checkbox at the top of each of these tables should trigger the display of the hidden rows. --- koha-tmpl/intranet-tmpl/prog/css/calendar.css | 160 +++++++++++++++++++++ .../prog/en/modules/tools/holidays.tt | 18 ++- 2 files changed, 176 insertions(+), 2 deletions(-) create mode 100644 koha-tmpl/intranet-tmpl/prog/css/calendar.css diff --git a/koha-tmpl/intranet-tmpl/prog/css/calendar.css b/koha-tmpl/intranet-tmpl/prog/css/calendar.css new file mode 100644 index 0000000000..db046936ed --- /dev/null +++ b/koha-tmpl/intranet-tmpl/prog/css/calendar.css @@ -0,0 +1,160 @@ +.controls { + display: block; + padding: 3px 0; +} + +.key { + padding: 3px; + white-space: nowrap; + line-height: 230%; + } + + .ui-datepicker { + font-size: 150%; + } + + .ui-datepicker th, + .ui-datepicker .ui-datepicker-title select { + font-size: 80%; + } + + .ui-datepicker td a { + padding: .5em; + } + + .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { + font-size: 80%; + } + + .key { + padding: 3px; + white-space: nowrap; + line-height: 230%; + } + + .normalday { + background-color: #EDEDED; + color: Black; + border: 1px solid #BCBCBC; + } + + .exception { + background-color: #b3d4ff; + color: Black; + border: 1px solid #BCBCBC; + } + + .holiday { + background-color: #ffaeae; + color: Black; + border: 1px solid #BCBCBC; + } + + .repeatableweekly { + background-color: #FFFF99; + color: Black; + border: 1px solid #BCBCBC; + } + + .repeatableyearly { + background-color: #FFCC66; + color: Black; + border: 1px solid #BCBCBC; + } + + td.exception a.ui-state-default { + background: #b3d4ff none; + color: Black; + border: 1px solid #BCBCBC; + } + + td.holiday a.ui-state-default { + background: #ffaeae none; + color: Black; + border: 1px solid #BCBCBC; + } + + td.repeatableweekly a.ui-state-default { + background: #FFFF99 none; + color: Black; + border: 1px solid #BCBCBC; + } + + td.repeatableyearly a.ui-state-default { + background: #FFCC66 none; + color: Black; + border: 1px solid #BCBCBC; + } + + .information { + z-index: 1; + background-color: #DCD2F1; + width: 300px; + display: none; + border: 1px solid #000000; + color: #000000; + font-size: 8pt; + font-weight: bold; + background-color: #FFD700; + cursor: pointer; + padding: 2px; + } + + .panel { + z-index: 1; + display: none; + border: 3px solid #CCC; + padding: 3px; + margin-top: .3em; + background-color: #FEFEFE; + } + + fieldset.brief { + border: 0; + margin-top: 0; + } + + #showHoliday { + margin: .5em 0; + } + + h1 select { + width: 20em; + } + + fieldset.brief ol { + font-size: 100%; + } + + fieldset.brief li, + fieldset.brief li.radio { + padding: 0.2em 0; + } + + .help { + margin: .3em 0; + border: 1px solid #EEE; + padding: .3em .7em; + font-size: 90%; + } + + #holidayweeklyrepeatable, + #holidaysyearlyrepeatable, + #holidaysunique, + #holidayexceptions { + font-size: 90%; + margin-bottom: 1em; + } + + .calendar td, + .calendar th, + .calendar .button, + .calendar tbody .day { + padding: .7em; + font-size: 110%; + } + + .calendar { + width: auto; + border: 0; + } diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/holidays.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/holidays.tt index 18e6cb0775..fff6a6948e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/holidays.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/holidays.tt @@ -228,6 +228,10 @@ [% IF ( EXCEPTION_HOLIDAYS_LOOP ) %]

Exceptions

+ @@ -298,6 +302,10 @@ [% IF ( HOLIDAYS_LOOP ) %]

Unique holidays

+
Date
@@ -485,8 +493,9 @@ show_expired checkbox is checked */ $.fn.dataTable.ext.search.push( function( settings, searchData, index, rowData, counter ) { + var table = settings.nTable.id; var row = $(settings.aoData[index].nTr); - if( row.hasClass("date_past") && !$("#show_expired").prop("checked") ){ + if( row.hasClass("date_past") && !$("#show_past_" + table ).prop("checked") ){ return false; } else { return true; @@ -512,7 +521,7 @@ "sDom": 't', "bPaginate": false })); - $("#holidayexceptions,#holidaysyearlyrepeatable,#holidaysunique").dataTable($.extend(true, {}, dataTablesDefaults, { + var tables = $("#holidayexceptions,#holidaysyearlyrepeatable,#holidaysunique").DataTable($.extend(true, {}, dataTablesDefaults, { "sDom": 't', "aoColumnDefs": [ { "type": "title-string", "targets" : [ "title-string" ] }, @@ -525,6 +534,11 @@ } } })); + + $(".show_past").on("change", function(){ + tables.draw(); + }); + $("a.helptext").click(function(){ $(this).parent().find(".hint").toggle(); return false; }); -- 2.11.0