Line # Revision Author
1 3 ahitrov@rambler.ru <%args>
2
3 $name => undef
4 $value => undef
5 $delete => undef
6
7 </%args>
8 <%init>
9 my $cookie_name = 'content_context';
10
11 if ($name) {
12 my $context = exists $request->{context} ? $request->{context} : {};
13 if ($delete) {
14 delete ($context->{$name});
15 $m->comp('/contenido/components/cookies.msn', name => $cookie_name, value => join('/', map { "$_-$context->{$_}" } keys %$context));
16 return undef;
17 }
18 if (! defined $value) {
19 return $context->{$name} if exists $context->{$name};
20 } else {
21 $context->{$name} = $value;
22 $m->comp('/contenido/components/cookies.msn', name => $cookie_name, value => join('/', map { "$_-$context->{$_}" } keys %$context));
23 }
24 } else {
25 return $request->{context} if exists $request->{context};
26 my %context = map { split /-/ } split('/', $m->comp('/contenido/components/cookies.msn', name => $cookie_name));
27 $request->{context} = \%context;
28 return $request->{context};
29 }
30
31 </%init>

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

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

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

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

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