Koha/koha-tmpl/opac-tmpl/prog/en/modules/opac-shelves.tmpl
Chris Nighswonger 9971756a24 kohabug 2159 Improving "Lists" button list refreshes after adding/changing lists/shelves
Adding code to refresh "Lists" button lists display in OPAC masthead.inc

Adding javascript to force refresh of parent window to update "Lists" button menu

Adding query limits and ability to specify row count and offset in queries related to Virtualshelves.
Also added the ability to return total record counts for specified virtualshelves.

Adding C4::VirtualShelves::GetRecentShelves which returns a list of the most recently modified shelves for
a given set of parameters. This allows the user to be offered active private and open lists to add books
to in drop down menus while also allowing drop down menus to be limited to a reasonable length.
This also limits the shelves stored in the user's session to a fixed number. A further enhancement might
be to add a syspref to enable a staff member to define the limit. Currently it is hardcoded at 10 per
list type (private/public-open).

Adding pagination to list/shelf related screens

Moving refresh shelves code into C4::VirtualShelves::RefreshShelvesSummary and tidying up a bit

Correcting several inconsistancies in the shelves templates as well as handling shelf management on
the intranet side correctly.

Correcting "Add To:" drop-down list to show only lists the patron has permission to add to

Correcting a few C4::VirtualShelves::GetShelvesSummary API calls

Modifications for template consistancy

Breaking up a 1367 char line of javascript in opac-results.tmpl

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
Signed-off-by: Joshua Ferraro <jmf@liblime.com>
2008-07-22 15:48:13 -05:00

314 lines
18 KiB
Cheetah

