package FS::svc_domain;
use strict;
-use vars qw( @ISA $whois_hack $conf
+use base qw( FS::svc_Parent_Mixin FS::svc_CGP_Mixin FS::svc_CGPRule_Mixin
+ FS::svc_Common );
+use vars qw( $whois_hack $conf
@defaultrecords $soadefaultttl $soaemail $soaexpire $soamachine
$soarefresh $soaretry
);
use Net::Domain::TLD qw(tld_exists);
use FS::Record qw(fields qsearch qsearchs dbh);
use FS::Conf;
-use FS::svc_Common;
-use FS::svc_Parent_Mixin;
use FS::cust_svc;
use FS::svc_acct;
use FS::cust_pkg;
use FS::domain_record;
use FS::queue;
-@ISA = qw( FS::svc_Parent_Mixin FS::svc_Common );
-
#ask FS::UID to run this stuff for us later
$FS::UID::callback{'FS::domain'} = sub {
$conf = new FS::Conf;
},
'acct_def_cgp_emptytrash' => {
label => 'Acct. default Communigate on logout remove trash',
- type => 'text',
+ type => 'select',
+ select_list => __PACKAGE__->cgp_emptytrash_values,
disable_inventory => 1,
disable_select => 1,
},
disable_inventory => 1,
disable_select => 1,
},
-
-
+ 'acct_def_cgp_rulesallowed' => {
+ label => 'Acct. default Allowed mail rules',
+ type => 'select',
+ select_list => [ '', 'No', 'Filter Only', 'All But Exec', 'Any' ],
+ disable_inventory => 1,
+ disable_select => 1,
+ },
+ 'acct_def_cgp_rpopallowed' => {
+ label => 'Acct. default RPOP modifications',
+ type => 'checkbox',
+ },
+ 'acct_def_cgp_mailtoall' => {
+ label => 'Acct. default Accepts mail to "all"',
+ type => 'checkbox',
+ },
+ 'acct_def_cgp_addmailtrailer' => {
+ label => 'Acct. default Add trailer to sent mail',
+ type => 'checkbox',
+ },
+ 'trailer' => {
+ label => 'Mail trailer',
+ type => 'textarea',
+ disable_inventory => 1,
+ disable_select => 1,
+ },
+ 'acct_def_cgp_language' => {
+ label => 'Acct. default language',
+ type => 'select',
+ select_list => [ '', qw( English Arabic Chinese Dutch French German Hebrew Italian Japanese Portuguese Russian Slovak Spanish Thai ) ],
+ disable_inventory => 1,
+ disable_select => 1,
+ },
+ 'acct_def_cgp_timezone' => {
+ label => 'Acct. default time zone',
+ type => 'select',
+ select_list => __PACKAGE__->cgp_timezone_values,
+ disable_inventory => 1,
+ disable_select => 1,
+ },
+ 'acct_def_cgp_skinname' => {
+ label => 'Acct. default layout',
+ type => 'select',
+ select_list => [ '', '***', 'GoldFleece', 'Skin2' ],
+ disable_inventory => 1,
+ disable_select => 1,
+ },
+ 'acct_def_cgp_prontoskinname' => {
+ label => 'Acct. default Pronto style',
+ type => 'select',
+ select_list => [ '', 'Pronto', 'Pronto-darkflame', 'Pronto-steel', 'Pronto-twilight', ],
+ disable_inventory => 1,
+ disable_select => 1,
+ },
+ 'acct_def_cgp_sendmdnmode' => {
+ label => 'Acct. default send read receipts',
+ type => 'select',
+ select_list => [ '', 'Never', 'Manually', 'Automatically' ],
+ disable_inventory => 1,
+ disable_select => 1,
+ },
},
};
}
|| $self->ut_alphan('acct_def_file_quota')
|| $self->ut_alphan('acct_def_maxnum')
|| $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')
+ #settings
+ || $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' ])
+ #XXX archive messages
+ #preferences
+ || $self->ut_alphasn('acct_def_cgp_deletemode')
+ || $self->ut_enum('acct_def_cgp_emptytrash',
+ $self->cgp_emptytrash_values )
+ || $self->ut_alphan('acct_def_cgp_language')
+ || $self->ut_textn('acct_def_cgp_timezone')
+ || $self->ut_textn('acct_def_cgp_skinname')
+ || $self->ut_textn('acct_def_cgp_prontoskinname')
+ || $self->ut_alphan('acct_def_cgp_sendmdnmode')
+ #mail
+ #XXX rules, archive rule, spam foldering rule(s)
;
return $error if $error;