summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Burger <burgerc@freeside.biz>2019-05-16 09:16:09 -0400
committerChristopher Burger <burgerc@freeside.biz>2019-05-16 09:16:09 -0400
commitdac9051f94d03903c00a46117f6edf8315ec57dc (patch)
treeca3ab99193d33c06349edbb64b0876916c6f1028
parentaa6da3f37ddddf21ea5935f4e8f5fe531d18cc89 (diff)
RT# 83179 - set agent num to use default agentnum if configured, and fixed adding contact rows
-rw-r--r--httemplate/edit/elements/edit.html2
-rw-r--r--httemplate/edit/prospect_main.html20
-rw-r--r--httemplate/elements/tr-select-agent.html8
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'}