Revision 296 (by ahitrov, 2013/03/26 17:59:01) Promosite (anthill) project source
% if ( ref $document && $document->id ) {
%	my $image = $document->get_image ('picture');
%	if ( ref $image && exists $image->{filename} ) {
<card id="<% $document->id %>" url="<% $state->images_directory.$image->{filename} %>"/>
%	}
% }
<%args>

	$store	=> undef

</%args>
<%init>

  my $document;
  if ( $store ) {
	if ( $ARGS{picture} ) {
		$document = promosuite::Postcard->new ($keeper);
		my @properties = $document->structure();
		my ($prop) = grep { $_->{attr} eq 'picture' } @properties;
		my $IMG = $document->get_image ('picture');
		my $IMAGE = $m->comp ('/subs/set_image.msn',
			field	=> 'picture',
			object	=> $document,
			prop	=> $prop,
			default	=> $IMG,
			SETS	=> \%ARGS,
		);
		if (ref $IMAGE && exists($IMAGE->{filename})) {
			local $Data::Dumper::Indent = 0;
			$document->picture( Data::Dumper::Dumper($IMAGE) );
			$document->store;
		}
	}
  }
  return unless ref $document && $document->id;

</%init>

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

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

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

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

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