From a581af1a726ca54860d38f0c7a31ec11042099d4 Mon Sep 17 00:00:00 2001 From: Fridolyn SOMERS Date: Thu, 7 Mar 2013 17:07:07 +0100 Subject: [PATCH 2/2] Bug 6898 - circulation librarians can't run overdues without reports permissions followup Better update database. --- installer/data/mysql/updatedatabase.pl | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index 709812d..7507b85 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -37,6 +37,7 @@ use Getopt::Long; use C4::Context; use C4::Installer; use C4::Dates; +use C4::Auth; use MARC::Record; use MARC::File::XML ( BinaryEncoding => 'utf8' ); @@ -6446,7 +6447,19 @@ if ( CheckVersion($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' )"); + $dbh->do(q{ + INSERT INTO permissions ( module_bit, code, description ) + VALUES ( '1', 'overdues_report', 'Execute overdue items report' ) + }); + # add new permission for users with all report permissions and circulation remaining permission + my $sth = $dbh->prepare(q{ + INSERT INTO user_permissions (borrowernumber, module_bit, code) + SELECT user_permissions.borrowernumber, 1, 'overdues_report' + FROM user_permissions + LEFT JOIN borrowers USING(borrowernumber) + WHERE borrowers.flags & (1 << 16) + AND user_permissions.code = 'circulate_remaining_permissions' + }); print "Upgrade to $DBversion done ( Add circ permission overdues_report )\n"; SetVersion($DBversion); } -- 1.7.10.4