From e7be71f37607d03b1365941b8a2d67a7600f6533 Mon Sep 17 00:00:00 2001 From: Mzhelskiy Maxim Date: Mon, 28 Mar 2011 12:53:49 +0000 Subject: [PATCH] fix ORM: retrieve relation data --- engine/classes/EntityORM.class.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/engine/classes/EntityORM.class.php b/engine/classes/EntityORM.class.php index 81fe1968..bb973be5 100644 --- a/engine/classes/EntityORM.class.php +++ b/engine/classes/EntityORM.class.php @@ -331,12 +331,12 @@ abstract class EntityORM extends Entity { $aCmdArgs=array(); switch ($sRelationType) { case self::RELATION_TYPE_BELONGS_TO : - $sCmd="{$sRelPluginPrefix}{$sRelModuleName}_get{$sRelEntityName}ByFilter"; - $aCmdArgs[0]=array($sRelPrimaryKey => $this->_getDataOne($sRelationKey)); + $sCmd="{$sRelPluginPrefix}{$sRelModuleName}_get{$sRelEntityName}By".func_camelize($sRelPrimaryKey); + $aCmdArgs[0]=$this->_getDataOne($sRelationKey); break; case self::RELATION_TYPE_HAS_ONE : - $sCmd="{$sRelPluginPrefix}{$sRelModuleName}_get{$sRelEntityName}ByFilter"; - $aCmdArgs[0]=array($sRelationKey => $iPrimaryKeyValue); + $sCmd="{$sRelPluginPrefix}{$sRelModuleName}_get{$sRelEntityName}By".func_camelize($sRelationKey); + $aCmdArgs[0]=$iPrimaryKeyValue; break; case self::RELATION_TYPE_HAS_MANY : $sCmd="{$sRelPluginPrefix}{$sRelModuleName}_get{$sRelEntityName}ItemsByFilter"; @@ -354,7 +354,7 @@ abstract class EntityORM extends Entity { default: break; } - if(array_key_exists(0,$aArgs) && is_array($aArgs[0])) { + if(is_array($aCmdArgs[0]) && array_key_exists(0,$aArgs) && is_array($aArgs[0])) { $aCmdArgs[0] = array_merge($aCmdArgs[0], $aArgs[0]); } $res=Engine::GetInstance()->_CallModule($sCmd,$aCmdArgs);