communigate phase 3: archive messages, RT#7515
[freeside.git] / httemplate / edit / svc_acct / communigate.html
diff --git a/httemplate/edit/svc_acct/communigate.html b/httemplate/edit/svc_acct/communigate.html
new file mode 100644 (file)
index 0000000..6370a54
--- /dev/null
@@ -0,0 +1,249 @@
+% if ( $communigate
+%      && $part_svc->part_svc_column('cgp_type')->columnflag ne 'F' )
+% {
+
+% # settings
+
+  <TR>
+    <TD ALIGN="right">Mailbox type</TD>
+    <TD>
+      <SELECT NAME="cgp_type">
+%       foreach my $option (qw( MultiMailbox TextMailbox MailDirMailbox
+%                               AGrade BGrade CGrade                    )) {
+          <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() %>">
+% }
+
+
+% #false laziness w/svc_domain
+% 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>
+
+%   }
+% }
+
+% if ( $communigate ) {
+
+  <% include('/elements/tr-checkbox.html',
+               'label'      => 'Password recovery',
+               'field'      => 'password_recover',
+               'curr_value' => $svc_acct->password_recover,
+               'value'      => 'Y',
+            )
+  %>
+
+  <% include('/elements/tr-select.html',
+               'label'      => 'Allowed mail rules',
+               'field'      => 'cgp_rulesallowed',
+               'options'    => [ '', 'No', 'Filter Only', 'All But Exec', 'Any' ],
+               'labels'     => {
+                                 '' => 'default (No)', #No always the default?
+                               },
+               'curr_value' => $svc_acct->cgp_rulesallowed,
+            )
+  %>
+
+  <% include('/elements/tr-checkbox.html',
+               'label'      => 'RPOP modifications',
+               'field'      => 'cgp_rpopallowed',
+               'curr_value' => $svc_acct->cgp_rpopallowed,
+               'value'      => 'Y',
+            )
+  %>
+
+  <% include('/elements/tr-checkbox.html',
+               'label'      => 'Accepts mail to "all"',
+               'field'      => 'cgp_mailtoall',
+               'curr_value' => $svc_acct->cgp_mailtoall,
+               'value'      => 'Y',
+            )
+  %>
+
+  <% include('/elements/tr-checkbox.html',
+               'label'      => 'Add trailer to sent mail',
+               'field'      => 'cgp_addmailtrailer',
+               'curr_value' => $svc_acct->cgp_addmailtrailer,
+               'value'      => 'Y',
+            )
+  %>
+
+  <% include('/elements/tr-select.html',
+               'label'      => 'Archive messages after',
+               'field'      => 'cgp_archiveafter',
+               'options'    => [ '', 0, 86400, 172800, 259200, 432000, 604800,
+                                 1209600, 2592000, 7776000, 15552000, 31536000,
+                                 63072000
+                               ],
+               'labels'     => {
+                                 '' => 'default (730 days)',#730 always default?
+                                  0 => 'Never',
+                                  86400 => '24 hours',
+                                  172800 => '2 days',
+                                  259200 => '3 days',
+                                  432000 => '5 days',
+                                  604800 => '7 days',
+                                  1209600 => '2 weeks',
+                                  2592000 => '30 days',
+                                  7776000 => '90 days',
+                                  15552000 => '180 days',
+                                  31536000 => '365 days',
+                                  63072000 => '730 days',
+                               },
+               'curr_value' => $svc_acct->cgp_archiveafter,
+            )
+  %>
+
+%  #preferences
+
+%# false laziness w/svc_domain acct_def
+  <TR>
+    <TD ALIGN="right">Message delete method</TD>
+    <TD>
+      <SELECT NAME="cgp_deletemode">
+%       for ( 'Move To Trash', 'Immediately', 'Mark' ) {
+          <OPTION VALUE="<% $_ %>"
+                  <% $_ eq $svc_acct->cgp_deletemode ? 'SELECTED' : '' %>
+          ><% $_ %>
+%       }
+      </SELECT>
+    </TD>
+  </TR>
+
+  <% include('/elements/tr-select.html',
+               'label'      => 'On logout remove trash',
+               'field'      => 'cgp_emptytrash',
+               'options'    => $svc_acct->cgp_emptytrash_values,
+               'labels'     => {
+                                 '' => 'default (92 days)', #right?
+                               },
+               'curr_value' => $svc_acct->cgp_emptytrash,
+            )
+  %>
+
+  <% include('/elements/tr-select.html',
+               'label'      => 'Language',
+               'field'      => 'cgp_language',
+               'options'    => [ '', qw( English Arabic Chinese Dutch French German Hebrew Italian Japanese Portuguese Russian Slovak Spanish Thai ) ],
+               'labels'     => {
+                                 '' => 'default (English)',
+                               },
+               'curr_value' => $svc_acct->cgp_language,
+            )
+  %>
+
+  <% include('/elements/tr-select.html',
+               'label'      => 'Time zone',
+               'field'      => 'cgp_timezone',
+               'options'    => $svc_acct->cgp_timezone_values,
+               'labels'     => {
+                                 '' => 'default (HostOS)',
+                               },
+               'curr_value' => $svc_acct->cgp_timezone,
+            )
+  %>
+
+  <% include('/elements/tr-select.html',
+               'label'      => 'Layout',
+               'field'      => 'cgp_skinname',
+               'options'    => [ '', '***', 'GoldFleece', 'Skin2' ],
+               'labels'     => {
+                                 '' => 'default (***)',
+                               },
+               'curr_value' => $svc_acct->cgp_skinname,
+            )
+  %>
+
+  <% include('/elements/tr-select.html',
+               'label'      => 'Pronto style',
+               'field'      => 'cgp_prontoskinname',
+               'options'    => [ '', 'Pronto', 'Pronto-darkflame', 'Pronto-steel', 'Pronto-twilight', ],
+
+               'curr_value' => $svc_acct->cgp_prontoskinname,
+            )
+  %>
+
+  <% include('/elements/tr-select.html',
+               'label'      => 'Send read receipts',
+               'field'      => 'cgp_sendmdnmode',
+               'options'    => [ '', 'Never', 'Manually', 'Automatically' ],
+               'labels'     => {
+                                 '' => 'default (Automatically)',
+                               },
+               'curr_value' => $svc_acct->cgp_language,
+            )
+  %>
+
+% } else {
+
+%   for (qw( password_recover cgp_rulesallowed cgp_rpopallowed cgp_mailtoall
+%            cgp_addmailtrailer
+%            cgp_deletemode cgp_emptytrash cgp_language cgp_timezone
+%            cgp_skinname cgp_sendmdnmode
+%          ) ) {
+
+      <INPUT TYPE="hidden" NAME="<% $_ %>" VALUE="<% $svc_acct->$_() %>">
+%   }
+
+% }
+
+<%init>
+
+my %opt = @_;
+
+my $svc_acct = $opt{'svc_acct'};
+my $part_svc = $opt{'part_svc'};
+
+my $communigate = $opt{'communigate'};
+
+</%init>