# 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, write to the Free Software Foundation, Inc., 59 Temple Place,
-# Suite 330, Boston, MA 02111-1307 USA
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
use strict;
+#use warnings; FIXME - Bug 2505
use CGI;
use C4::Context;
use C4::Output;
use C4::Auth;
use Date::Manip;
use C4::Stats;
+use C4::Debug;
+
+use vars qw($debug);
my $input = new CGI;
-my $time = $input->param('time');
+my $time = $input->param('time') || '';
my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
{
my $date;
my $date2;
-if ( $time eq '' ) {
- $template->param(notime => '1');
- output_html_with_http_headers $input, $cookie, $template->output;
- exit;
-}
if ( $time eq 'yesterday' ) {
$date = ParseDate('yesterday');
$date2 = ParseDate('today');
}
-if ( $time eq 'today' ) {
+elsif ( $time eq 'today' ) {
$date = ParseDate('today');
$date2 = ParseDate('tomorrow');
}
-if ( $time eq 'daybefore' ) {
+elsif ( $time eq 'daybefore' ) {
$date = ParseDate('2 days ago');
$date2 = ParseDate('yesterday');
}
-if ( $time eq 'month' ) {
+elsif ( $time eq 'month' ) {
$date = ParseDate('1 month ago');
$date2 = ParseDate('today');
- warn "d : $date // d2 : $date2";
}
-if ( $time =~ /\// ) {
+elsif ( $time =~ /\// ) {
$date = ParseDate($time);
$date2 = ParseDateDelta('+ 1 day');
$date2 = DateCalc( $date, $date2 );
+} else {
+ $template->param(notime => '1'); # TODO: add error feedback if time sent, but unrecognized
+ output_html_with_http_headers $input, $cookie, $template->output;
+ exit;
}
+
+$debug and warn "d : $date // d2 : $date2";
$date = UnixDate( $date, '%Y-%m-%d' );
$date2 = UnixDate( $date2, '%Y-%m-%d' );
-warn "d : $date // d2 : $date2";
+$debug and warn "d : $date // d2 : $date2";
my @payments = TotalPaid( $date, $date2 );
my $count = @payments;
my $total = 0;
+my $totalw = 0;
my $oldtime;
-my $totalw = 0;
my @loop;
my %row;
my $i = 0;
while ( $i < $count ) {
- warn " pay : " . $payments[$i]{'timestamp'};
+ $debug and warn " pay : " . $payments[$i]{'timestamp'};
my $time = $payments[$i]{'datetime'};
my $payments = $payments[$i]{'value'};
my $charge = 0;
- my @temp = split( / /, $payments[$i]{'datetime'} );
+ my @temp = split(/ /, $payments[$i]{'datetime'});
my $date = $temp[0];
my @charges =
getcharges( $payments[$i]{'borrowernumber'}, $payments[$i]{'timestamp'} );
my $temptotalren = 0;
my $temptotalw = 0;
+ # FIXME: way too much logic to live only here in a report script
for ( my $i2 = 0 ; $i2 < $count ; $i2++ ) {
$charge += $charges[$i2]->{'amount'};
%row = (
}
}
}
- my $hour = substr( $payments[$i]{'timestamp'}, 8, 2 );
- my $min = substr( $payments[$i]{'timestamp'}, 10, 2 );
- my $sec = substr( $payments[$i]{'timestamp'}, 12, 2 );
- my $time = "$hour:$min:$sec";
- my $time2 = "$payments[$i]{'date'}";
+ my $time2 = $payments[$i]{'date'};
my $branch = Getpaidbranch( $time2, $payments[$i]{'borrowernumber'} );
my $borrowernumber = $payments[$i]{'borrowernumber'};
my $oldtime = $payments[$i]{'timestamp'};
&& $oldtype == $payments[$i]{'accounttype'}
&& $oldtime eq $payments[$i]{'timestamp'} )
{
- my $hour = substr( $payments[$i]{'timestamp'}, 8, 2 );
- my $min = substr( $payments[$i]{'timestamp'}, 10, 2 );
- my $sec = substr( $payments[$i]{'timestamp'}, 12, 2 );
- my $time = "$hour:$min:$sec";
- my $time2 = "$payments[$i]{'date'}";
- my $branch = Getpaidbranch( $time2, $payments[$i]{'borrowernumber'} );
+ my $xtime2 = $payments[$i]{'date'};
+ my $branch = Getpaidbranch( $xtime2, $payments[$i]{'borrowernumber'} );
if ( $payments[$i]{'accounttype'} eq 'W' ) {
$totalw += $payments[$i]{'amount'};
}
$total += $payments[$i]{'amount'};
}
+ #FIXME: display layer HTML
%row = (
name => "<b>"
. $payments[$i]{'firstname'}