X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;ds=sidebyside;f=circ%2Fbranchoverdues.pl;h=5c1dcafea65449278d6219a8e517c547cbc7088f;hb=aef1dd15fbe37a8a9c30ba4b38f7ecd6c1fea54d;hp=091f8743837184e02db5aa053c1db508cf7704d7;hpb=3980e9bf8cc2ca03255d445d080a31da6c7e110f;p=koha_fer diff --git a/circ/branchoverdues.pl b/circ/branchoverdues.pl index 091f874383..5c1dcafea6 100755 --- a/circ/branchoverdues.pl +++ b/circ/branchoverdues.pl @@ -17,6 +17,7 @@ # Suite 330, Boston, MA 02111-1307 USA use strict; +#use warnings; FIXME - Bug 2505 use C4::Context; use CGI; use C4::Output; @@ -26,7 +27,7 @@ use C4::Overdues; # AddNotifyLine use C4::Biblio; use C4::Koha; use C4::Debug; -use Date::Calc qw/Today Today_and_Now Now/; +use C4::Branch; =head1 branchoverdues.pl @@ -51,30 +52,26 @@ use Date::Calc qw/Today Today_and_Now Now/; - 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'}; -# Initate localtime -my ( $year, $month, $day ) = &Today; -my $todaysdate = join "-", ( $year, $month, $day ); - # Deal with the vars recept from the template my $borrowernumber = $input->param('borrowernumber'); my $itemnumber = $input->param('itemnumber'); @@ -83,22 +80,22 @@ my $overduelevel = $input->param('overduelevel'); 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); @@ -107,37 +104,42 @@ 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; + my $record = GetMarcBiblio($num->{biblionumber}); + if ($record){ + $overdueforbranch{'subtitle'} = GetRecordValue('subtitle',$record,'')->[0]->{subfield}; + } $overdueforbranch{'date_due'} = format_date( $num->{'date_due'} ); $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; } @@ -149,7 +151,7 @@ foreach my $num (@getoverdues) { # initiate the templates for the overdueloop $template->param( overduesloop => \@overduesloop, - show_date => format_date($todaysdate), + show_date => format_date(C4::Dates->today('iso')), location => $location, );