Bug 6898 - circulation librarians can't run overdues without reports permissions
authorKyle M Hall <kyle@bywatersolutions.com>
Fri, 10 Feb 2012 15:43:29 +0000 (10:43 -0500)
committerJared Camins-Esakov <jcamins@cpbibliography.com>
Wed, 13 Mar 2013 12:14:18 +0000 (08:14 -0400)
This patch adds a new user permission overdues_report for the circulation module, and requires this permission to run the overdue items
report, rather than requiring full reports permissions.

Test plan :
With a user with permissions circulate_remaining_permissions :
- Add overdues_report permission to user
- Go to circulation home
=> you see "Overdues" link
- Clik on it
=> you are allowed to access and use this page
- Remove overdues_report permission to user
- Go to circulation home
=> you do not see "Overdues" link
- Edit URL : <server>/cgi-bin/koha/circ/overdue.pl
=> you are not allowed to access this page
- Go to main page
=> you don't have access to reports module

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Fridolyn SOMERS <fridolyn.somers@biblibre.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
12 files changed:
circ/overdue.pl
installer/data/mysql/de-DE/mandatory/userpermissions.sql
installer/data/mysql/en/mandatory/userpermissions.sql
installer/data/mysql/es-ES/mandatory/userpermissions.sql
installer/data/mysql/fr-FR/1-Obligatoire/userpermissions.sql
installer/data/mysql/it-IT/necessari/userpermissions.sql
installer/data/mysql/nb-NO/1-Obligatorisk/userpermissions.sql
installer/data/mysql/pl-PL/mandatory/userpermissions.sql
installer/data/mysql/ru-RU/mandatory/permissions_and_user_flags.sql
installer/data/mysql/uk-UA/mandatory/permissions_and_user_flags.sql
installer/data/mysql/updatedatabase.pl
koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation-home.tt

index cef345c..8fed8c8 100755 (executable)
@@ -60,7 +60,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
         query           => $input,
         type            => "intranet",
         authnotrequired => 0,
-        flagsrequired   => { reports => 1, circulate => "circulate_remaining_permissions" },
+        flagsrequired   => { circulate => "overdues_report" },
         debug           => 1,
     }
 );
index ec5a22a..f203a8d 100644 (file)
@@ -1,6 +1,7 @@
 INSERT INTO permissions (module_bit, code, description) VALUES
    ( 1, 'circulate_remaining_permissions', 'Übrige Ausleihberechtigungen'),
    ( 1, 'override_renewals', 'Gesperrte Verlängerungen überschreiben'),
+   ( 1, 'overdues_report', 'Execute overdue items report'),
    ( 3, 'parameters_remaining_permissions', 'Übrige Administrationsberechtigungen'),
    ( 3, 'manage_circ_rules', 'Ausleihkonditionen verwalten'),
    ( 6, 'place_holds', 'Vormerkungen für Benutzer setzen'),
index 070e8f5..8577ef2 100644 (file)
@@ -1,6 +1,7 @@
 INSERT INTO permissions (module_bit, code, description) VALUES
    ( 1, 'circulate_remaining_permissions', 'Remaining circulation permissions'),
    ( 1, 'override_renewals', 'Override blocked renewals'),
+   ( 1, 'overdues_report', 'Execute overdue items report'),
    ( 3, 'parameters_remaining_permissions', 'Remaining system parameters permissions'),
    ( 3, 'manage_circ_rules', 'manage circulation rules'),
    ( 6, 'place_holds', 'Place holds for patrons'),
index 070e8f5..8577ef2 100644 (file)
@@ -1,6 +1,7 @@
 INSERT INTO permissions (module_bit, code, description) VALUES
    ( 1, 'circulate_remaining_permissions', 'Remaining circulation permissions'),
    ( 1, 'override_renewals', 'Override blocked renewals'),
+   ( 1, 'overdues_report', 'Execute overdue items report'),
    ( 3, 'parameters_remaining_permissions', 'Remaining system parameters permissions'),
    ( 3, 'manage_circ_rules', 'manage circulation rules'),
    ( 6, 'place_holds', 'Place holds for patrons'),
index 3147bed..3c57a81 100644 (file)
@@ -1,6 +1,7 @@
 INSERT INTO permissions (module_bit, code, description) VALUES
    ( 1, 'circulate_remaining_permissions', 'Fonctions de circulation restantes'),
    ( 1, 'override_renewals', 'Outrepasser les limites de renouvellement'),
+   ( 1, 'overdues_report', 'Executer le rapport de retards'),
    ( 3, 'parameters_remaining_permissions', 'Paramètres du système restants'),
    ( 3, 'manage_circ_rules', 'Gestion des règles de circulation'),
    ( 6, 'place_holds', 'Réserver pour des adhérents'),
