2 [% USE AuthorisedValues %]
3 [% INCLUDE 'doc-head-open.inc' %]
4 <title>Koha › Serials › Serial edition [% bibliotitle %]</title>
5 [% INCLUDE 'doc-head-close.inc' %]
6 [% Asset.js("js/cataloging.js") %]
7 [% Asset.js("js/prevent_submit.js") %]
8 [% INCLUDE 'calendar.inc' %]
9 <script language="JavaScript" type="text/javascript">
11 function generateReceive() {
12 var subscriptionid = document.getElementsByName("subscriptionid")[0].value;
13 if(nbissues=prompt(_("How many issues do you want to receive ?"))){
14 document.location = 'serials-collection.pl?op=gennext&subscriptionid='+subscriptionid+'&nbissues='+nbissues;
17 function popup(subscriptionid) {
18 window.open("subscription-renew.pl?subscriptionid="+subscriptionid,"subscription_renewal",'width=700,height=400,toolbar=false,scrollbars=yes');
21 function unHideItems(index,labelindex, serialId) {
22 subfield = document.getElementById(index);
23 subfield.style.display = 'block';
24 label = document.getElementById(labelindex);
25 label.style.display='none';
27 // Prefilling enumcron subfield with serial enumeration/issue number
29 item_div = $("fieldset#" + index + " div.cataloguing_additem_itemlist div.items");
30 // Getting subfield with enumcron mapping
31 subfield_div = $(item_div).find("input[name='kohafield'][value='items.enumchron']").parent();
32 // Setting text field if no saved default value
33 if(! $(subfield_div).children("input[type='text'][name='field_value']").val() ){
34 $(subfield_div).children("input[type='text'][name='field_value']").val($("#serialseq" + serialId).val());
37 function HideItems(index,labelindex) {
38 subfield = document.getElementById(index);
39 subfield.style.display = 'none';
40 label = document.getElementById(labelindex);
41 label.style.display='block';
43 function setStatus(serialid){
44 $("#status"+serialid).val("2").attr("selected","selected");
46 function changeDate(elem, adate) {
47 $(elem).closest('tr').find('[name=planneddate]').val(adate);
50 $(document).ready(function() {
51 $("form#serials_edit").submit(function() {
53 $(this).find(".cataloguing_additem_itemlist:visible").each(function(){
54 total_errors = total_errors + CheckMandatorySubfields(this);
56 if ( total_errors > 0 ) {
57 var mes = _("Form not submitted because of the following problem(s)");
58 mes += "\n------------------------------------------------------------------------------------\n";
59 mes += "\n- " + _("%s mandatory fields empty (highlighted)").format(total_errors);
66 $(".datepicker").datepicker();
70 <style type="text/css">#serials_edit fieldset.rows label, #serials_edit fieldset.rows span.label {
74 #serials_edit fieldset.rows select { max-width : 15em; }
75 #serials_edit fieldset.rows li {
78 #serials_edit .input_marceditor {
82 <body id="ser_serials-edit" class="ser">
83 [% INCLUDE 'header.inc' %]
84 [% INCLUDE 'serials-search.inc' %]
86 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/serials/serials-home.pl">Serials</a> › Serial edition <i>[% bibliotitle %] [% IF ( callnumber ) %]([% callnumber %])[% END %]</i></div>
88 <div id="doc3" class="yui-t2">
94 <h1>Serial edition <i>[% bibliotitle %]</i>
95 [% IF location %] ([% AuthorisedValues.GetByCode('LOC', location) %])[% END %]
96 [% IF ( callnumber ) %] callnumber: [% callnumber %][% END %]</h1>
97 [% IF internalnotes %]<p>Nonpublic note: [% internalnotes %]</p>[% END %]
98 <form method="post" name="f" action="serials-edit.pl" id="serials_edit">
101 <div class="dialog alert">
103 [% IF ( barcode_not_unique ) %]<li>Error: Barcode not unique for [% FOREACH errse IN errseq %]serialseq [% errse.serialseq %]<br/>[% END %]</li>[% END %]
108 <input type="hidden" name="op" value="serialchangestatus" />
109 [% FOREACH subscription IN subscriptions %]
110 <input type="hidden" name="subscriptionid" value="[% subscription.subscriptionid %]" />
115 <th>Published on</th>
116 <th>Published on (text)</th>
121 [% FOREACH serialslis IN serialslist %]
124 <input type="hidden" name="serialid" value="[% serialslis.serialid %]" />
125 <input type="hidden" name="biblionumber" value="[% serialslis.biblionumber %]" />
126 <input type="hidden" name="itemcount" value="[% serialslis.issuesatonce %]" />
127 <input type="hidden" name="user" value="[% serialslis.librarian %]" />
128 Issue <input type="text" name="serialseq" id="serialseq[% serialslis.serialid %]" value="[% serialslis.serialseq %]" size="20" maxlength="100" />
131 <input type="text" name="publisheddate" value="[% serialslis.publisheddate %]" size="10" maxlength="15" class="datepicker" />
134 <input type="text" name="publisheddatetext" value="[% serialslis.publisheddatetext %]" size="10" maxlength="100" />
137 <input type="text" name="planneddate" value="[% serialslis.planneddate %]" size="10" maxlength="15" class="datepicker" />
140 [% IF ( serialslis.editdisable ) %]
141 <input type="hidden" name="status" id="status[% serialslis.serialid %]" value="[% serialslis.serstatus %]">
142 <select name="status" size="1" disabled="disabled">
144 [% IF ( serialslis.serialsadditems ) %]
145 <select name="status" size="1" id="status[% serialslis.serialid %]" onchange="if (this.value==2){unHideItems('items'+[% serialslis.subscriptionid %][% serialslis.serialid %],'label[% serialslis.subscriptionid %][% serialslis.serialid %]','[% serialslis.serialid %]'); changeDate(this, '[% serialslis.arriveddate %]')} else if (this.value==7){changeDate(this, '[% serialslis.arriveddate %]')} else { HideItems('items'+[% serialslis.subscriptionid %]+[% serialslis.serialid %],'label[% serialslis.subscriptionid %][% serialslis.serialid %]'); changeDate(this, '[% serialslis.planneddate %]')}" >
147 <select name="status" size="1" id="status[% serialslis.serialid %]" onchange="if (this.value==2 || this.value==7){changeDate(this, '[% serialslis.arriveddate %]')} else {changeDate(this, '[% serialslis.planneddate %]')}" >
150 [% IF ( serialslis.status1 ) %]
151 <option value="1" selected="selected">Expected</option>
153 <option value="1">Expected</option>
155 [% IF ( serialslis.status2 ) %]
156 <option value="2" selected="selected">Arrived</option>
158 <option value="2">Arrived</option>
160 [% IF ( serialslis.status3 ) %]
161 <option value="3" selected="selected">Late</option>
163 <option value="3">Late</option>
165 [% IF ( serialslis.status4 ) %]
166 <option value="4" selected="selected">Missing</option>
168 <option value="4">Missing</option>
170 [% IF ( serialslis.status41 ) %]
171 <option value="41" selected="selected">Missing (never received)</option>
173 <option value="41">Missing (never received)</option>
175 [% IF ( serialslis.status42 ) %]
176 <option value="42" selected="selected">Missing (sold out)</option>
178 <option value="42">Missing (sold out)</option>
180 [% IF ( serialslis.status43 ) %]
181 <option value="43" selected="selected">Missing (damaged)</option>
183 <option value="43">Missing (damaged)</option>
185 [% IF ( serialslis.status44 ) %]
186 <option value="44" selected="selected">Missing (lost)</option>
188 <option value="44">Missing (lost)</option>
190 [% IF ( serialslis.status7 ) %]
191 <option value="7" selected="selected">Claimed</option>
193 <option value="7">Claimed</option>
195 [% IF ( serialslis.status5 ) %]
196 <option value="5" selected="selected">Not available</option>
198 <option value="5">Not available</option>
200 [% IF ( serialslis.status6 ) %]
201 <option value="6" selected="selected">Delete</option>
203 <option value="6">Delete</option>
205 [% IF serialslis.status8 %]
206 <option value="8" selected="selected">Stopped</option>
212 <input type="text" name="notes" value="[% serialslis.sernotes %]" size="20" maxlength="255" />
215 [% UNLESS ( serialslis.subscriptionexpired ) %]
216 [% IF ( serialslis.serialsadditems ) %]
219 <a id="label[% serialslis.subscriptionid %][% serialslis.serialid %]" style="color: grey; font-size: 80%; cursor: pointer;" onclick="unHideItems('items[% serialslis.subscriptionid %][% serialslis.serialid %]','label[% serialslis.subscriptionid %][% serialslis.serialid %]', '[% serialslis.serialid %]');setStatus([% serialslis.serialid %]);">
220 Click to add item</a>
221 <fieldset class="rows" style="display:none;" id="items[% serialslis.subscriptionid %][% serialslis.serialid %]">
222 <legend><a style="cursor: pointer;" onclick="HideItems('items[% serialslis.subscriptionid %][% serialslis.serialid %]','label[% serialslis.subscriptionid %][% serialslis.serialid %]')">
225 <div class="cataloguing_additem_itemlist">
226 [% FOREACH item IN serialslis.items %]
227 <div id="item[% item.serialid %][% item.countitems %]" class="items">
228 <ol>[% FOREACH iteminformatio IN item.iteminformation %]<li>
229 <div class="subfield_line" style="[% iteminformatio.hidden %]" id="subfield[% item.serialid %][% item.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]">
230 [% IF (iteminformatio.mandatory) %]
231 <label class="required">[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
233 <label>[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
235 [% IF ( iteminformatio.marc_value.type == 'select' ) %]
236 <select name="field_value" size="1">
237 [% FOREACH value IN iteminformatio.marc_value.values %]
238 [% IF ( value == iteminformatio.marc_value.default ) %]
239 <option value="[% value %]" selected="selected">[% iteminformatio.marc_value.labels.$value %]</option>
241 <option value="[% value %]">[% iteminformatio.marc_value.labels.$value %]</option>
246 [% iteminformatio.marc_value %]
248 <input type="hidden" name="itemid" value="[% item.itemid %]" />
249 <input type="hidden" name="kohafield" value="[% iteminformatio.kohafield %]" />
250 <input type="hidden" name="tag" value="[% iteminformatio.tag %]" />
251 <input type="hidden" name="subfield" value="[% iteminformatio.subfield %]" />
252 <input type="hidden" name="mandatory" value="[% iteminformatio.mandatory %]" />
253 [% IF ( iteminformatio.repeatable ) %]
254 <a href="#" class="buttonPlus" onclick="CloneItemSubfield(this.parentNode); return false;">
255 <img src="[% interface %]/[% theme %]/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
258 [% IF ( iteminformatio.mandatory ) %] <span class="required">Required</span>[% END %]
260 [% END %]</ol></div><!-- /iteminformation -->
262 <input type="hidden" name="moditem" value="" />
263 <input type="hidden" name="tag" value="[% item.itemtagfield %]" />
264 <input type="hidden" name="subfield" value="[% item.itemtagsubfield %]" />
265 <input type="hidden" name="serial" value="[% item.serialid %]" />
266 <input type="hidden" name="bibnum" value="[% item.biblionumber %]" />
267 <input type="hidden" name="itemid" value="[% item.itemid %]" />
268 <input type="hidden" name="field_value" value="[% item.itemnumber %]" />
269 [% END %] <!-- /items -->
277 [% FOREACH newserialloo IN newserialloop %]
278 [% UNLESS ( newserialloo.subscriptionexpired ) %]
281 <input type="hidden" name="serialid" value="NEW" />
282 <input type="hidden" name="biblionumber" value="[% newserialloo.biblionumber %]" />
283 <input type="hidden" name="itemcount" value="[% newserialloo.issuesatonce %]" />
284 <input type="hidden" name="user" value="[% newserialloo.librarian %]" />
285 Supplemental issue <input type="text" name="serialseq" id="serialseq[% newserialloo.serialid %]" value="" size="20" maxlength="100" onchange="if (this.value!=''){unHideItems('items[% newserialloo.subscriptionid %][% newserialloo.serialid %]','label[% newserialloo.subscriptionid %][% newserialloo.serialid %]', '[% newserialloo.serialid %]')} else {HideItems('items[% newserialloo.subscriptionid %][% newserialloo.serialid %]','label[% newserialloo.subscriptionid %][% newserialloo.serialid %]')}" />
288 <input type="text" name="publisheddate" value="[% newserialloo.publisheddate %]" size="10" maxlength="15" class="datepicker" />
291 <input type="text" name="publisheddatetext" value="[% newserialloo.publisheddatetext %]" size="10" maxlength="100" />
294 <input type="text" name="planneddate" value="[% newserialloo.planneddate %]" size="10" maxlength="15" class="datepicker" />
297 <select name="status" size="1" id="addstatus[% newserialloo.serialid %]" onchange="if (this.value==2){unHideItems('items'+'[% newserialloo.subscriptionid %][% newserialloo.serialid %]','label[% newserialloo.subscriptionid %][% newserialloo.serialid %]','[% newserialloo.serialid %]'); changeDate(this, '[% newserialloo.arriveddate %]')} else if (this.value==7){changeDate(this, '[% newserialloo.arriveddate %]')} else { HideItems('items'+'[% newserialloo.subscriptionid %]'+[% newserialloo.serialid %],'label[% serialslis.subscriptionid %][% serialslis.serialid %]'); changeDate(this, '[% serialslis.planneddate %]')}" >
299 <option value="">----</option>
300 [% IF ( newserialloo.status1 ) %]
301 <option value="1" selected="selected">Expected</option>
303 [% IF ( newserialloo.status2 ) %]
304 <option value="2" selected="selected">Arrived</option>
306 <option value="2">Arrived</option>
308 [% IF ( newserialloo.status3 ) %]
309 <option value="3" selected="selected">Late</option>
311 <option value="3">Late</option>
313 [% IF ( newserialloo.status4 ) %]
314 <option value="4" selected="selected">Missing</option>
316 <option value="4">Missing</option>
318 [% IF ( newserialloo.status41 ) %]
319 <option value="41" selected="selected">Missing (never received)</option>
321 <option value="41">Missing (never received)</option>
323 [% IF ( newserialloo.status42 ) %]
324 <option value="42" selected="selected">Missing (sold out)</option>
326 <option value="42">Missing (sold out)</option>
328 [% IF ( newserialloo.status43 ) %]
329 <option value="43" selected="selected">Missing (damaged)</option>
331 <option value="43">Missing (damaged)</option>
333 [% IF ( newserialloo.status44 ) %]
334 <option value="44" selected="selected">Missing (lost)</option>
336 <option value="44">Missing (lost)</option>
338 [% IF ( newserialloo.status7 ) %]
339 <option value="7" selected="selected">Claimed</option>
341 <option value="7">Claimed</option>
343 [% IF ( newserialloo.status5 ) %]
344 <option value="5" selected="selected">Not available</option>
346 <option value="5">Not available</option>
348 [% IF ( newserialloo.status6 ) %]
349 <option value="6" selected="selected">Delete</option>
351 <option value="6">Delete</option>
353 [% IF newserialloo.status8 %]
354 <option value="8" selected="selected">Stopped</option>
360 <input type="text" name="notes" value="" size="20" maxlength="255" />
363 [% IF ( newserialloo.serialsadditems ) %]
366 <a id="label[% newserialloo.subscriptionid %][% newserialloo.serialid %]" style="color: grey; font-size: 80%; cursor: pointer;" onclick="unHideItems('items[% newserialloo.subscriptionid %][% newserialloo.serialid %]','label[% newserialloo.subscriptionid %][% newserialloo.serialid %]', '[% newserialloo.serialid %]')">
367 Click to add item</a>
368 <fieldset class="rows" style="display:none;" id="items[% newserialloo.subscriptionid %][% newserialloo.serialid %]">
369 <legend><a style="cursor: pointer;" onclick="HideItems('items[% newserialloo.subscriptionid %][% newserialloo.serialid %]','label[% newserialloo.subscriptionid %][% newserialloo.serialid %]')">
372 <div class="cataloguing_additem_itemlist">
373 <div id="item[% newserialloo.serialid %][% newserialloo.countitems %]" class="items">
374 <ol>[% FOREACH iteminformatio IN newserialloo.iteminformation %]<li>
375 <div class="subfield_line" style="[% iteminformatio.hidden %]" id="subfield[% newserialloo.serialid %][% newserialloo.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]">
376 [% IF (iteminformatio.mandatory) %]
377 <label class="required">[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
379 <label>[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
381 [% IF ( iteminformatio.marc_value.type == 'select' ) %]
382 <select name="field_value" size="1">
383 [% FOREACH value IN iteminformatio.marc_value.values %]
384 [% IF ( value == iteminformatio.marc_value.default ) %]
385 <option value="[% value %]" selected="selected">[% iteminformatio.marc_value.labels.$value %]</option>
387 <option value="[% value %]">[% iteminformatio.marc_value.labels.$value %]</option>
392 [% iteminformatio.marc_value %]
394 <input type="hidden" name="itemid" value="[% newserialloo.itemid %]" />
395 <input type="hidden" name="kohafield" value="[% iteminformatio.kohafield %]" />
396 <input type="hidden" name="tag" value="[% iteminformatio.tag %]" />
397 <input type="hidden" name="subfield" value="[% iteminformatio.subfield %]" />
398 <input type="hidden" name="mandatory" value="[% iteminformatio.mandatory %]" />
399 [% IF ( iteminformatio.repeatable ) %]
400 <a href="#" class="buttonPlus" onclick="CloneItemSubfield(this.parentNode); return false;">
401 <img src="[% interface %]/[% theme %]/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
404 [% IF ( iteminformatio.mandatory ) %] <span class="required">Required</span>[% END %]
408 <input type="hidden" name="moditem" value="" />
409 <input type="hidden" name="tag" value="[% newserialloo.itemtagfield %]" />
410 <input type="hidden" name="subfield" value="[% newserialloo.itemtagsubfield %]" />
411 <input type="hidden" name="serial" value="[% newserialloo.serialid %]" />
412 <input type="hidden" name="bibnum" value="[% newserialloo.biblionumber %]" />
413 <input type="hidden" name="itemid" value="[% newserialloo.itemid %]" />
414 <input type="hidden" name="field_value" value="[% newserialloo.itemnumber %]" />
425 <fieldset class="action">
426 <input type="submit" value="Save" class="button" accesskey="w" />
427 [% UNLESS ( serialsadditems ) %] <input type="button" onclick="javascript:generateReceive()" value="Multi receiving">[% END %]
435 [% INCLUDE 'serials-menu.inc' %]
437 [% FOREACH subscription IN subscriptions %]
438 <li><a href="serials-collection.pl?subscriptionid=[% subscription.subscriptionid %]" title="serial collection for [% subscription.bibliotitle %]">Serial collection #[% subscription.subscriptionid %]</a></li>
439 <li><a href="subscription-detail.pl?subscriptionid=[% subscription.subscriptionid %]" title="detail of the subscription">Subscription #[% subscription.subscriptionid %]</a></li>
440 [% IF ( subscription.abouttoexpire ) %]
441 [% UNLESS subscription.closed %]
442 <li><a href="#" onclick="javascript:popup([% subscription.subscriptionid %])">Renew #[% subscription.subscriptionid %]</a></li>
446 <li><a href="/cgi-bin/koha/catalogue/[% default_bib_view %].pl?biblionumber=[% biblionumber %]" title="go to [% bibliotitle %]">Show biblio</a></li></ul>
449 [% INCLUDE 'intranet-bottom.inc' %]