v4 style
[freeside.git] / httemplate / elements / tr-select-agent.html
1 <%doc>
2
3 Example:
4
5   include( '/elements/tr-select-agent.html',
6
7     #recommended to keep things "sticky" on errors
8     'curr_value'    => $curr_value,
9
10     ##
11     # optional
12     ##
13
14     'label'         => 'Agent for this thing',
15     'empty_label'   => 'Select agent', #override default 
16     'disable_empty' => 1,
17
18     #set to 'None' or something to override default of showing all agents
19     #for employees w/ 'View customers of all agents' right
20     viewall_right   => 'None',
21
22   );
23
24 </%doc>
25
26 % $required = '<FONT COLOR="red">*</FONT>' if $opt{'required'};
27
28 % if ( scalar(@agents) == 1 || $opt{'fixed'} ) { 
29
30   <INPUT TYPE  = "hidden"
31          NAME  = "<% $opt{'field'} || 'agentnum' %>"
32          ID    = "<% $opt{'field'} || 'agentnum' %>"
33          VALUE = "<% $agents[0]->agentnum %>"
34   >
35
36 %   if ( scalar(@agents) != 1 ) {
37       <TR>
38         <TH ALIGN="right"><% $required %> <% $opt{'label'} || emt('Agent') %></TD>
39         <TD BGCOLOR="#dddddd" <% $colspan %>>
40 %         my $agent = qsearchs('agent', { 'agentnum' => $agentnum });
41           <% $agent ? $agent->agent : '(all)' |h %>
42         </TD>
43       </TR>
44
45 %   } else { # YUCK.  empty row so we don't throw g_row in edit.html off :/
46       <TR>
47       </TR>
48 %   }
49 %
50 % } else { 
51
52   <TR>
53     <TH ALIGN="right"><% $required %> <% $opt{'label'} || emt('Agent') %></TD>
54     <TD <% $colspan %>>
55       <& /elements/select-agent.html,
56                      'curr_value' => $agentnum,
57                      'agents'     => \@agents,
58                      %opt,
59       &>
60     </TD>
61   </TR>
62
63 % } 
64
65 <%init>
66
67 my %opt = @_;
68 my $agentnum = $opt{'curr_value'} || $opt{'value'};
69 my $required;
70
71 my @agents =
72   $opt{'agents'}
73     ? @{ $opt{'agents'} }
74     : $FS::CurrentUser::CurrentUser->agents(
75         'viewall_right' => $opt{'viewall_right'},
76       );
77
78 my $colspan = $opt{'colspan'} ? 'COLSPAN="'.$opt{'colspan'}.'"' : '';
79
80 </%init>