Revision 3 (by ahitrov@rambler.ru, 2010/03/24 15:19:32) |
The CORE
|
<select <% $multiple %> <% $size %> <% $onChange %> name="<% $name %>" class="selects" style="<% $width %><% $height %><% $style %>">
% while (my ($key, $value) = splice(@local_values, 0, 2))
% {
% my $selected = (scalar grep { $_ eq $key } @local_checks ) ? ' selected' : '';
% next unless defined $key;
<option value="<% $key %>"<% $selected %>><% $value %></option>
% }
</select>
<%args>
$name => undef
$values => []
$check => undef
$multiple => undef
$size => undef
$onChange => undef
$width => undef
$height => undef
$style => undef
</%args>
<%init>
my @local_values = @{ $values }; # ��������, ����� �� ����������...
my @local_checks = ();
if (ref($check) eq 'ARRAY')
{
@local_checks = @{ $check };
} elsif (defined($check)) {
@local_checks = ($check);
}
$size = ($size) ? " size=\"$size\"" : '';
$width = ($width) ? "width:$width;" : '';
$height = ($height) ? "height:$height;" : '';
$multiple = ($multiple) ? ' multiple' : '';
$onChange = ($onChange) ? " onChange=\"$onChange\"" : '';
</%init>
Небольшая справка по веткам
cnddist – контейнер, в котором хранятся все дистрибутивы всех библиотек и программных пакетов, которые использовались при построении различных версий Contenido. Если какой-то библиотеки в данном хранилище нет, инсталлятор сделает попытку "подтянуть" ее с веба (например, с CPAN). Если библиотека слишком старая, есть очень большая вероятность, что ее там уже нет. Поэтому мы храним весь хлам от всех сборок. Если какой-то дистрибутив вдруг отсутствует в cnddist - напишите нам, мы положим его туда.
koi8 – отмирающая ветка, чей код, выдача и все внутренние библиотеки заточены на кодировку KOI8-R. Вносятся только те дополнения, которые касаются внешнего вида и функционала админки, баги ядра, обязательные обновления портов и мелочи, которые легко скопипастить. В дальнейшем планируется полная остановка поддержки по данной ветке.
utf8 – актуальная ветка, заточенная под UTF-8.
Внутри каждой ветки: core – исходники ядра; install – скрипт установки инсталляции; plugins – плагины; samples – "готовые к употреблению" проекты, которые можно поставить, запустить и посмотреть, как они работают.