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 %]
9 var CAN_user_parameters_manage_auth_values = "[% CAN_user_parameters_manage_auth_values | html %]";
11 [% INCLUDE 'select2.inc' %]
12 [% Asset.js("js/cataloging.js") | $raw %]
13 [% Asset.js("js/browser.js") | $raw %]
15 var browser = KOHA.browser('[% searchid | html %]', parseInt('[% biblionumber | html %]', 10));
18 $(window).load(function(){
22 $(document).ready(function() {
24 [% IF bib_doesnt_exist %]
25 $("#addbibliotabs").hide();
29 var $tabs = $('#addbibliotabs').tabs().bind('show.ui-tabs', function(e, ui) {
30 $("#"+ui.panel.id+" input:eq(0)").focus();
32 $( "ul.sortable_field", $tabs ).sortable({
34 containment: $("#addbibliotabs")
36 $( "ul.sortable_subfield", $tabs ).sortable({
42 link = $("a[href='#[% tab | html %]']");
46 Sticky = $("#toolbar");
49 stickyClass: "floating"
52 /* check cookie to hide/show marcdocs*/
53 if( Cookies.get("marcdocs_[% borrowernumber | html %]") == 'hide'){
54 toggleMARCdocLinks(false);
56 toggleMARCdocLinks(true);
59 $("#marcDocsSelect").click(function(){
60 if( Cookies.get("marcdocs_[% borrowernumber | html %]") == 'hide'){
61 toggleMARCdocLinks(true);
63 toggleMARCdocLinks(false);
67 /* check cookie to hide/show marc tags*/
68 var marctags_cookie = Cookies.get("marctags_[% borrowernumber | html %]");
69 if( marctags_cookie == 'hide'){
70 toggleMARCTagLinks(false);
71 } else if( marctags_cookie == 'show'){
72 toggleMARCTagLinks(true)
74 [% UNLESS Koha.Preference("hide_marc") %]
75 toggleMARCTagLinks(true)
77 toggleMARCTagLinks(false);
81 $("#marcTagsSelect").click(function(){
82 if( Cookies.get("marctags_[% borrowernumber | html %]") == 'hide'){
83 toggleMARCTagLinks(true)
85 toggleMARCTagLinks(false);
89 $("#z3950search").click(function(){
93 $("#saverecord").click(function(){
94 $(".btn-group").removeClass("open");
99 $("#saveandview").click(function(){
100 $(".btn-group").removeClass("open");
105 $("#saveanditems").click(function(){
106 $(".btn-group").removeClass("open");
110 $("#saveandcontinue").click(function(){
111 $(".btn-group").removeClass("open");
112 var tab = $("#addbibliotabs li.ui-tabs-active:first a").attr('href');
113 tab = tab.replace('#', '');
114 $("#current_tab").val(tab);
115 redirect("just_save", tab);
119 $( '#switcheditor' ).click( function() {
120 var breedingid = [% breedingid || "null" | html %];
122 if ( !confirm( breedingid ? _("This record cannot be transferred to the advanced editor. Continue?") : _("Any changes will not be saved. Continue?") ) ) return false;
124 Cookies.set( 'catalogue_editor_[% logged_in_user.borrowernumber | html %]', 'advanced', { expires: 365, path: '/' } );
126 var biblionumber = [% biblionumber || "null" | html %];
128 if ( biblionumber ) {
129 window.location = '/cgi-bin/koha/cataloguing/editor.pl#catalog/' + biblionumber;
131 window.location = '/cgi-bin/koha/cataloguing/editor.pl';
136 $(".change-framework").on("click", function(){
137 var frameworkcode = $(this).data("frameworkcode");
138 $("#frameworkcode").val( frameworkcode );
142 $(".toolbar-tabs a").on("click",function(e){
144 selectTab( $(this ) );
147 $(".tag_anchor").on("click", function(e){
149 var toolbar_height = $("#toolbar").outerHeight();
150 $(".tag_anchor").removeClass("selected");
151 $(this).addClass("selected");
152 var link = this.href;
153 var linkid = link.substring( link.indexOf("#") + 1 );
154 var dest = $("#" + linkid );
155 var yoffset = dest.offset();
156 window.scrollTo( 0, yoffset.top - toolbar_height - 20 );
161 function selectTab( tablink ){
162 $(".toolbar-tabs li").removeClass("selected");
163 tablink.parent().addClass("selected");
164 var tabid = tablink.data("tabid");
165 $('#addbibliotabs').selectTabByID("#tab" + tabid + "XX");
166 $(".tag_anchors").removeClass("tab_selected").hide();
167 $(".tag_anchors_" + tabid ).addClass("tab_selected").show();
170 function redirect(dest){
171 $("#redirect").attr("value",dest);
175 [% IF ( CAN_user_editcatalogue_edit_items ) %]
176 var onOption = function () {
181 function confirmnotdup(redirect){
182 $("#confirm_not_duplicate").attr("value","1");
183 $("#redirect").attr("value",redirect);
187 function Dopop(link,i) {
188 defaultvalue = document.getElementById(i).value;
189 window.open(link+"&result="+defaultvalue,"valuebuilder",'width=700,height=550,toolbar=false,scrollbars=yes');
193 * this function open a popup to search on z3950 server.
195 function PopupZ3950() {
196 var strQuery = GetZ3950Terms();
198 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');
202 function PopupMARCFieldDoc(field) {
203 [% IF Koha.Preference('marcfielddocurl') %]
204 var docurl = "[% Koha.Preference('marcfielddocurl').replace('"','"') | html %]";
205 docurl = docurl.replace("{MARC}", "[% marcflavour | html %]");
206 docurl = docurl.replace("{FIELD}", ""+field);
207 docurl = docurl.replace("{LANG}", "[% lang | html %]");
209 [% ELSIF ( marcflavour == 'MARC21' ) %]
210 _MARC21FieldDoc(field);
211 [% ELSIF ( marcflavour == 'UNIMARC' ) %]
212 _UNIMARCFieldDoc(field);
216 function _MARC21FieldDoc(field) {
218 window.open("http://www.loc.gov/marc/bibliographic/bdleader.html");
219 } else if (field >= 90 && field <= 99 ){
220 window.open("http://www.loc.gov/marc/bibliographic/bd09x.html");
221 } else if (field >= 590 && field <= 599 ){
222 window.open("http://www.loc.gov/marc/bibliographic/bd59x.html");
223 } else if (field >= 690 && field <= 699 ){
224 window.open("http://www.loc.gov/marc/bibliographic/bd69x.html");
225 } else if (field < 900) {
226 window.open("http://www.loc.gov/marc/bibliographic/bd" + ("000"+field).slice(-3) + ".html");
228 window.open("http://www.loc.gov/marc/bibliographic/bd9xx.html");
232 function _UNIMARCFieldDoc(field) {
233 /* http://archive.ifla.org/VI/3/p1996-1/ is an outdated version of UNIMARC, but
234 seems to be the only version available that can be linked to per tag. More recent
235 versions of the UNIMARC standard are available on the IFLA website only as
240 url = "http://archive.ifla.org/VI/3/p1996-1/uni.htm";
242 var first = field.substring(0,1);
243 url = "http://archive.ifla.org/VI/3/p1996-1/uni" + first + ".htm#";
244 if (first == 0) url = url + "b";
246 ? "http://archive.ifla.org/VI/3/p1996-1/uni9.htm"
253 * Functions to hide/show marc docs and tags links
256 function toggleMARCdocLinks(flag){
258 $(".marcdocs").show();
259 Cookies.set("marcdocs_[% borrowernumber | html %]",'show', { path: "/", expires: 365 });
260 $("#marcDocsSelect i").addClass('fa-check-square-o').removeClass('fa-square-o');
262 $(".marcdocs").hide();
263 Cookies.set("marcdocs_[% borrowernumber | html %]",'hide', { path: "/", expires: 365 });
264 $("#marcDocsSelect i").removeClass('fa-check-square-o').addClass('fa-square-o');
268 function toggleMARCTagLinks(flag){
271 $(".subfieldcode").show();
272 Cookies.set("marctags_[% borrowernumber | html %]",'show', { path: "/", expires: 365 });
273 $("#marcTagsSelect i").addClass('fa-check-square-o').removeClass('fa-square-o');
276 $(".subfieldcode").hide();
277 Cookies.set("marctags_[% borrowernumber | html %]",'hide', { path: "/", expires: 365 });
278 $("#marcTagsSelect i").removeClass('fa-check-square-o').addClass('fa-square-o');
283 * check if mandatory/important subfields are written
284 * @param mandatory true to check for mandatories, false for importants
286 function AreFieldsNotOk (mandatory = true) {
287 var fields = new Array();
288 var subfields = new Array();
289 var tab = new Array();
290 var label = new Array();
292 var tabflag= new Array();
294 var notFilledClass = "subfield_not_filled";
297 [% FOREACH BIG_LOO IN BIG_LOOP %]
298 [% FOREACH innerloo IN BIG_LOO.innerloop %]
299 [% IF ( innerloo.mandatory ) %]
300 fields.push(new Array("[% innerloo.tag | html %]","[% innerloo.index | html %][% innerloo.random | html %]","[% innerloo.index | html %]"));
302 [% FOREACH subfield_loo IN innerloo.subfield_loop %]
303 [% IF ( subfield_loo.mandatory ) %]subfields.push("[% subfield_loo.id | html %]");
304 tab.push("[% BIG_LOO.number | html %]");
305 label.push("[% subfield_loo.marc_lib | $raw %]");
310 StrAlert = _("Can't save this record because the following field aren't filled:");
312 [% FOREACH BIG_LOO IN BIG_LOOP %]
313 [% FOREACH innerloo IN BIG_LOO.innerloop %]
314 [% IF ( innerloo.important ) %]
315 fields.push(new Array("[% innerloo.tag | html %]","[% innerloo.index | html %][% innerloo.random | html %]","[% innerloo.index | html %]"));
317 [% FOREACH subfield_loo IN innerloo.subfield_loop %]
318 [% IF ( subfield_loo.important ) %]subfields.push("[% subfield_loo.id | html %]");
319 tab.push("[% BIG_LOO.number | html %]");
320 label.push("[% subfield_loo.marc_lib | $raw %]");
325 StrAlert = _("A few important fields are not filled:");
326 notFilledClass = "important_subfield_not_filled";
330 for(var i=0,len=subfields.length; i<len ; i++){
331 var tag=subfields[i].substr(4,3);
332 var subfield=subfields[i].substr(17,1);
333 var tagnumber=subfields[i].substr(19,subfields[i].lastIndexOf("_")-19);
334 if (tabflag[tag+subfield+tagnumber] == null) {
335 tabflag[tag+subfield+tagnumber]=new Array();
336 tabflag[tag+subfield+tagnumber][0]=0;
338 if( tabflag[tag+subfield+tagnumber][0] != 1 && (document.getElementById(subfields[i]) != null && ! document.getElementById(subfields[i]).value || document.getElementById(subfields[i]) == null)){
339 tabflag[tag+subfield+tagnumber][0] = 0 + tabflag[tag+subfield+tagnumber] ;
341 var elt = document.getElementById(subfields[i]);
342 if ( elt.nodeName == 'SELECT' ) {
343 $(elt).siblings('.select2').find("span[role='combobox']").addClass(notFilledClass);
345 elt.setAttribute('class','input_marceditor noEnterSubmit ' + notFilledClass);
347 $('#' + subfields[i]).focus();
348 tabflag[tag+subfield+tagnumber][1]=label[i];
349 tabflag[tag+subfield+tagnumber][2]=tab[i];
351 tabflag[tag+subfield+tagnumber][0] = 1;
354 for (var tagsubfieldid in tabflag){
355 if (tabflag[tagsubfieldid][0]==0){
356 var tag=tagsubfieldid.substr(0,3);
357 var subfield=tagsubfieldid.substr(3,1);
358 StrAlert += "\t* "+_("tag %s subfield %s %s in tab %s").format(tag, subfield, tabflag[tagsubfieldid][1], tabflag[tagsubfieldid][2]) + "\n";
359 //StrAlert += "\t* "+label[i]+_(" in tab ")+tab[i]+"\n";
364 /* Check for mandatories/importants field(not subfields) */
365 for(var i=0,len=fields.length; i<len; i++){
368 divid = "tag_" + arr[0] + "_" + arr[1];
369 varegexp = new RegExp("^tag_" + arr[0] + "_code_");
371 if(parseInt(arr[0]) >= 10){
372 elem = document.getElementById(divid);
373 eleminputs = elem.getElementsByTagName('input');
375 for(var j=0,len2=eleminputs.length; j<len2; j++){
377 if(eleminputs[j].name.match(varegexp) && eleminputs[j].value){
378 inputregexp = new RegExp("^tag_" + arr[0] + "_subfield_" + eleminputs[j].value + "_" + arr[2]);
380 for( var k=0; k<len2; k++){
381 if(eleminputs[k].id.match(inputregexp) && eleminputs[k].value){
386 elemselect = elem.getElementsByTagName('select');
387 for( var k=0; k<elemselect.length; k++){
388 if(elemselect[k].id.match(inputregexp) && elemselect[k].value){
395 elemtextareas = elem.getElementsByTagName('textarea');
396 for(var j=0,len2=elemtextareas.length; j<len2; j++){
397 // this bit assumes that the only textareas in this context would be for subfields
398 if (elemtextareas[j].value) {
410 StrAlert += _("Field %s is mandatory, at least one of its subfields must be filled.").format(arr[0]);
412 StrAlert += _("Field %s is important, at least one of its subfields must be filled.").format(arr[0]);
431 var StrAlert = AreFieldsNotOk();
433 var StrWarning = AreFieldsNotOk(false);
435 StrWarning += "\n" + _("Are you sure you want to save?");
436 var r=confirm(StrWarning);
450 * check if z3950 mandatories are set or not
452 function GetZ3950Terms(){
453 var frameworkcode = document.getElementById("frameworkcode").value;
454 var strQuery = "&frameworkcode=" + encodeURIComponent(frameworkcode);
455 var mandatories = new Array();
456 var mandatories_label = new Array();
457 [% FOREACH BIG_LOO IN BIG_LOOP %]
458 [% FOREACH innerloo IN BIG_LOO.innerloop %]
459 [% FOREACH subfield_loo IN innerloo.subfield_loop %]
460 [% IF ( subfield_loo.z3950_mandatory ) %]
461 mandatories.push("[% subfield_loo.id | html %]");
462 mandatories_label.push("[% subfield_loo.z3950_mandatory | html %]");
468 for(var i=0,len=mandatories.length; i<len ; i++){
469 var field_value = document.getElementById(mandatories[i]).value;
471 strQuery += "&"+encodeURIComponent(mandatories_label[i])+"="+encodeURIComponent(field_value);
477 function Changefwk() {
479 f.op.value = "[% op | html %]";
480 f.biblionumber.value = "[% biblionumberdata | html %]";
481 f.changed_framework.value = "changed";
486 [% Asset.css("css/addbiblio.css") | $raw %]
489 <body id="cat_addbiblio" class="cat">
492 <div>Loading, please wait...</div>
495 [% INCLUDE 'header.inc' %]
497 <div id="breadcrumbs">
498 <a href="/cgi-bin/koha/mainpage.pl">Home</a> ›
499 <a href="/cgi-bin/koha/cataloguing/addbooks.pl">Cataloging</a> ›
500 [% IF ( biblionumber ) %]
501 Editing <em>[% title | html %]</em> (Record number [% biblionumber | html %])
507 <div class="main container-fluid">
509 <div class="col-md-10 col-md-offset-1">
512 [% IF ( biblionumber ) %]
513 Editing <em>[% title | html %]</em> (Record number [% biblionumber | html %])
515 Add MARC record [% IF (circborrowernumber) %]<em>(fast cataloging)</em>[% END %]
519 [% UNLESS ( number ) %]
520 <!-- show duplicate warning on tab 0 only -->
521 [% IF ( duplicatebiblionumber ) %]
522 <div class="dialog alert">
523 <h3>Duplicate record suspected</h3>
524 <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>
525 [% IF ( CAN_user_editcatalogue_edit_items ) %]
526 <form action="/cgi-bin/koha/cataloguing/additem.pl" method="get">
527 <input type="hidden" name="biblionumber" value="[% duplicatebiblionumber | html %]" />
528 <button type="submit" class="new"><i class="fa fa-fw fa-pencil"></i> Yes, edit existing items</button>
531 <form action="/cgi-bin/koha/catalogue/detail.pl" method="get">
532 <input type="hidden" name="biblionumber" value="[% duplicatebiblionumber | html %]" />
533 <input type="submit" value="Yes: View existing items" />
536 <form action="/cgi-bin/koha/cataloguing/addbiblio.pl" method="get">
537 [% IF ( CAN_user_editcatalogue_edit_items ) %]
538 <button type="submit" class="new" onclick="confirmnotdup('items'); return false;"><i class="fa fa-fw fa-save"></i> No, save as new record</button>
540 <button type="submit" class="new" onclick="confirmnotdup('view'); return false;"><i class="fa fa-fw fa-save"></i> No, save as new record</button>
543 </div> <!-- /.dialog.alert -->
544 [% END # /IF duplicatebiblionumber %]
545 [% END # /UNLESS number %]
549 opener.document.forms['f'].biblionumber.value=[% biblionumber | html %];
550 opener.document.forms['f'].title.value='[% title | html %]';
554 <form method="post" name="f" id="f" action="/cgi-bin/koha/cataloguing/addbiblio.pl" onsubmit="return Check();">
555 <input type="hidden" value="[% IF ( biblionumber ) %]view[% ELSE %]items[% END %]" id="redirect" name="redirect" />
556 <input type="hidden" value="" id="current_tab" name="current_tab" />
557 <input type="hidden" value="0" id="confirm_not_duplicate" name="confirm_not_duplicate" />
560 <div id="toolbar" class="btn-toolbar">
561 [% IF CAN_user_editcatalogue_edit_items or ( frameworkcode == 'FA' and CAN_user_editcatalogue_fast_cataloging ) %]
562 [% IF (circborrowernumber) %][%# fast cataloging must lead to items %]
563 <!-- Action is under fast cataloging - Save button redirecting to items -->
564 <div class="btn-group"><a href="#" id="saveanditems" class="btn btn-default"><i class="fa fa-save"></i> Save</a></div>
566 <!-- Not using fast cataloging - Display split menu -->
567 <div class="btn-group">
568 <button class="btn btn-default" id="saverecord"><i class="fa fa-save"></i> Save</button>
569 <button class="btn btn-default dropdown-toggle" data-toggle="dropdown">
570 <span class="caret"></span>
572 <ul class="dropdown-menu">
573 <li><a id="saveandview" href="#">Save and view record</a></li>
574 <li><a id="saveanditems" href="#">Save and edit items</a></li>
575 <li><a id="saveandcontinue" href="#">Save and continue editing</a></li>
580 <!-- User cannot edit items - single button redirecting to view -->
581 <div class="btn-group"><a href="#" id="saveandview" class="btn btn-default"><i class="fa fa-save"></i> Save</a></div>
582 [% END # /IF CAN_user_editcatalogue_edit_items %]
584 [% UNLESS (circborrowernumber) %][%# Hide in fast cataloging %]
585 [% IF biblionumber %]
586 <div class="btn-group"><a class="btn btn-default" href="#" id="z3950search"><i class="fa fa-search"></i> Replace record via Z39.50/SRU search</a></div>
588 <div class="btn-group"><a class="btn btn-default" href="#" id="z3950search"><i class="fa fa-search"></i> Z39.50/SRU search</a></div>
592 <div class="btn-group">
593 <button class="btn btn-default dropdown-toggle" data-toggle="dropdown"><i class="fa fa-cog"></i> Settings <span class="caret"></span></button>
594 <ul id="settings-menu" class="dropdown-menu">
595 [% IF Koha.Preference( 'EnableAdvancedCatalogingEditor' ) == 1 && CAN_user_editcatalogue_advanced_editor %]
596 <li><a href="#" id="switcheditor">Switch to advanced editor</a></li>
598 [% IF marcflavour != 'NORMARC' AND NOT advancedMARCEditor %]
600 <a href="#" id="marcDocsSelect"><i class="fa fa-check-square-o"></i> Show MARC tag documentation links</a>
602 <a href="#" id="marcTagsSelect"><i class="fa fa-check-square-o"></i> Show tags</a>
605 <li class="dropdown-header">Change framework</li>
607 <a href="#" class="change-framework" data-frameworkcode="">
608 [% IF ( frameworkcode ) %]
609 <i class="fa fa-fw"> </i>
611 <i class="fa fa-fw fa-check"></i>
616 [% FOREACH framework IN frameworks%]
618 <a href="#" class="change-framework" data-frameworkcode="[% framework.frameworkcode | html %]">
619 [% IF framework.frameworkcode == frameworkcode %]
620 <i class="fa fa-fw fa-check"></i>
622 <i class="fa fa-fw"> </i>
624 [% framework.frameworktext | html %]
628 </ul> <!-- /#settings-menu -->
629 </div> <!-- /.btn-group -->
630 [% UNLESS (circborrowernumber) %][%# Hide in fast cataloging %]
631 [% IF (biblionumber) %]
632 [% IF ( BiblioDefaultViewmarc ) %]
633 <div class="btn-group">
634 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
636 [% ELSIF ( BiblioDefaultViewlabeled_marc ) %]
637 <div class="btn-group">
638 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/catalogue/labeledMARCdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
640 [% ELSIF ( BiblioDefaultViewisbd ) %]
641 <div class="btn-group">
642 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/catalogue/ISBDdetail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
645 <div class="btn-group">
646 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber |url %]">Cancel</a>
650 <a class="btn btn-default" id="cancel" href="/cgi-bin/koha/cataloguing/addbooks.pl">Cancel</a>
652 [% END # /UNLESS circborrowernumber %]
653 <div class="toolbar-tabs-container">
654 [% IF ( BIG_LOOP.size > 1 ) %]
655 <ul class="toolbar-tabs">
656 [%- FOREACH BIG_LOO IN BIG_LOOP -%]
658 <li class="selected">
662 <a data-tabid="[% BIG_LOO.number | html %]" href="#tab[% BIG_LOO.number | html %]XX">[% BIG_LOO.number | html %]</a>
667 <ul class="tag_anchors_list">
668 [% FOREACH BIG_LOO IN BIG_LOOP %]
669 [% IF loop.first %][% SET tab_selected = "tab_selected" %][% ELSE %][% SET tab_selected = "" %][% END %]
670 [% FOREACH innerloo IN BIG_LOO.innerloop %]
671 [% IF ( innerloo.tag ) %]
672 <li class="tag_anchors tag_anchors_[% BIG_LOO.number | html %] [% tab_selected | html %]">
673 <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>
680 </div> <!-- /#toolbar.btn-toolbar -->
682 [% IF bib_doesnt_exist %]
683 <div class="dialog alert">
684 The record you are trying to edit doesn't exist.<br>
685 <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>.
690 <input type="hidden" name="mode" value="popup" />
692 <input type="hidden" name="op" value="addbiblio" />
693 <input type="hidden" id="frameworkcode" name="frameworkcode" value="[% frameworkcode | html %]" />
694 <input type="hidden" name="biblionumber" value="[% biblionumber | html %]" />
695 <input type="hidden" name="breedingid" value="[% breedingid | html %]" />
696 <input type="hidden" name="changed_framework" value="" />
698 <div id="addbibliotabs" class="toptabs numbered">
700 [% FOREACH BIG_LOO IN BIG_LOOP %]
701 <li><a href="#tab[% BIG_LOO.number | uri %]XX">[% BIG_LOO.number | html %]</a></li>
705 [% FOREACH BIG_LOO IN BIG_LOOP %]
706 <div id="tab[% BIG_LOO.number | html %]XX">
708 [% IF ( BIG_LOOP.size > 1 ) %]
709 <h3>Section [% BIG_LOO.number | html %]</h3>
712 [% FOREACH innerloo IN BIG_LOO.innerloop %]
713 [% IF ( innerloo.tag ) %]
714 [% IF innerloo.tag != previous %]
715 [% IF previous != "" %]
718 [% previous = innerloo.tag %]
719 [% IF ( innerloo.repeatable ) %]
720 <ul class="sortable_field">
725 [% IF ( innerloo.repeatable ) %]
726 <li class="tag sortable_tag clearfix" id="tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]">
728 <li class="tag clearfix" id="tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]">
730 <div class="tag_title" id="div_indicator_tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]">
731 [% IF advancedMARCEditor %]
732 <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>
734 <span class="tagnum" title="[% innerloo.tag_lib | html %]">[% innerloo.tag | html %]</span>
735 [% IF marcflavour != 'NORMARC' %]<a href="#" class="marcdocs" onclick="PopupMARCFieldDoc('[% innerloo.tag | html %]'); return false;"> ?</a>[% END %]
738 [% IF ( innerloo.fixedfield ) %]
741 class="indicator flat"
742 style="display:none;"
743 name="tag_[% innerloo.tag | html %]_indicator1_[% innerloo.index | html %][% innerloo.random | html %]"
746 value="[% innerloo.indicator1 | html %]" />
749 class="indicator flat"
750 style="display:none;"
751 name="tag_[% innerloo.tag | html %]_indicator2_[% innerloo.index | html %][% innerloo.random | html %]"
754 value="[% innerloo.indicator2 | html %]" />
758 class="indicator flat"
759 name="tag_[% innerloo.tag | html %]_indicator1_[% innerloo.index | html %][% innerloo.random | html %]"
762 value="[% innerloo.indicator1 | html %]" />
765 class="indicator flat"
766 name="tag_[% innerloo.tag | html %]_indicator2_[% innerloo.index | html %][% innerloo.random | html %]"
769 value="[% innerloo.indicator2 | html %]" />
770 [% END # /IF innerloo.fixedfield %] -
772 [% UNLESS advancedMARCEditor %]
773 <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>
776 <span class="field_controls">
777 [% IF ( innerloo.repeatable ) %]
778 <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">
779 <img src="[% interface | html %]/[% theme | html %]/img/repeat-tag.png" alt="Repeat this Tag" />
782 <a href="#" tabindex="1" class="buttonMinus" onclick="UnCloneField('tag_[% innerloo.tag | html %]_[% innerloo.index | html %][% innerloo.random | html %]'); return false;" title="Delete this Tag">
783 <img src="[% interface | html %]/[% theme | html %]/img/delete-tag.png" alt="Delete this Tag" />
785 </span> <!-- /.field_controls -->
786 </div> <!-- /div.tag_title -->
788 <ul class="sortable_subfield">
789 [% FOREACH subfield_loo IN innerloo.subfield_loop %]
790 <!-- One line on the marc editor -->
791 <li class="subfield_line" style="[% subfield_loo.visibility | html %]" id="subfield[% subfield_loo.tag | html %][% subfield_loo.subfield | html %][% subfield_loo.random | html %]">
792 [% UNLESS advancedMARCEditor %]
793 [% IF ( subfield_loo.fixedfield ) %]
794 <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">
796 <label for="tag_[% subfield_loo.tag | html %]_subfield_[% subfield_loo.subfield | html %]_[% subfield_loo.index | html %]_[% subfield_loo.index_subfield | html %]" class="labelsubfield">
800 <span class="subfieldcode">
802 title="[% subfield_loo.marc_lib | $raw %]"
803 style=" [% IF ( subfield_loo.fixedfield ) %]display:none; [% END %]border:0;"
804 name="tag_[% subfield_loo.tag | html %]_code_[% subfield_loo.subfield | html %]_[% subfield_loo.index | html %]_[% subfield_loo.index_subfield | html %]"
805 value="[% subfield_loo.subfield | html %]"
812 [% UNLESS advancedMARCEditor %]
813 [% IF ( subfield_loo.mandatory ) %]
814 <span class="subfield subfield_mandatory">
815 [% ELSIF ( subfield_loo.important ) %]
816 <span class="subfield subfield_important">
818 <span class="subfield">
820 [% subfield_loo.marc_lib | $raw %]
825 [% SET mv = subfield_loo.marc_value %]
826 [% IF ( mv.type == 'text' ) %]
827 [% IF ( mv.readonly == 1 ) %]
828 <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" />
830 <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 -%]" />
833 [% IF ( mv.authtype ) %]
834 <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>
836 [% ELSIF ( mv.type == 'text_complex' ) %]
837 <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 -%]" />
838 <span class="subfield_controls">
840 <span class="buttonDot tag_editor disabled" tabindex="-1" title="Field autofilled by plugin"></span>
842 [% IF mv.plugin == "upload.pl" %]
843 <a href="#" id="buttonDot_[% mv.id | html %]" class="tag_editor upload framework_plugin" tabindex="1"><i class="fa fa-upload" aria-hidden="true"></i> Upload</a>
845 <a href="#" id="buttonDot_[% mv.id | html %]" class="buttonDot tag_editor framework_plugin" tabindex="1" title="Tag editor">Tag editor</a>
849 [% mv.javascript | $raw %]
850 [% ELSIF ( mv.type == 'hidden' ) %]
851 <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 -%]" />
852 [% ELSIF ( mv.type == 'textarea' ) %]
853 <textarea cols="70" rows="4" id="[%- mv.id | html -%]" name="[%- mv.name | html -%]" class="input_marceditor" tabindex="1">[%- mv.value | html -%]</textarea>
854 [% ELSIF ( mv.type == 'select' ) %]
855 [% IF mv.category AND CAN_user_parameters_manage_auth_values %]
856 <select name="[%- mv.name | html -%]" tabindex="1" size="1" class="input_marceditor" id="[%- mv.id | html -%]" data-category="[% mv.category | html %]">
858 <select name="[%- mv.name | html -%]" tabindex="1" size="1" class="input_marceditor select2" id="[%- mv.id | html -%]">
860 [% FOREACH aval IN mv.values %]
861 [% IF aval == mv.default %]
862 <option value="[%- aval | html -%]" selected="selected">[%- mv.labels.$aval | html -%]</option>
864 <option value="[%- aval | html -%]">[%- mv.labels.$aval | html -%]</option>
868 [% END # /IF (mv.type...) %]
869 [% IF ( subfield_loo.mandatory ) %]
870 <span class="required">Required</span>
871 [% ELSIF ( subfield_loo.important ) %]
872 <span class="important">Important</span>
874 <span class="subfield_controls">
875 [% IF ( subfield_loo.repeatable ) %]
876 <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;">
877 <img src="[% interface | html %]/[% theme | html %]/img/clone-subfield.png" alt="Clone" title="Clone this subfield" />
879 <a href="#" class="buttonMinus" tabindex="1" onclick="UnCloneField('subfield[% subfield_loo.tag | html %][% subfield_loo.subfield | html %][% subfield_loo.random | html %]'); return false;">
880 <img src="[% interface | html %]/[% theme | html %]/img/delete-subfield.png" alt="Delete" title="Delete this subfield" />
884 </li> <!-- /.subfield_line -->
885 <!-- End of the line -->
886 [% END # /FOREACH subfield_loop %]
887 </ul> <!-- /.sortable_subfield -->
888 </li> <!-- /.tag.clearfix -->
889 [% END %]<!-- if innerloo.tag -->
890 [% END # /FOREACH BIG_LOO.innerloop %]
891 </ul> <!-- /.sortable_field -->
892 </div> <!-- /#tabXXX -->
893 [% END # /FOREACH BIG_LOOP %]
894 </div><!-- /#addbibliotabs -->
896 [%# Fields for fast cataloging %]
897 <input type="hidden" name="barcode" value="[% barcode | html %]" />
898 <input type="hidden" name="branch" value="[% branch | html %]" />
899 <input type="hidden" name="circborrowernumber" value="[% circborrowernumber | html %]" />
900 <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
901 <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
902 [%# End of fields for fast cataloging %]
903 </form> <!-- /name=f -->
905 [% INCLUDE 'modals/cataloguing_create_av.inc' %]
907 </div> <!-- /.col-md-10.col-md-offset-1 -->
908 </div> <!-- /.row -->
910 [% INCLUDE 'intranet-bottom.inc' %]