Owen Leonard
a03c6ce587
When there are no notices for the selected library, the interface displays a table header with an empty table. This patch adds a message which appears when there are no notices for the selected library, or if no library selected and there are no notices at all. To test, visit the notices and slips page and select a library for which there are no notices. A message should be displayed, "There are no notices for this library." Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Comment: Work as described. No errors. Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
399 lines
16 KiB
Text
399 lines
16 KiB
Text
[% INCLUDE 'doc-head-open.inc' %]
|
|
<title>Koha › Tools › Notices[% IF ( add_form ) %][% IF ( modify ) %] › Modify notice[% ELSE %] › Add notice[% END %][% END %][% IF ( add_validate ) %] › Notice added[% END %][% IF ( delete_confirm ) %] › Confirm deletion[% END %]</title>
|
|
[% INCLUDE 'doc-head-close.inc' %]
|
|
<link rel="stylesheet" type="text/css" href="/intranet-tmpl/prog/en/css/datatables.css" />
|
|
<script type="text/javascript" src="/intranet-tmpl/prog/en/lib/jquery/plugins/jquery.dataTables.min.js"></script>
|
|
[% INCLUDE 'datatables-strings.inc' %]
|
|
<script type="text/javascript" src="/intranet-tmpl/prog/en/js/datatables.js"></script>
|
|
<script type="text/javascript">
|
|
//<![CDATA[
|
|
$(document).ready(function() {
|
|
$("#lettert:has(tbody tr)").dataTable($.extend(true, {}, dataTablesDefaults, {
|
|
"sDom": 't',
|
|
"aoColumnDefs": [
|
|
{ "aTargets": [ -1,-2, -3 ], "bSortable": false, "bSearchable": false }
|
|
],
|
|
"bPaginate": false
|
|
}));
|
|
$('#branch').change(function() {
|
|
$('#op').val("");
|
|
$('#selectlibrary').submit();
|
|
});
|
|
$('#newnotice').click(function() {
|
|
$('#op').val("add_form");
|
|
return true;
|
|
});
|
|
});
|
|
[% IF ( add_form ) %]
|
|
|
|
function cancel(f) {
|
|
$('#op').val("");
|
|
f.method = "get";
|
|
f.submit();
|
|
}
|
|
|
|
function isNotNull(f,noalert) {
|
|
if (f.value.length ==0) {
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
function toUC(f) {
|
|
var x=f.value.toUpperCase();
|
|
f.value=x;
|
|
return true;
|
|
}
|
|
|
|
function isNum(v,maybenull) {
|
|
var n = new Number(v.value);
|
|
if (isNaN(n)) {
|
|
return false;
|
|
}
|
|
if (maybenull==0 && v.value=='') {
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
function isDate(f) {
|
|
var t = Date.parse(f.value);
|
|
if (isNaN(t)) {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function Check(f) {
|
|
var ok=1;
|
|
var _alertString="";
|
|
var alertString2;
|
|
/* if (!(isNotNull(window.document.Aform.code))) {
|
|
_alertString += "\n- " + _("Code missing");
|
|
}*/
|
|
/* if (!(isNotNull(window.document.Aform.name))) {
|
|
_alertString += "\n- " + _("Name 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);
|
|
}
|
|
}
|
|
// GPL code coming from PhpMyAdmin
|
|
function insertValueQuery() {
|
|
var myQuery = document.Aform.content;
|
|
var myListBox = document.Aform.SQLfieldname;
|
|
|
|
if(myListBox.options.length > 0) {
|
|
var chaineAj = "";
|
|
var NbSelect = 0;
|
|
for(var i=0; i<myListBox.options.length; i++) {
|
|
if (myListBox.options[i].selected){
|
|
NbSelect++;
|
|
if (NbSelect > 1)
|
|
chaineAj += ", ";
|
|
chaineAj += myListBox.options[i].value;
|
|
}
|
|
}
|
|
|
|
//IE support
|
|
if (document.selection) {
|
|
myQuery.focus();
|
|
sel = document.selection.createRange();
|
|
sel.text = chaineAj;
|
|
document.Aform.insert.focus();
|
|
}
|
|
//MOZILLA/NETSCAPE support
|
|
else if (document.Aform.content.selectionStart || document.Aform.content.selectionStart == "0") {
|
|
var startPos = document.Aform.content.selectionStart;
|
|
var endPos = document.Aform.content.selectionEnd;
|
|
var chaineSql = document.Aform.content.value;
|
|
myQuery.value = chaineSql.substring(0, startPos) +'<<'+ chaineAj+'>>' + chaineSql.substring(endPos, chaineSql.length);
|
|
} else {
|
|
myQuery.value += chaineAj;
|
|
}
|
|
}
|
|
}
|
|
[% END %]
|
|
//]]>
|
|
</script>
|
|
</head>
|
|
<body id="tools_letter" class="tools">
|
|
[% INCLUDE 'header.inc' %]
|
|
[% INCLUDE 'letters-search.inc' %]
|
|
|
|
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a> › [% IF ( add_form ) %][% IF ( modify ) %]<a href="/cgi-bin/koha/tools/letter.pl">Notices & Slips</a> › Modify notice[% ELSE %] <a href="/cgi-bin/koha/tools/letter.pl">Notices & Slips</a> › Add notice[% END %][% ELSE %][% IF ( add_validate ) %] <a href="/cgi-bin/koha/tools/letter.pl">Notices & Slips</a> › Notice added[% ELSE %][% IF ( delete_confirm ) %] <a href="/cgi-bin/koha/tools/letter.pl">Notices & Slips</a> › Confirm deletion[% ELSE %]Notices & Slips[% END %][% END %][% END %]</div>
|
|
|
|
[% IF ( add_form ) %]<div id="doc" class="yui-t7">[% ELSE %]<div id="doc3" class="yui-t2">[% END %]
|
|
|
|
<div id="bd">
|
|
<div id="yui-main">
|
|
<div class="yui-b">
|
|
|
|
[% IF ( no_op_set ) %]
|
|
<h1>Notices and Slips</h1>
|
|
<form method="get" action="/cgi-bin/koha/tools/letter.pl" id="selectlibrary">
|
|
<input type="hidden" name="searchfield" value="[% searchfield %]" />
|
|
[% UNLESS independant_branch %]
|
|
<p>
|
|
Select a library :
|
|
<select name="branchcode" id="branch" style="width:20em;">
|
|
<option value="">All libraries</option>
|
|
[% FOREACH branchloo IN branchloop %]
|
|
[% IF ( branchloo.selected ) %]<option value="[% branchloo.value %]" selected="selected">[% branchloo.branchname %]</option>[% ELSE %]<option value="[% branchloo.value %]">[% branchloo.branchname %]</option>[% END %]
|
|
[% END %]
|
|
</select>
|
|
</p>
|
|
[% END %]
|
|
<div id="toolbar">
|
|
<input type="submit" id="newnotice" value="New Notice" />
|
|
<input type="hidden" id="op" name="op" />
|
|
</div>
|
|
</form>
|
|
|
|
[% IF ( search ) %]
|
|
<p>You searched for <b>[% searchfield %]</b></p>
|
|
[% END %]
|
|
[% IF ( letter && !independant_branch) %]
|
|
[% select_for_copy = BLOCK %]
|
|
<select name="branchcode">
|
|
[% FOREACH branchloo IN branchloop %]
|
|
<option value="[% branchloo.value %]">Copy to [% branchloo.branchname %]</option>
|
|
[% END %]
|
|
</select>
|
|
[% END %]
|
|
[% END %]
|
|
|
|
[% IF ( letter ) %]
|
|
<table id="lettert">
|
|
<thead><tr>
|
|
<th>Library</th>
|
|
<th>Module</th>
|
|
<th>Code</th>
|
|
<th>Name</th>
|
|
<th>Copy notice</th>
|
|
<th> </th>
|
|
<th> </th>
|
|
</tr></thead>
|
|
<tbody>
|
|
[% FOREACH lette IN letter %]
|
|
[% can_edit = lette.branchcode || !independant_branch %]
|
|
[% UNLESS ( loop.odd ) %]
|
|
<tr class="highlight">
|
|
[% ELSE %]
|
|
<tr>
|
|
[% END %]
|
|
<td>[% lette.branchname || "(All libraries)" %]</td>
|
|
<td>[% lette.module %]</td>
|
|
<td>[% lette.code %]</td>
|
|
<td>[% lette.name %]</td>
|
|
<td style="white-space: nowrap">
|
|
[% IF !independant_branch || !lette.branchcode %]
|
|
<form method="post" action="/cgi-bin/koha/tools/letter.pl">
|
|
<input type="hidden" name="op" value="copy" />
|
|
<input type="hidden" name="oldbranchcode" value="[% lette.branchcode %]" />
|
|
<input type="hidden" name="module" value="[% lette.module %]" />
|
|
<input type="hidden" name="code" value="[% lette.code %]" />
|
|
[% IF independant_branch %]
|
|
<input type="hidden" name="branchcode" value="[% independant_branch %]" />
|
|
[% ELSE %]
|
|
[% select_for_copy %]
|
|
[% END %]
|
|
<input type="submit" value="Copy" />
|
|
</form>
|
|
[% END %]
|
|
</td>
|
|
<td>
|
|
[% IF can_edit %]
|
|
<a href="/cgi-bin/koha/tools/letter.pl?op=add_form&branchcode=[% lette.branchcode %]&module=[% lette.module %]&code=[% lette.code %]">Edit</a>
|
|
[% END %]
|
|
</td>
|
|
<td>
|
|
[% IF !lette.protected && can_edit %]
|
|
<a href="/cgi-bin/koha/tools/letter.pl?op=delete_confirm&branchcode=[%lette.branchcode %]&module=[% lette.module %]&code=[% lette.code %]">Delete</a>
|
|
[% END %]
|
|
</td>
|
|
</tr>
|
|
[% END %]
|
|
</tbody>
|
|
</table>
|
|
[% ELSE %]
|
|
<div class="dialog message">
|
|
[% IF ( branchcode ) %]
|
|
<p>There are no notices for this library.</p>
|
|
[% ELSE %]
|
|
<p>There are no notices.</p>
|
|
[% END %]
|
|
</div>
|
|
[% END %]
|
|
[% END %]
|
|
|
|
|
|
[% IF ( add_form ) %]
|
|
<h1>[% IF ( modify ) %]Modify notice[% ELSE %]Add notice[% END %]</h1>
|
|
<form action="?" name="Aform" method="post">
|
|
<input type="hidden" name="op" id="op" value="add_validate" />
|
|
<input type="hidden" name="checked" value="0" />
|
|
[% IF ( modify ) %]
|
|
<input type="hidden" name="add" value="0" />
|
|
[% ELSE %]
|
|
<input type="hidden" name="add" value="1" />
|
|
[% END %]
|
|
<fieldset class="rows">
|
|
<input type="hidden" name="oldbranchcode" value="[% branchcode %]" />
|
|
[% IF independant_branch %]
|
|
<input type="hidden" name="branchcode" value="[% independant_branch %]" />
|
|
[% ELSE %]
|
|
<ol>
|
|
<li>
|
|
<label for="branch">Library:</label>
|
|
<select name="branchcode" id="branch" style="width:20em;">
|
|
<option value="">All libraries</option>
|
|
[% FOREACH branchloo IN branchloop %]
|
|
[% IF ( branchloo.selected ) %]<option value="[% branchloo.value %]" selected="selected">[% branchloo.branchname %]</option>[% ELSE %]<option value="[% branchloo.value %]">[% branchloo.branchname %]</option>[% END %]
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
[% END %]
|
|
<li>
|
|
<label for="module">Koha module:</label>
|
|
<input type="hidden" name="oldmodule" value="[% module %]" />
|
|
[% IF ( modify ) %]<select name="module" id="module">[% END %] [% IF ( adding ) %] <select name="module" id="module" onchange="javascript:window.location.href = unescape(window.location.pathname)+'?op=add_form&module='+this.value+'&content='+window.document.forms['Aform'].elements['content'].value;">[% END %]
|
|
[% IF ( catalogue ) %]
|
|
<option value="catalogue" selected="selected">Catalog</option>
|
|
[% ELSE %]
|
|
<option value="catalogue" >Catalog</option>
|
|
[% END %]
|
|
[% IF ( circulation ) %]
|
|
<option value="circulation" selected="selected">Circulation</option>
|
|
[% ELSE %]
|
|
<option value="circulation">Circulation</option>
|
|
[% END %]
|
|
[% IF ( claimacquisition ) %]
|
|
<option value="claimacquisition" selected="selected">Claim acquisition</option>
|
|
[% ELSE %]
|
|
<option value="claimacquisition">Claim acquisition</option>
|
|
[% END %]
|
|
[% IF ( claimissues ) %]
|
|
<option value="claimissues" selected="selected">Claim serial issue</option>
|
|
[% ELSE %]
|
|
<option value="claimissues">Claim serial issue</option>
|
|
[% END %]
|
|
[% IF ( reserves ) %]
|
|
<option value="reserves" selected="selected">Holds</option>
|
|
[% ELSE %]
|
|
<option value="reserves">Holds</option>
|
|
[% END %]
|
|
[% IF ( members ) %]
|
|
<option value="members" selected="selected">Members</option>
|
|
[% ELSE %]
|
|
<option value="members">Members</option>
|
|
[% END %]
|
|
[% IF ( serial ) %]
|
|
<option value="serial" selected="selected">Serials (routing list)</option>
|
|
[% ELSE %]
|
|
<option value="serial">Serials (routing list)</option>
|
|
[% END %]
|
|
[% IF ( suggestions ) %]
|
|
<option value="suggestions" selected="selected">Suggestions</option>
|
|
[% ELSE %]
|
|
<option value="suggestions">Suggestions</option>
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
<li>
|
|
<span class="label">Code:</span>[% IF ( adding ) %]<input type="text" id="code" name="code" size="20" maxlength="20" />[% ELSE %]<input type="hidden" id="code" name="code" value="[% code %]" />[% code %][% END %]
|
|
</li>
|
|
<li>
|
|
<label for="name">Name:</label><input type="text" id="name" name="name" size="60" value="[% name %]" />
|
|
</li>
|
|
<li>
|
|
<label for="is_html">HTML message:</label>
|
|
[% IF is_html %]
|
|
<input type="checkbox" id="is_html" name="is_html" value="1" checked />
|
|
[% ELSE %]
|
|
<input type="checkbox" id="is_html" name="is_html" value="1" />
|
|
[% END %]
|
|
</li>
|
|
<li>
|
|
<label for="title">Message subject:</label><input type="text" id="title" name="title" size="60" value="[% title %]" />
|
|
</li>
|
|
<li>
|
|
<label for="SQLfieldname">Message body:</label>
|
|
</li>
|
|
<li>
|
|
<table>
|
|
<tr><td><select name="SQLfieldname" id="SQLfieldname" size="9">
|
|
[% FOREACH SQLfieldnam IN SQLfieldname %]
|
|
<option value="[% SQLfieldnam.value %]">[% SQLfieldnam.text %]</option>
|
|
[% END %]
|
|
</select></td><td><input type="button" name="insert" value=">>" onclick="insertValueQuery()" title="Insert" /></td><td><textarea name="content" cols="80" rows="15">[% content %]</textarea></td></tr></table>
|
|
|
|
</li>
|
|
</ol>
|
|
[% IF code.search('DGST') %] <span class="overdue">Warning, this is a template for a Digest, as such, any references to branch data ( e.g. branches.branchname ) will refer to the borrower's home branch.</span> [% END %]
|
|
</fieldset>
|
|
<fieldset class="action"><input type="button" value="Submit" onclick="Check(this.form)" class="button" /> <a class="cancel" href="/cgi-bin/koha/tools/letter.pl">Cancel</a></fieldset>
|
|
<input type="hidden" name="searchfield" value="[% searchfield %]" />
|
|
</form>
|
|
[% END %]
|
|
|
|
[% IF ( add_validate ) %]
|
|
Data recorded
|
|
<form action="[% action %]" method="post">
|
|
<input type="submit" value="OK" />
|
|
</form>
|
|
[% END %]
|
|
|
|
[% IF ( delete_confirm ) %]
|
|
<div class="dialog alert"><h3>Delete notice?</h3>
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th>Library</th>
|
|
<th>Module</th>
|
|
<th>Code</th>
|
|
<th>Name</th>
|
|
</tr>
|
|
</thead>
|
|
<tr>
|
|
<td>[% branchname %]</td>
|
|
<td>[% module %]</td>
|
|
<td>[% code %]</td>
|
|
<td>[% name %]</td>
|
|
</tr>
|
|
</table>
|
|
<form action="[% action %]" method="post">
|
|
<input type="hidden" name="op" value="delete_confirmed">
|
|
<input type="hidden" name="branchcode" value="[% branchcode %]" />
|
|
<input type="hidden" name="code" value="[% code %]" />
|
|
<input type="hidden" name="module" value="[% module %]" />
|
|
<input type="submit" value="Yes, delete" class="approve" />
|
|
</form>
|
|
|
|
<form action="[% action %]" method="get">
|
|
<input type="submit" value="No, do not delete" class="deny" />
|
|
</form>
|
|
</div>
|
|
|
|
[% END %]
|
|
|
|
[% IF ( delete_confirmed ) %]
|
|
Data deleted
|
|
<form action="[% action %]" method="post">
|
|
<input type="submit" value="OK" />
|
|
</form>
|
|
[% END %]
|
|
|
|
</div>
|
|
</div>
|
|
[% UNLESS ( add_form ) %]
|
|
<div class="yui-b noprint">
|
|
[% INCLUDE 'tools-menu.inc' %]
|
|
</div>
|
|
[% END %]
|
|
</div>
|
|
[% INCLUDE 'intranet-bottom.inc' %]
|