kreta/KretaWeb/Areas/Tanulo/Views/TanuloHaziFeladat/Index.cshtml
2024-03-13 00:33:46 +01:00

120 lines
No EOL
4.9 KiB
Text

@using Kreta.Web.Helpers.Grid;
@using Kreta.BusinessLogic.Classes;
@using Kreta.Web.Areas.Tanulo.Models;
@using Kreta.Resources;
@using Kreta.Enums.ManualEnums;
@using Kreta.Web.Security;
@model TanuloHaziFeladatSearchModel
@section AddSearchPanel {
@using (Html.SearchPanelSideBar("searchForm", "TanulotHaziFeladatkGrid", preSubmitFunction: "InformaciokOrarend.searchButtonDateValidation"))
{
@Html.KretaTextBoxFor(model => model.TanarNev).RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(model => model.TantargyId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = "GetTantargyList" }), useGroup: true).RenderSearchPanelSideBar()
@Html.KretaRangeDatePickerSideBar(model => model.HaziFeladatHataridoKezdoDatum, model => model.HaziFeladatHatairdo)
@Html.KretaCheckBoxFor(model => model.RegiHaziFeladatokElrejtese).RenderSearchPanelSideBar()
}
}
<div>
@{
var grid = Html.KretaGrid<TanuloHaziFeladatGridModel>
(
name: "TanulotHaziFeladatkGrid",
getUrl: new GridApiUrl("TanuloHaziFeladatApi", "GetTanulotHaziFeladatGrid", new Dictionary<string, string> { }),
dataParameterFunction: "searchForm",
allowScrolling: true,
allowExcelExport: false,
excelExportFileName:"Hazifeladatok",
sort: sort => sort.Add(c => c.HaziFeladatHatarido).Ascending()
)
.Columns(columns =>
{
columns.Bound(c => c.TantargyId).Hidden();
columns.Bound(c => c.EventId).Hidden();
columns.Bound(c => c.TantargyNev).Width("10%");
columns.Bound(c => c.TanarNeve).Width("10%");
columns.Bound(c => c.HaziFeladatSzoveg).Width("40%");
columns.Bound(c => c.HaziFeladatTenylegesRogzitesDatuma).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]);
columns.Bound(c => c.HaziFeladatHatarido).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]);
}).FunctionCommand(Html, new List<FunctionCommand>
{
new FunctionCommand { Name = ImportExportCommonResource.Export, ClientAction = "InformaciokOrarend.exportGrid" }
});
grid.RowFunction(Html, new List<RowFunction>
{
new RowFunction { Name = TanuloResource.Adatok, ClientAction = "InformaciokOrarend.openDetailTanuloHaziFeladatWindow", IconEnum = GridRowFunctionIconEnum.Adatok }
})
.Sortable(sortable => sortable
.AllowUnsort(true)
.SortMode(GridSortMode.MultipleColumn))
.AutoBind(true);
}
@(grid)
</div>
<script type="text/javascript">
var InformaciokOrarend = (function () {
var informaciokOrarend = function () { };
var openUrl = "@Url.Action("GetOrarendEvent", "InformaciokOrarend", new { area = Constants.Areas.Orarend })";
var exportUrl = "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.TanuloHaziFeladatApi, action = "GetHazifeladatExportGrid" })";
informaciokOrarend.openDetailTanuloHaziFeladatWindow = function (data) {
var tanuloId = "@ClaimData.FelhasznaloId";
var megoldottHF = data.MegoldottHF;
if (data.dirty) {
KretaGridHelper.addInputToRowData(data);
megoldottHF = data.input[0].value;
}
AjaxHelper.DoPost(openUrl, { eventId: data.EventId, isTanitasiOra_BOOL: data.isTanitasiOra_BOOL, haziFeladatRogzitesDatuma: data.OraDatuma, tanuloId: tanuloId, megoldva: megoldottHF }, popUpDetailWindow);
informaciokOrarend.detailOraInfoCancel = function () {
KretaWindowHelper.destroyWindow("detailOraAdatokWindow");
KretaGridHelper.refreshGrid("TanulotHaziFeladatkGrid");
}
};
informaciokOrarend.searchButtonDateValidation = function () {
KretaDateTimeHelper.validateDate($("#HaziFeladatHataridoKezdoDatum"));
KretaDateTimeHelper.validateDate($("#HaziFeladatHatairdo"));
};
function popUpDetailWindow(data) {
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "Tanulói óra adatai";
config.content = data;
var modal = KretaWindowHelper.createWindow("detailOraAdatokWindow", config);
KretaWindowHelper.openWindow(modal, true);
}
informaciokOrarend.exportGrid = function () {
KretaGridHelper.getExportBySearchForm("TanulotHaziFeladatkGrid", exportUrl, "searchForm");
}
return informaciokOrarend;
})();
</script>
<script type="text/javascript">
$(document).ready(function () {
$("#HaziFeladatHataridoKezdoDatum").change(function () {
datumMinFigyeles("#HaziFeladatHataridoKezdoDatum");
});
$("#HaziFeladatHatairdo").change(function () {
datumMinFigyeles("#HaziFeladatHatairdo");
});
function datumMinFigyeles(control) {
if (Date.parse($(control).val().replace(/\. /g, '/').replace(/\./, '')) < Date.parse("1753/01/01")) {
$(control).val("");
}
}
});
</script>