public static void Verification_Autorisation(string id_menu, string id_role, GB_Enum_Action_Controller action, ref Boolean autorisation_refuse) { try { // -- Réccupérer l'autorisation -- // Autorisation autorisation = Program.db.autorisations.FirstOrDefault(l => l.id_menu == id_menu && l.id_role == id_role); // -- Verifier la nature de l'autorisation -- // if (!((action == GB_Enum_Action_Controller.Ajouter) ? autorisation?.ajouter ?? false : (action == GB_Enum_Action_Controller.Modifier) ? autorisation?.modifier ?? false : (action == GB_Enum_Action_Controller.Supprimer) ? autorisation?.supprimer ?? false : (action == GB_Enum_Action_Controller.Imprimer) ? autorisation?.imprimer ?? false : (action == GB_Enum_Action_Controller.Lister) ? autorisation?.lister ?? false : false)) { // -- Mise à jour de l'etat de la variable -- // autorisation_refuse = true; // -- Jeter l'exception -- // throw new GBException(App_Lang.Lang.Permission_denied); } } #region Catch catch (Exception ex) { // -- Vérifier la nature de l'exception -- // if (!GBException.Est_GBexception(ex)) { // -- Log -- // GBClass.Log.Error(ex); // -- Renvoyer l'exception -- // throw new GBException(App_Lang.Lang.Error_message_notification); } else { // -- Renvoyer l'exception -- // throw new GBException(ex.Message); } } #endregion }
// -- Vérifier l'autorisation sur une action -- // public void Verifier_Autorisation(GB_Enum_Action_Controller action) { // -- Vérifier l'autorisation de l'action -- // AutorisationDAO.Verification(this.id_menu_actif, this.con.utilisateur.id_role, action); }