summaryrefslogtreecommitdiff
path: root/FS
diff options
context:
space:
mode:
Diffstat (limited to 'FS')
-rw-r--r--FS/FS/part_export/communigate_pro.pm5
-rw-r--r--FS/FS/svc_domain.pm9
2 files changed, 14 insertions, 0 deletions
diff --git a/FS/FS/part_export/communigate_pro.pm b/FS/FS/part_export/communigate_pro.pm
index fcd6b1ce3..a62df8335 100644
--- a/FS/FS/part_export/communigate_pro.pm
+++ b/FS/FS/part_export/communigate_pro.pm
@@ -139,6 +139,8 @@ sub _export_insert_svc_domain {
);
$settings{'AccountsLimit'} = $svc_domain->max_accounts
if $svc_domain->max_accounts;
+ $settings{'AdminDomainName'} = $svc_domain->parent_svc_x->domain
+ if $svc_domain->parent_svcnum;
my @options = ( $create, $svc_domain->domain, \%settings );
@@ -279,6 +281,9 @@ sub _export_replace_svc_domain {
if $old->max_accounts ne $new->max_accounts;
$settings{'DomainAccessModes'} = $new->cgp_accessmodes
if $old->cgp_accessmodes ne $new->cgp_accessmodes;
+ $settings{'AdminDomainName'} =
+ $new->parent_svcnum ? $new->parent_svc_x->domain : ''
+ if $old->parent_svcnum != $new->parent_svcnum;
if ( keys %settings ) {
my $error = $self->communigate_pro_queue( $new->svcnum,
diff --git a/FS/FS/svc_domain.pm b/FS/FS/svc_domain.pm
index b5f91f1df..ab45e00a6 100644
--- a/FS/FS/svc_domain.pm
+++ b/FS/FS/svc_domain.pm
@@ -111,6 +111,15 @@ sub table_info {
'cancel_weight' => 60,
'fields' => {
'domain' => 'Domain',
+ 'parent_svcnum' => {
+ label => 'Parent domain / Communigate administrator domain',
+ type => 'select',
+ select_table => 'svc_domain',
+ select_key => 'svcnum',
+ select_label => 'domain',
+ disable_inventory => 1,
+ disable_select => 1,
+ },
'max_accounts' => { label => 'Maximum number of accounts',
'disable_inventory' => 1,
},