Bug 13501: Add JS library select2 3.5.4
[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
384 [% INCLUDE 'select2.inc' %]
385 <script>
386   $(document).ready(function() {
387     $('.subfield_line select').select2();
388   });
389 </script>
390
391 [% IF ( bidi ) %]
392    <link rel="stylesheet" type="text/css" href="[% interface %]/[% theme %]/css/right-to-left.css" />
393 [% END %]
394 </head>
395 <body id="cat_addbiblio" class="cat">
396
397    <div id="loading">
398        <div>Loading, please wait...</div>
399    </div>
400
401 [% INCLUDE 'header.inc' %]
402
403 <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>
404
405 <div id="doc" class="yui-t7">
406
407 <div id="bd">
408         <div id="yui-main">
409         <div class="yui-g">
410
411 <h1>
412 [% IF ( biblionumber ) %]Editing <em>[% title |html %]</em> (Record number [% biblionumber %])
413 [% ELSE %]Add MARC record [% IF (circborrowernumber) %]<em>(fast cataloging)</em>[% END %]
414 [% END %]
415 </h1>
416
417 [% UNLESS ( number ) %]
418     <!-- show duplicate warning on tab 0 only -->
419         [% IF ( duplicatebiblionumber ) %]
420                     <div class="dialog alert">
421                         <h3>Duplicate record suspected</h3>
422                         <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>
423                         [% IF ( CAN_user_editcatalogue_edit_items ) %]<form action="/cgi-bin/koha/cataloguing/additem.pl" method="get">
424                                                     <input type="hidden" name="biblionumber" value="[% duplicatebiblionumber %]" />
425                                                     <button type="submit" class="new"><i class="fa fa-fw fa-pencil"></i> Yes, edit existing items</button>
426                                                 </form>[% ELSE %]<form action="/cgi-bin/koha/catalogue/detail.pl" method="get">
427                                                     <input type="hidden" name="biblionumber" value="[% duplicatebiblionumber %]" />
428                                                     <input type="submit" value="Yes: View existing items" />
429                                                 </form>[% END %]
430                         <form action="/cgi-bin/koha/cataloguing/addbiblio.pl" method="get">
431                             [% 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 %]
432                         </form>
433                     </div>
434         [% END %]
435     [% END %]
436
437 [% IF ( done ) %]
438     <script type="text/javascript">
439         opener.document.forms['f'].biblionumber.value=[% biblionumber %];
440         opener.document.forms['f'].title.value='[% title |html %]';
441         window.close();
442     </script>
443 [% ELSE %]
444     <form method="post" name="f" id="f" action="/cgi-bin/koha/cataloguing/addbiblio.pl" onsubmit="return Check();">
445     <input type="hidden" value="[% IF ( biblionumber ) %]view[% ELSE %]items[% END %]" id="redirect" name="redirect" />
446     <input type="hidden" value="" id="current_tab" name="current_tab" />
447     <input type="hidden" value="0" id="confirm_not_duplicate" name="confirm_not_duplicate" />
448 [% END %]
449
450 <div id="toolbar" class="btn-toolbar">
451     [% IF CAN_user_editcatalogue_edit_items or ( frameworkcode == 'FA' and CAN_user_editcatalogue_fast_cataloging ) %]
452         [% IF (circborrowernumber) %][%# fast cataloging must lead to items %]
453             <!-- Action is under fast cataloging - Save button redirecting to items -->
454             <div class="btn-group"><a href="#" id="saveanditems" class="btn btn-small"><i class="fa fa-save"></i> Save</a></div>
455         [% ELSE %]
456             <!-- Not using fast cataloging - Display split menu -->
457             <div class="btn-group">
458                 <button class="btn btn-small" id="saverecord"><i class="fa fa-save"></i> Save</button>
459                 <button class="btn btn-small dropdown-toggle" data-toggle="dropdown">
460                 <span class="caret"></span>
461                 </button>
462                 <ul class="dropdown-menu">
463                     <li><a id="saveandview" href="#">Save and view record</a></li>
464                     <li><a id="saveanditems" href="#">Save and edit items</a></li>
465                     <li><a id="saveandcontinue" href="#">Save and continue editing</a></li>
466                 </ul>
467             </div>
468         [% END %]
469     [% ELSE %]
470         <!-- User cannot edit items - single button redirecting to view -->
471         <div class="btn-group"><a href="#" id="saveandview" class="btn btn-small"><i class="fa fa-save"></i> Save</a></div>
472     [% END %]
473
474     [% UNLESS (circborrowernumber) %][%# Hide in fast cataloging %]
475         <div class="btn-group"><a class="btn btn-small" href="#" id="z3950search"><i class="fa fa-search"></i> Z39.50/SRU search</a></div>
476     [% END %]
477
478     <div class="btn-group">
479         <button class="btn btn-small dropdown-toggle" data-toggle="dropdown"><i class="fa fa-cog"></i> Settings <span class="caret"></span></button>
480         <ul id="settings-menu" class="dropdown-menu">
481             [% IF Koha.Preference( 'EnableAdvancedCatalogingEditor' ) == 1 %]
482                 <li><a href="#" id="switcheditor">Switch to advanced editor</a></li>
483             [% END %]
484             [% IF marcflavour != 'NORMARC' AND NOT advancedMARCEditor %]
485                 <li>
486                     <a href="#" id="marcDocsSelect"><i class="fa fa-check-square-o"></i> Show MARC tag documentation links</a>
487                 <li>
488                     <a href="#" id="marcTagsSelect"><i class="fa fa-check-square-o"></i> Show tags</a>
489                 </li>
490             [% END %]
491             <li class="divider"></li>
492             <li class="nav-header">Change framework</li>
493             <li>
494                 <a href="#" class="change-framework" data-frameworkcode="">
495                     [% IF ( frameworkcode ) %]
496                        <i class="fa fa-fw">&nbsp;</i>
497                     [% ELSE %]
498                         <i class="fa fa-fw fa-check"></i>
499                     [% END %]
500                     Default
501                 </a>
502             </li>
503             [% FOREACH frameworkcodeloo IN frameworkcodeloop %]
504                 <li>
505                     <a href="#" class="change-framework" data-frameworkcode="[% frameworkcodeloo.frameworkcode %]">
506                         [% IF ( frameworkcodeloo.frameworkcode == frameworkcode ) %]
507                             <i class="fa fa-fw fa-check"></i>
508                         [% ELSE %]
509                             <i class="fa fa-fw">&nbsp;</i>
510                         [% END %]
511                         [% frameworkcodeloo.frameworktext %]
512                     </a>
513                 </li>
514             [% END %]
515         </ul>
516     </div>
517     [% UNLESS (circborrowernumber) %][%# Hide in fast cataloging %]
518         [% IF (biblionumber) %]
519             [% IF ( BiblioDefaultViewmarc ) %]
520                 <div class="btn-group">
521                     <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
522                 </div>
523             [% ELSIF ( BiblioDefaultViewlabeled_marc ) %]
524                 <div class="btn-group">
525                     <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/labeledMARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
526                 </div>
527             [% ELSIF ( BiblioDefaultViewisbd ) %]
528                 <div class="btn-group">
529                     <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/ISBDdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
530                 </div>
531             [% ELSE %]
532                 <div class="btn-group">
533                     <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
534                 </div>
535             [% END %]
536         [% ELSE %]
537             <a class="btn btn-small" id="cancel" href="/cgi-bin/koha/cataloguing/addbooks.pl">Cancel</a>
538         [% END %]
539     [% END %]
540 </div>
541
542 [% IF ( popup ) %]
543         <input type="hidden" name="mode" value="popup" />
544 [% END %]
545         <input type="hidden" name="op" value="addbiblio" />
546         <input type="hidden" id="frameworkcode" name="frameworkcode" value="[% frameworkcode %]" />
547         <input type="hidden" name="biblionumber" value="[% biblionumber %]" />
548         <input type="hidden" name="breedingid" value="[% breedingid %]" />
549         <input type="hidden" name="changed_framework" value="" />
550
551 <div id="addbibliotabs" class="toptabs numbered">
552     <ul>
553         [% FOREACH BIG_LOO IN BIG_LOOP %]
554         <li><a href="#tab[% BIG_LOO.number %]XX">[% BIG_LOO.number %]</a></li>
555         [% END %]
556     </ul>
557
558 [% FOREACH BIG_LOO IN BIG_LOOP %]
559     <div id="tab[% BIG_LOO.number %]XX">
560     
561     [% FOREACH innerloo IN BIG_LOO.innerloop %]
562     [% IF ( innerloo.tag ) %]
563     <div class="tag" id="tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]">
564         <div class="tag_title" id="div_indicator_tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]">
565             [% IF advancedMARCEditor %]
566                 <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>
567             [% ELSE %]
568                 <span class="tagnum" title="[% innerloo.tag_lib %]">[% innerloo.tag %]</span>
569                 [% IF marcflavour != 'NORMARC' %]<a href="#" class="marcdocs" onclick="PopupMARCFieldDoc('[% innerloo.tag %]'); return false;">&nbsp;?</a>[% END %]
570             [% END %]
571                 [% IF ( innerloo.fixedfield ) %]
572                     <input type="text"
573                         tabindex="1"
574                         class="indicator flat"
575                         style="display:none;"
576                         name="tag_[% innerloo.tag %]_indicator1_[% innerloo.index %][% innerloo.random %]"
577                         size="1"
578                         maxlength="1"
579                         value="[% innerloo.indicator1 %]" />
580                     <input type="text"
581                         tabindex="1"
582                         class="indicator flat"
583                         style="display:none;"
584                         name="tag_[% innerloo.tag %]_indicator2_[% innerloo.index %][% innerloo.random %]"
585                         size="1"
586                         maxlength="1"
587                         value="[% innerloo.indicator2 %]" />
588                 [% ELSE %]
589                     <input type="text"
590                         tabindex="1"
591                         class="indicator flat"
592                         name="tag_[% innerloo.tag %]_indicator1_[% innerloo.index %][% innerloo.random %]"
593                         size="1"
594                         maxlength="1"
595                         value="[% innerloo.indicator1 %]" />
596                     <input type="text"
597                         tabindex="1"
598                         class="indicator flat"
599                         name="tag_[% innerloo.tag %]_indicator2_[% innerloo.index %][% innerloo.random %]"
600                         size="1"
601                         maxlength="1"
602                         value="[% innerloo.indicator2 %]" />
603                 [% END %] -
604
605             [% UNLESS advancedMARCEditor %]
606                 <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>
607             [% END %]
608                 <span class="field_controls">
609                 [% IF ( innerloo.repeatable ) %]
610                     <a href="#" tabindex="1" class="buttonPlus" onclick="CloneField('tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]','0','[% advancedMARCEditor %]'); return false;" title="Repeat this Tag">
611                         <img src="[% interface %]/[% theme %]/img/repeat-tag.png" alt="Repeat this Tag" />
612                     </a>
613                 [% END %]
614                     <a href="#" tabindex="1" class="buttonMinus" onclick="UnCloneField('tag_[% innerloo.tag %]_[% innerloo.index %][% innerloo.random %]'); return false;" title="Delete this Tag">
615                         <img src="[% interface %]/[% theme %]/img/delete-tag.png" alt="Delete this Tag" />
616                     </a>
617                 </span>
618
619         </div>
620
621         [% FOREACH subfield_loo IN innerloo.subfield_loop %]
622             <!--  One line on the marc editor -->
623             <div class="subfield_line" style="[% subfield_loo.visibility %]" id="subfield[% subfield_loo.tag %][% subfield_loo.subfield %][% subfield_loo.random %]">
624
625                 [% UNLESS advancedMARCEditor %]
626                     [% 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">
627                     [% ELSE %]<label for="tag_[% subfield_loo.tag %]_subfield_[% subfield_loo.subfield %]_[% subfield_loo.index %]_[% subfield_loo.index_subfield %]" class="labelsubfield">
628                     [% END %]
629                 [% END %]
630
631                 <span class="subfieldcode">
632                     [% IF ( subfield_loo.fixedfield ) %]
633                         <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" />
634                     [% ELSE %]
635                         <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" />
636                     [% END %]
637                         <input type="text"
638                             title="[% subfield_loo.marc_lib %]"
639                             style=" [% IF ( subfield_loo.fixedfield ) %]display:none; [% END %]border:0;"
640                             name="tag_[% subfield_loo.tag %]_code_[% subfield_loo.subfield %]_[% subfield_loo.index %]_[% subfield_loo.index_subfield %]"
641                             value="[% subfield_loo.subfield %]"
642                             size="1"
643                             maxlength="1"
644                             class="flat"
645                             tabindex="0" />
646                 </span>
647
648                 [% UNLESS advancedMARCEditor %]
649                     [% IF ( subfield_loo.mandatory ) %]<span class="subfield subfield_mandatory">[% ELSE %]<span class="subfield">[% END %]
650                         [% subfield_loo.marc_lib %]
651                         [% IF ( subfield_loo.mandatory ) %]<span class="mandatory_marker" title="This field is mandatory">*</span>[% END %]
652                     </span>
653                     </label>
654                 [% END %]
655                 
656                 [% SET mv = subfield_loo.marc_value %]
657                 [% IF ( mv.type == 'text' ) %]
658                     [% IF ( mv.readonly == 1 ) %]
659                     <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" />
660                     [% ELSE %]
661                     <input type="text" id="[%- mv.id -%]" name="[%- mv.name -%]" value="[%- mv.value -%]" class="input_marceditor" tabindex="1" size="[%- mv.size -%]" maxlength="[%- mv.maxlength -%]" />
662                     [% END %]
663                     [% IF ( mv.authtype ) %]
664                     <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>
665                     [% END %]
666                 [% ELSIF ( mv.type == 'text_complex' ) %]
667                     <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 -%]" />
668                     <span class="subfield_controls">
669                         [% IF mv.noclick %]
670                             <a href="#" class="buttonDot tag_editor disabled" tabindex="-1" title="No popup"></a>
671                         [% ELSE %]
672                             <a href="#" id="buttonDot_[% mv.id %]" class="buttonDot tag_editor framework_plugin" tabindex="1" title="Tag editor">Tag editor</a>
673                         [% END %]
674                     </span>
675                     [% mv.javascript %]
676                 [% ELSIF ( mv.type == 'hidden' ) %]
677                     <input tabindex="1" type="hidden" id="[%- mv.id -%]" name="[%- mv.name -%]" size="[%- mv.size -%]" maxlength="[%- mv.maxlength -%]" value="[%- mv.value -%]" />
678                 [% ELSIF ( mv.type == 'textarea' ) %]
679                     <textarea cols="70" rows="4" id="[%- mv.id -%]" name="[%- mv.name -%]" class="input_marceditor" tabindex="1">[%- mv.value -%]</textarea>
680                 [% ELSIF ( mv.type == 'select' ) %]
681                     <select name="[%- mv.name -%]" tabindex="1" size="1" class="input_marceditor" id="[%- mv.id -%]">
682                     [% FOREACH aval IN mv.values %]
683                         [% IF aval == mv.default %]
684                         <option value="[%- aval -%]" selected="selected">[%- mv.labels.$aval -%]</option>
685                         [% ELSE %]
686                         <option value="[%- aval -%]">[%- mv.labels.$aval -%]</option>
687                         [% END %]
688                     [% END %]
689                     </select>
690                 [% END %]
691                 
692                 <span class="subfield_controls">
693                 [% IF ( subfield_loo.repeatable ) %]
694                     <a href="#" class="buttonPlus" tabindex="1" onclick="CloneSubfield('subfield[% subfield_loo.tag %][% subfield_loo.subfield %][% subfield_loo.random %]','[% advancedMARCEditor %]'); return false;">
695                         <img src="[% interface %]/[% theme %]/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
696                     </a>
697                     <a href="#" class="buttonMinus" tabindex="1" onclick="UnCloneField('subfield[% subfield_loo.tag %][% subfield_loo.subfield %][% subfield_loo.random %]'); return false;">
698                         <img src="[% interface %]/[% theme %]/img/delete-subfield.png" alt="Delete" title="Delete this subfield" />
699                     </a>
700                 [% END %]
701                 </span>
702                 
703             </div>
704             <!-- End of the line -->
705         [% END %]
706
707     </div>
708     [% END %]<!-- if innerloo.tag -->
709     [% END %]<!-- BIG_LOO.innerloop -->
710     </div>
711 [% END %]<!-- BIG_LOOP -->
712
713 </div><!-- tabs -->
714
715 [%# Fields for fast cataloging %]
716 <input type="hidden" name="barcode" value="[% barcode %]" />
717 <input type="hidden" name="branch" value="[% branch %]" />
718 <input type="hidden" name="circborrowernumber" value="[% circborrowernumber %]" />
719 <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
720 <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
721 [%# End of fields for fast cataloging %]
722
723 </form>
724
725 </div>
726 </div>
727 </div>
728
729 [% INCLUDE 'intranet-bottom.inc' %]