rt 4.2.14 (#13852)
[freeside.git] / rt / share / html / Widgets / Form / Select
index 626ee2b..e3be527 100644 (file)
@@ -2,7 +2,7 @@
 %#
 %# COPYRIGHT:
 %#
-%# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC
+%# This software is Copyright (c) 1996-2017 Best Practical Solutions, LLC
 %#                                          <sales@bestpractical.com>
 %#
 %# (Except where explicitly superseded by other copyright notices)
 %#
 %# END BPS TAGGED BLOCK }}}
 <%DOC>
-see docs/using_forms_widgets.pod
+see docs/extending/using_forms_widgets.pod
 </%DOC>
 <div id="form-box-<% lc $Name %>" class="widget">
 % if ( $Description ) {
 <span class="label"><% $Description %></span>
 % }
 <span class="value"><& SELF:InputOnly, %ARGS &></span>
+<span class="hints"><% $Hints %></span>
 </div>
 <%ARGS>
 $Name
 $Description      => undef,
+$Hints            => ''
 </%ARGS>
 
 <%METHOD InputOnly>
@@ -78,18 +80,18 @@ $AlternativeLabel => loc('other...'),
 
 $Multiple         => 0,
 </%ARGS>
-<select name="<% $Name %>">
+<select name="<% $Name %>" <% $Multiple ? 'multiple="multiple"' : '' |n%>>
 
 % if ( $Default ) {
 % my $selected = '';
-% $selected = 'selected="selected"' unless @CurrentValue;
+% $selected = 'selected="selected"' unless $CurrentValue[0];
 <option value="__empty_value__" <% $selected |n %>><% $DefaultLabel %></option>
 % }
 
 % foreach my $v( @Values ) {
 % my $selected = '';
 % $selected = 'selected="selected"' if delete $CurrentValue{ $v };
-<option value="<% $v %>" <% $selected |n %>><% loc($ValuesLabel{ $v } || $v) %></option>
+<option value="<% $v %>" <% $selected |n %>><% loc(ref($ValuesLabel{ $v }) ? @{ $ValuesLabel{ $v } } : $ValuesLabel{ $v } || $v) %></option>
 % }
 
 % if ( $Alternative ) {
@@ -118,7 +120,7 @@ if ( $ValuesCallback ) {
 }
 unless (defined $DefaultLabel ) {
     $DefaultLabel = loc('Use system default ([_1])',
-        join ', ', map loc($ValuesLabel{$_} || $_), grep defined,
+        join ', ', map loc(ref($ValuesLabel{$_}) ? @{ $ValuesLabel{$_ }} : $ValuesLabel{$_} || $_), grep defined,
             @DefaultValue
     );
 }