Bug 16242 - Move staff client JavaScript out of language directory
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / cataloguing / addbiblio.tt
1 [% USE Koha %]
2 [% INCLUDE 'doc-head-open.inc' %]
3 <title>Koha &rsaquo; Cataloging &rsaquo; [% IF ( biblionumber ) %]Editing [% title |html %] (Record number [% biblionumber %])[% ELSE %]Add MARC record[% END %]</title>
4 [% INCLUDE 'doc-head-close.inc' %]
5 <script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.fixFloat.js"></script>
6 <script type="text/javascript" src="[% interface %]/[% theme %]/js/cataloging.js"></script>
7 [% INCLUDE 'browser-strings.inc' %]
8 <!--[if lt IE 9]>
9 <script type="text/javascript" src="[% interface %]/lib/shims/json2.min.js"></script>
10 <![endif]-->
11 <script type="text/javascript" src="[% interface %]/js/browser.js"></script>
12 <script type="text/javascript">
13 //<![CDATA[
14     var browser = KOHA.browser('[% searchid %]', parseInt('[% biblionumber %]', 10));
15     browser.show();
16
17     $(window).load(function(){
18         $("#loading").hide();
19     });
20          $(document).ready(function() {
21         $('#addbibliotabs').tabs().bind('show.ui-tabs', function(e, ui) {
22                         $("#"+ui.panel.id+" input:eq(0)").focus();
23                 });
24
25         [% IF tab %]
26           $('#addbibliotabs').selectTabByID("#[% tab %]");
27         [% END %]
28
29         $('#toolbar').fixFloat();
30
31         /* check cookie to hide/show marcdocs*/
32         if($.cookie("marcdocs_[% borrowernumber %]") == 'hide'){
33             toggleMARCdocLinks(false);
34         } else {
35             toggleMARCdocLinks(true);
36         }
37
38         $("#marcDocsSelect").click(function(){
39             if($.cookie("marcdocs_[% borrowernumber %]") == 'hide'){
40                 toggleMARCdocLinks(true);
41             } else {
42                 toggleMARCdocLinks(false);
43             }
44         });
45
46         /* check cookie to hide/show marc tags*/
47         var marctags_cookie = $.cookie("marctags_[% borrowernumber %]");
48         if( marctags_cookie == 'hide'){
49             toggleMARCTagLinks(false);
50         } else if( marctags_cookie == 'show'){
51             toggleMARCTagLinks(true)
52         } else {
53             [% UNLESS Koha.Preference("hide_marc") %]
54                 toggleMARCTagLinks(true)
55             [% ELSE %]
56                 toggleMARCTagLinks(false);
57             [% END %]
58         }
59
60         $("#marcTagsSelect").click(function(){
61             if( $.cookie("marctags_[% borrowernumber %]") == 'hide'){
62                 toggleMARCTagLinks(true)
63             } else {
64                 toggleMARCTagLinks(false);
65             }
66         });
67
68         [%# Only ask for a confirmation if it is an edit %]
69         $("#z3950search").click(function(){
70             [% IF biblionumber %]
71                 if (confirm(_("Please note that this external search could replace the current record."))){
72                     PopupZ3950();
73                 }
74             [% ELSE %]
75                 PopupZ3950();
76             [% END %]
77         });
78
79         $("#saverecord").click(function(){
80             $(".btn-group").removeClass("open");
81             onOption();
82             return false;
83         });
84
85         $("#saveandview").click(function(){
86             $(".btn-group").removeClass("open");
87             redirect("view");
88             return false;
89         });
90
91         $("#saveanditems").click(function(){
92             $(".btn-group").removeClass("open");
93             redirect("items");
94             return false;
95         });
96         $("#saveandcontinue").click(function(){
97             $(".btn-group").removeClass("open");
98             var tab = $("#addbibliotabs li.ui-tabs-active:first a").attr('href');
99             tab = tab.replace('#', '');
100             $("#current_tab").val(tab);
101             redirect("just_save", tab);
102             return false;
103         });
104
105         $( '#switcheditor' ).click( function() {
106             var breedingid = [% breedingid || "null" %];
107
108             if ( !confirm( breedingid ? _("This record cannot be transferred to the advanced editor. Continue?") : _("Any changes will not be saved. Continue?") ) ) return false;
109
110             $.cookie( 'catalogue_editor_[% USER_INFO.borrowernumber %]', 'advanced', { expires: 365, path: '/' } );
111
112             var biblionumber = [% biblionumber || "null" %];
113
114             if ( biblionumber ) {
115                 window.location = '/cgi-bin/koha/cataloguing/editor.pl#catalog/' + biblionumber;
116             } else {
117                 window.location = '/cgi-bin/koha/cataloguing/editor.pl';
118             }
119
120             return false;
121         } );
122         $(".change-framework").on("click", function(){
123             var frameworkcode = $(this).data("frameworkcode");
124             $("#frameworkcode").val( frameworkcode );
125             Changefwk( frameworkcode );
126         });
127     });
128
129 function redirect(dest){
130     $("#redirect").attr("value",dest);
131     return Check();
132 }
133
134 [% IF ( CAN_user_editcatalogue_edit_items ) %]
135     var onOption = function () {
136         return Check();
137     }
138 [% END %]
139
140 function confirmnotdup(redirect){
141         $("#confirm_not_duplicate").attr("value","1");
142     $("#redirect").attr("value",redirect);
143         Check();
144 }
145
146 function Dopop(link,i) {
147     defaultvalue = document.getElementById(i).value;
148     window.open(link+"&result="+defaultvalue,"valuebuilder",'width=700,height=550,toolbar=false,scrollbars=yes');
149 }
150
151 /**
152  * this function open a popup to search on z3950 server.
153  */
154 function PopupZ3950() {
155     var strQuery = GetZ3950Terms();
156         if(strQuery){
157         window.open("/cgi-bin/koha/cataloguing/z3950_search.pl?biblionumber=[% biblionumber %]"+strQuery,"z3950search",'width=740,height=450,location=yes,toolbar=no,scrollbars=yes,resize=yes');
158     } 
159 }
160
161 function PopupMARCFieldDoc(field) {
162     [% IF ( marcflavour == 'MARC21' ) %]
163         _MARC21FieldDoc(field);
164     [% ELSIF ( marcflavour == 'UNIMARC' ) %]
165         _UNIMARCFieldDoc(field);
166     [% END %]
167 }
168
169 function _MARC21FieldDoc(field) {
170     if(field == 0) {
171         window.open("http://www.loc.gov/marc/bibliographic/bdleader.html");
172     } else if (field < 900) {
173         window.open("http://www.loc.gov/marc/bibliographic/bd" + ("000"+field).slice(-3) + ".html");
174     } else {
175         window.open("http://www.loc.gov/marc/bibliographic/bd9xx.html");
176     }
177 }
178
179 function _UNIMARCFieldDoc(field) {
180     /* http://archive.ifla.org/VI/3/p1996-1/ is an outdated version of UNIMARC, but
181        seems to be the only version available that can be linked to per tag.  More recent
182        versions of the UNIMARC standard are available on the IFLA website only as
183        PDFs!
184     */
185     var url;
186     if (field == 0) {
187         url = "http://archive.ifla.org/VI/3/p1996-1/uni.htm";
188     } else {
189         var first = field.substring(0,1);
190         url = "http://archive.ifla.org/VI/3/p1996-1/uni" + first + ".htm#";
191         if (first == 0) url = url + "b";
192         url = first == 9
193               ? "http://archive.ifla.org/VI/3/p1996-1/uni9.htm"
194               : url + field;
195     }
196     window.open(url);
197 }
198
199 /*
200  * Functions to hide/show marc docs and tags links
201  */
202
203 function toggleMARCdocLinks(flag){
204     if( flag === true ){
205         $(".marcdocs").show();
206         $.cookie("marcdocs_[% borrowernumber %]",'show', { path: "/", expires: 365 });
207         $("#marcDocsSelect i").addClass('fa-check-square-o').removeClass('fa-square-o');
208     } else {
209         $(".marcdocs").hide();
210         $.cookie("marcdocs_[% borrowernumber %]",'hide', { path: "/", expires: 365 });
211         $("#marcDocsSelect i").removeClass('fa-check-square-o').addClass('fa-square-o');
212     }
213 }
214
215 function toggleMARCTagLinks(flag){
216     if( flag === true ){
217         $(".tagnum").show();
218         $(".subfieldcode").show();
219         $.cookie("marctags_[% borrowernumber %]",'show', { path: "/", expires: 365 });
220         $("#marcTagsSelect i").addClass('fa-check-square-o').removeClass('fa-square-o');
221     } else {
222         $(".tagnum").hide();
223         $(".subfieldcode").hide();
224         $.cookie("marctags_[% borrowernumber %]",'hide', { path: "/", expires: 365 });
225         $("#marcTagsSelect i").removeClass('fa-check-square-o').addClass('fa-square-o');
226     }
227 }
228
229 /**
230  * check if mandatory subfields are written
231  */
232 function AreMandatoriesNotOk(){
233     var mandatories = new Array();
234     var mandatoriesfields = new Array();
235     var tab = new Array();
236     var label = new Array();
237     var flag=0;
238     var tabflag= new Array();  
239     [% FOREACH BIG_LOO IN BIG_LOOP %]
240         [% FOREACH innerloo IN BIG_LOO.innerloop %]
241                 [% IF ( innerloo.mandatory ) %]
242                 mandatoriesfields.push(new Array("[% innerloo.tag %]","[% innerloo.index %][% innerloo.random %]","[% innerloo.index %]"));
243                 [% END %]
244                 [% FOREACH subfield_loo IN innerloo.subfield_loop %]
245                         [% IF ( subfield_loo.mandatory ) %]mandatories.push("[% subfield_loo.id %]");
246                         tab.push("[% BIG_LOO.number %]");
247                         label.push("[% subfield_loo.marc_lib %]");
248                 [% END %]
249             [% END %]
250         [% END %]
251     [% END %]
252     var StrAlert = _("Can't save this record because the following field aren't filled:");
253     StrAlert += "\n\n";
254     for(var i=0,len=mandatories.length; i<len ; i++){
255         var tag=mandatories[i].substr(4,3);
256         var subfield=mandatories[i].substr(17,1);
257         var tagnumber=mandatories[i].substr(19,mandatories[i].lastIndexOf("_")-19);
258         if (tabflag[tag+subfield+tagnumber] ==  null) { 
259             tabflag[tag+subfield+tagnumber]=new Array();
260             tabflag[tag+subfield+tagnumber][0]=0; 
261         }
262         if( tabflag[tag+subfield+tagnumber][0] != 1 && (document.getElementById(mandatories[i]) != null && ! document.getElementById(mandatories[i]).value || document.getElementById(mandatories[i]) == null)){
263             tabflag[tag+subfield+tagnumber][0] = 0 + tabflag[tag+subfield+tagnumber] ;
264             document.getElementById(mandatories[i]).setAttribute('class','subfield_not_filled');
265             $('#' + mandatories[i]).focus();
266             tabflag[tag+subfield+tagnumber][1]=label[i];
267             tabflag[tag+subfield+tagnumber][2]=tab[i];
268         } else {
269             tabflag[tag+subfield+tagnumber][0] = 1;
270         }    
271     }
272     for (var tagsubfieldid in tabflag){
273       if (tabflag[tagsubfieldid][0]==0){
274         var tag=tagsubfieldid.substr(0,3);
275         var subfield=tagsubfieldid.substr(3,1);    
276         StrAlert += "\t* "+_("tag %s subfield %s %s in tab %s").format(tag, subfield, tabflag[tagsubfieldid][1], tabflag[tagsubfieldid][2]) + "\n";
277         //StrAlert += "\t* "+label[i]+_(" in tab ")+tab[i]+"\n"; 
278         flag=1;    
279       }   
280     }   
281     
282     /* Check for mandatories field(not subfields) */
283     for(var i=0,len=mandatoriesfields.length; i<len; i++){
284             isempty  = true;
285                 arr      = mandatoriesfields[i];
286         divid    = "tag_" + arr[0] + "_" + arr[1];
287         varegexp = new RegExp("^tag_" + arr[0] + "_code_");
288         
289                 if(parseInt(arr[0]) >= 10){
290                 elem = document.getElementById(divid);
291                 eleminputs = elem.getElementsByTagName('input');
292                 
293                 for(var j=0,len2=eleminputs.length; j<len2; j++){
294         
295                         if(eleminputs[j].name.match(varegexp) && eleminputs[j].value){
296                                         inputregexp = new RegExp("^tag_" + arr[0] + "_subfield_" + eleminputs[j].value + "_" + arr[2]);
297                                         
298                                         for( var k=0; k<len2; k++){
299                                                 if(eleminputs[k].id.match(inputregexp) && eleminputs[k].value){
300                                                         isempty = false
301                                                 }
302                                         }
303                                         
304                                         elemselect = elem.getElementsByTagName('select');
305                                         for( var k=0; k<elemselect.length; k++){
306                                                 if(elemselect[k].id.match(inputregexp) && elemselect[k].value){
307                                                         isempty = false
308                                                 }
309                                         }
310                         }
311                 }
312
313                 elemtextareas = elem.getElementsByTagName('textarea');
314                 for(var j=0,len2=elemtextareas.length; j<len2; j++){
315                 // this bit assumes that the only textareas in this context would be for subfields
316                 if (elemtextareas[j].value) {
317                     isempty = false;
318                 }
319             }
320         }else{
321                 isempty = false;
322         }
323         
324         if(isempty){
325                 flag = 1;
326                 StrAlert += "\t* " + _("Field %s is mandatory, at least one of its subfields must be filled.").format(arr[0]) + "\n";
327         }
328         
329     }
330     
331     if(flag){
332             return StrAlert;
333         } else {
334                 return flag;
335         }
336 }
337
338 /**
339  *
340  *
341  */
342 function Check(){
343     var StrAlert = AreMandatoriesNotOk();
344     if( ! StrAlert ){
345         document.f.submit();
346         return true;
347     } else {
348         alert(StrAlert);
349         return false;
350     }
351 }
352
353 /** 
354  * check if z3950 mandatories are set or not
355  */
356 function GetZ3950Terms(){
357  var strQuery="&frameworkcode="+document.forms['f'].Frameworks.value;
358     var mandatories = new Array();
359     var mandatories_label = new Array();
360     [% FOREACH BIG_LOO IN BIG_LOOP %][% FOREACH innerloo IN BIG_LOO.innerloop %][% FOREACH subfield_loo IN innerloo.subfield_loop %][% IF ( subfield_loo.z3950_mandatory ) %]mandatories.push("[% subfield_loo.id %]");
361         mandatories_label.push("[% subfield_loo.z3950_mandatory %]");[% END %][% END %][% END %][% END %]
362     
363     for(var i=0,len=mandatories.length; i<len ; i++){
364         var field_value = document.getElementById(mandatories[i]).value;
365         if( field_value ){
366             strQuery += "&"+mandatories_label[i]+"="+field_value;
367         }
368     }
369     return strQuery;
370 }
371
372 function Changefwk(FwkList) {
373     var f = document.f;
374     f.op.value = "[% op %]";
375     f.biblionumber.value = "[% biblionumberdata %]";
376     f.changed_framework.value = "changed";
377     f.submit();
378 }
379
380 //]]>
381 </script>
382 <link type="text/css" rel="stylesheet" href="[% interface %]/[% theme %]/css/addbiblio.css" />
383 [% IF ( bidi ) %]
384    <link rel="stylesheet" type="text/css" href="[% interface %]/[% theme %]/css/right-to-left.css" />
385 [% END %]
386 </head>
387 <body id="cat_addbiblio" class="cat">
388
389    <div id="loading">
390        <div>Loading, please wait...</div>
391    </div>
392
393 [% INCLUDE 'header.inc' %]
394
395 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/cataloguing/addbooks.pl">Cataloging</a>  &rsaquo; [% IF ( biblionumber ) %]Editing <em>[% title |html %]</em> (Record number [% biblionumber %])[% ELSE %]Add MARC record[% END %]</div>
396
397 <div id="doc" class="yui-t7">
398
399 <div id="bd">
400         <div id="yui-main">
401         <div class="yui-g">
402
403 <h1>
404 [% IF ( biblionumber ) %]Editing <em>[% title |html %]</em> (Record number [% biblionumber %])
405 [% ELSE %]Add MARC record [% IF (circborrowernumber) %]<em>(fast cataloging)</em>[% END %]
406 [% END %]
407 </h1>
408
409 [% UNLESS ( number ) %]
410     <!-- show duplicate warning on tab 0 only -->
411         [% IF ( duplicatebiblionumber ) %]
412                     <div class="dialog alert">
413                         <h3>Duplicate record suspected</h3>
414                         <p>Is this a duplicate of <a class="popup" href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% duplicatebiblionumber %]" onclick="openWindow('/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% duplicatebiblionumber %]&amp;popup=1', 'DuplicateBiblio','800','600'); return false;">[% duplicatetitle %]</a> ?</p>
415                         [% IF ( CAN_user_editcatalogue_edit_items ) %]<form action="/cgi-bin/koha/cataloguing/additem.pl" method="get">
416                                                     <input type="hidden" name="biblionumber" value="[% duplicatebiblionumber %]" />
417                                                     <button type="submit" class="new"><i class="fa fa-fw fa-pencil"></i> Yes, edit existing items</button>
418                                                 </form>[% ELSE %]<form action="/cgi-bin/koha/catalogue/detail.pl" method="get">
419                                                     <input type="hidden" name="biblionumber" value="[% duplicatebiblionumber %]" />
420                                                     <input type="submit" value="Yes: View existing items" />
421                                                 </form>[% END %]
422                         <form action="/cgi-bin/koha/cataloguing/addbiblio.pl" method="get">
423                             [% IF ( CAN_user_editcatalogue_edit_items ) %]<button type="submit" class="new" onclick="confirmnotdup('items'); return false;"><i class="fa fa-fw fa-save"></i> No, save as new record</button>[% ELSE %]<button type="submit" class="new" onclick="confirmnotdup('view'); return false;"><i class="fa fa-fw fa-save"></i> No, save as new record</button>[% END %]
424                         </form>
425                     </div>
426         [% END %]
427     [% END %]
428
429 [% IF ( done ) %]
430     <script type="text/javascript">
431         opener.document.forms['f'].biblionumber.value=[% biblionumber %];
432         opener.document.forms['f'].title.value='[% title |html %]';
433         window.close();
434     </script>
435 [% ELSE %]
436     <form method="post" name="f" id="f" action="/cgi-bin/koha/cataloguing/addbiblio.pl" onsubmit="return Check();">
437     <input type="hidden" value="[% IF ( biblionumber ) %]view[% ELSE %]items[% END %]" id="redirect" name="redirect" />
438     <input type="hidden" value="" id="current_tab" name="current_tab" />
439     <input type="hidden" value="0" id="confirm_not_duplicate" name="confirm_not_duplicate" />
440 [% END %]
441
442 <div id="toolbar" class="btn-toolbar">
443     [% IF CAN_user_editcatalogue_edit_items or ( frameworkcode == 'FA' and CAN_user_editcatalogue_fast_cataloging ) %]
444         [% IF (circborrowernumber) %][%# fast cataloging must lead to items %]
445             <!-- Action is under fast cataloging - Save button redirecting to items -->
446             <div class="btn-group"><a href="#" id="saveanditems" class="btn btn-small"><i class="fa fa-save"></i> Save</a></div>
447         [% ELSE %]
448             <!-- Not using fast cataloging - Display split menu -->
449             <div class="btn-group">
450                 <button class="btn btn-small" id="saverecord"><i class="fa fa-save"></i> Save</button>
451                 <button class="btn btn-small dropdown-toggle" data-toggle="dropdown">
452                 <span class="caret"></span>
453                 </button>
454                 <ul class="dropdown-menu">
455                     <li><a id="saveandview" href="#">Save and view record</a></li>
456                     <li><a id="saveanditems" href="#">Save and edit items</a></li>
457                     <li><a id="saveandcontinue" href="#">Save and continue editing</a></li>
458                 </ul>
459             </div>
460         [% END %]
461     [% ELSE %]
462         <!-- User cannot edit items - single button redirecting to view -->
463         <div class="btn-group"><a href="#" id="saveandview" class="btn btn-small"><i class="fa fa-save"></i> Save</a></div>
464     [% END %]
465
466     [% UNLESS (circborrowernumber) %][%# Hide in fast cataloging %]
467         <div class="btn-group"><a class="btn btn-small" href="#" id="z3950search"><i class="fa fa-search"></i> Z39.50/SRU search</a></div>
468     [% END %]
469
470     <div class="btn-group">
471         <button class="btn btn-small dropdown-toggle" data-toggle="dropdown"><i class="fa fa-cog"></i> Settings <span class="caret"></span></button>
472         <ul id="settings-menu" class="dropdown-menu">
473             [% IF Koha.Preference( 'EnableAdvancedCatalogingEditor' ) == 1 %]
474                 <li><a href="#" id="switcheditor">Switch to advanced editor</a></li>
475             [% END %]
476             [% IF marcflavour != 'NORMARC' AND NOT advancedMARCEditor %]
477                 <li>
478                     <a href="#" id="marcDocsSelect"><i class="fa fa-check-square-o"></i> Show MARC tag documentation links</a>
479                 <li>
480                     <a href="#" id="marcTagsSelect"><i class="fa fa-check-square-o"></i> Show tags</a>
481                 </li>
482             [% END %]
483             <li class="divider"></li>
484             <li class="nav-header">Change framework</li>
485             <li>
486                 <a href="#" class="change-framework" data-frameworkcode="">
487                     [% IF ( frameworkcode ) %]
488                        <i class="fa fa-fw">&nbsp;</i>
489                     [% ELSE %]
490                         <i class="fa fa-fw fa-check"></i>
491                     [% END %]
492                     Default
493                 </a>
494             </li>
495             [% FOREACH frameworkcodeloo IN frameworkcodeloop %]
496                 <li>
497                     <a href="#" class="change-framework" data-frameworkcode="[% frameworkcodeloo.value %]">
498                         [% IF ( frameworkcodeloo.selected ) %]
499                             <i class="fa fa-fw fa-check"></i>
500                         [% ELSE %]
501                             <i class="fa fa-fw">&nbsp;</i>
502                         [% END %]
503                         [% frameworkcodeloo.frameworktext %]
504                     </a>
505                 </li>
506             [% END %]
507         </ul>
508     </div>
509     [% UNLESS (circborrowernumber) %][%# Hide in fast cataloging %]
510         [% IF (biblionumber) %]
511             [% IF ( BiblioDefaultViewmarc ) %]
512                 <div class="btn-group">
513                     <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
514                 </div>
515             [% ELSIF ( BiblioDefaultViewlabeled_marc ) %]
516                 <div class="btn-group">
517                     <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/labeledMARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
518                 </div>
519             [% ELSIF ( BiblioDefaultViewisbd ) %]
520                 <div class="btn-group">
521                     <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/ISBDdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
522                 </div>
523             [% ELSE %]
524                 <div class="btn-group">
525                     <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
526                 </div>
527             [% END %]
528         [% ELSE %]
529             <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/cataloguing/addbooks.pl">Cancel</a>
530         [% END %]
531     [% END %]
532 </div>
533
534 [% IF ( popup ) %]
535         <input type="hidden" name="mode" value="popup" />
536 [% END %]
537         <input type="hidden" name="op" value="addbiblio" />
538         <input type="hidden" id="frameworkcode" name="frameworkcode" value="[% frameworkcode %]" />
539         <input type="hidden" name="biblionumber" value="[% biblionumber %]" />
540         <input type="hidden" name="breedingid" value="[% breedingid %]" />
541         <input type="hidden" name="changed_framework" value="" />
542
543 <div id="addbibliotabs" class="toptabs numbered">
544     <ul>
545         [% FOREACH BIG_LOO IN BIG_LOOP %]
546         <li><a href="#tab[% BIG_LOO.number %]XX">[% BIG_LOO.number %]</a></li>
547         [% END %]
548     </ul>
549
550 [% FOREACH BIG_LOO IN BIG_LOOP %]
551     <div id="tab[% BIG_LOO.number %]XX">
552     
553     [% FOREACH innerloo IN BIG_LOO.innerloop %]
554     [% IF ( innerloo.tag ) %]
555     <div class="tag" id="tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]">
556         <div class="tag_title" id="div_indicator_tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]">
557             [% IF advancedMARCEditor %]
558                 <a href="#" tabindex="1" class="tagnum" title="[% innerloo.tag_lib %] - Click to Expand this Tag" onclick="ExpandField('tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]'); return false;">[% innerloo.tag %]</a>
559             [% ELSE %]
560                 <span class="tagnum" title="[% innerloo.tag_lib %]">[% innerloo.tag %]</span>
561                 [% IF marcflavour != 'NORMARC' %]<a href="#" class="marcdocs" onclick="PopupMARCFieldDoc('[% innerloo.tag %]'); return false;">&nbsp;?</a>[% END %]
562             [% END %]
563                 [% IF ( innerloo.fixedfield ) %]
564                     <input type="text"
565                         tabindex="1"
566                         class="indicator flat"
567                         style="display:none;"
568                         name="tag_[% innerloo.tag %]_indicator1_[% innerloo.index %][% innerloo.random %]"
569                         size="1"
570                         maxlength="1"
571                         value="[% innerloo.indicator1 %]" />
572                     <input type="text"
573                         tabindex="1"
574                         class="indicator flat"
575                         style="display:none;"
576                         name="tag_[% innerloo.tag %]_indicator2_[% innerloo.index %][% innerloo.random %]"
577                         size="1"
578                         maxlength="1"
579                         value="[% innerloo.indicator2 %]" />
580                 [% ELSE %]
581                     <input type="text"
582                         tabindex="1"
583                         class="indicator flat"
584                         name="tag_[% innerloo.tag %]_indicator1_[% innerloo.index %][% innerloo.random %]"
585                         size="1"
586                         maxlength="1"
587                         value="[% innerloo.indicator1 %]" />
588                     <input type="text"
589                         tabindex="1"
590                         class="indicator flat"
591                         name="tag_[% innerloo.tag %]_indicator2_[% innerloo.index %][% innerloo.random %]"
592                         size="1"
593                         maxlength="1"
594                         value="[% innerloo.indicator2 %]" />
595                 [% END %] -
596
597             [% UNLESS advancedMARCEditor %]
598                 <a href="#" tabindex="1" class="expandfield" onclick="ExpandField('tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]'); return false;" title="Click to Expand this Tag">[% innerloo.tag_lib %]</a>
599             [% END %]
600                 <span class="field_controls">
601                 [% IF ( innerloo.repeatable ) %]
602                     <a href="#" tabindex="1" class="buttonPlus" onclick="CloneField('tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]','0','[% advancedMARCEditor %]'); return false;" title="Repeat this Tag">
603                         <img src="[% interface %]/[% theme %]/img/repeat-tag.png" alt="Repeat this Tag" />
604                     </a>
605                 [% END %]
606                     <a href="#" tabindex="1" class="buttonMinus" onclick="UnCloneField('tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]'); return false;" title="Delete this Tag">
607                         <img src="[% interface %]/[% theme %]/img/delete-tag.png" alt="Delete this Tag" />
608                     </a>
609                 </span>
610
611         </div>
612
613         [% FOREACH subfield_loo IN innerloo.subfield_loop %]
614             <!--  One line on the marc editor -->
615             <div class="subfield_line" style="[% subfield_loo.visibility %]" id="subfield[% subfield_loo.tag %][% subfield_loo.subfield %][% subfield_loo.random %]">
616
617                 [% UNLESS advancedMARCEditor %]
618                     [% IF ( subfield_loo.fixedfield ) %]<label for="tag_[% subfield_loo.tag %]_subfield_[% subfield_loo.subfield %]_[% subfield_loo.index %]_[% subfield_loo.index_subfield %]" style="display:none;" class="labelsubfield">
619                     [% ELSE %]<label for="tag_[% subfield_loo.tag %]_subfield_[% subfield_loo.subfield %]_[% subfield_loo.index %]_[% subfield_loo.index_subfield %]" class="labelsubfield">
620                     [% END %]
621                 [% END %]
622
623                 <span class="subfieldcode">
624                     [% IF ( subfield_loo.fixedfield ) %]
625                         <img class="buttonUp" style="display:none;" src="[% interface %]/[% theme %]/img/up.png" onclick="upSubfield('subfield[% subfield_loo.tag %][% subfield_loo.subfield %][% subfield_loo.random %]')" alt="Move Up" title="Move Up" />
626                     [% ELSE %]
627                         <img class="buttonUp" src="[% interface %]/[% theme %]/img/up.png" onclick="upSubfield('subfield[% subfield_loo.tag %][% subfield_loo.subfield %][% subfield_loo.random %]')" alt="Move Up" title="Move Up" />
628                     [% END %]
629                         <input type="text"
630                             title="[% subfield_loo.marc_lib %]"
631                             style=" [% IF ( subfield_loo.fixedfield ) %]display:none; [% END %]border:0;"
632                             name="tag_[% subfield_loo.tag %]_code_[% subfield_loo.subfield %]_[% subfield_loo.index %]_[% subfield_loo.index_subfield %]"
633                             value="[% subfield_loo.subfield %]"
634                             size="1"
635                             maxlength="1"
636                             class="flat"
637                             tabindex="0" />
638                 </span>
639
640                 [% UNLESS advancedMARCEditor %]
641                     [% IF ( subfield_loo.mandatory ) %]<span class="subfield subfield_mandatory">[% ELSE %]<span class="subfield">[% END %]
642                         [% subfield_loo.marc_lib %]
643                         [% IF ( subfield_loo.mandatory ) %]<span class="mandatory_marker" title="This field is mandatory">*</span>[% END %]
644                     </span>
645                     </label>
646                 [% END %]
647                 
648                 [% SET mv = subfield_loo.marc_value %]
649                 [% IF ( mv.type == 'text' ) %]
650                     [% IF ( mv.readonly == 1 ) %]
651                     <input type="text" id="[%- mv.id -%]" name="[%- mv.name -%]" value="[%- mv.value -%]" class="input_marceditor readonly" tabindex="1" size="[%- mv.size -%]" maxlength="[%- mv.maxlength -%]" readonly="readonly" />
652                     [% ELSE %]
653                     <input type="text" id="[%- mv.id -%]" name="[%- mv.name -%]" value="[%- mv.value -%]" class="input_marceditor" tabindex="1" size="[%- mv.size -%]" maxlength="[%- mv.maxlength -%]" />
654                     [% END %]
655                     [% IF ( mv.authtype ) %]
656                     <span class="subfield_controls"><a href="#" class="buttonDot tag_editor" onclick="openAuth(this.parentNode.parentNode.getElementsByTagName('input')[1].id,'[%- mv.authtype -%]','biblio'); return false;" tabindex="1" title="Tag editor">Tag editor</a></span>
657                     [% END %]
658                 [% ELSIF ( mv.type == 'text_complex' ) %]
659                     <input type="text" id="[%- mv.id -%]" name="[%- mv.name -%]" value="[%- mv.value -%]" class="input_marceditor framework_plugin" tabindex="1" size="[%- mv.size -%]" maxlength="[%- mv.maxlength -%]" />
660                     <span class="subfield_controls">
661                         [% IF mv.noclick %]
662                             <a href="#" class="buttonDot tag_editor disabled" tabindex="-1" title="No popup"></a>
663                         [% ELSE %]
664                             <a href="#" id="buttonDot_[% mv.id %]" class="buttonDot tag_editor framework_plugin" tabindex="1" title="Tag editor">Tag editor</a>
665                         [% END %]
666                     </span>
667                     [% mv.javascript %]
668                 [% ELSIF ( mv.type == 'hidden' ) %]
669                     <input tabindex="1" type="hidden" id="[%- mv.id -%]" name="[%- mv.name -%]" size="[%- mv.size -%]" maxlength="[%- mv.maxlength -%]" value="[%- mv.value -%]" />
670                 [% ELSIF ( mv.type == 'textarea' ) %]
671                     <textarea cols="70" rows="4" id="[%- mv.id -%]" name="[%- mv.name -%]" class="input_marceditor" tabindex="1">[%- mv.value -%]</textarea>
672                 [% ELSIF ( mv.type == 'select' ) %]
673                     <select name="[%- mv.name -%]" tabindex="1" size="1" class="input_marceditor" id="[%- mv.id -%]">
674                     [% FOREACH aval IN mv.values %]
675                         [% IF aval == mv.default %]
676                         <option value="[%- aval -%]" selected="selected">[%- mv.labels.$aval -%]</option>
677                         [% ELSE %]
678                         <option value="[%- aval -%]">[%- mv.labels.$aval -%]</option>
679                         [% END %]
680                     [% END %]
681                     </select>
682                 [% END %]
683                 
684                 <span class="subfield_controls">
685                 [% IF ( subfield_loo.repeatable ) %]
686                     <a href="#" class="buttonPlus" tabindex="1" onclick="CloneSubfield('subfield[% subfield_loo.tag %][% subfield_loo.subfield %][% subfield_loo.random %]','[% advancedMARCEditor %]'); return false;">
687                         <img src="[% interface %]/[% theme %]/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
688                     </a>
689                     <a href="#" class="buttonMinus" tabindex="1" onclick="UnCloneField('subfield[% subfield_loo.tag %][% subfield_loo.subfield %][% subfield_loo.random %]'); return false;">
690                         <img src="[% interface %]/[% theme %]/img/delete-subfield.png" alt="Delete" title="Delete this subfield" />
691                     </a>
692                 [% END %]
693                 </span>
694                 
695             </div>
696             <!-- End of the line -->
697         [% END %]
698
699     </div>
700     [% END %]<!-- if innerloo.tag -->
701     [% END %]<!-- BIG_LOO.innerloop -->
702     </div>
703 [% END %]<!-- BIG_LOOP -->
704
705 </div><!-- tabs -->
706
707 [%# Fields for fast cataloging %]
708 <input type="hidden" name="barcode" value="[% barcode %]" />
709 <input type="hidden" name="branch" value="[% branch %]" />
710 <input type="hidden" name="circborrowernumber" value="[% circborrowernumber %]" />
711 <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
712 <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
713 [%# End of fields for fast cataloging %]
714
715 </form>
716
717 </div>
718 </div>
719 </div>
720
721 [% INCLUDE 'intranet-bottom.inc' %]