Lines 151-157
output_html_with_http_headers $input, $cookie, $template->output;
Link Here
|
151 |
|
151 |
|
152 |
|
152 |
|
153 |
sub calculate { |
153 |
sub calculate { |
154 |
my ($line, $column, $filters) = @_; |
154 |
my ($limit, $column, $filters) = @_; |
|
|
155 |
|
155 |
my @loopcol; |
156 |
my @loopcol; |
156 |
my @loopline; |
157 |
my @loopline; |
157 |
my @looprow; |
158 |
my @looprow; |
Lines 209-219
sub calculate {
Link Here
|
209 |
} elsif ($column =~ /sort2/ ) { |
210 |
} elsif ($column =~ /sort2/ ) { |
210 |
# $colfilter[0] = @$filters[11]; |
211 |
# $colfilter[0] = @$filters[11]; |
211 |
} |
212 |
} |
212 |
# $colfilter[0] = @$filters[7] if ($column =~ /timestamp/ ) ; FIXME This can't be right. |
|
|
213 |
# $colfilter[0] = @$filters[8] if ($column =~ /timestamp/ ) ; FIXME |
214 |
# $colfilter[0] = @$filters[9] if ($column =~ /timestamp/ ) ; FIXME Only this line would have effect. |
215 |
|
216 |
#warn "filtre col ".$colfilter[0]." ".$colfilter[1]; |
217 |
|
213 |
|
218 |
# loop cols. |
214 |
# loop cols. |
219 |
if ($column eq "Day") { |
215 |
if ($column eq "Day") { |
Lines 281-295
sub calculate {
Link Here
|
281 |
$columns{''} = 1; |
277 |
$columns{''} = 1; |
282 |
} |
278 |
} |
283 |
|
279 |
|
284 |
#Initialization of cell values..... |
|
|
285 |
my @table; |
286 |
for (my $i=1;$i<=$line;$i++) { |
287 |
foreach (keys %columns) { |
288 |
# warn " init table : $row->{rowtitle} / $_ "; |
289 |
$table[$i]->{ $_ || "total" }->{'name'}=0; |
290 |
} |
291 |
} |
292 |
|
293 |
my $strcalc ; |
280 |
my $strcalc ; |
294 |
|
281 |
|
295 |
# Processing average loanperiods |
282 |
# Processing average loanperiods |
Lines 302-318
sub calculate {
Link Here
|
302 |
WHERE old_issues.borrowernumber IS NOT NULL |
289 |
WHERE old_issues.borrowernumber IS NOT NULL |
303 |
"; |
290 |
"; |
304 |
my @filterterms = ( |
291 |
my @filterterms = ( |
305 |
'old_issues.timestamp >', |
292 |
'old_issues.issuedate >', |
306 |
'old_issues.timestamp <', |
293 |
'old_issues.issuedate <', |
307 |
'old_issues.returndate >', |
294 |
'old_issues.returndate >', |
308 |
'old_issues.returndate <', |
295 |
'old_issues.returndate <', |
309 |
'old_issues.branchcode like', |
296 |
'old_issues.branchcode like', |
310 |
'biblioitems.itemtype like', |
297 |
'biblioitems.itemtype like', |
311 |
'borrowers.categorycode like', |
298 |
'borrowers.categorycode like', |
312 |
'dayname(old_issues.timestamp) like', |
|
|
313 |
'monthname(old_issues.timestamp) like', |
314 |
'monthname(old_issues.timestamp) like', |
315 |
'year(old_issues.timestamp) like', |
316 |
); |
299 |
); |
317 |
foreach ((@$filters)[0..9]) { |
300 |
foreach ((@$filters)[0..9]) { |
318 |
my $term = shift @filterterms; # go through both arrays in step |
301 |
my $term = shift @filterterms; # go through both arrays in step |
Lines 320-335
sub calculate {
Link Here
|
320 |
s/\*/%/g; |
303 |
s/\*/%/g; |
321 |
$strcalc .= " AND $term '$_' "; |
304 |
$strcalc .= " AND $term '$_' "; |
322 |
} |
305 |
} |
323 |
|
|
|
324 |
$strcalc .= " GROUP BY borrowers.borrowernumber"; |
306 |
$strcalc .= " GROUP BY borrowers.borrowernumber"; |
325 |
$strcalc .= ", $colfield" if ($column); |
307 |
$strcalc .= ", $colfield" if ($column); |
326 |
$strcalc .= " ORDER BY RANK DESC"; |
308 |
$strcalc .= " ORDER BY RANK DESC"; |
327 |
$strcalc .= ",$colfield " if ($colfield); |
309 |
$strcalc .= ",$colfield " if ($colfield); |
328 |
# my $max; |
310 |
$strcalc .= " LIMIT $limit" if ($limit); |
329 |
# if (@loopcol) { |
|
|
330 |
# $max = $line*@loopcol; |
331 |
# } else { $max=$line;} |
332 |
# $strcalc .= " LIMIT 0,$max"; |
333 |
|
311 |
|
334 |
$debug and print DEBUG "(old_issues) SQL : $strcalc\n"; |
312 |
$debug and print DEBUG "(old_issues) SQL : $strcalc\n"; |
335 |
my $dbcalc = $dbh->prepare($strcalc); |
313 |
my $dbcalc = $dbh->prepare($strcalc); |
Lines 414-420
sub calculate {
Link Here
|
414 |
# the foot (totals by borrower type) |
392 |
# the foot (totals by borrower type) |
415 |
$globalline{loopfooter} = []; |
393 |
$globalline{loopfooter} = []; |
416 |
$globalline{total}= $grantotal; # FIXME: useless |
394 |
$globalline{total}= $grantotal; # FIXME: useless |
417 |
$globalline{line} = $line; |
|
|
418 |
$globalline{column} = $column; |
395 |
$globalline{column} = $column; |
419 |
return [\%globalline]; # reference to a 1 element array: that element is a hashref |
396 |
return [\%globalline]; # reference to a 1 element array: that element is a hashref |
420 |
} |
397 |
} |
421 |
- |
|
|