コード例 #1
0
 private function _search_color($word, &$qt)
 {
     global $Conf;
     if (!$this->amPC) {
         return;
     }
     $word = strtolower($word);
     if (!preg_match(',\\A(any|none|' . TagInfo::BASIC_COLORS_PLUS . ')\\z,', $word)) {
         return new SearchTerm("f");
     }
     $any = $word === "any" || $word === "none";
     $qx = array();
     foreach (TagInfo::color_tags($any ? null : $word) as $tag) {
         array_push($qx, sqlq($tag), sqlq("{$this->cid}~{$tag}"));
         if ($this->privChair) {
             $qx[] = sqlq("~~{$tag}");
         }
     }
     if (count($qx)) {
         $qe = new SearchTerm("tag", self::F_XVIEW, array(" in ('" . join("','", $qx) . "')"));
     } else {
         $qe = new SearchTerm("f");
     }
     if ($word === "none") {
         $qe = SearchTerm::make_not($qe);
     }
     $qt[] = $qe;
 }