This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,22 @@
@using Kreta.Web.Areas.Adminisztracio.Models
@model NemMegtartottHelyettesitesBevitelModel
@{
string elmaradtOraformName = "ElmaradtOraForm";
}
@using (Html.KretaForm(elmaradtOraformName))
{
@Html.HiddenFor(x => x.HelyettesitesBevitelCalendarEventId)
<div class="container-fluid details">
<div class="row">
<div class="col-sm-12">
<h1 style="text-align: center;">
@OrarendResource.ElmaradtOra
</h1>
</div>
</div>
</div>
}

View file

@ -0,0 +1,173 @@
@using Kreta.Web.Areas.Adminisztracio.Models
@model HelyettesitesBevitelModel
@{
string formName = "HelyettesitesBevitelForm";
}
@using (Html.KretaForm(formName))
{
@Html.HiddenFor(x => x.HelyettesitesBevitelTanarId)
@Html.HiddenFor(x => x.HelyettesitesBevitelCalendarEventId)
@Html.HiddenFor(x => x.HelyettesitesBevitelHelyettesitesId)
@Html.HiddenFor(x => x.HelyettesitesBevitelGroupId)
@Html.HiddenFor(x => x.HelyettesitesBevitelCalendarOraType)
@Html.HiddenFor(x => x.HelyettesitesBevitelOraKezdeteDate)
@Html.HiddenFor(x => x.HelyettesitesBevitelOraVegeDate)
@Html.HiddenFor(x => x.IsTulora)
@Html.HiddenFor(x => x.IsTuloraMentes)
<div class="container-fluid details">
<div class="row">
@Html.KretaLabelFor(x => x.HelyettesitesBevitelOraKezdeteDateText, 3, 3)
@Html.KretaLabelFor(x => x.HelyettesitesBevitelOraVegeDateText, 3, 3)
</div>
<div class="row">
<div id="helyettesitesBevitelTanarNevDiv" class="col-xs-12">
@Html.KretaLabelFor(x => x.HelyettesitesBevitelTanarNev, 3, 3)
</div>
<div class="col-xs-4">
<div class="col-xs-12 tanarBox firstTanarBox">
<h3 class="tanarBoxHeader">@OrarendResource.Helyettesites</h3>
@Html.KretaComboBox("HelyettesitesOsztalybanSzakosTanarId", Model.HelyettesitesOsztalybanSzakosTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", OrarendResource.HelyettesitesOsztalybanSzakosTanar, false, false).AutoBind(true).RenderWithName(12, 12)
@Html.KretaComboBox("HelyettesitesNemOsztalybanSzakosTanarId", Model.HelyettesitesNemOsztalybanSzakosTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", OrarendResource.HelyettesitesNemOsztalybanSzakosTanar, false, false).AutoBind(true).RenderWithName(12, 12)
@Html.KretaComboBox("HelyettesitesOsztalybanNemSzakosTanarId", Model.HelyettesitesOsztalybanNemSzakosTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", OrarendResource.HelyettesitesOsztalybanNemSzakosTanar, false, false).AutoBind(true).RenderWithName(12, 12)
@Html.KretaComboBox("HelyettesitesNemOsztalybanNemSzakosTanarId", Model.HelyettesitesNemOsztalybanNemSzakosTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", OrarendResource.HelyettesitesNemOsztalybanNemSzakosTanar, false, false).AutoBind(true).RenderWithName(12, 12)
</div>
</div>
<div class="col-xs-4">
<div class="col-xs-12 tanarBox secondTanarBox">
<h3 class="tanarBoxHeader">@OrarendResource.Osszevonas</h3>
@Html.KretaComboBox("OsszevonasOsztalybanSzakosTanarId", Model.OsszevonasOsztalybanSzakosTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", OrarendResource.OsszevonasOsztalybanSzakosTanar, false, false).AutoBind(true).RenderWithName(12, 12)
@Html.KretaComboBox("OsszevonasNemOsztalybanSzakosTanarId", Model.OsszevonasNemOsztalybanSzakosTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", OrarendResource.OsszevonasNemOsztalybanSzakosTanar, false, false).AutoBind(true).RenderWithName(12, 12)
@Html.KretaComboBox("OsszevonasOsztalybanNemSzakosTanarId", Model.OsszevonasOsztalybanNemSzakosTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", OrarendResource.OsszevonasOsztalybanNemSzakosTanar, false, false).AutoBind(true).RenderWithName(12, 12)
@Html.KretaComboBox("OsszevonasNemOsztalybanNemSzakosTanarId", Model.OsszevonasNemOsztalybanNemSzakosTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", OrarendResource.OsszevonasNemOsztalybanNemSzakosTanar, false, false).AutoBind(true).RenderWithName(12, 12)
</div>
</div>
<div class="col-xs-4">
<div class="col-xs-12 tanarBox thirdTanarBox">
<h3 class="tanarBoxHeader">@OrarendResource.Felugyelet</h3>
@Html.KretaComboBox("FelugyeletTanarId", Model.FelugyeletTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", OrarendResource.FelugyeletTanar, false, false).AutoBind(true).RenderWithName(12, 12)
</div>
<div class="col-xs-12 tanarBox thirdTanarBox">
<h3 class="tanarBoxHeader">@OrarendResource.OsszesPedagogus</h3>
@Html.KretaComboBox("OsszesTanarId", Model.OsszesTanarList, new Dictionary<string, object> { { "class", "helyettesitesTanarComboBox" } }, "HelyettesitesBevitelHelper.helyettesitoTanarOnChange(this)", showUnknownValueMessage: false, isSingleElementSet: false).AutoBind(true).RenderWithoutName()
</div>
</div>
</div>
<div id="helyettesitesGyakorisagTipusDiv" class="row">
<div class="col-xs-6">
@Html.KretaRadioButtonListFor(m => m.HelyettesitesBevitelHelyettesitesGyakorisagTipus, Model.HelyettesitesGyakorisagTipusList, true, onChangeFunction: "HelyettesitesBevitelHelper.helyettesitesGyakorisagTipusOnChange(this)")
</div>
<div id="helyettesitesVegeDateDiv" class="col-xs-6 labelFix">
@Html.KretaDatePickerFor(m => m.HelyettesitesBevitelTartosHelyettesitesVegeDate).RenderWithName()
</div>
</div>
<div class="row">
@Html.KretaComboBoxFor(x => x.HelyettesitesBevitelHelyettesitesTipusId, Model.HelyettesitesTipusList).AutoBind(true).RenderWithName(3)
</div>
<div class="row">
@Html.KretaTextAreaFor(x => x.HelyettesitesBevitelHelyettesitesOka).RenderWithName(3, 9)
</div>
<div id="missingEmailCim" class="row">
<div class="col-xs-12 col-sm-12 col-md-12">
<label class="windowInputLabel">@AdminisztracioResource.PedagogusNincsEmailHelyettesites</label>
</div>
</div>
</div>
@Html.KretaValidationSummary()
}
<script>
$(document).ready(function () {
$("#missingEmailCim").hide();
if (CommonUtils.isNullOrEmpty("@Model.HelyettesitesBevitelHelyettesitesId")) {
$("#helyettesitesBevitelTanarNevDiv").detach();
$("#helyettesitesGyakorisagTipusDiv").show();
} else {
$("#helyettesitesBevitelTanarNevDiv").show();
$("#helyettesitesGyakorisagTipusDiv").detach();
}
setTanarComboboxDisabled("HelyettesitesOsztalybanSzakosTanarId", @(Model.HelyettesitesOsztalybanSzakosTanarList.Count));
setTanarComboboxDisabled("HelyettesitesNemOsztalybanSzakosTanarId", @(Model.HelyettesitesNemOsztalybanSzakosTanarList.Count));
setTanarComboboxDisabled("HelyettesitesOsztalybanNemSzakosTanarId", @(Model.HelyettesitesOsztalybanNemSzakosTanarList.Count));
setTanarComboboxDisabled("HelyettesitesNemOsztalybanNemSzakosTanarId", @(Model.HelyettesitesNemOsztalybanNemSzakosTanarList.Count));
setTanarComboboxDisabled("OsszevonasOsztalybanSzakosTanarId", @(Model.OsszevonasOsztalybanSzakosTanarList.Count));
setTanarComboboxDisabled("OsszevonasNemOsztalybanSzakosTanarId", @(Model.OsszevonasNemOsztalybanSzakosTanarList.Count));
setTanarComboboxDisabled("OsszevonasOsztalybanNemSzakosTanarId", @(Model.OsszevonasOsztalybanNemSzakosTanarList.Count));
setTanarComboboxDisabled("OsszevonasNemOsztalybanNemSzakosTanarId", @(Model.OsszevonasNemOsztalybanNemSzakosTanarList.Count));
setTanarComboboxDisabled("FelugyeletTanarId", @(Model.FelugyeletTanarList.Count));
setTanarComboboxDisabled("OsszesTanarId", @(Model.OsszesTanarList.Count));
$("#HelyettesitesWindow_wnd_title").text("@Html.Raw(HttpUtility.JavaScriptStringEncode(Model.HelyettesitesTitle))")
});
function setTanarComboboxDisabled(id, itemCount) {
if (itemCount === 0) {
var kendoComboBoxData = KretaComboBoxHelper.getKendoComboBoxData(id);
kendoComboBoxData.enable(false);
kendoComboBoxData.input.attr("placeholder", "@Html.Raw(CommonResource.NincsKivalaszthatoElem)");
}
}
</script>
<style type="text/css">
.tanarBox {
border-radius: 25px;
margin: 10px 5px;
padding: 10px 0;
}
.tanarBoxHeader {
text-align: center;
}
.firstTanarBox {
background-color: #7cc2dc;
height: 400px;
}
.secondTanarBox {
background-color: #eca4a3;
height: 400px;
}
.thirdTanarBox {
background-color: #f4c37d;
height: 170px;
}
.k-checkbox-label:before, .k-radio-label:before {
top: 1px;
}
.k-radio:checked + .k-radio-label:after, .k-checkbox:checked + .k-checkbox-label:after {
top: 5px;
}
.k-radio-label {
line-height: initial;
padding-left: 2em;
}
div.labelFix > div > label {
padding-top: 15px !important;
}
#helyettesitesGyakorisagTipusDiv {
display: none;
}
#helyettesitesVegeDateDiv {
display: none;
}
#helyettesitesBevitelTanarNevDiv {
display: none;
margin-top: 10px;
}
</style>

View file

@ -0,0 +1,611 @@
@using Kreta.Enums
@using Kreta.Enums.ManualEnums
@using Kreta.Web.Areas.Adminisztracio.Models;
@using Kreta.Web.Helpers
@model HelyettesitesekKezeleseModel
@{
string searchFormName = "searchForm";
string formName = "HelyettesitesBevitelForm";
string elmaradtOraFormName = "ElmaradtOraForm";
}
@{
Layout = "~/Views/Shared/_MasterLayout.cshtml";
}
@section AddSearchPanel {
@using (Html.SearchPanelSideBar(searchFormName, null, postSubmitFunction: "Helyettesitesek.FormSearch"))
{
@Html.KretaComboBoxFor(x => x.Tanar, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTanar" })).RenderSearchPanelSideBar()
}
}
@Html.KretaTabStripAjax("HelyettesitesekKezeleseTabStrip", Model.TabList, "Helyettesitesek.OnTabStripActivate", "Helyettesitesek.OnTabStripSelect")
@section AddJs {
@Scripts.Render("~/bundles/Calendar")
<script type="text/javascript">
var Helyettesitesek = (function() {
var helyettesitesek = function() {};
var calendars = {
Tanorai: "FullCalendar-0",
TanoranKivuliFoglalkozasok: "FullCalendar-1"
}
var calendarContainer = {
activeTabIndex: null,
tanarId: @Model.TanarId,
view: null
}
helyettesitesek.GetCalendarContainer = function() {
return calendarContainer;
}
helyettesitesek.SetCalendarContainerActiveTabIndex = function(value) {
calendarContainer.activeTabIndex = value;
}
helyettesitesek.SetCalendarContainerView = function(value) {
calendarContainer.view = value;
}
helyettesitesek.OnTabStripSelect = function(e) {
AjaxHelper.ShowIndicator();
Helyettesitesek.SetCalendarContainerActiveTabIndex(e.sender.select().index()); //A régi tab indexe, amelyikről ellép
var fullCalendarId = "FullCalendar-" + Helyettesitesek.GetCalendarContainer().activeTabIndex;
var view = $('#' + fullCalendarId).fullCalendar('getView');
Helyettesitesek.SetCalendarContainerView(view);
}
helyettesitesek.OnTabStripActivate = function(e) {
Helyettesitesek.SetCalendarContainerActiveTabIndex(e.sender.select().index()); //Az új tab indexe, amelyikre lép
var fullCalendarId = "FullCalendar-" + Helyettesitesek.GetCalendarContainer().activeTabIndex;
Helyettesitesek.CreateCalendar(fullCalendarId);
}
helyettesitesek.FormSearch = function (formId) {
var formContent = $("#" + formId).serializeObject();
calendarContainer.tanarId = formContent.Tanar;
var calendarId = "FullCalendar-" + calendarContainer.activeTabIndex;
var calendar = $("#" + calendarId);
var view = calendar.fullCalendar('getView');
calendarContainer.view = view;
Helyettesitesek.CreateCalendar(calendarId);
}
helyettesitesek.closeNaplozasWindow = function() {
KretaWindowHelper.destroyWindow("naplozasWindow");
};
helyettesitesek.CreateCalendar = function(calendarName) {
var tanarId = calendarContainer.tanarId;
$('#' + calendarName).fullCalendar('destroy');
if (CommonUtils.isNullOrEmpty(tanarId)) {
tanarId = -1;
}
var calendar = new SDAFullCalendar();
var calendarParameters = calendar.getParameters();
calendarParameters.calendar = calendarName;
calendarParameters.tanarId = tanarId;
calendarParameters.hetirendek = '@Model.HetirendJson';
calendarParameters.naptariHetekHetirend = '@Model.NaptariHetekHetirendJson';
calendarParameters.selectHelper = false;
calendarParameters.selectOverlapAllowed = false;
calendarParameters.naptariHetekUrl = '@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "CalendarApi", action = "GetTanevHetek"})';
if (calendarContainer.view) {
if (tanarId === -1) {
calendarParameters.defaultView = "agendaDay";
}
else if (calendarContainer.view.name != "agendaDay") {
calendarParameters.defaultView = calendarContainer.view.name;
}
else {
calendarParameters.defaultView = "workWeek";
}
calendarParameters.calendarStartDate = calendarContainer.view.intervalStart.format();
} else {
calendarParameters.calendarStartDate = "@DateTime.Now.ToString("yyyy-MM-dd")";
}
switch (calendarName) {
case calendars.Tanorai:
calendarParameters.minTime = '@Model.CsengetesiRendMinTime';
calendarParameters.maxTime = '@Model.CsengetesiRendMaxTime';
calendarParameters.orarendView = true;
calendarParameters.serviceURL = '@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "CalendarApi", action = "GetTanoraiHelyettesitesek"})';
calendarParameters.clickEvent = HelyettesitesBevitelHelper.CalendarClickEvent;
break;
case calendars.TanoranKivuliFoglalkozasok:
calendarParameters.minTime = '@Model.CalendarMinTime';
calendarParameters.maxTime = '@Model.CalendarMaxTime';
calendarParameters.serviceURL = '@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "CalendarApi", action = "GetTanoranKivuliHelyettesitesek"})';
calendarParameters.clickEvent = HelyettesitesBevitelHelper.CalendarClickEvent;
break;
}
calendar.initialize(calendarParameters);
// Amikor betöltődik, akkor hívja meg a hétválasztót, hogy kereséskor beálljon a megfelelő hétre
if (typeof setHetValaszto === 'function') {
$("#" + calendarName + "_tanevHetek").data('kendoComboBox').dataSource.one('change', setHetValaszto);
}
AjaxHelper.HideIndicator();
}
return helyettesitesek;
})();
</script>
<script type="text/javascript">
var HelyettesitesBevitelHelper = (function() {
var helyettesitesBevitelHelper = function() {};
var searchFormName = "@searchFormName";
var formName = "@formName";
var elmaradtOraFormName = "@elmaradtOraFormName";
var helyettesitesTipusComboBoxId = "HelyettesitesBevitelHelyettesitesTipusId";
var helyettesitesOsztalybanSzakosTanarComboBoxId = "HelyettesitesOsztalybanSzakosTanarId";
var helyettesitesNemOsztalybanSzakosTanarComboBoxId = "HelyettesitesNemOsztalybanSzakosTanarId";
var helyettesitesOsztalybanNemSzakosTanarComboBoxId = "HelyettesitesOsztalybanNemSzakosTanarId";
var helyettesitesNemOsztalybanNemSzakosTanarComboBoxId = "HelyettesitesNemOsztalybanNemSzakosTanarId";
var osszevonasOsztalybanSzakosTanarComboBoxId = "OsszevonasOsztalybanSzakosTanarId";
var osszevonasNemOsztalybanSzakosTanarComboBoxId = "OsszevonasNemOsztalybanSzakosTanarId";
var osszevonasOsztalybanNemSzakosTanarComboBoxId = "OsszevonasOsztalybanNemSzakosTanarId";
var osszevonasNemOsztalybanNemSzakosTanarComboBoxId = "OsszevonasNemOsztalybanNemSzakosTanarId";
var felugyeletTanarComboBoxId = "FelugyeletTanarId";
var osszesTanarComboBoxId = "OsszesTanarId";
var tanarComboBoxIdList = [
helyettesitesOsztalybanSzakosTanarComboBoxId,
helyettesitesNemOsztalybanSzakosTanarComboBoxId,
helyettesitesOsztalybanNemSzakosTanarComboBoxId,
helyettesitesNemOsztalybanNemSzakosTanarComboBoxId,
osszevonasOsztalybanSzakosTanarComboBoxId,
osszevonasNemOsztalybanSzakosTanarComboBoxId,
osszevonasOsztalybanNemSzakosTanarComboBoxId,
osszevonasNemOsztalybanNemSzakosTanarComboBoxId,
felugyeletTanarComboBoxId,
osszesTanarComboBoxId
];
var helyettesitesTanarComboBoxIdList = [
helyettesitesOsztalybanSzakosTanarComboBoxId,
helyettesitesNemOsztalybanSzakosTanarComboBoxId,
helyettesitesOsztalybanNemSzakosTanarComboBoxId,
helyettesitesNemOsztalybanNemSzakosTanarComboBoxId
];
var osszevonasTanarComboBoxIdList = [
osszevonasOsztalybanSzakosTanarComboBoxId,
osszevonasNemOsztalybanSzakosTanarComboBoxId,
osszevonasOsztalybanNemSzakosTanarComboBoxId,
osszevonasNemOsztalybanNemSzakosTanarComboBoxId
];
var url = {
OpenHelyettesitesPopUp: "@Url.Action("OpenHelyettesitesPopUp", "HelyettesitesekKezelese", new { area = "Adminisztracio" })",
InsertHelyettesites: "@Url.HttpRouteUrl("ActionApi", new { controller = "HelyettesitesekKezeleseApi", action = "InsertHelyettesites" })",
UpdateSingleHelyettesites: "@Url.HttpRouteUrl("ActionApi", new { controller = "HelyettesitesekKezeleseApi", action = "UpdateSingleHelyettesites" })",
UpdateGroupHelyettesites: "@Url.HttpRouteUrl("ActionApi", new { controller = "HelyettesitesekKezeleseApi", action = "UpdateGroupHelyettesites" })",
DeleteSingleHelyettesites: "@Url.HttpRouteUrl("ActionApi", new { controller = "HelyettesitesekKezeleseApi", action = "DeleteSingleHelyettesites" })",
DeleteGroupHelyettesites: "@Url.HttpRouteUrl("ActionApi", new { controller = "HelyettesitesekKezeleseApi", action = "DeleteGroupHelyettesites" })",
SaveNemMegtartottHelyettesites: "@Url.HttpRouteUrl("ActionApi", new { controller = "HelyettesitesekKezeleseApi", action = "SaveNemMegtartottHelyettesites" })",
NemMegtartottOraTorlese: "@Url.HttpRouteUrl("ActionApi", new {controller = "HelyettesitesekKezeleseApi", action = "NemMegtartottOraTorlese"})",
GetHelyettesitoEmailCim: "@Url.HttpRouteUrl("ActionApi", new { controller = "HelyettesitesekKezeleseApi", action = "GetHelyettesitoEmailCim" })",
OpenOracserePopUp: "@Url.Action("OpenOracserePopUp", "HelyettesitesekKezelese", new { area = "Adminisztracio" })",
SaveOracsere: "@Url.HttpRouteUrl("ActionApi", new { controller = "HelyettesitesekKezeleseApi", action = "SaveOracsere" })",
ValidateDeleteHelyettesites: "@Url.HttpRouteUrl("ActionApi", new { controller = "HelyettesitesekKezeleseApi", action = "ValidateDeleteHelyettesites" })"
};
helyettesitesBevitelHelper.Insert = function () {
if ($("#IsTulora").val() == "True") {
KretaWindowHelper.feedbackWindowWithThreeButton(Globalization.Kerdes, "@HelyettesitesResource.HelyettesitoTanarnakIsLegyenTulora", undefined,
"@CommonResource.Vissza", "@CommonResource.Igen", "@CommonResource.Nem", null, IgenInsertFn, NemInsertFn, "VisszaInsertId", "IgenInsertId", "NemInsertId");
}
else {
InsertCall();
}
}
function IgenInsertFn() {
$("#IsTuloraMentes").val(true);
InsertCall();
}
function NemInsertFn() {
$("#IsTuloraMentes").val(false);
InsertCall();
}
function InsertCall() {
AjaxHelper.DoPostElement(url.InsertHelyettesites, formName, responseOk);
}
helyettesitesBevitelHelper.UpdateSingle = function () {
if ($("#IsTulora").val() == "True") {
KretaWindowHelper.feedbackWindowWithThreeButton(Globalization.Kerdes, "@HelyettesitesResource.HelyettesitoTanarnakIsLegyenTulora", undefined,
"@CommonResource.Vissza", "@CommonResource.Igen", "@CommonResource.Nem", null, IgenUpdateSingleFn, NemUpdateSingleFn, "VisszaUpdateId", "IgenUpdateId", "NemUpdateId");
}
else {
AjaxHelper.DoPostElement(url.UpdateSingleHelyettesites, formName, responseOk);
}
}
function IgenUpdateSingleFn() {
$("#IsTuloraMentes").val(true);
UpdateSingle();
}
function NemUpdateSingleFn() {
$("#IsTuloraMentes").val(false);
UpdateSingle();
}
function UpdateSingle() {
AjaxHelper.DoPostElement(url.UpdateSingleHelyettesites, formName, responseOk);
}
helyettesitesBevitelHelper.UpdateGroup = function() {
AjaxHelper.DoPostElement(url.UpdateGroupHelyettesites, formName, responseOk);
}
helyettesitesBevitelHelper.DeleteSingleConfirm = function () {
var formData = $("#" + formName).toObject();
formData.HelyettesitesBevitelGroupId = null;
AjaxHelper.DoValidationPost(url.ValidateDeleteHelyettesites, formName, formData, helyettesitesBevitelHelper.DeleteSingle);
}
helyettesitesBevitelHelper.DeleteSingle = function (data) {
KretaWindowHelper.confirmWindow(
"@CommonResource.Kerdes",
data.Text,
function() {
AjaxHelper.DoPostElement(url.DeleteSingleHelyettesites, formName, responseOk);
}
);
}
helyettesitesBevitelHelper.DeleteGroupConfirm = function () {
var formData = $("#" + formName).toObject();
AjaxHelper.DoValidationPost(url.ValidateDeleteHelyettesites, formName, formData, helyettesitesBevitelHelper.DeleteGroup);
}
helyettesitesBevitelHelper.DeleteGroup = function (data) {
KretaWindowHelper.confirmWindow(
"@CommonResource.Kerdes",
data.Text,
function() {
AjaxHelper.DoPostElement(url.DeleteGroupHelyettesites, formName, responseOk);
}
);
}
helyettesitesBevitelHelper.CalendarClickEvent = function (e) {
if (e.oraType === 1 || e.oraType === 3) {
AjaxHelper.DoPost(url.OpenHelyettesitesPopUp, e, popUpHelyettesitesWindow);
}
if (e.oraType === 2 || e.oraType === 8) {
AjaxHelper.DoPost(url.OpenHelyettesitesPopUp, e, popUpElmaradtTanoraWindow);
}
};
helyettesitesBevitelHelper.HelyettesitesCancel = function() {
KretaWindowHelper.destroyWindow("HelyettesitesWindow");
};
helyettesitesBevitelHelper.ElmaradtOraCancel = function() {
KretaWindowHelper.destroyWindow("ElmaradtOraWindow");
};
helyettesitesBevitelHelper.HelyettesitesDelete = function() {
var groupId = $('#HelyettesitesBevitelGroupId').val();
if (CommonUtils.isNullOrEmpty(groupId)) {
helyettesitesBevitelHelper.DeleteSingleConfirm();
} else {
KretaWindowHelper.confirmWindow(
"@CommonResource.Kerdes",
"@OrarendResource.TartosHelyettesitesTorlesConfirmContent",
helyettesitesBevitelHelper.DeleteGroupConfirm,
null,
helyettesitesBevitelHelper.DeleteSingleConfirm,
"@OrarendResource.TartosHelyettesitesTorlese",
"@OrarendResource.JelenHelyettesitesTorlese",
true,
true
);
}
}
helyettesitesBevitelHelper.HelyettesitesSave = function() {
var helyettesitesId = $('#HelyettesitesBevitelHelyettesitesId').val();
if (CommonUtils.isNullOrEmpty(helyettesitesId)) {
helyettesitesBevitelHelper.Insert();
} else {
var groupId = $('#HelyettesitesBevitelGroupId').val();
if (CommonUtils.isNullOrEmpty(groupId)) {
helyettesitesBevitelHelper.UpdateSingle();
} else {
KretaWindowHelper.confirmWindow(
"@CommonResource.Kerdes",
"@OrarendResource.TartosHelyettesitesUpdateConfirmContent",
helyettesitesBevitelHelper.UpdateGroup,
null,
helyettesitesBevitelHelper.UpdateSingle,
"@OrarendResource.TartosHelyettesitesUpdate",
"@OrarendResource.JelenHelyettesitesUpdate",
true,
true
);
}
}
};
helyettesitesBevitelHelper.SaveNemMegtartottHelyettesites = function() {
KretaWindowHelper.confirmWindow("@CommonResource.Kerdes", "@OrarendResource.BiztosanNemMegtartottraAllitjaAzOrat", saveNemMegtartottHelyettesites);
};
helyettesitesBevitelHelper.NemMegtartottOraTorlese = function() {
KretaWindowHelper.confirmWindow("@CommonResource.Kerdes", "@CommonResource.BiztosanTorli", deleteNemMegtartottOra);
};
helyettesitesBevitelHelper.helyettesitoTanarOnChange = function(comboBox) {
var comboBoxId = comboBox.element.context.id;
$.each(tanarComboBoxIdList, function(index, id) {
if (comboBoxId !== id) {
var tanarComboBox = KretaComboBoxHelper.getKendoComboBoxData(id);
if (!CommonUtils.isUndefined(tanarComboBox) && !CommonUtils.isNullOrEmpty(tanarComboBox)) {
tanarComboBox.value(null);
}
}
});
var userId = comboBox.value();
if (!CommonUtils.isNullOrEmpty(userId)) {
var helyettesitesTipusComboBox = KretaComboBoxHelper.getKendoComboBoxData(helyettesitesTipusComboBoxId);
if (!CommonUtils.isUndefined(helyettesitesTipusComboBox) && !CommonUtils.isNullOrEmpty(helyettesitesTipusComboBox)) {
if (helyettesitesTanarComboBoxIdList.includes(comboBoxId) || comboBoxId === osszesTanarComboBoxId) {
helyettesitesTipusComboBox.value("@((int) HelyettesitesTipusEnum.szakszeru_helyettesites)");
}
if (osszevonasTanarComboBoxIdList.includes(comboBoxId)) {
helyettesitesTipusComboBox.value("@((int) HelyettesitesTipusEnum.oraosszevonas)");
}
if (comboBoxId === felugyeletTanarComboBoxId) {
helyettesitesTipusComboBox.value("@((int) HelyettesitesTipusEnum.nem_szakszeru_helyettesites_felugyelet_)");
}
}
$('#HelyettesitesBevitelTanarId').val(userId);
AjaxHelper.DoPostQuery(url.GetHelyettesitoEmailCim, null, { userId: userId }, resultHelyettesitoTanarChange);
} else {
resultHelyettesitoTanarChange(true);
}
};
helyettesitesBevitelHelper.helyettesitesGyakorisagTipusOnChange = function(radio) {
var datePickerId = "HelyettesitesBevitelTartosHelyettesitesVegeDate";
if (radio.value === "@((int) HelyettesitesGyakorisagTipusEnum.Tartos)") {
if (CommonUtils.isNullOrEmpty(KretaDateTimeHelper.getDate(datePickerId))) {
KretaDateTimeHelper.setToday(datePickerId);
}
$("#helyettesitesVegeDateDiv").show();
} else {
$("#helyettesitesVegeDateDiv").hide();
KretaDateTimeHelper.clear(datePickerId);
}
};
function resultHelyettesitoTanarChange(data) {
if (data === false) {
$("#missingEmailCim").show();
} else {
$("#missingEmailCim").hide();
}
}
function saveNemMegtartottHelyettesites() {
var element = $('#' + formName);
var data = element.toObject();
AjaxHelper.DoPost(url.SaveNemMegtartottHelyettesites, data, responseOk);
}
function popUpHelyettesitesWindow(data) {
if (CommonUtils.isNullOrEmpty(data)) {
return;
}
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "@OrarendResource.HelyettesitesFelviteleEsModositasa";
config.content = data;
config.width = 1090;
config.height = 783;
var modal = KretaWindowHelper.createWindow("HelyettesitesWindow", config);
KretaWindowHelper.openWindow(modal, true);
}
function popUpElmaradtTanoraWindow(data) {
if (CommonUtils.isNullOrEmpty(data)) {
return;
}
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "@OrarendResource.OraModositasa";
config.content = data;
config.width = 300;
config.height = 200;
config.minWidth = "300px";
var modal = KretaWindowHelper.createWindow("ElmaradtOraWindow", config);
KretaWindowHelper.openWindow(modal, true);
}
function deleteNemMegtartottOra() {
var element = $('#' + elmaradtOraFormName);
var data = element.toObject();
AjaxHelper.DoPost(url.NemMegtartottOraTorlese, data, responseOk);
}
function responseOk() {
KretaWindowHelper.successFeedBackWindow(KretaWindowHelper.destroyAllWindow);
Helyettesitesek.FormSearch(searchFormName);
}
/*Óracsere*/
helyettesitesBevitelHelper.OpenOracserePopUp = function (e) {
var helyettesitesreKivalasztottTanarId = 0;
if ($("#HelyettesitesOsztalybanSzakosTanarId").val() != "") {
helyettesitesreKivalasztottTanarId = $("#HelyettesitesOsztalybanSzakosTanarId").data('kendoComboBox').value();
}
else if ($("#HelyettesitesOsztalybanNemSzakosTanarId").val() != "") {
helyettesitesreKivalasztottTanarId = $("#HelyettesitesOsztalybanNemSzakosTanarId").data('kendoComboBox').value();
}
else if ($("#OsszevonasOsztalybanSzakosTanarId").val() != "") {
helyettesitesreKivalasztottTanarId = $("#OsszevonasOsztalybanSzakosTanarId").data('kendoComboBox').value();
}
else if ($("#OsszevonasOsztalybanNemSzakosTanarId").val() != "") {
helyettesitesreKivalasztottTanarId = $("#OsszevonasOsztalybanNemSzakosTanarId").data('kendoComboBox').value();
}
var radioValue = $("input[name='HelyettesitesBevitelHelyettesitesGyakorisagTipus']:checked").val();
var hasError = false;
if (radioValue !== "@((int) HelyettesitesGyakorisagTipusEnum.Egyedi)"){
KretaWindowHelper.warningWindow("@(CommonResource.Hiba)", "@ErrorResource.OracsereCsakEgyediHelyettesitesValasztasaEsetenLehetsees");
hasError = true;
}
if (!hasError && helyettesitesreKivalasztottTanarId == 0) {
KretaWindowHelper.warningWindow("@(CommonResource.Hiba)", "@ErrorResource.OracsereCsakHelyettesitesOsszevonasOszlopOsztalybanTanitoValasztasaEsetenLehetseges");
hasError = true;
}
if (!hasError) {
AjaxHelper.DoPost(url.OpenOracserePopUp, { helyettesitesreKivalasztottTanarId: helyettesitesreKivalasztottTanarId}, popUpOracsereWindow);
}
};
function popUpOracsereWindow(data) {
if (CommonUtils.isNullOrEmpty(data)) {
return;
}
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "@CommonResource.OracsereValaszto";
config.content = data;
config.width = 700;
config.height = 350;
var modal = KretaWindowHelper.createWindow("OracserePopUpWindow", config);
KretaWindowHelper.openWindow(modal, true);
}
helyettesitesBevitelHelper.OracsereCancel = function () {
KretaWindowHelper.destroyWindow("OracserePopUpWindow");
};
helyettesitesBevitelHelper.OracsereDatumChange = function(oracsereDatepicker) {
var model = {};
model.tanarId = $('#HelyettesitesBevitelTanarId').val();
model.oracsereDatum = oracsereDatepicker.value;
if (model.oracsereDatum != "" && model.oracsereDatum != 'undefined') {
AjaxHelper.DoPost("@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTanarOraiForOracsereByDate" })", model, setComboboxDataset);
}
else{
$("#oracsereDiv").addClass('disabledItem');
}
};
function setComboboxDataset(data)
{
$("#OracsereOrarendiOraId").kendoComboBox({
dataSource: data,
dataTextField: "Text",
dataValueField: "Value"
});
$("#oracsereDiv").removeClass('disabledItem');
}
function getOraCsereData()
{
var calendarElement = $('#' + formName);
var calendarData = calendarElement.toObject();
var popupElement = $('#OracsereForm');
var popupData = popupElement.toObject();
var oracsereData = {
calendarOrarendiOraId: calendarData.HelyettesitesBevitelCalendarEventId,
calendarOrarendiOraDatum: calendarData.HelyettesitesBevitelOraKezdeteDate,
oracsereOrarendiOraId: popupData.OracsereOrarendiOraId,
oracsereOrarendiOraDatum: popupData.OracsereOrarendiOraDatum,
isPrevalidation: null,
isTeremcsere: null,
popupIsValid: popupElement.valid()
};
return oracsereData;
}
helyettesitesBevitelHelper.SaveOracsere = function (e) {
var oracsereData = getOraCsereData();
oracsereData.isPrevalidation = true;
oracsereData.isTeremcsere = false;
if (oracsereData.popupIsValid) {
AjaxHelper.DoPost(url.SaveOracsere, oracsereData, saveOracsereResponse);
}
};
function saveOracsereResponse(data) {
if (data.WarningMessage != "") {
KretaWindowHelper.feedbackWindowWithThreeButton(Globalization.Kerdes, data.WarningMessage, undefined, "@Html.Raw(OrarendResource.OracsereTeremcsereNelkul)", "@Html.Raw(OrarendResource.OracsereTeremcserevel)", "@Html.Raw(CommonResource.Megse)", helyettesitesBevitelHelper.oracsereTeremcsereNelkul, helyettesitesBevitelHelper.oracsereTeremcserevel, null, "oracsereTeremcsereNelkulButton");
if (data.IsOracsereTeremcsereNelkulAktiv != true) {
$("#oracsereTeremcsereNelkulButton").addClass('disabledItem')
}
}
else {
responseOk();
}
}
helyettesitesBevitelHelper.oracsereTeremcsereNelkul = function (e) {
var oracsereData = getOraCsereData();
oracsereData.isPrevalidation = false;
oracsereData.isTeremcsere = false;
AjaxHelper.DoPost(url.SaveOracsere, oracsereData, responseOk);
};
helyettesitesBevitelHelper.oracsereTeremcserevel = function (e) {
var oracsereData = getOraCsereData();
oracsereData.isPrevalidation = false;
oracsereData.isTeremcsere = true;
AjaxHelper.DoPost(url.SaveOracsere, oracsereData, responseOk);
};
return helyettesitesBevitelHelper;
})();
</script>
}

View file

@ -0,0 +1,28 @@
@using Kreta.Web.Areas.Adminisztracio.Models
@model OracsereModel
@{
string oracsereformName = "OracsereForm";
List<SelectListItem> list = new List<SelectListItem>();
list.Add(new SelectListItem() { Value = "", Text = CommonResource.KeremValasszon, Selected = true });
}
@using (Html.KretaForm(oracsereformName))
{
@Html.KretaValidationSummary()
<div class="container-fluid details">
<div style="margin-left:18px"><h3>@(Model.HelyettesitesreKivalasztottTanarNeve)</h3></div>
<div class="row" style="margin-top:20px">
<div>
@Html.KretaDatePickerFor(x => x.OracsereOrarendiOraDatum, new Dictionary<string, object> { { "onchange", "HelyettesitesBevitelHelper.OracsereDatumChange(this)" } }).Min(Model.TanevElsoNapja).Max(Model.TanevUtolsoNapja).RenderWithName(5, 7)
</div>
</div>
<div class="row disabledItem" style="margin-top:20px" id="oracsereDiv">
<div>
@Html.KretaComboBoxFor(x => x.OracsereOrarendiOraId, list).Placeholder(CommonResource.KeremValasszon).RenderWithName(5, 7)
</div>
</div>
</div>
}

View file

@ -0,0 +1,9 @@
@using Kreta.Web.Areas.Adminisztracio.Models;
@model HelyettesitesekKezeleseOrarendModel
@{
Layout = null;
}
<div id="@Model.FullCalendarId"></div>

View file

@ -0,0 +1,9 @@
@using Kreta.Web.Areas.Adminisztracio.Models;
@model HelyettesitesekKezeleseOrarendModel
@{
Layout = null;
}
<div id="@Model.FullCalendarId"></div>