import torrus 1.0.9
[freeside.git] / httemplate / edit / svc_acct.cgi
index 0254ec1..0a191b4 100755 (executable)
@@ -54,7 +54,7 @@ Service # <% $svcnum ? "<B>$svcnum</B>" : " (NEW)" %><BR>
 %}else{
     <INPUT TYPE="hidden" NAME="clear_password" VALUE="<% $password %>">
 %}
-<INPUT TYPE="hidden" NAME="_password_encoding" VALUE="<% $password_encoding %>">
+<INPUT TYPE="hidden" NAME="_password_encoding" VALUE="<% $svc_acct->_password_encoding %>">
 %
 %my $sec_phrase = $svc_acct->sec_phrase;
 %if ( $conf->exists('security_phrase') 
@@ -123,6 +123,19 @@ Service # <% $svcnum ? "<B>$svcnum</B>" : " (NEW)" %><BR>
   </TR>
 % } 
 
+
+% if ( $communigate ) {
+
+    <TR>
+      <TD ALIGN="right">Aliases</TD>
+      <TD><INPUT TYPE="text" NAME="cgp_aliases" VALUE="<% $svc_acct->cgp_aliases %>"></TD>
+    </TR>
+
+% } else {
+    <INPUT TYPE="hidden" NAME="cgp_aliases" VALUE="<% $svc_acct->cgp_aliases %>">
+% }
+
+
 <% include('/elements/tr-select-svc_pbx.html',
              'curr_value' => $svc_acct->pbxsvc,
              'part_svc'   => $part_svc,
@@ -242,78 +255,12 @@ Service # <% $svcnum ? "<B>$svcnum</B>" : " (NEW)" %><BR>
   </TR>
 % } 
 
-
-% if ( $communigate
-%      && $part_svc->part_svc_column('cgp_type')->columnflag ne 'F' )
-% {
-
-  <TR>
-    <TD ALIGN="right">Mailbox type</TD>
-    <TD>
-      <SELECT NAME="cgp_type">
-%       foreach my $option (qw( MultiMailbox TextMailbox MailDirMailbox )) {
-          <OPTION VALUE="<% $option %>"
-                  <% $option eq $svc_acct->cgp_type() ? 'SELECTED' : '' %>
-          ><% $option %>
-%       }
-      </SELECT>
-    </TD>
-  </TR>
-
-% } else {
-    <INPUT TYPE="hidden" NAME="cgp_type" VALUE="<% $svc_acct->cgp_type() %>">
-% }
-
-
-% if ( $communigate
-%      && $part_svc->part_svc_column('cgp_accessmodes')->columnflag ne 'F' )
-% {
-
-  <TR>
-    <TD ALIGN="right">Enabled services</TD>
-    <TD>
-      <% include( '/elements/communigate_pro-accessmodes.html',
-                    'curr_value' => $svc_acct->cgp_accessmodes,
-                )
-      %>
-    </TD>
-  </TR>
-
-% } else {
-    <INPUT TYPE="hidden" NAME="cgp_accessmodes" VALUE="<% $svc_acct->cgp_accessmodes() |h %>">
-% }
-
-
-% if ( $part_svc->part_svc_column('quota')->columnflag eq 'F' ) { 
-  <INPUT TYPE="hidden" NAME="quota" VALUE="<% $svc_acct->quota %>">
-% } else {
-%   my $quota_label = $communigate ? 'Mail storage limit' : 'Quota';
-    <TR>
-      <TD ALIGN="right"><% $quota_label %></TD>
-      <TD><INPUT TYPE="text" NAME="quota" VALUE="<% $svc_acct->quota %>"></TD>
-    </TR>
-% }
-
-% tie my %cgp_label, 'Tie::IxHash',
-%   'file_quota'   => 'File storage limit',
-%   'file_maxnum'  => 'Number of files limit',
-%   'file_maxsize' => 'File size limit',
-% ;
-%
-% foreach my $key (keys %cgp_label) {
-%
-%   if ( !$communigate || $part_svc->part_svc_column($key)->columnflag eq 'F' ){
-      <INPUT TYPE="hidden" NAME="<%$key%>" VALUE="<% $svc_acct->$key() |h %>">
-%   } else {
-
-      <TR>
-        <TD ALIGN="right"><% $cgp_label{$key} %></TD>
-        <TD><INPUT TYPE="text" NAME="<% $key %>" VALUE="<% $svc_acct->$key() |h %>"></TD>
-      </TR>
-
-%   }
-% }
-
+<% include('svc_acct/communigate.html',
+             'svc_acct'    => $svc_acct,
+             'part_svc'    => $part_svc,
+             'communigate' => $communigate,
+          )
+%>
 
 % if ( $part_svc->part_svc_column('slipip')->columnflag =~ /^[FA]$/ ) { 
   <INPUT TYPE="hidden" NAME="slipip" VALUE="<% $svc_acct->slipip %>">
@@ -432,9 +379,11 @@ if ( $cgi->param('error') ) {
   $part_svc=qsearchs('part_svc',{'svcpart'=>$svcpart});
   die "No part_svc entry!" unless $part_svc;
 
-    $svc_acct = new FS::svc_acct({svcpart => $svcpart}); 
+  $svc_acct = new FS::svc_acct({svcpart => $svcpart}); 
 
-    $svcnum='';
+  $svcnum='';
+
+  $svc_acct->password_recover('Y'); #default. hmm.
 
 } else { #editing
 
@@ -508,22 +457,17 @@ my $svc = $part_svc->getfield('svc');
 my $otaker = getotaker;
 
 my $username = $svc_acct->username;
-my $password;
-my $password_encryption = $svc_acct->_password_encryption;
-my $password_encoding = $svc_acct->_password_encoding;
-
-if($svcnum) {
-  if($password = $svc_acct->get_cleartext_password) {
-    if (! $conf->exists('showpasswords')) {
-        $password = '*HIDDEN*';
-    }
-  }
-  elsif($svc_acct->_password and $password_encryption ne 'plain') {
+
+my $password = '';
+if ( $cgi->param('error') ) {
+  $password = $cgi->param('clear_password');
+} elsif ( $svcnum ) {
+  my $password_encryption = $svc_acct->_password_encryption;
+  if ( $password = $svc_acct->get_cleartext_password ) {
+    $password = '*HIDDEN*' unless $conf->exists('showpasswords');
+  } elsif( $svc_acct->_password and $password_encryption ne 'plain' ) {
     $password = "(".uc($password_encryption)." encrypted)";
   }
-  else {
-    $password = '';
-  }
 }
 
 my $ulen =