editable service usage
authorjeff <jeff>
Tue, 5 Dec 2006 02:37:14 +0000 (02:37 +0000)
committerjeff <jeff>
Tue, 5 Dec 2006 02:37:14 +0000 (02:37 +0000)
httemplate/edit/process/svc_acct.cgi
httemplate/edit/svc_acct.cgi
httemplate/view/svc_acct.cgi

index 247a5b4..30552c8 100755 (executable)
 %#unmunge usergroup
 %$cgi->param('usergroup', [ $cgi->param('radius_usergroup') ] );
 %
-%my $new = new FS::svc_acct ( {
-%  map {
-%    $_, scalar($cgi->param($_));
+%my %hash = $svcnum ? $old->hash : ();
+%map {
+%    $hash{$_} = scalar($cgi->param($_));
 %  #} qw(svcnum pkgnum svcpart username _password popnum uid gid finger dir
 %  #  shell quota slipip)
-%  } ( fields('svc_acct'), qw( pkgnum svcpart usergroup ) )
-%} );
+%  } (fields('svc_acct'), qw ( pkgnum svcpart usergroup ));
+%my $new = new FS::svc_acct ( \%hash );
 %
 %my $error;
 %if ( $svcnum ) {
index 097e8c2..f552967 100755 (executable)
@@ -3,6 +3,8 @@
 %my $conf = new FS::Conf;
 %my @shells = $conf->config('shells');
 %
+%my $curuser = $FS::CurrentUser::CurrentUser;
+%
 %my($svcnum, $pkgnum, $svcpart, $part_svc, $svc_acct, @groups);
 %if ( $cgi->param('error') ) {
 %
@@ -383,6 +385,24 @@ Service # <% $svcnum ? "<B>$svcnum</B>" : " (NEW)" %><BR>
   </TR>
 % } 
 %
+% if ( $curuser->access_right('Edit usage') ) { 
+%   my %label = ( seconds => 'Seconds',
+%                 upbytes => 'Upload bytes',
+%                 downbytes => 'Download bytes',
+%                 totalbytes => 'Total bytes',
+%               );
+%   foreach my $uf (keys %label) {
+%     my $tf = $uf . "_threshold";
+%     if ( $svc_acct->$tf ne '' ) { 
+
+  <TR>
+    <TD ALIGN="right"><% $label{$uf} %> remaining</TD>
+    <TD><INPUT TYPE="text" NAME="<% $uf %>" VALUE="<% $svc_acct->$uf %>"></TD>
+  </TR>
+%     } 
+%   } 
+% } 
+%
 %foreach my $r ( grep { /^r(adius|[cr])_/ } fields('svc_acct') ) {
 %  $r =~ /^^r(adius|[cr])_(.+)$/ or next; #?
 %  my $a = $2;
index 9c2fbc9..7fbefa1 100755 (executable)
@@ -284,6 +284,21 @@ Service #<B><% $svcnum %></B>
     </TD>
   </TR>
 % } 
+% my %ulabel = ( seconds    => 'Seconds',
+%                upbytes    => 'Upload bytes',
+%                downbytes  => 'Download bytes',
+%                totalbytes => 'Total bytes',
+%              );
+% foreach my $uf ( keys %ulabel ) {
+%   my $tf = $uf . "_threshold";
+%   if ( $svc_acct->$tf ne '' ) {
+    <TR>
+      <TD ALIGN="right"><% $ulabel{$uf} %> remaining</TD>
+      <TD BGCOLOR="#ffffff"><% $svc_acct->$uf %></TD>
+    </TR>
+
+%   }
+% }
 % foreach my $attribute ( grep /^radius_/, $svc_acct->fields ) {
 %  $attribute =~ /^radius_(.*)$/;
 %  my $pattribute = $FS::raddb::attrib{$1};