Esempio n. 1
0
 public function buildCondition(PlFilter $uf)
 {
     $conds = array();
     $jsub = $uf->addJobFilter();
     if ($this->fields & UserFilter::JOB_USERDEFINED) {
         $conds[] = $jsub . '.description ' . XDB::formatWildcards(XDB::WILDCARD_CONTAINS, $this->description);
     }
     if ($this->fields & UserFilter::JOB_CV) {
         $uf->requireProfiles();
         // CV is private
         $conds[] = '( ' . $uf->getVisibilityConditionAbsolute(Visibility::EXPORT_PRIVATE) . ' AND p.cv ' . XDB::formatWildcards(XDB::WILDCARD_CONTAINS, $this->description) . ')';
     }
     if (count($conds) == 0) {
         return self::COND_TRUE;
     }
     return $uf->getVisibilityConditionForField($jsub . '.pub') . ' AND ( ' . implode(' OR ', $conds) . ' )';
 }