Line # Revision Author
1 8 ahitrov@rambler.ru <%args>
2
3 $root => undef,
4 $offset => undef,
5 $count_offset => undef,
6 $selected => undef,
7 $section_tree => undef
8
9 </%args>
10 <%INIT>
11
12 my $spacer = '';
13 for(my $c=1; $c<$offset; $c++) {
14 $spacer = $spacer.(($c == $offset-1) ? '&nbsp;&nbsp;&nbsp;>>&nbsp;&nbsp;&nbsp;' : '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;');
15 }
16 if( ref $root && $root->id != $Contenido::Section::ROOT ) {
17 $m->out('<option value="'.$root->id.'" '.(($selected == $root->id) ? ' selected' : '').'>'.$spacer.$root->name.'</option>');
18 }
19
20 my $childs = exists $section_tree->{$root->id} ? $section_tree->{$root->id}{children} : undef;
21 if((ref($childs) eq 'ARRAY') and (@$childs) && ($offset < $count_offset)) {
22 $offset++;
23 foreach my $child (@$childs) {
24 $m->comp('/contenido/components/select_index_tree_elem.msn',
25 section_tree => $section_tree, root => $child,
26 offset => $offset, count_offset => $count_offset, selected => $selected);
27 }
28 $offset--;
29 }
30
31 </%init>

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

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

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

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

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