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

208 lines
No EOL
9.8 KiB
Text

@using Kreta.Framework;
@using Kreta.Web.Helpers.Grid;
@using Kreta.Web.Areas.Tantargy.Models
@using Kreta.Resources
@using Kreta.Enums.ManualEnums
@using Kreta.Web.Security;
@model TantervSearchModel
@{
Layout = "~/Views/Shared/_MasterLayout.cshtml";
}
@section AddSearchPanel {
@using (Html.SearchPanelSideBar("searchForm", "TantervekGrid"))
{
@Html.KretaTextBoxFor(model => model.TantervNev).RenderSearchPanelSideBar();
@Html.KretaComboBoxFor(x => x.JellemzoCsopTipID, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetCsoportTipusList" }), "Text", "Value").RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.KezdoEvfolyamID, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "TantervekApi", action = "GetEvfolyamListS" }), "Text", "Value").RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.VegzoEvfolyamID, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "TantervekApi", action = "GetEvfolyamListS" }), "Text", "Value").RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.IsKerettantervreEpul, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperEnumApi", action = "GetIgenNemEnumList" }), "Text", "Value").RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.IsKerettantervSrc, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperEnumApi", action = "GetIgenNemEnumList" }), "Text", "Value").RenderSearchPanelSideBar()
}
}
<script type="text/javascript">
var TantervGridHelper = (function () {
var tantervGridHelper = function () { };
tantervGridHelper.setRowDeleting = function (rowData) {
if (($("#TantervekGrid").data('kendoGrid').dataSource.data().length != 1 && '@Model.IsKovetkezoTanev' == 'False'))
return true;
}
return tantervGridHelper;
})();
</script>
@{
var rowFunctions = new List<RowFunction> { };
var functionCommands = new List<FunctionCommand> { };
rowFunctions.Add(new RowFunction { NameResourceId = 118 /*Adatok*/, ClientAction = "TantervHelper.openTantervProperties", IconEnum = GridRowFunctionIconEnum.Adatok });
if (!ClaimData.IsSelectedTanevIsElozo)
{
functionCommands.Add(new FunctionCommand { NameResourceId = 115 /*Új*/, ClientAction = "TantervHelper.openTantervModifyAdd" });
functionCommands.Add(new FunctionCommand { NameResourceId = 116 /*Módosítás*/, ClientAction = "TantervHelper.openSelectModWindow" });
rowFunctions.Add(new RowFunction { NameResourceId = 116 /*Módosítás*/, ClientAction = "TantervHelper.openTantervModifyAdd", IconEnum = GridRowFunctionIconEnum.Modositas });
}
var grid = Html.KretaGrid<TantervekGridModel>
(
name: "TantervekGrid",
getUrl: new GridApiUrl("TantervekApi", "GetTantervekGrid", new Dictionary<string, string> { }),
allowScrolling: true,
dataParameterFunction: "searchForm"
)
.SelectBoxColumn(Html, 0) /* */
.LinkButtonColumn("", c => c.Nev, "TantervHelper.openTantervModifyAdd", GridButtonsEnum.Reszletek)
.Columns(columns =>
{
columns.Bound(c => c.CsoportTipusa_DNAME);
columns.Bound(c => c.Evfolyamtol_DNAME).Width("10%");
columns.Bound(c => c.Evfolyamig_DNAME).Width("10%");
columns.Bound(c => c.IsKerettanterv_BNAME).Width("10%");
columns.Bound(c => c.Megjegyzes);
})
.RowFunction(Html, rowFunctions);
if (!ClaimData.IsSelectedTanevIsElozo)
{
grid.ConditionalRowFunction(Html, new List<RowFunction>
{
new RowFunction { NameResourceId = 117 /*Törlés*/, ClientAction = "TantervHelper.deleteTantervConfirmWindow", IconEnum = GridRowFunctionIconEnum.Torles }
}, "TantervGridHelper.setRowDeleting");
}
grid.FunctionCommand(Html, functionCommands)
.Sortable(sortable => sortable
.AllowUnsort(true)
.SortMode(GridSortMode.MultipleColumn));
}
<div>
@(grid)
</div>
<script type="text/javascript">
var TantervHelper = (function () {
var tantervHelper = function () { };
var formName = "TantervForm";
var gridName = "TantervekGrid";
var searchFormName = "searchForm";
var modFormName = "tantervModForm";
var url = {
OpenTantervProperties: "@Url.Action("OpenTantervProperties", "Tantervek" , new { area = "Tantargy" })",
OpenTantervModifyAddPopup: "@Url.Action("OpenTantervModifyAdd", "Tantervek", new { area = "Tantargy" })",
OpenModPopUp: "@Url.Action("OpenModPopUp", "Tantervek", new { area = "Tantargy" })",
SaveModifiedOrNewTanterv: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "TantervekApi", action = "SaveModifiedOrNewTanterv" })",
DeleteTanterv: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "TantervekApi", action = "DeleteTanterv" })",
SaveModTanterv: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "TantervekApi", action = "SaveModTanterv" })"
}
tantervHelper.openTantervProperties = function (rowData) {
AjaxHelper.DoGet(url.OpenTantervProperties, { tantervID: rowData.ID }, popupTantervProperties);
}
tantervHelper.propertiesCancel = function (rowData) {
KretaWindowHelper.destroyWindow("TantervPropertiesWindow");
}
tantervHelper.openTantervModifyAdd = function (rowData) {
if (CommonUtils.isNullOrUndefined(rowData.ID)) {
AjaxHelper.DoGet(url.OpenTantervModifyAddPopup, { tantervID: rowData.ID }, popupTantervAdd);
}
else {
AjaxHelper.DoGet(url.OpenTantervModifyAddPopup, { tantervID: rowData.ID }, popupTantervModify);
}
}
tantervHelper.openSelectModWindow = function (data) {
var selectedRows = KretaGridHelper.getSelectedRowsByGridName("TantervekGrid");
if (selectedRows.length == 0) {
KretaWindowHelper.warningWindow("@StringResourcesUtil.GetString(368)", "@(StringResourcesUtil.GetString(4554))"/*A csoportos módosításhoz legalább egy elem kiválasztása szükséges!*/);
}
else if (selectedRows.length == 1) {
AjaxHelper.DoGet(url.OpenTantervModifyAddPopup, { tantervID: selectedRows[0].ID }, popupTantervModify);
}
else {
var parameters = [];
$.each(selectedRows, function (index, value) {
parameters.push({ ID: value.ID, Nev: value.Nev });
});
AjaxHelper.DoPost(url.OpenModPopUp, parameters, popupTantervModify);
}
}
tantervHelper.modifySave = function () {
KretaGridHelper.resetHeaderCheckbox(gridName);
AjaxHelper.DoPostElement(url.SaveModTanterv, modFormName, modifyAddSaveFeedBackOk);
}
tantervHelper.modifyAddSave = function () {
AjaxHelper.DoPostElement(url.SaveModifiedOrNewTanterv, formName, modifyAddSaveFeedBackOk);
}
tantervHelper.modifyAddCancel = function (rowData) {
KretaWindowHelper.destroyWindow("TantervModifyAddWindow");
}
tantervHelper.confirmCsopModWindow = function () {
KretaWindowHelper.confirmWindow("@(CommonResource.Kerdes)", "@(StringResourcesUtil.GetString(4756))" /*Biztosan módosítani szeretné a kijelölt elemeket?*/, tantervHelper.modifySave);
}
tantervHelper.deleteTantervConfirmWindow = function (rowData) {
KretaWindowHelper.confirmWindow("@(CommonResource.Kerdes)", "@(CommonResource.BiztosanTorli)", deleteTanterv, rowData.ID);
}
function popupTantervProperties(data) {
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "@(StringResourcesUtil.GetString(1625))"; /*Tanterv adatai*/
config.content = data;
var modal = KretaWindowHelper.createWindow("TantervPropertiesWindow", config);
KretaWindowHelper.openWindow(modal, true);
}
function popupTantervModify(data) {
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "@(StringResourcesUtil.GetString(1627))"; /*Tanterv módosítása*/
config.content = data;
var modal = KretaWindowHelper.createWindow("TantervModifyAddWindow", config);
KretaWindowHelper.openWindow(modal, true);
}
function popupTantervAdd(data) {
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "@(StringResourcesUtil.GetString(3807))"; /*Új tanterv*/
config.content = data;
var modal = KretaWindowHelper.createWindow("TantervModifyAddWindow", config);
KretaWindowHelper.openWindow(modal, true);
}
function modifyAddSaveFeedBackOk() {
KretaWindowHelper.successFeedBackWindow(KretaWindowHelper.destroyAllWindow);
KretaGridHelper.refreshGridSearchPanel(gridName, searchFormName);
}
function deleteTanterv(data) {
AjaxHelper.DoPost(url.DeleteTanterv, data, deleteTantervResponseOk, deleteFeedbackFail);
KretaGridHelper.refreshGridSearchPanel(gridName, searchFormName);
}
function deleteTantervResponseOk() {
KretaWindowHelper.successFeedBackWindow(KretaWindowHelper.destroyAllWindow);
KretaGridHelper.refreshGridSearchPanel(gridName, searchFormName);
}
function deleteFeedbackFail(data) {
var message = data.responseJSON.Message;
KretaWindowHelper.feedbackWindow(Globalization.Hiba /*HIBA*/, message, true, KretaWindowHelper.destroyAllWindow);
}
return tantervHelper;
})();
</script>