using System.Web.Mvc; using Kreta.BusinessLogic.HelperClasses; using Kreta.BusinessLogic.Helpers; using Kreta.BusinessLogic.Security; using Kreta.Core; using Kreta.Web.Areas.Feljegyzes.Models; using Kreta.Web.Helpers; using Kreta.Web.Models.EditorTemplates; using Kreta.Web.Security; namespace Kreta.Web.Areas.Feljegyzes.Controllers { [MvcRoleClaimsAuthorize(true)] [MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)] [MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)] public class FaliujsagBejegyzesekController : AbstractFeljegyzesekController { public static string GridName => "FaliujsagBejegyzesekGrid"; public static string NewModifyPopupName => "New_Modify_Popup"; public static string NewModifyFormName => "FaliujsagBejegyzesekNewModifyForm"; public static string NewModifyPopupGridName => "FaliujsagBejegyzesekNewModifyPopupGrid"; public ActionResult Index() { return View(); } #region Popup actions [HttpPost] [MvcValidateAjaxAntiForgeryToken] [MvcRolePackageDenyAuthorize(KretaClaimPackages.Szuperadmin.ClaimValue)] [MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)] public ActionResult OpenNewModifyPopup(int? id) { bool isModify = id.IsEntityId(); FaliujsagBejegyzesModel faliujsagModel; var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()); var hasAdminJogosultsag = ClaimManager.HasPackage(KretaClaimPackages.Adminisztrator.ClaimValue); FeljegyzesHelperCo feljegyzesHelperCo = helper.GetFeljegyzesHelperCo(); if (isModify) { //NOTE: Az id az IdEntityId vizsgálat miatt nem lehet null! FeljegyzesCo co = helper.GetFeljegyzesById(id.Value); co.HasAdminJogosultsag = hasAdminJogosultsag; faliujsagModel = new FaliujsagBejegyzesModel(co); } else { faliujsagModel = new FaliujsagBejegyzesModel { IsMindenkinek = true, FeljegyzoId = ClaimData.FelhasznaloId, FeljegyzoNev = ClaimData.FelhasznaloNev, HasAdminJogosultsag = hasAdminJogosultsag, EsemenyDatuma = feljegyzesHelperCo.DefaultEsemenyDatuma }; } faliujsagModel.MinimumErvenyessegKezdete = feljegyzesHelperCo.MinimumErvenyessegKezdete; faliujsagModel.MaximumErvenyessegKezdete = feljegyzesHelperCo.MaximumErvenyessegKezdete; faliujsagModel.MinimumErvenyessegVege = feljegyzesHelperCo.MinimumErvenyessegVege; faliujsagModel.MaximumErvenyessegVege = feljegyzesHelperCo.MaximumErvenyessegVege; var javascriptHelper = hasAdminJogosultsag ? "FeljegyzesKeresoHelper" : "FaliujsagBejegyzesekHelper"; var popupModel = new PopUpModel(faliujsagModel, NewModifyPopupName); popupModel.AddCancelBtn(popupModel, $"{javascriptHelper}.newModifyPopupCancel"); popupModel.AddOkBtn(popupModel, "ModifyPopupHelper.saveFaliujsagPopup"); if (isModify) { popupModel.AddDeleteBtn(popupModel, $"{javascriptHelper}.newModifyPopupDelete"); } return PartialView(Constants.General.PopupView, popupModel); } #endregion Popup actions } }