kreta/KretaWeb/Areas/Feljegyzes/Controllers/FaliujsagBejegyzesekController.cs
2024-03-13 00:33:46 +01:00

81 lines
3.7 KiB
C#

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
}
}