From: Ivan Kohler Date: Sun, 25 Sep 2016 18:01:35 +0000 (-0700) Subject: suspend/unsuspend CF users X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=01eb5584fe47513d2e61459c7df303670104bd9a suspend/unsuspend CF users --- diff --git a/FS/FS/part_export/cardfortress.pm b/FS/FS/part_export/cardfortress.pm index 8c9413597..ae8e2966f 100644 --- a/FS/FS/part_export/cardfortress.pm +++ b/FS/FS/part_export/cardfortress.pm @@ -55,10 +55,15 @@ sub _export_replace { ''; } -sub _export_delete { - my( $self, $svc_acct ) = (shift, shift); +#well, we're just going to disable them for now, but there you go +sub _export_delete { shift->merchant_disable(@_) } + +sub _export_suspend { shift->merchant_disable(@_) } - #well, we're just going to disable them for now, but there you go +sub _export_unsuspend { shift->merchant_enable(@_) } + +sub merchant_disable { + my( $self, $svc_acct ) = (shift, shift); open my $def_in, '<', '/dev/null' or die "unable to open /dev/null"; my $ssh = Net::OpenSSH->new( $self->machine, @@ -74,4 +79,21 @@ sub _export_delete { } +sub merchant_enable { + my( $self, $svc_acct ) = (shift, shift); + + open my $def_in, '<', '/dev/null' or die "unable to open /dev/null"; + my $ssh = Net::OpenSSH->new( $self->machine, + default_stdin_fh => $def_in ); + + #capture2 and return STDERR, its probably useful if there's a problem + my $unused_output = $ssh->capture( + '/usr/local/bin/merchant_enable', map $svc_acct->$_, qw( username ) + ); + return $ssh->error if $ssh->error; + + ''; + +} + 1;