From 37c66b37add22cd437475edde686a03e56cdb4cc Mon Sep 17 00:00:00 2001 From: Thomas Rader Date: Wed, 16 Oct 2013 16:23:11 -0600 Subject: [PATCH 1/3] Update SitesHelper.php Modified beforeRender parameters to pass Strict checks. --- View/Helper/SitesHelper.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/View/Helper/SitesHelper.php b/View/Helper/SitesHelper.php index f051568..66e7388 100644 --- a/View/Helper/SitesHelper.php +++ b/View/Helper/SitesHelper.php @@ -17,7 +17,7 @@ public function __construct(View $view, $settings = array()) { /** * beforeRender */ - public function beforeRender() { + public function beforeRender($viewFile) { if (isset($this->params['admin'])) { echo $this->Html->css('/sites/css/admin_sites', null, array('inline' => false)); } From bb230da051f84b183d999602e8e12a66ad78b105 Mon Sep 17 00:00:00 2001 From: Thomas Rader Date: Wed, 16 Oct 2013 16:24:05 -0600 Subject: [PATCH 2/3] Update SiteFilterBehavior.php Modified afterFind parameters to pass Strict check. --- Model/Behavior/SiteFilterBehavior.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Model/Behavior/SiteFilterBehavior.php b/Model/Behavior/SiteFilterBehavior.php index 8dd4590..320a7b7 100644 --- a/Model/Behavior/SiteFilterBehavior.php +++ b/Model/Behavior/SiteFilterBehavior.php @@ -123,7 +123,7 @@ public function beforeFind(Model $model, $query) { /** * retrieve domain information */ - public function afterFind(Model $model, $results, $primary) { + public function afterFind(Model $model, $results, $primary = false) { if (!$primary || $this->settings[$model->alias]['enabled'] === false) { return $query; } From 2d449c70c9aebb0ef240f95c86345daf139bee6b Mon Sep 17 00:00:00 2001 From: Thomas Rader Date: Wed, 16 Oct 2013 22:25:24 -0600 Subject: [PATCH 3/3] Update SiteFilterBehavior.php beforeFind was duplicating records (specifically links) in cases where there was more than one site. The array_unique was appending the current site to the CONST = 1 and would always return "array(1,x)" where x is the "id" of the current site (if the current site id > 1). --- Model/Behavior/SiteFilterBehavior.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Model/Behavior/SiteFilterBehavior.php b/Model/Behavior/SiteFilterBehavior.php index 320a7b7..0352b14 100644 --- a/Model/Behavior/SiteFilterBehavior.php +++ b/Model/Behavior/SiteFilterBehavior.php @@ -37,11 +37,11 @@ public function beforeFind(Model $model, $query) { $this->_setupRelationships($model, $this->settings[$model->alias]); $site = Sites::currentSite(); - $sites = array(Sites::ALL_SITES); + //$sites = array(Sites::ALL_SITES); - if ($site) { - $sites = array_unique(array(Sites::ALL_SITES, $site['Site']['id'])); - } + //if ($site) { + // $sites = array_unique(array(Sites::ALL_SITES, $site['Site']['id'])); + //} $setting = Set::merge( array('relationship' => array(), 'joins' => array()), @@ -56,7 +56,7 @@ public function beforeFind(Model $model, $query) { // link to Site model $foreignKey = $joinConfig['alias']. '.site_id'; if (empty($joinConfig['conditions'][$foreignKey])) { - $joinConfig['conditions'][$foreignKey] = $sites; + $joinConfig['conditions'][$foreignKey] = $site; } $foreignKey = $joinConfig['alias']. '.' . Inflector::underscore($model->alias) . '_id'; @@ -77,7 +77,7 @@ public function beforeFind(Model $model, $query) { switch ($relation) { case 'belongsTo': - $query['conditions'][$model->alias . '.' . $foreignKey] = $sites; + $query['conditions'][$model->alias . '.' . $foreignKey] = $site; break; case 'hasAndBelongsToMany': @@ -106,10 +106,10 @@ public function beforeFind(Model $model, $query) { if (is_string($query['conditions'])) { $query['conditions'] = array( $query['conditions'], - $joinModel->alias . '.' . $associationForeignKey => $sites, + $joinModel->alias . '.' . $associationForeignKey => $site, ); } else { - $query['conditions'][$joinModel->alias . '.' . $associationForeignKey] = $sites; + $query['conditions'][$joinModel->alias . '.' . $associationForeignKey] = $site; } break; }