/** * Search for a list of records that match the query. * * @param Model $model * @param array $query * @return array */ public function searchTypeAhead(Model $model, array $query) { if ($model->hasMethod('searchTypeAhead')) { return $model->searchTypeAhead($query); } $keyword = $query['term']; unset($query['term']); $results = $model->find('all', array('conditions' => array($model->alias . '.' . $model->displayField . ' LIKE' => '%' . $keyword . '%') + $query, 'order' => array($model->alias . '.' . $model->displayField => 'ASC'), 'contain' => false)); $data = array(); foreach ($results as $result) { $data[] = array('id' => $result[$model->alias][$model->primaryKey], 'title' => $result[$model->alias][$model->displayField]); } return $data; }