/** * Custom search/filter * * @param Doctrine_query $q * @param string $str * @param string $root_tbl (optional) * @param string $root_alias (optional) */ protected function apply_search($q, $str, $root_tbl = null, $root_alias = null) { $emls = "e.sem_email like '%{$str}%'"; $srcs = "s.src_first_name like '{$str}%' OR s.src_last_name like '{$str}%'"; $orgs = "o.org_name like '{$str}%' OR o.org_display_name like '{$str}%'"; $q->addWhere("(({$emls}) OR ({$srcs}) OR ({$orgs}))"); }
/** * Custom query string (searches sources and responses) * * @param Doctrine_query $q * @param string $str * @param string $root_tbl (optional) * @param string $root_alias (optional) */ protected function apply_search($q, $str, $root_tbl = null, $root_alias = null) { $left = "'" . addslashes($str) . "%'"; $both = "'%" . addslashes($str) . "%'"; $wheres = array("(bs.bsrc_notes like {$both})", "(s.src_first_name like {$left} or s.src_last_name like {$left})", "(e.sem_email like {$left})", "(srsi.inq_ext_title like {$both})"); $q->addWhere('(' . implode(' or ', $wheres) . ')'); }