]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/web/opac/extras/circ/alt_holds_print.html
690f01ad2303249b9bb3069e215627ec767a8456
[Evergreen.git] / Open-ILS / web / opac / extras / circ / alt_holds_print.html
1 <html>
2     <head>
3         <title>Printable Pull List</title>
4         <style type="text/css">
5             @import url('/js/dojo/dojo/resources/dojo.css');
6             @import url('/js/dojo/dijit/themes/tundra/tundra.css');
7             @import url('/js/dojo/dojox/widget/Toaster/Toaster.css');
8             @import url('/opac/skin/default/css/layout.css');
9         </style>
10         <style type="text/css">
11             #clear_holds_deck { margin-bottom: 1em; }
12             a { color: blue; text-decoration: underline; }
13             small { font-size: 9pt; }
14             body { font-size: 14pt; }
15             td {
16                 padding-right: 1em;
17                 padding-bottom: 1em;
18                 border-bottom: 1px #999 dashed;
19             }
20             th {
21                 text-align: left; font-weight: bold;
22                 border-bottom: 1px #000 solid;
23                 border-right: 1px #000 solid;
24                 padding: 0.5em;
25             }
26         </style>
27         <!-- The OpenSRF API writ JS -->
28         <script language='javascript' src='/opac/common/js/utils.js' type='text/javascript'></script>
29         <script language='javascript' src='/opac/common/js/CGI.js' type='text/javascript'></script>
30         <script language='javascript' src='/opac/common/js/JSON_v1.js' type='text/javascript'></script>
31         <!-- Dojo goodness -->
32         <script type="text/javascript">
33             var djConfig = {parseOnLoad:true,isDebug:false,AutoIDL:['aou','aout','pgt','ahr','acp','acn']};
34             var sort_order = ["acplo.position", "prefix", "call_number", "suffix", "request_time"];
35         </script>
36         <script type="text/javascript" src="/js/dojo/dojo/dojo.js"></script>
37         <script type="text/javascript" src="/js/dojo/dojo/openils_dojo.js"></script>
38         <script type="text/javascript" src="/js/dojo/dijit/dijit.js"></script>
39         <script type="text/javascript" src="/js/dojo/openils/User.js"></script>
40         <script type="text/javascript" src="/js/dojo/openils/Util.js"></script>
41         <script type="text/javascript" src="/js/dojo/openils/XUL.js"></script>
42         <script type="text/javascript" src="/opac/extras/circ/alt_holds_print.js"></script>
43         <script type="text/javascript">
44             function my_init() {
45                 cgi = new CGI();
46                 authtoken = (typeof ses == "function" ? ses() : 0) ||
47                     cgi.param("ses") || dojo.cookie("ses");
48                 if(!authtoken && openils.XUL.isXUL()) {
49                     var stash = openils.XUL.getStash();
50                     authtoken = stash.session.key;
51                 }
52
53                 if (cgi.param("do") == "shelf_expired_holds") {
54                     dojo.query("th[name=barcode_part]")[0].innerHTML = "Barcode";  /* XXX i18n. also, no support for part labels in this interface, at least for now */
55                     dojo.byId("clear_holds_launcher").onclick = function() {
56                         if (confirm("Are you sure you're ready to clear the expired holds from the shelf?")) { /* XXX i18n */
57                             do_clear_holds(cgi);
58                         }
59                     };
60                     openils.Util.show("clear_holds_deck");
61                 } else {
62                     dojo.query("[only='shelf_expired_holds']").forEach(dojo.destroy);
63                     do_pull_list(cgi);
64                 }
65             }
66             dojo.addOnLoad(my_init);
67         </script>
68     </head>
69     <body class='tundra'>
70
71         <div style="width: 320px;"
72             dojoType="openils.widget.ProgressDialog"
73             jsId="progress_dialog"></div>
74         <div class="hide_me" id="no_results">No results</div>
75         <div class="hide_me" id="clear_holds_deck">
76             [ <a id="clear_holds_launcher"
77                 href="javascript:void(0);">Clear expired holds</a> ]
78             <small><em id="clear_holds_set_label"></em></small>
79         </div>
80 <!-- START OF TEMPLATE SECTION -->
81         <table>
82             <thead>
83                 <tr>
84                     <th only="shelf_expired_holds">Patron</th>
85                     <th only="shelf_expired_holds">Action</th>
86                     <th>Type</th>
87                     <th>Title</th>
88                     <th>Author</th>
89                     <th>Shelving Location</th>
90                     <th>Call Number</th>
91                     <th name="barcode_part">Barcode/Part</th>
92                 </tr>
93             </thead>
94             <tbody id='target'>
95             </tbody>
96             <tbody id='template' class='hide_me'>
97                 <tr>
98                     <td only="shelf_expired_holds">${usr.display_name}</td>
99                     <td only="shelf_expired_holds">${action}</td>
100                     <td>${hold_type}</td>
101                     <td type='opac/slot-data' query='datafield[tag=245]'></td>
102                     <td type='opac/slot-data' query='datafield[tag^=1]' limit='1'> </td>
103                     <td>${current_copy.location.name}</td>
104                     <td>${current_copy.call_number.prefix.label} ${current_copy.call_number.label} ${current_copy.call_number.suffix.label}</td>
105                     <td>${current_copy.barcode} ${current_copy.parts_stringified}</td>
106                 </tr>
107             </tbody>
108         </table>
109 <!-- END OF TEMPLATE SECTION -->
110     </body>
111 </html>