View | Details | Raw Unified | Return to bug 13417
Collapse All | Expand All

(-)a/C4/VirtualShelves.pm (+8 lines)
Lines 21-28 use strict; Link Here
21
use warnings;
21
use warnings;
22
22
23
use Carp;
23
use Carp;
24
use C4::Auth;
24
use C4::Context;
25
use C4::Context;
25
use C4::Debug;
26
use C4::Debug;
27
use C4::Members;
26
28
27
use constant SHELVES_MASTHEAD_MAX => 10; #number under Lists button in masthead
29
use constant SHELVES_MASTHEAD_MAX => 10; #number under Lists button in masthead
28
use constant SHELVES_COMBO_MAX => 10; #add to combo in search
30
use constant SHELVES_COMBO_MAX => 10; #add to combo in search
Lines 466-471 sub ShelfPossibleAction { Link Here
466
468
467
    return 0 unless defined($shelfnumber);
469
    return 0 unless defined($shelfnumber);
468
470
471
    if ( $user > 0 ) {
472
        my $borrower = C4::Members::GetMember( borrowernumber => $user );
473
        return 1
474
            if C4::Auth::haspermission( $borrower->{userid}, { shelves => 'manage_shelves' } );
475
    }
476
469
    my $dbh = C4::Context->dbh;
477
    my $dbh = C4::Context->dbh;
470
    my $query = qq/
478
    my $query = qq/
471
        SELECT COALESCE(owner,0) AS owner, category, allow_add, allow_delete_own, allow_delete_other, COALESCE(sh.borrowernumber,0) AS borrowernumber
479
        SELECT COALESCE(owner,0) AS owner, category, allow_add, allow_delete_own, allow_delete_other, COALESCE(sh.borrowernumber,0) AS borrowernumber
(-)a/installer/data/mysql/en/mandatory/userflags.sql (-1 / +3 lines)
Lines 17-20 INSERT INTO userflags (bit, flag, flagdesc, defaulton) VALUES Link Here
17
(16,'reports','Allow access to the reports module',0),
17
(16,'reports','Allow access to the reports module',0),
18
(17,'staffaccess','Allow staff members to modify permissions for other staff members',0),
18
(17,'staffaccess','Allow staff members to modify permissions for other staff members',0),
19
(18,'coursereserves','Course reserves',0),
19
(18,'coursereserves','Course reserves',0),
20
(19, 'plugins', 'Koha plugins', '0');
20
(19, 'plugins', 'Koha plugins', '0'),
21
(20, 'shelves', 'Virtual shelves', 0)
22
;
(-)a/installer/data/mysql/en/mandatory/userpermissions.sql (-1 / +2 lines)
Lines 71-75 INSERT INTO permissions (module_bit, code, description) VALUES Link Here
71
   (19, 'manage', 'Manage plugins ( install / uninstall )'),
71
   (19, 'manage', 'Manage plugins ( install / uninstall )'),
72
   (19, 'tool', 'Use tool plugins'),
72
   (19, 'tool', 'Use tool plugins'),
73
   (19, 'report', 'Use report plugins'),
73
   (19, 'report', 'Use report plugins'),
74
   (19, 'configure', 'Configure plugins')
74
   (19, 'configure', 'Configure plugins'),
75
   (20, 'manage_shelves', 'Manage shelves')
75
;
76
;
(-)a/installer/data/mysql/updatedatabase.pl (-1 / +14 lines)
Lines 9656-9661 if(CheckVersion($DBversion)) { Link Here
9656
    SetVersion($DBversion);
9656
    SetVersion($DBversion);
9657
}
9657
}
9658
9658
9659
$DBversion = "3.19.00.XXX";
9660
if ( CheckVersion($DBversion) ) {
9661
    $dbh->do(q|
9662
        INSERT INTO userflags (bit, flag, flagdesc, defaulton) VALUES
9663
        (20, 'shelves', 'Virtual shelves', 0)
9664
    |);
9665
    $dbh->do(q|
9666
        INSERT INTO permissions (module_bit, code, description) VALUES
9667
        (20, 'manage_shelves', 'Manage shelves')
9668
    |);
9669
    print "Upgrade to $DBversion done (Bug 13417: Add permission to manage shelves)\n";
9670
    SetVersion ($DBversion);
9671
}
9672
9659
=head1 FUNCTIONS
9673
=head1 FUNCTIONS
9660
9674
9661
=head2 TableExists($table)
9675
=head2 TableExists($table)
9662
- 

Return to bug 13417