start adding package locations, RT#4499
[freeside.git] / FS / FS / cust_main.pm
index da1d3e1..2b94dca 100644 (file)
@@ -135,101 +135,181 @@ FS::Record.  The following fields are currently supported:
 
 =over 4
 
 
 =over 4
 
-=item custnum - primary key (assigned automatically for new customers)
+=item custnum
 
 
-=item agentnum - agent (see L<FS::agent>)
+Primary key (assigned automatically for new customers)
 
 
-=item refnum - Advertising source (see L<FS::part_referral>)
+=item agentnum
+
+Agent (see L<FS::agent>)
+
+=item refnum
+
+Advertising source (see L<FS::part_referral>)
+
+=item first
+
+First name
 
 
-=item first - name
+=item last
 
 
-=item last - name
+Last name
 
 
-=item ss - social security number (optional)
+=item ss
 
 
-=item company - (optional)
+Cocial security number (optional)
+
+=item company
+
+(optional)
 
 =item address1
 
 
 =item address1
 
-=item address2 - (optional)
+=item address2
+
+(optional)
 
 =item city
 
 
 =item city
 
-=item county - (optional, see L<FS::cust_main_county>)
+=item county
 
 
-=item state - (see L<FS::cust_main_county>)
+(optional, see L<FS::cust_main_county>)
+
+=item state
+
+(see L<FS::cust_main_county>)
 
 =item zip
 
 
 =item zip
 
-=item country - (see L<FS::cust_main_county>)
+=item country
+
+(see L<FS::cust_main_county>)
 
 
-=item daytime - phone (optional)
+=item daytime
 
 
-=item night - phone (optional)
+phone (optional)
 
 
-=item fax - phone (optional)
+=item night
 
 
-=item ship_first - name
+phone (optional)
 
 
-=item ship_last - name
+=item fax
 
 
-=item ship_company - (optional)
+phone (optional)
+
+=item ship_first
+
+Shipping first name
+
+=item ship_last
+
+Shipping last name
+
+=item ship_company
+
+(optional)
 
 =item ship_address1
 
 
 =item ship_address1
 
-=item ship_address2 - (optional)
+=item ship_address2
+
+(optional)
 
 =item ship_city
 
 
 =item ship_city
 
-=item ship_county - (optional, see L<FS::cust_main_county>)
+=item ship_county
+
+(optional, see L<FS::cust_main_county>)
+
+=item ship_state
 
 
-=item ship_state - (see L<FS::cust_main_county>)
+(see L<FS::cust_main_county>)
 
 =item ship_zip
 
 
 =item ship_zip
 
-=item ship_country - (see L<FS::cust_main_county>)
+=item ship_country
 
 
-=item ship_daytime - phone (optional)
+(see L<FS::cust_main_county>)
 
 
-=item ship_night - phone (optional)
+=item ship_daytime
 
 
-=item ship_fax - phone (optional)
+phone (optional)
 
 
-=item payby - Payment Type (See L<FS::payinfo_Mixin> for valid payby values)
+=item ship_night
 
 
-=item payinfo - Payment Information (See L<FS::payinfo_Mixin> for data format)
+phone (optional)
 
 
-=item paymask - Masked payinfo (See L<FS::payinfo_Mixin> for how this works)
+=item ship_fax
+
+phone (optional)
+
+=item payby
+
+Payment Type (See L<FS::payinfo_Mixin> for valid payby values)
+
+=item payinfo
+
+Payment Information (See L<FS::payinfo_Mixin> for data format)
+
+=item paymask
+
+Masked payinfo (See L<FS::payinfo_Mixin> for how this works)
 
 =item paycvv
 
 Card Verification Value, "CVV2" (also known as CVC2 or CID), the 3 or 4 digit number on the back (or front, for American Express) of the credit card
 
 
 =item paycvv
 
 Card Verification Value, "CVV2" (also known as CVC2 or CID), the 3 or 4 digit number on the back (or front, for American Express) of the credit card
 
-=item paydate - expiration date, mm/yyyy, m/yyyy, mm/yy or m/yy
+=item paydate
+
+Expiration date, mm/yyyy, m/yyyy, mm/yy or m/yy
+
+=item paystart_month
+
+Start date month (maestro/solo cards only)
+
+=item paystart_year
+
+Start date year (maestro/solo cards only)
 
 
-=item paystart_month - start date month (maestro/solo cards only)
+=item payissue
 
 
-=item paystart_year - start date year (maestro/solo cards only)
+Issue number (maestro/solo cards only)
 
 
-=item payissue - issue number (maestro/solo cards only)
+=item payname
 
 
-=item payname - name on card or billing name
+Name on card or billing name
 
 
-=item payip - IP address from which payment information was received
+=item payip
 
 
-=item tax - tax exempt, empty or `Y'
+IP address from which payment information was received
 
 
-=item otaker - order taker (assigned automatically, see L<FS::UID>)
+=item tax
 
 
-=item comments - comments (optional)
+Tax exempt, empty or `Y'
 
 
-=item referral_custnum - referring customer number
+=item otaker
 
 
-=item spool_cdr - Enable individual CDR spooling, empty or `Y'
+Order taker (assigned automatically, see L<FS::UID>)
 
 
-=item dundate - a suggestion to events (see L<FS::part_bill_event">) to delay until this unix timestamp
+=item comments
 
 
-=item squelch_cdr - Discourage individual CDR printing, empty or `Y'
+Comments (optional)
+
+=item referral_custnum
+
+Referring customer number
+
+=item spool_cdr
+
+Enable individual CDR spooling, empty or `Y'
+
+=item dundate
+
+A suggestion to events (see L<FS::part_bill_event">) to delay until this unix timestamp
+
+=item squelch_cdr
+
+Discourage individual CDR printing, empty or `Y'
 
 =back
 
 
 =back
 
@@ -2905,6 +2985,11 @@ Only return events for the specified eventtable (by default, events of all event
 
 Explicitly pass the objects to be tested (typically used with eventtable).
 
 
 Explicitly pass the objects to be tested (typically used with eventtable).
 
+=item testonly
+
+Set to true to return the objects, but not actually insert them into the
+database.
+
 =back
 
 =cut
 =back
 
 =cut
@@ -2935,7 +3020,8 @@ sub due_cust_event {
   local $FS::UID::AutoCommit = 0;
   my $dbh = dbh;
 
   local $FS::UID::AutoCommit = 0;
   my $dbh = dbh;
 
-  $self->select_for_update; #mutex
+  $self->select_for_update #mutex
+    unless $opt{testonly};
 
   ###
   # 1: find possible events (initial search)
 
   ###
   # 1: find possible events (initial search)