diff options
author | Ivan Kohler <ivan@freeside.biz> | 2013-01-10 00:06:26 -0800 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2013-01-10 00:06:26 -0800 |
commit | dd825e780ad1e7d520f5c2d7f99c0f67fe892781 (patch) | |
tree | cf02d642f666cca53dbb130751bc5af7385d198c /FS/FS/ClientAPI | |
parent | b0038a70f8750eff48470d7597adb80aa45f4d74 (diff) |
add blacklist/whitelist settings to self-service API, RT#20896
Diffstat (limited to 'FS/FS/ClientAPI')
-rw-r--r-- | FS/FS/ClientAPI/MyAccount.pm | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm index b02852b59..92fcd0cf7 100644 --- a/FS/FS/ClientAPI/MyAccount.pm +++ b/FS/FS/ClientAPI/MyAccount.pm @@ -1801,6 +1801,44 @@ sub set_svc_status_hash { } +sub set_svc_status_listadd { + my $p = shift; + + my($context, $session, $custnum) = _custoragent_session_custnum($p); + return { 'error' => $session } if $context eq 'error'; + + #XXX only svc_acct for now + my $svc_x = _customer_svc_x( $custnum, $p->{'svcnum'}, 'svc_acct') + or return { 'error' => "Service not found" }; + + warn "set_svc_status_listadd ". join(' / ', map "$_=>".$p->{$_}, keys %$p ) + if $DEBUG; + my $error = $svc_x->export_setstatus_listadd($p); #$p? returns error? + return { 'error' => $error } if $error; + + return {}; #? { 'error' => '' } + +} + +sub set_svc_status_listdel { + my $p = shift; + + my($context, $session, $custnum) = _custoragent_session_custnum($p); + return { 'error' => $session } if $context eq 'error'; + + #XXX only svc_acct for now + my $svc_x = _customer_svc_x( $custnum, $p->{'svcnum'}, 'svc_acct') + or return { 'error' => "Service not found" }; + + warn "set_svc_status_listdel ". join(' / ', map "$_=>".$p->{$_}, keys %$p ) + if $DEBUG; + my $error = $svc_x->export_setstatus_listdel($p); #$p? returns error? + return { 'error' => $error } if $error; + + return {}; #? { 'error' => '' } + +} + sub acct_forward_info { my $p = shift; |