# Suite 330, Boston, MA 02111-1307 USA
use strict;
+#use warnings; FIXME - Bug 2505
use C4::Context;
use CGI;
use C4::Output;
use C4::Auth;
-use C4::Dates qw/format_date/;
use C4::Overdues; # AddNotifyLine
use C4::Biblio;
use C4::Koha;
use C4::Debug;
+use C4::Branch;
+use Data::Dumper;
=head1 branchoverdues.pl
- 2) item issues is not returned
- 3) this item as not been already notify
+ FIXME: who is the author?
+ FIXME: No privisions (i.e. "actions") for handling notices are implemented.
+ FIXME: This is linked as "Overdue Fines" but the relationship to fines in GetOverduesForBranch is more complicated than that.
+
=cut
my $input = new CGI;
my $dbh = C4::Context->dbh;
-my $theme = $input->param('theme'); # only used if allowthemeoverride is set
-
-my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
- {
+my ( $template, $loggedinuser, $cookie ) = get_template_and_user({
template_name => "circ/branchoverdues.tmpl",
query => $input,
type => "intranet",
authnotrequired => 0,
- flagsrequired => { circulate => 1 },
+ flagsrequired => { circulate => "circulate_remaining_permissions" },
debug => 1,
- }
-);
+});
my $default = C4::Context->userenv->{'branch'};
my $notifyId = $input->param('notifyId');
my $location = $input->param('location');
+# FIXME: better check that borrowernumber is defined and valid.
+# FIXME: same for itemnumber and other variables passed in here.
+
# now create the line in bdd (notifys)
if ( $input->param('action') eq 'add' ) {
my $addnotify =
AddNotifyLine( $borrowernumber, $itemnumber, $overduelevel, $method,
- $notifyId );
+ $notifyId ) # FIXME: useless variable, no TMPL code for "action" exists.;
}
elsif ( $input->param('action') eq 'remove' ) {
my $notify_date = $input->param('notify_date');
my $removenotify =
- RemoveNotifyLine( $borrowernumber, $itemnumber, $notify_date );
+ RemoveNotifyLine( $borrowernumber, $itemnumber, $notify_date ); # FIXME: useless variable, no TMPL code for "action" exists.
}
my @overduesloop;
-my @todayoverduesloop;
-my $counter = 0;
-
my @getoverdues = GetOverduesForBranch( $default, $location );
-use Data::Dumper;
$debug and warn "HERE : $default / $location" . Dumper(@getoverdues);
# search for location authorised value
my ($tag,$subfield) = GetMarcFromKohaField('items.location','');
my $tagslib = &GetMarcStructure(1,'');
if ($tagslib->{$tag}->{$subfield}->{authorised_value}) {
my $values= GetAuthorisedValues($tagslib->{$tag}->{$subfield}->{authorised_value});
+ for (@$values) { $_->{selected} = 1 if $location eq $_->{authorised_value} }
$template->param(locationsloop => $values);
}
# now display infos
foreach my $num (@getoverdues) {
-
my %overdueforbranch;
- $overdueforbranch{'date_due'} = format_date( $num->{'date_due'} );
+ my $record = GetMarcBiblio($num->{biblionumber});
+ if ($record){
+ $overdueforbranch{'subtitle'} = GetRecordValue('subtitle',$record,'')->[0]->{subfield};
+ }
+ my $dt = dt_from_string($num->{date_due}, 'sql');
+ $overdueforbranch{'date_due'} = output_pref($dt);
$overdueforbranch{'title'} = $num->{'title'};
$overdueforbranch{'description'} = $num->{'description'};
$overdueforbranch{'barcode'} = $num->{'barcode'};
$overdueforbranch{'biblionumber'} = $num->{'biblionumber'};
+ $overdueforbranch{'author'} = $num->{'author'};
$overdueforbranch{'borrowersurname'} = $num->{'surname'};
$overdueforbranch{'borrowerfirstname'} = $num->{'firstname'};
$overdueforbranch{'borrowerphone'} = $num->{'phone'};
$overdueforbranch{'borroweremail'} = $num->{'email'};
+ $overdueforbranch{'homebranch'} = GetBranchName($num->{'homebranch'});
$overdueforbranch{'itemcallnumber'} = $num->{'itemcallnumber'};
$overdueforbranch{'borrowernumber'} = $num->{'borrowernumber'};
$overdueforbranch{'itemnumber'} = $num->{'itemnumber'};
# now we add on the template, the differents values of notify_level
+ # FIXME: numerical comparison, not string eq.
if ( $num->{'notify_level'} eq '1' ) {
$overdueforbranch{'overdue1'} = 1;
$overdueforbranch{'overdueLevel'} = 1;
}
-
- if ( $num->{'notify_level'} eq '2' ) {
+ elsif ( $num->{'notify_level'} eq '2' ) {
$overdueforbranch{'overdue2'} = 1;
$overdueforbranch{'overdueLevel'} = 2;
}
-
- if ( $num->{'notify_level'} eq '3' ) {
+ elsif ( $num->{'notify_level'} eq '3' ) {
$overdueforbranch{'overdue3'} = 1;
$overdueforbranch{'overdueLevel'} = 3;
}
# initiate the templates for the overdueloop
$template->param(
overduesloop => \@overduesloop,
- show_date => format_date(C4::Dates->today('iso')),
location => $location,
);