Revision 198 (by ahitrov, 2012/03/15 18:29:29) Simple webshop support plugin
<%ARGS>

	$object	=> undef
	$SETS	=> undef
	$context=> undef

</%ARGS>
<%INIT>

    use Contenido::File;
    use vars qw($keeper $request );

    $request->{local_codepage} = 'UTF8';
    $request->{local_codepage} = 'WIN'	if Convert::Cyrillic::cstocs('WIN', 'UTF8', $SETS->{control_charset}) eq 'Контроль';
    $request->{local_codepage} = 'KOI8'	if Convert::Cyrillic::cstocs('KOI8', 'UTF8', $SETS->{control_charset}) eq 'Контроль';

    warn "Contenido Debug: Форма для редактирования пришла в кодировке ".$request->{local_codepage}."\n"        if ($state->debug());

    my @properties = $object->structure();
    for (0..$#properties)
    {
	my $prop = $properties[$_];
	my $name = $prop->{attr};
	my $type = $prop->{type};

	next	if ($name eq 'sections');
	next	if ($name eq 'id');

	next	if $prop->{hidden};
	next	if $context =~ /(facil|post)/ && $prop->{$context.'show'};
	next	if !$context && ($prop->{manshow} || $prop->{manager_hidden});

	if ( exists $SETS->{$name} ) {
		if ($m->comp_exists("/contenido/components/outputs/$type.msn")) {
			$object->{$name} = $m->comp("/contenido/components/outputs/$type.msn", SETS => $SETS, name => $name, object => $object );
		} else {
			$object->{$name} = $m->comp('/contenido/components/filter.msn', str => $SETS->{$name} );
		}
	}

    }

    # По идее - мы работаем с ссылкой, так что ничего не надо возвращать!    
    # O-ле! О-ле! О-ле!
    return 1;

</%INIT>