C4::VirtualShelves - Functions for manipulating Koha virtual virtualshelves
use C4::VirtualShelves;
This module provides functions for manipulating virtual virtualshelves, including creating and deleting virtualshelves, and adding and removing items to and from virtualshelves.
$shelflist = &GetShelves($owner); $shelflist = &GetShelves($owner, $mincategory); $shelflist = &GetShelves($owner, $mincategory, $limit); ($shelfnumber, $shelfhash) = each %{$shelflist};
Looks up the virtual virtualshelves, and returns a summary. $shelflist
is a reference-to-hash. The keys are the virtualshelves numbers ($shelfnumber
, above), and the values ($shelfhash
, above) are themselves references-to-hash, with the following keys:
mincategory
: 2 if the list is for "Public", 3 for "Open". virtualshelves of the owner are always selected, whatever the category
$shelfhash->{shelfname}
A string. The name of the shelf.
$shelfhash->{count}
The number of virtuals on that virtualshelves.
(shelfnumber,shelfname,owner,category,sortfield) = &GetShelf($shelfnumber);
Looks up information about the contents of virtual virtualshelves number $shelfnumber
Returns the database's information on 'virtualshelves' table.
$itemlist = &GetShelfContents($shelfnumber);
Looks up information about the contents of virtual virtualshelves number $shelfnumber
. Sorted by a field in the biblio table. copyrightdate gives a desc sort.
Returns a reference-to-array, whose elements are references-to-hash, as returned by C4::Biblio::GetBiblioFromItemNumber
.
Note: the notforloan status comes from the itemtype, and where it equals 0 it does not ensure that related items.notforloan status is likewise 0. The caller has to check any items on their own, possibly with CanBookBeIssued from C4::Circulation.
$shelfnumber = &AddShelf( $shelfname, $owner, $category);
Creates a new virtual virtualshelves with name $shelfname
, owner $owner
and category $category
.
Returns a code to know what's happen. * -1 : if this virtualshelves already exist. * $shelfnumber : if success.
&AddToShelf($biblionumber, $shelfnumber);
Adds item number $biblionumber
to virtual virtualshelves number $shelfnumber
, unless that item is already on that shelf.
&AddToShelfFromBiblio($biblionumber, $shelfnumber) this function allow to add a virtual into the shelf number $shelfnumber from biblionumber.
ModShelf($shelfnumber, $shelfname, $owner, $category )
Modify the value into virtualshelves table with values given on input arg.
ShelfPossibleAction($loggedinuser, $shelfnumber, $action);
$loggedinuser,$shelfnumber,$action
$action can be "view" or "manage".
Returns 1 if the user can do the $action in the $shelfnumber shelf. Returns 0 otherwise.
&DelFromShelf( $biblionumber, $shelfnumber);
Removes item number $biblionumber
from virtual virtualshelves number $shelfnumber
. If the item wasn't on that virtualshelves to begin with, nothing happens.
($status, $msg) = &DelShelf($shelfnumber);
Deletes virtual virtualshelves number $shelfnumber
. The virtualshelves must be empty.
Returns a two-element array, where $status
is 0 if the operation was successful, or non-zero otherwise. $msg
is "Done" in case of success, or an error message giving the reason for failure.
$Number = DelShelf($shelfnumber);
This function deletes the shelf number, and all of it's content.
Koha Developement team <info@koha.org>
C4::Circulation::Circ2(3)