summaryrefslogtreecommitdiff
path: root/httemplate/elements
diff options
context:
space:
mode:
Diffstat (limited to 'httemplate/elements')
-rw-r--r--httemplate/elements/select-sales.html19
-rw-r--r--httemplate/elements/tr-select-sales.html72
2 files changed, 91 insertions, 0 deletions
diff --git a/httemplate/elements/select-sales.html b/httemplate/elements/select-sales.html
new file mode 100644
index 000000000..555799ead
--- /dev/null
+++ b/httemplate/elements/select-sales.html
@@ -0,0 +1,19 @@
+<& /elements/select-table.html,
+ 'table' => 'sales',
+ 'name_col' => 'salesperson',
+ 'value' => $salesnum || '',
+ 'agent_virt' => 1,
+ 'empty_label' => emt('(none)'),
+ 'hashref' => { 'disabled' => '' },
+ 'order_by' => ' ORDER BY salesperson',
+ %opt,
+&>
+<%init>
+
+my %opt = @_;
+my $salesnum = $opt{'curr_value'} || $opt{'value'};
+
+$opt{'records'} = delete $opt{'sales'}
+ if $opt{'sales'};
+
+</%init>
diff --git a/httemplate/elements/tr-select-sales.html b/httemplate/elements/tr-select-sales.html
new file mode 100644
index 000000000..f77ef50b7
--- /dev/null
+++ b/httemplate/elements/tr-select-sales.html
@@ -0,0 +1,72 @@
+<%doc>
+
+Example:
+
+ <& /elements/tr-select-sales.html',
+
+ #recommended to keep things "sticky" on errors
+ 'curr_value' => $curr_value,
+
+ ##
+ # optional
+ ##
+
+ 'label' => 'Sales Person',
+ 'empty_label' => 'Select sales person', #override default
+ #on already# 'disable_empty' => 1,
+
+ &>
+
+</%doc>
+% if ( scalar(@sales) == 0 || $opt{'fixed'} ) {
+
+ <INPUT TYPE = "hidden"
+ NAME = "<% $opt{'field'} || 'salesnum' %>"
+ ID = "<% $opt{'field'} || 'salesnum' %>"
+ VALUE = "<% $salesnum %>"
+ >
+
+% if ( scalar(@sales) > 0 ) {
+ <TR>
+ <TD ALIGN="right"><% $opt{'label'} || emt('Sales Person') %></TD>
+ <TD BGCOLOR="#dddddd" <% $colspan %>>
+% my $sales = qsearchs('sales', { 'salesnum' => $salesnum });
+ <% $sales ? $sales->salesperson : '(none)' |h %>
+ </TD>
+ </TR>
+
+% } else { # YUCK. empty row so we don't throw g_row in edit.html off :/
+ <TR>
+ </TR>
+% }
+%
+% } else {
+
+ <TR>
+ <TD ALIGN="right"><% $opt{'label'} || emt('Sales Person') %></TD>
+ <TD <% $colspan %>>
+ <& /elements/select-sales.html,
+ 'curr_value' => $salesnum,
+ 'sales' => \@sales,
+ %opt,
+ &>
+ </TD>
+ </TR>
+
+% }
+
+<%init>
+
+my $curuser = $FS::CurrentUser::CurrentUser;
+
+my %opt = @_;
+my $salesnum = $opt{'curr_value'} || $opt{'value'};
+
+my @sales = qsearch({ 'table' => 'sales',
+ 'hashref' => { 'disabled' => '' },
+ 'extra_sql' => ' AND '. $curuser->agentnums_sql,
+ });
+warn scalar(@sales);
+my $colspan = $opt{'colspan'} ? 'COLSPAN="'.$opt{'colspan'}.'"' : '';
+
+</%init>