X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=FS%2FFS%2Fpart_export.pm;h=16f91eb6eea27f232da70d7751d308c5d637547e;hb=aecf44ec9118946eebe551fc7144a1d0dcff8de5;hp=f99dc634168c02cb4f6c3e25af5a6fe27e622b39;hpb=60527016538d1794227983d99ce3b77c8fcd7426;p=freeside.git
diff --git a/FS/FS/part_export.pm b/FS/FS/part_export.pm
index f99dc6341..16f91eb6e 100644
--- a/FS/FS/part_export.pm
+++ b/FS/FS/part_export.pm
@@ -274,10 +274,6 @@ sub check {
;
return $error if $error;
- $self->machine =~ /^([\w\-\.]*)$/
- or return "Illegal machine: ". $self->machine;
- $self->machine($1);
-
$self->nodomain =~ /^(Y?)$/ or return "Illegal nodomain: ". $self->nodomain;
$self->nodomain($1);
@@ -285,7 +281,7 @@ sub check {
#check exporttype?
- ''; #no error
+ $self->SUPER::check;
}
#=item part_svc
@@ -307,7 +303,7 @@ sub part_svc {
=item svc_x
-Returns a list of associate FS::svc_* records.
+Returns a list of associated FS::svc_* records.
=cut
@@ -548,7 +544,7 @@ tie my %shellcommands_options, 'Tie::IxHash',
#'machine' => { label=>'Remote machine' },
'user' => { label=>'Remote username', default=>'root' },
'useradd' => { label=>'Insert command',
- default=>'useradd -d $dir -m -s $shell -u $uid -p $crypt_password $username'
+ default=>'useradd -c $finger -d $dir -m -s $shell -u $uid -p $crypt_password $username'
#default=>'cp -pr /etc/skel $dir; chown -R $uid.$gid $dir'
},
'useradd_stdin' => { label=>'Insert command STDIN',
@@ -564,7 +560,7 @@ tie my %shellcommands_options, 'Tie::IxHash',
default=>'',
},
'usermod' => { label=>'Modify command',
- default=>'usermod -d $new_dir -m -l $new_username -s $new_shell -u $new_uid -p $new_crypt_password $old_username',
+ default=>'usermod -c $new_finger -d $new_dir -m -l $new_username -s $new_shell -u $new_uid -p $new_crypt_password $old_username',
#default=>'[ -d $old_dir ] && mv $old_dir $new_dir || ( '.
# 'chmod u+t $old_dir; mkdir $new_dir; cd $old_dir; '.
# 'find . -depth -print | cpio -pdm $new_dir; '.
@@ -576,14 +572,17 @@ tie my %shellcommands_options, 'Tie::IxHash',
type =>'textarea',
default=>'',
},
+ 'usermod_pwonly' => { label=>'Disallow username changes',
+ type =>'checkbox',
+ },
'suspend' => { label=>'Suspension command',
- default=>'',
+ default=>'usermod -L $username',
},
'suspend_stdin' => { label=>'Suspension command STDIN',
default=>'',
},
'unsuspend' => { label=>'Unsuspension command',
- default=>'',
+ default=>'usermod -U $username',
},
'unsuspend_stdin' => { label=>'Unsuspension command STDIN',
default=>'',
@@ -613,6 +612,9 @@ tie my %shellcommands_withdomain_options, 'Tie::IxHash',
type =>'textarea',
#default=>"$_password\n$_password\n",
},
+ 'usermod_pwonly' => { label=>'Disallow username changes',
+ type =>'checkbox',
+ },
'suspend' => { label=>'Suspension command',
default=>'',
},
@@ -661,8 +663,21 @@ END
},
;
+tie my %router_options, 'Tie::IxHash',
+ 'protocol' => {
+ label=>'Protocol',
+ type =>'select',
+ options => [qw(telnet ssh)],
+ default => 'telnet'},
+ 'insert' => {label=>'Insert command', default=>'' },
+ 'delete' => {label=>'Delete command', default=>'' },
+ 'replace' => {label=>'Replace command', default=>'' },
+ 'Timeout' => {label=>'Time to wait for prompt', default=>'20' },
+ 'Prompt' => {label=>'Prompt string', default=>'#' }
+;
+
tie my %domain_shellcommands_options, 'Tie::IxHash',
- 'user' => { lable=>'Remote username', default=>'root' },
+ 'user' => { label=>'Remote username', default=>'root' },
'useradd' => { label=>'Insert command',
default=>'',
},
@@ -683,6 +698,20 @@ tie my %sqlradius_options, 'Tie::IxHash',
'datasrc' => { label=>'DBI data source ' },
'username' => { label=>'Database username' },
'password' => { label=>'Database password' },
+ 'ignore_accounting' => {
+ type => 'checkbox',
+ label=>'Ignore accounting records from this database'
+ },
+;
+
+tie my %sqlradius_withdomain_options, 'Tie::IxHash',
+ 'datasrc' => { label=>'DBI data source ' },
+ 'username' => { label=>'Database username' },
+ 'password' => { label=>'Database password' },
+ 'ignore_accounting' => {
+ type => 'checkbox',
+ label=>'Ignore accounting records from this database'
+ },
;
tie my %cyrus_options, 'Tie::IxHash',
@@ -692,7 +721,6 @@ tie my %cyrus_options, 'Tie::IxHash',
;
tie my %cp_options, 'Tie::IxHash',
- 'host' => { label=>'Hostname' },
'port' => { label=>'Port number' },
'username' => { label=>'Username' },
'password' => { label=>'Password' },
@@ -717,19 +745,66 @@ tie my %vpopmail_options, 'Tie::IxHash',
},
;
+tie my %communigate_pro_options, 'Tie::IxHash',
+ 'port' => { label=>'Port number', default=>'106', },
+ 'login' => { label=>'The administrator account name. The name can contain a domain part.', },
+ 'password' => { label=>'The administrator account password.', },
+ 'accountType' => { label=>'Type for newly-created accounts',
+ type=>'select',
+ options=>[qw( MultiMailbox TextMailbox MailDirMailbox )],
+ default=>'MultiMailbox',
+ },
+ 'externalFlag' => { label=> 'Create accounts with an external (visible for legacy mailers) INBOX.',
+ type=>'checkbox',
+ },
+ 'AccessModes' => { label=>'Access modes',
+ default=>'Mail POP IMAP PWD WebMail WebSite',
+ },
+;
+
+tie my %communigate_pro_singledomain_options, 'Tie::IxHash',
+ 'port' => { label=>'Port number', default=>'106', },
+ 'login' => { label=>'The administrator account name. The name can contain a domain part.', },
+ 'password' => { label=>'The administrator account password.', },
+ 'domain' => { label=>'Domain', },
+ 'accountType' => { label=>'Type for newly-created accounts',
+ type=>'select',
+ options=>[qw( MultiMailbox TextMailbox MailDirMailbox )],
+ default=>'MultiMailbox',
+ },
+ 'externalFlag' => { label=> 'Create accounts with an external (visible for legacy mailers) INBOX.',
+ type=>'checkbox',
+ },
+ 'AccessModes' => { label=>'Access modes',
+ default=>'Mail POP IMAP PWD WebMail WebSite',
+ },
+;
+
tie my %bind_options, 'Tie::IxHash',
- #'machine' => { label=>'named machine' },
- 'named_conf' => { label => 'named.conf location',
- default=> '/etc/bind/named.conf' },
- 'zonepath' => { label => 'path to zone files',
- default=> '/etc/bind/', },
+ #'machine' => { label=>'named machine' },
+ 'named_conf' => { label => 'named.conf location',
+ default=> '/etc/bind/named.conf' },
+ 'zonepath' => { label => 'path to zone files',
+ default=> '/etc/bind/', },
+ 'bind_release' => { label => 'ISC BIND Release',
+ type => 'select',
+ options => [qw(BIND8 BIND9)],
+ default => 'BIND8' },
+ 'bind9_minttl' => { label => 'The minttl required by bind9 and RFC1035.',
+ default => '1D' },
;
tie my %bind_slave_options, 'Tie::IxHash',
- #'machine' => { label=> 'Slave machine' },
- 'master' => { label=> 'Master IP address(s) (semicolon-separated)' },
- 'named_conf' => { label => 'named.conf location',
- default => '/etc/bind/named.conf' },
+ #'machine' => { label=> 'Slave machine' },
+ 'master' => { label=> 'Master IP address(s) (semicolon-separated)' },
+ 'named_conf' => { label => 'named.conf location',
+ default => '/etc/bind/named.conf' },
+ 'bind_release' => { label => 'ISC BIND Release',
+ type => 'select',
+ options => [qw(BIND8 BIND9)],
+ default => 'BIND8' },
+ 'bind9_minttl' => { label => 'The minttl required by bind9 and RFC1035.',
+ default => '1D' },
;
tie my %http_options, 'Tie::IxHash',
@@ -816,7 +891,7 @@ tie my %ldap_options, 'Tie::IxHash',
;
tie my %forward_shellcommands_options, 'Tie::IxHash',
- 'user' => { lable=>'Remote username', default=>'root' },
+ 'user' => { label=>'Remote username', default=>'root' },
'useradd' => { label=>'Insert command',
default=>'',
},
@@ -860,13 +935,13 @@ tie my %forward_shellcommands_options, 'Tie::IxHash',
'desc' => 'Real-time export via remote SSH (i.e. useradd, userdel, etc.)',
'options' => \%shellcommands_options,
'nodomain' => 'Y',
- 'notes' => 'Run remote commands via SSH. Usernames are considered unique (also see shellcommands_withdomain). You probably want this if the commands you are running will not accept a domain as a parameter. You will need to setup SSH for unattended operation.
Use these buttons for some useful presets:
$username
$_password
$quoted_password
- unencrypted password quoted for the shell$crypt_password
- encrypted password$uid
$gid
$finger
- GECOS, already quoted for the shell (do not add additional quotes)$dir
- home directory$shell
$quota
new_
or old_
for replace operations): $username
$domain
$_password
$quoted_password
- unencrypted password quoted for the shell$crypt_password
- encrypted password$uid
$gid
$finger
- GECOS, already quoted for the shell (do not add additional quotes)$dir
- home directory$shell
$quota
ALTER TABLE radcheck ADD COLUMN op VARCHAR(2) NOT NULL DEFAULT \'==\'
ALTER TABLE radreply ADD COLUMN op VARCHAR(2) NOT NULL DEFAULT \'==\'
ALTER TABLE radgroupcheck ADD COLUMN op VARCHAR(2) NOT NULL DEFAULT \'==\'
ALTER TABLE radgroupreply ADD COLUMN op VARCHAR(2) NOT NULL DEFAULT \'==\'
ALTER TABLE radcheck ADD COLUMN op VARCHAR(2) NOT NULL DEFAULT \'==\'
ALTER TABLE radreply ADD COLUMN op VARCHAR(2) NOT NULL DEFAULT \'==\'
ALTER TABLE radgroupcheck ADD COLUMN op VARCHAR(2) NOT NULL DEFAULT \'==\'
ALTER TABLE radgroupreply ADD COLUMN op VARCHAR(2) NOT NULL DEFAULT \'==\'
new_
or old_
for replace operations): $domain
$qdomain
- domain with periods replaced by colons$uid
- of catchall account$gid
- of catchall account$dir
- home directory of catchall accountnew_
or old_
for replace operations): $username
$domain
$destination
- forward destinationnew_
or old_
for replace operations): $zone
$username
$homedir