Merge branch 'html_menu'
[kivitendo-erp.git] / templates / webpages / generic / multibox.html
index b1c615e..b26f86f 100644 (file)
     select        : java function call for a selection popup or other magic
     allow_textbox : allow to display a textbox instead of a drop down box if there are more entries than 'limit' entries.
     limit         : defines the limit of entries, after which a textbox is generated. defaults to vclimit, or, failing to find that, 200.
+    select_name   : if a select is displayed, use a different name. ex.: department for textinput, but department_id for selects
+    readonly      : softly prevents modification
 -%]
 [%- DEFAULT
   limit      = limit   != '' ? limit   : vclimit != '' ? vclimit : 200
+  show_text  = allow_textbox and DATA.size and limit < DATA.size ? 1 : 0
   id         = id      != '' ? id      : name
   default    = default != '' ? default : $name
 -%]
+[%-
+  name       = (select_name != '' and ! show_text) ? select_name : name
+-%]
 [%- FOREACH row = DATA %]
   [%-
        row.id       = row.$id_key     != ''  ? row.$id_key    : $id_sub(row)
        row.selected = default == row.id
   -%]
 [%- END -%]
-[%- IF allow_textbox and DATA.size and limit < DATA.size %]
+[%- IF show_text %]
 <input type="text"
- [%- IF name     %] name="[%     HTML.escape(name)     %]"[% END %]
- [%- IF id       %] id="[%       HTML.escape(id)       %]"[% END %]
- [%- IF default  %] value="[%    HTML.escape(default)  %]"[% END %]
- [%- IF style    %] style="[%    HTML.escape(style)    %]"[% END %]
->
-[%- IF select %]
+ [%- IF name     %] name="[%     HTML.escape(name)     %]"[% END -%]
+ [%- IF id       %] id="[%       HTML.escape(id)       %]"[% END -%]
+ [%- IF default  %] value="[%    HTML.escape(default)  %]"[% END -%]
+ [%- IF style    %] style="[%    HTML.escape(style)    %]"[% END -%]
+ [%- IF readonly %] readonly[% END -%]
+[%- -%]>
+[%- IF select -%]
   <input type="button" onclick="[% select %]" value="?">
-[% END %]
+[%- END -%]
 [%- ELSE %]
 <select
- [%- IF name     %] name="[%     HTML.escape(name)     %]"[% END %]
- [%- IF id       %] id="[%       HTML.escape(id)       %]"[% END %]
- [%- IF style    %] style="[%    HTML.escape(style)    %]"[% END %]
- [%- IF onChange %] onChange="[% HTML.escape(onChange) %]"[% END %]
->
+ [%- IF name     %] name="[%     HTML.escape(name)     %]"[% END -%]
+ [%- IF id       %] id="[%       HTML.escape(id)       %]"[% END -%]
+ [%- IF style    %] style="[%    HTML.escape(style)    %]"[% END -%]
+ [%- IF onChange %] onChange="[% HTML.escape(onChange) %]"[% END -%]
+ [%- IF readonly %] disabled[% END -%]
+[%- -%]>
   [%- IF show_empty %]
   <option value=""></option>
   [%- END %]
   [%- FOREACH row = DATA %]
-  <option value="[% row.id %]"[% IF row.selected %] selected[% END %]>[% HTML.escape(row.label) %]</option>
+  <option value="[% row.id | html %]"[% IF row.selected %] selected[% END %]>[% HTML.escape(row.label) %]</option>
   [%- END %]
 </select>
 [%- END %]