+ $settings{'AdminDomainName'} = $svc_domain->parent_svc_x->domain
+ if $svc_domain->parent_svcnum;
+ $settings{'TrailerText'} = $svc_domain->trailer
+ if $svc_domain->trailer;
+ $settings{'CertificateType'} = $svc_domain->cgp_certificatetype
+ if $svc_domain->cgp_certificatetype;
+
+ my @options = ( $create, $svc_domain->domain, \%settings );
+
+ eval { $self->communigate_pro_runcommand( @options ) };
+ return $@ if $@;
+
+ #aliases
+ if ( $svc_domain->cgp_aliases ) {
+ my $alias_err = $self->communigate_pro_queue( $svc_domain->svcnum,
+ 'SetDomainAliases',
+ $svc_domain->domain,
+ split(/\s*[,\s]\s*/, $svc_domain->cgp_aliases),
+ );
+ warn "WARNING: error queueing SetDomainAliases job: $alias_err"
+ if $alias_err;
+ }
+
+ #account defaults
+ my $def_err = $self->communigate_pro_queue( $svc_domain->svcnum,
+ 'SetAccountDefaults',
+ $svc_domain->domain,
+ 'PWDAllowed' =>($svc_domain->acct_def_password_selfchange ? 'YES':'NO'),
+ 'PasswordRecovery' => ($svc_domain->acct_def_password_recover ? 'YES':'NO'),
+ 'AccessModes' => $svc_domain->acct_def_cgp_accessmodes,
+ 'MaxAccountSize' => $svc_domain->acct_def_quota,
+ 'MaxWebSize' => $svc_domain->acct_def_file_quota,
+ 'MaxWebFile' => $svc_domain->acct_def_file_maxnum,
+ 'MaxFileSize' => $svc_domain->acct_def_file_maxsize,
+ 'RulesAllowed' => $svc_domain->acct_def_cgp_rulesallowed,
+ 'RPOPAllowed' =>($svc_domain->acct_def_cgp_rpopallowed ?'YES':'NO'),
+ 'MailToAll' =>($svc_domain->acct_def_cgp_mailtoall ?'YES':'NO'),
+ 'AddMailTrailer' =>($svc_domain->acct_def_cgp_addmailtrailer ?'YES':'NO'),
+ 'ArchiveMessagesAfter' => $svc_domain->acct_def_cgp_archiveafter,
+ );
+ warn "WARNING: error queueing SetAccountDefaults job: $def_err"
+ if $def_err;
+
+ #account defaults prefs
+ my $pref_err = $self->communigate_pro_queue( $svc_domain->svcnum,
+ 'SetAccountDefaultPrefs',
+ $svc_domain->domain,
+ 'DeleteMode' => $svc_domain->acct_def_cgp_deletemode,
+ 'EmptyTrash' => $svc_domain->acct_def_cgp_emptytrash,
+ 'Language' => $svc_domain->acct_def_cgp_language,
+ 'TimeZone' => $svc_domain->acct_def_cgp_timezone,
+ 'SkinName' => $svc_domain->acct_def_cgp_skinname,
+ 'ProntoSkinName' => $svc_domain->acct_def_cgp_prontoskinname,
+ 'SendMDNMode' => $svc_domain->acct_def_cgp_sendmdnmode,
+ );
+ warn "WARNING: error queueing SetAccountDefaultPrefs job: $pref_err"
+ if $pref_err;
+
+ my $rule_error = $self->communigate_pro_queue(
+ $svc_domain->svcnum,
+ 'SetDomainMailRules',
+ $svc_domain->domain,
+ $svc_domain->cgp_rule_arrayref,
+ );
+ warn "WARNING: error queueing SetDomainMailRules job: $rule_error"
+ if $rule_error;
+
+ '';