[Jifty-commit] r5014 - in Jifty-DBI/branches/tisql: lib/Jifty/DBI
Jifty commits
jifty-commit at lists.jifty.org
Tue Feb 5 21:15:47 EST 2008
Author: ruz
Date: Tue Feb 5 21:15:47 2008
New Revision: 5014
Modified:
Jifty-DBI/branches/tisql/ (props changed)
Jifty-DBI/branches/tisql/lib/Jifty/DBI/Handle.pm
Log:
r4543 at cubic-pc (orig r4542): alexmv | 2007-11-26 22:12:54 +0300
r25123 at zoq-fot-pik: chmrr | 2007-11-26 14:10:54 -0500
* Fix reverse joins. Broken in multiple ways.
Modified: Jifty-DBI/branches/tisql/lib/Jifty/DBI/Handle.pm
==============================================================================
--- Jifty-DBI/branches/tisql/lib/Jifty/DBI/Handle.pm (original)
+++ Jifty-DBI/branches/tisql/lib/Jifty/DBI/Handle.pm Tue Feb 5 21:15:47 2008
@@ -849,34 +849,24 @@
}
if ( $args{'alias2'} ) {
- if ( $args{'collection'}{'joins'}{ $args{alias2} } ) {
+ if ( $args{'collection'}{'joins'}{ $args{alias2} } and lc $args{'collection'}{'joins'}{ $args{alias2} }{type} eq "cross" ) {
my $join = $args{'collection'}{'joins'}{ $args{alias2} };
- if ( lc $join->{type} eq 'cross' ) {
- $args{'table2'} = $join->{table};
- $alias = $join->{alias};
- } else {
- warn "Already joined?";
- return;
- }
+ $args{'table2'} = $join->{table};
+ $alias = $join->{alias};
} else {
# if we can't do that, can we reverse the join and have it work?
- @args{qw/alias1 alias2/} = @args{qw/alias2 $alias2/};
+ @args{qw/alias1 alias2/} = @args{qw/alias2 alias1/};
@args{qw/column1 column2/} = @args{qw/column2 column1/};
- if ( $args{'collection'}{'joins'}{ $args{alias2} } ) {
+ if ( $args{'collection'}{'joins'}{ $args{alias2} } and lc $args{'collection'}{'joins'}{ $args{alias2} }{type} eq "cross" ) {
my $join = $args{'collection'}{'joins'}{ $args{alias2} };
- if ( lc $join->{type} eq 'cross' ) {
- $args{'table2'} = $join->{table};
- $alias = $join->{alias};
- } else {
- warn "Already joined?";
- return;
- }
+ $args{'table2'} = $join->{table};
+ $alias = $join->{alias};
} else {
# Swap back
- @args{qw/alias1 alias2/} = @args{qw/alias2 $alias2/};
+ @args{qw/alias1 alias2/} = @args{qw/alias2 alias1/};
@args{qw/column1 column2/} = @args{qw/column2 column1/};
return $self->Jifty::DBI::Collection::limit(
More information about the Jifty-commit
mailing list