|
From: Chris W. <la...@us...> - 2005-09-21 03:56:28
|
Update of /cvsroot/openinteract/OpenInteract2/pkg/object_tags/OpenInteract2/Action In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6850/OpenInteract2/Action Modified Files: ObjectTags.pm Log Message: be able to restrict tag listing; add 'use_cloud' for template shortcut Index: ObjectTags.pm =================================================================== RCS file: /cvsroot/openinteract/OpenInteract2/pkg/object_tags/OpenInteract2/Action/ObjectTags.pm,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ObjectTags.pm 29 Mar 2005 05:10:37 -0000 1.1 --- ObjectTags.pm 21 Sep 2005 03:56:15 -0000 1.2 *************** *** 12,15 **** --- 12,21 ---- $OpenInteract2::Action::ObjectTags::VERSION = sprintf("%d.%02d", q$Revision$ =~ /(\d+)\.(\d+)/); + # shortcut for template... + sub use_cloud { + my ( $self ) = @_; + return ( $self->param( 'use_cloud' ) =~ /^yes$/i ); + } + sub all_tags { my ( $self ) = @_; *************** *** 50,59 **** my $request = CTX->request; my $tag = $self->param( 'tag' ) || $request->param( 'tag' ); ! my %params = ( tag => $tag ); if ( $tag ) { my $tag_class = CTX->lookup_object( 'object_tag' ); my $object_refs = $tag_class->fetch_group({ ! where => 'tag = ?', ! value => [ $tag ], }); $params{tag_info} = $object_refs; --- 56,76 ---- my $request = CTX->request; my $tag = $self->param( 'tag' ) || $request->param( 'tag' ); ! my $restrict_to = $self->param( 'restrict_to_type' ) ! || $request->param( 'restrict_to_type' ); ! my %params = ( ! tag => $tag, ! restrict_to => $restrict_to, ! ); if ( $tag ) { my $tag_class = CTX->lookup_object( 'object_tag' ); + my @where = ( 'tag = ?' ); + my @value = ( $tag ); + if ( $restrict_to ) { + push @where, 'object_type = ?'; + push @value, $restrict_to; + } my $object_refs = $tag_class->fetch_group({ ! where => join( ' AND ', @where ), ! value => \@value,, }); $params{tag_info} = $object_refs; *************** *** 61,65 **** else { $self->param_add( ! error_msg => $self->_msg( 'tags.error.related_objects_no_tag' ) ); } return \%params; --- 78,83 ---- else { $self->param_add( ! error_msg => $self->_msg( 'object_tags.error.related_no_tag' ) ! ); } return \%params; |