Add support for resume search in jobs
authorRaphaël Barrois <raphael.barrois@polytechnique.org>
Wed, 27 Jan 2010 21:26:40 +0000 (22:26 +0100)
committerRaphaël Barrois <raphael.barrois@polytechnique.org>
Sat, 13 Feb 2010 23:33:55 +0000 (00:33 +0100)
Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>
classes/userfilter.php

index c0a46f0..29430ab 100644 (file)
@@ -782,13 +782,13 @@ class UFC_Job_Description implements UserFilterCondition
     /** Meta-filters
      * Built with binary OR on UserFilter::JOB_*
      */
-    const ANY = 31;
+    const ANY = 63;
     const SECTORIZATION = 15;
 
     private $description;
     private $fields;
 
-    public function __construct($description)
+    public function __construct($description, $fields)
     {
         $this->fields = $fields;
         $this->description = $description;
@@ -801,6 +801,10 @@ class UFC_Job_Description implements UserFilterCondition
             $sub = $uf->addJobFilter();
             $conds[] = $sub . '.description LIKE ' . XDB::format('CONCAT(\'%\', {?}, \'%\')', $this->description);
         }
+        if ($this->fields & UserFilter::JOB_CV) {
+            $uf->requireProfiles();
+            $conds[] = 'p.cv LIKE ' . XDB::format('CONCAT(\'%\', {?}, \'%\')', $this->description);
+        }
         if ($this->fields & UserFilter::JOB_SECTOR) {
             $sub = $uf->addJobSectorizationFilter(UserFilter::JOB_SECTOR);
             $conds[] = $sub . '.name LIKE ' . XDB::format('CONCAT(\'%\', {?}, \'%\')', $this->description);
@@ -1983,6 +1987,7 @@ class UserFilter extends PlFilter
     const JOB_SUBSUBSECTOR = 4;
     const JOB_ALTERNATES = 8;
     const JOB_USERDEFINED = 16;
+    const JOB_CV = 32;
 
     /** Joins :
      * pj => profile_job