Owen Leonard
3c7edd1cbe
toUC() is repeatedly declared on many administration templates. This function, used to transform user input to uppercase, can be added to staff-global.js to prevent repetition. To test, confirm that transformation to uppercase is working on the following Administration pages when text is entered in a form field and focus is moved to the next field: - Authority types -> New: Test the "Authority type" field. - MARC bibliographic framework -> New framework: Test the "Framework code" field. - Patron types and categories -> New category: Test the "Category code" field. - Currencies and exchange rates -> New currency: Test the "Currency" field. - Item types -> New item type: Test the "Item type" field. - Z39.50 client targets -> New Z39.50 server: Test the "Z39.50 server" field. The following pages do not call the toUC function despite the fact that they included it: auth_tag_structure.tt printers.tt roadtype.tt stopwords.tt systempreferences.tt Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> tools/letter.tt declares this js function and don't use it. Signed-off-by: Galen Charlton <gmc@esilibrary.com>
320 lines
17 KiB
Text
320 lines
17 KiB
Text
[% INCLUDE 'doc-head-open.inc' %]
|
||
<title>Koha › Administration › MARC frameworks
|
||
[% IF ( add_form ) %]
|
||
› [% IF ( frameworkcode ) %]Modify framework text[% ELSE %]Add framework[% END %]
|
||
[% ELSIF ( delete_confirm ) %]
|
||
› Delete framework for [% frameworktext %] ([% frameworkcode %])?
|
||
[% END %]
|
||
</title>
|
||
[% INCLUDE 'doc-head-close.inc' %]
|
||
<script type="text/javascript">
|
||
//<![CDATA[
|
||
|
||
function isNotNull(f,noalert) {
|
||
if (f.value.length ==0) {
|
||
return false;
|
||
}
|
||
return true;
|
||
}
|
||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||
function Check(f) {
|
||
var ok=1;
|
||
var _alertString="";
|
||
var alertString2;
|
||
if (f.frameworkcode.value.length==0) {
|
||
_alertString += "\n- " + _("Framework code missing");
|
||
}
|
||
if (!(isNotNull(window.document.Aform.frameworktext))) {
|
||
_alertString += "\n- " + _("Description missing");
|
||
}
|
||
if (_alertString.length==0) {
|
||
document.Aform.submit();
|
||
} else {
|
||
alertString2 = _("Form not submitted because of the following problem(s)");
|
||
alertString2 += "\n------------------------------------------------------------------------------------\n";
|
||
alertString2 += _alertString;
|
||
alert(alertString2);
|
||
return false;
|
||
}
|
||
return true;
|
||
}
|
||
|
||
//]]>
|
||
</script>
|
||
<script type="text/javascript">
|
||
/* Import/Export from/to spreadsheet */
|
||
|
||
var importing = false;
|
||
|
||
$(document).ready(function() {
|
||
$("body").css("cursor", "auto");
|
||
$('.import_export_options').hide();
|
||
$('a.import_export_fw').click(function() {
|
||
if (!importing) {
|
||
$('.import_export_options').hide();
|
||
$(this).next().show('slide');
|
||
}
|
||
return false;
|
||
});
|
||
$('.import_export_close').click(function() {
|
||
if (!importing) {
|
||
$('.import_export_options').fadeOut('fast');
|
||
$("body").css("cursor", "auto");
|
||
return false;
|
||
}
|
||
});
|
||
$('.input_import').val("");
|
||
|
||
var matches = new RegExp("\\?error_import_export=(.+)$").exec(window.location.search);
|
||
if (matches && matches.length > 1) {
|
||
alert(_("Error importing the framework ") + decodeURIComponent(matches[1]));
|
||
}
|
||
|
||
$('input.input_import').change( function() {
|
||
var filename = $(this).val();
|
||
if ( ! /(?:\.csv|\.ods|\.xml)$/.test(filename)) {
|
||
$(this).css("background-color","yellow");
|
||
alert(_("Please select an ods or xml file"));
|
||
$(this).val("");
|
||
$(this).css("background-color","white");
|
||
}
|
||
});
|
||
$('form.form_export').submit(function() {
|
||
$('.modal').modal("hide");
|
||
return true;
|
||
});
|
||
$('form.form_import').submit(function() {
|
||
var id = $(this).attr('id');
|
||
var obj = $('#' + id + ' input:file');
|
||
if (/(?:\.csv|\.ods|\.xml)$/.test(obj.val())) {
|
||
if (confirm(_("Do you really want to import the framework fields and subfields? This will overwrite the current configuration. For safety reasons please use the export option to make a backup"))) {
|
||
var frameworkcode = $('#' + id + ' input:hidden[name=frameworkcode]').val();
|
||
$('#importing_' + frameworkcode).find("span").html(_("Importing to framework:")+"<strong>" + frameworkcode + "</strong>. " +_("Importing from file:")+"<i>" + obj.val().replace(new RegExp("^.+[/\\\\]"),"") + "</i>");
|
||
if (navigator.userAgent.toLowerCase().indexOf('msie') != -1) {
|
||
var timestamp = new Date().getTime();
|
||
$('#importing_' + frameworkcode).find("img").attr('src', '[% interface %]/[% theme %]/img/loading-small.gif' + '?' +timestamp);
|
||
}
|
||
$('#importing_' + frameworkcode).css('display', 'block');
|
||
if (navigator.userAgent.toLowerCase().indexOf('firefox') == -1) $("body").css("cursor", "progress");
|
||
importing = true;
|
||
$(".modal-footer,.closebtn").hide();
|
||
return true;
|
||
} else
|
||
return false;
|
||
}
|
||
obj.css("background-color","yellow");
|
||
alert(_("Please select an spreadsheet (csv, ods, xml) file"));
|
||
obj.val("");
|
||
obj.css("background-color","white");
|
||
return false;
|
||
});
|
||
});
|
||
|
||
</script>
|
||
|
||
</head>
|
||
<body id="admin_biblio_framework" class="admin">
|
||
[% INCLUDE 'header.inc' %]
|
||
[% INCLUDE 'cat-search.inc' %]
|
||
|
||
<div id="breadcrumbs">
|
||
<a href="/cgi-bin/koha/mainpage.pl">Home</a>
|
||
› <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a>
|
||
› <a href="/cgi-bin/koha/admin/biblio_framework.pl">MARC frameworks</a>
|
||
[% IF ( add_form ) %]
|
||
› [% IF ( frameworkcode ) %]Modify framework text[% ELSE %]Add framework[% END %]
|
||
[% ELSIF ( delete_confirm ) %]
|
||
› Delete framework for [% frameworktext %] ([% frameworkcode %])?
|
||
[% END %]
|
||
</div>
|
||
|
||
<div id="doc3" class="yui-t2">
|
||
<div id="bd">
|
||
<div id="yui-main">
|
||
<div class="yui-b">
|
||
|
||
[% IF ( else ) %]
|
||
<div id="toolbar" class="btn-toolbar">
|
||
<a class="btn btn-small" id="newframework" href="/cgi-bin/koha/admin/biblio_framework.pl?op=add_form"><i class="icon-plus"></i> New framework</a>
|
||
</div>
|
||
[% END %]
|
||
|
||
[% IF ( add_form ) %]
|
||
<h1>[% IF ( frameworkcode ) %]Modify framework text[% ELSE %]Add framework[% END %]</h1>
|
||
<form action="[% script_name %]" name="Aform" method="post" onsubmit="return Check(this);">
|
||
<input type="hidden" name="op" value="add_validate" />
|
||
<fieldset class="rows">
|
||
<ol>
|
||
[% IF ( frameworkcode ) %]
|
||
<li><span class="label">Framework code: </span><input type="hidden" id="frameworkcode" name="frameworkcode" value="[% frameworkcode %]" />[% frameworkcode %]
|
||
<input type="hidden" name="modif" value="1" />
|
||
</li>
|
||
[% ELSE %]
|
||
<li><label for="frameworkcode">Framework code: </label><input type="text" id="frameworkcode" name="frameworkcode" size="4" maxlength="4" onblur="toUC(this)" /></li>
|
||
[% END %]
|
||
<li><label for="description">Description: </label>
|
||
<input type="text" name="frameworktext" id="description" size="40" maxlength="80" value="[% frameworktext |html %]" /></li></ol></fieldset>
|
||
<fieldset class="action"> <input type="submit" value="Submit" class="submit" /></fieldset>
|
||
</form>
|
||
[% END %]
|
||
|
||
[% IF ( delete_confirm ) %]
|
||
<div class="dialog alert">
|
||
<h3>Delete framework for [% frameworktext %] ([% frameworkcode %])?</h3>
|
||
[% IF ( total ) %]
|
||
<p><strong>This framework is used [% total %] times</strong>.</p>
|
||
[% END %]
|
||
<form class="inline" action="[% script_name %]" method="post"><input type="hidden" name="op" value="delete_confirmed" /><input type="hidden" name="frameworkcode" value="[% frameworkcode %]" /><input type="submit" class="approve" value="Yes, delete this framework!" />
|
||
</form>
|
||
<form class="inline" action="[% script_name %]" method="get"><input type="submit" class="deny" value="No, do not delete!" /></form>
|
||
</div>
|
||
[% END %]
|
||
|
||
[% IF ( else ) %]
|
||
<h1>MARC frameworks</h1>
|
||
<p>Framework name, then go to MARC biblio to set MARC editor parameters</p>
|
||
<table>
|
||
<tr>
|
||
<th>Code</th>
|
||
<th>Description</th>
|
||
<th> </th>
|
||
<th>Edit</th>
|
||
<th>Delete</th>
|
||
<th title="Export framework structure (fields, subfields) to a spreadsheet file (.csv, .xml, .ods)">Export</th>
|
||
<th title="Import framework structure (fields, subfields) from a spreadsheet file (.csv, .xml, .ods)">Import</th>
|
||
</tr>
|
||
<tr>
|
||
<td> </td>
|
||
<td>Default framework</td>
|
||
<td><a href="marctagstructure.pl?frameworkcode=[% frameworkcode %]">MARC structure</a></td>
|
||
<td> </td>
|
||
<td> </td>
|
||
<td>
|
||
|
||
<!-- Button to trigger modal -->
|
||
<a href="#" data-toggle="modal" data-target="#exportModal_[% frameworkcode %]">Export</a>
|
||
<!-- Modal -->
|
||
<div class="modal hide" id="exportModal_[% frameworkcode %]" tabindex="-1" role="dialog" aria-labelledby="exportLabelexportModal_[% frameworkcode %]" aria-hidden="true">
|
||
<div class="modal-header">
|
||
<button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button>
|
||
<h3 id="exportLabelexportModal_[% frameworkcode %]">Export default framework</h3>
|
||
</div>
|
||
<form action="import_export_framework.pl" name="form_[% frameworkcode %]" method="get" target="_blank" class="form_export">
|
||
<div class="modal-body">
|
||
<fieldset>
|
||
<input type="hidden" name="frameworkcode" value="[% frameworkcode %]" />
|
||
<p><label for="csv_type_export_[% frameworkcode %]"><input type="radio" name="type_export_[% frameworkcode %]" value="csv" id="csv_type_export_[% frameworkcode %]" checked="checked" /> Export to CSV spreadsheet</label></p>
|
||
<p><label for="xml_type_export_[% frameworkcode %]"><input type="radio" name="type_export_[% frameworkcode %]" value="excel" id="xml_type_export_[% frameworkcode %]" /> Export to Excel with XML format, compatible with OpenOffice/LibreOffice as well</label></p>
|
||
<p><label for="ods_type_export_[% frameworkcode %]"><input type="radio" name="type_export_[% frameworkcode %]" value="ods" id="ods_type_export_[% frameworkcode %]" /> Export to OpenDocument spreadsheet format</label></p>
|
||
|
||
</fieldset>
|
||
</div>
|
||
<div class="modal-footer">
|
||
<button type="submit" class="btn">Export</button>
|
||
<button class="btn btn-link" data-dismiss="modal" aria-hidden="true">Cancel</button>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
|
||
</td>
|
||
<td>
|
||
|
||
<!-- Button to trigger modal -->
|
||
<a href="#" data-toggle="modal" data-target="#importModal_[% frameworkcode %][% loop.count %]">Import</a>
|
||
<!-- Modal -->
|
||
<div class="modal hide" id="importModal_[% frameworkcode %][% loop.count %]" tabindex="-1" role="dialog" aria-labelledby="importLabelexportModal_[% frameworkcode %][% loop.count %]" aria-hidden="true">
|
||
<div class="modal-header">
|
||
<button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button>
|
||
<h3 id="importLabelexportModal_[% frameworkcode %][% loop.count %]">Import default framework structure (fields and subfields) from a spreadsheet file (.csv, .xml, .ods)</h3>
|
||
</div>
|
||
<form action="/cgi-bin/koha/admin/import_export_framework.pl" name="form_i_[% frameworkcode %]" id="form_i_[% frameworkcode %]" method="post" enctype="multipart/form-data" class="form_import">
|
||
<div class="modal-body">
|
||
<input type="hidden" name="frameworkcode" value="[% frameworkcode %]" />
|
||
<input type="hidden" name="action" value="import" />
|
||
<p><label for="file_import_[% frameworkcode %]">Upload file:</label> <input type="file" name="file_import_[% frameworkcode %]" id="file_import_[% frameworkcode %]" class="input_import" /></p>
|
||
<div id="importing_[% frameworkcode %]" style="display:none" class="importing"><img src="[% interface %]/[% theme %]/img/loading-small.gif" alt="" /><span class="importing_msg"></span></div>
|
||
</div>
|
||
<div class="modal-footer">
|
||
<button type="submit" class="btn">Import</button>
|
||
<button class="btn btn-link" data-dismiss="modal" aria-hidden="true">Close</button>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
|
||
</td>
|
||
</tr>
|
||
<!-- note highlight assignment appears backwards because we already have a normal row for Default -->
|
||
[% FOREACH loo IN loop %]
|
||
[% IF ( loop.odd ) %]<tr class="highlight">
|
||
[% ELSE %]<tr>
|
||
[% END %]
|
||
<td>[% loo.frameworkcode %]</td>
|
||
<td>[% loo.frameworktext %]</td>
|
||
<td><a href="marctagstructure.pl?frameworkcode=[% loo.frameworkcode %]" >MARC structure</a></td>
|
||
<td><a href="[% loo.script_name %]?op=add_form&frameworkcode=[% loo.frameworkcode |html %]">Edit</a></td>
|
||
<td><a href="[% loo.script_name %]?op=delete_confirm&frameworkcode=[% loo.frameworkcode |html %]">Delete</a></td>
|
||
<td>
|
||
|
||
<!-- Button to trigger modal -->
|
||
<a href="#" data-toggle="modal" data-target="#exportModal_[% loo.frameworkcode %][% loop.count %]">Export</a>
|
||
<!-- Modal -->
|
||
<div class="modal hide" id="exportModal_[% loo.frameworkcode %][% loop.count %]" tabindex="-1" role="dialog" aria-labelledby="exportLabelexportModal_[% loo.frameworkcode %][% loop.count %]" aria-hidden="true">
|
||
<div class="modal-header">
|
||
<button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button>
|
||
<h3 id="exportLabelexportModal_[% loo.frameworkcode %][% loop.count %]">Export [% loo.frameworktext %] framework</h3>
|
||
</div>
|
||
<form action="import_export_framework.pl" name="form_[% loo.frameworkcode %]" method="get" target="_blank" class="form_export">
|
||
<div class="modal-body">
|
||
<fieldset>
|
||
<input type="hidden" name="frameworkcode" value="[% loo.frameworkcode %]" />
|
||
<p><label for="csv_type_export_[% loo.frameworkcode %][% loop.count %]"><input type="radio" name="type_export_[% loo.frameworkcode %]" value="csv" id="csv_type_export_[% loo.frameworkcode %][% loop.count %]" checked="checked" /> Export to CSV spreadsheet</label></p>
|
||
<p><label for="xml_type_export_[% loo.frameworkcode %][% loop.count %]"><input type="radio" name="type_export_[% loo.frameworkcode %]" value="excel" id="xml_type_export_[% loo.frameworkcode %][% loop.count %]" /> Export to Excel with XML format, compatible with OpenOffice/LibreOffice as well</label></p>
|
||
<p><label for="ods_type_export_[% loo.frameworkcode %][% loop.count %]"><input type="radio" name="type_export_[% loo.frameworkcode %]" value="ods" id="ods_type_export_[% loo.frameworkcode %][% loop.count %]" /> Export to OpenDocument spreadsheet format</label></p>
|
||
|
||
</fieldset>
|
||
</div>
|
||
<div class="modal-footer">
|
||
<button type="submit" class="btn">Export</button>
|
||
<button class="btn btn-link" data-dismiss="modal" aria-hidden="true">Cancel</button>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
</td>
|
||
<td>
|
||
|
||
<!-- Button to trigger modal -->
|
||
<a href="#" data-toggle="modal" data-target="#importModal_[% loo.frameworkcode %][% loop.count %]">Import</a>
|
||
<!-- Modal -->
|
||
<div class="modal hide" id="importModal_[% loo.frameworkcode %][% loop.count %]" tabindex="-1" role="dialog" aria-labelledby="importLabelexportModal_[% loo.frameworkcode %][% loop.count %]" aria-hidden="true">
|
||
<div class="modal-header">
|
||
<button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button>
|
||
<h3 id="importLabelexportModal_[% loo.frameworkcode %][% loop.count %]">Import [% loo.frameworkcode %] framework structure (fields and subfields) from a spreadsheet file (.csv, .xml, .ods)</h3>
|
||
</div>
|
||
<form action="/cgi-bin/koha/admin/import_export_framework.pl" name="form_i_[% loo.frameworkcode %]" id="form_i_[% loo.frameworkcode %]" method="post" enctype="multipart/form-data" class="form_import">
|
||
<div class="modal-body">
|
||
<input type="hidden" name="frameworkcode" value="[% loo.frameworkcode %]" />
|
||
<input type="hidden" name="action" value="import" />
|
||
<p><label for="file_import_[% loo.frameworkcode %]">Upload file:</label> <input type="file" name="file_import_[% loo.frameworkcode %]" id="file_import_[% loo.frameworkcode %]" class="input_import" /></p>
|
||
<div id="importing_[% loo.frameworkcode %]" style="display:none" class="importing"><img src="[% interface %]/[% theme %]/img/loading-small.gif" alt="" /><span class="importing_msg"></span></div>
|
||
</div>
|
||
<div class="modal-footer">
|
||
<button type="submit" class="btn">Import</button>
|
||
<button class="btn btn-link" data-dismiss="modal" aria-hidden="true">Close</button>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
[% END %]
|
||
</table>
|
||
[% IF ( previous ) %]<a href="[% previous %]"><< Previous</a>[% END %]
|
||
[% IF ( next ) %]<a href="[% next %]">Next >></a>[% END %]
|
||
|
||
[% END %]
|
||
</div>
|
||
</div>
|
||
<div class="yui-b">
|
||
[% INCLUDE 'admin-menu.inc' %]
|
||
</div>
|
||
</div>
|
||
[% INCLUDE 'intranet-bottom.inc' %]
|