public function afterSave(Model $Model, $created, $options = array()) { if ($created) { $id = $Model->getLastInsertID(); } else { $id = $Model->data[$Model->alias][$Model->primaryKey]; } if ($this->settings[$Model->alias]['autoRate']) { $this->rate($Model, $id, $created); } }
public function afterSave(Model $Model, $created, $options = array()) { if ($this->settings[$Model->alias]['_index'] !== false) { if (!$this->SearchIndex) { $this->SearchIndex = ClassRegistry::init('Searchable.SearchIndex', true); } if ($this->settings[$Model->alias]['foreignKey'] == 0) { $this->settings[$Model->alias]['foreignKey'] = $Model->getLastInsertID(); $this->SearchIndex->create(); $this->SearchIndex->save(array('SearchIndex' => array('model' => $Model->alias, 'association_key' => $this->settings[$Model->alias]['foreignKey'], 'data' => $this->settings[$Model->alias]['_index']))); } else { $searchEntry = $this->SearchIndex->find('first', array('conditions' => array('model' => $Model->alias, 'association_key' => $this->settings[$Model->alias]['foreignKey']))); $this->SearchIndex->save(array('SearchIndex' => array('id' => empty($searchEntry) ? 0 : $searchEntry['SearchIndex']['id'], 'model' => $Model->alias, 'association_key' => $this->settings[$Model->alias]['foreignKey'], 'data' => $this->settings[$Model->alias]['_index']))); } $this->settings[$Model->alias]['_index'] = false; $this->settings[$Model->alias]['foreignKey'] = false; } return true; }