Line # Revision Author
1 8 ahitrov@rambler.ru <html>
2 <head>
3 <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
4 <style>
5 body {
6 background-color: #FFFFFF;
7 margin: 0px;
8 }
9 form {
10 margin: 0px;
11 padding: 0px;
12 }
13 input, select, textarea {
14 font-family: Tahoma, Arial, sans-serif;
15 font-size:9pt;
16 }
17 a {
18 color:#0000ee;
19 }
20 a:visited.v {
21 color:#0000ee;
22 }
23
24 fieldset {padding:6px;margin-bottom:10px;border:2px solid #8093B0;}
25 fieldset legend {font-size:8pt;font-weight:bold;font-family:Tahoma;padding:3px 6px 3px 6px;margin-bottom:6px;color:#ffffff;background-color:#8093B0;}
26
27 .tatop {font-size:70%;font-family:Tahoma;color:#ffffff;}
28 .tatop a {color:#ffffff;}
29 .npath {font-size:70%;font-family:Tahoma;padding:8px;}
30
31 .textnorm { font-size:70%; font-family:Tahoma; }
32 .input_btn {background-color:#930300;color:#FFFFFF;height:2.4em;}
33
34 table.tlistdocs { margin-top:10px; margin-bottom:10px; border-right:1px solid #d9d9d9;border-bottom:1px solid #d9d9d9; }
35 table.tlistdocs td, table.tlistdocs th { border:1px solid #d9d9d9; border-right:0px; border-bottom:0px; }
36 table.tlistdocs td {font-size:70%;font-family:Tahoma;}
37 table.tlistdocs table td {border:0px;}
38
39 table.tform th, table.tform td {
40 font-size: 70%;
41 font-family: Tahoma;
42 text-align: left;
43 }
44
45 th {font-size:70%;font-family:Tahoma;text-align:left;}
46
47 h5, .hdr5 {font-size:70%;font-family:Tahoma;font-weight:bold;padding-top:10px;padding-bottom:5px;}
48
49
50 .hiddensect { color:#909090; }
51 .hiddensect a { color:#909090; }
52
53 .btn {font-size:9pt;}
54
55 .bb {
56 border: solid 1px #000000;
57 }
58 .gb {
59 background-color: #D8D8D8;
60 }
61 .undo {
62 font-family: Tahoma;
63 font-size: 9pt;
64 background-color: #FFD8D8;
65 }
66 .link_string { font: 12px Tahoma; padding:5px 10px; border-bottom:1px solid gray; }
67 .link_string p { margin:0; padding:0; }
68
69 </style>
70 <title>Редакторский интерфейс<% (length($title) > 0) ? " | $title" : "" %></title>
71 <% $m->comp_exists('/contenido/components/custom_head.msn') ? $m->comp('/contenido/components/custom_head.msn') : '' %>
72 <script language="javascript" type="text/javascript" src="/contenido/i/js/links.js"></script>
73 <script language="javascript" type="text/javascript" src="/contenido/i/js/tiny_mce/tiny_mce.js"></script>
74 <script language="javascript" type="text/javascript">
75 var WYSIWYGControls = new Array();
76 var sDocumentClass;
77 var nDocumentID;
78 window.onload = function()
79 {
80 var sControls;
81 if ( WYSIWYGControls.length ) {
82 sControls = WYSIWYGControls.join(',');
83 tinyMCE.init({
84 theme : "advanced",
85 plugins : "safari,paste,advimage,table",
86 paste_create_paragraphs : false,
87 paste_create_linebreaks : false,
88 paste_use_dialog : true,
89 paste_auto_cleanup_on_paste : true,
90 paste_convert_middot_lists : false,
91 paste_unindented_list_class : "unindentedList",
92 paste_convert_headers_to_strong : true,
93 paste_insert_word_content_callback : "convertWord",
94 theme_advanced_buttons3_add : "pastetext,pasteword,selectall,|,forecolor,backcolor,|,tablecontrols",
95 mode : "exact",
96 elements : sControls,
97 convert_urls : false,
98
99 external_image_list_url : "/contenido/image_list.js?class=" + sDocumentClass + "&id=" + nDocumentID
100 });
101 }
102 }
103 function convertWord(type, content) {
104 switch (type) {
105 // Gets executed before the built in logic performes it's cleanups
106 case "before":
107 //content = content.toLowerCase(); // Some dummy logic
108 break;
109
110 // Gets executed after the built in logic performes it's cleanups
111 case "after":
112 //content = content.toLowerCase(); // Some dummy logic
113 break;
114 }
115
116 return content;
117 }
118
119 </script>
120 </head>
121 <body>
122
123 <%args>
124
125 $style => undef
126 $title => undef
127
128 </%args>
129 <%init>
130 my $pn = $state->project_name();
131 my ($pn_name, $pn_domen) = split(/\./, $pn);
132 </%init>

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

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

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

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

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