summaryrefslogtreecommitdiff
path: root/httemplate/elements
diff options
context:
space:
mode:
Diffstat (limited to 'httemplate/elements')
-rw-r--r--httemplate/elements/select-agent.html8
-rw-r--r--httemplate/elements/select-part_referral.html17
-rw-r--r--httemplate/elements/tr-select-agent.html10
-rw-r--r--httemplate/elements/tr-select-part_referral.html30
4 files changed, 55 insertions, 10 deletions
diff --git a/httemplate/elements/select-agent.html b/httemplate/elements/select-agent.html
index 78ec25f82..009cc6e06 100644
--- a/httemplate/elements/select-agent.html
+++ b/httemplate/elements/select-agent.html
@@ -1,8 +1,7 @@
<%
my( $agentnum, %opt ) = @_;
- my %select_opt = ();
- $select_opt{'records'} = $opt{'agents'}
+ $opt{'records'} = delete $opt{'agents'}
if $opt{'agents'};
%><%= include( '/elements/select-table.html',
@@ -12,7 +11,8 @@
'empty_label' => 'all',
'hashref' => { 'disabled' => '' },
'extra_sql' => ' AND '.
- $FS::CurrentUser::CurrentUser->agentnums_sql,
- %select_opt,
+ $FS::CurrentUser::CurrentUser->agentnums_sql.
+ ' ORDER BY agent',
+ %opt,
)
%>
diff --git a/httemplate/elements/select-part_referral.html b/httemplate/elements/select-part_referral.html
new file mode 100644
index 000000000..deb87bd3b
--- /dev/null
+++ b/httemplate/elements/select-part_referral.html
@@ -0,0 +1,17 @@
+<%
+ my( $refnum, %opt ) = @_;
+
+ $opt{'records'} = delete $opt{'part_referrals'}
+ if $opt{'part_referrals'};
+
+%><%= include( '/elements/select-table.html',
+ 'table' => 'part_referral',
+ 'name_col' => 'referral',
+ 'value' => $refnum,
+ 'empty_label' => 'Select advertising source',
+ 'hashref' => { 'disabled' => '' },
+ 'extra_sql' => ' AND '.
+ FS::part_referral->all_part_referral(1),
+ %opt,
+ )
+%>
diff --git a/httemplate/elements/tr-select-agent.html b/httemplate/elements/tr-select-agent.html
index 83c8d1758..6158f6f47 100644
--- a/httemplate/elements/tr-select-agent.html
+++ b/httemplate/elements/tr-select-agent.html
@@ -7,12 +7,9 @@
#here is the agent virtualization
my $agentnums_href = $FS::CurrentUser::CurrentUser->agentnums_href;
@agents = grep $agentnums_href->{$_->agentnum}, @{ $opt{'agents'} };
+ delete $opt{'agents'};
} else {
- @agents = qsearch( {
- 'table' => 'agent',
- 'hashref' => { disabled=>'' },
- 'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql,
- });
+ @agents = $FS::CurrentUser::CurrentUser->agents;
}
%>
@@ -24,10 +21,11 @@
<% } else { %>
<TR>
- <TD ALIGN="right"><%= $opt{'label'} || 'Agent: ' %></TD>
+ <TD ALIGN="right"><%= $opt{'label'} || 'Agent' %></TD>
<TD>
<%= include( '/elements/select-agent.html', $agentnum,
'agents' => \@agents,
+ %opt,
)
%>
</TD>
diff --git a/httemplate/elements/tr-select-part_referral.html b/httemplate/elements/tr-select-part_referral.html
new file mode 100644
index 000000000..0108388bc
--- /dev/null
+++ b/httemplate/elements/tr-select-part_referral.html
@@ -0,0 +1,30 @@
+<%
+ my( $refnum, %opt ) = @_;
+
+ $opt{'part_referrals'} ||=
+ [ FS::part_referral->all_part_referral( 1 ) ]; #1: include global
+
+ my $r = qq!<font color="#ff0000">*</font>&nbsp;!;
+
+%>
+
+<% if ( scalar( @{$opt{'part_referrals'}} ) == 0 ) {
+ eidiot "You have not created any advertising sources. You must create at least one advertising source before adding a customer. Go to ". popurl(2). "browse/part_referral.html and create one or more advertising sources.";
+ } elsif ( scalar( @{$opt{'part_referrals'}} ) == 1 ) {
+%>
+
+ <INPUT TYPE="hidden" NAME="refnum" VALUE="<%= $opt{'part_referrals'}->[0]->refnum %>">
+
+<% } else { %>
+
+ <TR>
+ <TH ALIGN="right"><%=$r%>Advertising source</TH>
+ <TD>
+ <%= include( '/elements/select-part_referral.html', $refnum,
+ 'part_referrals' => $opt{'part_referrals'},
+ )
+ %>
+ </TD>
+ </TR>
+
+<% } %>