[freeside-commits] branch master updated. 899cf5029429c1183024cd4bf838573a951d0ede

Ivan ivan at 420.am
Mon Feb 2 01:35:06 PST 2015


The branch, master has been updated
       via  899cf5029429c1183024cd4bf838573a951d0ede (commit)
       via  91fc21ed01fec83bf1dbb7392d212acdffd4d44c (commit)
       via  7d4ebaaed6a6a704c0a958f7e1305cf1d8560e82 (commit)
      from  64514e0541c94b23a096acb265cb47e9ca6e6f85 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 899cf5029429c1183024cd4bf838573a951d0ede
Merge: 91fc21e 64514e0
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Mon Feb 2 01:34:59 2015 -0800

    Merge branch 'master' of git.freeside.biz:/home/git/freeside


commit 91fc21ed01fec83bf1dbb7392d212acdffd4d44c
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Mon Feb 2 01:34:57 2015 -0800

    comment

diff --git a/httemplate/edit/quick-charge.html b/httemplate/edit/quick-charge.html
index dfaf404..1e1232d 100644
--- a/httemplate/edit/quick-charge.html
+++ b/httemplate/edit/quick-charge.html
@@ -106,7 +106,7 @@ function bill_now_changed (what) {
 
 <TABLE ID="QuickChargeTable" BGCOLOR="#cccccc" BORDER=0 CELLSPACING=0 STYLE="background-color: #cccccc">
 
-% if ( $cust_pkg ) {
+% if ( $cust_pkg ) { #modify one-time charge
 
 <INPUT TYPE="hidden" NAME="pkgnum" VALUE="<% $cust_pkg->pkgnum %>">
 % my $field = '/elements/tr-input-text.html';

commit 7d4ebaaed6a6a704c0a958f7e1305cf1d8560e82
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Mon Feb 2 01:33:57 2015 -0800

    bill now via backoffice API, RT#33220

diff --git a/FS/FS/API.pm b/FS/FS/API.pm
index 629463c..30efa9c 100644
--- a/FS/FS/API.pm
+++ b/FS/FS/API.pm
@@ -36,9 +36,10 @@ in plaintext.
 
 =over 4
 
-=item insert_payment
+=item insert_payment OPTION => VALUE, ...
 
-Adds a new payment to a customers account. Takes a hash reference as parameter with the following keys:
+Adds a new payment to a customers account. Takes a list of keys and values as
+paramters with the following keys:
 
 =over 5
 
@@ -60,9 +61,10 @@ Amount paid
 
 =item _date
 
-
 Option date for payment
 
+=back
+
 Example:
 
   my $result = FS::API->insert_payment(
@@ -82,8 +84,6 @@ Example:
     print "paynum ". $result->{'paynum'};
   }
 
-=back
-
 =cut
 
 #enter cash payment
@@ -133,9 +133,10 @@ sub _by_phonenum {
 
 }
 
-=item insert_credit
+=item insert_credit OPTION => VALUE, ...
 
-Adds a a credit to a customers account. Takes a hash reference as parameter with the following keys
+Adds a a credit to a customers account.  Takes a list of keys and values as
+parameters with the following keys
 
 =over 
 
@@ -155,6 +156,8 @@ Amount of the credit
 
 The date the credit will be posted
 
+=back
+
 Example:
 
   my $result = FS::API->insert_credit(
@@ -173,8 +176,6 @@ Example:
     print "crednum ". $result->{'crednum'};
   }
 
-=back
-
 =cut
 
 #Enter credit
@@ -206,9 +207,10 @@ sub insert_credit_phonenum {
 
 }
 
-=item insert_refund
+=item insert_refund OPTION => VALUE, ...
 
-Adds a a credit to a customers account. Takes a hash reference as parameter with the following keys: custnum,payby,refund
+Adds a a credit to a customers account.  Takes a list of keys and values as
+parmeters with the following keys: custnum, payby, refund
 
 Example:
 
@@ -270,9 +272,10 @@ sub insert_refund_phonenum {
 
 # long-term: package changes?
 
-=item new_customer
+=item new_customer OPTION => VALUE, ...
 
-Creates a new customer. Takes a hash reference as parameter with the following keys:
+Creates a new customer. Takes a list of keys and values as parameters with the
+following keys:
 
 =over 4
 
@@ -402,6 +405,7 @@ Agent specific customer number
 
 Referring customer number
 
+=back
 
 =cut
 
@@ -425,8 +429,6 @@ sub new_customer {
   $class->API_insert( %opt );
 }
 
-=back 
-
 =item update_customer
 
 Updates an existing customer. Takes a hash reference as parameter with the foll$
@@ -520,13 +522,17 @@ Exact name on credit card for CARD/DCRD, bank name for CHEK/DCHK
 Referring customer number
 
 =item salesnum
+
 Sales person number
 
 =item agentnum
 
 Agent number
 
+=back
+
 =cut
+
 sub update_customer {
   my( $class, %opt ) = @_;
 
@@ -537,12 +543,10 @@ sub update_customer {
   FS::cust_main->API_update( %opt );
 }
 
-=back
-
+=item customer_info OPTION => VALUE, ...
 
-=item customer_info
-
-Returns general customer information. Takes a hash reference as parameter with the following keys: custnum and API secret 
+Returns general customer information. Takes a list of keys and values as
+parameters with the following keys: custnum, secret 
 
 =cut
 
@@ -560,9 +564,8 @@ sub customer_info {
 
 =item location_info
 
-Returns location specific information for the customer. Takes a hash reference as parameter with the following keys: custnum,secret
-
-=back
+Returns location specific information for the customer. Takes a list of keys
+and values as paramters with the following keys: custnum, secret
 
 =cut
 
@@ -586,6 +589,36 @@ sub location_info {
   return \%return;
 }
 
+=item bill_now OPTION => VALUE, ...
+
+Bills a single customer now, in the same fashion as the "Bill now" link in the
+UI.
+
+Returns a hash reference with a single key, 'error'.  If there is an error,
+the value contains the error, otherwise it is empty.
+
+=cut
+
+sub bill_now {
+  my( $class, %opt ) = @_;
+  my $conf = new FS::Conf;
+  return { 'error' => 'Incorrect shared secret' }
+    unless $opt{secret} eq $conf->config('api_shared_secret');
+
+  my $cust_main = qsearchs('cust_main', { 'custnum' => $opt{custnum} })
+    or return { 'error' => 'Unknown custnum' };
+
+  my $error = $cust_main->bill_and_collect( 'fatal'      => 'return',
+                                            'retry'      => 1,
+                                            'check_freq' =>'1d',
+                                          );
+
+   return { 'error' => $error,
+          };
+
+}
+
+
 #Advertising sources?
 
 

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/API.pm                      |   79 ++++++++++++++++++++++++++-----------
 httemplate/edit/quick-charge.html |    2 +-
 2 files changed, 57 insertions(+), 24 deletions(-)




More information about the freeside-commits mailing list