/** * @return Gpf_SqlBuilder_SelectBuilder */ protected function createSelectBuilder() { $filters = new Gpf_Rpc_FilterCollection($this->params); $selectBuilder = new Gpf_SqlBuilder_SelectBuilder(); $selectBuilder->select->add('v.'.Gpf_Db_Table_Views::ID, self::ID); $selectBuilder->select->add('v.'.Gpf_Db_Table_Views::NAME, self::VALUE); $selectBuilder->from->add(Gpf_Db_Table_Views::getName(), 'v'); $whereCond = new Gpf_SqlBuilder_CompoundWhereCondition(); $whereCond->add('v.' . Gpf_Db_Table_Views::ACCOUNTUSERID, '=', Gpf_Session::getAuthUser()->getUserData()->get(Gpf_Db_Table_Users::ID)); $whereCond->add('v.' . Gpf_Db_Table_Views::ACCOUNTUSERID, '=', '', 'OR'); $selectBuilder->where->addCondition($whereCond); if ($filters->isFilter('viewtype')) { $selectBuilder->where->add('v.' . Gpf_Db_Table_Views::VIEWTYPE, '=', $filters->getFilterValue('viewtype')); } return $selectBuilder; }