/** * @param \Phalcon\Mvc\Model\ResultsetInterface $relations * @param array $errors * @return array $errors */ private function delete($relations, $errors = array()) { /** * @var \Phalcon\Mvc\Model\Resultset $relation */ foreach ($relations as $relation) { $this->securityManager->check(array('model' => $relation, 'action' => CrudOperations::DELETE, 'modelName' => get_class($relation))); if (!$relation->delete()) { $messages = $relation->getMessages(); $errors[] = implode(". ", $messages); } else { $this->logManager->deleteModel($relation); } } return $errors; }
/** * Delete record from DB. * @return array */ private function delete() { $params = Params::getMergeParams($this->request); if (empty($params['id'])) { return array('success' => false, 'msg' => 'param id is require'); } $id = intval($params['id']); $modelName = Analyzer::getModelName($this->request->get('_url')); /** * @var \Phalcon\Mvc\Model $model */ $model = $modelName::findFirst($id); if (!$model) { return array('success' => false, 'msg' => 'Record with id ' . $id . ' not found'); } $this->securityManager->check(array('model' => $model, 'action' => CrudOperations::DELETE, 'modelName' => $modelName, 'params' => $params)); $this->logManager->deleteModel($model); if ($model->delete()) { $this->logManager->deleteModel($model); return array('success' => true, 'msg' => 'Record with id ' . $id . ' has removed!'); } return array('success' => false, 'msg' => $this->jsonRecursiveGetMsg($model->getMessages())); }