Revision 4dbd40c0
Von Sven Schöling vor etwa 14 Jahren hinzugefügt
templates/webpages/generic/multibox.html | ||
---|---|---|
35 | 35 |
[%- |
36 | 36 |
name = (select_name != '' and ! show_text) ? select_name : name |
37 | 37 |
-%] |
38 |
[%- FOREACH row = DATA %] |
|
39 |
[%- |
|
40 |
row.id = row.$id_key != '' ? row.$id_key : $id_sub(row) |
|
41 |
row.label = row.$label_key != '' ? row.$label_key |
|
42 |
: $label_sub(row) != '' ? $label_sub(row) |
|
43 |
: row.id |
|
44 |
row.selected = default == row.id |
|
45 |
-%] |
|
46 |
[%- END -%] |
|
47 | 38 |
[%- IF show_text %] |
48 | 39 |
<input type="text" |
49 | 40 |
[%- IF name %] name="[% HTML.escape(name) %]"[% END -%] |
... | ... | |
67 | 58 |
<option value=""></option> |
68 | 59 |
[%- END %] |
69 | 60 |
[%- FOREACH row = DATA %] |
70 |
<option value="[% row.id | html %]"[% IF row.selected %] selected[% END %]>[% HTML.escape(row.label) %]</option> |
|
61 |
<option value="[% row.$id_key != '' ? row.$id_key : $id_sub(row) | html %]"[% IF default == (row.$id_key != '' ? row.$id_key : $id_sub(row)) %] selected[% END %]>[% |
|
62 |
row.$label_key != '' ? row.$label_key |
|
63 |
: $label_sub(row) != '' ? $label_sub(row) |
|
64 |
: row.$id_key != '' ? row.$id_key |
|
65 |
: $id_sub(row) | html %]</option> |
|
71 | 66 |
[%- END %] |
72 | 67 |
</select> |
73 | 68 |
[%- END %] |
Auch abrufbar als: Unified diff
Multibox: Keine Variablen in den rows speichern
2 Gründe:
1. Die rows können Objekte sein, und sobald die entweder nicht auf Hashref
basieren, oder per AUTOLOAD ihre methoden sauber prüfen gibt das Chaos.
2. Wenn keine Daten da reingespeichert werden, bruachen die multiboxes nicht
mit INCLUDE aufgerufen werden, sondern können mit PROCESS den stack clone
umgehen.