1 [% INCLUDE 'doc-head-open.inc' %]
2 <title>Koha › Serials › Serial Edition [% bibliotitle %]</title>
3 [% INCLUDE 'doc-head-close.inc' %]
4 <script language="JavaScript" type="text/javascript">
6 function popup(subscriptionid) {
7 window.open("subscription-renew.pl?subscriptionid="+subscriptionid,"subscription_renewal",'width=700,height=400,toolbar=false,scrollbars=yes');
10 function barcode_check(){
12 var count = [% count %];
13 for(var i=1;i<=count;i++){
15 var barcodenum = "barcode"+i;
16 var statusnum = "status"+i;
17 var elembarcode = "document.getElementById('"+barcodenum+"')";
18 var elemstatus = "document.getElementById('"+statusnum+"')";
19 // alert(elembarcode+"\n"+eval(elembarcode+".value));
20 // alert(elemstatus+"\n"+eval(elemstatus+".value"));
21 if(eval(elembarcode+".value") =='' && eval(elemstatus+".value") == 2){
22 var answer = confirm("Leave barcode blank?\n - Note: unable to change this later");
29 if(eval(elembarcode+".value".indexOf('TEMP')) > 0 && eval(elemstatus+".value") == 2){
30 var answer = confirm("A barcode was not entered.\nDo you want to put in a barcode\nor do you want to use a system generated barcode?");
40 function unHideItems(index,labelindex, serialId) {
41 subfield = document.getElementById(index);
42 subfield.style.display = 'block';
43 label = document.getElementById(labelindex);
44 label.style.display='none';
46 // Prefilling 995$h with serial enumeration/issue number
48 itemid = $("fieldset#" + index + " div.cataloguing_additem_itemlist div.items").attr("id");
49 // Getting subfield id
50 subfieldid = "subfield" + itemid.substr(4) + "h";
52 $("#" + subfieldid + " input[type='text']").val($("#serialseq" + serialId).val());
55 function HideItems(index,labelindex) {
56 subfield = document.getElementById(index);
57 subfield.style.display = 'none';
58 label = document.getElementById(labelindex);
59 label.style.display='block';
61 function setStatus(serialid){
62 $("#status"+serialid).val("2").attr("selected","selected");
64 function changeDate(elem, adate) {
65 $(elem).closest('tr').find('#expecteddate').val(adate);
67 function changeDate2(adate) {
68 var elem = document.getElementById("supexpecteddate");
71 function CloneSubfield(index){
72 var original = document.getElementById(index); //original <div>
73 var clone = original.cloneNode(true);
74 var new_key = CreateKey();
75 var old_id = original.getAttribute('id');
76 old_id=old_id.substr(12);
77 var new_id = old_id+new_key;
79 // set the attribute for the new 'div' subfields
80 var inputs = clone.getElementsByTagName('input');
81 var selects = clone.getElementsByTagName('select');
82 var textareas = clone.getElementsByTagName('textarea');
86 for(var i=0,len=inputs.length; i<len ; i++ ){
87 id_input = inputs[i].getAttribute('id')+new_key;
88 inputs[i].setAttribute('id',id_input);
89 inputs[i].setAttribute('name',inputs[i].getAttribute('name'));
93 for(var i=0,len=selects.length; i<len ; i++ ){
94 id_input = selects[i].getAttribute('id')+new_key;
95 selects[i].setAttribute('id',selects[i].getAttribute('id')+new_key);
96 selects[i].setAttribute('name',selects[i].getAttribute('name'));
100 for(var i=0,len=textareas.length; i<len ; i++ ){
101 id_input = textareas[i].getAttribute('id')+new_key;
102 textareas[i].setAttribute('id',textareas[i].getAttribute('id')+new_key);
103 textareas[i].setAttribute('name',textareas[i].getAttribute('name'));
106 [% UNLESS ( advancedMARCEditor ) %]
107 // when cloning a subfield, reset its label too.
108 var label = clone.getElementsByTagName('label')[0];
109 label.setAttribute('for',id_input);
112 // setting a new if for the parent div
113 clone.setAttribute('id',new_id);
117 var spans = clone.getElementsByTagName('span');
119 for(var i = 0 ,lenspans = spans.length ; i < lenspans ; i++){
120 if(spans[i].getAttribute('class') == 'buttonPlus'){
121 CloneButtonPlus = spans[i];
122 CloneButtonPlus.setAttribute('onclick',"CloneSubfield('" + new_id + "')");
123 var buttonUp = clone.getElementsByTagName('img')[0];
124 buttonUp.setAttribute('onclick',"upSubfield('" + new_id + "')");
130 // do nothig if ButtonPlus & CloneButtonPlus don't exist.
132 // insert this line on the page
133 original.parentNode.insertBefore(clone,original.nextSibling);
135 $(document).ready(function() {
136 $("form#serials_edit").submit(function() {
137 var total_errors = 0;
138 $(".subfield_line:visible", this).each(function() {
139 if ($("*[name=field_value]", this).val().length == 0 &&
140 $("*[name=mandatory]", this).val() == 1) {
144 if ( total_errors > 0 ) {
145 var mes = _("Form not submitted because of the following problem(s)");
146 mes += "\n------------------------------------------------------------------------------------\n";
147 mes += "\n- "+ total_errors+_(" mandatory fields empty (see bold subfields)");
155 <style type="text/css">#serials_edit fieldset.rows label, #serials_edit fieldset.rows span.label {
159 #serials_edit fieldset.rows select { max-width : 15em; }
160 #serials_edit fieldset.rows li {
161 padding-bottom : 3px;
163 #serials_edit .input_marceditor {
168 [% INCLUDE 'header.inc' %]
169 [% INCLUDE 'serials-search.inc' %]
171 <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>
173 <div id="doc3" class="yui-t2">
179 <h1>Serial Edition <i>[% bibliotitle %]</i>
180 [% IF location %] ( [% location %] ) [% END %]
181 [% IF ( callnumber ) %] callnumber: [% callnumber %][% END %]</h1>
182 <form method="post" name="f" action="serials-edit.pl" id="serials_edit">
183 <!--onsubmit="return barcode_check()">-->
186 <div class="dialog alert">
188 [% IF ( barcode_not_unique ) %]<li>Error : Barcode Not Unique For [% FOREACH errse IN errseq %]serialseq [% errse.serialseq %]<br/>[% END %]</li>[% END %]
193 <input type="hidden" name="op" value="serialchangestatus" />
194 [% FOREACH subscription IN subscriptions %]
195 <input type="hidden" name="subscriptionid" value="[% subscription.subscriptionid %]" />
200 <th>Published on</th>
205 [% FOREACH serialslis IN serialslist %]
206 [% UNLESS ( loop.odd ) %]
207 <tr class="highlight">
212 <input type="hidden" name="serialid" value="[% serialslis.serialid %]" />
213 <input type="hidden" name="biblionumber" value="[% serialslis.biblionumber %]" />
214 <input type="hidden" name="itemcount" value="[% serialslis.issuesatonce %]" />
215 <input type="hidden" name="user" value="[% serialslis.librarian %]" />
216 Issue <input type="text" name="serialseq" id="serialseq[% serialslis.serialid %]" value="[% serialslis.serialseq %]" size="20" maxlength="100" />
219 <input type="text" name="publisheddate" value="[% serialslis.publisheddate %]" size="10" maxlength="15" />
222 <input type="text" id="expecteddate" name="planneddate" value="[% serialslis.planneddate %]" size="10" maxlength="15" />
225 [% IF ( serialslis.editdisable ) %]
226 <input type="hidden" name="status" id="status[% serialslis.serialid %]" value="1">
227 <select name="status" size="1" disabled="disabled">
229 [% IF ( serialslis.serialsadditems ) %]
230 <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 %]')}" >
232 <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 %]')}" >
235 [% IF ( serialslis.status1 ) %]
236 <option value="1" selected="selected">Expected</option>
238 [% IF ( serialslis.status2 ) %]
239 <option value="2" selected="selected">Arrived</option>
241 <option value="2">Arrived</option>
243 [% IF ( serialslis.status3 ) %]
244 <option value="3" selected="selected">Late</option>
246 <option value="3">Late</option>
248 [% IF ( serialslis.status4 ) %]
249 <option value="4" selected="selected">Missing</option>
251 <option value="4">Missing</option>
253 [% IF ( serialslis.status7 ) %]
254 <option value="7" selected="selected">Claimed</option>
256 <option value="7">Claimed</option>
258 [% IF ( serialslis.status5 ) %]
259 <option value="5" selected="selected">Not Available</option>
261 <option value="5">Not Available</option>
263 [% IF ( serialslis.status6 ) %]
264 <option value="6" selected="selected">Delete</option>
266 <option value="6">Delete</option>
272 <input type="text" name="notes" value="[% serialslis.sernotes %]" size="20" maxlength="255" />
275 [% UNLESS ( serialslis.subscriptionexpired ) %]
276 [% IF ( serialslis.serialsadditems ) %]
279 <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 %]);">
280 Click to add item</a>
281 <fieldset class="rows" style="display:none;" id="items[% serialslis.subscriptionid %][% serialslis.serialid %]">
282 <legend><a style="cursor: pointer;" onclick="HideItems('items[% serialslis.subscriptionid %][% serialslis.serialid %]','label[% serialslis.subscriptionid %][% serialslis.serialid %]')">
285 <div class="cataloguing_additem_itemlist">
286 [% FOREACH item IN serialslis.items %]
287 <div id="item[% item.serialid %][% item.countitems %]" class="items">
288 <ol>[% FOREACH iteminformatio IN item.iteminformation %]<li>
289 <div class="subfield_line" style="[% iteminformatio.hidden %];" id="subfield[% item.serialid %][% item.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]">
291 <label>[% iteminformatio.subfield %] - [% IF ( iteminformatio.mandatory ) %]<b>[% END %][% iteminformatio.marc_lib %][% IF ( iteminformatio.mandatory ) %] *</b>[% END %]</label>
292 [% iteminformatio.marc_value %]
293 <input type="hidden" name="itemid" value="[% item.itemid %]" />
294 <input type="hidden" name="kohafield" value="[% iteminformatio.kohafield %]" />
295 <input type="hidden" name="tag" value="[% iteminformatio.tag %]" />
296 <input type="hidden" name="subfield" value="[% iteminformatio.subfield %]" />
297 <input type="hidden" name="mandatory" value="[% iteminformatio.mandatory %]" />
298 [% IF ( iteminformatio.ITEM_SUBFIELDS_ARE_NOT_REPEATABLE ) %]
299 <span class="buttonPlus" onclick="CloneSubfield('subfield[% item.serialid %][% item.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]')">+</span>
303 [% END %]</ol></div><!-- /iteminformation -->
305 <input type="hidden" name="moditem" value="" />
306 <input type="hidden" name="tag" value="[% item.itemtagfield %]" />
307 <input type="hidden" name="subfield" value="[% item.itemtagsubfield %]" />
308 <input type="hidden" name="serial" value="[% item.serialid %]" />
309 <input type="hidden" name="bibnum" value="[% item.biblionumber %]" />
310 <input type="hidden" name="itemid" value="[% item.itemid %]" />
311 <input type="hidden" name="field_value" value="[% item.itemnumber %]" />
312 [% END %] <!-- /items -->
320 [% FOREACH newserialloo IN newserialloop %]
321 [% UNLESS ( newserialloo.subscriptionexpired ) %]
324 <input type="hidden" name="serialid" value="NEW" />
325 <input type="hidden" name="biblionumber" value="[% newserialloo.biblionumber %]" />
326 <input type="hidden" name="itemcount" value="[% newserialloo.issuesatonce %]" />
327 <input type="hidden" name="user" value="[% newserialloo.librarian %]" />
328 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 %]')}" />
331 <input type="text" name="publisheddate" value="[% newserialloo.publisheddate %]" size="10" maxlength="15" />
334 <input type="text" name="planneddate" id="supexpecteddate" value="[% newserialloo.planneddate %]" size="10" maxlength="15" />
337 <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 %]'); changeDate2('[% newserialloo.arriveddate %]')} else if (this.value==7){changeDate('[% newserialloo.arriveddate %]')} else { HideItems('items'+'[% newserialloo.subscriptionid %]'+[% newserialloo.serialid %],'label[% serialslis.subscriptionid %][% serialslis.serialid %]'); changeDate2('[% serialslis.planneddate %]')}" >
339 <option value="">----</option>
340 [% IF ( newserialloo.status1 ) %]
341 <option value="1" selected="selected">Expected</option>
343 [% IF ( newserialloo.status2 ) %]
344 <option value="2" selected="selected">Arrived</option>
346 <option value="2">Arrived</option>
348 [% IF ( newserialloo.status3 ) %]
349 <option value="3" selected="selected">Late</option>
351 <option value="3">Late</option>
353 [% IF ( newserialloo.status4 ) %]
354 <option value="4" selected="selected">Missing</option>
356 <option value="4">Missing</option>
358 [% IF ( newserialloo.status7 ) %]
359 <option value="7" selected="selected">Claimed</option>
361 <option value="7">Claimed</option>
363 [% IF ( newserialloo.status5 ) %]
364 <option value="5" selected="selected">Not Available</option>
366 <option value="5">Not Available</option>
368 [% IF ( newserialloo.status6 ) %]
369 <option value="6" selected="selected">Delete</option>
371 <option value="6">Delete</option>
377 <input type="text" name="notes" value="" size="20" maxlength="255" />
380 [% IF ( newserialloo.serialsadditems ) %]
383 <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 %]')">
384 Click to add item</a>
385 <fieldset class="rows" style="display:none;" id="items[% newserialloo.subscriptionid %][% newserialloo.serialid %]">
386 <legend><a style="cursor: pointer;" onclick="HideItems('items[% newserialloo.subscriptionid %][% newserialloo.serialid %]','label[% newserialloo.subscriptionid %][% newserialloo.serialid %]')">
389 <div class="cataloguing_additem_itemlist">
390 <div id="item[% newserialloo.serialid %][% newserialloo.countitems %]" class="items">
391 <ol>[% FOREACH iteminformatio IN newserialloo.iteminformation %]<li>
392 <div class="subfield_line" style="[% iteminformatio.hidden %];" id="subfield[% newserialloo.serialid %][% newserialloo.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]">
394 <label>[% iteminformatio.subfield %] - [% IF ( iteminformatio.mandatory ) %]<b>[% END %][% iteminformatio.marc_lib %][% IF ( iteminformatio.mandatory ) %] *</b>[% END %]</label>
395 [% iteminformatio.marc_value %]
396 <input type="hidden" name="itemid" value="[% newserialloo.itemid %]" />
397 <input type="hidden" name="kohafield" value="[% iteminformatio.kohafield %]" />
398 <input type="hidden" name="tag" value="[% iteminformatio.tag %]" />
399 <input type="hidden" name="subfield" value="[% iteminformatio.subfield %]" />
400 <input type="hidden" name="mandatory" value="[% iteminformatio.mandatory %]" />
401 [% IF ( iteminformatio.ITEM_SUBFIELDS_ARE_NOT_REPEATABLE ) %]
402 <span class="buttonPlus" onclick="CloneSubfield('subfield[% newserialloo.serialid %][% newserialloo.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]')">+</span>
407 <input type="hidden" name="moditem" value="" />
408 <input type="hidden" name="tag" value="[% newserialloo.itemtagfield %]" />
409 <input type="hidden" name="subfield" value="[% newserialloo.itemtagsubfield %]" />
410 <input type="hidden" name="serial" value="[% newserialloo.serialid %]" />
411 <input type="hidden" name="bibnum" value="[% newserialloo.biblionumber %]" />
412 <input type="hidden" name="itemid" value="[% newserialloo.itemid %]" />
413 <input type="hidden" name="field_value" value="[% newserialloo.itemnumber %]" />
424 <fieldset class="action"><input type="submit" value="Save" class="button" accesskey="w" />
431 [% INCLUDE 'serials-menu.inc' %]
433 [% FOREACH subscription IN subscriptions %]
435 <li><a href="serials-collection.pl?subscriptionid=[% subscription.subscriptionid %]" title="serial collection for [% subscription.bibliotitle %]">Serial collection</a></li>
436 <li><a href="subscription-detail.pl?subscriptionid=[% subscription.subscriptionid %]" title="detail of the subscription">Subscription #[% subscription.subscriptionid %]</a></li>
437 [% IF ( subscription.abouttoexpire ) %]<a href="#" onclick="javascript:popup([% subscription.subscriptionid %])">Renew [% subscription.subscriptionid %]</a>
440 <li><a href="/cgi-bin/koha/catalogue/[% default_bib_view %].pl?biblionumber=[% biblionumber %]" title="go to [% bibliotitle %]">Show Biblio</a></li></ul>
443 [% INCLUDE 'intranet-bottom.inc' %]