4 [% INCLUDE 'doc-head-open.inc' %]
5 <title>Koha › Cataloging › [% IF ( biblionumber ) %]Editing [% title | html %] (Record number [% biblionumber | html %])[% ELSE %]Add MARC record[% END %]</title>
6 [% INCLUDE 'doc-head-close.inc' %]
7 [% Asset.js("lib/hc-sticky.js") | $raw %]
8 [% Asset.js("js/cataloging.js") | $raw %]
9 [% INCLUDE 'strings.inc' %]
10 [% Asset.js("js/browser.js") | $raw %]
12 var browser = KOHA.browser('[% searchid | html %]', parseInt('[% biblionumber | html %]', 10));
15 $(window).load(function(){
19 $(document).ready(function() {
21 [% IF bib_doesnt_exist %]
22 $("#addbibliotabs").hide();
26 var $tabs = $('#addbibliotabs').tabs().bind('show.ui-tabs', function(e, ui) {
27 $("#"+ui.panel.id+" input:eq(0)").focus();
29 $( "ul.sortable_field", $tabs ).sortable({
31 containment: $("#addbibliotabs")
33 $( "ul.sortable_subfield", $tabs ).sortable({
39 link = $("a[href='#[% tab | html %]']");
43 Sticky = $("#toolbar");
46 stickyClass: "floating"
49 /* check cookie to hide/show marcdocs*/
50 if($.cookie("marcdocs_[% borrowernumber | html %]") == 'hide'){
51 toggleMARCdocLinks(false);
53 toggleMARCdocLinks(true);
56 $("#marcDocsSelect").click(function(){
57 if($.cookie("marcdocs_[% borrowernumber | html %]") == 'hide'){
58 toggleMARCdocLinks(true);
60 toggleMARCdocLinks(false);
64 /* check cookie to hide/show marc tags*/
65 var marctags_cookie = $.cookie("marctags_[% borrowernumber | html %]");
66 if( marctags_cookie == 'hide'){
67 toggleMARCTagLinks(false);
68 } else if( marctags_cookie == 'show'){
69 toggleMARCTagLinks(true)
71 [% UNLESS Koha.Preference("hide_marc") %]
72 toggleMARCTagLinks(true)
74 toggleMARCTagLinks(false);
78 $("#marcTagsSelect").click(function(){
79 if( $.cookie("marctags_[% borrowernumber | html %]") == 'hide'){
80 toggleMARCTagLinks(true)
82 toggleMARCTagLinks(false);
86 [%# Only ask for a confirmation if it is an edit %]
87 $("#z3950search").click(function(){
89 if (confirm(_("Please note that this external search could replace the current record."))){
97 $("#saverecord").click(function(){
98 $(".btn-group").removeClass("open");
103 $("#saveandview").click(function(){
104 $(".btn-group").removeClass("open");
109 $("#saveanditems").click(function(){
110 $(".btn-group").removeClass("open");
114 $("#saveandcontinue").click(function(){
115 $(".btn-group").removeClass("open");
116 var tab = $("#addbibliotabs li.ui-tabs-active:first a").attr('href');
117 tab = tab.replace('#', '');
118 $("#current_tab").val(tab);
119 redirect("just_save", tab);
123 $( '#switcheditor' ).click( function() {
124 var breedingid = [% breedingid || "null" | html %];
126 if ( !confirm( breedingid ? _("This record cannot be transferred to the advanced editor. Continue?") : _("Any changes will not be saved. Continue?") ) ) return false;
128 $.cookie( 'catalogue_editor_[% logged_in_user.borrowernumber | html %]', 'advanced', { expires: 365, path: '/' } );
130 var biblionumber = [% biblionumber || "null" | html %];
132 if ( biblionumber ) {
133 window.location = '/cgi-bin/koha/cataloguing/editor.pl#catalog/' + biblionumber;
135 window.location = '/cgi-bin/koha/cataloguing/editor.pl';
140 $(".change-framework").on("click", function(){
141 var frameworkcode = $(this).data("frameworkcode");
142 $("#frameworkcode").val( frameworkcode );
146 $(".toolbar-tabs a").on("click",function(e){
148 selectTab( $(this ) );
151 $(".tag_anchor").on("click", function(e){
153 var toolbar_height = $("#toolbar").outerHeight();
154 $(".tag_anchor").removeClass("selected");
155 $(this).addClass("selected");
156 var link = this.href;
157 var linkid = link.substring( link.indexOf("#") + 1 );
158 var dest = $("#" + linkid );
159 var yoffset = dest.offset();
160 window.scrollTo( 0, yoffset.top - toolbar_height - 20 );
165 function selectTab( tablink ){
166 $(".toolbar-tabs li").removeClass("selected");
167 tablink.parent().addClass("selected");
168 var tabid = tablink.data("tabid");
169 $('#addbibliotabs').selectTabByID("#tab" + tabid + "XX");
170 $(".tag_anchors").removeClass("tab_selected").hide();
171 $(".tag_anchors_" + tabid ).addClass("tab_selected").show();
174 function redirect(dest){
175 $("#redirect").attr("value",dest);
179 [% IF ( CAN_user_editcatalogue_edit_items ) %]
180 var onOption = function () {
185 function confirmnotdup(redirect){
186 $("#confirm_not_duplicate").attr("value","1");
187 $("#redirect").attr("value",redirect);
191 function Dopop(link,i) {
192 defaultvalue = document.getElementById(i).value;
193 window.open(link+"&result="+defaultvalue,"valuebuilder",'width=700,height=550,toolbar=false,scrollbars=yes');
197 * this function open a popup to search on z3950 server.
199 function PopupZ3950() {
200 var strQuery = GetZ3950Terms();
202 window.open("/cgi-bin/koha/cataloguing/z3950_search.pl?biblionumber=[% biblionumber | html %]"+strQuery,"z3950search",'width=740,height=450,location=yes,toolbar=no,scrollbars=yes,resize=yes');
206 function PopupMARCFieldDoc(field) {
207 [% IF Koha.Preference('marcfielddocurl') %]
208 var docurl = "[% Koha.Preference('marcfielddocurl').replace('"','"') | html %]";
209 docurl = docurl.replace("{MARC}", "[% marcflavour | html %]");
210 docurl = docurl.replace("{FIELD}", ""+field);
211 docurl = docurl.replace("{LANG}", "[% lang | html %]");
213 [% ELSIF ( marcflavour == 'MARC21' ) %]
214 _MARC21FieldDoc(field);
215 [% ELSIF ( marcflavour == 'UNIMARC' ) %]
216 _UNIMARCFieldDoc(field);
220 function _MARC21FieldDoc(field) {
222 window.open("http://www.loc.gov/marc/bibliographic/bdleader.html");
223 } else if (field >= 90 && field <= 99 ){
224 window.open("http://www.loc.gov/marc/bibliographic/bd09x.html");
225 } else if (field >= 590 && field <= 599 ){
226 window.open("http://www.loc.gov/marc/bibliographic/bd59x.html");
227 } else if (field >= 690 && field <= 699 ){
228 window.open("http://www.loc.gov/marc/bibliographic/bd69x.html");
229 } else if (field < 900) {
230 window.open("http://www.loc.gov/marc/bibliographic/bd" + ("000"+field).slice(-3) + ".html");
232 window.open("http://www.loc.gov/marc/bibliographic/bd9xx.html");
236 function _UNIMARCFieldDoc(field) {
237 /* http://archive.ifla.org/VI/3/p1996-1/ is an outdated version of UNIMARC, but
238 seems to be the only version available that can be linked to per tag. More recent
239 versions of the UNIMARC standard are available on the IFLA website only as
244 url = "http://archive.ifla.org/VI/3/p1996-1/uni.htm";
246 var first = field.substring(0,1);
247 url = "http://archive.ifla.org/VI/3/p1996-1/uni" + first + ".htm#";
248 if (first == 0) url = url + "b";
250 ? "http://archive.ifla.org/VI/3/p1996-1/uni9.htm"
257 * Functions to hide/show marc docs and tags links
260 function toggleMARCdocLinks(flag){
262 $(".marcdocs").show();
263 $.cookie("marcdocs_[% borrowernumber | html %]",'show', { path: "/", expires: 365 });
264 $("#marcDocsSelect i").addClass('fa-check-square-o').removeClass('fa-square-o');
266 $(".marcdocs").hide();
267 $.cookie("marcdocs_[% borrowernumber | html %]",'hide', { path: "/", expires: 365 });
268 $("#marcDocsSelect i").removeClass('fa-check-square-o').addClass('fa-square-o');
272 function toggleMARCTagLinks(flag){
275 $(".subfieldcode").show();
276 $.cookie("marctags_[% borrowernumber | html %]",'show', { path: "/", expires: 365 });
277 $("#marcTagsSelect i").addClass('fa-check-square-o').removeClass('fa-square-o');
280 $(".subfieldcode").hide();
281 $.cookie("marctags_[% borrowernumber | html %]",'hide', { path: "/", expires: 365 });
282 $("#marcTagsSelect i").removeClass('fa-check-square-o').addClass('fa-square-o');
287 * check if mandatory/important subfields are written
288 * @param mandatory true to check for mandatories, false for importants
290 function AreFieldsNotOk (mandatory = true) {
291 var fields = new Array();
292 var subfields = new Array();
293 var tab = new Array();
294 var label = new Array();
296 var tabflag= new Array();
298 var notFilledClass = "subfield_not_filled";
301 [% FOREACH BIG_LOO IN BIG_LOOP %]
302 [% FOREACH innerloo IN BIG_LOO.innerloop %]
303 [% IF ( innerloo.mandatory ) %]
304 fields.push(new Array("[% innerloo.tag | html %]","[% innerloo.index | html %][% innerloo.random | html %]","[% innerloo.index | html %]"));
306 [% FOREACH subfield_loo IN innerloo.subfield_loop %]
307 [% IF ( subfield_loo.mandatory ) %]subfields.push("[% subfield_loo.id | html %]");
308 tab.push("[% BIG_LOO.number | html %]");
309 label.push("[% subfield_loo.marc_lib | $raw %]");
314 StrAlert = _("Can't save this record because the following field aren't filled:");
316 [% FOREACH BIG_LOO IN BIG_LOOP %]
317 [% FOREACH innerloo IN BIG_LOO.innerloop %]
318 [% IF ( innerloo.important ) %]
319 fields.push(new Array("[% innerloo.tag | html %]","[% innerloo.index | html %][% innerloo.random | html %]","[% innerloo.index | html %]"));
321 [% FOREACH subfield_loo IN innerloo.subfield_loop %]
322 [% IF ( subfield_loo.important ) %]subfields.push("[% subfield_loo.id | html %]");
323 tab.push("[% BIG_LOO.number | html %]");
324 label.push("[% subfield_loo.marc_lib | $raw %]");
329 StrAlert = _("A few important fields are not filled:");
330 notFilledClass = "important_subfield_not_filled";
334 for(var i=0,len=subfields.length; i<len ; i++){
335 var tag=subfields[i].substr(4,3);
336 var subfield=subfields[i].substr(17,1);
337 var tagnumber=subfields[i].substr(19,subfields[i].lastIndexOf("_")-19);
338 if (tabflag[tag+subfield+tagnumber] == null) {
339 tabflag[tag+subfield+tagnumber]=new Array();
340 tabflag[tag+subfield+tagnumber][0]=0;
342 if( tabflag[tag+subfield+tagnumber][0] != 1 && (document.getElementById(subfields[i]) != null && ! document.getElementById(subfields[i]).value || document.getElementById(subfields[i]) == null)){
343 tabflag[tag+subfield+tagnumber][0] = 0 + tabflag[tag+subfield+tagnumber] ;
344 document.getElementById(subfields[i]).setAttribute('class','input_marceditor noEnterSubmit ' + notFilledClass);
345 $('#' + subfields[i]).focus();
346 tabflag[tag+subfield+tagnumber][1]=label[i];
347 tabflag[tag+subfield+tagnumber][2]=tab[i];
349 tabflag[tag+subfield+tagnumber][0] = 1;
352 for (var tagsubfieldid in tabflag){
353 if (tabflag[tagsubfieldid][0]==0){
354 var tag=tagsubfieldid.substr(0,3);
355 var subfield=tagsubfieldid.substr(3,1);
356 StrAlert += "\t* "+_("tag %s subfield %s %s in tab %s").format(tag, subfield, tabflag[tagsubfieldid][1], tabflag[tagsubfieldid][2]) + "\n";
357 //StrAlert += "\t* "+label[i]+_(" in tab ")+tab[i]+"\n";
362 /* Check for mandatories/importants field(not subfields) */
363 for(var i=0,len=fields.length; i<len; i++){
366 divid = "tag_" + arr[0] + "_" + arr[1];
367 varegexp = new RegExp("^tag_" + arr[0] + "_code_");
369 if(parseInt(arr[0]) >= 10){
370 elem = document.getElementById(divid);
371 eleminputs = elem.getElementsByTagName('input');
373 for(var j=0,len2=eleminputs.length; j<len2; j++){
375 if(eleminputs[j].name.match(varegexp) && eleminputs[j].value){
376 inputregexp = new RegExp("^tag_" + arr[0] + "_subfield_" + eleminputs[j].value + "_" + arr[2]);
378 for( var k=0; k<len2; k++){
379 if(eleminputs[k].id.match(inputregexp) && eleminputs[k].value){
384 elemselect = elem.getElementsByTagName('select');
385 for( var k=0; k<elemselect.length; k++){
386 if(elemselect[k].id.match(inputregexp) && elemselect[k].value){
393 elemtextareas = elem.getElementsByTagName('textarea');
394 for(var j=0,len2=elemtextareas.length; j<len2; j++){
395 // this bit assumes that the only textareas in this context would be for subfields
396 if (elemtextareas[j].value) {
408 StrAlert += _("Field %s is mandatory, at least one of its subfields must be filled.").format(arr[0]);
410 StrAlert += _("Field %s is important, at least one of its subfields must be filled.").format(arr[0]);
429 var StrAlert = AreFieldsNotOk();
431 var StrWarning = AreFieldsNotOk(false);
433 StrWarning += "\n" + _("Are you sure you want to save?");
434 var r=confirm(StrWarning);
448 * check if z3950 mandatories are set or not
450 function GetZ3950Terms(){
451 var frameworkcode = document.getElementById("frameworkcode").value;
452 var strQuery = "&frameworkcode=" + frameworkcode;
453 var mandatories = new Array();
454 var mandatories_label = new Array();
455 [% FOREACH BIG_LOO IN BIG_LOOP %]
456 [% FOREACH innerloo IN BIG_LOO.innerloop %]
457 [% FOREACH subfield_loo IN innerloo.subfield_loop %]
458 [% IF ( subfield_loo.z3950_mandatory ) %]
459 mandatories.push("[% subfield_loo.id | html %]");
460 mandatories_label.push("[% subfield_loo.z3950_mandatory | html %]");
466 for(var i=0,len=mandatories.length; i<len ; i++){
467 var field_value = document.getElementById(mandatories[i]).value;
469 strQuery += "&"+mandatories_label[i]+"="+field_value;
475 function Changefwk() {
477 f.op.value = "[% op | html %]";
478 f.biblionumber.value = "[% biblionumberdata | html %]";
479 f.changed_framework.value = "changed";
484 [% Asset.css("css/addbiblio.css") | $raw %]
486 [% INCLUDE 'select2.inc' %]
488 $(document).ready(function() {
489 $('.subfield_line select').select2();
494 <body id="cat_addbiblio" class="cat">
497 <div>Loading, please wait...</div>
500 [% INCLUDE 'header.inc' %]
502 <div id="breadcrumbs">
503 <a href="/cgi-bin/koha/mainpage.pl">Home</a> ›
504 <a href="/cgi-bin/koha/cataloguing/addbooks.pl">Cataloging</a> ›
505 [% IF ( biblionumber ) %]
506 Editing <em>[% title | html %]</em> (Record number [% biblionumber | html %])
512 <div class="main container-fluid">
514 <div class="col-md-10 col-md-offset-1">
517 [% IF ( biblionumber ) %]
518 Editing <em>[% title | html %]</em> (Record number [% biblionumber | html %])
520 Add MARC record [% IF (circborrowernumber) %]<em>(fast cataloging)</em>[% END %]
524 [% UNLESS ( number ) %]
525 <!-- show duplicate warning on tab 0 only -->
526 [% IF ( duplicatebiblionumber ) %]
527 <div class="dialog alert">
528 <h3>Duplicate record suspected</h3>
529 <p>Is this a duplicate of <a href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% duplicatebiblionumber | uri %]" onclick="openWindow('/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% duplicatebiblionumber | uri %]&popup=1', 'DuplicateBiblio','800','600'); return false;">[% duplicatetitle | html %] <i class="fa fa-window-restore"></i></a> ?</p>
530 [% IF ( CAN_user_editcatalogue_edit_items ) %]
531 <form action="/cgi-bin/koha/cataloguing/additem.pl" method="get">
532 <input type="hidden" name="biblionumber" value="[% duplicatebiblionumber | html %]" />
533 <button type="submit" class="new"><i class="fa fa-fw fa-pencil"></i> Yes, edit existing items</button>
536 <form action="/cgi-bin/koha/catalogue/detail.pl" method="get">
537 <input type="hidden" name="biblionumber" value="[% duplicatebiblionumber | html %]" />
538 <input type="submit" value="Yes: View existing items" />
541 <form action="/cgi-bin/koha/cataloguing/addbiblio.pl" method="get">
542 [% IF ( CAN_user_editcatalogue_edit_items ) %]
543 <button type="submit" class="new" onclick="confirmnotdup('items'); return false;"><i class="fa fa-fw fa-save"></i> No, save as new record</button>
545 <button type="submit" class="new" onclick="confirmnotdup('view'); return false;"><i class="fa fa-fw fa-save"></i> No, save as new record</button>
548 </div> <!-- /.dialog.alert -->
549 [% END # /IF duplicatebiblionumber %]
550 [% END # /UNLESS number %]
554 opener.document.forms['f'].biblionumber.value=[% biblionumber | html %];
555 opener.document.forms['f'].title.value='[% title | html %]';
559 <form method="post" name="f" id="f" action="/cgi-bin/koha/cataloguing/addbiblio.pl" onsubmit="return Check();">
560 <input type="hidden" value="[% IF ( biblionumber ) %]view[% ELSE %]items[% END %]" id="redirect" name="redirect" />
561 <input type="hidden" value="" id="current_tab" name="current_tab" />
562 <input type="hidden" value="0" id="confirm_not_duplicate" name="confirm_not_duplicate" />
565 <div id="toolbar" class="btn-toolbar">
566 [% IF CAN_user_editcatalogue_edit_items or ( frameworkcode == 'FA' and CAN_user_editcatalogue_fast_cataloging ) %]
567 [% IF (circborrowernumber) %][%# fast cataloging must lead to items %]
568 <!-- Action is under fast cataloging - Save button redirecting to items -->
569 <div class="btn-group"><a href="#" id="saveanditems" class="btn btn-default"><i class="fa fa-save"></i> Save</a></div>
571 <!-- Not using fast cataloging - Display split menu -->
572 <div class="btn-group">
573 <button class="btn btn-default" id="saverecord"><i class="fa fa-save"></i> Save</button>
574 <button class="btn btn-default dropdown-toggle" data-toggle="dropdown">
575 <span class="caret"></span>
577 <ul class="dropdown-menu">
578 <li><a id="saveandview" href="#">Save and view record</a></li>
579 <li><a id="saveanditems" href="#">Save and edit items</a></li>
580 <li><a id="saveandcontinue" href="#">Save and continue editing</a></li>
585 <!-- User cannot edit items - single button redirecting to view -->
586 <div class="btn-group"><a href="#" id="saveandview" class="btn btn-default"><i class="fa fa-save"></i> Save</a></div>
587 [% END # /IF CAN_user_editcatalogue_edit_items %]
589 [% UNLESS (circborrowernumber) %][%# Hide in fast cataloging %]
590 <div class="btn-group"><a class="btn btn-default" href="#" id="z3950search"><i class="fa fa-search"></i> Z39.50/SRU search</a></div>
593 <div class="btn-group">
594 <button class="btn btn-default dropdown-toggle" data-toggle="dropdown"><i class="fa fa-cog"></i> Settings <span class="caret"></span></button>
595 <ul id="settings-menu" class="dropdown-menu">
596 [% IF Koha.Preference( 'EnableAdvancedCatalogingEditor' ) == 1 && CAN_user_editcatalogue_advanced_editor %]
597 <li><a href="#" id="switcheditor">Switch to advanced editor</a></li>
599 [% IF marcflavour != 'NORMARC' AND NOT advancedMARCEditor %]
601 <a href="#" id="marcDocsSelect"><i class="fa fa-check-square-o"></i> Show MARC tag documentation links</a>
603 <a href="#" id="marcTagsSelect"><i class="fa fa-check-square-o"></i> Show tags</a>
606 <li class="dropdown-header">Change framework</li>
608 <a href="#" class="change-framework" data-frameworkcode="">
609 [% IF ( frameworkcode ) %]
610 <i class="fa fa-fw"> </i>
612 <i class="fa fa-fw fa-check"></i>
617 [% FOREACH framework IN frameworks%]
619 <a href="#" class="change-framework" data-frameworkcode="[% framework.frameworkcode | html %]">
620 [% IF framework.frameworkcode == frameworkcode %]
621 <i class="fa fa-fw fa-check"></i>
623 <i class="fa fa-fw"> </i>
625 [% framework.frameworktext | html %]
629 </ul> <!-- /#settings-menu -->
630 </div> <!-- /.btn-group -->
631 [% UNLESS (circborrowernumber) %][%# Hide in fast cataloging %]
632 [% IF (biblionumber) %]
633 [% IF ( BiblioDefaultViewmarc ) %]
634 <div class="btn-group">
635 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
637 [% ELSIF ( BiblioDefaultViewlabeled_marc ) %]
638 <div class="btn-group">
639 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/catalogue/labeledMARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
641 [% ELSIF ( BiblioDefaultViewisbd ) %]
642 <div class="btn-group">
643 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/catalogue/ISBDdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
646 <div class="btn-group">
647 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
651 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/cataloguing/addbooks.pl">Cancel</a>
653 [% END # /UNLESS circborrowernumber %]
654 <div class="toolbar-tabs-container">
655 [% IF ( BIG_LOOP.size > 1 ) %]
656 <ul class="toolbar-tabs">
657 [%- FOREACH BIG_LOO IN BIG_LOOP -%]
659 <li class="selected">
663 <a data-tabid="[% BIG_LOO.number | html %]" href="#tab[% BIG_LOO.number | html %]XX">[% BIG_LOO.number | html %]</a>
668 <ul class="tag_anchors_list">
669 [% FOREACH BIG_LOO IN BIG_LOOP %]
670 [% IF loop.first %][% SET tab_selected = "tab_selected" %][% ELSE %][% SET tab_selected = "" %][% END %]
671 [% FOREACH innerloo IN BIG_LOO.innerloop %]
672 [% IF ( innerloo.tag ) %]
673 <li class="tag_anchors tag_anchors_[% BIG_LOO.number | html %] [% tab_selected | html %]">
674 <a class="tag_anchor" id="tag_anchor_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]" title="tag_anchor_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]" href="#div_indicator_tag_[% innerloo.tag | uri %]_[% innerloo.index | uri %][% innerloo.random | uri %]">[% innerloo.tag | uri %]</a>
681 </div> <!-- /#toolbar.btn-toolbar -->
683 [% IF bib_doesnt_exist %]
684 <div class="dialog alert">
685 The record you are trying to edit doesn't exist.<br>
686 <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>.
691 <input type="hidden" name="mode" value="popup" />
693 <input type="hidden" name="op" value="addbiblio" />
694 <input type="hidden" id="frameworkcode" name="frameworkcode" value="[% frameworkcode | html %]" />
695 <input type="hidden" name="biblionumber" value="[% biblionumber | html %]" />
696 <input type="hidden" name="breedingid" value="[% breedingid | html %]" />
697 <input type="hidden" name="changed_framework" value="" />
699 <div id="addbibliotabs" class="toptabs numbered">
701 [% FOREACH BIG_LOO IN BIG_LOOP %]
702 <li><a href="#tab[% BIG_LOO.number | uri %]XX">[% BIG_LOO.number | html %]</a></li>
706 [% FOREACH BIG_LOO IN BIG_LOOP %]
707 <div id="tab[% BIG_LOO.number | html %]XX">
709 [% IF ( BIG_LOOP.size > 1 ) %]
710 <h3>Section [% BIG_LOO.number | html %]</h3>
713 [% FOREACH innerloo IN BIG_LOO.innerloop %]
714 [% IF ( innerloo.tag ) %]
715 [% IF innerloo.tag != previous %]
716 [% IF previous != "" %]
719 [% previous = innerloo.tag %]
720 [% IF ( innerloo.repeatable ) %]
721 <ul class="sortable_field">
726 [% IF ( innerloo.repeatable ) %]
727 <li class="tag sortable_tag clearfix" id="tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]">
729 <li class="tag clearfix" id="tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]">
731 <div class="tag_title" id="div_indicator_tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]">
732 [% IF advancedMARCEditor %]
733 <a href="#" tabindex="1" class="tagnum" title="[% innerloo.tag_lib | html %] - Click to Expand this Tag" onclick="ExpandField('tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]'); return false;">[% innerloo.tag | html %]</a>
735 <span class="tagnum" title="[% innerloo.tag_lib | html %]">[% innerloo.tag | html %]</span>
736 [% IF marcflavour != 'NORMARC' %]<a href="#" class="marcdocs" onclick="PopupMARCFieldDoc('[% innerloo.tag | html %]'); return false;"> ?</a>[% END %]
739 [% IF ( innerloo.fixedfield ) %]
742 class="indicator flat"
743 style="display:none;"
744 name="tag_[% innerloo.tag | html %]_indicator1_[% innerloo.index | html %][% innerloo.random | html %]"
747 value="[% innerloo.indicator1 | html %]" />
750 class="indicator flat"
751 style="display:none;"
752 name="tag_[% innerloo.tag | html %]_indicator2_[% innerloo.index | html %][% innerloo.random | html %]"
755 value="[% innerloo.indicator2 | html %]" />
759 class="indicator flat"
760 name="tag_[% innerloo.tag | html %]_indicator1_[% innerloo.index | html %][% innerloo.random | html %]"
763 value="[% innerloo.indicator1 | html %]" />
766 class="indicator flat"
767 name="tag_[% innerloo.tag | html %]_indicator2_[% innerloo.index | html %][% innerloo.random | html %]"
770 value="[% innerloo.indicator2 | html %]" />
771 [% END # /IF innerloo.fixedfield %] -
773 [% UNLESS advancedMARCEditor %]
774 <a href="#" tabindex="1" class="expandfield" onclick="ExpandField('tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]'); return false;" title="Click to Expand this Tag">[% innerloo.tag_lib | html %]</a>
777 <span class="field_controls">
778 [% IF ( innerloo.repeatable ) %]
779 <a href="#" tabindex="1" class="buttonPlus" onclick="CloneField('tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]','0','[% advancedMARCEditor | html %]'); return false;" title="Repeat this Tag">
780 <img src="[% interface | html %]/[% theme | html %]/img/repeat-tag.png" alt="Repeat this Tag" />
783 <a href="#" tabindex="1" class="buttonMinus" onclick="UnCloneField('tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]'); return false;" title="Delete this Tag">
784 <img src="[% interface | html %]/[% theme | html %]/img/delete-tag.png" alt="Delete this Tag" />
786 </span> <!-- /.field_controls -->
787 </div> <!-- /div.tag_title -->
789 <ul class="sortable_subfield">
790 [% FOREACH subfield_loo IN innerloo.subfield_loop %]
791 <!-- One line on the marc editor -->
792 <li class="subfield_line" style="[% subfield_loo.visibility | html %]" id="subfield[% subfield_loo.tag | html %][% subfield_loo.subfield | html %][% subfield_loo.random | html %]">
793 [% UNLESS advancedMARCEditor %]
794 [% IF ( subfield_loo.fixedfield ) %]
795 <label for="tag_[% subfield_loo.tag | html %]_subfield_[% subfield_loo.subfield | html %]_[% subfield_loo.index | html %]_[% subfield_loo.index_subfield | html %]" style="display:none;" class="labelsubfield">
797 <label for="tag_[% subfield_loo.tag | html %]_subfield_[% subfield_loo.subfield | html %]_[% subfield_loo.index | html %]_[% subfield_loo.index_subfield | html %]" class="labelsubfield">
801 <span class="subfieldcode">
803 title="[% subfield_loo.marc_lib | $raw %]"
804 style=" [% IF ( subfield_loo.fixedfield ) %]display:none; [% END %]border:0;"
805 name="tag_[% subfield_loo.tag | html %]_code_[% subfield_loo.subfield | html %]_[% subfield_loo.index | html %]_[% subfield_loo.index_subfield | html %]"
806 value="[% subfield_loo.subfield | html %]"
813 [% UNLESS advancedMARCEditor %]
814 [% IF ( subfield_loo.mandatory ) %]
815 <span class="subfield subfield_mandatory">
816 [% ELSIF ( subfield_loo.important ) %]
817 <span class="subfield subfield_important">
819 <span class="subfield">
821 [% subfield_loo.marc_lib | $raw %]
826 [% SET mv = subfield_loo.marc_value %]
827 [% IF ( mv.type == 'text' ) %]
828 [% IF ( mv.readonly == 1 ) %]
829 <input type="text" id="[%- mv.id | html -%]" name="[%- mv.name | html -%]" value="[%- mv.value | html -%]" class="input_marceditor readonly" tabindex="1" size="[%- mv.size | html -%]" maxlength="[%- mv.maxlength | html -%]" readonly="readonly" />
831 <input type="text" id="[%- mv.id | html -%]" name="[%- mv.name | html -%]" value="[%- mv.value | html -%]" class="input_marceditor" tabindex="1" size="[%- mv.size | html -%]" maxlength="[%- mv.maxlength | html -%]" />
834 [% IF ( mv.authtype ) %]
835 <span class="subfield_controls"><a href="#" class="buttonDot tag_editor" onclick="openAuth(this.parentNode.parentNode.getElementsByTagName('input')[1].id,'[%- mv.authtype | html -%]','biblio'); return false;" tabindex="1" title="Tag editor">Tag editor</a></span>
837 [% ELSIF ( mv.type == 'text_complex' ) %]
838 <input type="text" id="[%- mv.id | html -%]" name="[%- mv.name | html -%]" value="[%- mv.value | html -%]" class="input_marceditor framework_plugin" tabindex="1" size="[%- mv.size | html -%]" maxlength="[%- mv.maxlength | html -%]" />
839 <span class="subfield_controls">
841 <span class="buttonDot tag_editor disabled" tabindex="-1" title="Field autofilled by plugin"></span>
843 <a href="#" id="buttonDot_[% mv.id | html %]" class="buttonDot tag_editor framework_plugin" tabindex="1" title="Tag editor">Tag editor</a>
846 [% mv.javascript | $raw %]
847 [% ELSIF ( mv.type == 'hidden' ) %]
848 <input tabindex="1" type="hidden" id="[%- mv.id | html -%]" name="[%- mv.name | html -%]" size="[%- mv.size | html -%]" maxlength="[%- mv.maxlength | html -%]" value="[%- mv.value | html -%]" />
849 [% ELSIF ( mv.type == 'textarea' ) %]
850 <textarea cols="70" rows="4" id="[%- mv.id | html -%]" name="[%- mv.name | html -%]" class="input_marceditor" tabindex="1">[%- mv.value | html -%]</textarea>
851 [% ELSIF ( mv.type == 'select' ) %]
852 <select name="[%- mv.name | html -%]" tabindex="1" size="1" class="input_marceditor" id="[%- mv.id | html -%]">
853 [% FOREACH aval IN mv.values %]
854 [% IF aval == mv.default %]
855 <option value="[%- aval | html -%]" selected="selected">[%- mv.labels.$aval | html -%]</option>
857 <option value="[%- aval | html -%]">[%- mv.labels.$aval | html -%]</option>
861 [% END # /IF (mv.type...) %]
862 [% IF ( subfield_loo.mandatory ) %]
863 <span class="required">Required</span>
864 [% ELSIF ( subfield_loo.important ) %]
865 <span class="important">Important</span>
867 <span class="subfield_controls">
868 [% IF ( subfield_loo.repeatable ) %]
869 <a href="#" class="buttonPlus" tabindex="1" onclick="CloneSubfield('subfield[% subfield_loo.tag | html %][% subfield_loo.subfield | html %][% subfield_loo.random | html %]','[% advancedMARCEditor | html %]'); return false;">
870 <img src="[% interface | html %]/[% theme | html %]/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
872 <a href="#" class="buttonMinus" tabindex="1" onclick="UnCloneField('subfield[% subfield_loo.tag | html %][% subfield_loo.subfield | html %][% subfield_loo.random | html %]'); return false;">
873 <img src="[% interface | html %]/[% theme | html %]/img/delete-subfield.png" alt="Delete" title="Delete this subfield" />
877 </li> <!-- /.subfield_line -->
878 <!-- End of the line -->
879 [% END # /FOREACH subfield_loop %]
880 </ul> <!-- /.sortable_subfield -->
881 </li> <!-- /.tag.clearfix -->
882 [% END %]<!-- if innerloo.tag -->
883 [% END # /FOREACH BIG_LOO.innerloop %]
884 </ul> <!-- /.sortable_field -->
885 </div> <!-- /#tabXXX -->
886 [% END # /FOREACH BIG_LOOP %]
887 </div><!-- /#addbibliotabs -->
889 [%# Fields for fast cataloging %]
890 <input type="hidden" name="barcode" value="[% barcode | html %]" />
891 <input type="hidden" name="branch" value="[% branch | html %]" />
892 <input type="hidden" name="circborrowernumber" value="[% circborrowernumber | html %]" />
893 <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
894 <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
895 [%# End of fields for fast cataloging %]
896 </form> <!-- /name=f -->
897 </div> <!-- /.col-md-10.col-md-offset-1 -->
898 </div> <!-- /.row -->
900 [% INCLUDE 'intranet-bottom.inc' %]