/** * Delete one or more documents * * @param $docs */ public function delete($docs) { if ($docs instanceof Document) { $this->obj_gateway->delete([$docs->getId()]); } elseif (is_string($docs)) { $this->obj_gateway->delete([$docs]); } elseif (is_array($docs)) { $arr_doc_ids = []; foreach ($docs as $doc) { if ($doc instanceof Document) { $arr_doc_ids[] = $doc->getId(); } elseif (is_string($doc)) { $arr_doc_ids[] = $doc; } else { throw new \InvalidArgumentException('Parameter must be one or more \\Search\\Document objects or ID strings'); } } $this->obj_gateway->delete($arr_doc_ids); } else { throw new \InvalidArgumentException('Parameter must be one or more \\Search\\Document objects or ID strings'); } }
function deleteAction() { $id = AF::get($_POST, 'id', 0); $modelsID = explode(',', $id); $errors = FALSE; foreach ($modelsID as $id) { $model = new Gateway(); $model->model_uset_id = $this->user->user_id; if ($model->findByPk($id)) { $model->delete($id); } else { $errors = TRUE; } if ($model->getErrors()) { $errors = TRUE; } unset($model); } if (isset($_POST['ajax'])) { AF::setJsonHeaders('json'); if ($errors) { Message::echoJsonError(__('gateway_not_deleted')); } else { $countE = AF::get($_POST, 'countE', 100000); if (count($modelsID) >= $countE) { $link = AF::link(array('gateways' => 'view')); Message::echoJsonRedirect($link); } else { Message::echoJsonSuccess(__('gateway_deleted')); } } } $this->redirect(); }