From: <gem...@li...> - 2012-11-22 12:13:24
|
Revision: 1034 http://gemstracker.svn.sourceforge.net/gemstracker/?rev=1034&view=rev Author: matijsdejong Date: 2012-11-22 12:13:14 +0000 (Thu, 22 Nov 2012) Log Message: ----------- Fix for #578 database patch level JoinModel now accepts more complex join statements Modified Paths: -------------- trunk/library/classes/MUtil/Model/JoinModel.php trunk/library/configs/db/tables/gems__patch_levels.10.sql Modified: trunk/library/classes/MUtil/Model/JoinModel.php =================================================================== --- trunk/library/classes/MUtil/Model/JoinModel.php 2012-11-22 12:13:08 UTC (rev 1033) +++ trunk/library/classes/MUtil/Model/JoinModel.php 2012-11-22 12:13:14 UTC (rev 1034) @@ -117,9 +117,15 @@ $table_name = $this->_getTableName($table); $adapter = $table->getAdapter(); + $joinSql = array(); foreach ($joinFields as $source => $target) { - $this->_joinFields[$source] = $target; - $joinSql[] = $adapter->quoteIdentifier($source) . ' = ' . $adapter->quoteIdentifier($target); + if (is_numeric($source)) { + // A join expression other than equality is used + $joinSql[] = $target; + } else { + $this->_joinFields[$source] = $target; + $joinSql[] = $adapter->quoteIdentifier($source) . ' = ' . $adapter->quoteIdentifier($target); + } } $this->_select->$join($table_name, implode(' ' . Zend_Db_Select::SQL_AND . ' ', $joinSql), array()); Modified: trunk/library/configs/db/tables/gems__patch_levels.10.sql =================================================================== --- trunk/library/configs/db/tables/gems__patch_levels.10.sql 2012-11-22 12:13:08 UTC (rev 1033) +++ trunk/library/configs/db/tables/gems__patch_levels.10.sql 2012-11-22 12:13:14 UTC (rev 1034) @@ -11,4 +11,4 @@ INSERT INTO gems__patch_levels (gpl_level, gpl_created) VALUES - (48, CURRENT_TIMESTAMP); + (50, CURRENT_TIMESTAMP); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |