diff options
author | Christopher Burger <burgerc@freeside.biz> | 2019-05-16 09:16:09 -0400 |
---|---|---|
committer | Christopher Burger <burgerc@freeside.biz> | 2019-05-16 09:16:09 -0400 |
commit | dac9051f94d03903c00a46117f6edf8315ec57dc (patch) | |
tree | ca3ab99193d33c06349edbb64b0876916c6f1028 | |
parent | aa6da3f37ddddf21ea5935f4e8f5fe531d18cc89 (diff) |
RT# 83179 - set agent num to use default agentnum if configured, and fixed adding contact rows
-rw-r--r-- | httemplate/edit/elements/edit.html | 2 | ||||
-rw-r--r-- | httemplate/edit/prospect_main.html | 20 | ||||
-rw-r--r-- | httemplate/elements/tr-select-agent.html | 8 |
3 files changed, 20 insertions, 10 deletions
diff --git a/httemplate/edit/elements/edit.html b/httemplate/edit/elements/edit.html index 0f5f7bd..a32e99c 100644 --- a/httemplate/edit/elements/edit.html +++ b/httemplate/edit/elements/edit.html @@ -640,7 +640,7 @@ Example: // only spawn if we're the last element... return if not - var field_regex = /(\d+)(_[a-z_]+)?$/; + var field_regex = /(\d+)(_[a-z_0-9]+)?$/; var match = field_regex.exec(what.name); if ( !match ) { alert(what.name + " didn't match for " + what); diff --git a/httemplate/edit/prospect_main.html b/httemplate/edit/prospect_main.html index b812dc3..f0a232b 100644 --- a/httemplate/edit/prospect_main.html +++ b/httemplate/edit/prospect_main.html @@ -25,17 +25,13 @@ 'type' => 'select-agent', 'empty_label' => 'Select agent', 'colspan' => 7, + 'required' => 1, }, { 'field' => 'refnum', 'type' => 'select-part_referral', 'empty_label' => 'Select advertising source', 'colspan' => 7, }, - { 'field' => 'company', - 'type' => 'text', - 'size' => 50, - 'colspan' => 7, - }, { 'field' => 'contactnum', 'type' => 'contact', 'colspan' => 7, @@ -47,6 +43,11 @@ 'include_opt_callback' => sub { 'for_prospect' => 1 }, 'js_spawn_test' => 'document.edit_topform.residential_commercial_Commercial.checked', }, + { 'field' => 'company', + 'type' => 'text', + 'size' => 50, + 'colspan' => 7, + }, { 'field' => 'locationnum', 'type' => 'select-cust_location', 'empty_label' => 'No address', @@ -74,6 +75,7 @@ my $curuser = $FS::CurrentUser::CurrentUser; my $conf = new FS::Conf; +my @agentnums = $curuser->agentnums; my $prospectnum; if ( $cgi->param('error') ) { @@ -144,6 +146,12 @@ my $new_callback = sub { #config to default to commercial and/or disable residential when someone needs $prospect_main->set('residential_commercial', 'Residential'); + # config to set default agent + $prospect_main->agentnum( $agentnums[0] ) + if scalar(@agentnums) == 1; + $prospect_main->agentnum( $conf->config('default_agentnum') ) + if $conf->exists('default_agentnum'); + }; my $edit_callback = sub { @@ -206,8 +214,6 @@ my $m2_error_callback = sub { $cgi->param; }; -#my @agentnums = $FS::CurrentUser::CurrentUser->agentnums; - my $javascript = q| <SCRIPT TYPE="text/javascript"> function rescom_changed() { diff --git a/httemplate/elements/tr-select-agent.html b/httemplate/elements/tr-select-agent.html index 04600fa..986bbc0 100644 --- a/httemplate/elements/tr-select-agent.html +++ b/httemplate/elements/tr-select-agent.html @@ -22,6 +22,9 @@ Example: ); </%doc> + +% $required = '<FONT COLOR="red">*</FONT>' if $opt{'required'}; + % if ( scalar(@agents) == 1 || $opt{'fixed'} ) { <INPUT TYPE = "hidden" @@ -32,7 +35,7 @@ Example: % if ( scalar(@agents) != 1 ) { <TR> - <TH ALIGN="right"><% $opt{'label'} || emt('Agent') %></TD> + <TH ALIGN="right"><% $required %> <% $opt{'label'} || emt('Agent') %></TD> <TD BGCOLOR="#dddddd" <% $colspan %>> % my $agent = qsearchs('agent', { 'agentnum' => $agentnum }); <% $agent ? $agent->agent : '(all)' |h %> @@ -47,7 +50,7 @@ Example: % } else { <TR> - <TH ALIGN="right"><% $opt{'label'} || emt('Agent') %></TD> + <TH ALIGN="right"><% $required %> <% $opt{'label'} || emt('Agent') %></TD> <TD <% $colspan %>> <& /elements/select-agent.html, 'curr_value' => $agentnum, @@ -63,6 +66,7 @@ Example: my %opt = @_; my $agentnum = $opt{'curr_value'} || $opt{'value'}; +my $required; my @agents = $opt{'agents'} |