X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=fs_selfservice%2FFS-SelfService%2FSelfService.pm;h=4367aa1e45b0cf095cb89b204b4f220eaad18def;hb=ee2d1447f9130fb9ed20d54f0169ab7a8f87167e;hp=ec4668fe8c6b4c235cf9bd519420d718e0d373f1;hpb=e37ee3384655dd27d12a531ce5fa48c109d09f6d;p=freeside.git diff --git a/fs_selfservice/FS-SelfService/SelfService.pm b/fs_selfservice/FS-SelfService/SelfService.pm index ec4668fe8..4367aa1e4 100644 --- a/fs_selfservice/FS-SelfService/SelfService.pm +++ b/fs_selfservice/FS-SelfService/SelfService.pm @@ -57,8 +57,9 @@ $socket .= '.'.$tag if defined $tag && length($tag); 'agent_logout' => 'Agent/agent_logout', 'agent_info' => 'Agent/agent_info', 'agent_list_customers' => 'Agent/agent_list_customers', + 'mason_comp' => 'MasonComponent/mason_comp', ); -@EXPORT_OK = ( keys(%autoload), qw( regionselector expselect popselector domainselector) ); +@EXPORT_OK = ( keys(%autoload), qw( regionselector expselect popselector domainselector didselector) ); $ENV{'PATH'} ='/usr/bin:/usr/ucb:/bin'; $ENV{'SHELL'} = '/bin/sh'; @@ -192,11 +193,16 @@ FS::SelfService - Freeside self-service API 'payname' => $payname, 'invoicing_list' => $invoicing_list, 'referral_custnum' => $referral_custnum, + 'agentnum' => $agentnum, 'pkgpart' => $pkgpart, + 'username' => $username, '_password' => $password, 'popnum' => $popnum, - 'agentnum' => $agentnum, + #OR + 'countrycode' => 1, + 'phonenum' => $phonenum, + 'pin' => $pin, } ); @@ -595,11 +601,17 @@ Array reference with three elements: =over 4 -=item Name of this service +=item + +Name of this service + +=item -=item Meaningful user-specific identifier for the service (i.e. username, domain or mail alias) +Meaningful user-specific identifier for the service (i.e. username, domain or mail alias) -=item Table name of this service +=item + +Table name of this service =back @@ -972,6 +984,10 @@ comma-separated list of email addresses for email invoices. The special value ' referring customer number +=item agentnum + +Agent number + =item pkgpart pkgpart of initial package @@ -992,9 +1008,17 @@ Security phrase Access number (index, not the literal number) -=item agentnum +=item countrycode -Agent number +Country code (to be provisioned as a service) + +=item phonenum + +Phone number (to be provisioned as a service) + +=item pin + +Voicemail PIN =back @@ -1412,7 +1436,7 @@ sub domainselector { return '' unless scalar(keys %$domains); - + if (scalar(keys %$domains) == 1) { my $key; foreach(keys %$domains) { @@ -1437,6 +1461,39 @@ sub domainselector { } +=item didselector HASHREF | LIST + +Takes as input a hashref or list of key/value pairs with the following keys: + +=over 4 + +=item field + +=item svcpart + +=back + +Returns an HTML fragment for DID selection. + +=cut + +sub didselector { + my $param; + if ( ref($_[0]) ) { + $param = shift; + } else { + $param = { @_ }; + } + + my $rv = mason_comp( 'comp'=>'/elements/select-did.html', + 'args'=>[ %$param ], + ); + + #hmm. + $rv->{'error'} || $rv->{'output'}; + +} + =back =head1 RESELLER FUNCTIONS