Bug 34589: Only update users if permission is added
To test:
1 - Assign a user 'edit_items' permission
2 - Manually run the update
perl -e 'use C4::Installer; warn Data::Dumper::Dumper(C4::Installer::run_db_rev("installer/data/mysql/db_revs/221200003.pl"));'
3 - Edit patron permissions
4 - Note they now have edit_any_item permission
5 - Remove that permission
6 - Run the update again
7 - Edit patron permissions
8 - They have edit_any_item again - remove it
9 - Apply patch
10 - Run the update
11 - Edit patron permissions
12 - No new permissions added!
13 - sudo koha-mysql kohadev
DELETE FROM permissions WHERE code = 'edit_any_item'
14 - Run the update again
15 - Edit patron permissions
16 - They do have edit_any_item
Signed-off-by: Émily-Rose Francoeur <emily-rose.francoeur@inLibro.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
parent
5e6943562f
commit
2bdfe69df8
|
|
@ -7,18 +7,22 @@ return {
|
|||
my ($args) = @_;
|
||||
my ($dbh, $out) = @$args{qw(dbh out)};
|
||||
|
||||
$dbh->do(q{
|
||||
my $permission_added = $dbh->do(q{
|
||||
INSERT IGNORE INTO permissions (module_bit, code, description) VALUES ( 9, 'edit_any_item', 'Edit any item reguardless of home library');
|
||||
});
|
||||
say $out "Added new permission 'edit_any_item'";
|
||||
|
||||
$dbh->do(q{
|
||||
INSERT IGNORE INTO user_permissions ( borrowernumber, module_bit, code )
|
||||
SELECT borrowernumber, '9', 'edit_any_item'
|
||||
FROM user_permissions
|
||||
WHERE module_bit = '9'
|
||||
AND code = 'edit_items'
|
||||
});
|
||||
if( $permission_added == 1 ){
|
||||
say $out "Added new permission 'edit_any_item'";
|
||||
|
||||
$dbh->do(q{
|
||||
INSERT IGNORE INTO user_permissions ( borrowernumber, module_bit, code )
|
||||
SELECT borrowernumber, '9', 'edit_any_item'
|
||||
FROM user_permissions
|
||||
WHERE module_bit = '9'
|
||||
AND code = 'edit_items'
|
||||
});
|
||||
say $out "Added 'edit_any_item' permission to users with edit items permission";
|
||||
}
|
||||
|
||||
if ( !column_exists( 'library_groups', 'ft_limit_item_editing' ) ) {
|
||||
$dbh->do(q{
|
||||
|
|
|
|||
Loading…
Reference in New Issue