X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=FS%2FFS%2Fpart_export%2Fdomreg_opensrs.pm;h=0c7a95dccc0ca9e0308bd594528e151d773021c2;hb=389b6f1116c3309c2ee57a6c295ed1a793503095;hp=6554991d395e68c2201711832b603f40192e1a42;hpb=19b19c53164670e6e649b0ea3578fff882ce1082;p=freeside.git diff --git a/FS/FS/part_export/domreg_opensrs.pm b/FS/FS/part_export/domreg_opensrs.pm index 6554991d3..0c7a95dcc 100644 --- a/FS/FS/part_export/domreg_opensrs.pm +++ b/FS/FS/part_export/domreg_opensrs.pm @@ -42,7 +42,7 @@ gateway when setting up this export. $me = '[' . __PACKAGE__ . ']'; $DEBUG = 0; -my @tldlist = qw/com net org biz info name mobi at be ca cc ch cn de dk es eu fr it mx nl tv uk us/; +my @tldlist = qw/com net org biz info name mobi at be ca cc ch cn de dk es eu fr it mx nl tv uk us asn.au com.au id.au net.au org.au/; tie %options, 'Tie::IxHash', 'username' => { label => 'Reseller user name at OpenSRS', @@ -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 = ( @@ -290,14 +293,17 @@ sub is_supported_domain { # Get the TLD of the new domain my @bits = split /\./, $svc_domain->domain; - return "Can't register subdomains: " . $svc_domain->domain if scalar(@bits) != 2; + return "Can't register subdomains: " . $svc_domain->domain + if (scalar(@bits) != 2 && scalar(@bits) != 3); my $tld = pop @bits; + my $sld = pop @bits; # See if it's one this export supports my @tlds = split /\s+/, $self->option('tlds'); @tlds = map { s/\.//; $_ } @tlds; - return "Can't register top-level domain $tld, restricted to: " . $self->option('tlds') if ! grep { $_ eq $tld } @tlds; + return "Can't register top-level domain $tld, restricted to: " + . $self->option('tlds') if ! grep { $_ eq $tld || $_ eq "$sld$tld" } @tlds; return undef; } @@ -379,6 +385,8 @@ Like most export functions, returns an error message on failure or undef on succ sub register { my ( $self, $svc_domain, $years ) = @_; + $years = 1 unless $years; #default to 1 year since we don't seem to pass it + return "Net::OpenSRS does not support period other than 1 year" if $years != 1; eval "use Net::OpenSRS;"; @@ -391,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;