X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_export%2Fshellcommands.pm;h=3d5e672779547d11b558c21c3eeaa4b2022ee07b;hb=005242742601ebe79abc7a75ebd8c96c9ad0fce0;hp=7baf2dabe39f0a3a1f570c096d95ab32bfd28ae4;hpb=46c05dd754895d3d9511763998f9ef505c8d2bd7;p=freeside.git diff --git a/FS/FS/part_export/shellcommands.pm b/FS/FS/part_export/shellcommands.pm index 7baf2dabe..3d5e67277 100644 --- a/FS/FS/part_export/shellcommands.pm +++ b/FS/FS/part_export/shellcommands.pm @@ -95,7 +95,7 @@ tie my %options, 'Tie::IxHash', Run remote commands via SSH. Usernames are considered unique (also see shellcommands_withdomain). You probably want this if the commands you are running will not accept a domain as a parameter. You will need to -setup SSH for unattended operation. +setup SSH for unattended operation.

Use these buttons for some useful presets: END ); @@ -258,6 +259,16 @@ sub _export_command { my $cust_pkg = $svc_acct->cust_svc->cust_pkg; if ( $cust_pkg ) { + no strict 'vars'; + { + no strict 'refs'; + foreach my $custf (qw( company address1 address2 city state zip country + daytime night fax otaker agent_custid + )) + { + ${$custf} = $cust_pkg->cust_main->$custf(); + } + } $email = ( grep { $_ !~ /^(POST|FAX)$/ } $cust_pkg->cust_main->invoicing_list )[0]; } else { $email = ''; @@ -309,6 +320,9 @@ sub _export_command { $reasonnum = $reasontext = $reasontypenum = $reasontypetext = ''; } + $pkgnum = $cust_pkg ? $cust_pkg->pkgnum : ''; + $custnum = $cust_pkg ? $cust_pkg->custnum : ''; + my $stdin_string = eval(qq("$stdin")); $first = shell_quote $first; @@ -316,8 +330,18 @@ sub _export_command { $finger = shell_quote $finger; $crypt_password = shell_quote $crypt_password; $ldap_password = shell_quote $ldap_password; - $pkgnum = $cust_pkg ? $cust_pkg->pkgnum : ''; - $custnum = $cust_pkg ? $cust_pkg->custnum : ''; + + $company = shell_quote $company; + $address1 = shell_quote $address1; + $address2 = shell_quote $address2; + $city = shell_quote $city; + $state = shell_quote $state; + $zip = shell_quote $zip; + $country = shell_quote $country; + $daytime = shell_quote $daytime; + $night = shell_quote $night; + $fax = shell_quote $fax; + $otaker = shell_quote $otaker; my $command_string = eval(qq("$command")); my @ssh_cmd_args = (