Revision 480 (by ahitrov, 2015/03/03 12:14:40) Tags plugin: initial import

package tag::Tag;

use base 'Contenido::Document';
use Contenido::Globals;

sub extra_properties
{
   return (
		{ 'attr' => 'name',			'rusname' => 'Название тега', shortname => 'Тег' },
	)
}


sub class_name
{
	return 'Тег';
}

sub class_description
{
	return 'Тег';
}

sub class_table
{
	return 'tag::SQL::TagsTable';
}

sub search_fields {
	return ('name');
}

sub pre_store
{
	my $self = shift;

	my $default_section = $project->s_alias->{tags}		if ref $project->s_alias eq 'HASH' && exists $project->s_alias->{tags};
	$self->sections( $default_section )			if $default_section;

	return 1;
}

sub post_delete
{
	my $self = shift;

	my $links = $self->keeper->get_links(
			class   => 'tag::Cloud',
			source_id       => $self->id,
			return_mode	=> 'array_ref',
		);
	if ( ref $links eq 'ARRAY' &&  @$links ) {
		foreach my $link ( @$links ) {
			$link->delete;
		}
	}
}

1;