Browse Source
This patch removes two files, serials-recieve.pl and serial-recieve.tt serials-recieve.pl is not called anyware (it's recieve!) Also removes the sub removeMissingIssue called only from serials-recieve.pl git grep serials-recieve.pl . C4/Serials.pm:called when a missing issue is found from the serials-recieve.pl file koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-recieve.tt: <form method="post" name="f" action="serials-recieve.pl" onsubmit="return barcode_check()"> koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-recieve.tt: <form method="post" name="f2" action="serials-recieve.pl"> serials/serials-recieve.pl:serials-recieve.pl Just a POD entry and self reference. After removing of files git grep removeMissingIssue . C4/Serials.pm: &check_routing &updateClaim &removeMissingIssue C4/Serials.pm:=head2 removeMissingIssue C4/Serials.pm:removeMissingIssue($subscriptionid) C4/Serials.pm:sub removeMissingIssue { t/db_dependent/Serials.t:is(C4::Serials::removeMissingIssue(), undef, 'test removing a missing issue'); Not used anymore To test: 1) Apply the patch 2) Check serials workflow, no changes must be noted Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>3.20.x
Bernardo Gonzalez Kriegel
9 years ago
committed by
Tomas Cohen Arazi
4 changed files with 1 additions and 685 deletions
@ -1,363 +0,0 @@ |
|||
[% INCLUDE 'doc-head-open.inc' %] |
|||
<title>Koha › Serials › Check in subscription for [% bibliotitle %]</title> |
|||
[% INCLUDE 'doc-head-close.inc' %] |
|||
<script language="JavaScript" type="text/javascript"> |
|||
//<![CDATA[ |
|||
function popup() { |
|||
window.open("subscription-renew.pl?subscriptionid=[% subscriptionid %]","subscription_renewal",'width=700,height=400,toolbar=false,scrollbars=yes'); |
|||
} |
|||
|
|||
function barcode_check(){ |
|||
[% IF ( count ) %] |
|||
var count = '[% count %]'; |
|||
for(var i=1;i<=count;i++){ |
|||
|
|||
var barcodenum = "barcode"+i; |
|||
var statusnum = "status"+i; |
|||
var elembarcode = "document.getElementById('"+barcodenum+"')"; |
|||
var elemstatus = "document.getElementById('"+statusnum+"')"; |
|||
// alert(elembarcode+"\n"+eval(elembarcode+".value)); |
|||
// alert(elemstatus+"\n"+eval(elemstatus+".value")); |
|||
if(eval(elembarcode+".value") =='' && eval(elemstatus+".value") == 2){ |
|||
var answer = confirm("Leave barcode blank?\n - Note: unable to change this later"); |
|||
if (answer){ |
|||
document.f.submit(); |
|||
} else { |
|||
return false; |
|||
} |
|||
} |
|||
if(eval(elembarcode+".value".indexOf('TEMP')) > 0 && eval(elemstatus+".value") == 2){ |
|||
var answer = confirm("A barcode was not entered.\nDo you want to put in a barcode\nor do you want to use a system generated barcode?"); |
|||
if (answer){ |
|||
document.f.submit(); |
|||
} else { |
|||
return false; |
|||
} |
|||
} |
|||
} |
|||
[% END %] |
|||
} |
|||
//]]> |
|||
</script> |
|||
</head> |
|||
<body id="ser_serials-recieve" class="ser"> |
|||
[% INCLUDE 'header.inc' %] |
|||
[% INCLUDE 'serials-search.inc' %] |
|||
|
|||
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/serials/serials-home.pl">Serials</a> › Check in subscription for <i>[% bibliotitle %]</i></div> |
|||
|
|||
<div id="doc3" class="yui-t2"> |
|||
|
|||
<div id="bd"> |
|||
<div id="yui-main"> |
|||
<div class="yui-b"> |
|||
|
|||
<h1>Check In subscription for <i>[% bibliotitle %]</i></h1> |
|||
<div id="action"> |
|||
<a href="subscription-detail.pl?subscriptionid=[% subscriptionid %]" title="detail of the subscription">Subscription Details</a> |
|||
<!-- <a href="/cgi-bin/koha/serials/serials-home.pl?biblionumber=[% biblionumber %]" class="button" title="all subscriptions on [% bibliotitle %]">Search all subscriptions</a> --> |
|||
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber %]" title="go to [% bibliotitle %]">Show biblio</a> |
|||
[% IF ( routing ) %] |
|||
<a href="routing.pl?subscriptionid=[% subscriptionid %]" title="subscription routing list">Routing list</a> |
|||
[% END %] |
|||
</div> |
|||
|
|||
<h2>Expected or late</h2> |
|||
<form method="post" name="f" action="serials-recieve.pl" onsubmit="return barcode_check()"> |
|||
<input type="hidden" name="op" value="serialchangestatus" /> |
|||
<input type="hidden" name="serial" value="[% serial %]" /> |
|||
<input type="hidden" name="subscriptionid" value="[% subscriptionid %]" /> |
|||
<input type="hidden" name="user" value="[% user %]" /> |
|||
<table> |
|||
<tr> |
|||
<th>Numbered</th> |
|||
<th>Published on</th> |
|||
<th>Planned for</th> |
|||
<th>Status</th> |
|||
<th>Notes</th> |
|||
</tr> |
|||
[% FOREACH serialslis IN serialslist %] |
|||
<tr> |
|||
<td> |
|||
Issue <input type="text" name="serialseq" value="[% serialslis.serialseq %]" size="20" maxlength="100" /> |
|||
[% IF ( serialslis.serialadditems ) %] |
|||
<br /><br /> |
|||
Call number <input type="text" name="itemcallnumber" value="[% serialslis.callnumber %]" size="15" maxlength="100" /> |
|||
Barcode <input type="text" name="barcode" value="[% serialslis.barcode %]" id="barcode[% serialslis.num %]" size="20" maxlength="20" /> |
|||
[% END %] |
|||
</td> |
|||
<td> |
|||
<input type="text" name="publisheddate" value="[% serialslis.publisheddate %]" size="10" maxlength="15" /> |
|||
[% IF ( serialslis.serialadditems ) %] |
|||
<br /><br /> |
|||
[% END %] |
|||
</td> |
|||
<td> |
|||
<input type="text" name="planneddate" value="[% serialslis.planneddate %]" size="10" maxlength="15" /> |
|||
[% IF ( serialslis.serialadditems ) %] |
|||
<br /><br /> |
|||
<select name="branch"> |
|||
<option value="">Library</option> |
|||
[% FOREACH branchloo IN serialslis.branchloop %][% IF ( branchloo.selected ) %]<option value="[% branchloo.value %]" selected="selected">[% branchloo.branchname %]</option> |
|||
[% ELSE %] |
|||
<option value="[% branchloo.value %]">[% branchloo.branchname %]</option> |
|||
[% END %] |
|||
[% END %] |
|||
</select> |
|||
[% END %] |
|||
</td> |
|||
<td> |
|||
<input type="hidden" name="serialid" value="[% serialslis.serialid %]" /> |
|||
<select name="status" id="status[% serialslis.num %]"> |
|||
[% IF ( serialslis.status1 ) %] |
|||
<option value="1" selected="selected">Expected</option> |
|||
[% END %] |
|||
[% IF ( serialslis.status2 ) %] |
|||
<option value="2" selected="selected">Arrived</option> |
|||
[% ELSE %] |
|||
<option value="2">Arrived</option> |
|||
[% END %] |
|||
[% IF ( serialslis.status3 ) %] |
|||
<option value="3" selected="selected">Late</option> |
|||
[% ELSE %] |
|||
<option value="3">Late</option> |
|||
[% END %] |
|||
[% IF ( serialslis.status4 ) %] |
|||
<option value="4" selected="selected">Missing</option> |
|||
[% ELSE %] |
|||
<option value="4">Missing</option> |
|||
[% END %] |
|||
[% IF ( serialslis.status41 ) %] |
|||
<option value="41" selected="selected">Missing (never received)</option> |
|||
[% ELSE %] |
|||
<option value="41">Missing (never received)</option> |
|||
[% END %] |
|||
[% IF ( serialslis.status42 ) %] |
|||
<option value="42" selected="selected">Missing (sold out)</option> |
|||
[% ELSE %] |
|||
<option value="42">Missing (sold out)</option> |
|||
[% END %] |
|||
[% IF ( serialslis.status43 ) %] |
|||
<option value="43" selected="selected">Missing (damaged)</option> |
|||
[% ELSE %] |
|||
<option value="43">Missing (damaged)</option> |
|||
[% END %] |
|||
[% IF ( serialslis.status44 ) %] |
|||
<option value="44" selected="selected">Missing (lost)</option> |
|||
[% ELSE %] |
|||
<option value="44">Missing (lost)</option> |
|||
[% END %] |
|||
[% IF ( serialslis.status5 ) %] |
|||
<option value="5" selected="selected">Not available</option> |
|||
[% ELSE %] |
|||
<option value="5">Not available</option> |
|||
[% END %] |
|||
[% IF ( serialslis.status6 ) %] |
|||
<option value="6" selected="selected">Delete</option> |
|||
[% ELSE %] |
|||
<option value="6">Delete</option> |
|||
[% END %] |
|||
[% IF serialslis.status8 %] |
|||
<option value="8" selected="selected">Stopped</option> |
|||
[% END %] |
|||
</select> |
|||
[% IF ( serialslis.serialadditems ) %] |
|||
<br /><br /> |
|||
[% IF ( serialslis.itemstatus ) %] |
|||
[% IF ( serialslis.choice ) %] |
|||
[% FOREACH itemstatusloo IN serialslis.itemstatusloop %] |
|||
[% itemstatusloo.itemlib %]: |
|||
[% IF ( itemstatusloo.selected ) %] |
|||
<input type="checkbox" name="itemstatus" value="[% itemstatusloo.itemval %]" checked="checked" /> |
|||
[% ELSE %] |
|||
<input type="checkbox" name="itemstatus" value="[% itemstatusloo.itemval %]" /> |
|||
[% END %] |
|||
[% END %] |
|||
[% ELSE %] |
|||
<select name="itemstatus"> |
|||
<option value="">Item status</option> |
|||
[% FOREACH itemstatusloo IN serialslis.itemstatusloop %] |
|||
[% IF ( itemstatusloo.selected ) %] |
|||
<option value="[% itemstatusloo.itemval %]" selected="selected">[% itemstatusloo.itemlib %]</option> |
|||
[% ELSE %] |
|||
<option value="[% itemstatusloo.itemval %]">[% itemstatusloo.itemlib %]</option> |
|||
[% END %] |
|||
[% END %] |
|||
</select> |
|||
[% END %] |
|||
[% ELSE %] |
|||
|
|||
[% END %] |
|||
[% END %] |
|||
|
|||
</td> |
|||
<td> |
|||
<input type="text" name="notes" value="[% serialslis.notes %]" size="20" maxlength="255" /> |
|||
[% IF ( serialslis.serialadditems ) %] |
|||
<br /><br /> |
|||
[% IF ( serialslis.itemlocation ) %] |
|||
<select name="location"> |
|||
<option value="">Location</option> |
|||
[% FOREACH itemlocationloo IN serialslis.itemlocationloop %] |
|||
[% IF ( itemlocationloo.selected ) %] |
|||
<option value="[% itemlocationloo.value %]" selected="selected">[% itemlocationloo.itemlocationname %]</option> |
|||
[% ELSE %] |
|||
<option value="[% itemlocationloo.value %]">[% itemlocationloo.itemlocationname %]</option> |
|||
[% END %] |
|||
[% END %] |
|||
</select> |
|||
[% ELSE %] |
|||
|
|||
[% END %] |
|||
[% END %] |
|||
</td> |
|||
</tr> |
|||
[% END %] |
|||
[% UNLESS ( hassubscriptionexpired ) %] |
|||
<tr> |
|||
<td> |
|||
Manual issue <input type="text" name="serialseq" size="30" maxlength="100" value="[% missingseq %]" /> |
|||
[% IF ( serialadditems ) %] |
|||
<br /><br /> |
|||
Call number <input type="text" name="itemcallnumber" value="" size="10" maxlength="15" /> |
|||
Barcode <input type="text" name="barcode" value="" size="20" maxlength="20" /> |
|||
[% END %] |
|||
</td> |
|||
<td> |
|||
<input type="text" name="publisheddate" value="[% publisheddate %]" size="10" maxlength="15" /> |
|||
[% IF ( serialadditems ) %] |
|||
<br /><br /> |
|||
[% END %] |
|||
</td> |
|||
<td> |
|||
<input type="text" name="planneddate" size="10" maxlength="15" value="[% missingdate %]" /> |
|||
[% IF ( serialadditems ) %] |
|||
<br /><br /> |
|||
<select name="branch"> |
|||
<option value="">Library</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> |
|||
[% END %] |
|||
</td> |
|||
<td> |
|||
[% IF ( frommissing ) %] |
|||
<input type="hidden" name="serialid" value="[% missingid %]" /> |
|||
[% ELSE %] |
|||
<input type="hidden" name="serialid" value="0" /> |
|||
[% END %] |
|||
<select name="status"> |
|||
[% IF ( frommissing ) %] |
|||
<option value="2" selected="selected">Arrived</option> |
|||
[% ELSE %] |
|||
<option value="2">Arrived</option> |
|||
|
|||
[% END %] |
|||
[% IF ( frommissing ) %] |
|||
<option value="3">Late</option> |
|||
[% ELSE %] |
|||
<option value="3" selected="selected">Late</option> |
|||
[% END %] |
|||
<option value="4">Missing</option> |
|||
<option value="5">Not available</option> |
|||
|
|||
|
|||
</select> |
|||
[% IF ( serialadditems ) %] |
|||
<br /><br /> |
|||
[% IF ( itemstatus ) %] |
|||
[% IF ( choice ) %] |
|||
[% FOREACH itemstatusloo IN itemstatusloop %] |
|||
[% itemstatusloo.itemlib %]: |
|||
[% IF ( itemstatusloo.selected ) %] |
|||
<input type="checkbox" name="itemstatus" value="[% itemstatusloo.itemval %]" checked="checked" /> |
|||
[% ELSE %] |
|||
<input type="checkbox" name="itemstatus" value="[% itemstatusloo.itemval %]" /> |
|||
[% END %] |
|||
[% END %] |
|||
[% ELSE %] |
|||
<select name="itemstatus"> |
|||
<option value="">Item status</option> |
|||
[% FOREACH itemstatusloo IN itemstatusloop %] |
|||
[% IF ( itemstatusloo.selected ) %] |
|||
<option value="[% itemstatusloo.itemval %]" selected="selected">[% itemstatusloo.itemlib %]</option> |
|||
[% ELSE %] |
|||
<option value="[% itemstatusloo.itemval %]">[% itemstatusloo.itemlib %]</option> |
|||
[% END %] |
|||
[% END %] |
|||
</select> |
|||
[% END %] |
|||
[% ELSE %] |
|||
|
|||
[% END %] |
|||
[% END %] |
|||
</td> |
|||
<td> |
|||
|
|||
[% IF ( serialadditems ) %] |
|||
<br /><br /> |
|||
[% IF ( itemlocation ) %] |
|||
<select name="location"> |
|||
<option value="">Location</option> |
|||
[% FOREACH itemlocationloo IN itemlocationloop %] |
|||
[% IF ( itemlocationloo.selected ) %] |
|||
<option value="[% itemlocationloo.value %]" selected="selected">[% itemlocationloo.itemlocationname %]</option> |
|||
[% ELSE %] |
|||
<option value="[% itemlocationloo.value %]">[% itemlocationloo.itemlocationname %]</option> |
|||
[% END %] |
|||
[% END %] |
|||
</select> |
|||
[% ELSE %] |
|||
|
|||
[% END %] |
|||
[% END %] |
|||
</td> |
|||
</tr> |
|||
[% END %] |
|||
</table> |
|||
<input type="submit" value="Save changes" accesskey="w" class="button" /> |
|||
[% IF ( hassubscriptionexpired ) %] |
|||
<h3>Subscription has expired.</h3> |
|||
<p><b>Expected issue status can't be changed. <a href="#" onclick="popup()" class="button">Renew</a> your subscription</b></p> |
|||
[% END %] |
|||
[% IF ( abouttoexpire ) %] |
|||
<h3>Note: Subscription is about to expire next issue.</h3> |
|||
<script type="text/javascript"> |
|||
<!-- |
|||
alert(_("Subscription is about to expire next issue")); |
|||
//--> |
|||
</script> |
|||
[% END %] |
|||
</form> |
|||
|
|||
<h2>Subscription summary</h2> |
|||
<form method="post" name="f2" action="serials-recieve.pl"> |
|||
<input type="hidden" name="op" value="modsubscriptionhistory" /> |
|||
<input type="hidden" name="serial" value="[% serial %]" /> |
|||
<input type="hidden" name="subscriptionid" value="[% subscriptionid %]" /> |
|||
<input type="hidden" name="user" value="[% user %]" /> |
|||
<p><label>Librarian</label>[% user %]</p> |
|||
<p><label>Starting date:</label><input type="text" name="histstartdate" value="[% histstartdate %]" /> (the date of the 1st subscription)</p> |
|||
<p><label>Ending date:</label><input type="text" name="enddate" value="[% enddate %]" />(if empty subscription is still active)</p> |
|||
<p>Received issues</p> |
|||
<p><textarea name="recievedlist" cols="60" rows="5">[% recievedlist %]</textarea></p> |
|||
<p>Missing issues</p> |
|||
<p><textarea name="missinglist" cols="60" rows="2">[% missinglist %]</textarea></p> |
|||
<p>OPAC note</p> |
|||
<p><textarea name="opacnote" cols="60" rows="5">[% opacnote %]</textarea></p> |
|||
<input type="submit" value="Save changes" class="button" /> |
|||
</form> |
|||
|
|||
|
|||
</div> |
|||
</div> |
|||
|
|||
<div class="yui-b"> |
|||
[% INCLUDE 'serials-menu.inc' %] |
|||
</div> |
|||
</div> |
|||
[% INCLUDE 'intranet-bottom.inc' %] |
@ -1,278 +0,0 @@ |
|||
#!/usr/bin/perl |
|||
|
|||
# Copyright 2000-2002 Katipo Communications |
|||
# |
|||
# This file is part of Koha. |
|||
# |
|||
# Koha is free software; you can redistribute it and/or modify it |
|||
# under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 3 of the License, or |
|||
# (at your option) any later version. |
|||
# |
|||
# Koha is distributed in the hope that it will be useful, but |
|||
# WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Koha; if not, see <http://www.gnu.org/licenses>. |
|||
|
|||
|
|||
=head1 NAME |
|||
|
|||
serials-recieve.pl |
|||
|
|||
=head1 Parameters |
|||
|
|||
=over 4 |
|||
|
|||
=item op |
|||
op can be : |
|||
* modsubscriptionhistory :to modify the subscription history |
|||
* serialchangestatus :to modify the status of this subscription |
|||
|
|||
=item subscriptionid |
|||
|
|||
=item user |
|||
|
|||
=item histstartdate |
|||
|
|||
=item enddate |
|||
|
|||
=item recievedlist |
|||
|
|||
=item missinglist |
|||
|
|||
=item opacnote |
|||
|
|||
=item librariannote |
|||
|
|||
=item serialid |
|||
|
|||
=item serialseq |
|||
|
|||
=item planneddate |
|||
|
|||
=item notes |
|||
|
|||
=item status |
|||
|
|||
=back |
|||
|
|||
=cut |
|||
|
|||
|
|||
use strict; |
|||
use warnings; |
|||
use CGI qw ( -utf8 ); |
|||
use C4::Auth; |
|||
use C4::Dates qw/format_date format_date_in_iso/; |
|||
use C4::Biblio; |
|||
use C4::Items; |
|||
use C4::Koha; |
|||
use C4::Output; |
|||
use C4::Context; |
|||
use C4::Serials; |
|||
use C4::Branch; # GetBranches |
|||
|
|||
my $query = new CGI; |
|||
my $op = $query->param('op') || q{}; |
|||
my $dbh = C4::Context->dbh; |
|||
my $subscriptionid = $query->param('subscriptionid'); |
|||
# my $auser = $query->param('user'); |
|||
my $histstartdate = format_date_in_iso($query->param('histstartdate')); |
|||
my $enddate = format_date_in_iso($query->param('enddate')); |
|||
my $recievedlist = $query->param('recievedlist'); |
|||
my $missinglist = $query->param('missinglist'); |
|||
my $opacnote = $query->param('opacnote'); |
|||
my $librariannote = $query->param('librariannote'); |
|||
my @serialids = $query->param('serialid'); |
|||
my @serialseqs = $query->param('serialseq'); |
|||
my @planneddates = $query->param('planneddate'); |
|||
my @publisheddates = $query->param('publisheddate'); |
|||
my @status = $query->param('status'); |
|||
my @notes = $query->param('notes'); |
|||
my @barcodes = $query->param('barcode'); |
|||
my @itemcallnumbers = $query->param('itemcallnumber'); |
|||
my @locations = $query->param('location'); |
|||
my @itemstatus = $query->param('itemstatus'); |
|||
my @homebranches = $query->param('branch'); |
|||
my $hassubscriptionexpired = HasSubscriptionExpired($subscriptionid); |
|||
my $abouttoexpire = abouttoexpire($subscriptionid); |
|||
|
|||
my $subscription=GetSubscription($subscriptionid); |
|||
|
|||
|
|||
my $auser = $subscription->{'librarian'}; # bob |
|||
my $routing = check_routing($subscriptionid); # to see if routing list exists |
|||
my $manualdate =''; |
|||
my $manualissue =''; |
|||
my $manualstatus =0; |
|||
my $manualid =''; |
|||
if ($op eq 'found'){ |
|||
$manualdate = $query->param('planneddate'); |
|||
$manualissue = $query->param('missingissue'); |
|||
$manualstatus = 1; |
|||
my $sth = $dbh->prepare("select serialid from serial where subscriptionid = ? AND serialseq = ? AND planneddate = ?"); |
|||
$sth->execute($subscriptionid,$manualissue,format_date_in_iso($manualdate)); |
|||
$manualid = $sth->fetchrow; |
|||
} |
|||
if ($op eq 'modsubscriptionhistory') { |
|||
ModSubscriptionHistory($subscriptionid,$histstartdate,$enddate,$recievedlist,$missinglist,$opacnote,$librariannote); |
|||
} |
|||
|
|||
# change status except, if subscription has expired, for the "waited" issue. |
|||
if ($op eq 'serialchangestatus') { |
|||
my $sth = $dbh->prepare("select status from serial where serialid=?"); |
|||
for (my $i=0;$i<=$#serialids;$i++) { |
|||
$sth->execute($serialids[$i]); |
|||
|
|||
my ($oldstatus) = $sth->fetchrow; |
|||
if ($serialids[$i]) { |
|||
ModSerialStatus($serialids[$i],$serialseqs[$i],format_date_in_iso($planneddates[$i]),format_date_in_iso($publisheddates[$i]),$status[$i],$notes[$i]) unless ($hassubscriptionexpired && $oldstatus == 1); |
|||
if (($status[$i]==2) && C4::Context->preference("serialsadditems")){ |
|||
my %info; |
|||
$info{branch}=$homebranches[$i]; |
|||
$info{barcode}=$barcodes[$i]; |
|||
$info{itemcallnumber}=$itemcallnumbers[$i]; |
|||
$info{location}=$locations[$i]; |
|||
$info{status}=$itemstatus[$i]; |
|||
$info{notes}=$serialseqs[$i]." (".$planneddates[$i].")"; |
|||
my ($status2, @errors)= ItemizeSerials($serialids[$i],\%info); |
|||
my $sth2 = $dbh->prepare("UPDATE subscriptionhistory SET lastbranch = ? WHERE subscriptionid = ?"); |
|||
$sth2->execute($homebranches[$i],$subscriptionid); |
|||
$sth2->finish; |
|||
# remove from missing list if item being checked in is on it |
|||
if ($status2 ==1){ |
|||
removeMissingIssue($serialseqs[$i],$subscriptionid); |
|||
} |
|||
} |
|||
} else { |
|||
# add a special issue |
|||
if ($serialseqs[$i]) { |
|||
NewIssue($serialseqs[$i],$subscriptionid,$subscription->{biblionumber},$status[$i] ,format_date_in_iso($publisheddates[$i]),format_date_in_iso($planneddates[$i])); |
|||
} |
|||
if (($status[$i]==2) && C4::Context->preference("serialsadditems") && !hassubscriptionexpired($subscriptionid)){ |
|||
my %info; |
|||
$info{branch}=$homebranches[$i]; |
|||
$info{barcode}=$barcodes[$i]; |
|||
$info{itemcallnumber}=$itemcallnumbers[$i]; |
|||
$info{location}=$locations[$i]; |
|||
$info{status}=$itemstatus[$i]; |
|||
$info{notes}=$serialseqs[$i]." (".$planneddates[$i].")"; |
|||
my ($status2, @errors)= ItemizeSerials($serialids[$i],\%info); |
|||
my $sth2 = $dbh->prepare("UPDATE subscriptionhistory SET lastbranch = ? WHERE subscriptionid = ?"); |
|||
$sth2->execute($homebranches[$i],$subscriptionid); |
|||
$sth2->finish; |
|||
# remove from missing list if item being checked in is on it |
|||
if ($status2 ==1){ |
|||
removeMissingIssue($serialseqs[$i],$subscriptionid); |
|||
} |
|||
} |
|||
|
|||
} |
|||
} |
|||
} |
|||
my ($template, $loggedinuser, $cookie) |
|||
= get_template_and_user({template_name => "serials/serials-recieve.tt", |
|||
query => $query, |
|||
type => "intranet", |
|||
authnotrequired => 0, |
|||
flagsrequired => {serials => 1}, |
|||
debug => 1, |
|||
}); |
|||
|
|||
my $subs = &GetSubscription($subscriptionid); |
|||
my ($totalissues,@serialslist) = GetSerials($subscriptionid); |
|||
my $count = @serialslist; |
|||
for(my $i=0;$i<$count;$i++){ |
|||
#warn "la : $i"; |
|||
$serialslist[$i]->{'callnumber'} = $subscription->{'callnumber'}; |
|||
my $temp = rand(10000000); |
|||
$serialslist[$i]->{'barcode'} = "TEMP" . sprintf("%.0f",$temp); |
|||
} |
|||
|
|||
my $solhistory = GetSubscriptionHistoryFromSubscriptionId($subscriptionid); |
|||
|
|||
$subs = &GetSubscription($subscriptionid); |
|||
($totalissues,@serialslist) = GetSerials($subscriptionid); |
|||
|
|||
if (C4::Context->preference("serialsadditems")){ |
|||
my $fwk=GetFrameworkCode($subscription->{biblionumber}); |
|||
|
|||
my $branches = GetBranches; |
|||
my @branchloop; |
|||
foreach my $thisbranch (keys %$branches) { |
|||
my $selected = 0; |
|||
if($thisbranch eq $solhistory->{'lastbranch'}){ |
|||
$selected = 1; |
|||
} |
|||
my %row =(value => $thisbranch, |
|||
branchname => $branches->{$thisbranch}->{'branchname'}, |
|||
selected => $selected, |
|||
); |
|||
push @branchloop, \%row; |
|||
} |
|||
my $itemstatushash = GetItemStatus($fwk); |
|||
my @itemstatusloop; |
|||
my $itemstatusloopcount=0; |
|||
foreach my $thisitemstatus (keys %$itemstatushash) { |
|||
my %row =(itemval => $thisitemstatus, |
|||
itemlib => $itemstatushash->{$thisitemstatus}, |
|||
); |
|||
# warn "".$row{'itemval'}.", ". $row{"itemlib"}; |
|||
$itemstatusloopcount++; |
|||
push @itemstatusloop, \%row; |
|||
} |
|||
my $itemlocationhash = GetItemLocation($fwk); |
|||
my @itemlocationloop; |
|||
foreach my $thisitemlocation (keys %$itemlocationhash) { |
|||
my %row =(value => $thisitemlocation, |
|||
itemlocationname => $itemlocationhash->{$thisitemlocation}, |
|||
); |
|||
push @itemlocationloop, \%row; |
|||
} |
|||
|
|||
my $choice = ($itemstatusloopcount == 1) ? 1 : 0; |
|||
foreach my $data (@serialslist){ |
|||
$data->{"itemstatusloop"} = (scalar(@itemstatusloop )) ? \@itemstatusloop : []; |
|||
$data->{"itemlocationloop"} = (scalar(@itemlocationloop)) ? \@itemlocationloop : []; |
|||
$data->{"branchloop"} = \@branchloop ; |
|||
} |
|||
# warn "Choice: $choice"; |
|||
$template->param(choice => $choice); |
|||
$template->param(serialadditems =>C4::Context->preference("serialsadditems"), |
|||
branchloop => \@branchloop, |
|||
) ; |
|||
$template->param( itemstatus=>1, itemstatusloop=>\@itemstatusloop ) if (scalar(@itemstatusloop )); |
|||
$template->param(itemlocation=>1,itemlocationloop=>\@itemlocationloop) if (scalar(@itemlocationloop)); |
|||
} else { |
|||
$template->param(branchloop=>[],itemstatusloop=>[],itemlocationloop=>[]) ; |
|||
} |
|||
|
|||
$solhistory = GetSubscriptionHistoryFromSubscriptionId($subscriptionid); |
|||
|
|||
$template->param( |
|||
user => $auser, |
|||
serialslist => \@serialslist, |
|||
count => $count, |
|||
biblionumber => $subscription->{biblionumber}, |
|||
histstartdate => format_date($solhistory->{'histstartdate'}), |
|||
enddate => format_date($solhistory->{'enddate'}), |
|||
recievedlist => $solhistory->{'recievedlist'}, |
|||
missinglist => $solhistory->{'missinglist'}, |
|||
opacnote => $solhistory->{'opacnote'}, |
|||
librariannote => $solhistory->{'librariannote'}, |
|||
subscriptionid => $subscriptionid, |
|||
bibliotitle => $subs->{bibliotitle}, |
|||
biblionumber => $subs->{biblionumber}, |
|||
hassubscriptionexpired =>$hassubscriptionexpired, |
|||
abouttoexpire =>$abouttoexpire, |
|||
routing => $routing, |
|||
missingseq => $manualissue, |
|||
frommissing => $manualstatus, |
|||
missingdate => $manualdate, |
|||
missingid => $manualid, |
|||
(uc(C4::Context->preference("marcflavour"))) => 1 |
|||
); |
|||
output_html_with_http_headers $query, $cookie, $template->output; |
Loading…
Reference in new issue