--- nfo/perl/libs/Data/Storage/Handler/Tangram.pm 2003/07/01 23:24:17 1.42 +++ nfo/perl/libs/Data/Storage/Handler/Tangram.pm 2003/12/04 01:01:50 1.44 @@ -1,8 +1,15 @@ ############################################ # -# $Id: Tangram.pm,v 1.42 2003/07/01 23:24:17 joko Exp $ +# $Id: Tangram.pm,v 1.44 2003/12/04 01:01:50 joko Exp $ # # $Log: Tangram.pm,v $ +# Revision 1.44 2003/12/04 01:01:50 joko +# + sendQuery now returns result even on crud=UPDATE +# +# Revision 1.43 2003/07/02 11:07:12 jonen +# re-activate filtering of results *after* results are fetched from tangram +# (needed for e.g. UserManagment) +# # Revision 1.42 2003/07/01 23:24:17 joko # now using package before using function # @@ -179,6 +186,7 @@ # get logger instance my $logger = Log::Dispatch::Config->instance; +#$Tangram::TRACE = *STDOUT; # this holds the complete instantiated schema from tangram my $schema_tangram; @@ -619,12 +627,11 @@ #@results = eval($evalstring); #die $@ if $@; -=pod - # filter results - if ($filters->[0]->{op} && ($filters->[0]->{op} eq "ref")) { + # filter results - NEEDED for e.g. UserManagment !! + if ($in->{filters}->[0]->{op} && ($in->{filters}->[0]->{op} eq "ref")) { #print "Filter->op eq 'ref'.\n"; - my $att_name = $filters->[0]->{key}; - my $att_val = $filters->[0]->{val}; + my $att_name = $in->{filters}->[0]->{key}; + my $att_val = $in->{filters}->[0]->{val}; my @filtered; foreach(@results) { if(ref($_->{$att_name}) eq $att_val) { @@ -633,7 +640,6 @@ } @results = @filtered; } -=cut #print "results: " . Dumper(\@results); @@ -807,8 +813,11 @@ my $options = { utf8 => 1, php => 1 }; merge_to($object, $query->{payload}, $options); + #print Dumper($object); + # Execute update operation at orm. $self->update($object); + $result = $self->createResult([ $object ]); } elsif ($crud eq 'DELETE') {