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;
|