3 #script to place reserves/requests
4 #writen 2/1/00 by chris@katipo.oc.nz
7 # Copyright 2000-2002 Katipo Communications
9 # This file is part of Koha.
11 # Koha is free software; you can redistribute it and/or modify it under the
12 # terms of the GNU General Public License as published by the Free Software
13 # Foundation; either version 2 of the License, or (at your option) any later
16 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
17 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
18 # A PARTICULAR PURPOSE. See the GNU General Public License for more details.
20 # You should have received a copy of the GNU General Public License along with
21 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
22 # Suite 330, Boston, MA 02111-1307 USA
31 use C4::Circulation::Circ2;
36 # get biblio information....
37 my $bib = $input->param('bib');
38 my $dat = bibdata($bib);
40 # get existing reserves .....
41 my ($count,$reserves) = FindReserves($bib);
42 foreach my $res (@$reserves) {
43 if ($res->{'found'} eq 'W') {
48 # make priorities options
50 my $priorityoptions = priorityoptions($num, $num);
53 # get branch information
54 my $branch = $input->cookie('branch');
55 ($branch) || ($branch = 'L');
56 my $branches = getbranches();
57 my $branchoptions = branchoptions($branch);
61 my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =localtime(time);
64 my $date="$mday/$mon/$year";
69 # get biblioitem information and build rows for form
70 my ($count2,@data) = bibitems($bib);
72 for (my $i=0; $i<$count2; $i++) {
73 if ($data[$i]->{'renewalsallowed'}){
74 my @barcodes = barcodes($data[$i]->{'biblioitemnumber'});
75 if ($data[$i]->{'dewey'} == 0){
76 $data[$i]->{'dewey'}="";
78 $data[$i]->{'volumeddesc'} = " " unless $data[$i]->{'volumeddesc'};
79 $data[$i]->{'dewey'}=~ s/\.0000$//;
80 $data[$i]->{'dewey'}=~ s/00$//;
81 my $class="$data[$i]->{'classification'}$data[$i]->{'dewey'}$data[$i]->{'subclass'}";
82 $bibitemrows .= <<"EOF";
84 <TD><input type=checkbox name=reqbib value=$data[$i]->{'biblioitemnumber'}>
85 <input type=hidden name=biblioitem value=$data[$i]->{'biblioitemnumber'}>
87 <TD>$data[$i]->{'description'}</td>
89 <td>$data[$i]->{'volumeddesc'}</td>
90 <td>$data[$i]->{'isbn'}</td>
91 <td>$dat->{'copyrightdate'}</td>
92 <td>$data[$i]->{'publicationyear'}</td>
101 my $existingreserves = "";
102 foreach my $res (sort {$a->{'found'} cmp $b->{'found'}} @$reserves){
103 my $prioropt = priorityoptions($count, $res->{'priority'});
104 my $bropt = branchoptions($res->{'branchcode'});
105 my $bor=$res->{'borrowernumber'};
106 $date = slashifyDate($res->{'reservedate'});
108 my $type=$res->{'constrainttype'};
110 $type='Next Available';
111 } elsif ($type eq 'o'){
112 $type="This type only $res->{'volumeddesc'} $res->{'itemtype'}";
115 my $notes = $res->{'reservenotes'}." ";
119 if ($res->{'found'} eq 'W') {
121 my $item = $res->{'itemnumber'};
122 $item = getiteminformation(\%env,$item);
123 $item = "<a href=/cgi-bin/koha/detail.pl?bib=$item->{'biblionumber'} &type=intra onClick=\"openWindow(this, 'Item', 480, 640)\">$item->{'barcode'}</a>";
124 my $wbra = $branches->{$res->{'branchcode'}}->{'branchname'};
125 $rank = "Item waiting";
127 $pickup = "at <b>".$wbra."</b>";
128 $change = "<input type=checkbox name=rank-request value=del>delete";
130 $rank = "<select name=rank-request>$prioropt<option value=del>Del</select>";
131 $pickup = "<select name=pickup>$bropt</select>";
132 $change = "<select name=itemtype>
133 <option value=next>Next Available
134 <option value=change>Change Selection
135 <option value=nc >No Change</select>";
137 $existingreserves .= <<"EOF";
138 <input type=hidden name=borrower value=$res->{'borrowernumber'}>
139 <input type=hidden name=biblio value=$res->{'biblionumber'}>
143 <a href=/cgi-bin/koha/moremember.pl?bornum=$bor>$res->{'firstname'} $res->{'surname'}</a>
156 sub priorityoptions {
157 my ($count, $sel) = @_;
159 for (my $i=1; $i<=$count; $i++){
160 $out .= "<option value=$i";
169 # make branch selection options...
173 foreach my $br (keys %$branches) {
174 (next) unless $branches->{$br}->{'IS'};
177 $selected = "selected";
179 $out .= "<option value=$br $selected>$branches->{$br}->{'branchname'}\n";
189 print $input->header;
194 print startmenu('catalogue');
201 <form action="placerequest.pl" method=post>
202 <INPUT TYPE="image" name="submit" VALUE="request" height=42 WIDTH=187 BORDER=0 src="/images/place-request.gif" align=right >
203 <input type=hidden name=biblio value=$bib>
204 <input type=hidden name=type value=str8>
205 <input type=hidden name=title value="$dat->{'title'}">
206 <FONT SIZE=6><em>Requesting: <br>
207 <a href=/cgi-bin/koha/detail.pl?bib=$bib>$dat->{'title'}</a>
208 ($dat->{'author'})</em></FONT><P>
212 <!----------------BIBLIO RESERVE TABLE-------------->
215 <TABLE CELLSPACING=0 CELLPADDING=5 border=1 >
217 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Rank</b></TD>
218 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Member Number</b></TD>
219 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Notes</b></TD>
220 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Date</b></TD>
221 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Pickup</b></TD>
222 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Request</b></TD>
225 <td><select name=rank-request>
228 <td><input type=text size=10 name=member></td>
229 <td><input type=text size=20 name=notes></td>
231 <td><select name=pickup>
234 <td><input type=checkbox name=request value=any>Next Available,
235 <br>(or choose from list below)</td>
240 <TABLE CELLSPACING=0 CELLPADDING=5 border=1 >
243 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Request</b></TD>
244 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Item Type</b></TD>
245 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Classification</b></TD>
246 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Volume</b></TD>
247 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>ISBN</b></TD>
248 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Copyright</b></TD>
249 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Pubdate</b></TD>
250 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Copies</b></TD>
260 <!-----------MODIFY EXISTING REQUESTS----------------->
262 <TABLE CELLSPACING=0 CELLPADDING=5 border=1 >
266 <td bgcolor="99cc33" background="/images/background-mem.gif" colspan=7><B>MODIFY EXISTING REQUESTS </b></TD>
268 <form action=modrequest.pl method=post>
271 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Rank</b></TD>
272 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Member</b></TD>
273 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Notes</b></TD>
274 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Date</b></TD>
275 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Pickup</b></TD>
276 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Request</b></TD>
277 <td bgcolor="99cc33" background="/images/background-mem.gif"><B>Change To</b></TD>
281 <TD colspan=6 align=right>
282 Delete a request by selecting "del" from the rank list.
283 <INPUT TYPE="image" name="submit" VALUE="request" height=42 WIDTH=64 BORDER=0 src="/images/ok.gif"></td>