From 9f169a65993780eaee226924e6dfd148b398bdb9 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rapha=C3=ABl=20Barrois?= Date: Wed, 1 Sep 2010 11:15:23 +0200 Subject: [PATCH] Fix return value of UFCs when VIS_PUBLIC and filtering on private data. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Raphaël Barrois --- classes/userfilter.php | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/classes/userfilter.php b/classes/userfilter.php index 8259517..1c757b7 100644 --- a/classes/userfilter.php +++ b/classes/userfilter.php @@ -559,7 +559,7 @@ class UFC_Group implements UserFilterCondition { // Groups have AX visibility. if ($uf->getVisibilityLevel() == ProfileVisibility::VIS_PUBLIC) { - return ''; + return PlFilter::COND_TRUE; } $sub = $uf->addGroupFilter($this->group); $where = 'gpm' . $sub . '.perms IS NOT NULL'; @@ -588,7 +588,7 @@ class UFC_Binet implements UserFilterCondition { // Binets are private. if ($uf->getVisibilityLevel() != ProfileVisibility::VIS_PRIVATE) { - return ''; + return PlFilter::COND_TRUE; } $sub = $uf->addBinetsFilter(); return XDB::format($sub . '.binet_id IN {?}', $this->val); @@ -613,7 +613,7 @@ class UFC_Section implements UserFilterCondition { // Sections are private. if ($uf->getVisibilityLevel() != ProfileVisibility::VIS_PRIVATE) { - return ''; + return PlFilter::COND_TRUE; } $uf->requireProfiles(); return XDB::format('p.section IN {?}', $this->section); @@ -1058,7 +1058,11 @@ class UFC_Job_Description implements UserFilterCondition $jsub = $uf->addJobFilter(); // CV is private => if only CV requested, and not private, // don't do anything. Otherwise restrict to standard job visibility. - if ($this->fields != UserFilter::JOB_CV || $uf->getVisibilityLevel() == ProfileVisibility::VIS_PRIVATE) { + if ($this->fields == UserFilter::JOB_CV) { + if ($uf->getVisibilityLevel() != ProfileVisibility::VIS_PRIVATE) { + return PlFilter::COND_TRUE; + } + } else { $conds[] = $uf->getVisibilityCondition($jsub . '.pub'); } -- 2.1.4