Main Koha release repository https://koha-community.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

155 lines
6.4 KiB

[% USE raw %]
[% USE Asset %]
[% USE Branches %]
[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
<title>Koha &rsaquo; Administration &rsaquo; Transport cost matrix</title>
[% INCLUDE 'doc-head-close.inc' %]
<style>
.disabled-transfer {
background-color: #FF8888;
}
</style>
</head>
<body id="admin_transport_cost_matrix" class="admin">
[% INCLUDE 'header.inc' %]
[% INCLUDE 'prefs-admin-search.inc' %]
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a> &rsaquo; Transport cost matrix</div>
<div class="main container-fluid">
<div class="row">
<div class="col-sm-10 col-sm-push-2">
<main>
<h1 class="parameters">
Defining transport costs between libraries
</h1>
[% IF ( WARNING_transport_cost_matrix_off ) %]
<div class="dialog message">Because the "UseTransportCostMatrix" system preference is currently not enabled, the transport cost matrix is not being used. <br/>Go to the <a href="/cgi-bin/koha/admin/preferences.pl?op=search&amp;searchfield=UseTransportCostMatrix">UseTransportCostMatrix</a> system preference if you wish to enable this feature.</div>
[% END %]
[% IF ( errors ) %]<div class="dialog alert">
<h4>There were problems with your submission</h4>
<ul>
[% FOR e IN errors %]
<li>Invalid value for [% e | html %]</li>
[% END %]
</ul>
</div>[% END %]
<form method="post" action="/cgi-bin/koha/admin/transport-cost-matrix.pl" id="cost_matrix_form">
<input type="hidden" name="op" value="set-cost-matrix" />
<fieldset id="transport-cost-matrix">
<div class="help">
<p>Costs are decimal values between some arbitrary maximum value (e.g. 1 or 100) and 0 which is the minimum (no) cost.</p>
<p>Red cells signify no transfer allowed.</p>
<p>Click on individual cells to edit.</p>
</div>
<table>
<tr>
<th>From \ To</th>
[% FOR b IN Branches.all() %]
<th>[% b.branchname | html %]</th>
[% END %]
</tr>
[% FOR bf IN branchfromloop %]
<tr>
<th>[% bf.name | html %]</th>
[% FOR bt IN bf.branchtoloop %]
<td>
[% IF bt.skip %]
&nbsp;
[% ELSE %]
[% IF bt.disabled %]
<div id="celldiv_[% bt.id | html %]" class="disabled-transfer">
[% ELSE %]
<div id="celldiv_[% bt.id | html %]">
[% END %]
<div class="enable_cost_input" data-cost-id="[% bt.id | html %]">[% IF bt.disabled %]&nbsp;[% ELSE %][% bt.value | html %][% END %]</div>
<input type="hidden" name="cost_[% bt.id | html %]" value="[% bt.value | html %]" />
[% IF bt.disabled %]
<input type="hidden" name="disable_[% bt.id | html %]" value="1" />
[% END %]
</div>
[% END %]
</td>
[% END %]
</tr>
[% END %]
</table>
</fieldset>
<fieldset class="action">
<input type="submit" value="Save" class="submit" /> <a href="/cgi-bin/koha/admin/transport-cost-matrix.pl" class="cancel">Cancel</a>
</fieldset>
</form>
</main>
</div> <!-- /.col-sm-10.col-sm-push-2 -->
<div class="col-sm-2 col-sm-pull-10">
<aside>
[% INCLUDE 'admin-menu.inc' %]
</aside>
</div> <!-- /.col-sm-2.col-sm-pull-10 -->
</div> <!-- /.row -->
[% MACRO jsinclude BLOCK %]
[% Asset.js("js/admin-menu.js") | $raw %]
<script>
function check_transport_cost(e) {
var val = e.value;
if (val && val != '' && !isNaN(parseFloat(val)) && val >= 0.0) {
return;
}
alert(_("Cost must be expressed as a decimal number >= 0"));
}
function disable_transport_cost_chg(e) {
var input_name = e.name;
var cost_id = input_name.replace(/disable_/,''); // Parse the code_id out of the input name
disable_transport_cost(cost_id, e.checked);
}
function disable_transport_cost(cost_id, disable) {
if (disable) {
$('#celldiv_'+cost_id).find('input[type=text]').prop('disabled', true).addClass('disabled-transfer');
} else {
$('#celldiv_'+cost_id).find('input:disabled').prop('disabled', false).removeClass('disabled-transfer');
}
}
function enable_cost_input(cost_id) {
var cell = $('#celldiv_'+cost_id);
var cost = $(cell).text();
var disabled = $(cell).hasClass('disabled-transfer');
$(cell).removeClass('disabled-transfer');
$('#celldiv_'+cost_id).html(
'<input type="text" name="cost_'+cost_id+'" class="cost_input" size="4" value="'+$.trim(cost)+'" />'+
'<br/>' + _("Disable ") + '<input name="disable_'+cost_id+'" value="1" class="disable_transport_cost" type="checkbox" '+(disabled ? 'checked' : '')+' />'
);
disable_transport_cost(cost_id, disabled);
}
function form_submit (f) {
$(f).find('input:disabled').prop('disabled', false);
return true;
}
$(document).ready(function(){
$(".enable_cost_input").on("click",function(){
var cost_id = $(this).data("cost-id");
enable_cost_input( cost_id );
});
$("body").on("blur",".cost_input",function(){
check_transport_cost(this);
});
$("body").on("change",".disable_transport_cost",function(){
disable_transport_cost_chg(this);
});
$("#cost_matrix_form").on("submit",function(){
return form_submit(this);
});
});
</script>
[% END %]
[% INCLUDE 'intranet-bottom.inc' %]