Owen Leonard
a46b3b4de0
Some scripts pass a template variable to facilitate an alternate table row class for styling. Other use the 'IF (loop.odd)' construction. I think we're at the point where the CSS3 :nth-child() selector is widely-supported enough that we can do without template-based solutions: http://caniuse.com/#feat=css-sel3 This patch adds such a selector to the staff client CSS and removes the corresponding template markup from Administration pages. The last in this series of patches will remove the redundant CSS. Also in this patch: a few minor markup corrections. To test, apply the patch and clear your browser cache if necessary. View the following pages and confirm that alternate table row highlighting works as before: - Administration -> Budgets - Acquisitions -> Vendor -> Contracts - Administration -> Budgets -> Budget -> Planning - Administration -> Authority types - Administration -> Authority types -> MARC structure - Administration -> Authority types -> MARC structure -> subfields - Administration -> MARC bibliographic framework - Administration -> MARC bibliographic framework -> MARC structure - Administration -> MARC bibliographic framework -> MARC structure -> Subfields - Administration -> Libraries and groups - Administration -> Cities and towns - Administration -> Classification sources - Administration -> Circulation and fines rules - Administration -> Currencies and exchange rates - Administration -> Item types - Administration -> Koha to MARC mapping - Administration -> System preferences -> Local use - Administration -> Z39.50 client targets Signed-off-by: Nick Clemens <nick@quecheelibrary.org> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
293 lines
17 KiB
Text
293 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">
|
||
/* 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 %s").format(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: %s. Importing from file: %s").format("<strong>" + frameworkcode + "</strong>", "<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" class="validated">
|
||
<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" class="required">Framework code: </label>
|
||
<input type="text" id="frameworkcode" name="frameworkcode" size="4" maxlength="4" onblur="toUC(this)" required="required" class="required" />
|
||
<span class="required">Required</span>
|
||
</li>
|
||
[% END %]
|
||
<li>
|
||
<label for="description" class="required">Description: </label>
|
||
<input type="text" name="frameworktext" id="description" size="40" maxlength="80" value="[% frameworktext |html %]" required="required" class="required" />
|
||
<span class="required">Required</span>
|
||
</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 %]
|
||
<tr>
|
||
<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' %]
|