120 lines
No EOL
5.5 KiB
Text
120 lines
No EOL
5.5 KiB
Text
@using Kreta.BusinessLogic.Classes;
|
|
@using Kreta.Web.Helpers;
|
|
@using Kreta.Web.Helpers.Grid
|
|
@using Kreta.Web.Areas.Orarend.Models
|
|
@using Kreta.Enums.ManualEnums
|
|
|
|
@model Kreta.Web.Areas.Tanar.Models.FogadooraSearchModel
|
|
@section AddSearchPanel {
|
|
@using (Html.SearchPanelSideBar("searchForm", "InformaciokFogadoorakGrid"))
|
|
{
|
|
@Html.KretaComboBoxFor(x => x.TeremIdSrc, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetFogadooraTeremList" })).RenderSearchPanelSideBar()
|
|
@Html.KretaComboBoxFor(x => x.TanarIdSrc, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetFogadooraPedagogusList" })).RenderSearchPanelSideBar()
|
|
@Html.KretaRangeDatePickerSideBar(m => m.IdopontTolSrc, m => m.IdopontIgSrc)
|
|
@Html.KretaRangeTimePickerSideBar(m => m.IdointervallumTolSrc, m => m.IdointervallumIgSrc, interval: 30)
|
|
@Html.KretaCheckBoxFor(x => x.IsJelentkezheto).RenderSearchPanelSideBar()
|
|
}
|
|
}
|
|
@{
|
|
var grid = Html.KretaGrid<InformaciokFogadoorakGridModel>
|
|
(
|
|
name: "InformaciokFogadoorakGrid",
|
|
getUrl: new GridApiUrl("InformaciokFogadoorakApi", "GetFogadooraGrid"),
|
|
allowScrolling: true,
|
|
sort: sort =>
|
|
{
|
|
sort.Add(m => m.FogadooraKezdete).Ascending();
|
|
}
|
|
)
|
|
.Columns(columns =>
|
|
{
|
|
columns.Bound(m => m.Pedagogus);
|
|
columns.Bound(m => m.Terem);
|
|
columns.Bound(m => m.FogadooraKezdete).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDateAndTime]);
|
|
columns.Bound(m => m.FogadooraVege).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDateAndTime]);
|
|
})
|
|
.Sortable(sortable => sortable
|
|
.AllowUnsort(true)
|
|
.SortMode(GridSortMode.MultipleColumn));
|
|
|
|
grid.Columns(column =>
|
|
{
|
|
column.Template(@<text></text>).Width(200)
|
|
.ClientTemplate(
|
|
@"#if(IsJelentkezheto) {# "
|
|
+ @"#if(IsJelentkezesiHataridoElott && IsNemJelentkezett) {# "
|
|
+ grid.ComboBoxForColumnTemplate(Html.For<InformaciokFogadoorakGridModel>(), x => x.IdopontId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "InformaciokFogadoorakApi", action = "GetFogadooraIdopontok", fogadooraId = "#= ID #" }))
|
|
+ @" # } else {# #= IdopontStr # # } #"
|
|
+ @" #} else {# "
|
|
+ FogadooraResource.NemLehetJelentkezni
|
|
+ @" #}# "
|
|
).Title(FogadooraResource.Jelentkezes);
|
|
});
|
|
|
|
grid.Columns(column =>
|
|
{
|
|
column.Template(@<text></text>).Width(120)
|
|
.ClientTemplate(
|
|
@"#if(IsJelentkezheto) {#
|
|
#if(IsJelentkezesiHataridoElott && IsNemJelentkezett) {#
|
|
<button id='jelentkezes_#: ID #' type='button' data-role='button' class='btn btn-success' role='button' aria-disabled='false' tabindex='0' onclick='InformaciokFogadoorakHelper.jelentkezes(#= ID #)'>" + FogadooraResource.Jelentkezes + "</button>"
|
|
+ @" #} else if(IsKezdeteElott && IsJelentkezett) {# "
|
|
+ @"<button id='lemondas_#: ID #' type='button' data-role='button' class='btn btn-danger' role='button' aria-disabled='false' tabindex='0' onclick='InformaciokFogadoorakHelper.lemondas(#= IdopontGondviseloId #)'>" + FogadooraResource.Lemondas + "</button>"
|
|
+ @" #}# "
|
|
+ @" #}#");
|
|
});
|
|
}
|
|
|
|
<div>
|
|
@(grid)
|
|
</div>
|
|
|
|
<script type="text/javascript">
|
|
var InformaciokFogadoorakHelper = (function () {
|
|
var informaciokFogadoorakHelper = function () { };
|
|
|
|
var jelentkezesURL = "@Url.HttpRouteUrl("ActionApi", new { controller = "InformaciokFogadoorakApi", action = "Jelentkezes" })";
|
|
var lemondasURL = "@Url.HttpRouteUrl("ActionApi", new { controller = "InformaciokFogadoorakApi", action = "Lemondas" })";
|
|
var isSzabadIdopontURL =
|
|
"@Url.HttpRouteUrl("ActionApi", new {controller = "InformaciokFogadoorakApi", action = "isSzabadIdopontByFogadooraIdopontId" })";
|
|
var gridName = "InformaciokFogadoorakGrid";
|
|
|
|
var fogadooraId = -1;
|
|
informaciokFogadoorakHelper.jelentkezes = function (pFogadooraId) {
|
|
var idopontId = $("#InformaciokFogadoorakGrid_IdopontId_" + pFogadooraId).val();
|
|
fogadooraId = pFogadooraId;
|
|
AjaxHelper.DoGet(isSzabadIdopontURL,
|
|
{ fogadooraIdopontId: idopontId },
|
|
resultPopup);
|
|
}
|
|
|
|
function resultPopup(data) {
|
|
if (data === @((int)FogadooraJelentkezesAllapotEnum.LehetJelentkezni)) {
|
|
var idopontId = $("#InformaciokFogadoorakGrid_IdopontId_" + fogadooraId).val();
|
|
AjaxHelper.DoPostQuery(jelentkezesURL, null, { idopontId: idopontId }, jelentkezesLemondasComplete);
|
|
} else {
|
|
if (data === @((int) FogadooraJelentkezesAllapotEnum.MarJelentkeztek)) {
|
|
KretaWindowHelper.warningWindow('@FogadooraResource.Figyelem',
|
|
'@FogadooraResource.AzIdopontraMarJelentkeztek', function() {
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
});
|
|
} else {
|
|
KretaWindowHelper.warningWindow('@FogadooraResource.Figyelem',
|
|
'@FogadooraResource.FogadooraNemElerhetoMertTorlesreKerult', function() {
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
});
|
|
}
|
|
}
|
|
}
|
|
|
|
informaciokFogadoorakHelper.lemondas = function (idopontGondviseloId) {
|
|
AjaxHelper.DoPostQuery(lemondasURL, null, { idopontGondviseloId: idopontGondviseloId }, jelentkezesLemondasComplete);
|
|
}
|
|
|
|
function jelentkezesLemondasComplete() {
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
}
|
|
|
|
return informaciokFogadoorakHelper;
|
|
})();
|
|
</script> |