X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=fs_selfservice%2FFS-SelfService%2Fcgi%2Fview_usage.html;h=07ccfedf1f2df82a03ab03998675697c03ab29b4;hb=d22baa4e71bfa9e153c1fe1152ff4c748f1d935c;hp=b492102ce02b96c2b05eea80fb96d93640d4ca92;hpb=63a268637b2d51a8766412617724b9436439deb6;p=freeside.git
diff --git a/fs_selfservice/FS-SelfService/cgi/view_usage.html b/fs_selfservice/FS-SelfService/cgi/view_usage.html
index b492102ce..07ccfedf1 100644
--- a/fs_selfservice/FS-SelfService/cgi/view_usage.html
+++ b/fs_selfservice/FS-SelfService/cgi/view_usage.html
@@ -1,86 +1,226 @@
-<%= $url = "$selfurl?session=$session_id;action=";
- @svc_acct = grep { $_->{svcdb} eq 'svc_acct' } @svcs;
- @svc_phone = grep { $_->{svcdb} eq 'svc_phone' } @svcs;
+<%= $url = "$selfurl?action=";
+ %by_pkg_label = (); # not used yet, but I'm sure it will be...
+ @svc_phone = ();
+ @svc_port = ();
+ @svc_pbx = ();
+ @bytes_svcs = (); # contains svc_acct and svc_broadband
+ @bytes_cols = qw(seconds_used seconds upbytes_used upbytes downbytes_used downbytes totalbytes_used totalbytes);
+ %bytes_show = map { $_ => 0 } @bytes_cols;
+
+ foreach my $svc (@svcs) {
+ $by_pkg_label{ $svc->{pkg_label} } ||= [];
+ push @{ $by_pkg_label{ $svc->{pkg_label} } }, $svc;
+
+ if (( $svc->{svcdb} eq 'svc_acct' ) || ( $svc->{svcdb} eq 'svc_broadband' )) {
+ foreach my $field (@bytes_cols) {
+ $bytes_show{$field} = 1 if length($svc->{$field}) or (($field !~ /_used$/) && $svc->{'recharge_'.$field});
+ }
+ push @bytes_svcs, $svc;
+ } elsif ( $svc->{svcdb} eq 'svc_phone' ) {
+ push @svc_phone, $svc;
+ } elsif ( $svc->{svcdb} eq 'svc_port' ) {
+ push @svc_port, $svc;
+ } elsif ( $svc->{svcdb} eq 'svc_pbx' ) {
+ push @svc_pbx, $svc;
+ }
+ }
'';
%>
-<%= include('header') %>
+<%= include('header', 'Account usage') %>
<%= if ( $error ) {
$OUT .= qq!$error
!;
} ''; %>
-<%= if ( @svc_acct ) {
- $OUT.= 'Account usage
-
Account | -Time remaining | -Upload remaining | -Download remaining | -Total remaining | -
---|
Account | '; + $OUT .= 'Time used | ' if $bytes_show{'seconds_used'}; + $OUT .= 'Time remaining | ' if $bytes_show{'seconds'}; + $OUT .= 'Upload used | ' if $bytes_show{'upbytes_used'}; + $OUT .= 'Upload remaining | ' if $bytes_show{'upbytes'}; + $OUT .= 'Download used | ' if $bytes_show{'downbytes_used'}; + $OUT .= 'Download remaining | ' if $bytes_show{'downbytes'}; + $OUT .= 'Total used | ' if $bytes_show{'totalbytes_used'}; + $OUT .= 'Total remaining | ' if $bytes_show{'totalbytes'}; + $OUT .= '
---|---|---|---|---|---|---|---|---|
'; - $OUT .= qq!!. $svc->{'label'}. ': '. $svc->{'value'}.''; - $OUT .= ' | '; - $OUT .= $svc->{'seconds'}; - $OUT .= ' | '; - $OUT .= $svc->{'upbytes'}; - $OUT .= ' | '; - $OUT .= $svc->{'downbytes'}; - $OUT .= ' | '; - $OUT .= $svc->{'totalbytes'}; - $OUT .= ' | ||||
' . qq!!. $svc->{'label'}. ': '. $username .' | '; + foreach my $field (@bytes_cols) { + $OUT .= '' . $svc->{$field} . ' | ' if $bytes_show{$field}; + } if ( $svc->{'recharge_amount'} ) { my $link = "${url}process_order_recharge;". "svcnum=$svc->{'svcnum'}"; - $OUT .= '|||||||
'; + $OUT .= ' | ||||||||
'; $OUT .= qq!!.'Recharge for $'; $OUT .= $svc->{'recharge_amount'} . ' with'; - $OUT .= ' | '; - $OUT .= $svc->{'recharge_seconds'} if $svc->{'recharge_seconds'}; - $OUT .= ' | '; - $OUT .= $svc->{'recharge_upbytes'} if $svc->{'recharge_upbytes'}; - $OUT .= ' | '; - $OUT .= $svc->{'recharge_downbytes'} if $svc->{'recharge_downbytes'}; - $OUT .= ' | '; - $OUT .= $svc->{'recharge_totalbytes'} if $svc->{'recharge_totalbytes'}; - $OUT .= ' | ' if $bytes_show{$field.'_used'}; + if ($bytes_show{$field}) { + $OUT .= ' | '; + $OUT .= $svc->{'recharge_'.$field} if $svc->{'recharge_'.$field}; + $OUT .= ' | '; + } + } + $OUT .= ''; } } %> -<%= scalar(@svc_acct) ? '
Number | '; #"Account" ? - #what else? +Number | '; + if ( $any{outbound} ) { + $OUT .= ' +Dialed | '; + } + if ( $any{inbound} ) { + $OUT .= ' +Received | '; + } $OUT .= '
---|---|---|---|
'; - $OUT .= qq!!. $svc_phone->{'label'}. ': '. $svc_phone->{'value'}.''; - $OUT .= ' | |||
'. $svc_x->{'label'}. ': '. $svc_x->{'value'}; + $OUT .= ' | '; + # usage summary w/ links + for my $dir (qw(outbound inbound)) { + if ( $dir eq 'inbound' ) { + $link .= ';inbound=1'; + } + if ( $svc_x->{$dir} ) { + $OUT .= ''.qq!! . + sprintf('%d calls (%.0f minutes)', + $svc_x->{$dir}->{'count'}, + $svc_x->{$dir}->{'duration'} / 60 + ) . + ' | '; + } elsif ( $any{$dir} ) { + $OUT .= ''; + } + } + $OUT .= ' |
Remaining minutes | |||
---|---|---|---|
$description | +$remain | +/ | +$total | +
* shared among all your phone plans |
Service | ++ | +
---|