function beforeFind($queryData) { parent::beforeFind($queryData); if ($this->alias == 'Proposer1Representative') { $queryData['conditions']['Membership.member_status_id'] = 3; $queryData['conditions']['representative_type_id'] = 1; unset($queryData['page']); } if ($this->alias == 'Proposer1Representative' && !empty($queryData['list'])) { //&& empty($queryData['list']) $queryData['conditions']['Membership.member_status_id'] = 3; $queryData['fields'][0] = str_replace('{n}.', '', $queryData['list']['keyPath']); $queryData['fields'][1] = str_replace('{n}.', '', $queryData['list']['valuePath']); $queryData['fields'][2] = 'Membership.name'; $queryData['fields'][3] = 'Publication.publication_name'; $queryData['fields'][4] = 'Prefix.prefix_name'; $queryData['fields'][5] = 'Edition.city_name'; $this->_proposer1RepresentativeCustomOverride = true; if ($this->alias == 'Proposer1Representative') { $queryData['joins'][] = "JOIN `memberships` AS `Membership` ON `{$this->alias}`.`membership_id` = `Membership`.`id` AND `Membership`.`member_status_id` = 3 AND representative_type_id = 1"; $queryData['joins'][] = "JOIN `publications` AS `Publication` ON `Membership`.`publication_id` = `Publication`.`id`"; $queryData['joins'][] = "LEFT JOIN `prefixes` AS `Prefix` ON `Proposer1Representative`.`prefix_id` = `Prefix`.`id`"; $queryData['joins'][] = "JOIN `cities` AS `Edition` ON `Membership`.`edition_id` = `Edition`.`id`"; } $queryData['contain'] = array(); unset($queryData['page']); } if (!empty($queryData['list']) && empty($queryData['order'][0])) { $queryData['order'] = array("{$this->alias}.{$this->displayField} ASC"); } $role_id = null; if (class_exists('CakeSession') && isset($_SESSION) && !empty($_SESSION['Auth'])) { $auth = CakeSession::read('Auth'); if (!empty($auth)) { $user_id = @CakeSession::read('Auth.User.id'); $role_id = @CakeSession::read('Auth.User.role_id'); } } if ($role_id != 1 && $this->schema('active')) { $queryData['conditions']["{$this->alias}.active"] = 1; } return $queryData; }
public function beforeFind($query) { $this->setDataSource(Configure::read("qe.dbconfig")); return parent::beforeFind($query); // TODO: Change the autogenerated stub }
/** * Add the association on find if they turn on the association in settings * Only adds the bind if contained in the query * * @param Model model * @param array query * @return array $query */ public function beforeFind(Model $Model, $query = array()) { if (!$this->settings[$Model->alias]['bind']) { return $Model->beforeFind($query); } //Only contain if we have it contained, or if no contain is specified if (isset($query['contain']) && !in_array('IcingVersion', $query['contain']) && !key_exists('IcingVersion', $query['contain'])) { return $Model->beforeFind($query); } $bind_options = array(); if (isset($query['contain']['IcingVersion'])) { $bind_options = $query['contain']['IcingVersion']; } $this->bindIcingVersion($Model, $bind_options); return $Model->beforeFind($query); }
function beforeFind($queryData) { $results = parent::beforeFind($queryData); $this->lastAssociations = array('belongsTo' => $this->belongsTo, 'hasMany' => $this->hasMany, 'hasOne' => $this->hasOne, 'hasAndBelongsToMany' => $this->hasAndBelongsToMany); return $results; }