Line # Revision Author
1 8 ahitrov@rambler.ru <%args>
2 $prop => undef
3 $name => undef
4 $check => undef
5 </%args>
6
7 <%init>
8
9 my @localtime = localtime(); $localtime[4]++; $localtime[5] += 1900;
10
11 # Формируем данные для select'а...
12 my @days = map { $_ => $_ } (1 .. 31);
13 my $months = $m->comp('/contenido/components/get_months.msn');
14 my @years = map { $_ => $_ } (1940 .. $localtime[5] + 5);
15
16 if ($prop->{allow_null}) {
17 unshift @days, '', '';
18 unshift @$months, '', '';
19 unshift @years, '', '';
20 }
21
22 # Устанавалием текущие даты...
23 my ($year,$month,$day);
24 if ($check) {
25 $check =~ /(\d{4})-(\d{1,2})-(\d{1,2})/;
26 ($year, $month, $day) = ($1+0, $2+0, $3+0);
27 } elsif(!$prop->{allow_null}) {
28 ($day,$month,$year) = @localtime[3 .. 5];
29 }
30 </%init>
31
32 <& "/contenido/components/select.msn", name => $name.'_day', values => \@days, check => $day &><&
33 '/contenido/components/select.msn', name => $name.'_month', values => $months, check => $month &><&
34 '/contenido/components/select.msn', name => $name.'_year', values => \@years, check => $year &>

Небольшая справка по веткам

cnddist – контейнер, в котором хранятся все дистрибутивы всех библиотек и программных пакетов, которые использовались при построении различных версий Contenido. Если какой-то библиотеки в данном хранилище нет, инсталлятор сделает попытку "подтянуть" ее с веба (например, с CPAN). Если библиотека слишком старая, есть очень большая вероятность, что ее там уже нет. Поэтому мы храним весь хлам от всех сборок. Если какой-то дистрибутив вдруг отсутствует в cnddist - напишите нам, мы положим его туда.

koi8 – отмирающая ветка, чей код, выдача и все внутренние библиотеки заточены на кодировку KOI8-R. Вносятся только те дополнения, которые касаются внешнего вида и функционала админки, баги ядра, обязательные обновления портов и мелочи, которые легко скопипастить. В дальнейшем планируется полная остановка поддержки по данной ветке.

utf8 – актуальная ветка, заточенная под UTF-8.

Внутри каждой ветки: core – исходники ядра; install – скрипт установки инсталляции; plugins – плагины; samples – "готовые к употреблению" проекты, которые можно поставить, запустить и посмотреть, как они работают.