@@ -, +, @@ without reports permissions followup --- installer/data/mysql/updatedatabase.pl | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) --- a/installer/data/mysql/updatedatabase.pl +++ a/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); } --