ca9b6a32e41678ea508ed4bd757469b8f49e0475
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / cataloguing / addbiblio.tmpl
1 <!-- TMPL_INCLUDE NAME="doc-head-open.inc" -->
2 <title>Koha &rsaquo; Cataloging &rsaquo; <!-- TMPL_IF NAME="biblionumber" -->Editing <!-- TMPL_VAR NAME="title" escape="html" --> (Record Number <!-- TMPL_VAR name="biblionumber" -->)<!-- TMPL_ELSE -->Add MARC Record<!-- /TMPL_IF --></title>
3 <!-- TMPL_INCLUDE NAME="doc-head-close.inc" -->
4 <script type="text/javascript" src="<!-- TMPL_VAR name="themelang" -->/lib/yui/plugins/bubbling-min.js"></script>
5 <script type="text/javascript">
6 //<![CDATA[
7
8      var fields_in_use = {};
9          $(document).ready(function() {
10                 $('#addbibliotabs > ul').tabs().bind('show.ui-tabs', function(e, ui) {
11                         $("#"+ui.panel.id+" input:eq(0)").focus();
12                 });
13         $('.tag').each(function() {
14             var field_id = this.getAttribute('id').substring(0, 7);
15             if (field_id in fields_in_use) {
16                 fields_in_use[field_id]++;
17             } else {
18                 fields_in_use[field_id] = 1;
19             }
20         });
21         $('.subfield_line').each(function() {
22             var field_id = this.getAttribute('id').substring(0, 12);
23             if (field_id in fields_in_use) {
24                 fields_in_use[field_id]++;
25             } else {
26                 fields_in_use[field_id] = 1;
27             }
28         });
29          });
30          
31          $('#header_search > ul').tabs().bind('show.ui-tabs', function(e, ui) { $('#header_search > div:not(.ui-tabs-hide)').find('input').eq(0).focus(); });
32
33 function confirmnotdup(){
34         $("#confirm_not_duplicate").attr("value","1");
35         // alert(_("Not a duplicate confirmed. Please click on Add biblio to save the record"));
36         var checkform = $("#f");
37         Check(checkform);
38 }
39
40 /**
41  * 
42  * 
43  */
44 function Check(){
45     var StrAlert = AreMandatoriesNotOk();
46     if( ! StrAlert ){
47         document.f.submit();
48         return true;
49     } else {
50         alert(StrAlert);
51         return false;
52     }
53 }
54
55 function Dopop(link,i) {
56     defaultvalue = document.getElementById(i).value;
57     window.open(link+"&result="+defaultvalue,"valuebuilder",'width=700,height=550,toolbar=false,scrollbars=yes');
58 }
59
60 /**
61  * this function open a popup to search on z3950 server.
62  */
63 function PopupZ3950() {
64     var strQuery = GetZ3950Terms();
65         if(strQuery){
66         window.open("/cgi-bin/koha/cataloguing/z3950_search.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"+strQuery,"z3950search",'width=740,height=450,location=yes,toolbar=no,scrollbars=yes,resize=yes');
67     } 
68 }
69
70 /**
71  * check if mandatory subfields are written
72  */
73 function AreMandatoriesNotOk(){
74     var mandatories = new Array();
75     var mandatoriesfields = new Array();
76     var tab = new Array();
77     var label = new Array();
78     var flag=0;
79     var tabflag= new Array();  
80     <!-- TMPL_LOOP NAME='BIG_LOOP' -->
81         <!-- TMPL_LOOP NAME='innerloop' -->
82                 <!-- TMPL_IF NAME="mandatory" -->
83                 mandatoriesfields.push(new Array("<!-- TMPL_VAR NAME="tag" -->","<!-- TMPL_VAR NAME="index" -->"));
84                 <!-- /TMPL_IF -->
85                 <!-- TMPL_LOOP NAME='subfield_loop'-->
86                         <!-- TMPL_IF NAME='mandatory'-->mandatories.push("<!-- TMPL_VAR NAME='id' -->");
87                         tab.push("<!-- TMPL_VAR NAME='number' -->");
88                         label.push("<!-- TMPL_VAR NAME='marc_lib' -->");
89                 <!-- /TMPL_IF -->
90             <!-- /TMPL_LOOP -->
91         <!-- /TMPL_LOOP -->
92     <!-- /TMPL_LOOP -->
93     var StrAlert = _("Can't save this record because the following field aren't filled :\n\n");
94     for(var i=0,len=mandatories.length; i<len ; i++){
95         var tag=mandatories[i].substr(4,3);
96         var subfield=mandatories[i].substr(17,1);
97         var tagnumber=mandatories[i].substr(19,mandatories[i].lastIndexOf("_")-19);
98         tabflag[tag+subfield+tagnumber]=new Array();
99         tabflag[tag+subfield+tagnumber][0]=0;
100         if( ! document.getElementById(mandatories[i]).value){
101             tabflag[tag+subfield+tagnumber][0] = 0 + tabflag[tag+subfield+tagnumber] ;
102             document.getElementById(mandatories[i]).setAttribute('class','subfield_not_filled');
103             document.getElementById(mandatories[i]).focus();
104             tabflag[tag+subfield+tagnumber][1]=label[i];
105             tabflag[tag+subfield+tagnumber][2]=tab[i];
106         } else {
107             tabflag[tag+subfield+tagnumber][0] = 1;
108         }    
109     }
110     for (var tagsubfieldid in tabflag){
111       if (tabflag[tagsubfieldid][0]==0){
112         var tag=tagsubfieldid.substr(0,3);
113         var subfield=tagsubfieldid.substr(3,1);    
114         StrAlert += "\t* "+_("tag ")+tag+_(" subfield ")+subfield+" "+tabflag[tagsubfieldid][1]+_(" in tab ")+tabflag[tagsubfieldid][2]+"\n";
115         //StrAlert += "\t* "+label[i]+_(" in tab ")+tab[i]+"\n"; 
116         flag=1;    
117       }   
118     }   
119     
120     /* Check for mandatories field(not subfields) */
121     for(var i=0,len=mandatoriesfields.length; i<len; i++){
122         isempty  = true;
123         arr      = mandatoriesfields[i];
124         divid    = "tag_" + arr[0] + "_" + arr[1];
125         varegexp = new RegExp("^tag_" + arr[0] + "_code_");
126
127         elem = document.getElementById(divid);
128         eleminputs = elem.getElementsByTagName('input');
129         
130         for(var j=0,len2=eleminputs.length; j<len2; j++){
131
132                 if(eleminputs[j].name.match(varegexp) && eleminputs[j].value){
133                                 /* tag_801_subfield_c_841304_545657 */
134                                 inputregexp = new RegExp("^tag_" + arr[0] + "_subfield_" + eleminputs[j].value + "_" + arr[1]);
135                                 
136                                 for( var k=0; k<len2; k++){
137                                         if(eleminputs[k].id.match(inputregexp) && eleminputs[k].value){
138                                                 isempty = false
139                                         }
140                                 }
141                 }
142         }
143         
144         if(isempty){
145                 flag = 1;
146                 StrAlert += "\t* Field " + arr[0] + " is mandatory, at least one of its subfields must be filled.\n";
147         }
148         
149     }
150     
151     if(flag){
152             return StrAlert;
153         } else {
154                 return flag;
155         }
156 }
157
158 /** 
159  * check if z3950 mandatories are set or not
160  */
161 function GetZ3950Terms(){
162  var strQuery="&frameworkcode="+document.forms['f'].frameworkcode.value;
163     var mandatories = new Array();
164     var mandatories_label = new Array();
165     <!-- TMPL_LOOP NAME='BIG_LOOP' --><!-- TMPL_LOOP NAME='innerloop' --><!-- TMPL_LOOP NAME='subfield_loop'--><!-- TMPL_IF NAME='z3950_mandatory'-->mandatories.push("<!-- TMPL_VAR NAME='id' -->");
166         mandatories_label.push("<!-- TMPL_VAR NAME='z3950_mandatory' -->");<!-- /TMPL_IF --><!-- /TMPL_LOOP --><!-- /TMPL_LOOP --><!-- /TMPL_LOOP -->
167     
168     for(var i=0,len=mandatories.length; i<len ; i++){
169         var field_value = document.getElementById(mandatories[i]).value;
170         if( field_value ){
171             strQuery += "&"+mandatories_label[i]+"="+field_value;
172         }
173     }
174     return strQuery;
175 }
176
177 function Changefwk(FwkList) {
178         var fwk = FwkList.options[FwkList.selectedIndex].value;
179         window.location = "/cgi-bin/koha/cataloguing/addbiblio.pl?biblionumber=<!--TMPL_VAR Name="biblionumber"-->&breedingid=<!-- TMPL_VAR name="breedingid" -->&frameworkcode="+fwk;
180
181 }
182
183 // returns the subfieldcode based upon subfieldid writing
184 function getSubfieldcode(tagsubfieldid){
185     // 3 : tag +3 : tagnumber +4 : number of _ +8 subfield -1 begins at 0  
186     return tagsubfieldid.substr(3+3+4+8-1,1);
187 }
188
189 // Take the base of tagsubfield information (removing the subfieldcodes and subfieldindexes)
190 // returns the filter
191 function getTagInputnameFilter(tagsubfieldid){
192     var tagsubfield=tagsubfieldid.substr(0,tagsubfieldid.lastIndexOf("_"));  
193     var tagcode=tagsubfield.substr(tagsubfield.lastIndexOf("_"));
194     tagsubfield=tagsubfield.substr(0,tagsubfield.lastIndexOf("_"));
195     tagsubfield=tagsubfield.substr(0,tagsubfield.lastIndexOf("_"));
196     tagsubfield=tagsubfield+"_."+tagcode;
197     return tagsubfield;  
198 }
199
200 function openAuth(tagsubfieldid,authtype) {
201     // let's take the base of tagsubfield information (removing the indexes and the codes
202     var element=document.getElementById(tagsubfieldid);
203     var tagsubfield=getTagInputnameFilter(tagsubfieldid);
204     var elementsubfcode=getSubfieldcode(element.name);
205     var mainmainstring=element.value;
206     var mainstring="";  
207     var inputs = element.parentNode.parentNode.getElementsByTagName("input");
208
209     for (var myindex =0; myindex<inputs.length;myindex++){
210         if (inputs[myindex].name && inputs[myindex].name.match(tagsubfield)){
211             var subfieldcode=getSubfieldcode(inputs[myindex].name);
212             if (isNaN(parseInt(subfieldcode)) && inputs[myindex].value != "" && subfieldcode!=elementsubfcode){
213                 mainstring=inputs[myindex].value+" "+mainstring;
214             }      
215         }
216     }           
217         newin=window.open("../authorities/auth_finder.pl?authtypecode="+  authtype+ "&index="+tagsubfieldid+"&value_mainstr="+encodeURI(mainmainstring)+"&value_main="+encodeURI(mainstring), "_blank",'width=700,height=550,toolbar=false,scrollbars=yes');
218 }
219
220
221 function ExpandField(index) {
222     var original = document.getElementById(index); //original <div>
223     var divs = original.getElementsByTagName('div');
224     for(var i=0,divslen = divs.length ; i<divslen ; i++){      // foreach div
225         if(divs[i].getAttribute('id').match(/^subfield/)){  // if it s a subfield
226             if (divs[i].style.display == 'block') {
227                 divs[i].style.display = 'none';
228             } else {
229                 divs[i].style.display = 'block';
230             }
231         }
232     }
233 }
234
235 /**
236  * To clone a field or a subfield by clicking on '+' button
237  */ 
238 function CloneField(index) {
239     var original = document.getElementById(index); //original <div>
240     fields_in_use[index.substr(0, 7)]++;
241     var clone = original.cloneNode(true);
242     var new_key = CreateKey();
243     var new_id  = original.getAttribute('id')+new_key;
244     
245     clone.setAttribute('id',new_id); // setting a new id for the parent div
246     
247     var divs = clone.getElementsByTagName('div');
248     
249     <!-- TMPL_UNLESS NAME='hide_marc'--> // No indicator if hide_marc
250         // setting a new name for the new indicator
251         for(var i=0; i < 2; i++) {
252             var indicator = clone.getElementsByTagName('input')[i];
253             indicator.setAttribute('name',indicator.getAttribute('name')+new_key);
254         }
255     <!-- /TMPL_UNLESS -->
256         
257     // settings all subfields
258     for(var i=0,divslen = divs.length ; i<divslen ; i++){      // foreach div
259         if(divs[i].getAttribute("id").match(/^subfield/)){  // if it s a subfield
260             
261             // set the attribute for the new 'div' subfields
262             divs[i].setAttribute('id',divs[i].getAttribute('id')+new_key);
263             
264             var inputs   = divs[i].getElementsByTagName('input');
265             var id_input = "";
266             
267             for( j = 0 ; j < inputs.length ; j++ ) {
268                 if(inputs[j].getAttribute("id") && inputs[j].getAttribute("id").match(/^tag_/) ){
269                         inputs[j].value = "";
270                 }
271             }
272             
273             inputs[0].setAttribute('id',inputs[0].getAttribute('id')+new_key);
274             inputs[0].setAttribute('name',inputs[0].getAttribute('name')+new_key);
275             var id_input;
276             try {
277                 id_input = inputs[1].getAttribute('id')+new_key;
278                 inputs[1].setAttribute('id',id_input);
279                 inputs[1].setAttribute('name',inputs[1].getAttribute('name')+new_key);
280             } catch(e) {
281                 try{ // it s a select if it is not an input
282                     var selects = divs[i].getElementsByTagName('select');
283                     id_input = selects[0].getAttribute('id')+new_key;
284                     selects[0].setAttribute('id',id_input);
285                     selects[0].setAttribute('name',selects[0].getAttribute('name')+new_key);
286                 }catch(e2){ // it is a textarea if it s not a select or an input
287                         var textaeras = divs[i].getElementsByTagName('textarea');
288                         id_input = textaeras[0].getAttribute('id')+new_key;
289                         textaeras[0].setAttribute('id',id_input);
290                     textaeras[0].setAttribute('name',textaeras[0].getAttribute('name')+new_key);
291                 }
292             }
293             
294             <!-- TMPL_UNLESS NAME='advancedMARCEditor'-->
295             // when cloning a subfield, re set its label too.
296             var labels = divs[i].getElementsByTagName('label');
297             labels[0].setAttribute('for',id_input);
298             <!-- /TMPL_UNLESS -->
299             
300             <!-- TMPL_UNLESS NAME='hide_marc'-->
301                 // updating javascript parameters on button up
302                 var imgs = divs[i].getElementsByTagName('img');
303                 imgs[0].setAttribute('onclick',"upSubfield(\'"+divs[i].getAttribute('id')+"\');");
304             <!-- /TMPL_UNLESS -->
305             
306             // setting its '+' and '-' buttons
307             try {
308                 var spans = divs[i].getElementsByTagName('span');
309                 for (var j = 0; j < spans.length; j++) {
310                     if(spans[j].getAttribute('class') == 'buttonPlus'){
311                         spans[j].setAttribute('onclick',"CloneSubfield('" + divs[i].getAttribute('id') + "')");
312                     } else if (spans[j].getAttribute('class') == 'buttonMinus') {
313                         spans[j].setAttribute('onclick',"UnCloneField('" + divs[i].getAttribute('id') + "')");
314                     }
315                 }
316             }
317             catch(e){
318                 // do nothig if ButtonPlus & CloneButtonPlus don t exist.
319             }
320             
321             // button ...
322             var spans=0;
323             try {
324                 spans = divs[i].getElementsByTagName('a');
325             } catch(e) {
326                 // no spans
327             }
328             if(spans){
329                 var buttonDot;
330                 if(!CloneButtonPlus){ // it s impossible to have  + ... (buttonDot AND buttonPlus)
331                     buttonDot = spans[0];
332                     if(buttonDot){
333                         // 2 possibilities :
334                         try{
335                             var buttonDotOnClick = buttonDot.getAttribute('onclick');
336                             if(buttonDotOnClick.match('Clictag')){   // -1- It s a plugin
337                                 var re = /\('.*'\)/i;
338                                 buttonDotOnClick = buttonDotOnClick.replace(re,"('"+inputs[1].getAttribute('id')+"')");
339                                 if(buttonDotOnClick){
340                                     buttonDot.setAttribute('onclick',buttonDotOnClick);
341                                 }
342                             } else {
343                                 if(buttonDotOnClick.match('Dopop')) {  // -2- It's a auth value
344                                     var re1 = /&index=.*',/;
345                                     var re2 = /,.*\)/;
346
347                                     buttonDotOnClick = buttonDotOnClick.replace(re1,"&index="+inputs[1].getAttribute('id')+"',");
348                                     buttonDotOnClick = buttonDotOnClick.replace(re2,",'"+inputs[1].getAttribute('id')+"')");
349                                     
350                                     if(buttonDotOnClick){
351                                             buttonDot.setAttribute('onclick',buttonDotOnClick);
352                                     }
353                                 }
354                             }
355                             try {
356                                 // do not copy the script section.
357                                 var script = spans[0].getElementsByTagName('script')[0];
358                                 spans[0].removeChild(script);
359                             } catch(e) {
360                                 // do nothing if there is no script
361                             }
362                         }catch(e){}
363                         }
364                 }
365             }
366             <!-- TMPL_UNLESS NAME='hide_marc'-->
367                 var buttonUp = divs[i].getElementsByTagName('img')[0];
368                 buttonUp.setAttribute('onclick',"upSubfield('" + divs[i].getAttribute('id') + "')");
369             <!-- /TMPL_UNLESS -->
370             
371         } else { // it's a indicator div
372             if(divs[i].getAttribute('id').match(/^div_indicator/)){
373                 var inputs = divs[i].getElementsByTagName('input');
374                 inputs[0].setAttribute('id',inputs[0].getAttribute('id')+new_key);
375                 inputs[1].setAttribute('id',inputs[1].getAttribute('id')+new_key);
376                 
377                 var CloneButtonPlus;
378                 try {
379                     var anchors = divs[i].getElementsByTagName('a');
380                     for (var j = 0; j < anchors.length; j++) {
381                         if (anchors[j].getAttribute('class') == 'buttonPlus') {
382                             anchors[j].setAttribute('onclick',"CloneField('" + new_id + "')");
383                         } else if (anchors[j].getAttribute('class') == 'buttonMinus') {
384                             anchors[j].setAttribute('onclick',"UnCloneField('" + new_id + "')");
385                         }
386                     }
387                 }
388                 catch(e){
389                     // do nothig CloneButtonPlus doesn't exist.
390                 }
391                 // setting its 'Expand' property
392                 var ExpandFieldA=0;
393                 try {
394                     ExpandFieldA = divs[i].getElementsByTagName('a')[0];
395                     ExpandFieldA.setAttribute('onclick',"ExpandField('" + divs[i].parentNode.getAttribute('id') + "')");
396                 }
397                 catch(e){
398                     // do nothig if ButtonPlus & CloneButtonPlus don t exist.
399                 }
400
401             }
402         }
403     }
404     
405     // insert this line on the page
406     original.parentNode.insertBefore(clone,original.nextSibling);
407 }
408
409 function CloneSubfield(index){
410     var original = document.getElementById(index); //original <div>
411     fields_in_use[index.substr(0, 12)]++;
412     var clone = original.cloneNode(true);
413     var new_key = CreateKey();
414     var new_id  = original.getAttribute('id')+new_key;
415     
416     // set the attribute for the new 'div' subfields
417     var inputs     = clone.getElementsByTagName('input');
418     var selects    = clone.getElementsByTagName('select');
419     var textareas  = clone.getElementsByTagName('textarea');
420         
421     // input
422     var id_input = "";
423     for(var i=0,len=inputs.length; i<len ; i++ ){
424         id_input = inputs[i].getAttribute('id')+new_key;
425         inputs[i].setAttribute('id',id_input);
426         inputs[i].setAttribute('name',inputs[i].getAttribute('name')+new_key);
427     }
428     
429     // select 
430     for(var i=0,len=selects.length; i<len ; i++ ){
431         id_input = selects[i].getAttribute('id')+new_key;
432         selects[i].setAttribute('id',selects[i].getAttribute('id')+new_key);
433         selects[i].setAttribute('name',selects[i].getAttribute('name')+new_key);
434     }
435     
436     // textarea
437     for(var i=0,len=textareas.length; i<len ; i++ ){
438         id_input = textareas[i].getAttribute('id')+new_key;
439         textareas[i].setAttribute('id',textareas[i].getAttribute('id')+new_key);
440         textareas[i].setAttribute('name',textareas[i].getAttribute('name')+new_key);
441     }
442     
443     <!-- TMPL_UNLESS NAME='advancedMARCEditor' -->
444     // when cloning a subfield, reset its label too.
445     var label = clone.getElementsByTagName('label')[0];
446     label.setAttribute('for',id_input);
447     <!-- /TMPL_UNLESS -->
448     
449     // setting a new if for the parent div
450     clone.setAttribute('id',new_id);
451     
452     try {
453         var buttonUp = clone.getElementsByTagName('img')[0];
454         buttonUp.setAttribute('onclick',"upSubfield('" + new_id + "')");
455         var spans = clone.getElementsByTagName('span');
456         if(spans.length){
457                 for(var i = 0 ,lenspans = spans.length ; i < lenspans ; i++){
458                         if(spans[i].getAttribute('class') == 'buttonPlus'){
459                     spans[i].setAttribute('onclick',"CloneSubfield('" + new_id + "')");
460                 } else if (spans[i].getAttribute('class') == 'buttonMinus') {
461                     spans[i].setAttribute('onclick',"UnCloneField('" + new_id + "')");
462                 }
463             }
464         }
465     }
466     catch(e){
467         // do nothig if ButtonPlus & CloneButtonPlus don't exist.
468     }
469     // insert this line on the page
470     original.parentNode.insertBefore(clone,original.nextSibling);
471 }
472
473  /**
474  * This function removes or clears unwanted subfields
475  */
476 function UnCloneField(index) {
477     var original = document.getElementById(index);
478     var field_id;
479     if (index.match("tag")) {
480         field_id = index.substr(0, 7);
481     } else {
482         field_id = index.substr(0, 12);
483     }
484     if (1 == fields_in_use[field_id]) {
485         // clear inputs, but don't delete
486         $(":input.input_marceditor", original).each(function(){
487             // thanks to http://www.learningjquery.com/2007/08/clearing-form-data for
488             // hint about clearing selects correctly
489             var type = this.type;
490             var tag = this.tagName.toLowerCase();
491             if (type == 'text' || type == 'password' || tag == 'textarea') {
492                 this.value = "";
493             } else if (type == 'checkbox' || type == 'radio') {
494                 this.checked = false;
495             } else if (tag == 'select') {
496                 this.selectedIndex = -1;
497             }
498         });
499         $(":input.indicator", original).val("");
500     } else {
501         original.parentNode.removeChild(original);
502         fields_in_use[field_id]--;
503     }
504 }
505
506 /**
507  * This function create a random number
508  */
509 function CreateKey(){
510     return parseInt(Math.random() * 100000);
511 }
512
513 /**
514  * This function allows to move a subfield up by clickink on the 'up' button .
515  */
516 function upSubfield(index) {
517     try{
518         var line = document.getElementById(index); // get the line where the user has clicked.
519     } catch(e) {
520         return; // this line doesn't exist...
521     }
522     var tag = line.parentNode; // get the dad of this line. (should be "<div id='tag_...'>")
523     
524     // getting all subfields for this tag
525     var subfields = tag.getElementsByTagName('div');
526     var subfieldsLength = subfields.length;
527     
528     if(subfieldsLength<=1) return; // nothing to do if there is just one subfield.
529     
530     // among all subfields 
531     for(var i=0;i<subfieldsLength;i++){ 
532         if(subfields[i].getAttribute('id') == index){ //looking for the subfield which is clicked :
533             if(i==1){ // if the clicked subfield is on the top
534                 tag.appendChild(subfields[1]);
535                 return;
536             } else {
537                 var lineAbove = subfields[i-1];
538                 tag.insertBefore(line,lineAbove);
539                 return;
540             }
541         }
542     }
543 }
544
545 function unHideSubfield(index,labelindex) { // FIXME :: is it used ?
546     subfield = document.getElementById(index);
547     subfield.style.display = 'block';
548     label = document.getElementById(labelindex);
549     label.style.display='none'; 
550 }
551 //]]>
552 </script>
553 <link type="text/css" rel="stylesheet" href="<!-- TMPL_VAR NAME="themelang" -->/css/addbiblio.css" />
554 </head>
555 <body>
556 <div id="yui-cms-loading">
557       <div id="yui-cms-float">
558           Loading, please wait...
559       </div>
560   </div>
561 <script type="text/javascript" src="<!-- TMPL_VAR name="themelang" -->/lib/yui/plugins/loading-min.js"></script>
562 <script type="text/javascript">
563 //<![CDATA[
564 (function() {
565         // configuring the loading mask
566         YAHOO.widget.Loading.config({
567                 opacity: 0.8
568         });
569 })();
570 //]]>
571 </script>
572 <!-- TMPL_INCLUDE NAME="header.inc" -->
573 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/cataloguing/addbooks.pl">Cataloging</a>  &rsaquo; <!-- TMPL_IF NAME="biblionumber" -->Editing <em><!-- TMPL_VAR NAME="title" escape="html" --></em> (Record Number <!-- TMPL_VAR name="biblionumber" -->)<!-- TMPL_ELSE -->Add MARC Record<!-- /TMPL_IF --></div>
574
575 <div id="doc" class="yui-t7">
576
577 <div id="bd">
578         <div id="yui-main">
579         <div class="yui-g">
580
581
582
583 <h1><!-- TMPL_IF NAME="biblionumber" -->Editing <em><!-- TMPL_VAR NAME="title" escape="html" --></em> (Record Number <!-- TMPL_VAR name="biblionumber" -->)</h1><!-- TMPL_ELSE -->Add MARC Record</h1><!-- /TMPL_IF -->
584
585 <!-- TMPL_UNLESS name="number" -->
586     <!-- show duplicate warning on tab 0 only -->
587         <!-- TMPL_IF name="duplicatebiblionumber" -->
588                     <div class="dialog alert">
589                         <h4>Duplicate Record suspected</h4>
590                         <p>Is this a duplicate of <a href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=<!-- TMPL_VAR name="duplicatebiblionumber" -->" onclick="openWindow('../MARCdetail.pl?biblionumber=<!-- TMPL_VAR name="duplicatebiblionumber" -->&amp;popup=1', 'Duplicate biblio'; return false;)"><!-- TMPL_VAR name="duplicatetitle" --></a>?</p>
591                         <form action="/cgi-bin/koha/cataloguing/additem.pl" method="get">
592                             <input type="hidden" name="biblionumber" value="<!-- TMPL_VAR name="duplicatebiblionumber" -->" />
593                             <input type="submit" class="edit" value="Yes: Edit existing items" />
594                         </form>
595                         <form action="/cgi-bin/koha/cataloguing/addbiblio.pl" method="get">
596                             <input type="submit" class="save" onclick="confirmnotdup(); return false;" value="No: Save as New Record" />
597                         </form>
598                     </div>
599         <!-- /TMPL_IF -->
600     <!-- /TMPL_UNLESS -->
601
602 <!--TMPL_IF Name="done"-->
603     <script type="text/javascript">
604         opener.document.forms['f'].biblionumber.value=<!--TMPL_VAR Name="biblionumber"-->;
605         opener.document.forms['f'].title.value='<!--TMPL_VAR Name="title" ESCAPE="HTML"-->';
606         window.close();
607     </script>
608 <!--TMPL_ELSE-->
609     <form method="post" name="f" id="f" action="/cgi-bin/koha/cataloguing/addbiblio.pl" onsubmit="return Check();">
610         <input type="hidden" value="0" id="confirm_not_duplicate" name="confirm_not_duplicate" />
611 <!-- /TMPL_IF -->
612         
613 <div id="toolbar">
614
615 <script type="text/javascript">
616         //<![CDATA[
617
618         // prepare DOM for YUI Toolbar
619
620          $(document).ready(function() {
621                 $("#z3950searchc").empty();
622             yuiToolbar();
623          });
624
625         // YUI Toolbar Functions
626
627         function yuiToolbar() {
628             new YAHOO.widget.Button("addbiblio");
629                 new YAHOO.widget.Button({
630                                             id: "z3950search", 
631                                             type: "button", 
632                                             label: _("z39.50 Search"), 
633                                             container: "z3950searchc",
634                                                                                         onclick: {fn:function(){PopupZ3950()}}
635                                         });
636         }
637
638         //]]>
639         </script>
640
641                 <ul class="toolbar">
642                         <li><input id="addbiblio" type="submit" value="Save" /></li>
643                         <li id="z3950searchc"><input type="button" id="z3950search" value="z39.50 Search" onclick="PopupZ3950(); return false;" /></li>
644                         <li id="changeframework"><label for="Frameworks">Change framework: </label>
645                         <select name="Frameworks" id="Frameworks" onchange="Changefwk(this);">
646                                         <option value="">Default</option>                
647                                                         <!-- TMPL_LOOP NAME="frameworkcodeloop" -->                                             
648                                 <option value="<!-- TMPL_VAR NAME="value"-->" <!-- TMPL_VAR NAME="selected" -->>
649                                                      <!-- TMPL_VAR NAME="frameworktext" -->                                      
650                                  </option>                          
651                                                 <!-- /TMPL_LOOP -->
652                         </select> 
653 <input type="hidden" name="op" value="addbiblio" /></li>
654                 </ul>
655 </div>
656
657 <!--TMPL_IF Name="popup"-->
658         <input type="hidden" name="mode" value="popup" />
659 <!--/TMPL_IF-->
660         <input type="hidden" name="frameworkcode" value="<!-- TMPL_VAR NAME="frameworkcode" -->" />
661         <input type="hidden" name="biblionumber" value="<!-- TMPL_VAR NAME="biblionumber" -->" />
662         <input type="hidden" name="breedingid" value="<!-- TMPL_VAR NAME="breedingid" -->" />
663
664 <div id="addbibliotabs" class="toptabs numbered">
665         <ul><!-- TMPL_LOOP name="BIG_LOOP" -->
666           <li>  <!-- TMPL_IF name="number" -->
667                 <a href="/cgi-bin/koha/cataloguing/addbiblio.pl#tab<!-- TMPL_VAR name="number" -->XX"><!-- TMPL_VAR name="number"--></a>
668             <!-- TMPL_ELSE -->
669                 <a href="/cgi-bin/koha/cataloguing/addbiblio.pl#tab<!-- TMPL_VAR name="number" -->XX"><!-- TMPL_VAR name="number"--></a>
670             <!-- /TMPL_IF --></li>
671         <!--  /TMPL_LOOP --></ul>
672
673 <!-- TMPL_LOOP name="BIG_LOOP" -->
674 <!-- hide every tab except the 1st -->
675 <!-- TMPL_IF name="number" -->
676     <div id="tab<!-- TMPL_VAR name="number" -->XX">
677 <!-- TMPL_ELSE -->
678     <div id="tab<!-- TMPL_VAR name="number" -->XX">
679 <!-- /TMPL_IF -->
680
681     
682     <!-- TMPL_LOOP NAME="innerloop" -->
683         <!-- TMPL_IF NAME="tag" -->
684         <div class="tag" id="tag_<!-- TMPL_VAR name="tag"-->_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->">
685         <div class="tag_title" id="div_indicator_tag_<!-- TMPL_VAR name="tag"-->_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->">
686             <!-- TMPL_UNLESS name="hide_marc" -->
687                 <!-- TMPL_IF NAME="advancedMARCEditor" -->
688                 <a href="#" tabindex="1" class="tagnum" title="<!-- TMPL_VAR NAME="tag_lib"--> - Click to Expand this Tag" onclick="ExpandField('tag_<!-- TMPL_VAR NAME="tag"-->_<!-- TMPL_VAR NAME='index' --><!-- TMPL_VAR NAME="random" -->'); return false;"><!-- TMPL_VAR NAME="tag" --></a>
689                 <!-- TMPL_ELSE -->
690                         <span class="tagnum" title="<!-- TMPL_VAR NAME="tag_lib" -->"><!-- TMPL_VAR NAME="tag" --></span>
691                 <!-- /TMPL_IF -->
692                 <!-- TMPL_IF NAME="fixedfield" -->
693                         <input tabindex="1" class="indicator flat" type="text" style="display:none;" name="tag_<!-- TMPL_VAR NAME="tag" -->_indicator1_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->" size="1" maxlength="1" value="<!-- TMPL_VAR NAME="indicator1" -->" />
694                         <input tabindex="1" class="indicator flat" type="text" style="display:none;" name="tag_<!-- TMPL_VAR NAME="tag" -->_indicator2_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->" size="1" maxlength="1" value="<!-- TMPL_VAR NAME="indicator2" -->" />
695                 <!-- TMPL_ELSE -->
696                         <input tabindex="1" class="indicator flat" type="text" name="tag_<!-- TMPL_VAR NAME="tag" -->_indicator1_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->" size="1" maxlength="1" value="<!-- TMPL_VAR NAME="indicator1" -->" />
697                         <input tabindex="1" class="indicator flat" type="text" name="tag_<!-- TMPL_VAR NAME="tag" -->_indicator2_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->" size="1" maxlength="1" value="<!-- TMPL_VAR NAME="indicator2" -->" />
698                 <!-- /TMPL_IF --> -
699             <!-- TMPL_ELSE -->
700                 <!-- TMPL_IF NAME="fixedfield" -->
701                     <input tabindex="1" type="hidden" name="tag_<!-- TMPL_VAR NAME="tag" -->_indicator1_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->" value="<!-- TMPL_VAR NAME="indicator1" -->" />
702                     <input tabindex="1" type="hidden" name="tag_<!-- TMPL_VAR NAME="tag" -->_indicator2_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->" value="<!-- TMPL_VAR NAME="indicator2" -->" />
703                 <!-- TMPL_ELSE -->
704                     <input tabindex="1" type="hidden" name="tag_<!-- TMPL_VAR NAME="tag" -->_indicator1_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->" value="<!-- TMPL_VAR NAME="indicator1" -->" />
705                     <input tabindex="1" type="hidden" name="tag_<!-- TMPL_VAR NAME="tag" -->_indicator2_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->" value="<!-- TMPL_VAR NAME="indicator2" -->" />
706                 <!-- /TMPL_IF -->
707             <!-- /TMPL_UNLESS -->
708
709             <!-- TMPL_UNLESS NAME="advancedMARCEditor" -->
710                     <a href="#" tabindex="1" class="expandfield" onclick="ExpandField('tag_<!-- TMPL_VAR name="tag"-->_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->'); return false;" title="Click to Expand this Tag"><!-- TMPL_VAR NAME="tag_lib" --></a>
711             <!-- /TMPL_UNLESS -->
712             <!-- TMPL_IF name="repeatable" -->
713                 <a href="#" tabindex="1" class="buttonPlus" onclick="CloneField('tag_<!-- TMPL_VAR name="tag"-->_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->'); return false;" title="Repeat this Tag">+</a>
714             <!-- /TMPL_IF -->
715             <!-- TMPL_UNLESS name="mandatory" -->
716                 <a href="#" tabindex="1" class="buttonMinus" onclick="UnCloneField('tag_<!-- TMPL_VAR name="tag"-->_<!-- TMPL_VAR NAME='index'--><!-- TMPL_VAR name="random" -->'); return false;" title="Delete this Tag">&#8722;</a>
717             <!-- /TMPL_UNLESS -->
718             
719         </div>
720         
721         <!-- TMPL_LOOP NAME="subfield_loop" -->
722             <!--  One line on the marc editor -->
723             <div class="subfield_line" style="<!-- TMPL_VAR NAME='visibility' -->; float: left; clear: left; width: 100%;" id="subfield<!-- TMPL_VAR NAME='tag' --><!-- TMPL_VAR NAME='subfield' --><!-- TMPL_VAR name="random" -->">
724             
725                 <!--TMPL_UNLESS NAME="advancedMARCEditor" -->
726                     <label for="tag_<!-- TMPL_VAR NAME='tag'-->_subfield_<!--  TMPL_VAR NAME='subfield'-->_<!-- TMPL_VAR NAME='index'-->_<!-- TMPL_VAR NAME='index_subfield'-->" <!-- TMPL_IF NAME="fixedfield" --> style="display:none;" <!-- /TMPL_IF --> class="labelsubfield">
727                 <!-- /TMPL_UNLESS --> 
728                 
729                 <!-- TMPL_UNLESS name="hide_marc" -->
730                 <span class="subfieldcode"><!-- TMPL_IF NAME="fixedfield" --> 
731                         <img class="buttonUp" style="display:none;" src="<!-- TMPL_VAR NAME="themelang" -->/../img/up.png" onclick="upSubfield('subfield<!-- TMPL_VAR NAME='tag' --><!-- TMPL_VAR NAME='subfield' --><!-- TMPL_VAR name="random" -->')" alt="Move Up" title="Move Up" />
732                     <!-- TMPL_ELSE -->
733                         <img class="buttonUp" src="<!-- TMPL_VAR NAME="themelang" -->/../img/up.png" onclick="upSubfield('subfield<!-- TMPL_VAR NAME='tag' --><!-- TMPL_VAR NAME='subfield' --><!-- TMPL_VAR name="random" -->')" alt="Move Up" title="Move Up" />
734                     <!-- /TMPL_IF -->
735                         <input title="<!-- TMPL_VAR NAME='marc_lib_plain' -->" style=" <!-- TMPL_IF NAME="fixedfield" -->display:none; <!-- /TMPL_IF -->border:0;" type="text" tabindex="0" name="tag_<!-- TMPL_VAR NAME='tag'-->_code_<!--  TMPL_VAR NAME='subfield'-->_<!-- TMPL_VAR NAME='index'-->_<!-- TMPL_VAR NAME='index_subfield'-->" value="<!-- TMPL_VAR NAME="subfield" -->" size="1" maxlength="1" class="flat" />
736  </span>
737                 <!-- TMPL_ELSE -->
738                     <input type="hidden" name="tag_<!-- TMPL_VAR NAME='tag'-->_code_<!--  TMPL_VAR NAME='subfield'-->_<!-- TMPL_VAR NAME='index'-->_<!-- TMPL_VAR NAME='index_subfield'-->" value="<!-- TMPL_VAR NAME="subfield" -->" />
739  </span>
740                 <!-- /TMPL_UNLESS -->
741             
742                 <!-- TMPL_UNLESS NAME="advancedMARCEditor" -->
743                     <!-- TMPL_IF name="mandatory" --><span class="subfield subfield_mandatory"><!-- TMPL_ELSE --><span class="subfield"><!-- /TMPL_IF -->
744                         <!-- TMPL_VAR NAME="marc_lib_plain" -->
745                     </span>
746                     </label>
747                 <!-- /TMPL_UNLESS -->
748                 
749                 <!-- TMPL_VAR NAME="marc_value" -->
750                 
751                 <!-- TMPL_IF NAME="repeatable" -->
752                     <span class="buttonPlus" onclick="CloneSubfield('subfield<!-- TMPL_VAR NAME='tag' --><!-- TMPL_VAR NAME='subfield' --><!-- TMPL_VAR name="random" -->')">+</span>
753                 <!-- /TMPL_IF -->
754                 <!-- TMPL_UNLESS NAME="mandatory" -->
755                     <span class="buttonMinus" onclick="UnCloneField('subfield<!-- TMPL_VAR NAME='tag' --><!-- TMPL_VAR NAME='subfield' --><!-- TMPL_VAR name="random" -->')">&#8722;</span>
756                 <!-- /TMPL_UNLESS -->
757                 
758             </div>
759             <!-- End of the line -->
760             
761         <!-- /TMPL_LOOP -->
762         </div>
763         <!-- /TMPL_IF --><!-- tag -->
764     <!-- /TMPL_LOOP -->
765     </div>
766 <!-- /TMPL_LOOP -->
767 </div>
768 </form>
769
770 </div>
771 </div>
772 </div>
773
774 <!-- TMPL_INCLUDE NAME="intranet-bottom.inc" -->