Bug 9456 - Add callnumber column to the cart
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / basket / basket.tt
index 0896075..0b6c89a 100644 (file)
@@ -1,49 +1,71 @@
 [% INCLUDE 'doc-head-open.inc' %]
-<title>[% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha Online[% END %] Catalog &rsaquo; Your Cart</title>
+<title>[% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha online[% END %] Catalog &rsaquo; Your cart</title>
     [% IF ( print_basket ) %]
 
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<link rel="shortcut icon" href="[% IF ( IntranetFavicon ) %][% IntranetFavicon %][% ELSE %][% themelang %]/includes/favicon.ico[% END %]" type="image/x-icon" />
+<link rel="shortcut icon" href="[% IF ( IntranetFavicon ) %][% IntranetFavicon %][% ELSE %][% interface %]/[% theme %]/img/favicon.ico[% END %]" type="image/x-icon" />
 <meta http-equiv="Content-Language" content="en-us" />
 <style type="text/css">
     @import url([% themelang %]/css/print.css);
 </style>
     [% ELSE %][% INCLUDE 'doc-head-close.inc' %]
+    <style type="text/css">
+        td table {
+            font-size: 85%;
+            border: 0;
+        }
+        td table th:first-child,
+        td table th.sorting:first-child,
+        td table th.sorting_asc:first-child,
+        td table th.sorting_desc:first-child {
+            border-right : 1px solid #99BEC9;
+        }
+        td table th,
+        td table th.sorting,
+        td table th.sorting_asc,
+        td table th.sorting_desc {
+            background-color: #E6F0F2;
+            border-color: #99BEC9;
+            border-width: 0px 0px 1px 0px;
+        }
+        td table td {
+            border-width: 0px 0px 1px 0px;
+            border-color: #B8D7E0;
+        }
+    </style>
        <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
-       <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
-       <script type="text/javascript">
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
+[% INCLUDE 'datatables-strings.inc' %]
+<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>        <script type="text/javascript">
        //<![CDATA[
 
-$(document).ready(function()
-    {
-        $("#itemst").tablesorter({
-                        headers: { 0: { sorter: false }}
-                });
-    }
-);
-
-
 function placeHold () {
     var checkedItems = $("input:checkbox:checked");
     if ($(checkedItems).size() == 0) {
         alert(MSG_NO_RECORD_SELECTED);
         return false;
     }
-    var bibs = "";
-    var badBibs = false;
-    $(checkedItems).each(function() {
-        var bib = $(this).val();
-        bibs += bib + "/";
-    });
-
-    var newloc = "/cgi-bin/koha/reserve/request.pl?biblionumbers=" + bibs;
-    if ($(checkedItems).size() > 1) { newloc += "&multi_hold=1"; }
+
+    var newloc;
+
+    if ($(checkedItems).size() > 1) {
+        var bibs = "";
+        $(checkedItems).each(function() {
+            var bib = $(this).val();
+            bibs += bib + "/";
+        });
+
+        newloc = "/cgi-bin/koha/reserve/request.pl?biblionumbers=" + bibs + "&multi_hold=1";
+    } else {
+        var bib = checkedItems[0].value;
+        newloc = "/cgi-bin/koha/reserve/request.pl?biblionumber=" + bib;
+    }
+
     window.opener.location = newloc;
     window.close();
 }
 
-
-
        $(document).ready(function(){
                $("#CheckAll").click(function(){
                var checked = [];
@@ -65,58 +87,87 @@ function placeHold () {
            });
         $(".holdsep").text("| ");
         $(".hold").text(_("Place Hold"));
-       });
+        $("#downloadcartc").empty();
+
+        /* Define two custom functions (asc and desc) for string sorting */
+        jQuery.fn.dataTableExt.oSort['callnumbers-asc']  = function(x,y) {
+                var x_array = x.split("<div>");
+                var y_array = y.split("<div>");
+
+                /* Pop the first elements, they are empty strings */
+                x_array.shift();
+                y_array.shift();
+
+                x_array.sort();
+                y_array.sort();
 
+                x = x_array.shift();
+                y = y_array.shift();
 
+                return ((x < y) ? -1 : ((x > y) ?  1 : 0));
+        };
+
+        jQuery.fn.dataTableExt.oSort['callnumbers-desc'] = function(x,y) {
+                var x_array = x.split("<div>");
+                var y_array = y.split("<div>");
+
+                /* Pop the first elements, they are empty strings */
+                x_array.shift();
+                y_array.shift();
+
+                x_array.sort();
+                y_array.sort();
+
+                x = x_array.pop();
+                y = y_array.pop();
+
+                return ((x < y) ?  1 : ((x > y) ? -1 : 0));
+        };
+
+        $("#itemst").dataTable($.extend(true, {}, dataTablesDefaults, {
+            "sDom": 't',
+            "aoColumnDefs": [
+                { "aTargets": [ 0 ], "bSortable": false, "bSearchable": false },
+                { "aTargets": [ 3 ], "sType": 'callnumbers' },
+            ],
+            "aaSorting": [[ 1, "asc" ]],
+            "bPaginate": false
+        }));
+
+       });
        //]]>
        </script>
        [% END %]
 </head>
-[% IF ( print_basket ) %]<body id="basket" onload="print();history.back();">[% ELSE %]<body id="basket">[% END %]
+[% IF ( print_basket ) %]<body id="cart_basket" class="cart" onload="print();history.back();">[% ELSE %]<body id="cart_basket" class="cart">[% END %]
 
 <div id="doc" class="yui-t7">
 <div class="container">
 [% UNLESS ( print_basket ) %]
-<h1>Your Cart</h1>
-
-<div id="toolbar">
-<ul class="toolbar">
-       <li>
-           <span id="addchild" class="yui-button yui-link-button"><span class="first-child">
-               [% IF ( verbose ) %]<a href="basket.pl" class="brief" onclick="showLess(); return false;">Brief Display</a>[% ELSE %]<a href="basket.pl" class="detail" onclick="showMore(); return false;">More Details</a>[% END %]
-           </span></span>
-       </li>
-       <li>
-           <span id="receive" class="yui-button yui-link-button"><span class="first-child">
-               <a class="send" href="basket.pl" onclick="sendBasket(); return false;">Send</a>
-           </span></span>
-       </li>
-       <li>
-           <span id="savemenuc" class="yui-button yui-link-button"><span class="first-child">
-               <a class="download" href="basket.pl" onclick="downloadBasket(); return false;">Download</a>
-           </span></span>
-       </li>
-       <li>
-           <span id="printmenuc" class="yui-button yui-link-button"><span class="first-child">
-               <a class="print" href="basket.pl" onclick="printBasket(); return false;">Print</a>
-           </span></span>
-       </li>
-       <li>
-           <span id="delete" class="yui-button yui-link-button"><span class="first-child">
-               <a class="empty" href="basket.pl" onclick="delBasket('popup'); return false;">Empty and Close</a>
-           </span></span>
-       </li>
-       <li>
-           <span id="hide" class="yui-button yui-link-button"><span class="first-child">
-               <a class="hide" href="basket.pl" onclick="quit(); return false;">Hide Window</a>
-           </span></span>
-       </li>
-</ul>
+<h1>Your cart</h1>
+
+<div id="toolbar" class="btn-toolbar">
+    [% IF ( verbose ) %]<a href="basket.pl" class="btn btn-small" onclick="showLess(); return false;"><i class="icon-zoom-out"></i> Brief display</a>[% ELSE %]<a href="basket.pl" class="btn btn-small" onclick="showMore(); return false;"><i class="icon-zoom-in"></i> More details</a>[% END %]
+    <a class="btn btn-small" href="basket.pl" onclick="sendBasket(); return false;"><i class="icon-envelope"></i> Send</a>
+    <div class="btn-group">
+        <a class="btn btn-small dropdown-toggle" data-toggle="dropdown" href="#" id="downloadcart"><i class="icon-download-alt"></i> Download <span class="caret"></span> </a>
+        <ul class="dropdown-menu">
+            <li><a href="/cgi-bin/koha/basket/downloadcart.pl?format=iso2709&amp;bib_list=[% bib_list %]">iso2709</a></li>
+            <li><a href="/cgi-bin/koha/basket/downloadcart.pl?format=ris&amp;bib_list=[% bib_list %]">RIS</a></li>
+            <li><a href="/cgi-bin/koha/basket/downloadcart.pl?format=bibtex&amp;bib_list=[% bib_list %]">BibTex</a></li>
+        [% FOREACH csv_profile IN csv_profiles %]
+            <li><a href="/cgi-bin/koha/basket/downloadcart.pl?format=[% csv_profile.export_format_id %]&amp;bib_list=[% bib_list %]">CSV - [% csv_profile.profile %]</a></li>
+        [% END %]
+        </ul>
+    </div>
+    <a class="btn btn-small" href="basket.pl" onclick="printBasket(); return false;"><i class="icon-print"></i> Print</a>
+    <a class="btn btn-small" href="basket.pl" onclick="delBasket('popup'); return false;"><i class="icon-trash"></i> Empty and close</a>
+    <a class="btn btn-small close" href="basket.pl"><i class="icon-remove-sign"></i> Hide window</a>
 </div>
         [% END %]
 
 [% IF ( verbose ) %]
-       [% UNLESS ( print_basket ) %]<p style="padding: 7px 0; border-top : 1px solid #E8E8E8;"><a id="CheckAll" href="#">Select All</a> <a id="CheckNone" href="#">Clear All</a> | <b>Selected items :</b>
+    [% UNLESS ( print_basket ) %]<p style="padding: 7px 0; border-top : 1px solid #E8E8E8;"><a id="CheckAll" href="#">Select all</a> <a id="CheckNone" href="#">Clear all</a> | <b>Selected items :</b>
 
     <a href="#" onclick="delSelRecords(); return false;">Remove</a>
 
@@ -125,7 +176,7 @@ function placeHold () {
 [% END %]
 
 [% IF ( CAN_user_reserveforothers ) %]
-     | <a href="#" onclick="placeHold(); return false;">Place Hold</a>
+     | <a href="#" onclick="placeHold(); return false;">Place hold</a>
 [% END %]
 
 </p>[% END %]
@@ -253,7 +304,7 @@ function placeHold () {
 
         [% IF ( BIBLIO_RESULT.MARCurlS ) %]
         <tr>
-            <th scope="row">url(s)</th>
+            <th scope="row">URL(s)</th>
             <td>
           [% FOREACH MARCurl IN BIBLIO_RESULT.MARCurlS %]
                <p>[% IF ( MARCurl.part ) %][% MARCurl.part %]
@@ -283,8 +334,8 @@ function placeHold () {
 [% UNLESS ( print_basket ) %]
 <p style="border-top : 1px solid #E8E8E8;">
        <form action="/cgi-bin/koha/basket/basket.pl" method="get" name="bookbag_form" id="bookbag_form">
-    <a id="CheckAll" href="#">Select All</a>
-    <a id="CheckNone" href="#">Clear All</a>
+    <a id="CheckAll" href="#">Select all</a>
+    <a id="CheckNone" href="#">Clear all</a>
     | <b>Selected items :</b>
 <a href="#" onclick="delSelRecords(); return false;">Remove</a>
 
@@ -293,26 +344,22 @@ function placeHold () {
 [% END %]
 
 [% IF ( CAN_user_reserveforothers ) %]
-     | <a href="#" onclick="placeHold(); return false;">Place Hold</a>
+     | <a href="#" onclick="placeHold(); return false;">Place hold</a>
 [% END %]
 
-
 [% END %]
+
 </p>
     <table id="itemst">
        <thead><tr>
            [% UNLESS ( print_basket ) %]<th>&nbsp;</th>[% END %]
            <th>Title</th>
-           <th>Item Type</th>
-           <th>Location</th>
+        <th>Item type</th>
+        <th>Items</th>
         </tr></thead>
 
         [% FOREACH BIBLIO_RESULT IN BIBLIO_RESULTS %]
-            [% IF ( BIBLIO_RESULT.even ) %]
-                <tr class="highlight">
-            [% ELSE %]
                 <tr>
-            [% END %]
             [% UNLESS ( print_basket ) %]<td>
                         <input type="checkbox" value="[% BIBLIO_RESULT.biblionumber %]" name="bib[% BIBLIO_RESULT.biblionumber %]" id="bib[% BIBLIO_RESULT.biblionumber %]" onclick="selRecord(value,checked);" />
 
@@ -334,14 +381,15 @@ function placeHold () {
 
                                                </td>
             <td>[% BIBLIO_RESULT.description %]</td>
-                <td>[% IF ( BIBLIO_RESULT.ITEM_RESULTS ) %][% FOREACH ITEM_RESULT IN BIBLIO_RESULT.ITEM_RESULTS %]
-                    <p>
-                        [% ITEM_RESULT.branchname %] [% ITEM_RESULT.location_description %]
-                        [% IF ( ITEM_RESULT.itemcallnumber ) %]
-                            ([% ITEM_RESULT.itemcallnumber %])
-                        [% END %]
-                    </p>
-                    [% END %][% ELSE %]This record has no items.[% END %]</td>
+            <td>
+                [% IF ( BIBLIO_RESULT.ITEM_RESULTS ) %]
+                    [% FOREACH ITEM_RESULT IN BIBLIO_RESULT.ITEM_RESULTS %]
+                        <div><span class="nowrap"><strong>[% ITEM_RESULT.itemcallnumber %]</strong> [% ITEM_RESULT.branchname %] <span class="shelvingloc inline">[% ITEM_RESULT.location_description %]</span></span></div>
+                    [% END %]
+                [% ELSE %]
+                    This record has no items.
+                [% END %]
+            </td>
             </tr>
         [% END %]
     </table></form>