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

(-)a/C4/VirtualShelves.pm (-3 / +12 lines)
Lines 50-57 BEGIN { Link Here
50
}
50
}
51
51
52
52
53
my $dbh = C4::Context->dbh;
54
55
=head1 NAME
53
=head1 NAME
56
54
57
C4::VirtualShelves - Functions for manipulating Koha virtual shelves
55
C4::VirtualShelves - Functions for manipulating Koha virtual shelves
Lines 101-106 sub GetShelves { Link Here
101
    my ($category, $row_count, $offset, $owner) = @_;
99
    my ($category, $row_count, $offset, $owner) = @_;
102
    my @params;
100
    my @params;
103
    my $total = _shelf_count($owner, $category);
101
    my $total = _shelf_count($owner, $category);
102
    my $dbh = C4::Context->dbh;
104
    my $query = qq{
103
    my $query = qq{
105
        SELECT vs.shelfnumber, vs.shelfname,vs.owner,
104
        SELECT vs.shelfnumber, vs.shelfname,vs.owner,
106
        bo.surname,bo.firstname,vs.category,vs.sortfield,
105
        bo.surname,bo.firstname,vs.category,vs.sortfield,
Lines 155-160 the submitted parameters. Link Here
155
sub GetAllShelves {
154
sub GetAllShelves {
156
    my ($category,$owner,$adding_allowed) = @_;
155
    my ($category,$owner,$adding_allowed) = @_;
157
    my @params;
156
    my @params;
157
    my $dbh = C4::Context->dbh;
158
    my $query = 'SELECT vs.* FROM virtualshelves vs ';
158
    my $query = 'SELECT vs.* FROM virtualshelves vs ';
159
    if($category==1) {
159
    if($category==1) {
160
        $query.= qq{
160
        $query.= qq{
Lines 184-189 Returns shelf names and numbers for Add to combo of search results and Lists but Link Here
184
sub GetSomeShelfNames {
184
sub GetSomeShelfNames {
185
    my ($owner, $purpose, $adding_allowed)= @_;
185
    my ($owner, $purpose, $adding_allowed)= @_;
186
    my ($bar, $pub, @params);
186
    my ($bar, $pub, @params);
187
    my $dbh = C4::Context->dbh;
187
188
188
    my $bquery = 'SELECT vs.shelfnumber, vs.shelfname FROM virtualshelves vs ';
189
    my $bquery = 'SELECT vs.shelfnumber, vs.shelfname FROM virtualshelves vs ';
189
    my $limit= ShelvesMax($purpose);
190
    my $limit= ShelvesMax($purpose);
Lines 223-228 Returns the above-mentioned fields for passed virtual shelf number. Link Here
223
224
224
sub GetShelf {
225
sub GetShelf {
225
    my ($shelfnumber) = @_;
226
    my ($shelfnumber) = @_;
227
    my $dbh = C4::Context->dbh;
226
    my $query = qq(
228
    my $query = qq(
227
        SELECT shelfnumber, shelfname, owner, category, sortfield,
229
        SELECT shelfnumber, shelfname, owner, category, sortfield,
228
            allow_add, allow_delete_own, allow_delete_other
230
            allow_add, allow_delete_own, allow_delete_other
Lines 306-311 Returns a code to know what's happen. Link Here
306
308
307
sub AddShelf {
309
sub AddShelf {
308
    my ($hashref, $owner)= @_;
310
    my ($hashref, $owner)= @_;
311
    my $dbh = C4::Context->dbh;
309
312
310
    #initialize missing hash values to silence warnings
313
    #initialize missing hash values to silence warnings
311
    foreach('shelfname','category', 'sortfield', 'allow_add', 'allow_delete_own', 'allow_delete_other' ) {
314
    foreach('shelfname','category', 'sortfield', 'allow_add', 'allow_delete_own', 'allow_delete_other' ) {
Lines 343-348 C<$shelfnumber>, unless that bib is already on that shelf. Link Here
343
sub AddToShelf {
346
sub AddToShelf {
344
    my ($biblionumber, $shelfnumber, $borrowernumber) = @_;
347
    my ($biblionumber, $shelfnumber, $borrowernumber) = @_;
345
    return unless $biblionumber;
348
    return unless $biblionumber;
349
    my $dbh = C4::Context->dbh;
346
    my $query = qq(
350
    my $query = qq(
347
        SELECT *
351
        SELECT *
348
        FROM   virtualshelfcontents
352
        FROM   virtualshelfcontents
Lines 382-387 Returns 1 if the action seemed to be successful. Link Here
382
386
383
sub ModShelf {
387
sub ModShelf {
384
    my ($shelfnumber,$hashref) = @_;
388
    my ($shelfnumber,$hashref) = @_;
389
    my $dbh = C4::Context->dbh;
385
390
386
    my $query= "SELECT * FROM virtualshelves WHERE shelfnumber=?";
391
    my $query= "SELECT * FROM virtualshelves WHERE shelfnumber=?";
387
    my $sth = $dbh->prepare($query);
392
    my $sth = $dbh->prepare($query);
Lines 453-458 sub ShelfPossibleAction { Link Here
453
458
454
    return 0 unless defined($shelfnumber);
459
    return 0 unless defined($shelfnumber);
455
460
461
    my $dbh = C4::Context->dbh;
456
    my $query = qq/
462
    my $query = qq/
457
        SELECT IFNULL(owner,0) AS owner, category, allow_add, allow_delete_own, allow_delete_other, IFNULL(sh.borrowernumber,0) AS borrowernumber
463
        SELECT IFNULL(owner,0) AS owner, category, allow_add, allow_delete_own, allow_delete_other, IFNULL(sh.borrowernumber,0) AS borrowernumber
458
        FROM virtualshelves vs
464
        FROM virtualshelves vs
Lines 500-505 Returns 0 if no items have been deleted. Link Here
500
506
501
sub DelFromShelf {
507
sub DelFromShelf {
502
    my ($bibref, $shelfnumber, $user) = @_;
508
    my ($bibref, $shelfnumber, $user) = @_;
509
    my $dbh = C4::Context->dbh;
503
    my $query = qq(SELECT allow_delete_own, allow_delete_other FROM virtualshelves WHERE shelfnumber=?);
510
    my $query = qq(SELECT allow_delete_own, allow_delete_other FROM virtualshelves WHERE shelfnumber=?);
504
    my $sth= $dbh->prepare($query);
511
    my $sth= $dbh->prepare($query);
505
    $sth->execute($shelfnumber);
512
    $sth->execute($shelfnumber);
Lines 544-549 ShelfPossibleAction with manage parameter. Link Here
544
sub DelShelf {
551
sub DelShelf {
545
    my ($shelfnumber)= @_;
552
    my ($shelfnumber)= @_;
546
    return unless $shelfnumber && $shelfnumber =~ /^\d+$/;
553
    return unless $shelfnumber && $shelfnumber =~ /^\d+$/;
554
    my $dbh = C4::Context->dbh;
547
    my $sth = $dbh->prepare("DELETE FROM virtualshelves WHERE shelfnumber=?");
555
    my $sth = $dbh->prepare("DELETE FROM virtualshelves WHERE shelfnumber=?");
548
    return $sth->execute($shelfnumber);
556
    return $sth->execute($shelfnumber);
549
}
557
}
Lines 629-634 sub _shelf_count { Link Here
629
    my @params;
637
    my @params;
630
    # Find out how many shelves total meet the submitted criteria...
638
    # Find out how many shelves total meet the submitted criteria...
631
639
640
    my $dbh = C4::Context->dbh;
632
    my $query = "SELECT count(*) FROM virtualshelves vs ";
641
    my $query = "SELECT count(*) FROM virtualshelves vs ";
633
    if($category==1) {
642
    if($category==1) {
634
        $query.= qq{
643
        $query.= qq{
Lines 661-666 sub _biblionumber_sth { #only used in obsolete sub below Link Here
661
sub _CheckShelfName {
670
sub _CheckShelfName {
662
    my ($name, $cat, $owner, $number)= @_;
671
    my ($name, $cat, $owner, $number)= @_;
663
672
673
    my $dbh = C4::Context->dbh;
664
    my $query = qq(
674
    my $query = qq(
665
        SELECT DISTINCT shelfnumber
675
        SELECT DISTINCT shelfnumber
666
        FROM   virtualshelves
676
        FROM   virtualshelves
667
- 

Return to bug 9066