diff options
author | ivan <ivan> | 2010-04-19 06:16:01 +0000 |
---|---|---|
committer | ivan <ivan> | 2010-04-19 06:16:01 +0000 |
commit | a0e1759e5c4300aa48bd137f8e5cbb4aa0e36778 (patch) | |
tree | fb73cb38705bb6253baa8bd41fec771a8a5cff4b /FS | |
parent | d4896da4ac862e44547b4151ecbba2340b660850 (diff) |
communigate provisioning phase 2: Account:Settings: RulesAllowed, RPOPAllowed, MailToAll, AddMailTrailer. RT#7514
Diffstat (limited to 'FS')
-rw-r--r-- | FS/FS/Schema.pm | 4 | ||||
-rw-r--r-- | FS/FS/part_export/communigate_pro.pm | 27 | ||||
-rw-r--r-- | FS/FS/svc_acct.pm | 4 | ||||
-rw-r--r-- | FS/FS/svc_domain.pm | 2 |
4 files changed, 30 insertions, 7 deletions
diff --git a/FS/FS/Schema.pm b/FS/FS/Schema.pm index 22c18ae..4aa8143 100644 --- a/FS/FS/Schema.pm +++ b/FS/FS/Schema.pm @@ -1505,6 +1505,10 @@ sub tables_hashref { 'cgp_aliases', 'varchar', 'NULL', 255, '', '', 'cgp_deletemode', 'varchar', 'NULL', $char_d, '', '', #DeleteMode 'cgp_emptytrash', 'varchar', 'NULL', $char_d, '', '', #EmptyTrash + 'cgp_rulesallowed','varchar', 'NULL', $char_d, '', '', #RulesAllowed + 'cgp_rpopallowed', 'char', 'NULL', 1, '', '', #RPOPAllowed + 'cgp_mailtoall', 'char', 'NULL', 1, '', '', #MailToAll + 'cgp_addmailtrailer', 'char', 'NULL', 1, '', '', #AddMailTrailer ], 'primary_key' => 'svcnum', #'unique' => [ [ 'username', 'domsvc' ] ], diff --git a/FS/FS/part_export/communigate_pro.pm b/FS/FS/part_export/communigate_pro.pm index 9ea8401..b94eaf6 100644 --- a/FS/FS/part_export/communigate_pro.pm +++ b/FS/FS/part_export/communigate_pro.pm @@ -77,12 +77,18 @@ sub _export_insert_svc_acct { ], 'RealName' => $svc_acct->finger, 'Password' => $svc_acct->_password, + + #phase 2: allowed mail rules, RPOP modifications, accepts mail to all, add trailer to sent mail + 'RulesAllowed' => $svc_acct->cgp_rulesallowed, + 'RPOPAllowed' =>($svc_acct->cgp_rpopallowed ?'YES':'NO'), + 'MailToAll' =>($svc_acct->cgp_mailtoall ?'YES':'NO'), + 'AddMailTrailer' =>($svc_acct->cgp_addmailtrailer ?'YES':'NO'), + map { $quotas{$_} => $svc_acct->$_() } grep $svc_acct->$_(), keys %quotas ); - #phase 2: pwdallowed, passwordrecovery, allowed mail rules, - # RPOP modifications, accepts mail to all, add trailer to sent mail - #phase 3: archive messages, mailing lists + #XXX phase 2: pwdallowed, passwordrecovery + #XXX phase 3: archive messages, mailing lists my @options = ( 'CreateAccount', 'accountName' => $self->export_username($svc_acct), @@ -274,9 +280,18 @@ sub _export_replace_svc_acct { if $old->cgp_accessmodes ne $new->cgp_accessmodes || $old->cgp_type ne $new->cgp_type; - #phase 2: pwdallowed, passwordrecovery, allowed mail rules, - # RPOP modifications, accepts mail to all, add trailer to sent mail - #phase 3: archive messages, mailing lists + #phase 2: allowed mail rules, RPOP modifications, accepts mail to all, add trailer to sent mail + $settings{'RulesAllowed'} = $new->cgp_rulesallowed + if $old->cgp_rulesallowed ne $new->cgp_rulesallowed; + $settings{'RPOPAllowed'} = $new->cgp_rpopallowed + if $old->cgp_rpopallowed ne $new->cgp_rpopallowed; + $settings{'MailToAll'} = $new->cgp_mailtoall + if $old->cgp_mailtoall ne $new->cgp_mailtoall; + $settings{'AddMailTrailer'} = $new->cgp_addmailtrailer + if $old->cgp_addmailtrailer ne $new->cgp_addmailtrailer; + + #XXX phase 2: pwdallowed, passwordrecovery + #XXX phase 3: archive messages, mailing lists if ( keys %settings ) { my $error = $self->communigate_pro_queue( diff --git a/FS/FS/svc_acct.pm b/FS/FS/svc_acct.pm index fbf4707..6e7fb91 100644 --- a/FS/FS/svc_acct.pm +++ b/FS/FS/svc_acct.pm @@ -1113,6 +1113,10 @@ sub check { || $self->ut_textn('cgp_aliases' ) #well || $self->ut_alphasn('cgp_deletemode') || $self->ut_alphan('cgp_emptytrash') + || $self->ut_alphasn('cgp_rulesallowed') + || $self->ut_enum('cgp_rpopallowed', [ '', 'Y' ]) + || $self->ut_enum('cgp_mailtoall', [ '', 'Y' ]) + || $self->ut_enum('cgp_addmailtrailer', [ '', 'Y' ]) ; return $error if $error; diff --git a/FS/FS/svc_domain.pm b/FS/FS/svc_domain.pm index f8c6615..5a593bb 100644 --- a/FS/FS/svc_domain.pm +++ b/FS/FS/svc_domain.pm @@ -430,7 +430,7 @@ sub check { || $self->ut_alphan('acct_def_maxsize') || $self->ut_alphasn('acct_def_cgp_deletemode') || $self->ut_alphan('acct_def_cgp_emptytrash') - || $self->ut_textn('acct_def_cgp_rulesallowed') + || $self->ut_alphasn('acct_def_cgp_rulesallowed') || $self->ut_enum('acct_def_cgp_rpopallowed', [ '', 'Y' ]) || $self->ut_enum('acct_def_cgp_mailtoall', [ '', 'Y' ]) || $self->ut_enum('acct_def_cgp_addmailtrailer', [ '', 'Y' ]) |