index cf5424e..31e6e18 100644 (file)
@@ -3,6 +3,7 @@ SET FOREIGN_KEY_CHECKS=0;
 INSERT INTO permissions (module_bit, code, description) VALUES
    ( 1, 'circulate_remaining_permissions', 'Permessi rimanenti per la circolazione'),
    ( 1, 'override_renewals', 'Sblocca i rinnovi bloccati'),
+   ( 1, 'overdues_report', 'Execute overdue items report'),
    ( 3, 'parameters_remaining_permissions', 'Permessi rimanenti'),
    ( 3, 'manage_circ_rules', 'Gestisci regole circolazione'),
    ( 6, 'place_holds', 'Fai prenotazioni per gli utenti'),
index 36c03f3..7977865 100644 (file)
@@ -21,6 +21,7 @@
 INSERT INTO permissions (module_bit, code, description) VALUES
    ( 1, 'circulate_remaining_permissions', 'Øvrige rettigheter for sirkulasjon'),
    ( 1, 'override_renewals', 'Overstyre blokkerte fornyinger'),
+   ( 1, 'overdues_report', 'Execute overdue items report'),
    ( 3, 'parameters_remaining_permissions', 'Øvrige rettigheter knyttet til systempreferanser'),
    ( 3, 'manage_circ_rules', 'Endre sirkulasjonsregler'),
    ( 6, 'place_holds', 'Foreta reservering for lånere'),
index 1165af1..02b2551 100644 (file)
@@ -1,6 +1,7 @@
 INSERT INTO permissions (module_bit, code, description) VALUES
    ( 1, 'circulate_remaining_permissions', 'Remaining circulation permissions'),
    ( 1, 'override_renewals', 'Override blocked renewals'),
+   ( 1, 'overdues_report', 'Execute overdue items report'),
    ( 3, 'parameters_remaining_permissions', 'Remaining system parameters permissions'),
    ( 3, 'manage_circ_rules', 'manage circulation rules'),
    ( 6, 'place_holds', 'Place holds for patrons'),
index 00d6538..868c3c0 100644 (file)
@@ -25,6 +25,7 @@ TRUNCATE permissions;
 INSERT INTO permissions (module_bit, code, description) VALUES
    ( 1, 'circulate_remaining_permissions', 'Remaining circulation permissions'),
    ( 1, 'override_renewals', 'Override blocked renewals'),
+   ( 1, 'overdues_report', 'Execute overdue items report'),
    ( 3, 'parameters_remaining_permissions', 'Remaining system parameters permissions'),
    ( 3, 'manage_circ_rules', 'manage circulation rules'),
    ( 6, 'place_holds', 'Place holds for patrons'),
index 188a146..8d0126b 100644 (file)
@@ -25,6 +25,7 @@ TRUNCATE permissions;
 INSERT INTO permissions (module_bit, code, description) VALUES
    ( 1, 'circulate_remaining_permissions', 'Remaining circulation permissions'),
    ( 1, 'override_renewals', 'Override blocked renewals'),
+   ( 1, 'overdues_report', 'Execute overdue items report'),
    ( 3, 'parameters_remaining_permissions', 'Remaining system parameters permissions'),
    ( 3, 'manage_circ_rules', 'manage circulation rules'),
    ( 6, 'place_holds', 'Place holds for patrons'),
index 82654d8..90019ff 100755 (executable)
@@ -6486,6 +6486,12 @@ if ( CheckVersion($DBversion) ) {
     SetVersion($DBversion);
 }
 
+$DBversion = "3.11.00.XXX";
+if ( CheckVersion($DBversion) ) {
+    $dbh->do("INSERT INTO  permissions ( module_bit, code, description ) VALUES  ( '1',  'overdues_report',  'Execute overdue items report' )");
+    print "Upgrade to $DBversion done ( Add circ permission overdues_report )\n";
+    SetVersion($DBversion);
+}
 
 =head1 FUNCTIONS
 
index 631158f..cb0662a 100644 (file)
@@ -40,7 +40,7 @@
        <li>    <a href="/cgi-bin/koha/circ/waitingreserves.pl" title="holds waiting for patron pickup">Holds awaiting pickup</a></li>
        <li>    <a href="/cgi-bin/koha/circ/reserveratios.pl">Hold ratios</a></li>
        <li>    <a href="/cgi-bin/koha/circ/transferstoreceive.pl" title="transfers to receive at your library">Transfers to receive</a></li>
-       [% IF ( CAN_user_reports_execute_reports ) %]<li>    <a href="/cgi-bin/koha/circ/overdue.pl">Overdues</a>
+     [% IF ( CAN_user_circulate_overdues_report ) %]<li>    <a href="/cgi-bin/koha/circ/overdue.pl">Overdues</a>
        - <b>Warning:</b> This report is very resource intensive on
        systems with large numbers of overdue items.</li>[% END %]
        <li>    <a href="/cgi-bin/koha/circ/branchoverdues.pl">Overdues with fines</a> - Limited to your library.  See report help for other details.</li>