Bug 23321: Add cash register permission
authorMartin Renvoize <martin.renvoize@ptfs-europe.com>
Wed, 17 Jul 2019 13:03:30 +0000 (14:03 +0100)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Mon, 23 Sep 2019 10:39:21 +0000 (11:39 +0100)
Sponsored-by: PTFS Europe
Sponsored-by: Cheshire Libraries Shared Services

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

installer/data/mysql/atomicupdate/bug_23321_permissions.perl [new file with mode: 0644]
installer/data/mysql/userflags.sql
installer/data/mysql/userpermissions.sql
koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc
members/member-flags.pl

diff --git a/installer/data/mysql/atomicupdate/bug_23321_permissions.perl b/installer/data/mysql/atomicupdate/bug_23321_permissions.perl
new file mode 100644 (file)
index 0000000..9d08ac4
--- /dev/null
@@ -0,0 +1,18 @@
+$DBversion = 'XXX';    # will be replaced by the RM
+if ( CheckVersion($DBversion) ) {
+
+    $dbh->do(qq{
+        INSERT IGNORE INTO `userflags` (`bit`, `flag`, `flagdesc`, `defaulton`)
+        VALUES (25, 'cash_management', 'Cash management', 0)
+    });
+
+    $dbh->do(qq{
+        INSERT IGNORE permissions (module_bit, code, description)
+        VALUES
+        (25, 'manage_cash_registers', 'Add and remove cash registers')
+    });
+
+
+    SetVersion($DBversion);
+    print "Upgrade to $DBversion done (Bug 23321 - Add cash register permissions)\n";
+}
index 7712a9b..5b1748d 100644 (file)
@@ -20,5 +20,6 @@ INSERT INTO userflags (bit, flag, flagdesc, defaulton) VALUES
 (21, 'clubs', 'Patron clubs', '0'),
 (22,'ill','The Interlibrary Loans Module',0),
 (23,'self_check','Self check modules',0),
-(24, 'stockrotation', 'Manage stockrotation operations', 0)
+(24, 'stockrotation', 'Manage stockrotation operations', 0),
+(25, 'cash_management', 'Cash management', 0)
 ;
index 4401b5d..d9caa0e 100644 (file)
@@ -116,5 +116,6 @@ INSERT INTO permissions (module_bit, code, description) VALUES
    (23, 'self_checkin_module', 'Log into the self check-in module'),
    (23, 'self_checkout_module', 'Perform self checkout at the OPAC. It should be used for the patron matching the AutoSelfCheckID'),
    (24, 'manage_rotas', 'Create, edit and delete rotas'),
-   (24, 'manage_rota_items', 'Add and remove items from rotas')
+   (24, 'manage_rota_items', 'Add and remove items from rotas'),
+   (25, 'manage_cash_registers', 'Add and remove cash registers')
 ;
index 26f779a..e3faedd 100644 (file)
@@ -66,6 +66,9 @@
     [%- CASE 'stockrotation' -%]
         <span class="main_permission self_check_permission">Manage stockrotation operations</span>
         <span class="permissioncode">([% name | html %])</span>
+    [%- CASE 'cash_management' -%]
+        <span class="main_permission cash_management_permission">Cash management</span>
+        <span class="permissioncode">([% name | html %])</span>
     [%- END -%]
 [%- END -%]
 
             Create, edit and delete rotas
         </span>
         <span class="permissioncode">([% name | html %])</span>
+  [%# cash_management %]
+    [%- CASE 'manage_cash_registers' -%]
+        <span class="sub_permission manage_cash_registers_subpermission">
+            Add, edit and archive cash registers
+        </span>
+        <span class="permissioncode">([% name | html %])</span>
   [%- END -%]
 [%- END -%]
index 9657a92..f493a06 100755 (executable)
@@ -178,6 +178,7 @@ if ($input->param('newflags')) {
         if ($#sub_perm_loop > -1) {
             $row{sub_perm_loop} = \@sub_perm_loop;
         }
+        next if ( ( $row{flag} eq 'cash_management' ) && !C4::Context->preference('UseCashRegisters') );
         push @loop, \%row;
     }