diff --git a/cake/libs/cache/model.php b/cake/libs/cache/model.php index 46576b9f4..c7e9da459 100644 --- a/cake/libs/cache/model.php +++ b/cake/libs/cache/model.php @@ -94,7 +94,7 @@ class ModelEngine extends CacheEngine { return false; } - $cache = array($this->__Model->currentModel => array( + $cache = array($this->__Model->alias => array( $this->__fields[0] => $data, $this->__fields[1] => time() + $duration)); diff --git a/cake/libs/controller/components/acl.php b/cake/libs/controller/components/acl.php index 1401c8e78..37110fec3 100644 --- a/cake/libs/controller/components/acl.php +++ b/cake/libs/controller/components/acl.php @@ -297,14 +297,14 @@ class DB_ACL extends AclBase { $inherited = array(); for ($i = 0 ; $i < count($aroPath); $i++) { $perms = $this->Aro->Permission->findAll(array( - $this->Aro->Permission->currentModel . '.aro_id' => $aroPath[$i][$this->Aro->currentModel]['id'], - $this->Aro->Permission->currentModel . '.aco_id' => $acoPath->extract('{n}.' . $this->Aco->currentModel . '.id')), - null, array($this->Aco->currentModel . '.lft' => 'desc'), null, null, 0); + $this->Aro->Permission->alias . '.aro_id' => $aroPath[$i][$this->Aro->alias]['id'], + $this->Aro->Permission->alias . '.aco_id' => $acoPath->extract('{n}.' . $this->Aco->alias . '.id')), + null, array($this->Aco->alias . '.lft' => 'desc'), null, null, 0); if (empty($perms)) { continue; } else { - foreach (Set::extract($perms, '{n}.' . $this->Aro->Permission->currentModel) as $perm) { + foreach (Set::extract($perms, '{n}.' . $this->Aro->Permission->alias) as $perm) { if ($action == '*') { foreach ($permKeys as $key) { @@ -358,7 +358,7 @@ class DB_ACL extends AclBase { } if (isset($perms[0])) { - $save = $perms[0][$this->Aro->Permission->currentModel]; + $save = $perms[0][$this->Aro->Permission->alias]; } if ($actions == "*") { @@ -387,7 +387,7 @@ class DB_ACL extends AclBase { $save['aco_id'] = $perms['aco']; if ($perms['link'] != null && count($perms['link']) > 0) { - $save['id'] = $perms['link'][0][$this->Aro->Permission->currentModel]['id']; + $save['id'] = $perms['link'][0][$this->Aro->Permission->alias]['id']; } $this->Aro->Permission->create($save); return $this->Aro->Permission->save(); @@ -460,11 +460,11 @@ class DB_ACL extends AclBase { } return array( - 'aro' => Set::extract($obj, 'Aro.0.'.$this->Aro->currentModel.'.id'), - 'aco' => Set::extract($obj, 'Aco.0.'.$this->Aco->currentModel.'.id'), + 'aro' => Set::extract($obj, 'Aro.0.'.$this->Aro->alias.'.id'), + 'aco' => Set::extract($obj, 'Aco.0.'.$this->Aco->alias.'.id'), 'link' => $this->Aro->Permission->findAll(array( - $this->Aro->Permission->currentModel . '.aro_id' => Set::extract($obj, 'Aro.0.'.$this->Aro->currentModel.'.id'), - $this->Aro->Permission->currentModel . '.aco_id' => Set::extract($obj, 'Aco.0.'.$this->Aco->currentModel.'.id') + $this->Aro->Permission->alias . '.aro_id' => Set::extract($obj, 'Aro.0.'.$this->Aro->alias.'.id'), + $this->Aro->Permission->alias . '.aco_id' => Set::extract($obj, 'Aco.0.'.$this->Aco->alias.'.id') )) ); } diff --git a/cake/libs/controller/controller.php b/cake/libs/controller/controller.php index 3fe3e88a2..1a7f393cb 100644 --- a/cake/libs/controller/controller.php +++ b/cake/libs/controller/controller.php @@ -595,8 +595,8 @@ class Controller extends Object { $errors = array(); foreach ($objects as $object) { - $this->{$object->currentModel}->set($object->data); - $errors = array_merge($errors, $this->{$object->currentModel}->invalidFields()); + $this->{$object->alias}->set($object->data); + $errors = array_merge($errors, $this->{$object->alias}->invalidFields()); } return $this->validationErrors = (count($errors) ? $errors : false); } @@ -925,8 +925,8 @@ class Controller extends Object { return array(); } $options = am($this->params, $this->params['url'], $this->passedArgs); - if (isset($this->paginate[$object->currentModel])) { - $defaults = $this->paginate[$object->currentModel]; + if (isset($this->paginate[$object->alias])) { + $defaults = $this->paginate[$object->alias]; } else { $defaults = $this->paginate; } @@ -944,7 +944,7 @@ class Controller extends Object { if (!empty($options['order']) && is_array($options['order'])) { $key = key($options['order']); if (strpos($key, '.') === false && $object->hasField($key)) { - $options['order'][$object->currentModel . '.' . $key] = $options['order'][$key]; + $options['order'][$object->alias . '.' . $key] = $options['order'][$key]; unset($options['order'][$key]); } } @@ -1004,7 +1004,7 @@ class Controller extends Object { 'options' => $options ); - $this->params['paging'][$object->currentModel] = $paging; + $this->params['paging'][$object->alias] = $paging; if (!in_array('Paginator', $this->helpers) && !array_key_exists('Paginator', $this->helpers)) { $this->helpers[] = 'Paginator'; diff --git a/cake/libs/model/behaviors/acl.php b/cake/libs/model/behaviors/acl.php index 8874c52f8..1627a7f7f 100644 --- a/cake/libs/model/behaviors/acl.php +++ b/cake/libs/model/behaviors/acl.php @@ -52,8 +52,8 @@ class AclBehavior extends ModelBehavior { if (is_string($config)) { $config = array('type' => $config); } - $this->settings[$model->currentModel] = am(array('type' => 'requester'), $config); - $type = $this->__typeMaps[$this->settings[$model->currentModel]['type']]; + $this->settings[$model->alias] = am(array('type' => 'requester'), $config); + $type = $this->__typeMaps[$this->settings[$model->alias]['type']]; if (!ClassRegistry::isKeySet($type)) { uses('model' . DS . 'db_acl'); @@ -63,7 +63,7 @@ class AclBehavior extends ModelBehavior { } $model->{$type} =& $object; if (!method_exists($model, 'parentNode')) { - trigger_error("Callback parentNode() not defined in {$model->currentModel}", E_USER_WARNING); + trigger_error("Callback parentNode() not defined in {$model->alias}", E_USER_WARNING); } } /** @@ -73,9 +73,9 @@ class AclBehavior extends ModelBehavior { * @return array */ function node(&$model, $ref = null) { - $type = $this->__typeMaps[low($this->settings[$model->currentModel]['type'])]; + $type = $this->__typeMaps[low($this->settings[$model->alias]['type'])]; if (empty($ref)) { - $ref = array('model' => $model->currentModel, 'foreign_key' => $model->id); + $ref = array('model' => $model->alias, 'foreign_key' => $model->id); } return $model->{$type}->node($ref); } @@ -86,7 +86,7 @@ class AclBehavior extends ModelBehavior { */ function afterSave(&$model, $created) { if ($created) { - $type = $this->__typeMaps[low($this->settings[$model->currentModel]['type'])]; + $type = $this->__typeMaps[low($this->settings[$model->alias]['type'])]; $parent = $model->parentNode(); if (!empty($parent)) { $parent = $this->node($model, $parent); @@ -97,7 +97,7 @@ class AclBehavior extends ModelBehavior { $model->{$type}->create(); $model->{$type}->save(array( 'parent_id' => Set::extract($parent, "0.{$type}.id"), - 'model' => $model->currentModel, + 'model' => $model->alias, 'foreign_key' => $model->id )); } @@ -107,7 +107,7 @@ class AclBehavior extends ModelBehavior { * */ function afterDelete(&$model) { - $type = $this->__typeMaps[low($this->settings[$model->currentModel]['type'])]; + $type = $this->__typeMaps[low($this->settings[$model->alias]['type'])]; $node = Set::extract($this->node($model), "0.{$type}.id"); if (!empty($node)) { $model->{$type}->delete($node); diff --git a/cake/libs/model/behaviors/translate.php b/cake/libs/model/behaviors/translate.php index c65bd7a1a..f19638882 100644 --- a/cake/libs/model/behaviors/translate.php +++ b/cake/libs/model/behaviors/translate.php @@ -55,12 +55,12 @@ class TranslateBehavior extends ModelBehavior { function setup(&$model, $config = array()) { $db =& ConnectionManager::getDataSource($model->useDbConfig); if (!$db->connected) { - trigger_error('Datasource '.$model->useDbConfig.' for TranslateBehavior of model '.$model->currentModel.' is not connected', E_USER_ERROR); + trigger_error('Datasource '.$model->useDbConfig.' for TranslateBehavior of model '.$model->alias.' is not connected', E_USER_ERROR); return false; } - $this->settings[$model->currentModel] = array(); - $this->runtime[$model->currentModel] = array('fields' => array()); + $this->settings[$model->alias] = array(); + $this->runtime[$model->alias] = array('fields' => array()); $this->translateModel($model); return $this->bindTranslation($model, null, false); } @@ -74,20 +74,20 @@ class TranslateBehavior extends ModelBehavior { $RuntimeModel =& $this->translateModel($model); if (is_string($query['fields']) && 'COUNT(*) AS '.$db->name('count') == $query['fields']) { - $this->runtime[$model->currentModel]['count'] = true; + $this->runtime[$model->alias]['count'] = true; if (empty($locale)) { return $query; } - $query['fields'] = 'COUNT(DISTINCT('.$db->name($model->currentModel).'.'.$db->name($model->primaryKey).')) ' . $db->alias . 'count'; + $query['fields'] = 'COUNT(DISTINCT('.$db->name($model->alias).'.'.$db->name($model->primaryKey).')) ' . $db->alias . 'count'; $query['joins'][] = array( 'type' => 'INNER', - 'alias' => $RuntimeModel->currentModel, + 'alias' => $RuntimeModel->alias, 'table' => $db->name($tablePrefix . 'i18n'), 'conditions' => array( - $model->currentModel.'.id' => '{$__cakeIdentifier['.$RuntimeModel->currentModel.'.foreign_key]__$}', - $RuntimeModel->currentModel.'.model' => $model->currentModel, - $RuntimeModel->currentModel.'.locale' => $locale)); + $model->alias.'.id' => '{$__cakeIdentifier['.$RuntimeModel->alias.'.foreign_key]__$}', + $RuntimeModel->alias.'.model' => $model->alias, + $RuntimeModel->alias.'.locale' => $locale)); return $query; } @@ -97,7 +97,7 @@ class TranslateBehavior extends ModelBehavior { $autoFields = false; if (empty($query['fields'])) { - $query['fields'] = array($model->currentModel.'.*'); + $query['fields'] = array($model->alias.'.*'); foreach (array('hasOne', 'belongsTo') as $type) { foreach ($model->{$type} as $key => $value) { @@ -113,13 +113,13 @@ class TranslateBehavior extends ModelBehavior { } $autoFields = true; } - $fields = am($this->settings[$model->currentModel], $this->runtime[$model->currentModel]['fields']); + $fields = am($this->settings[$model->alias], $this->runtime[$model->alias]['fields']); $addFields = array(); if (is_array($query['fields'])) { foreach ($fields as $key => $value) { $field = ife(is_numeric($key), $value, $key); - if (in_array($model->currentModel.'.*', $query['fields']) || $autoFields || in_array($model->currentModel.'.'.$field, $query['fields']) || in_array($field, $query['fields'])) { + if (in_array($model->alias.'.*', $query['fields']) || $autoFields || in_array($model->alias.'.'.$field, $query['fields']) || in_array($field, $query['fields'])) { $addFields[] = $field; } } @@ -127,7 +127,7 @@ class TranslateBehavior extends ModelBehavior { if ($addFields) { foreach ($addFields as $field) { - foreach (array($field, $model->currentModel.'.'.$field) as $_field) { + foreach (array($field, $model->alias.'.'.$field) as $_field) { $key = array_search($_field, $query['fields']); if ($key !== false) { @@ -143,8 +143,8 @@ class TranslateBehavior extends ModelBehavior { 'alias' => 'I18n__'.$field.'__'.$_locale, 'table' => $db->name($tablePrefix . 'i18n'), 'conditions' => array( - $model->currentModel.'.id' => '{$__cakeIdentifier[I18n__'.$field.'__'.$_locale.'.foreign_key]__$}', - 'I18n__'.$field.'__'.$_locale.'.model' => $model->currentModel, + $model->alias.'.id' => '{$__cakeIdentifier[I18n__'.$field.'__'.$_locale.'.foreign_key]__$}', + 'I18n__'.$field.'__'.$_locale.'.model' => $model->alias, 'I18n__'.$field.'__'.$_locale.'.'.$RuntimeModel->displayField => $field, 'I18n__'.$field.'__'.$_locale.'.locale' => $_locale)); } @@ -155,47 +155,47 @@ class TranslateBehavior extends ModelBehavior { 'alias' => 'I18n__'.$field, 'table' => $db->name($tablePrefix . 'i18n'), 'conditions' => array( - $model->currentModel.'.id' => '{$__cakeIdentifier[I18n__'.$field.'.foreign_key]__$}', - 'I18n__'.$field.'.model' => $model->currentModel, + $model->alias.'.id' => '{$__cakeIdentifier[I18n__'.$field.'.foreign_key]__$}', + 'I18n__'.$field.'.model' => $model->alias, 'I18n__'.$field.'.'.$RuntimeModel->displayField => $field)); $query['conditions'][$db->name('I18n__'.$field.'.locale')] = $locale; } } } $query['fields'] = am($query['fields']); - $this->runtime[$model->currentModel]['beforeFind'] = $addFields; + $this->runtime[$model->alias]['beforeFind'] = $addFields; return $query; } /** * Callback */ function afterFind(&$model, $results, $primary) { - $this->runtime[$model->currentModel]['fields'] = array(); + $this->runtime[$model->alias]['fields'] = array(); $locale = $this->_getLocale($model); - if (empty($locale) || empty($results) || empty($this->runtime[$model->currentModel]['beforeFind'])) { + if (empty($locale) || empty($results) || empty($this->runtime[$model->alias]['beforeFind'])) { return $results; } - $beforeFind = $this->runtime[$model->currentModel]['beforeFind']; + $beforeFind = $this->runtime[$model->alias]['beforeFind']; foreach ($results as $key => $row) { - $results[$key][$model->currentModel]['locale'] = ife(is_array($locale), @$locale[0], $locale); + $results[$key][$model->alias]['locale'] = ife(is_array($locale), @$locale[0], $locale); foreach ($beforeFind as $field) { if (is_array($locale)) { foreach ($locale as $_locale) { - if (!isset($results[$key][$model->currentModel][$field]) && !empty($results[$key]['I18n__'.$field.'__'.$_locale]['content'])) { - $results[$key][$model->currentModel][$field] = $results[$key]['I18n__'.$field.'__'.$_locale]['content']; + if (!isset($results[$key][$model->alias][$field]) && !empty($results[$key]['I18n__'.$field.'__'.$_locale]['content'])) { + $results[$key][$model->alias][$field] = $results[$key]['I18n__'.$field.'__'.$_locale]['content']; } unset($results[$key]['I18n__'.$field.'__'.$_locale]); } - if (!isset($results[$key][$model->currentModel][$field])) { - $results[$key][$model->currentModel][$field] = ''; + if (!isset($results[$key][$model->alias][$field])) { + $results[$key][$model->alias][$field] = ''; } } else { $value = ife(empty($results[$key]['I18n__'.$field]['content']), '', $results[$key]['I18n__'.$field]['content']); - $results[$key][$model->currentModel][$field] = $value; + $results[$key][$model->alias][$field] = $value; unset($results[$key]['I18n__'.$field]); } } @@ -211,31 +211,31 @@ class TranslateBehavior extends ModelBehavior { if (empty($locale) || is_array($locale)) { return true; } - $fields = am($this->settings[$model->currentModel], $this->runtime[$model->currentModel]['fields']); + $fields = am($this->settings[$model->alias], $this->runtime[$model->alias]['fields']); $tempData = array(); foreach ($fields as $key => $value) { $field = ife(is_numeric($key), $value, $key); - if (isset($model->data[$model->currentModel][$field])) { - $tempData[$field] = $model->data[$model->currentModel][$field]; - unset($model->data[$model->currentModel][$field]); + if (isset($model->data[$model->alias][$field])) { + $tempData[$field] = $model->data[$model->alias][$field]; + unset($model->data[$model->alias][$field]); } } - $this->runtime[$model->currentModel]['beforeSave'] = $tempData; + $this->runtime[$model->alias]['beforeSave'] = $tempData; return true; } /** * Callback */ function afterSave(&$model, $created) { - if (!isset($this->runtime[$model->currentModel]['beforeSave'])) { + if (!isset($this->runtime[$model->alias]['beforeSave'])) { return true; } $locale = $this->_getLocale($model); - $tempData = $this->runtime[$model->currentModel]['beforeSave']; - unset($this->runtime[$model->currentModel]['beforeSave']); - $conditions = array('locale' => $locale, 'model' => $model->currentModel, 'foreign_key' => $model->id); + $tempData = $this->runtime[$model->alias]['beforeSave']; + unset($this->runtime[$model->alias]['beforeSave']); + $conditions = array('locale' => $locale, 'model' => $model->alias, 'foreign_key' => $model->id); $RuntimeModel =& $this->translateModel($model); if (empty($created)) { @@ -244,7 +244,7 @@ class TranslateBehavior extends ModelBehavior { if ($translations) { foreach ($translations as $id => $field) { $RuntimeModel->create(); - $RuntimeModel->save(array($RuntimeModel->currentModel => array('id' => $id, 'content' => $tempData[$field]))); + $RuntimeModel->save(array($RuntimeModel->alias => array('id' => $id, 'content' => $tempData[$field]))); unset($tempData[$field]); } } @@ -262,7 +262,7 @@ class TranslateBehavior extends ModelBehavior { */ function afterDelete(&$model) { $RuntimeModel =& $this->translateModel($model); - $conditions = array('model' => $model->currentModel, 'foreign_key' => $model->id); + $conditions = array('model' => $model->alias, 'foreign_key' => $model->id); $RuntimeModel->deleteAll($conditions); } /** @@ -286,7 +286,7 @@ class TranslateBehavior extends ModelBehavior { * @return object */ function &translateModel(&$model) { - if (!isset($this->runtime[$model->currentModel]['model'])) { + if (!isset($this->runtime[$model->alias]['model'])) { if (!isset($model->translateModel) || empty($model->translateModel)) { $className = 'I18nModel'; } else { @@ -298,21 +298,21 @@ class TranslateBehavior extends ModelBehavior { if (ClassRegistry::isKeySet($className)) { if (PHP5) { - $this->runtime[$model->currentModel]['model'] = ClassRegistry::getObject($className); + $this->runtime[$model->alias]['model'] = ClassRegistry::getObject($className); } else { - $this->runtime[$model->currentModel]['model'] =& ClassRegistry::getObject($className); + $this->runtime[$model->alias]['model'] =& ClassRegistry::getObject($className); } } else { if (PHP5) { - $this->runtime[$model->currentModel]['model'] = new $className(); + $this->runtime[$model->alias]['model'] = new $className(); } else { - $this->runtime[$model->currentModel]['model'] =& new $className(); + $this->runtime[$model->alias]['model'] =& new $className(); } - ClassRegistry::addObject($className, $this->runtime[$model->currentModel]['model']); + ClassRegistry::addObject($className, $this->runtime[$model->alias]['model']); ClassRegistry::map($className, $className); } } - return $this->runtime[$model->currentModel]['model']; + return $this->runtime[$model->alias]['model']; } /** * Bind translation for fields, optionally with hasMany association for @@ -333,7 +333,7 @@ class TranslateBehavior extends ModelBehavior { } $associations = array(); $RuntimeModel =& $this->translateModel($model); - $default = array('className' => $RuntimeModel->currentModel, 'foreignKey' => 'foreign_key'); + $default = array('className' => $RuntimeModel->alias, 'foreignKey' => 'foreign_key'); foreach ($fields as $key => $value) { if (is_numeric($key)) { @@ -344,42 +344,42 @@ class TranslateBehavior extends ModelBehavior { $association = $value; } - if (array_key_exists($field, $this->settings[$model->currentModel])) { - unset($this->settings[$model->currentModel][$field]); + if (array_key_exists($field, $this->settings[$model->alias])) { + unset($this->settings[$model->alias][$field]); - } elseif (in_array($field, $this->settings[$model->currentModel])) { - $this->settings[$model->currentModel] = am(array_diff_assoc($this->settings[$model->currentModel], array($field))); + } elseif (in_array($field, $this->settings[$model->alias])) { + $this->settings[$model->alias] = am(array_diff_assoc($this->settings[$model->alias], array($field))); } - if (array_key_exists($field, $this->runtime[$model->currentModel]['fields'])) { - unset($this->runtime[$model->currentModel]['fields'][$field]); + if (array_key_exists($field, $this->runtime[$model->alias]['fields'])) { + unset($this->runtime[$model->alias]['fields'][$field]); - } elseif (in_array($field, $this->runtime[$model->currentModel]['fields'])) { - $this->runtime[$model->currentModel]['fields'] = am(array_diff_assoc($this->runtime[$model->currentModel]['fields'], array($field))); + } elseif (in_array($field, $this->runtime[$model->alias]['fields'])) { + $this->runtime[$model->alias]['fields'] = am(array_diff_assoc($this->runtime[$model->alias]['fields'], array($field))); } if (is_null($association)) { if ($reset) { - $this->runtime[$model->currentModel]['fields'][] = $field; + $this->runtime[$model->alias]['fields'][] = $field; } else { - $this->settings[$model->currentModel][] = $field; + $this->settings[$model->alias][] = $field; } } else { if ($reset) { - $this->runtime[$model->currentModel]['fields'][$field] = $association; + $this->runtime[$model->alias]['fields'][$field] = $association; } else { - $this->settings[$model->currentModel][$field] = $association; + $this->settings[$model->alias][$field] = $association; } foreach (array('hasOne', 'hasMany', 'belongsTo', 'hasAndBelongsToMany') as $type) { if (isset($model->{$type}[$association]) || isset($model->__backAssociation[$type][$association])) { - trigger_error('Association '.$association.' is already binded to model '.$model->currentModel, E_USER_ERROR); + trigger_error('Association '.$association.' is already binded to model '.$model->alias, E_USER_ERROR); return false; } } $associations[$association] = am($default, array('conditions' => array( - 'model' => $model->currentModel, + 'model' => $model->alias, $RuntimeModel->displayField => $field))); } } @@ -406,7 +406,7 @@ class TranslateBehavior extends ModelBehavior { $fields = array($fields); } $RuntimeModel =& $this->translateModel($model); - $default = array('className' => $RuntimeModel->currentModel, 'foreignKey' => 'foreign_key'); + $default = array('className' => $RuntimeModel->alias, 'foreignKey' => 'foreign_key'); $associations = array(); foreach ($fields as $key => $value) { @@ -418,18 +418,18 @@ class TranslateBehavior extends ModelBehavior { $association = $value; } - if (array_key_exists($field, $this->settings[$model->currentModel])) { - unset($this->settings[$model->currentModel][$field]); + if (array_key_exists($field, $this->settings[$model->alias])) { + unset($this->settings[$model->alias][$field]); - } elseif (in_array($field, $this->settings[$model->currentModel])) { - $this->settings[$model->currentModel] = am(array_diff_assoc($this->settings[$model->currentModel], array($field))); + } elseif (in_array($field, $this->settings[$model->alias])) { + $this->settings[$model->alias] = am(array_diff_assoc($this->settings[$model->alias], array($field))); } - if (array_key_exists($field, $this->runtime[$model->currentModel]['fields'])) { - unset($this->runtime[$model->currentModel]['fields'][$field]); + if (array_key_exists($field, $this->runtime[$model->alias]['fields'])) { + unset($this->runtime[$model->alias]['fields'][$field]); - } elseif (in_array($field, $this->runtime[$model->currentModel]['fields'])) { - $this->runtime[$model->currentModel]['fields'] = am(array_diff_assoc($this->runtime[$model->currentModel]['fields'], array($field))); + } elseif (in_array($field, $this->runtime[$model->alias]['fields'])) { + $this->runtime[$model->alias]['fields'] = am(array_diff_assoc($this->runtime[$model->alias]['fields'], array($field))); } if (!is_null($association) && (isset($model->hasMany[$association]) || isset($model->__backAssociation['hasMany'][$association]))) { diff --git a/cake/libs/model/behaviors/tree.php b/cake/libs/model/behaviors/tree.php index 2d905362b..2e418263c 100644 --- a/cake/libs/model/behaviors/tree.php +++ b/cake/libs/model/behaviors/tree.php @@ -52,7 +52,7 @@ class TreeBehavior extends ModelBehavior { $parent =& $model->{$data['className']}; $settings['scope'] = $model->escapeField($data['foreignKey']) . ' = ' . $parent->escapeField($parent->primaryKey, $settings['scope']); }*/ - $this->settings[$model->currentModel] = $settings; + $this->settings[$model->alias] = $settings; } /** * After save method. Called after all saves @@ -65,17 +65,17 @@ class TreeBehavior extends ModelBehavior { * @return boolean true on success, false on failure */ function afterSave(&$model, $created) { - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); if (!$enabled) { return true; } if ($created) { - if ((isset($model->data[$model->currentModel][$parent])) && $model->data[$model->currentModel][$parent]) { - return $this->_setParent($model, $model->data[$model->currentModel][$parent]); + if ((isset($model->data[$model->alias][$parent])) && $model->data[$model->alias][$parent]) { + return $this->_setParent($model, $model->data[$model->alias][$parent]); } } elseif ($__parentChange) { - $this->settings[$model->currentModel]['__parentChange'] = false; - return $this->_setParent($model, $model->data[$model->currentModel][$parent]); + $this->settings[$model->alias]['__parentChange'] = false; + return $this->_setParent($model, $model->data[$model->alias][$parent]); } } /** @@ -87,13 +87,13 @@ class TreeBehavior extends ModelBehavior { * @return boolean true to continue, false to abort the delete */ function beforeDelete(&$model) { - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); if (!$enabled) { return true; } list($name, $data)= array( - $model->currentModel, + $model->alias, $model->read()); $data= $data[$name]; @@ -121,44 +121,44 @@ class TreeBehavior extends ModelBehavior { * @return boolean true to continue, false to abort the save */ function beforeSave(&$model) { - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); if (!$enabled) { return true; } - if (isset($model->data[$model->currentModel][$model->primaryKey])) { - if ($model->data[$model->currentModel][$model->primaryKey]) { + if (isset($model->data[$model->alias][$model->primaryKey])) { + if ($model->data[$model->alias][$model->primaryKey]) { if (!$model->id) { - $model->id = $model->data[$model->currentModel][$model->primaryKey]; + $model->id = $model->data[$model->alias][$model->primaryKey]; } } - unset ($model->data[$model->currentModel][$model->primaryKey]); + unset ($model->data[$model->alias][$model->primaryKey]); } if (!$model->id) { - if ((!isset($model->data[$model->currentModel][$parent])) || (!$model->data[$model->currentModel][$parent])) { + if ((!isset($model->data[$model->alias][$parent])) || (!$model->data[$model->alias][$parent])) { $edge = $this->__getMax($model, $scope, $right); - $model->data[$model->currentModel][$left]= $edge +1; - $model->data[$model->currentModel][$right]= $edge +2; + $model->data[$model->alias][$left]= $edge +1; + $model->data[$model->alias][$right]= $edge +2; } else { - $parentNode = $model->find(array($scope, $model->escapeField() => $model->data[$model->currentModel][$parent]), + $parentNode = $model->find(array($scope, $model->escapeField() => $model->data[$model->alias][$parent]), array($model->primaryKey), null, -1); if (!$parentNode) { return false; } } - } elseif (isset($model->data[$model->currentModel][$parent])) { - if ($model->data[$model->currentModel][$parent] != $model->field($parent)) { - $this->settings[$model->currentModel]['__parentChange'] = true; + } elseif (isset($model->data[$model->alias][$parent])) { + if ($model->data[$model->alias][$parent] != $model->field($parent)) { + $this->settings[$model->alias]['__parentChange'] = true; } - if (!$model->data[$model->currentModel][$parent]) { - $model->data[$model->currentModel][$parent]= null; + if (!$model->data[$model->alias][$parent]) { + $model->data[$model->alias][$parent]= null; } else { list($node) = array_values($model->find(array($scope,$model->escapeField() => $model->id), array($model->primaryKey, $parent, $left, $right ), null, -1)); - $parentNode = $model->find(array($scope, $model->escapeField() => $model->data[$model->currentModel][$parent]), + $parentNode = $model->find(array($scope, $model->escapeField() => $model->data[$model->alias][$parent]), array($model->primaryKey, $left, $right), null, -1); if (!$parentNode) { return false; @@ -192,7 +192,7 @@ class TreeBehavior extends ModelBehavior { } elseif (!$id) { $id = null; } - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); if ($direct) { return $model->findCount(array($scope, $model->escapeField($parent) => $id)); @@ -201,7 +201,7 @@ class TreeBehavior extends ModelBehavior { return $model->findCount($scope); } elseif (!empty ($model->data)) { - $data = $model->data[$model->currentModel]; + $data = $model->data[$model->alias]; } else { list($data)= array_values($model->find(array($scope, $model->escapeField() => $id), null, null, -1)); } @@ -231,11 +231,11 @@ class TreeBehavior extends ModelBehavior { } elseif (!$id) { $id = null; } - $name = $model->currentModel; + $name = $model->alias; extract($this->settings[$name]); if (!$order) { - $order = $model->currentModel . '.' . $left . ' asc'; + $order = $model->alias . '.' . $left . ' asc'; } if ($direct) { return $model->findAll(array($scope, $model->escapeField($parent) => $id), $fields, $order, $limit, $page, $recursive); @@ -262,7 +262,7 @@ class TreeBehavior extends ModelBehavior { * @access public */ function generatetreelist(&$model, $conditions = null, $keyPath = null, $valuePath = null, $spacer = '_', $recursive = -1) { - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); if ($keyPath == null && $valuePath == null && $model->hasField($model->displayField)) { $fields = array($model->primaryKey, $model->displayField, $left, $right); @@ -271,11 +271,11 @@ class TreeBehavior extends ModelBehavior { } if ($keyPath == null) { - $keyPath = '{n}.' . $model->currentModel . '.' . $model->primaryKey; + $keyPath = '{n}.' . $model->alias . '.' . $model->primaryKey; } if ($valuePath == null) { - $valuePath = array('{0}{1}', '{n}.tree_prefix', '{n}.' . $model->currentModel . '.' . $model->displayField); + $valuePath = array('{0}{1}', '{n}.tree_prefix', '{n}.' . $model->alias . '.' . $model->displayField); } elseif (is_string($valuePath)) { $valuePath = array('{0}{1}', '{n}.tree_prefix', $valuePath); @@ -288,11 +288,11 @@ class TreeBehavior extends ModelBehavior { $stack = array(); foreach ($results as $i => $result) { - while ($stack && ($stack[count($stack)-1] < $result[$model->currentModel][$right])) { + while ($stack && ($stack[count($stack)-1] < $result[$model->alias][$right])) { array_pop($stack); } $results[$i]['tree_prefix'] = str_repeat($spacer,count($stack)); - $stack[] = $result[$model->currentModel][$right]; + $stack[] = $result[$model->alias][$right]; } return Set::combine($results, $keyPath, $valuePath); } @@ -311,11 +311,11 @@ class TreeBehavior extends ModelBehavior { if (empty ($id)) { $id = $model->id; } - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); $parentId = $model->read($parent, $id); if ($parentId) { - $parentId = $parentId[$model->currentModel][$parent]; + $parentId = $parentId[$model->alias][$parent]; $parent = $model->find(array($model->escapeField() => $parentId), $fields, null, $recursive); return $parent; @@ -337,7 +337,7 @@ class TreeBehavior extends ModelBehavior { if (empty ($id)) { $id = $model->id; } - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); @list($item) = array_values($model->find(array($model->escapeField() => $id), array($left, $right), null, -1)); if (empty ($item)) { @@ -366,7 +366,7 @@ class TreeBehavior extends ModelBehavior { if (empty ($id)) { $id = $model->id; } - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); list($node) = array_values($model->find(array($scope, $model->escapeField() => $id), array($model->primaryKey, $left, $right, $parent), null, -1)); if ($node[$parent]) { @@ -410,7 +410,7 @@ class TreeBehavior extends ModelBehavior { if (empty ($id)) { $id = $model->id; } - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); list($node) = array_values($model->find(array($scope, $model->escapeField() => $id), array($model->primaryKey, $left, $right, $parent ), null, -1)); if ($node[$parent]) { @@ -453,30 +453,30 @@ class TreeBehavior extends ModelBehavior { * @access public */ function recover(&$model, $mode = 'parent') { - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); $model->recursive = -1; if ($mode == 'parent') { $count = 1; foreach ($model->findAll($scope, array($model->primaryKey), $left) as $array) { - $model->{$model->primaryKey} = $array[$model->currentModel][$model->primaryKey]; + $model->{$model->primaryKey} = $array[$model->alias][$model->primaryKey]; $lft = $count++; $rght = $count++; $model->save(array($left => $lft,$right => $rght)); } foreach ($model->findAll($scope, array($model->primaryKey,$parent), $left) as $array) { $model->create(); - $model->id = $array[$model->currentModel][$model->primaryKey]; - $this->_setParent($model, $array[$model->currentModel][$parent], true); + $model->id = $array[$model->alias][$model->primaryKey]; + $this->_setParent($model, $array[$model->alias][$parent], true); } } else { foreach ($model->findAll($scope, array($model->primaryKey, $parent), $left) as $array) { - $path = $this->getpath($model, $array[$model->currentModel][$model->primaryKey]); + $path = $this->getpath($model, $array[$model->alias][$model->primaryKey]); if ($path == null || count($path) < 2) { $parentId = null; } else { - $parentId = $path[count($path) - 2][$model->currentModel][$model->primaryKey]; + $parentId = $path[count($path) - 2][$model->alias][$model->primaryKey]; } - $model->updateAll(array($parent => $parentId), array($model->primaryKey => $array[$model->currentModel][$model->primaryKey])); + $model->updateAll(array($parent => $parentId), array($model->primaryKey => $array[$model->alias][$model->primaryKey])); } } } @@ -496,7 +496,7 @@ class TreeBehavior extends ModelBehavior { if (empty ($id)) { $id = $model->id; } - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); list($node) = array_values($model->find( array($scope, $model->escapeField() => $id), array($model->primaryKey, $left, $right, $parent), null, -1) @@ -543,7 +543,7 @@ class TreeBehavior extends ModelBehavior { * @access public */ function setparent(&$model, $parentId = null , $created = null) { - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); if ($created === false && $parentId == $model->field($parent)) { return true; } @@ -560,7 +560,7 @@ class TreeBehavior extends ModelBehavior { * @access public */ function verify(&$model) { - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); if (!$model->findCount($scope)) { return true; } @@ -586,24 +586,24 @@ class TreeBehavior extends ModelBehavior { $model->bindModel(array('belongsTo' => array('VerifyParent' => array( - 'className' => $model->currentModel, + 'className' => $model->alias, 'foreignKey' => $parent, 'fields' => array($model->primaryKey, $left, $right, $parent) )))); foreach ($model->findAll($scope, null, null, null, null, 1) as $instance) { - if ($instance[$model->currentModel][$parent]) { + if ($instance[$model->alias][$parent]) { if (!$instance['VerifyParent'][$model->primaryKey]) { - $errors[] = array('node', $instance[$model->currentModel][$model->primaryKey], - 'The parent node ' . $instance[$model->currentModel][$parent] . ' doesn\'t exist'); - } elseif ($instance[$model->currentModel][$left] < $instance['VerifyParent'][$left]) { - $errors[] = array('node', $instance[$model->currentModel][$model->primaryKey], + $errors[] = array('node', $instance[$model->alias][$model->primaryKey], + 'The parent node ' . $instance[$model->alias][$parent] . ' doesn\'t exist'); + } elseif ($instance[$model->alias][$left] < $instance['VerifyParent'][$left]) { + $errors[] = array('node', $instance[$model->alias][$model->primaryKey], 'left less than parent (node ' . $instance['VerifyParent'][$model->primaryKey] . ').'); - } elseif ($instance[$model->currentModel][$right] > $instance['VerifyParent'][$right]) { - $errors[] = array('node', $instance[$model->currentModel][$model->primaryKey], + } elseif ($instance[$model->alias][$right] > $instance['VerifyParent'][$right]) { + $errors[] = array('node', $instance[$model->alias][$model->primaryKey], 'right greater than parent (node ' . $instance['VerifyParent'][$model->primaryKey] . ').'); } - } elseif ($model->findCount(array($scope, $left . '< ' . $instance[$model->currentModel][$left], $right . '> ' . $instance[$model->currentModel][$right]))) { - $errors[] = array('node', $instance[$model->currentModel][$model->primaryKey], 'The parent field is blank, but has a parent'); + } elseif ($model->findCount(array($scope, $left . '< ' . $instance[$model->alias][$left], $right . '> ' . $instance[$model->alias][$right]))) { + $errors[] = array('node', $instance[$model->alias][$model->primaryKey], 'The parent field is blank, but has a parent'); } } @@ -626,7 +626,7 @@ class TreeBehavior extends ModelBehavior { * @access protected */ function _setParent(&$model, $parentId = null) { - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); list($node) = array_values($model->find(array($scope, $model->escapeField() => $model->id), array($model->primaryKey, $parent, $left, $right), null, -1)); $edge = $this->__getMax($model, $scope, $right); @@ -710,7 +710,7 @@ class TreeBehavior extends ModelBehavior { * @access private */ function __sync(&$model, $shift, $dir = '+', $conditions = array(), $field = 'both') { - extract($this->settings[$model->currentModel]); + extract($this->settings[$model->alias]); if ($field == 'both') { $this->__sync($model, $shift, $dir, $conditions, $left); $field = $right; diff --git a/cake/libs/model/datasources/datasource.php b/cake/libs/model/datasources/datasource.php index 6d7ebd89b..a3125bebb 100644 --- a/cake/libs/model/datasources/datasource.php +++ b/cake/libs/model/datasources/datasource.php @@ -408,9 +408,9 @@ class DataSource extends Object { if (strpos($query, $key) !== false) { switch($key) { case '{$__cakeID__$}': - if (isset($data[$model->currentModel]) || isset($data[$association])) { - if (isset($data[$model->currentModel][$model->primaryKey])) { - $val = $data[$model->currentModel][$model->primaryKey]; + if (isset($data[$model->alias]) || isset($data[$association])) { + if (isset($data[$model->alias][$model->primaryKey])) { + $val = $data[$model->alias][$model->primaryKey]; } elseif (isset($data[$association][$model->primaryKey])) { $val = $data[$association][$model->primaryKey]; } @@ -435,8 +435,8 @@ class DataSource extends Object { if (isset($assoc['foreignKey'])) { $foreignKey = $assoc['foreignKey']; - if (isset($data[$model->currentModel][$foreignKey])) { - $val = $data[$model->currentModel][$foreignKey]; + if (isset($data[$model->alias][$foreignKey])) { + $val = $data[$model->alias][$foreignKey]; } elseif (isset($data[$association][$foreignKey])) { $val = $data[$association][$foreignKey]; } else { @@ -475,7 +475,7 @@ class DataSource extends Object { * @return unknown */ function resolveKey($model, $key) { - return $model->currentModel . $key; + return $model->alias . $key; } /** * Closes the current datasource. diff --git a/cake/libs/model/datasources/dbo/dbo_adodb.php b/cake/libs/model/datasources/dbo/dbo_adodb.php index 456e43492..716b978b5 100644 --- a/cake/libs/model/datasources/dbo/dbo_adodb.php +++ b/cake/libs/model/datasources/dbo/dbo_adodb.php @@ -334,7 +334,7 @@ class DboAdodb extends DboSource { */ function fields(&$model, $alias = null, $fields = null, $quote = true) { if (empty($alias)) { - $alias = $model->currentModel; + $alias = $model->alias; } if (!is_array($fields)) { diff --git a/cake/libs/model/datasources/dbo/dbo_firebird.php b/cake/libs/model/datasources/dbo/dbo_firebird.php index 272101d0d..de7d26440 100644 --- a/cake/libs/model/datasources/dbo/dbo_firebird.php +++ b/cake/libs/model/datasources/dbo/dbo_firebird.php @@ -189,7 +189,7 @@ class DboFirebird extends DboSource { * @return array Fields in table. Keys are name and type */ function describe(&$model) { - $this->modeltmp[$model->table] = $model->currentModel; + $this->modeltmp[$model->table] = $model->alias; $cache = parent::describe($model); if ($cache != null) { diff --git a/cake/libs/model/datasources/dbo/dbo_mssql.php b/cake/libs/model/datasources/dbo/dbo_mssql.php index 304864209..6d2dce3ef 100644 --- a/cake/libs/model/datasources/dbo/dbo_mssql.php +++ b/cake/libs/model/datasources/dbo/dbo_mssql.php @@ -265,7 +265,7 @@ class DboMssql extends DboSource { */ function fields(&$model, $alias = null, $fields = array(), $quote = true) { if (empty($alias)) { - $alias = $model->currentModel; + $alias = $model->alias; } $fields = parent::fields($model, $alias, $fields, false); $count = count($fields); diff --git a/cake/libs/model/datasources/dbo/dbo_postgres.php b/cake/libs/model/datasources/dbo/dbo_postgres.php index da95edb19..aec7b7c1f 100644 --- a/cake/libs/model/datasources/dbo/dbo_postgres.php +++ b/cake/libs/model/datasources/dbo/dbo_postgres.php @@ -374,7 +374,7 @@ class DboPostgres extends DboSource { */ function fields(&$model, $alias = null, $fields = array(), $quote = true) { if (empty($alias)) { - $alias = $model->currentModel; + $alias = $model->alias; } $fields = parent::fields($model, $alias, $fields, false); diff --git a/cake/libs/model/datasources/dbo_source.php b/cake/libs/model/datasources/dbo_source.php index 945386bcd..26962f4d7 100644 --- a/cake/libs/model/datasources/dbo_source.php +++ b/cake/libs/model/datasources/dbo_source.php @@ -220,9 +220,9 @@ class DboSource extends DataSource { $query = array(); foreach ($field as $f) { if (!is_array($params[$c]) && !empty($params[$c]) && $params[$c] !== true && $params[$c] !== false) { - $query[$args[2]->currentModel . '.' . $f] = '= ' . $params[$c]; + $query[$args[2]->alias . '.' . $f] = '= ' . $params[$c]; } else { - $query[$args[2]->currentModel . '.' . $f] = $params[$c]; + $query[$args[2]->alias . '.' . $f] = $params[$c]; } $c++; } @@ -552,7 +552,7 @@ class DboSource extends DataSource { $linkModel =& $model->{$assoc}; $external = isset($assocData['external']); - if ($model->currentModel == $linkModel->currentModel && $type != 'hasAndBelongsToMany' && $type != 'hasMany') { + if ($model->alias == $linkModel->alias && $type != 'hasAndBelongsToMany' && $type != 'hasMany') { if (true === $this->generateSelfAssociationQuery($model, $linkModel, $type, $assoc, $assocData, $queryData, $external, $null)) { $linkedModels[] = $type . '/' . $assoc; } @@ -568,7 +568,7 @@ class DboSource extends DataSource { } // Build final query SQL $query = $this->generateAssociationQuery($model, $null, null, null, null, $queryData, false, $null); - $resultSet = $this->fetchAll($query, $model->cacheQueries, $model->currentModel); + $resultSet = $this->fetchAll($query, $model->cacheQueries, $model->alias); if ($resultSet === false) { $model->onError(); @@ -633,7 +633,7 @@ class DboSource extends DataSource { for ($j = 0; $j < $count2; $j++) { $className = $key = $keys[$j]; - if ($model->currentModel != $className && !in_array($key, $filtered)) { + if ($model->alias != $className && !in_array($key, $filtered)) { if (!in_array($key, $filtering)) { $filtering[] = $key; } @@ -669,7 +669,7 @@ class DboSource extends DataSource { if ($query = $this->generateAssociationQuery($model, $linkModel, $type, $association, $assocData, $queryData, $external, $resultSet)) { if (!isset($resultSet) || !is_array($resultSet)) { if (Configure::read() > 0) { - e('