1 [% INCLUDE 'doc-head-open.inc' %]
2 <title>Koha › Serials › Claims</title>
3 [% INCLUDE 'doc-head-close.inc' %]
4 [% INCLUDE 'calendar.inc' %]
5 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
6 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.uitablefilter.js"></script>
7 <script type="text/JavaScript" language="JavaScript">
9 $(document).ready(function() {
10 [% UNLESS ( preview ) %]$("#claimst").tablesorter({[% IF ( dateformat == 'metric' ) %]
11 dateFormat: 'uk',[% END %]
12 headers: { 0: { sorter: false },1:{sorter:false}}
14 $('#supplierid').change(function() {
15 $('#claims').submit();
18 // Case-insensitive version of jquery's contains function
21 icontains : "jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0"
26 // Checkboxes : Select All / None
27 $("span.checkall").html("<input type=\"checkbox\" name=\"CheckAll\"> "+_("Check All")+"</input>");
28 $("span.exportSelected").html("<a id=\"ExportSelected\" href=\"/cgi-bin/koha/serials/claims.pl\"> "+_("Export selected items data") +"<\/a>");
30 $("#CheckAll").click(function() {
31 $("#claimst tr:visible :checkbox").attr('checked', $("#CheckAll").is(':checked'));
34 // Generates a dynamic link for exporting the selection's data as CSV
35 $("#ExportSelected").click(function() {
36 // We use input:checked because it's faster, but if there must new checkboxes
37 // used for other purpose on this page, please use [name=serialid]:checked instead
38 var selected = $("input:checked");
40 if (selected.length == 0) {
41 alert(_('Please select at least one item to export.'));
45 // Building the url from currently checked boxes
46 var url = '/cgi-bin/koha/serials/lateissues-excel.pl?supplierid=&op=claims';
47 for (var i = 0; i < selected.length; i++) {
48 url += '&serialid=' + selected[i].value;
50 // And redirecting to the CSV page
55 $("#titlefilter").keyup(function() {
56 $.uiTableFilter($("#claimst"), $("#titlefilter").val())
59 $("#branchfilter").keyup(function() {
60 $.uiTableFilter($("#claimst"), $("#branchfilter").val())
64 // Checks if the form can be sent (at least one checkbox must be checked)
65 function checkForm() {
66 if ($("input:checked").length == 0) {
67 alert(_('Please select at least one item.'));
73 function filterByStatus() {
74 selectedStatus = $("#statusfilter").val();
75 if (selectedStatus == "all") {
78 $("table#claimst tbody tr").hide();
79 $("table#claimst tbody tr:contains(" + selectedStatus + ")").show();
84 function filterByBranch() {
85 selectedBranch = $("#branchfilter").val();
86 if (selectedBranch == "all") {
89 $("table#claimst tbody tr").hide();
90 $("table#claimst tbody tr:contains(" + selectedBranch + ")").show();
94 function filterByDate() {
95 var beginDate = Date_from_syspref($("#from").val()).getTime();
96 var endDate = Date_from_syspref($("#to").val()).getTime();
98 // Checks if the beginning date is valid
99 if (!parseInt(beginDate)) {
100 alert(_('The beginning date is missing or invalid.'));
104 // Checks if the ending date is valid
105 if (!parseInt(endDate)) {
106 alert(_('The ending date is missing or invalid.'));
110 // Checks if beginning date is before ending date
111 if (beginDate > endDate) {
112 // If not, we swap them
113 var tmpDate = endDate;
118 // We hide everything
119 $("table#claimst tbody tr").hide();
121 // For each date in the table
122 $(".planneddate").each(function() {
124 // We make a JS Date Object, according to the locale
125 var pdate = Date_from_syspref($(this).text()).getTime();
127 // And checks if the date is between the beginning and ending dates
128 if (pdate > beginDate &&
130 // If so, we can show the row
131 $(this).parent().show();
137 // Clears filters : shows everything
138 function clearFilters() {
139 $("table#claimst tbody tr").show();
142 function popup(supplierid,serialid){
143 window.open('claims.pl?supplierid='+ supplierid +'&serialid='+ serialid +'&op=preview' ,'popup', 'width=600,height=400,toolbar=no,scrollbars=yes');
149 <body id="ser_claims" class="ser">
150 [% INCLUDE 'header.inc' %]
151 [% UNLESS ( preview ) %]
152 [% INCLUDE 'serials-search.inc' %]
155 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/serials/serials-home.pl">Serials</a> › Claims</div>
157 [% UNLESS ( preview ) %]
159 <div id="doc3" class="yui-t2">
167 [% IF ( letter ) %][% UNLESS ( missingissues ) %][% IF ( supplierid ) %] <div class="dialog alert">No missing issues found.</div>[% ELSE %]<div class="dialog message">Please choose a vendor.</div>[% END %][% END %][% END %]
169 [% IF ( SHOWCONFIRMATION ) %]
170 <div class="dialog alert">Your notification has been sent.</div>
172 [% UNLESS ( letter ) %]<div class="dialog alert">No claims notice defined. <a href="/cgi-bin/koha/tools/letter.pl">Please define one</a>.</div>[% END %]
173 <form id="claims" name="claims" action="claims.pl" method="post">
175 <label for="supplierid">Vendor: </label>
176 <select id="supplierid" name="supplierid">
177 [% FOREACH suploo IN suploop %]
178 [% IF ( suploo.selected ) %]
179 <option value="[% suploo.id %]" selected="selected" >
181 <option value="[% suploo.id %]">
188 <input type="submit" value="OK" />
189 [% IF ( phone ) %]Phone: [% phone %][% END %]
190 [% IF ( booksellerfax ) %]Fax: [% booksellerfax %][% END %]
191 [% IF ( bookselleremail ) %]</p><p><a href="mailto:[% bookselleremail %]">[% bookselleremail %]</a>[% END %]
195 [% IF ( missingissues ) %]
196 <h3>Missing issues</h3>
197 <form action="claims.pl" onsubmit="return false;">
198 <fieldset class="rows">
199 <legend>Filters :</legend>
203 <label for="statusfilter">Status : </label>
204 <select id="statusfilter" onchange="filterByStatus();">
205 <option value="all" selected="selected">(All)</option>
206 <option>Expected</option>
207 <option>Arrived</option>
208 <option>Late</option>
209 <option>Missing</option>
210 <option>Claimed</option>
211 <option>Stopped</option>
216 <label for="titlefilter">Title : </label>
217 <input id="titlefilter" type="text" />
218 <label for="branchfilter">Library: </label>
219 <select id="branchfilter" onchange="filterByBranch();">
220 [% FOREACH branchloo IN branchloop %]
221 [% IF ( branchloo.selected ) %]
222 <option value="[% branchloo.value %]" selected="selected">[% branchloo.branchname %]</option>
224 <option value="[% branchloo.value %]">[% branchloo.branchname %]</option>
231 <label for="from">From</label>
232 <input type="text" name="begindate" id="from" value="[% begindate %]" size="10" maxlength="10" class="datepickerfrom" />
233 <label for="to" style="float:none;">To</label>
234 <input type="text" name="enddate" id="to" value="[% enddate %]" size="10" maxlength="10" class="datepickerto" />
235 <span class="hint">[% INCLUDE 'date-format.inc' %]</span>
236 <input type="button" value="OK" onclick="filterByDate();" />
240 <input type="reset" value="Clear filters" onclick="clearFilters();" />
247 <form action="claims.pl" method="post" class="checkboxed" onsubmit="return checkForm()">
248 <input type="hidden" name="order" value="[% order %]" />
252 <th><input type="checkbox" id="CheckAll"></th>
257 <th>Issue number</th>
263 <tbody>[% FOREACH missingissue IN missingissues %]
267 <input type="checkbox" name="serialid" value="[% missingissue.serialid %]" />
271 [% missingissue.name %]
274 [% missingissue.branchcode %]
277 <a href="/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=[% missingissue.subscriptionid %]">[% missingissue.title |html %]</a>
280 [% missingissue.serialseq %]
283 [% IF ( missingissue.status1 ) %]Expected[% END %]
284 [% IF ( missingissue.status2 ) %]Arrived[% END %]
285 [% IF ( missingissue.status3 ) %]Late[% END %]
286 [% IF ( missingissue.status4 ) %]Missing[% END %]
287 [% IF ( missingissue.status7 ) %]Claimed[% END %]
288 [% IF ( missingissue.status8 ) %]Stopped[% END %]
290 <td class="planneddate">
291 [% missingissue.planneddate %]
294 [% missingissue.claimdate %]
297 <a href="/cgi-bin/koha/serials/lateissues-excel.pl?supplierid=[% missingissue.supplieri %]&serialid=[% missingissue.serialid %]&op=claims">Export item data</a>
302 <p><span class="exportSelected"></span></p>
305 <fieldset class="action"> <label for="letter_code">Select notice:</label>
306 <select name="letter_code" id="letter_code">
307 [% FOREACH letter IN letters %]
308 <option value="[% letter.code %]">[% letter.name %]</option>
311 <input type="hidden" name="op" value="send_alert" /><input type="submit" name="submit" class="button" value="Send notification" /></fieldset>
319 <div id="doc" class="yui-t7">
322 [% IF ( supplierloop ) %]
323 [% FOREACH supplierloo IN supplierloop %]
324 [% IF ( supplierloo.name ) %]
325 <p><b>[% supplierloo.name %]</b><br />
327 [% IF ( supplierloo.postal ) %]
328 [% supplierloo.postal %]<br />
330 [% IF ( supplierloo.contphone ) %]
331 Ph: [% supplierloo.contphone %]<br />
333 [% IF ( supplierloo.contfax ) %]
334 Fax: [% supplierloo.contfax %]<br />
336 [% IF ( supplierloo.contemail ) %]
337 Email: [% supplierloo.contemail %]<br />
339 [% IF ( supplierloo.accountnumber ) %]
340 A/C: [% supplierloo.accountnumber %]</p>
342 [% IF ( supplierloo.contact ) %]
343 <p>Dear [% supplierloo.contact %]</p>
345 <p>To whom it may concern</p>
347 <p>The following items have not been received from you and are now considered missing:</p>
350 [% IF ( missingissues ) %]
351 <h3>Missing issues</h3>
354 <td><b>Vendor<b></td>
355 <td><b>Title</b></td>
356 <td><b>Issue number</b></td>
357 <td><b>Missing since</b></td>
359 [% FOREACH missingissue IN missingissues %]
362 [% missingissue.name %]
365 [% missingissue.Title |html %]
368 [% missingissue.serialseq %]
371 [% missingissue.planneddate %]
378 <p class="noprint"><a href="#" onclick="window.print(); return false;">Print</a> <a href="#" class="close">Close</a></p>
384 [% UNLESS ( preview ) %]
386 [% INCLUDE 'serials-menu.inc' %]
390 [% INCLUDE 'intranet-bottom.inc' %]