Bug 16242 - Move staff client JavaScript out of language directory
[srvgit] / koha-tmpl / intranet-tmpl / prog / en / modules / serials / serials-edit.tt
index 935d9e1..a32c604 100644 (file)
@@ -1,7 +1,10 @@
+[% USE AuthorisedValues %]
 [% INCLUDE 'doc-head-open.inc' %]
 <title>Koha &rsaquo; Serials &rsaquo; Serial edition [% bibliotitle %]</title>
 [% INCLUDE 'doc-head-close.inc' %]
-<script type="text/javascript" src="[% themelang %]/js/cataloging.js"></script>
+<script type="text/javascript" src="[% interface %]/[% theme %]/js/cataloging.js"></script>
+<script type="text/javascript" src="[% interface %]/[% theme %]/js/prevent_submit.js"></script>
+[% INCLUDE 'calendar.inc' %]
 <script language="JavaScript" type="text/javascript">
 //<![CDATA[
 function generateReceive() {
@@ -14,49 +17,19 @@ function popup(subscriptionid) {
        window.open("subscription-renew.pl?subscriptionid="+subscriptionid,"subscription_renewal",'width=700,height=400,toolbar=false,scrollbars=yes');
 }
 
-function barcode_check(){
-    [% IF ( count ) %]
-    var count = [% count %];
-    for(var i=1;i<=count;i++){
-
-        var barcodenum = "barcode"+i;
-        var statusnum = "status"+i;
-        var elembarcode = "document.getElementById('"+barcodenum+"')";
-        var elemstatus = "document.getElementById('"+statusnum+"')";
-// alert(elembarcode+"\n"+eval(elembarcode+".value));
-// alert(elemstatus+"\n"+eval(elemstatus+".value"));
-        if(eval(elembarcode+".value") =='' && eval(elemstatus+".value") == 2){
-            var answer = confirm("Leave barcode blank?\n - Note: unable to change this later");
-            if (answer){
-                document.f.submit();
-            } else {
-                return false;
-            }
-        }
-        if(eval(elembarcode+".value".indexOf('TEMP')) > 0 && eval(elemstatus+".value") == 2){
-            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?");
-            if (answer){
-                document.f.submit();
-            } else {
-                return false;
-            }
-        }
-    }
-    [% END %]
-}
 function unHideItems(index,labelindex, serialId) {
        subfield = document.getElementById(index);
        subfield.style.display = 'block';
        label = document.getElementById(labelindex);
        label.style.display='none';     
 
-       // Prefilling 995$h with serial enumeration/issue number
-       // Getting item id
-       itemid = $("fieldset#" + index + " div.cataloguing_additem_itemlist div.items").attr("id");
-       // Getting subfield id
-       subfieldid = "subfield" + itemid.substr(4) + "h";
-       // Setting text field 
-       $("#" + subfieldid + " input[type='text']").val($("#serialseq" + serialId).val());
+    // Prefilling enumcron subfield with serial enumeration/issue number
+    // Getting item div
+    item_div = $("fieldset#" + index + " div.cataloguing_additem_itemlist div.items");
+    // Getting subfield with enumcron mapping
+    subfield_div = $(item_div).find("input[name='kohafield'][value='items.enumchron']").parent();
+    // Setting text field
+    $(subfield_div).children("input[type='text'][name='field_value']").val($("#serialseq" + serialId).val());
 
 }
 function HideItems(index,labelindex) {
@@ -69,30 +42,26 @@ function setStatus(serialid){
     $("#status"+serialid).val("2").attr("selected","selected");
 }
 function changeDate(elem, adate) {
-    $(elem).closest('tr').find('#expecteddate').val(adate);
-}
-function changeDate2(adate) {
-   var elem = document.getElementById("supexpecteddate");
-    elem.value = adate;
+    $(elem).closest('tr').find('[name=planneddate]').val(adate);
 }
 
 $(document).ready(function() {
-       $("form#serials_edit").submit(function() {
-           var total_errors = 0;
-        $(".subfield_line:visible", this).each(function() {
-            if ($("*[name=field_value]", this).val().length == 0 &&
-                $("*[name=mandatory]", this).val() == 1) {
-                total_errors++;
-            }
+    $("form#serials_edit").submit(function() {
+        var total_errors = 0;
+        $(this).find(".cataloguing_additem_itemlist:visible").each(function(){
+            total_errors = total_errors + CheckMandatorySubfields(this);
         });
         if ( total_errors > 0 ) {
             var mes  = _("Form not submitted because of the following problem(s)");
             mes += "\n------------------------------------------------------------------------------------\n";
-            mes += "\n- "+ total_errors+_(" mandatory fields empty (see bold subfields)");
+            mes += "\n- " + _("%s mandatory fields empty (highlighted)").format(total_errors);
             alert(mes);
             return false;
         }
+        return true;
     });
+
+    $(".datepicker").datepicker();
 });
 //]]>
 </script>
@@ -121,11 +90,10 @@ $(document).ready(function() {
        <div class="yui-b">
 
 <h1>Serial edition <i>[% bibliotitle %]</i>
-       [% IF location %] ( [% location %] ) [% END %]
+    [% IF location %] ([% AuthorisedValues.GetByCode('LOC', location) %])[% END %]
     [% IF ( callnumber ) %] callnumber: [% callnumber %][% END %]</h1>
 [% IF internalnotes %]<p>Nonpublic note: [% internalnotes %]</p>[% END %]
 <form method="post" name="f" action="serials-edit.pl" id="serials_edit">
-<!--onsubmit="return barcode_check()">-->
 
 [% IF ( Errors ) %]
 <div class="dialog alert">
@@ -143,16 +111,13 @@ $(document).ready(function() {
        <tr>
                <th>Numbered</th>
                <th>Published on</th>
+        <th>Published on (text)</th>
                <th>Expected on</th>
                <th>Status</th>
                <th>Notes</th>
        </tr>
 [% FOREACH serialslis IN serialslist %]
-    [% UNLESS ( loop.odd ) %]
-    <tr class="highlight">
-    [% ELSE %]
     <tr>
-    [% END %]
         <td>
             <input type="hidden" name="serialid" value="[% serialslis.serialid %]" />
             <input type="hidden" name="biblionumber" value="[% serialslis.biblionumber %]" />
@@ -161,10 +126,13 @@ $(document).ready(function() {
             Issue <input type="text" name="serialseq" id="serialseq[% serialslis.serialid %]" value="[% serialslis.serialseq %]" size="20" maxlength="100" />
         </td>
         <td>
-            <input type="text" name="publisheddate" value="[% serialslis.publisheddate %]" size="10" maxlength="15" />
+            <input type="text" name="publisheddate" value="[% serialslis.publisheddate %]" size="10" maxlength="15" class="datepicker" />
         </td>
         <td>
-            <input type="text" id="expecteddate" name="planneddate" value="[% serialslis.planneddate %]" size="10" maxlength="15" />
+            <input type="text" name="publisheddatetext" value="[% serialslis.publisheddatetext %]" size="10" maxlength="100" />
+        </td>
+        <td>
+            <input type="text" name="planneddate" value="[% serialslis.planneddate %]" size="10" maxlength="15" class="datepicker" />
         </td>
         <td>
             [% IF ( serialslis.editdisable ) %]
@@ -179,6 +147,8 @@ $(document).ready(function() {
             [% END %]
             [% IF ( serialslis.status1 ) %]
               <option value="1" selected="selected">Expected</option>
+            [% ELSE %]
+              <option value="1">Expected</option>
             [% END %]
             [% IF ( serialslis.status2 ) %]
               <option value="2" selected="selected">Arrived</option>
@@ -195,6 +165,26 @@ $(document).ready(function() {
             [% ELSE %]
               <option value="4">Missing</option>
             [% END %]
+            [% IF ( serialslis.status41 ) %]
+              <option value="41" selected="selected">Missing (never received)</option>
+            [% ELSE %]
+              <option value="41">Missing (never received)</option>
+            [% END %]
+            [% IF ( serialslis.status42 ) %]
+              <option value="42" selected="selected">Missing (sold out)</option>
+            [% ELSE %]
+              <option value="42">Missing (sold out)</option>
+            [% END %]
+            [% IF ( serialslis.status43 ) %]
+              <option value="43" selected="selected">Missing (damaged)</option>
+            [% ELSE %]
+              <option value="43">Missing (damaged)</option>
+            [% END %]
+            [% IF ( serialslis.status44 ) %]
+              <option value="44" selected="selected">Missing (lost)</option>
+            [% ELSE %]
+              <option value="44">Missing (lost)</option>
+            [% END %]
             [% IF ( serialslis.status7 ) %]
               <option value="7" selected="selected">Claimed</option>
             [% ELSE %]
@@ -223,7 +213,7 @@ $(document).ready(function() {
   [% UNLESS ( serialslis.subscriptionexpired ) %]
   [% IF ( serialslis.serialsadditems ) %]
           <tr>
-          <td colspan="5">
+          <td colspan="6">
       <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 %]);">
              Click to add item</a>
         <fieldset class="rows" style="display:none;" id="items[% serialslis.subscriptionid %][% serialslis.serialid %]">
@@ -235,9 +225,24 @@ $(document).ready(function() {
         <div id="item[% item.serialid %][% item.countitems %]" class="items">
         <ol>[% FOREACH iteminformatio IN item.iteminformation %]<li>
                <div class="subfield_line" style="[% iteminformatio.hidden %]" id="subfield[% item.serialid %][% item.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]">
-                              
-                <label>[% iteminformatio.subfield %] - [% IF ( iteminformatio.mandatory ) %]<b>[% END %][% iteminformatio.marc_lib %][% IF ( iteminformatio.mandatory ) %] *</b>[% END %]</label>
+                [% IF (iteminformatio.mandatory) %]
+                    <label class="required">[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
+                [% ELSE %]
+                    <label>[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
+                [% END %]
+                [% IF ( iteminformatio.marc_value.type == 'select' ) %]
+                  <select name="field_value" size="1">
+                  [% FOREACH value IN iteminformatio.marc_value.values %]
+                    [% IF ( value == iteminformatio.marc_value.default ) %]
+                      <option value="[% value %]" selected="selected">[% iteminformatio.marc_value.labels.$value %]</option>
+                    [% ELSE %]
+                      <option value="[% value %]">[% iteminformatio.marc_value.labels.$value %]</option>
+                    [% END %]
+                  [% END %]
+                  </select>
+                [% ELSE %]
                 [% iteminformatio.marc_value %]
+                [% END %]
                 <input type="hidden" name="itemid" value="[% item.itemid %]" />
                 <input type="hidden" name="kohafield" value="[% iteminformatio.kohafield %]" />
                 <input type="hidden" name="tag" value="[% iteminformatio.tag %]" />
@@ -245,10 +250,10 @@ $(document).ready(function() {
                 <input type="hidden" name="mandatory" value="[% iteminformatio.mandatory %]" />
                 [% IF ( iteminformatio.repeatable ) %]
                     <a href="#" class="buttonPlus" onclick="CloneItemSubfield(this.parentNode); return false;">
-                        <img src="/intranet-tmpl/prog/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
+                        <img src="[% interface %]/[% theme %]/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
                     </a>
                 [% END %]
-        
+                [% IF ( iteminformatio.mandatory ) %] <span class="required">Required</span>[% END %]
             </div></li>
         [% END %]</ol></div><!-- /iteminformation -->
         
@@ -278,13 +283,16 @@ $(document).ready(function() {
             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 %]')}" />
         </td>
         <td>
-            <input type="text" name="publisheddate" value="[% newserialloo.publisheddate %]" size="10" maxlength="15" />
+            <input type="text" name="publisheddate" value="[% newserialloo.publisheddate %]" size="10" maxlength="15"  class="datepicker" />
         </td>
         <td>
-            <input type="text" name="planneddate" id="supexpecteddate" value="[% newserialloo.planneddate %]" size="10" maxlength="15" />
+            <input type="text" name="publisheddatetext" value="[% newserialloo.publisheddatetext %]" size="10" maxlength="100" />
         </td>
         <td>
-            <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 %]')}" >
+            <input type="text" name="planneddate" value="[% newserialloo.planneddate %]" size="10" maxlength="15" class="datepicker" />
+        </td>
+        <td>
+            <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 %]')}" >
 
                     <option value="">----</option>
                   [% IF ( newserialloo.status1 ) %]
@@ -305,6 +313,26 @@ $(document).ready(function() {
                   [% ELSE %]
                     <option value="4">Missing</option>
                   [% END %]
+                  [% IF ( newserialloo.status41 ) %]
+                    <option value="41" selected="selected">Missing (never received)</option>
+                  [% ELSE %]
+                    <option value="41">Missing (never received)</option>
+                  [% END %]
+                  [% IF ( newserialloo.status42 ) %]
+                    <option value="42" selected="selected">Missing (sold out)</option>
+                  [% ELSE %]
+                    <option value="42">Missing (sold out)</option>
+                  [% END %]
+                  [% IF ( newserialloo.status43 ) %]
+                    <option value="43" selected="selected">Missing (damaged)</option>
+                  [% ELSE %]
+                    <option value="43">Missing (damaged)</option>
+                  [% END %]
+                  [% IF ( newserialloo.status44 ) %]
+                    <option value="44" selected="selected">Missing (lost)</option>
+                  [% ELSE %]
+                    <option value="44">Missing (lost)</option>
+                  [% END %]
                   [% IF ( newserialloo.status7 ) %]
                     <option value="7" selected="selected">Claimed</option>
                   [% ELSE %]
@@ -332,7 +360,7 @@ $(document).ready(function() {
     </tr>
   [% IF ( newserialloo.serialsadditems ) %]
           <tr>
-          <td colspan="5">
+          <td colspan="6">
       <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 %]')">
              Click to add item</a>
         <fieldset  class="rows" style="display:none;" id="items[% newserialloo.subscriptionid %][% newserialloo.serialid %]">
@@ -343,9 +371,24 @@ $(document).ready(function() {
         <div id="item[% newserialloo.serialid %][% newserialloo.countitems %]" class="items">
         <ol>[% FOREACH iteminformatio IN newserialloo.iteminformation %]<li>
                <div class="subfield_line" style="[% iteminformatio.hidden %]" id="subfield[% newserialloo.serialid %][% newserialloo.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]">
-   
-                <label>[% iteminformatio.subfield %] - [% IF ( iteminformatio.mandatory ) %]<b>[% END %][% iteminformatio.marc_lib %][% IF ( iteminformatio.mandatory ) %] *</b>[% END %]</label>
+                [% IF (iteminformatio.mandatory) %]
+                    <label class="required">[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
+                [% ELSE %]
+                    <label>[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
+                [% END %]
+                [% IF ( iteminformatio.marc_value.type == 'select' ) %]
+                  <select name="field_value" size="1">
+                  [% FOREACH value IN iteminformatio.marc_value.values %]
+                    [% IF ( value == iteminformatio.marc_value.default ) %]
+                      <option value="[% value %]" selected="selected">[% iteminformatio.marc_value.labels.$value %]</option>
+                    [% ELSE %]
+                      <option value="[% value %]">[% iteminformatio.marc_value.labels.$value %]</option>
+                    [% END %]
+                  [% END %]
+                  </select>
+                [% ELSE %]
                 [% iteminformatio.marc_value %]
+                [% END %]
                 <input type="hidden" name="itemid" value="[% newserialloo.itemid %]" />
                 <input type="hidden" name="kohafield" value="[% iteminformatio.kohafield %]" />
                 <input type="hidden" name="tag" value="[% iteminformatio.tag %]" />
@@ -353,9 +396,10 @@ $(document).ready(function() {
                 <input type="hidden" name="mandatory" value="[% iteminformatio.mandatory %]" />
                 [% IF ( iteminformatio.repeatable ) %]
                     <a href="#" class="buttonPlus" onclick="CloneItemSubfield(this.parentNode); return false;">
-                        <img src="/intranet-tmpl/prog/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
+                        <img src="[% interface %]/[% theme %]/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
                     </a>
                 [% END %]
+                [% IF ( iteminformatio.mandatory ) %] <span class="required">Required</span>[% END %]
         </div>
        </li>[% END %]</ol>
         
@@ -377,7 +421,6 @@ $(document).ready(function() {
 
 </table>
     <fieldset class="action">
-       <input type="submit" onclick="return false;" style="display: none;" id="phony_submit" value="phony_submit" name="phony_submit" />
        <input type="submit" value="Save"  class="button" accesskey="w" />
        [% UNLESS ( serialsadditems ) %]&nbsp;&nbsp;<input type="button" onclick="javascript:generateReceive()" value="Multi receiving">[% END %]
     </fieldset>