Add experimental OpenSRS export changes, and svc_domain UI changes for .au registrations
authorlevinse <levinse>
Wed, 19 Jan 2011 21:50:02 +0000 (21:50 +0000)
committerlevinse <levinse>
Wed, 19 Jan 2011 21:50:02 +0000 (21:50 +0000)
FS/FS/Schema.pm
FS/FS/part_export/domreg_opensrs.pm
FS/FS/svc_domain.pm
httemplate/edit/svc_domain.cgi

index e9977e7..30fb006 100644 (file)
@@ -1918,6 +1918,8 @@ sub tables_hashref {
        'setup_date',      @date_type, '', '',
        'renewal_interval', 'int', 'NULL',       '', '', '',
        'expiration_date', @date_type, '', '',
+       'au_registrant_name',       'varchar', 'NULL',  $char_d, '', '',
+       'au_eligibility_type',      'varchar', 'NULL',  $char_d, '', '',
         #communigate pro fields (quota = MaxAccountSize)
         'max_accounts',     'int', 'NULL',       '', '', '',
         'trailer',         'text', 'NULL',       '', '', '',
index 6728e8c..0c7a95d 100644 (file)
@@ -73,6 +73,9 @@ tie %options, 'Tie::IxHash',
                       size => scalar(@tldlist),
                       options => [ @tldlist ],
                      default => 'com net org' },
+  'auoptions'    => { label => 'Enable AU-specific registration fields', 
+                     type => 'checkbox'
+                   },
 ;
 
 %info = (
@@ -396,6 +399,11 @@ sub register {
 
   my $c = gen_contact_info($cust_main);
 
+  if ( $svc_domain->domain =~ /\.au$/ ) {
+       $c->{'registrant_name'} = $svc_domain->au_registrant_name;
+       $c->{'eligibility_type'} = $svc_domain->au_eligibility_type;
+  }
+
   $err = validate_contact_info($c);
   return $err if $err;
 
index a97f35b..9466b33 100644 (file)
@@ -89,6 +89,14 @@ FS::svc_Common.  The following fields are currently supported:
 
 =item max_accounts
 
+=item au_eligibility_type
+
+AU-specific field for domain registrations
+
+=item au_registrant_name
+
+AU-specific field for domain registrations
+
 =back
 
 =head1 METHODS
@@ -118,6 +126,16 @@ sub table_info {
                          disable_inventory => 1,
                          disable_select    => 1,
                        },
+      'au_registrant_name' => { label => 'AU Registrant Name',
+                               disable_inventory => 1,
+                               disable_select => 1,
+                             },
+      'au_eligibility_type' => { label => 'AU Eligibility Type',
+                             type  => 'select',
+                             select_list => __PACKAGE__->au_eligibility_type_values,
+                             disable_inventory => 1,
+                             disable_select    => 1,
+                             },
       'max_accounts' => { label => 'Maximum number of accounts',
                           'disable_inventory' => 1,
                         },
@@ -287,6 +305,41 @@ sub search_sql {
   $class->search_sql_field('domain', $string);
 }
 
+=item au_eligibility_type_values
+
+=cut
+
+sub au_eligibility_type_values {
+
+ [ '',
+   'Charity',
+   'Child Care Centre',
+   'Citizen/Resident',
+   'Club',
+   'Commercial Statutory Body',
+   'Company',
+   'Government School',
+   'Higher Education Institution',
+   'Incorporated Association',
+   'Industry Body',
+   'National Body',
+   'Non-Government School',
+   'Non-profit Organisation',
+   'Other',
+   'Partnership',
+   'Pending TM Owner',
+   'Political Party',
+   'Pre-school',
+   'Registered Business',
+   'Religious/Church Group',
+   'Research Organisation',
+   'Sole Trader',
+   'Trade Union',
+   'Trademark Owner',
+   'Training Organisation',
+  ];
+
+}
 
 =item label
 
@@ -523,6 +576,8 @@ sub check {
   #my $part_svc = $x;
 
   my $error = $self->ut_numbern('svcnum')
+              || $self->ut_textn('au_eligibility_type')
+              || $self->ut_textn('au_registrant_name')
               || $self->ut_numbern('catchall')
               || $self->ut_numbern('max_accounts')
               || $self->ut_anything('trailer') #well
index 54a933d..c3307fa 100755 (executable)
@@ -35,6 +35,23 @@ Available top-level domains: <% $export->option('tlds') %>
 
 </TR>
 
+%    if($export->option('auoptions')) {
+%      # XXX: this whole thing should be done like svc_Common with label_fixup, etc. eventually
+           <% include('/elements/tr-select.html',
+                       'field' => 'au_eligibiilty_type',
+                       'label' => 'AU Eligibility Type',
+                       'value' => $svc_domain->au_eligibility_type,
+                       'options' => $svc_domain->au_eligibility_type_values,
+                     )
+           %>
+           <% include('/elements/tr-input-text.html',
+                       'field' => 'au_registrant_name',
+                       'label' => 'AU Registrant Name',
+                       'value' => $svc_domain->au_registrant_name,
+                     )
+           %>
+%    }
+
 % }
   </TD>
 </TR>