using System; using System.Collections.Generic; using System.Web.Mvc; using Kreta.BusinessLogic.Extensions; using Kreta.BusinessLogic.Helpers; using Kreta.BusinessLogic.Helpers.SystemSettings; using Kreta.BusinessLogic.Security; using Kreta.Enums; using Kreta.Enums.ManualEnums; using Kreta.Web.Areas.Orarend.Models; using Kreta.Web.Helpers; using Kreta.Web.Security; namespace Kreta.Web.Areas.Orarend.Controllers { [MvcRoleClaimsAuthorize(true)] [MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)] [MvcRolePackageAuthorize(TanevEnum.AktEsKovTanev, KretaClaimPackages.Tanar.ClaimValue)] public class TeremOrarendKeresoController : Controller { public ActionResult Index() { var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSystemConnectionType()); var sysParamList = systemSettingsHelper.GetSystemSettingValue>(RendszerBeallitasTipusEnum.Tanar_Feluleten_Orarend_Lathatosag); if (sysParamList.Contains("TeremOrarendKereso")) { return Redirect(Url.Content(CommonExtensions.GetDefaultPage())); } var model = new OrarendKeresoModel(); var orarendHelper = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType()); model.HetirendJson = orarendHelper.GetHetirendek(); model.NaptariHetekHetirendJson = orarendHelper.GetNaptariHetekHetirendek(); var co = orarendHelper.GetCalendarMinMax(); model.CalendarMinTime = co.CalendarMin.Subtract(new TimeSpan(0, 15, 0)); // "15 perccel legyen előbb" model.CalendarMaxTime = co.CalendarMax.Add(new TimeSpan(0, 15, 0)); // "15 perccel legyen később" model.CsengetesiRendMinTime = new TimeSpan(); model.CsengetesiRendMaxTime = new TimeSpan(0, 25, 0); ViewBag.napirendStart = systemSettingsHelper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Az_elektronikus_naplo_megjelenesenek_kezdoidopontja).RoundDownToNearestTargetMinute(15).ToString(); ViewBag.napirendEnd = systemSettingsHelper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Az_elektronikus_naplo_megjelenesenek_zaroidopontja); return View(model); } } }