/** * Méthode de suppression d'une fonction/traduction * @param type $params */ public static function delete($params = []) { $id = false; if (isset($params[0]) && isset($params[1])) { $type = $params[0]; $id = $params[1]; } $user = CodeController::getUser(); if ($type == 'structure') { if ($id && $user) { $structure = \Root\Src\Model\StructureModel::loadStructureById($id); if ($structure->getId() != Null) { if ($structure->getOwnerId() != $user->getId()) { AppController::setMsg('error', "La structure n'appartient pas à votre compte. Vous ne pouvez pas la modifier."); } else { $translation = new \Root\Src\Model\TranslationModel(); $translation->setLayoutId($structure->getId()); if (!$translation->delete()) { AppController::setMsg("error", "Une erreur est survenue lors de la suppression d'une des traductions."); } if (!$structure->delete()) { AppController::setMsg("error", "Une erreur est survenue lors de la suppression de la structure de traduction."); } else { AppController::setMsg('success', "La structure de traduction a bien été supprimée"); } } } else { AppController::setMsg("warning", "La structure n'existe pas ou a déjà été supprimée"); } } } else { if ($type == 'function') { if ($id && $user) { $function = \Root\Src\Model\AlgorithmModel::loadFunctionById($id); if ($function) { if ($function->getOwnerId() == $user->getId()) { if ($function->delete()) { AppController::setMsg("success", "La fonction a bien été supprimée."); } else { AppController::setMsg("error", "Un problème est survenu lors de la suppression. Veuillez reessayer plus tard."); } } else { AppController::setMsg("error", "La fonction n'appartient pas à votre compte, vous ne pouvez pas la supprimer"); } } else { AppController::setMsg("warning", "La fonction n'existe pas ou a déjà été supprimée."); } } else { AppController::setMsg("warning", "Vous ne pouvez pas supprimer la ressource demandée."); } } } self::render(); }
private function handleCodeOperations($request) { include_once __DIR__ . '/../dataController/CodeController.php'; if (isset($request[1])) { $codeController = new CodeController($request[1]); if (isset($request[2])) { $this->setResponseCodesAndData($codeController->getById($request[2]), 1); } else { $this->setResponseCodesAndData($codeController->getAll(), 1); } } else { $this->setResponseCodesAndData('specify code type (e.g. serverName/api/item_category)', 5); } }