From 0876d107ce74a1c1e1abe9e40b5b6531df4d7b56 Mon Sep 17 00:00:00 2001 From: ivan Date: Fri, 30 Sep 2011 03:01:46 +0000 Subject: [PATCH] add locale to customer editable fields, initialize ticket system on startup, customer_info_short, RT#13656 --- FS/FS/ClientAPI/MyAccount.pm | 42 +++++++++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 15 deletions(-) diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm index 30fafea1b..7e131f9d0 100644 --- a/FS/FS/ClientAPI/MyAccount.pm +++ b/FS/FS/ClientAPI/MyAccount.pm @@ -44,13 +44,23 @@ $me = '[FS::ClientAPI::MyAccount]'; use vars qw( @cust_main_editable_fields ); @cust_main_editable_fields = qw( first last company address1 address2 city - county state zip country daytime night fax + county state zip country + daytime night fax mobile ship_first ship_last ship_company ship_address1 ship_address2 ship_city - ship_state ship_zip ship_country ship_daytime ship_night ship_fax + ship_state ship_zip ship_country + ship_daytime ship_night ship_fax ship_mobile + locale payby payinfo payname paystart_month paystart_year payissue payip ss paytype paystate stateid stateid_state ); +BEGIN { #preload to reduce time customer_info takes + if ( $FS::TicketSystem::system ) { + warn "$me: initializing ticket system\n" if $DEBUG; + FS::TicketSystem->init(); + } +} + sub _cache { $cache ||= new FS::ClientAPI_SessionCache( { 'namespace' => 'FS::ClientAPI::MyAccount', @@ -377,7 +387,8 @@ sub customer_info { ( $session->{'pkgnum'} ? 1 : 0 ), #nobalance ); - $return{name} = $cust_main->first. ' '. $cust_main->get('last'); + $return{name} = $cust_main->name; + $return{ship_name} = $cust_main->ship_name; for (@cust_main_editable_fields) { $return{$_} = $cust_main->get($_); @@ -466,22 +477,23 @@ sub customer_info_short { 1, ##nobalance ); - $return{name} = $cust_main->first. ' '. $cust_main->get('last'); + $return{name} = $cust_main->name; + $return{ship_name} = $cust_main->ship_name; $return{payby} = $cust_main->payby; #none of these are terribly expensive if we want 'em... - #for (@cust_main_editable_fields) { - # $return{$_} = $cust_main->get($_); - #} - # - #if ( $cust_main->payby =~ /^(CARD|DCRD)$/ ) { - # $return{payinfo} = $cust_main->paymask; - # @return{'month', 'year'} = $cust_main->paydate_monthyear; - #} - # - #$return{'invoicing_list'} = - # join(', ', grep { $_ !~ /^(POST|FAX)$/ } $cust_main->invoicing_list ); + for (@cust_main_editable_fields) { + $return{$_} = $cust_main->get($_); + } + + if ( $cust_main->payby =~ /^(CARD|DCRD)$/ ) { + $return{payinfo} = $cust_main->paymask; + @return{'month', 'year'} = $cust_main->paydate_monthyear; + } + + $return{'invoicing_list'} = + join(', ', grep { $_ !~ /^(POST|FAX)$/ } $cust_main->invoicing_list ); #$return{'postal_invoicing'} = # 0 < ( grep { $_ eq 'POST' } $cust_main->invoicing_list ); -- 2.11.0