X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fedit%2Fcust_main%2Ftop_misc.html;h=3a794444f0408f1349632c8cd1ee0d71c4c44fa3;hb=798ba64e8c02a2288b2162ee7d5fdb6f476c41eb;hp=bceb5e15faa950e767edc85a2e30c4df7bd3a33e;hpb=ca87449136cd950891603a71e83ba31b55c76938;p=freeside.git diff --git a/httemplate/edit/cust_main/top_misc.html b/httemplate/edit/cust_main/top_misc.html index bceb5e15f..3a794444f 100644 --- a/httemplate/edit/cust_main/top_misc.html +++ b/httemplate/edit/cust_main/top_misc.html @@ -20,24 +20,35 @@ <% $cust_main->residential_commercial eq 'Commercial' ? 'CHECKED' : '' %> ></TD> </TR> + <SCRIPT TYPE="text/javascript"> + function rescom_changed(what) { if ( what.checked == (what.value == 'Commercial' ) ) { document.getElementById('company_row').style.display = ''; document.getElementById('contacts_div').style.display = ''; + document.getElementById('spouse_row').style.display = 'none'; } else { if ( document.getElementById('company').value.length == 0 ) { document.getElementById('company_row').style.display = 'none'; } document.getElementById('contacts_div').style.display = 'none'; + document.getElementById('spouse_row').style.display = ''; } } + var ship_locked_agents = <% encode_json(\%ship_locked_agents) %>; - var ship_fields = ['address1', 'city', 'state', 'zip', 'country', - 'latitude', 'longitude', 'district']; + var ship_fields = [ + 'locationname', 'address1',<% $conf->exists('cust_main-no_city_in_address') ? '' : q( 'city',) %> 'state', 'zip', 'country', + 'latitude', 'longitude', 'district' + ]; + function agent_changed(what) { var agentnum = what.value; + +% # unlock/lock service location + var f = what.form; if ( ship_locked_agents[agentnum] ) { % # For this agent, the service location (except address2) @@ -65,10 +76,16 @@ f['same'].disabled = false; } samechanged(f['same']); + +% # update sales dropdown + salesnum_agentnum_changed(what); + } - window.onload = function() { - agent_changed(document.getElementById('agentnum')); - } + + <&| /elements/onload.js &> + rescom_changed(document.getElementById('residential_commercial_Residential')); + agent_changed(document.getElementById('agentnum')) + </&> </SCRIPT> @@ -124,9 +141,12 @@ % } %# class +% my $rclass = $conf->exists('cust_main-require_classnum') ? $r : ''; <& /elements/tr-select-cust_class.html, - 'curr_value' => $cust_main->classnum, - 'label' => emt("Class"), + 'curr_value' => $cust_main->classnum, + 'label' => $rclass . emt("Class"), + 'empty_label' => $rclass ? 'Select class' : '(none)', + 'disable_empty' => ($rclass && $cust_main->classnum) ? 1 : 0, &> %#sales person @@ -142,9 +162,10 @@ % } else { - <& /elements/tr-select-part_referral.html, - 'curr_value' => $refnum - &> + <& /elements/tr-select-part_referral.html, + 'curr_value' => $refnum, + 'label' => "<B>${r}".emt('Advertising source')."</B>" + &> % } @@ -223,6 +244,8 @@ my( $cust_main, %opt ) = @_; my $custnum = $opt{'custnum'}; +my $conf = new FS::Conf; + if ( $cgi->param('error') ) { $cust_main->set('residential_commercial', ($cgi->param('residential_commercial') eq 'Commercial') @@ -236,12 +259,13 @@ if ( $cgi->param('error') ) { : 'Residential' ); } else { #new customer - #config to default to commercial and/or disable residential when someone needs - $cust_main->set('residential_commercial', 'Residential'); + $cust_main->set('residential_commercial', + $conf->exists('cust_main-default_commercial') + ? 'Commercial' + : 'Residential' + ); } -my $conf = new FS::Conf; - my $curuser = $FS::CurrentUser::CurrentUser; my $r = qq!<font color="#ff0000">*</font> !; @@ -255,7 +279,10 @@ foreach (qsearch('agent',{})) { my $agent_ship_location = $cust_main->ship_location; $ship_locked_agents{$agentnum} = +{ map { $_ => $agent_ship_location->$_ } - qw(address1 city state zip country latitude longitude district) + ( + qw(locationname address1 state zip country latitude longitude district), + ($conf->exists('cust_main-no_city_in_address') ? () : 'city') + ) }; }