Line # Revision Author
1 296 ahitrov % if ( $m->comp_exists ("/comps/$prj/header.msn") ) {
2 <& "/comps/$prj/header.msn" &>
3 % } else {
4 <& "/comps/header.msn" &>
5 % }
6
7 <table border="0" cellspacing="0" cellpadding="10" width="100%">
8 <tr valign="top">
9 <td width="80%">
10
11 %
12 % ### Аннотация проекта
13 % ############################################################
14 % if ( $p == 1 && !ref $document ) {
15 <table border="0" cellspacing="0" cellpadding="0" width="100%">
16 <tr valign="top">
17 <td class="cc infoblock" width="100%">
18 <div class="text">
19
20 % if ( $m->comp_exists ("/comps/$prj/block_project_anno.msn") ) {
21 <& "/comps/$prj/block_project_anno.msn" &>
22 % } else {
23 <& "/comps/block_project_anno.msn" &>
24 % }
25
26 </div>
27 </td>
28 <td width="20px;"><div style="width:10px;"><spacer type="block" width="10" height="0"></spacer></div></td>
29
30 <td class="infoblock">
31
32 % ### Блок новостей
33 % ################################
34 % if ( $profile->news ) {
35 % if ( $m->comp_exists ("/comps/$prj/block_news.msn") ) {
36 <& "/comps/$prj/block_news.msn" &>
37 % } else {
38 <& /comps/block_news.msn &>
39 % }
40 % }
41 % ### /Блок новостей
42
43 </td>
44 </tr>
45 </table>
46
47 % }
48 % ### /Аннотация проекта
49 %
50
51
52 <div class="mt10"></div>
53 <a name="members"></a>
54 <table border="0" cellspacing="0" cellpadding="0" width="100%" class="infoblock">
55 <tr>
56 <td class="cc" width="100%">
57
58 % if ( $id && ref $document ) {
59 % ### Один участник
60 % #######################################################
61 % if ( $m->comp_exists ("/comps/$prj/announce.msn") ) {
62 <& "/comps/$prj/announce.msn", document => $document &>
63 % } else {
64 <& "/comps/announce.msn", document => $document &>
65 % }
66 %
67 % }else{
68 % ### Список участников
69 % #######################################################
70 % if ( ref $section ) {
71 <div class="text">
72 <h2><% $section->name %></h2>
73 % if ( $m->comp_exists ("/comps/$prj/announce_list.msn") ) {
74 <& "/comps/$prj/announce_list.msn", section => $section, p => $p, size => $profile->anno_count &>
75 % } else {
76 <& "/comps/announce_list.msn", p => $p, size => $profile->anno_count &>
77 % }
78 </div>
79 % }
80 % } ### /Область участников
81
82 </td></tr>
83 </table>
84 </td>
85
86 % ### Правая колонка
87 % ###############################################
88 <td width="20%">
89 % if ( $m->comp_exists ("/comps/$prj/right.msn") ) {
90 <& "/comps/$prj/right.msn", nonews => 1 &>
91 % }else{
92 <& /comps/right.msn, nonews => 1 &>
93 % }
94 </td>
95 % ### /Правая колонка
96
97 </tr>
98 </table>
99
100 % ### Футер
101 % ##############################################
102 % if ( $m->comp_exists ("/comps/$prj/footer.msn") ) {
103 <& "/comps/$prj/footer.msn" &>
104 % } else {
105 <& "/comps/footer.msn" &>
106 % }
107 % ### /Футер
108 <%args>
109
110 $p => 1
111 $id => undef
112
113 </%args>
114 <%init>
115
116 my $prj = $request->{project};
117 my $profile = $request->{project_profile};
118 my $root = $request->{project_section};
119 &abort404 if $id && $id !~ /^\d+$/;
120
121 my $document;
122 my ($section) = $keeper->get_sections (
123 s => $root->id,
124 class => 'promosuite::AnnoSection',
125 limit => 1,
126 status => 1,
127 );
128 if ( $id && ref $section ) {
129 $document = $keeper->get_document_by_id ($id,
130 s => $section->id,
131 class => 'promosuite::Anons',
132 status => 1,
133 );
134 }
135 </%init>

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

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

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

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

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