<!-- TMPL_INCLUDE NAME="doc-head-open.inc" --><!-- TMPL_IF NAME="LibraryNameTitle" --><!-- TMPL_VAR NAME="LibraryNameTitle" --><!-- TMPL_ELSE -->Koha Online<!-- /TMPL_IF --> Catalog &rsaquo; <!-- TMPL_IF NAME="viewshelf" -->Contents of <!-- TMPL_VAR NAME="shelfname" ESCAPE="html" --><!-- TMPL_ELSE -->My Lists<!-- /TMPL_IF --><!-- TMPL_INCLUDE NAME="doc-head-close.inc" -->
<script type="text/javascript" src="<!-- TMPL_VAR name="themelang" -->/lib/jquery/plugins/jquery.checkboxes.pack.js"></script>
<script type="text/javascript" src="<!-- TMPL_VAR name="themelang" -->/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
<script type="text/JavaScript" language="JavaScript">
//<![CDATA[
$.tablesorter.addParser({
id: 'articles',
is: function(s) {return false; },
format: function(s) { return s.toLowerCase().replace(/^(the|an|a) /,''); },
type: 'text'
});
$(function() {
$("span.clearall").html("<a id=\"CheckNone\" href=\"#\">Clear All</a>");
$("span.checkall").html("<a id=\"CheckAll\" href=\"#\">Select All</a>");
$("#listcontents").tablesorter({
widgets : ['zebra'],
<!-- TMPL_IF NAME="manageshelf" -->
sortList: [[1,0]],
headers: { 0: { sorter: false },1:{sorter: 'articles'}
<!-- TMPL_ELSE -->
sortList: [[0,0]],
headers: { 0:{sorter:'articles'}
<!-- /TMPL_IF -->
}
});
$("#CheckAll").click(function(){
$(".checkboxed").checkCheckboxes();
return false;
});
$("#CheckNone").click(function(){
$(".checkboxed").unCheckCheckboxes();
return false;
});
});
//]]>
</script>
</head>
<body>
<!-- TMPL_IF EXPR="OpacNav||loggedinusername" --><div id="doc3" class="yui-t1"><!-- TMPL_ELSE --><div id="doc3" class="yui-t7"><!-- /TMPL_IF -->
<div id="bd">
<!-- TMPL_INCLUDE NAME="masthead.inc" -->
<div id="yui-main">
<div class="yui-b">
<div class="container">
<!-- TMPL_IF NAME="paramsloop" -->
<!-- TMPL_LOOP NAME="paramsloop" -->
<div class="yui-ge">
<div class="yui-u first">
<!-- TMPL_IF NAME="already" --><div class="dialog alert">A List named <b><!-- TMPL_VAR NAME="already" --></b> already exists!</div><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="status" --><div class="dialog alert"><!-- TMPL_VAR NAME="string" --></div><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="nobarcode" --><div class="dialog alert">ERROR: No barcode given.</div><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="noshelfnumber" --><div class="dialog alert">ERROR: No shelfnumber given.</div><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="need_confirm" -->
<div class="dialog alert">The list <i><!-- TMPL_VAR NAME="need_confirm" --></i> is not empty.
<br />It has <b><!-- TMPL_VAR NAME="count" --></b> entries.
<br />Use the "Confirm" button below to confirm deletion.
</div>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="nopermission" -->
<div class="dialog alert">ERROR: You do not have adequate permission for that action on list <!-- TMPL_VAR NAME="nopermission" -->.</div>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="failgetitem" -->
<div class="dialog alert">ERROR: No item found with barcode <!-- TMPL_VAR NAME="failgetitem" -->.</div>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="duplicatebiblio" -->
<div class="dialog alert">A record matching barcode <b><!-- TMPL_VAR NAME="duplicatebiblio" --></b> has already been added.</div>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="delete_ok" -->
<div class="dialog message">List <!-- TMPL_VAR NAME="delete_ok" --> Deleted.</div>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="delete_fail" -->
<div class="dialog message">ERROR: Database error. Delete (list number <!-- TMPL_VAR NAME="delete_fail" -->) failed.</div>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="unrecognized" -->
<div class="dialog message">ERROR: List number <!-- TMPL_VAR NAME="unrecognized" --> unrecognized.</div>
<!-- /TMPL_IF -->
</div>
</div>
<!-- /TMPL_LOOP -->
<!-- /TMPL_IF -->
<div class="yui-g">
<!-- TMPL_IF NAME="viewshelf" -->
<!-- Viewing a particular shelf -->
<h3><a href="/cgi-bin/koha/opac-shelves.pl">Lists</a> <img src="<!-- TMPL_VAR NAME="themelang" -->/../images/caret.gif" width="16" height="16" alt="&gt;" border="0" /> <em><!-- TMPL_VAR NAME="shelfname" ESCAPE="html" --></em></h3>
<!-- TMPL_IF NAME="itemsloop" -->
<!-- TMPL_IF NAME="manageshelf" --><div><span class="checkall"></span>
<span class="clearall"></span> | <a class="editshelf" href="/cgi-bin/koha/opac-shelves.pl?shelfnumber=<!-- TMPL_VAR NAME="shelfnumber" -->&amp;op=modif">Edit List</a> <form method="post" action="opac-shelves.pl">
<input type="hidden" value="1" name="shelves"/>
<input type="hidden" value="1" name="DEL-<!-- TMPL_VAR NAME="shelfnumber" -->"/>
<input type="submit" class="deleteshelf" value="Delete List" onclick="return confirmDelete(_('Are you sure you want to remove this List?'));"/></form>
</div><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="manageshelf" --><form action="/cgi-bin/koha/opac-shelves.pl" method="post" name="myform" class="checkboxed">
<input type="hidden" name="viewshelf" value="<!-- TMPL_VAR NAME="shelfnumber" -->" />
<input type="hidden" name="modifyshelfcontents" value="1" /><!-- /TMPL_IF -->
<!-- TMPL_VAR name='pagination_bar'-->
<table id="listcontents">
<thead><tr>
<!-- TMPL_IF NAME="manageshelf" --><th>&nbsp;</th><!-- /TMPL_IF -->
<!-- TMPL_UNLESS NAME="item-level_itypes" --><th>Item Type</th><!-- /TMPL_UNLESS -->
<th>Title</th>
<th>Author</th>
<th>Copyright</th>
</tr></thead>
<tbody><!-- TMPL_LOOP NAME="itemsloop" -->
<!-- TMPL_IF NAME="toggle" -->
<tr class="highlight">
<!-- TMPL_ELSE -->
<tr>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="manageshelf" -->
<td>
<input type="checkbox" name="REM-<!-- TMPL_VAR NAME="biblionumber" -->" />
</td>
<!-- /TMPL_IF -->
<!-- TMPL_UNLESS NAME="item-level_itypes" --><td>
<img src="<!-- TMPL_VAR NAME="imageurl" -->" alt="<!-- TMPL_VAR NAME="description" -->" title="<!-- TMPL_VAR NAME="description" -->" /><!-- TMPL_VAR NAME="description" -->
</td> <!-- /TMPL_UNLESS -->
<td><!-- TMPL_IF NAME="BiblioDefaultViewmarc" --><a class="title" href="/cgi-bin/koha/opac-MARCdetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" ESCAPE="URL" -->"><!-- TMPL_VAR NAME="title" --> <!-- TMPL_VAR NAME="subtitle" --></a>
<!-- TMPL_ELSE -->
<!-- TMPL_IF NAME="BiblioDefaultViewisbd" --><a class="title" href="/cgi-bin/koha/opac-ISBDdetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" ESCAPE="URL" -->"><!-- TMPL_VAR NAME="title" --> <!-- TMPL_VAR NAME="subtitle" --></a>
<!-- TMPL_ELSE --><a class="title" href="/cgi-bin/koha/opac-detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" ESCAPE="URL" -->"><!-- TMPL_VAR NAME="title" --> <!-- TMPL_VAR NAME="subtitle" --></a>
<!-- /TMPL_IF --><!-- /TMPL_IF -->
<!-- COinS / OpenURL --><span class="Z3988" title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.au=<!-- TMPL_VAR NAME="author" -->&amp;rft.btitle=<!-- TMPL_VAR NAME="title" ESCAPE="url" -->&amp;rft.date=<!-- TMPL_VAR NAME="publicationyear" -->&amp;rft.tpages=<!-- TMPL_VAR NAME="size" -->&amp;rft.isbn=<!-- TMPL_VAR NAME="isbn" ESCAPE="url" -->&amp;rft.aucorp=&amp;rft.place=<!-- TMPL_VAR NAME="place" -->&amp;rft.pub=<!-- TMPL_VAR NAME="publisher" ESCAPE="url" -->&amp;rft.edition=<!-- TMPL_VAR NAME="edition" -->&amp;rft.series=<!-- TMPL_VAR NAME="series" -->&amp;rft.genre="></span>
</td>
<td><!-- TMPL_VAR NAME="author" --></td>
<td><!-- TMPL_VAR NAME="copyrightdate" --></td>
</tr>
<!-- /TMPL_LOOP --></tbody><!-- /itemsloop -->
</table>
<!-- TMPL_ELSE -->
<div class="dialog message">This List is empty. You can add to your lists from the results of any <a href="opac-main.pl">search</a>!</div>
<!-- /TMPL_IF --><!-- /itemsloop -->
<!-- /TMPL_IF -->
<!-- /viewshelf -->
<!-- TMPL_IF NAME="manageshelf" -->
<!-- Editing shelf -->
<!-- TMPL_IF NAME="itemsloop" -->
<input type="hidden" name="shelfnumber" value="<!-- TMPL_VAR NAME="shelfnumber" -->" />
<input type="hidden" name="modifyshelfcontents" value="1" />
<input type="hidden" name="viewshelf" value="<!-- TMPL_VAR NAME="shelfnumber" -->" /><input type="submit" value="Remove Selected Items" class="icon delete" onclick="return confirmDelete(_('Are you sure you want to remove these items from the list?'))" />
<!-- TMPL_ELSE -->
<form method="post" action="opac-shelves.pl">
<input type="hidden" name="DEL-<!-- TMPL_VAR NAME="shelfnumber" -->" value="1" />
<input type="hidden" name="shelves" value="1" />
<input type="submit" class="icon delete" value="Delete this List" onclick="return confirmDelete(_('Are you sure you want to delete this List?'))" />
<!-- /TMPL_IF -->
</form>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="edit" -->
<h3><a href="/cgi-bin/koha/opac-shelves.pl">Lists</a> <img src="<!-- TMPL_VAR NAME="themelang" -->/../images/caret.gif" width="16" height="16" alt="&gt;" border="0" /> <a href="/cgi-bin/koha/opac-shelves.pl?viewshelf=<!-- TMPL_VAR NAME="shelfnumber" -->"><em><!-- TMPL_VAR NAME="shelfname" ESCAPE="html" --></em></a> <img src="<!-- TMPL_VAR NAME="themelang" -->/../images/caret.gif" width="16" height="16" alt="&gt;" border="0" /> Editing</h3>
<form method="post" action="/cgi-bin/koha/opac-shelves.pl">
<input type="hidden" name="op" value="modifsave" />
<input type="hidden" name="shelfnumber" value="<!-- TMPL_VAR NAME="shelfnumber" -->" />
<fieldset class="rows">
<ol>
<li><label for="shelfname">List Name: </label><input type="text" id="shelfname" name="shelfname" size="60" value="<!-- TMPL_VAR NAME="shelfname" ESCAPE="html" -->" /></li>
<li><label for="sortfield" >Sort this list by: </label>
<select name="sortfield">
<!-- TMPL_IF NAME="sort_title" --><option value="title" selected="selected">Title</option><!-- TMPL_ELSE --><option value="title">Title</option><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="sort_author" --><option value="author" selected="selected">Author</option><!-- TMPL_ELSE --><option value="author">Author</option><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="sort_copyrightdate" --><option value="copyrightdate" selected="selected">Copyrightdate</option><!-- TMPL_ELSE --><option value="copyrightdate">Copyrightdate</option><!-- /TMPL_IF -->
</select></li>
<li><label for="category">Category: </label>
<select name="category" id="category">
<option value="1">Private</option>
<option value="2">Public</option>
</select>
</li>
</ol>
</fieldset>
<fieldset class="action"><input type="submit" value="Save" class="submit" /> <a class="cancel" href="/cgi-bin/koha/opac-shelves.pl?shelfnumber=<!-- TMPL_VAR NAME="shelfnumber" -->">Cancel</a></fieldset>
</form>
<!-- /TMPL_IF -->
<!-- TMPL_UNLESS NAME="edit" --> <!-- TMPL_UNLESS NAME="viewshelf" --> <!-- TMPL_UNLESS NAME="shelves" -->
<h2>Lists</h2>
<ul class="link-tabs">
<!-- TMPL_IF NAME="showprivateshelves" -->
<li id="privateshelves_tab" class="on"><a href="/cgi-bin/koha/opac-shelves.pl?display=privateshelves">Your Lists</a></li>
<!-- TMPL_ELSE -->
<li id="privateshelves_tab" class="off"><a href="/cgi-bin/koha/opac-shelves.pl?display=privateshelves">Your Lists</a></li>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="showpublicshelves" -->
<li id="publicshelves_tab" class="on"><a href="/cgi-bin/koha/opac-shelves.pl?display=publicshelves">Public Lists</a></li>
<!-- TMPL_ELSE -->
<li id="publicshelves_tab" class="off"><a href="/cgi-bin/koha/opac-shelves.pl?display=publicshelves">Public Lists</a></li>
<!-- /TMPL_IF -->
</ul>
<!-- TMPL_IF NAME="showprivateshelves" -->
<div id="privateshelves" class="tab-container" style="display:block;">
<!-- TMPL_ELSE -->
<div id="privateshelves" class="tab-container" style="display:none;">
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="loggedinusername" -->
<!-- TMPL_IF NAME="shelveslooppriv" -->
<!-- TMPL_VAR name='pagination_bar'-->
<table>
<tr><th>List Name</th><th>Contents</th><th>Sort by</th><th>Type</th><th>&nbsp;</th></tr>
<!-- TMPL_LOOP NAME="shelveslooppriv" -->
<!-- TMPL_IF NAME="toggle" --><tr class="highlight"><!--TMPL_ELSE--><tr><!-- /TMPL_IF -->
<td><a href="opac-shelves.pl?viewshelf=<!-- TMPL_VAR NAME="shelf" -->"><!-- TMPL_VAR NAME="shelfname" ESCAPE="html" --></a></td>
<td><!-- TMPL_VAR NAME="count" --> item(s)</td>
<td><!-- TMPL_VAR NAME="sortfield" --></td>
<td><!-- TMPL_IF NAME="viewcategory1" -->Private<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="viewcategory2" -->Public<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="viewcategory3" -->Open<!-- /TMPL_IF -->
</td>
<td>
<!-- TMPL_IF NAME="mine" -->
<form action="opac-shelves.pl" method="get">
<input type="hidden" name="shelfnumber" value="<!-- TMPL_VAR NAME="shelf" -->" />
<input type="hidden" name="op" value="modif" />
<input type="submit" class="editshelf" value="Edit" />
</form>
<form action="opac-shelves.pl" method="post">
<input type="hidden" name="shelves" value="1" />
<input type="hidden" name="DEL-<!-- TMPL_VAR NAME="shelf" -->" value="1" />
<!-- TMPL_IF NAME="confirm" -->
<input type="hidden" name="CONFIRM-<!-- TMPL_VAR NAME="confirm" -->" value="1" />
<input type="submit" class="confirm" value="Confirm" />
<!-- TMPL_ELSE -->
<input type="submit" class="deleteshelf" onclick="return confirmDelete(_('Are you sure you want to remove this List?'));" value="Delete" />
<!-- /TMPL_IF -->
</form>
<!-- /TMPL_IF -->&nbsp;
</td>
</tr>
<!-- /TMPL_LOOP -->
<!-- TMPL_ELSE -->
<tr><td colspan="4">No Private Lists.</td></tr>
<!-- /TMPL_IF --><!-- /shelveslooppriv -->
</table>
<a class="newshelf" href="/cgi-bin/koha/opac-shelves.pl?shelves=1">New List</a>
<!-- TMPL_ELSE --><!-- /loggedinusername -->
<div><a href="/cgi-bin/koha/opac-user.pl">Log in</a> to create new Lists.</div>
<!-- /TMPL_IF --><!-- /loggedinusername -->
</div><!-- /privateshelves -->
<!-- TMPL_IF NAME="showpublicshelves" -->
<div id="publicshelves" class="tab-container" style="display:block;">
<!-- TMPL_ELSE -->
<div id="publicshelves" class="tab-container" style="display:none;">
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="shelvesloop" -->
<!-- TMPL_VAR name='pagination_bar'-->
<table>
<tr><th>List Name</th><th>Contents</th><th>Type</th></tr>
<!-- TMPL_LOOP NAME="shelvesloop" -->
<!-- TMPL_IF NAME="toggle" --><tr class="highlight"><!--TMPL_ELSE--><tr><!-- /TMPL_IF -->
<td><a href="opac-shelves.pl?viewshelf=<!-- TMPL_VAR NAME="shelf" -->"><!-- TMPL_VAR NAME="shelfname" ESCAPE="html" --></a></td>
<td><!-- TMPL_VAR NAME="count" --> item(s)</td>
<td><!-- TMPL_IF NAME="viewcategory1" -->Private<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="viewcategory2" -->Public<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="viewcategory3" -->Open<!-- /TMPL_IF -->
</td>
</tr>
<!-- /TMPL_LOOP -->
</table>
<!-- TMPL_ELSE -->
<!-- TMPL_IF NAME="showpublicshelves" -->No Public Lists.<!-- /TMPL_IF -->
<!-- /TMPL_IF --><!-- /shelvesloop -->
</div><!-- /publicshelves -->
<!-- /TMPL_UNLESS --><!-- /viewshelf --><!-- /TMPL_UNLESS --><!-- /edit --><!-- /TMPL_UNLESS --><!-- /shelves -->
<!-- TMPL_IF NAME="shelves" -->
<div id="addshelf"><form method="post" action="/cgi-bin/koha/opac-shelves.pl">
<fieldset class="rows">
<legend>Create a New List</legend>
<input type="hidden" name="shelves" value="1" />
<ol><li><label for="addshelf">List Name:</label>
<!-- TMPL_IF NAME="already" -->
<input id="addshelf" type="text" name="addshelf" value="<!-- TMPL_VAR NAME="already" -->" size="60" />
<!-- TMPL_ELSE -->
<input id="addshelf" type="text" name="addshelf" size="60" />
<!-- /TMPL_IF -->
<input type="hidden" name="owner" id="owner" value="<!-- TMPL_VAR NAME="loggedinuser" -->" /></li>
<li><label for="sortfield" >Sort this list by: </label>
<select name="sortfield">
<!-- TMPL_IF NAME="sort_title" --><option value="title" selected="selected">Title</option><!-- TMPL_ELSE --><option value="title">Title</option><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="sort_author" --><option value="author" selected="selected">Author</option><!-- TMPL_ELSE --><option value="author">Author</option><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="sort_copyrightdate" --><option value="copyrightdate" selected="selected">Copyrightdate</option><!-- TMPL_ELSE --><option value="copyrightdate">Copyrightdate</option><!-- /TMPL_IF -->
</select></li>
<li><label for="category">Category:</label>
<select name="category" id="category">
<option value="1">Private</option>
<option value="2">Public</option>
</select></li>
</ol>
</fieldset>
<fieldset class="action"><input type="submit" value="Save" class="submit" /> <a class="cancel" href="/cgi-bin/koha/opac-shelves.pl">Cancel</a></fieldset>
</form> </div>
<!-- /TMPL_IF --><!-- /showadd -->
</div></div>
</div>
</div>
<!-- TMPL_IF EXPR="OpacNav||loggedinusername" -->
<div class="yui-b">
<div class="container">
<!-- TMPL_INCLUDE NAME="navigation.inc" -->
<!-- TMPL_INCLUDE NAME="usermenu.inc" -->
</div>
</div><!-- /TMPL_IF -->
</div>
<!-- </div> -->
<!-- TMPL_INCLUDE NAME="opac-bottom.inc" -->