/** * 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(); }
/** * 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(); }
/** * */ public static function giveHelp() { debug($_POST); if (isset($_POST['msgHelpedId']) && isset($_POST['helpMsg']) && AppController::getUser()) { $msg = new \Root\Src\Model\MailModel(); $msg->setContent($_POST['helpMsg']); $msg->setSubjectId($_POST['msgHelpedId']); $msg->setOwnerId(AppController::getUser()->getId()); debug($msg); $msg->send(); AppController::setMsg("success", "Votre aide a bien été publiée."); } else { if (!AppController::getUser()) { AppController::setMsg("warning", "Vous devez être connecté pour poster des messages d'aide"); } else { AppController::setMsg("warning", "Aucun message n'a été saisi, vous devez en saisir un pour obtenir de l'aide"); } } self::render(); }
/** * Fonction de mise à jour d'un compte */ public static function update() { if (isset($_POST['oldPassword'])) { $validPassword = AppController::getUser(); $validPassword->setPassword($_POST['oldPassword']); $validPassword = $validPassword->exist(); if (!$validPassword) { AppController::setMsg("warning", "Le mot de passe saisit n'est pas correct."); } if ($_POST['newPassword'] != $_POST['passwordConfirmation']) { AppController::setMsg("warning", "Les deux mots de passes ne sont pas les mêmes"); } if (!AppController::hasError()) { $user = AppController::getUser(); $user->setPassword($_POST['newPassword']); $user->updatePassword(); } } $user = AppController::getUser(); $user->setName($_POST['name']); $user->setEmail($_POST['email']); $user->setAvatar(''); $user->update(); }
/** * Méthode de confirmation d'un compte utilisateur * @param type $params */ public static function confirmAccount($params = []) { $id = null; $confirmToken = null; if (isset($params[0]) && isset($params[1])) { $id = $params[0]; $confirmToken = $params[1]; } $user = new \Root\Src\Model\UserModel('', ''); $user->setId($id); $user->setConfirmToken($confirmToken); $validAccount = $user->activate(); if ($validAccount) { AppController::setMsg("success", "Votre compte a bien été validé."); AppController::setMsg("success", "Votre êtes maintenant connecté."); AppController::setUser($validAccount); } else { AppController::setMsg("warning", "Information du compte non valide."); } AppController::render(); }
/** * */ public static function askForHelp() { debug($_POST); if (isset($_POST['id']) && isset($_POST['helpMsg']) && AppController::getUser()) { $msg = new \Root\Src\Model\MailModel(); $msg->setContent($_POST['helpMsg']); $msg->setSubjectId($_POST['id']); $msg->setOwnerId(AppController::getUser()->getId()); debug($msg); $msg->send(); AppController::setMsg("success", "Votre demande d'aide a bien été publiée."); } else { AppController::setMsg("warning", "Aucun message n'a été saisi, vous devez en saisir un pour obtenir de l'aide"); } unset($_POST['askForHelp']); self::render(); }