Exemple #1
0
 /**
  * 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();
 }
Exemple #2
0
 /**
  * Méthode de sauvegarde
  * @param type $params
  */
 public static function save($params = [])
 {
     isset($params['idStructure']) ? $idStructure = $params['idStructure'] : ($idStructure = '');
     $user = AppController::getUser();
     if ($user) {
         if (!(isset($_POST['structure']) && $_POST['structure'] != '')) {
             AppController::setMsg("warning", "La champs structure doit être rempli.");
         }
         if ($idStructure != '') {
             $test = \Root\Src\Model\StructureModel::loadStructureById($idStructure);
             if ($test->getOwnerId() != $user->getId()) {
                 AppController::setMsg("error", "Vous n'êtes pas propriétaire de cette structure vous ne pouvez pas la modifier");
             }
         }
         if (!AppController::hasError()) {
             $structure = new \Root\Src\Model\StructureModel($user->getId(), $_POST['structure']);
             $structure->setId($idStructure);
             $structure->record();
             if ($idStructure == '') {
                 $idStructure = \Root\Src\Model\ConnectionModel::getConnection()->lastInsertId();
             }
             $translation = new \Root\Src\Model\TranslationModel();
             $translation->setLayoutId($idStructure);
             $translation->setLanguage('c');
             $translation->setCode($_POST['translationToC']);
             $translation->record();
             $translation->setLanguage('java');
             $translation->setCode($_POST['translationToJava']);
             $translation->record();
             $translation->setLanguage('javascript');
             $translation->setCode($_POST['translationToJavascript']);
             $translation->record();
             $translation->setLanguage('python');
             $translation->setCode($_POST['translationToPython']);
             $translation->record();
             $translation->setLanguage('php');
             $translation->setCode($_POST['translationToPhp']);
             $translation->record();
             self::load([$idStructure]);
             die;
         }
     }
     self::render();
 }