1 |
8 |
ahitrov@rambler.ru |
|
2 |
|
|
<table border="0" width="100%"> |
3 |
|
|
<tr> |
4 |
|
|
<td colspan="3" style="font-family:Tahoma;background-color:#dcdcdc;color:#000000;font-size:95%;padding: 5px;"><center>Настройка селектов</center></td> |
5 |
|
|
</tr> |
6 |
|
|
|
7 |
|
|
<tr> |
8 |
|
|
<th>Идентификатор</th> |
9 |
|
|
<th>Русское название</th> |
10 |
|
|
<th>Варианты выбора</th> |
11 |
|
|
</tr> |
12 |
|
|
|
13 |
|
|
% for my $select (@totals) |
14 |
|
|
% { |
15 |
|
|
|
16 |
|
|
<tr> |
17 |
|
|
|
18 |
|
|
<td width="20%" valign="top" style="font-size:80%; font-family:Tahoma;"> |
19 |
|
|
<% $select->{attr} %> |
20 |
|
|
</td> |
21 |
|
|
|
22 |
|
|
<td width="30%" valign="top" style="font-size:80%; font-family:Tahoma;"> |
23 |
|
|
<% $select->{rusname} %> |
24 |
|
|
</td> |
25 |
|
|
|
26 |
|
|
<td> |
27 |
|
|
<textarea style="font-size:8pt;font-family:Tahoma;" rows=4 cols=30 name="<% $select->{attr} %>.selectdata">\ |
28 |
|
|
% if (exists($options->{ $select->{attr} })) |
29 |
|
|
% { |
30 |
|
|
<% join("\n", @{ $options->{ $select->{attr} } } ) %>\ |
31 |
|
|
% } |
32 |
|
|
</textarea> |
33 |
|
|
</td> |
34 |
|
|
</tr> |
35 |
|
|
|
36 |
|
|
% } |
37 |
|
|
</table> |
38 |
|
|
|
39 |
|
|
<%ARGS> |
40 |
|
|
|
41 |
|
|
$object => undef |
42 |
|
|
$options => undef |
43 |
|
|
|
44 |
|
|
</%ARGS> |
45 |
|
|
<%INIT> |
46 |
|
|
return if (! ref($object)); |
47 |
|
|
|
48 |
|
|
my @totals = (); |
49 |
|
|
my @properties = $object->structure(); |
50 |
|
|
for (0..$#properties) |
51 |
|
|
{ |
52 |
|
|
my $prop = $properties[$_]; |
53 |
|
|
if ($prop->{type} eq 'select' or $prop->{type} eq 'color' or $prop->{type} eq 'colorset') |
54 |
|
|
{ |
55 |
|
|
push (@totals, $prop ); |
56 |
|
|
} |
57 |
|
|
} |
58 |
|
|
|
59 |
|
|
return if (scalar(@totals) == 0); |
60 |
|
|
|
61 |
|
|
</%INIT> |