Filename | /usr/share/koha/lib/C4/Stats.pm |
Statements | Executed 21 statements in 695µs |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
1 | 1 | 1 | 251µs | 257µs | BEGIN@24 | C4::Stats::
1 | 1 | 1 | 56µs | 56µs | BEGIN@30 | C4::Stats::
1 | 1 | 1 | 28µs | 36µs | BEGIN@21 | C4::Stats::
1 | 1 | 1 | 17µs | 176µs | BEGIN@25 | C4::Stats::
1 | 1 | 1 | 15µs | 47µs | BEGIN@22 | C4::Stats::
1 | 1 | 1 | 12µs | 117µs | BEGIN@26 | C4::Stats::
0 | 0 | 0 | 0s | 0s | TotalPaid | C4::Stats::
0 | 0 | 0 | 0s | 0s | UpdateStats | C4::Stats::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | package C4::Stats; | ||||
2 | |||||
3 | |||||
4 | # Copyright 2000-2002 Katipo Communications | ||||
5 | # | ||||
6 | # This file is part of Koha. | ||||
7 | # | ||||
8 | # Koha is free software; you can redistribute it and/or modify it under the | ||||
9 | # terms of the GNU General Public License as published by the Free Software | ||||
10 | # Foundation; either version 2 of the License, or (at your option) any later | ||||
11 | # version. | ||||
12 | # | ||||
13 | # Koha is distributed in the hope that it will be useful, but WITHOUT ANY | ||||
14 | # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR | ||||
15 | # A PARTICULAR PURPOSE. See the GNU General Public License for more details. | ||||
16 | # | ||||
17 | # You should have received a copy of the GNU General Public License along | ||||
18 | # with Koha; if not, write to the Free Software Foundation, Inc., | ||||
19 | # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||
20 | |||||
21 | 3 | 32µs | 2 | 44µs | # spent 36µs (28+8) within C4::Stats::BEGIN@21 which was called:
# once (28µs+8µs) by C4::Circulation::BEGIN@26 at line 21 # spent 36µs making 1 call to C4::Stats::BEGIN@21
# spent 8µs making 1 call to strict::import |
22 | 3 | 156µs | 2 | 79µs | # spent 47µs (15+32) within C4::Stats::BEGIN@22 which was called:
# once (15µs+32µs) by C4::Circulation::BEGIN@26 at line 22 # spent 47µs making 1 call to C4::Stats::BEGIN@22
# spent 32µs making 1 call to warnings::import |
23 | 1 | 1µs | require Exporter; | ||
24 | 3 | 50µs | 2 | 263µs | # spent 257µs (251+6) within C4::Stats::BEGIN@24 which was called:
# once (251µs+6µs) by C4::Circulation::BEGIN@26 at line 24 # spent 257µs making 1 call to C4::Stats::BEGIN@24
# spent 6µs making 1 call to C4::Context::import |
25 | 3 | 44µs | 2 | 334µs | # spent 176µs (17+158) within C4::Stats::BEGIN@25 which was called:
# once (17µs+158µs) by C4::Circulation::BEGIN@26 at line 25 # spent 176µs making 1 call to C4::Stats::BEGIN@25
# spent 158µs making 1 call to Exporter::import |
26 | 3 | 81µs | 2 | 222µs | # spent 117µs (12+105) within C4::Stats::BEGIN@26 which was called:
# once (12µs+105µs) by C4::Circulation::BEGIN@26 at line 26 # spent 117µs making 1 call to C4::Stats::BEGIN@26
# spent 105µs making 1 call to vars::import |
27 | |||||
28 | 1 | 300ns | our $debug; | ||
29 | |||||
30 | # spent 56µs within C4::Stats::BEGIN@30 which was called:
# once (56µs+0s) by C4::Circulation::BEGIN@26 at line 38 | ||||
31 | # set the version for version checking | ||||
32 | 3 | 56µs | $VERSION = 3.07.00.049; | ||
33 | @ISA = qw(Exporter); | ||||
34 | @EXPORT = qw( | ||||
35 | &UpdateStats | ||||
36 | &TotalPaid | ||||
37 | ); | ||||
38 | 1 | 273µs | 1 | 56µs | } # spent 56µs making 1 call to C4::Stats::BEGIN@30 |
39 | |||||
40 | |||||
41 | =head1 NAME | ||||
42 | |||||
- - | |||||
72 | #' | ||||
73 | sub UpdateStats { | ||||
74 | |||||
75 | #module to insert stats data into stats table | ||||
76 | my ( | ||||
77 | $branch, $type, | ||||
78 | $amount, $other, $itemnum, | ||||
79 | $itemtype, $borrowernumber, $accountno, $ccode | ||||
80 | ) | ||||
81 | = @_; | ||||
82 | my $dbh = C4::Context->dbh; | ||||
83 | my $sth = $dbh->prepare( | ||||
84 | "INSERT INTO statistics | ||||
85 | (datetime, branch, type, value, | ||||
86 | other, itemnumber, itemtype, borrowernumber, proccode, ccode) | ||||
87 | VALUES (now(),?,?,?,?,?,?,?,?,?)" | ||||
88 | ); | ||||
89 | $sth->execute( | ||||
90 | $branch, $type, $amount, | ||||
91 | $other, $itemnum, $itemtype, $borrowernumber, | ||||
92 | $accountno, $ccode | ||||
93 | ); | ||||
94 | } | ||||
95 | |||||
96 | # Otherwise, it'd need a POD. | ||||
97 | sub TotalPaid { | ||||
98 | my ( $time, $time2, $spreadsheet ) = @_; | ||||
99 | $time2 = $time unless $time2; | ||||
100 | my $dbh = C4::Context->dbh; | ||||
101 | my $query = "SELECT * FROM statistics | ||||
102 | LEFT JOIN borrowers ON statistics.borrowernumber= borrowers.borrowernumber | ||||
103 | WHERE (statistics.type='payment' OR statistics.type='writeoff') "; | ||||
104 | if ( $time eq 'today' ) { | ||||
105 | $query .= " AND datetime = now()"; | ||||
106 | } else { | ||||
107 | $query .= " AND datetime > '$time'"; # FIXME: use placeholders | ||||
108 | } | ||||
109 | if ( $time2 ne '' ) { | ||||
110 | $query .= " AND datetime < '$time2'"; # FIXME: use placeholders | ||||
111 | } | ||||
112 | if ($spreadsheet) { | ||||
113 | $query .= " ORDER BY branch, type"; | ||||
114 | } | ||||
115 | $debug and warn "TotalPaid query: $query"; | ||||
116 | my $sth = $dbh->prepare($query); | ||||
117 | $sth->execute(); | ||||
118 | return @{$sth->fetchall_arrayref({})}; | ||||
119 | } | ||||
120 | |||||
121 | 1 | 3µs | 1; | ||
122 | __END__ |