Also look in the next-highest directory when detecting VCS; add SVN
[interchange.git] / code / UserTag / summary.tag
1 # Copyright 2002-2007 Interchange Development Group and others
2
3 # This program is free software; you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; either version 2 of the License, or
6 # (at your option) any later version.  See the LICENSE file for details.
7
8 # [summary  amount=n.nn
9 #           name=label*
10 #           hide=1*
11 #           total=1*
12 #           reset=1*
13 #           format="%.2f"*
14 #           currency=1* ]
15 #
16 # Calculates column totals (if used properly. 8-\)
17
18 #
19 UserTag summary Order     amount
20 UserTag summary PosNumber 1
21 UserTag summary addAttr
22 UserTag summary Version   1.5
23 UserTag summary Routine   <<EOF
24 sub {
25     my ($amount, $opt) = @_;
26         my $summary_hash = $::Instance->{tag_summary_hash} ||= {};
27         my $name;
28         unless ($name = $opt->{name} ) {
29                 $name = 'ONLY0000';
30                 %$summary_hash = () if Vend::Util::is_yes($opt->{reset});
31         }
32         else {
33                 $summary_hash->{$name} = 0 if Vend::Util::is_yes($opt->{reset});
34         }
35         $summary_hash->{$name} += $amount if length $amount;
36         $amount = $summary_hash->{$name} if Vend::Util::is_yes($opt->{total});
37         return '' if $opt->{hide};
38         return sprintf($opt->{format}, $amount) if $opt->{format};
39     return Vend::Util::currency($amount) if $opt->{currency};
40     return $amount;
41 }
42 EOF