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