/**
  * Get the filter to use with the model for searching including model sorts, etc..
  *
  * @param boolean $useRequest Use the request as source (when false, the session is used)
  * @return array or false
  */
 public function getSearchFilter($useRequest = true)
 {
     $filter = parent::getSearchFilter($useRequest);
     $with = isset($filter['show_with_track']) ? $filter['show_with_track'] : false;
     $without = isset($filter['show_without_track']) ? $filter['show_without_track'] : false;
     if ($with) {
         if (!$without) {
             $filter[] = "EXISTS (SELECT * FROM gems__respondent2track\n                       WHERE gr2o_id_user = gr2t_id_user AND gr2o_id_organization = gr2t_id_organization)";
         }
     } elseif ($without) {
         $filter[] = "NOT EXISTS (SELECT * FROM gems__respondent2track\n                   WHERE gr2o_id_user = gr2t_id_user AND gr2o_id_organization = gr2t_id_organization)";
     } else {
         $filter[] = '1=0';
     }
     if (!isset($filter['show_with_track'])) {
         $filter['show_with_track'] = 1;
     }
     unset($filter['show_with_track'], $filter['show_without_track']);
     return $filter;
 }
 /**
  * Get the filter to use with the model for searching
  *
  * @param boolean $useRequest Use the request as source (when false, the session is used)
  * @return array or false
  */
 public function getSearchFilter($useRequest = true)
 {
     $filter = parent::getSearchFilter($useRequest);
     $where = \Gems_Snippets_AutosearchFormSnippet::getPeriodFilter($filter, $this->db);
     if ($where) {
         $filter[] = $where;
     }
     return $filter;
 }
 /**
  * Get the filter to use with the model for searching including model sorts, etc..
  *
  * @param boolean $useRequest Use the request as source (when false, the session is used)
  * @return array or false
  */
 public function getSearchFilter($useRequest = true)
 {
     $filter = parent::getSearchFilter($useRequest);
     if (isset($filter['gr2t_id_track']) && $filter['gr2t_id_track']) {
         switch ($filter['gr2t_id_track']) {
             case 'show_without_track':
                 $filter[] = "NOT EXISTS (SELECT * FROM gems__respondent2track\n                           WHERE gr2o_id_user = gr2t_id_user AND gr2o_id_organization = gr2t_id_organization)";
                 // Intentional fall through
             // Intentional fall through
             case 'show_all':
                 unset($filter['gr2t_id_track']);
                 break;
             case 'show_with_track':
                 unset($filter['gr2t_id_track']);
                 // Intentional fall through
             // Intentional fall through
             default:
                 $model = $this->getModel();
                 if (!$model->hasAlias('gems__respondent2track')) {
                     $model->addTable('gems__respondent2track', array('gr2o_id_user' => 'gr2t_id_user', 'gr2o_id_organization' => 'gr2t_id_organization'));
                 }
                 if (!$model->hasAlias('gems__tracks')) {
                     $model->addTable('gems__tracks', array('gr2t_id_track' => 'gtr_id_track'));
                 }
         }
     }
     if (!isset($filter['show_with_track'])) {
         $filter['show_with_track'] = 1;
     }
     unset($filter['__active_tracks']);
     return $filter;
 }