using System; using System.Collections.Generic; using System.Web.Mvc; using Kreta.BusinessLogic.Helpers; using Kreta.BusinessLogic.Security; using Kreta.Resources; using Kreta.Web.Areas.Orarend.Models; using Kreta.Web.Controllers; using Kreta.Web.Helpers; using Kreta.Web.Helpers.TabStrip; using Kreta.Web.Models.EditorTemplates; using Kreta.Web.Security; namespace Kreta.Web.Areas.Orarend.Controllers { [MvcRoleClaimsAuthorize(true)] [MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)] [MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)] public class AdminKozpontiOrakController : Controller { // GET: Orarend/AdminKozpontiOrak public ActionResult Index() { var model = new KozpontiOraModel(); var helper = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType()); model.HetirendJson = helper.GetHetirendek(); model.NaptariHetekHetirendJson = helper.GetNaptariHetekHetirendek(); var co = helper.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); var comboBoxHelperController = new ComboBoxHelperApiController(); model.Tanarok = comboBoxHelperController.GetTanarDropDown().ToJson(); model.Tantargyak = comboBoxHelperController.GetTantargyDropDown(filterNincsBeloleOra: true).ToJson(); model.Termek = comboBoxHelperController.GetTeremListWithoutGroupDropDown().ToJson(); model.TabList = GetKozpontiOraTabs(); return View("Index", model); } public ActionResult OpenSelectPopUp() { var model = new PopUpModel(new object(), "Select_PopUp"); model.AddCancelBtn(model, "KozpontiOra.selectPopUpWindowCancel"); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenDetailsGrid(AdminKozpontiOrakOsztalyokGridModel model) { return PartialView("DetailGrid", model); } public ActionResult OpenModositasPopUp(DateTime start, DateTime end, int hanyadikOra) { var model = new PopUpModel(new AdminKozpontiOrakSearchModel { Start = start, End = end, HanyadikOra = hanyadikOra }, "Modositas_PopUp"); model.AddCancelBtn(model, "KozpontiOra.modositasPopUpWindowCancel"); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenOrarendiOrakTorleseKozpontilagPopUp(DateTime start, DateTime end, int hanyadikOra) { var model = new PopUpModel(new AdminKozpontiOrakSearchModel { Start = start, End = end, HanyadikOra = hanyadikOra }, "OrarendiOrakTorleseKozpontilag_PopUp"); model.AddCancelBtn(model, "KozpontiOra.deleteOrarendiOrakKozpontilagPopUpWindowCancel"); model.AddBtn(model, "torlesBtn", CommonResource.Torles, "KozpontiOra.OrarendOrakTorleseKozpontilag"); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenOrarendiOrakVisszaallitasaPopUp(DateTime start, DateTime end, int hanyadikOra) { var model = new PopUpModel(new AdminKozpontiOrakSearchModel { Start = start, End = end, HanyadikOra = hanyadikOra }, "OrarendiOrakVisszaallitasa_PopUp"); model.AddBtn(model, "megseBtn", KozpontiOrakResource.KilepesVisszaallitasNelkul, "KozpontiOra.OrarendiOrakVisszaallitasaPopUpWindowCancel"); model.AddBtn(model, "torlesBtn", KozpontiOrakResource.KijeloltOrakVisszaallitasa, "KozpontiOra.OrarendOrakVisszaallitasa"); return PartialView(Constants.General.PopupView, model); } public ActionResult OpenCreate(TanoraAdatok model) { var rogzitesModel = AdminKozpontiOrakRogzitesModel.MapFromTanoraAdatok(model); return PartialView("Create", rogzitesModel); } public ActionResult OpenUtkozoOrak(DateTime start, DateTime end, int hanyadikora, List list) { var searchModel = new AdminKozpontiOrakSearchModel { Start = start.ToLocalTime(), End = end.ToLocalTime(), HanyadikOra = hanyadikora, KozpontiOrakList = list }; return PartialView("UtkozoOrarendiOrak", searchModel); } public ActionResult OpenCreateTanoraAdatok(AdminKozpontiOrakRogzitesModel model) { var tanoraAdataiModel = TanoraAdatok.MapFromKozpontiOrakRogzitesModel(model); tanoraAdataiModel.Sorszamozando = true; return PartialView("CreateTanoraAdatok", tanoraAdataiModel); } public ActionResult GetKozpontiOra(int index = 0) { var model = new KozpontiOraCalendarModel { Index = index }; return View("KozpontiOra_Tab", model); } private List GetKozpontiOraTabs() { return new List { new TabStripItemModel { ItemId = "0", ItemName = KozpontiOrakResource.KozpontiOraKezelese, Area = "Orarend", Controller = "AdminKozpontiOrak", Action = "GetKozpontiOra", RouteParameters = new Dictionary { { "index", "0"} } } }; } } }