Bug 18327: Add the ability to set the received date to today on multi receiving serials
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / serials / serials-collection.tt
1 [% USE Asset %]
2 [% USE AuthorisedValues %]
3 [% USE Branches %]
4 [% USE KohaDates %]
5 [% SET footerjs = 1 %]
6 [% INCLUDE 'doc-head-open.inc' %]
7 <title>Koha &rsaquo; Serials &rsaquo; Serial collection information for [% bibliotitle %]</title>
8 [% INCLUDE 'doc-head-close.inc' %]
9 [% Asset.css("css/datatables.css") %]
10 </head>
11
12 <body id="ser_serials-collection" class="ser">
13 [% INCLUDE 'header.inc' %]
14 [% INCLUDE 'serials-search.inc' %]
15
16 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/serials/serials-home.pl">Serials</a> &rsaquo; Serial collection information for  <i>[% bibliotitle %]</i></div>
17
18 <div id="doc3" class="yui-t2">
19    
20    <div id="bd">
21         <div id="yui-main">
22         <div class="yui-b">
23
24     <!-- Modal -->
25     <div id="multi_receiving" class="modal" tabindex="-1" role="dialog" aria-labelledby="multi_receiving_label" aria-hidden="true">
26         <div class="modal-dialog">
27             <div class="modal-content">
28                 <form action="/cgi-bin/koha/serials/serials-collection.pl" method="post">
29                     <div class="modal-body">
30                         <fieldset class="rows">
31                             <legend>Multi receiving</legend>
32                             <ol>
33                                 <li>
34                                 <label for="nbissues" class="required">How many issues do you want to receive?</label>
35                                 <input type="text"  size="25" id="nbissues" name="nbissues" required="required" />
36                                 <li>
37                                 <li>
38                                     <label for="date_received_today">Set the date received to today?</label>
39                                     <input type="checkbox" id="date_received_today" name="date_received_today" />
40                                 </li>
41                             </ol>
42                             <input type="hidden" name="op" value="gennext" />
43                             <input type="hidden" name="subscriptionid" value="[% subscriptionidlist %]" />
44                         </fieldset>
45                     </div>
46
47                     <div class="modal-footer">
48                         <a href="#" class="cancel" data-dismiss="modal" aria-hidden="true">Cancel</a>
49                         <input type="submit" class="btn btn-default approve" value="Multi receiving" />
50                     </div>
51                 </form>
52             </div>
53         </div>
54     </div>
55
56
57 [% UNLESS ( popup ) %]
58         [% INCLUDE 'serials-toolbar.inc' %]
59
60         <h1>Serial collection information for  <i>[% bibliotitle %]</i>
61         [% IF location %] ([% AuthorisedValues.GetByCode( 'LOC', location ) %]) [% END %]
62                 [% IF ( callnumber ) %]callnumber: [% callnumber %][% END %]</h1>
63 [% END %]
64
65 [% IF ( subscriptions ) %]
66 <table>
67 [% IF ( subscriptions.size == 1 ) %]
68 <caption> Subscription summary</caption>
69 [% ELSE %]
70 <caption> Subscription summaries</caption>
71 [% END %]
72 <tr>
73   <th>Subscription num.</th>
74   <th>Frequency</th>
75   <th>Numbering pattern</th>
76   <th>Library</th>
77   <th>Call number</th>
78   <th>Notes</th>
79   <th>&nbsp;</th>
80 </tr>
81 [% FOREACH subscription IN subscriptions %]
82     <tr>
83         <td><a href="subscription-detail.pl?subscriptionid=[% subscription.subscriptionid %]"># [% subscription.subscriptionid %]</a> </td>
84         <td>[% subscription.frequency.description %]</td>
85         <td>[% subscription.numberpattern.label %]</td>
86         <td>[% IF subscription.branchcode %][% Branches.GetName( subscription.branchcode ) %][% END %]</td>
87         <td> [% subscription.callnumber %]</td>
88         <td> [% subscription.notes %]
89             [% UNLESS subscription.closed %]
90                 [% IF ( subscription.subscriptionexpired ) %]
91                     <br /><span class="problem"> Subscription expired</span>
92                 [% END %]
93             [% ELSE %]
94                 <br /> Subscription closed
95             [% END %]
96         </td>
97         [% IF ( subscription.abouttoexpire ) || ( subscription.subscriptionexpired ) %]<td class="problem actions">[% ELSE %]<td class="actions">[% END %]
98         [% UNLESS subscription.closed %]
99             [% IF ( routing && CAN_user_serials_routing ) %]
100                 [% IF ( subscription.hasRouting ) %]
101                     <a class="btn btn-default btn-xs" href="/cgi-bin/koha/serials/routing.pl?subscriptionid=[% subscription.subscriptionid %]"><i class="fa fa-pencil"></i> Edit routing list</a>
102                 [% ELSE %]
103                     <a class="btn btn-default btn-xs" href="/cgi-bin/koha/serials/routing.pl?subscriptionid=[% subscription.subscriptionid %]&amp;op=new"><i class="fa fa-plus"></i> Create routing list</a>
104                 [% END %]
105             [% END %]
106             [% IF ( subscription.abouttoexpire ) %]<a class="btn btn-default btn-xs" href="/cgi-bin/koha/serials/subscription-renew.pl?subscriptionid=[% subscription.subscriptionid %]" onclick="popup([% subscription.subscriptionid %]); return false;"><i class="fa fa-refresh"></i> Renew</a>
107             [% ELSE %]
108                 [% IF ( subscription.subscriptionexpired ) %]<a class="btn btn-default btn-xs" href="/cgi-bin/koha/serials/subscription-renew.pl?subscriptionid=[% subscription.subscriptionid %]" onclick="popup([% subscription.subscriptionid %]); return false;"><i class="fa fa-refresh"></i> Renew</a>
109                 [% ELSE %]
110                     &nbsp;
111                 [% END %]
112             [% END %]
113         [% ELSE %]
114             &nbsp;
115         [% END %]
116         </td>
117       </tr>
118 [% END %]
119 [% IF ( subscr ) %]
120 [% IF ( subscriptioncount > 1 ) %]
121 <tr ><td colspan="8">  <a href="serials-collection.pl?biblionumber=[% biblionumber %]">See any subscription attached to this biblio</a></td>
122 </tr>
123 [% END %]
124 [% END %]
125 </table>
126 [% END %]
127
128
129 [% IF ( years ) %]<form name="edition" action="serials-edit.pl" method="post">
130 <div id="subscription_years" class="toptabs numbered">
131 <ul>
132         [% FOREACH year IN years %]
133         [% IF ( year.year ) %]
134             [% IF year.year == 'manage' %]
135                 <li><a href="#subscription-year-manage">Manage</a></li>
136             [% ELSE %]
137                 <li><a href="#subscription-year-[% year.year %]">[% year.year %]</a></li>
138             [% END %]
139         [% END %]
140     [% END %]
141 </ul>
142
143  [% FOREACH year IN years %]
144 <div id="subscription-year-[% year.year %]">
145     [% IF ( CAN_user_serials_receive_serials ) %]
146         <p>
147             <div class="btn-group"><input type="submit" value="Edit serials" class="btn btn-default btn-sm" /></div>
148             [% UNLESS subscription.closed %]
149                 <div class="btn-group"><input type="button" value="Generate next" onclick="javascription:generateNext([% subscriptionidlist %])" class="btn btn-default btn-sm" /></div>
150                 [% IF ( subscriptions.size == 1 and !serialsadditems ) %]&nbsp;
151                     <div class="btn-group"><a href="#multi_receiving" role="button" class="btn btn-default btn-sm" data-toggle="modal"><i class="fa fa-plus"></i> Multi receiving</a></div>
152                 [% END %]
153             [% END %]
154         </p>
155     [% END %]
156       <span class="checkall">
157         <a class="CheckAll" href="#" onclick="CheckAll('subscription-year-[% year.year %]'); return false;">Select all</a>
158       </span> |
159       <span class="clearall">
160         <a class="CheckNone" href="#" onclick="CheckNone('subscription-year-[% year.year %]'); return false;">Clear all</a>
161       </span>
162         <table class="subscription-year-table">
163           <thead>
164             <tr>
165                 [% IF ( CAN_user_serials_receive_serials ) %]<th>Edit</th>[% END %]
166 [% IF ( subscriptions.size > 1 ) %]
167                 <th># Subs</th>
168 [% END %]
169                 <th class="title-string">Date published
170                 </th>
171                 <th class="title-string">Date published (text)
172                 </th>
173                 <th class="title-string">Date received
174                 </th>
175                 <th>Number
176                 </th>
177                 <th>Status
178                 </th>
179                 <th>Notes
180                 </th>
181                 <th>Library
182                 </th>
183                 [% IF ( routing ) %]<th>Routing</th>[% END %]
184             </tr>
185           </thead>
186           <tbody>
187       [% FOREACH serial IN year.serials %]
188         <tr>
189             [% IF ( CAN_user_serials_receive_serials ) %]
190                 <td>
191                   [% UNLESS CAN_user_serials_receive_serials %]
192                     disabled
193                   [% ELSE %]
194                     [% IF ( serial.subscriptionexpired ) %]
195                     <input type="checkbox" name="serialid" value="[% serial.serialid %]" disabled="disabled" />
196                     [% ELSE %]
197                       [% IF ( serial.checked ) %]
198                     <input type="checkbox" class="checkboxed" name="serialid" checked="checked" value="[% serial.serialid %]" />
199                       [% ELSE %]
200                     <input type="checkbox" class="checkboxed" name="serialid" value="[% serial.serialid %]" />
201                       [% END %]
202                     [% END %]
203                   [% END %]
204                 </td>
205             [% END %]
206 [% IF ( subscriptions.size > 1 ) %]
207                  <td><a href="serials-collection.pl?subscriptionid=[% serial.subscriptionid %]">[% serial.subscriptionid %]</a></td>
208 [% END %]
209                 <td>
210                     <span title="[% serial.publisheddate %]">
211                       [% IF serial.publisheddate %]
212                         [% serial.publisheddate | $KohaDates %]
213                       [% ELSE %]
214                         Unknown
215                       [% END %]
216                     </span>
217                 </td>
218                 <td>
219                    [% IF serial.publisheddatetext %]
220                       <span title="[% serial.publisheddatetext %]">
221                         [% serial.publisheddatetext %]
222                       </span>
223                    [% END %]
224                 </td>
225                 <td>
226                     <span title="[% serial.planneddate %]">
227                       [% IF serial.planneddate %]
228                         [% serial.planneddate | $KohaDates %]
229                       [% ELSE %]
230                         Unknown
231                       [% END %]
232                     </span>
233                 </td>
234                 <td>
235                     [% IF ( matches = serial.serialseq.match('(.*)Spring(.*)') ) %]
236                         [% matches.0 %]Spring[% matches.1 %]
237                     [% ELSIF ( matches = serial.serialseq.match('(.*)Summer(.*)') ) %]
238                         [% matches.0 %]Summer[% matches.1 %]
239                     [% ELSIF ( matches = serial.serialseq.match('(.*)Fall(.*)') ) %]
240                         [% matches.0 %]Fall[% matches.1 %]
241                     [% ELSIF ( matches = serial.serialseq.match('(.*)Winter(.*)') ) %]
242                         [% matches.0 %]Winter[% matches.1 %]
243                     [% ELSIF ( matches = prediction.number.match('(.*)Spr(.*)') ) %]
244                         [% matches.0 %]Spr[% matches.1 %]
245                     [% ELSIF ( matches = prediction.number.match('(.*)Sum(.*)') ) %]
246                         [% matches.0 %]Sum[% matches.1 %]
247                     [% ELSIF ( matches = prediction.number.match('(.*)Fal(.*)') ) %]
248                         [% matches.0 %]Fal[% matches.1 %]
249                     [% ELSIF ( matches = prediction.number.match('(.*)Win(.*)') ) %]
250                         [% matches.0 %]Win[% matches.1 %]
251                     [% ELSE %]
252                         [% serial.serialseq %]
253                     [% END %]
254                 </td>
255                 <td>
256                     [% IF ( serial.status1 ) %]Expected[% END %]
257                     [% IF ( serial.status2 ) %]Arrived[% END %]
258                     [% IF ( serial.status3 ) %]Late[% END %]
259                     [% IF ( serial.status4 ) %]Missing[% END %]
260                     [% IF ( serial.status41 ) %]Missing (never received)[% END %]
261                     [% IF ( serial.status42 ) %]Missing (sold out)[% END %]
262                     [% IF ( serial.status43 ) %]Missing (damaged)[% END %]
263                     [% IF ( serial.status44 ) %]Missing (lost)[% END %]
264                     [% IF ( serial.status5 ) %]Not issued[% END %]
265                     [% IF ( serial.status6 ) %]Delete[% END %]
266                     [% IF ( serial.status7 ) %]Claimed[% END %]
267                     [% IF ( serial.status8 ) %]Stopped[% END %]
268                 </td>
269                 <td>
270                     [% serial.notes %]
271                 </td>
272                 <td>
273                     [% Branches.GetName( serial.branchcode ) %]
274                 </td>
275                 [% IF ( routing ) %]
276                 <td class="actions">
277                     <a href="" onclick="print_slip([% serial.subscriptionid |html %], '[% serial.serialseq.replace("'", "\\'") |html %] ([% serial.publisheddate | $KohaDates %])'); return false" class="btn btn-default btn-xs"><i class="fa fa-print"></i> Print list</a>
278                 </td>
279                 [% END %]
280             </tr>
281           [% END %]
282         </tbody>
283       </table>
284     </div>
285     [% END %]
286   <input type="hidden" name="subscriptionid" value="[% subscriptionidlist %]" />
287
288 </div>
289 </form>
290 [% END %]
291
292 </div>
293 </div>
294
295 <div class="yui-b">
296 [% INCLUDE 'serials-menu.inc' %]
297 </div>
298 </div>
299
300 [% MACRO jsinclude BLOCK %]
301     [% INCLUDE 'datatables.inc' %]
302     <script type="text/javascript">
303         var subscriptionid = "[% subscriptionid %]";
304         var MSG_CLOSE_SUBSCRIPTION = _("Are you sure you want to close this subscription?");
305         var MSG_REOPEN_SUBSCRIPTION = _("Are you sure you want to reopen this subscription?");
306         var CONFIRM_DELETE_SUBSCRIPTION = _("Are you sure you want to delete this subscription?");
307     </script>
308     [% Asset.js("js/serials-toolbar.js") %]
309     [% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") %]
310
311     <script type="text/javascript">
312
313         function print_slip(subscriptionid,issue){
314             var myurl = 'routing-preview.pl?ok=1&subscriptionid='+subscriptionid+'&issue='+issue;
315             window.open(myurl,'PrintSlip','width=500,height=500,toolbar=no,scrollbars=yes');
316         }
317
318         function popup(subscriptionid) {
319             newin=window.open('subscription-renew.pl?mode=popup&subscriptionid='+subscriptionid,'popup','width=500,height=400,toolbar=false,scrollbars=yes');
320         }
321
322         function generateNext(subscriptionid) {
323             if(confirm(_("Do you really want to generate next serial?"))){
324                 document.location = 'serials-collection.pl?op=gennext&subscriptionid='+subscriptionid;
325             }
326         }
327
328         function CheckAll( node ) {
329             $("#"+node).checkCheckboxes();
330             return false;
331         }
332         function CheckNone( node ) {
333             $("#"+node).unCheckCheckboxes();
334             return false;
335         }
336         $(document).ready(function() {
337             $('#subscription_years').tabs();
338             $(".subscription-year-table").dataTable($.extend(true, {}, dataTablesDefaults, {
339                 "aoColumnDefs": [
340                     { "aTargets": [ 0,-1 ], "bSortable": false, "bSearchable": false },
341                     { "sType": "title-string", "aTargets" : [ "title-string" ] }
342                 ],
343                 "aaSorting": [[0, 'desc']],
344                 "sDom": 't',
345                 "bAutoWidth": false,
346                 "bPaginate": false,
347                 "bInfo": false,
348                 "bFilter": false,
349             } ));
350
351             $('#multi_receiving').on('show', function () {
352                $(this).find(".modal-body").html($(".serials_multi_receiving")[0].outerHTML);
353             });
354         });
355
356     </script>
357 [% END %]
358
359 [% INCLUDE 'intranet-bottom.inc' %]