107 lines
4.1 KiB
C#
107 lines
4.1 KiB
C#
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.Resources;
|
|
using Kreta.Web.Areas.Orarend.Models;
|
|
using Kreta.Web.Helpers;
|
|
using Kreta.Web.Helpers.TabStrip;
|
|
using Kreta.Web.Security;
|
|
using Kreta.Web.Utils;
|
|
|
|
namespace Kreta.Web.Areas.Orarend.Controllers
|
|
{
|
|
[MvcRoleClaimsAuthorize(true)]
|
|
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
|
|
[MvcRolePackageAuthorize(KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
|
public class CsoportOrarendController : Controller
|
|
{
|
|
public ActionResult Index()
|
|
{
|
|
var model = new CsoportVezetoOrarendModel();
|
|
var orarendHelper = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
model.HetirendJson = orarendHelper.GetHetirendek();
|
|
model.NaptariHetekHetirendJson = orarendHelper.GetNaptariHetekHetirendek();
|
|
|
|
#region Calendar megjelenítés
|
|
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);
|
|
|
|
#endregion Calendar megjelenítés
|
|
|
|
model.ShowKerdoivPopup = new KerdoivHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetShowKerdoivPopup(ClaimData.IsAlkalmazottPedagogus);
|
|
model.TabList = GetTanariOrarendTabs();
|
|
|
|
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
|
|
|
ViewBag.napirendStart = systemSettingsHelper.GetSystemSettingValue<TimeSpan>(RendszerBeallitasTipusEnum.Az_elektronikus_naplo_megjelenesenek_kezdoidopontja).RoundDownToNearestTargetMinute(15).ToString();
|
|
ViewBag.napirendEnd = systemSettingsHelper.GetSystemSettingValue<string>(RendszerBeallitasTipusEnum.Az_elektronikus_naplo_megjelenesenek_zaroidopontja);
|
|
|
|
return View("Index", model);
|
|
}
|
|
private List<TabStripItemModel> GetTanariOrarendTabs()
|
|
{
|
|
var list = new List<TabStripItemModel>();
|
|
|
|
var haladasiNaploFulTipusa = ProfileUtils.HaladasiNaploFulTipusa;
|
|
|
|
list.Add(new TabStripItemModel()
|
|
{
|
|
ItemId = "0",
|
|
ItemName = AdminisztracioResource.Tanorak,
|
|
Area = "Orarend",
|
|
Controller = "CsoportOrarend",
|
|
Action = "GetTanorak",
|
|
RouteParameters = new Dictionary<string, string>()
|
|
{
|
|
{"index", "0"}
|
|
},
|
|
IsActive = haladasiNaploFulTipusa == HaladasiNaploFulTipus.Tanorak
|
|
});
|
|
|
|
list.Add(new TabStripItemModel()
|
|
{
|
|
ItemId = "1",
|
|
ItemName = AdminisztracioResource.Napirend,
|
|
Area = "Orarend",
|
|
Controller = "CsoportOrarend",
|
|
Action = "GetTanoranKivuliFoglalkozasok",
|
|
RouteParameters = new Dictionary<string, string>()
|
|
{
|
|
{"index", "1"}
|
|
},
|
|
IsActive = haladasiNaploFulTipusa == HaladasiNaploFulTipus.Napirend
|
|
});
|
|
|
|
return list;
|
|
}
|
|
|
|
public ActionResult GetTanorak(int index = 0)
|
|
{
|
|
var model = new TanariOrarendTanorakModel()
|
|
{
|
|
Index = index
|
|
};
|
|
return View("Tanorak_Tab", model);
|
|
}
|
|
|
|
public ActionResult GetTanoranKivuliFoglalkozasok(int index = 1)
|
|
{
|
|
var model = new TanariOrarendTanoranKivuliFoglalkozasokModel()
|
|
{
|
|
Index = index
|
|
};
|
|
return View("TanoranKivuliFoglalkozasok_Tab", model);
|
|
}
|
|
}
|
|
}
|