Revision 296 (by ahitrov, 2013/03/26 17:59:01) Promosite (anthill) project source
<%init>

  my $prj;
  if ( $r->uri =~ /^\/css\/(\w+)\// ) {
	$prj = $1;
	$request->{project} = $prj;
  } elsif ( $r->uri eq '/crossdomain.xml' ) {
  } elsif ( $r->uri =~ /\/(\w+)\// ) {
	$prj = $1;
	unless ( $m->comp( '/subs/get_project_data.msn', prj => $prj ) ) {
		warn "Не получается получить данные для проекта [$prj]. URI: [".$r->uri."]\n";
		&abort404;
	}
  } else {
	warn "Попытка обратиться к сайту мимо проекта\n"		if $DEBUG;
	&abort404;
  }
  if ( $r->uri =~ /\.css$/i ) {
        $r->content_type('text/css');
  } elsif ( $r->uri =~ /\.xml$/i ) {
        $r->content_type('text/xml; charset=utf-8');
  } elsif ( $r->uri =~ /\.html$/i || $r->uri =~ /\/$/ ) {
        $r->content_type('text/html; charset=utf-8');
  } else {
  }
  $m->call_next;

</%init>

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

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

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

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

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