345 lines
No EOL
14 KiB
Text
345 lines
No EOL
14 KiB
Text
@using Kreta.Enums
|
|
@using Kreta.Enums.ManualEnums
|
|
@using Kreta.Resources
|
|
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
|
@using Kreta.Web.Areas.Feljegyzes.Models
|
|
@using Kreta.Web.Helpers.Grid
|
|
|
|
@model FeljegyzesekSearchModel
|
|
|
|
@section AddCss {
|
|
@Styles.Render(Constants.General.FeljegyzesekCSS)
|
|
}
|
|
|
|
@{
|
|
string startPopupFormName = BaseBeirasokController.StartPopupFormName;
|
|
string startPopupId = BaseBeirasokController.StartPopupId;
|
|
|
|
string gridName = BaseBeirasokController.GridName;
|
|
|
|
string newModifyPopupName = BaseBeirasokController.NewModifyPopupName;
|
|
string newModifyFormName = BaseBeirasokController.NewModifyFormName;
|
|
}
|
|
|
|
@using (Html.KretaForm("searchForm", new Dictionary<string, object> { { "style", "display:none;" } }))
|
|
{
|
|
@Html.HiddenFor(m => m.CsoportIdSearch)
|
|
}
|
|
|
|
@{
|
|
var clientTemplateUrl = Url.Action("BeirasokReszletekGrid", Model.ControllerName, new { area = "Feljegyzes" });
|
|
|
|
var rowFunctionList = new List<RowFunction>
|
|
{
|
|
new RowFunction {Name = CommonResource.Uj, ClientAction = "BeirasokHelper.openNewWindow", IconEnum = GridRowFunctionIconEnum.Uj},
|
|
};
|
|
|
|
var functionCommandList = new List<FunctionCommand>();
|
|
if (!Model.IsNaploFeljegyzes)
|
|
{
|
|
functionCommandList.Add(new FunctionCommand { Name = CommonResource.Elolrol, ClientAction = "BeirasokHelper.openStartWindow", Classes = "kendo-gridFunctionKommandRed" });
|
|
}
|
|
functionCommandList.Add(new FunctionCommand { Classes = "beirasokInfoText clearFunctionCommand" });
|
|
|
|
var grid = Html.KretaGrid<BeirasokGridModel>
|
|
(
|
|
gridName,
|
|
new GridApiUrl(Model.ApiControllerName, "GetBeirasokGrid"),
|
|
dataBoundAdditionalFunction: "BeirasokHelper.dataBoundAdditionalFunction();",
|
|
clientTemplate: "beirasokDetailGrid-template",
|
|
clientTemplateUrl: clientTemplateUrl,
|
|
clientTemplateWholeDataRow: true,
|
|
allowFilterable: false,
|
|
dataParameterFunction: "searchForm",
|
|
allowPaging: false,
|
|
pageSizes: null,
|
|
sort: sort => sort.Add(s => s.TanuloNev).Ascending()
|
|
)
|
|
.TableHtmlAttributes( new { @class = "BeirasokGrid" })
|
|
.Columns(columns =>
|
|
{
|
|
columns.Bound(m => m.TanuloNev).HeaderHtmlAttributes(new { @class = "nevWidth" }).ClientTemplate(@"
|
|
<a class='kendoTooltip beirasokTanuloNevKendoTooltip gridLinkButton'
|
|
data-tanuloid='#: TanuloId #'
|
|
data-tanulonev='#: TanuloNev #'
|
|
data-osztaly='#: OsztalyNev #'
|
|
data-anyjaneve='#: AnyjaNeve #'
|
|
data-szuletesiido='#: SzuletesiIdoFormatted #'
|
|
>#: TanuloNev #</a>");
|
|
columns.Bound(m => m.Szeptember).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.Oktober).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.November).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.December).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.JanuarI).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.JanuarII).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.Februar).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.Marcius).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.Aprilis).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.Majus).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.Junius).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.Julius).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
columns.Bound(m => m.Augusztus).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
|
})
|
|
.RowFunction(Html, rowFunctionList)
|
|
.FunctionCommand(Html, functionCommandList)
|
|
.AutoBind(true);
|
|
}
|
|
|
|
<div>
|
|
@(grid)
|
|
</div>
|
|
|
|
@Html.KretaGridTemplate("beirasokDetailGrid-template")
|
|
|
|
@Html.KretaTooltipTemplate("kendoTooltip-feljegyzesTemplate",
|
|
@"<div class='kendoTooltip' style='#=target.data('szinezes')#'>
|
|
<table>
|
|
<tr>
|
|
<td style='padding-right: 5px'><b>Dátum:</b></td>
|
|
<td style='color: initial'>#:target.data('datum')#</td>
|
|
</tr>
|
|
<tr>
|
|
<td style='padding-right: 5px'><b>Típus:</b></td>
|
|
<td style='color: initial'>#:target.data('tipus')#</td>
|
|
</tr>
|
|
<tr>
|
|
<td style='padding-right: 5px'><b>Tanár:</b></td>
|
|
<td style='color: initial'>#:target.data('feljegyzoneve')#</td>
|
|
</tr>
|
|
<tr>
|
|
<td style='padding-right: 5px'><b>Cím:</b></td>
|
|
<td style='color: initial'>#:target.data('targy')#</td>
|
|
</tr>
|
|
<tr>
|
|
<td style='padding-right: 5px'><b>Tartalom:</b></td>
|
|
<td style='color: initial'>#=target.data('tartalom')#</td>
|
|
</tr>
|
|
</table>
|
|
</div>")
|
|
|
|
@Html.KretaTooltipTemplate("kendoTooltip-beirasokTanuloNevTemplate",
|
|
@"<div class='kendoTooltip'>
|
|
<table>
|
|
<tr>
|
|
<td style='padding-right: 5px'><b>Osztály:</b></td>
|
|
<td>#:target.data('osztaly')#</td>
|
|
</tr>
|
|
<tr>
|
|
<td style='padding-right: 5px'><b>Anyja neve:</b></td>
|
|
<td>#:target.data('anyjaneve')#</td>
|
|
</tr>
|
|
<tr>
|
|
<td style='padding-right: 5px'><b>Születési idő:</b></td>
|
|
<td>#:target.data('szuletesiido')#</td>
|
|
</tr>
|
|
</table>
|
|
</div>")
|
|
|
|
<script type="text/javascript">
|
|
|
|
var BeirasokHelper = (function () {
|
|
var beirasokHelper = function () { };
|
|
|
|
var startPopupFormName = "@startPopupFormName";
|
|
var startPopupId = "@startPopupId";
|
|
var startModel = null;
|
|
|
|
var gridName = "@gridName";
|
|
|
|
var newModifyPopupName = "@newModifyPopupName";
|
|
var newModifyFormName = "@newModifyFormName";
|
|
var currentOsztalyId = 0;
|
|
var currentTanuloNev;
|
|
|
|
var url = {
|
|
OpenStartPopup: "@Url.Action("OpenStartPopup", Model.ControllerName, new {area = "Feljegyzes" })",
|
|
OpenNewModifyPopup: "@Url.Action("OpenNewModifyPopup", Model.ControllerName, new {area = "Feljegyzes" })",
|
|
Save: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = Model.ApiControllerName, action = "SaveBeiras"})",
|
|
Delete: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = Model.ApiControllerName, action = "DeleteBeiras" })"
|
|
};
|
|
|
|
beirasokHelper.openStartWindow = function () {
|
|
if (!CommonUtils.isNull(startModel)) {
|
|
startModel = null;
|
|
KretaGridHelper.clearGridData(gridName);
|
|
}
|
|
$(".beirasokInfoText").html("");
|
|
AjaxHelper.DoPost(url.OpenStartPopup, null, popUpStartWindow);
|
|
}
|
|
|
|
function popUpStartWindow(data) {
|
|
var config = KretaWindowHelper.getWindowConfigContainer();
|
|
config.title = "@(FeljegyzesekResource.Beirasok)";
|
|
config.width = "500px";
|
|
config.content = data;
|
|
config.actions = ['Close'];
|
|
|
|
var modal = KretaWindowHelper.createWindow(startPopupId, config);
|
|
modal.setOptions({ height: 120 });
|
|
KretaWindowHelper.openWindow(modal, true);
|
|
}
|
|
|
|
beirasokHelper.startTovabb = function () {
|
|
var form = $("#" + startPopupFormName);
|
|
if (form.valid()) {
|
|
startModel = KretaGridHelper.getSearchParameterObject(startPopupFormName);
|
|
var osztalyText = KretaComboBoxHelper.getKendoComboBoxData("OsztalyCsoportId").text();
|
|
currentOsztalyId = KretaComboBoxHelper.getKendoComboBoxData("OsztalyCsoportId").value();
|
|
if (!CommonUtils.isNullOrEmpty(osztalyText)) {
|
|
$(".beirasokInfoText").html(kendo.htmlEncode(osztalyText) + " @(FeljegyzesekResource.Beirasok)".toLowerCase());
|
|
}
|
|
|
|
$("#CsoportIdSearch").val(startModel.OsztalyCsoportId);
|
|
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
KretaWindowHelper.destroyWindow(startPopupId);
|
|
}
|
|
}
|
|
|
|
beirasokHelper.dataBoundAdditionalFunction = function () {
|
|
var feljegyzesKendoTooltip = $(".feljegyzesKendoTooltip");
|
|
feljegyzesKendoTooltip.off("click");
|
|
KretaTooltipHelper.setTooltip(feljegyzesKendoTooltip, "#kendoTooltip-feljegyzesTemplate");
|
|
feljegyzesKendoTooltip.each(function () {
|
|
var modosithato = $(this).attr("data-modosithato");
|
|
if (CommonUtils.parseBool(modosithato)) {
|
|
setKendoTooltipClick($(this));
|
|
}
|
|
|
|
});
|
|
var tanuloNevKendoTooltip = $(".beirasokTanuloNevKendoTooltip");
|
|
tanuloNevKendoTooltip.off("click");
|
|
KretaTooltipHelper.setTooltip(tanuloNevKendoTooltip, "#kendoTooltip-beirasokTanuloNevTemplate");
|
|
setKendoTooltipClick(tanuloNevKendoTooltip);
|
|
}
|
|
|
|
function setKendoTooltipClick(kendoTooltip) {
|
|
kendoTooltip.click(function () {
|
|
var tanuloId = $(this).attr("data-tanuloid");
|
|
var tanuloNev = $(this).attr("data-tanulonev");
|
|
var tipusId = parseInt($(this).attr("data-tipusId"));
|
|
if (!CommonUtils.isNullOrEmpty(tanuloId)) {
|
|
var data = {
|
|
TanuloId: tanuloId,
|
|
TanuloNev: tanuloNev,
|
|
TipusId: tipusId
|
|
};
|
|
var feljegyzesId = $(this).attr("data-feljegyzesid");
|
|
if (!CommonUtils.isNullOrEmpty(feljegyzesId)) {
|
|
data.ID = feljegyzesId;
|
|
} else {
|
|
data.ID = null;
|
|
}
|
|
beirasokHelper.openEditorPopupByTipus(data);
|
|
}
|
|
});
|
|
}
|
|
|
|
beirasokHelper.openNewWindow = function (data) {
|
|
data.ID = null;
|
|
beirasokHelper.openEditorPopupByTipus(data);
|
|
}
|
|
|
|
beirasokHelper.openEditorPopupByTipus = function (data) {
|
|
var tipusId = data.TipusId;
|
|
if (tipusId === parseInt("@((int)EsemenyTipusEnum.ElektronikusUzenet)")) {
|
|
alert("not implemented elektronikus üzenet popup hívás");
|
|
} else if (tipusId === parseInt("@((int)EsemenyTipusEnum.FaliujsagBejegyzes)")) {
|
|
alert("not implemented faliújság bejegyzés üzenet popup hívás");
|
|
} else {
|
|
var osztalyCsoportId = $("#CsoportIdSearch").val();
|
|
var postData = {
|
|
id: data.ID,
|
|
tanuloId: data.TanuloId,
|
|
osztalyCsoportId: osztalyCsoportId
|
|
};
|
|
currentTanuloNev = data.TanuloNev;
|
|
AjaxHelper.DoPost(url.OpenNewModifyPopup, postData, popNewModifyWindow);
|
|
}
|
|
}
|
|
|
|
function popNewModifyWindow(data) {
|
|
var config = KretaWindowHelper.getWindowConfigContainer();
|
|
config.title = kendo.htmlEncode(currentTanuloNev);
|
|
config.content = data;
|
|
config.width = "1060px";
|
|
config.height = "615px";
|
|
|
|
var modal = KretaWindowHelper.createWindow(newModifyPopupName, config);
|
|
KretaWindowHelper.openWindow(modal, true);
|
|
}
|
|
|
|
beirasokHelper.newModifyPopupDelete = function () {
|
|
var data = $("#" + newModifyFormName).toObject();
|
|
deleteConfirm(data.Id, data.TanuloId);
|
|
}
|
|
|
|
beirasokHelper.deleteConfirmWindow = function (data) {
|
|
deleteConfirm(data.ID, data.TanuloId);
|
|
}
|
|
|
|
function deleteConfirm(id, tanuloId) {
|
|
var data = {
|
|
id: id,
|
|
tanuloId: tanuloId
|
|
}
|
|
KretaWindowHelper.confirmWindow(
|
|
"@(CommonResource.Kerdes)",
|
|
"@(CommonResource.BiztosanTorli)",
|
|
deleteFeljegyzes,
|
|
data
|
|
);
|
|
}
|
|
|
|
function deleteFeljegyzes(data) {
|
|
AjaxHelper.DoValidationPost(
|
|
url.Delete,
|
|
newModifyFormName,
|
|
data,
|
|
refreshGrid,
|
|
feedbackError
|
|
);
|
|
}
|
|
|
|
beirasokHelper.newModifyPopupSave = function () {
|
|
var form = $('#' + newModifyFormName);
|
|
if (form.valid()) {
|
|
var data = form.toObject();
|
|
AjaxHelper.DoValidationPost(
|
|
url.Save,
|
|
newModifyFormName,
|
|
data,
|
|
refreshGrid);
|
|
}
|
|
}
|
|
|
|
beirasokHelper.newModifyPopupCancel = function () {
|
|
KretaWindowHelper.destroyWindow(newModifyPopupName);
|
|
}
|
|
|
|
function feedbackError() {
|
|
var message = "@(CommonResource.Hiba)";
|
|
KretaWindowHelper.feedbackWindow("@(CommonResource.Hiba)", message, true, KretaWindowHelper.destroyAllWindow);
|
|
}
|
|
|
|
function refreshGrid() {
|
|
if (!CommonUtils.parseBool("@(Model.IsNaploFeljegyzes)")) {
|
|
KretaWindowHelper.destroyAllWindow();
|
|
} else {
|
|
KretaWindowHelper.destroyWindow(newModifyPopupName);
|
|
}
|
|
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
}
|
|
|
|
return beirasokHelper;
|
|
})();
|
|
|
|
$(document).ready(function () {
|
|
@if (!Model.IsNaploFeljegyzes)
|
|
{
|
|
<text>BeirasokHelper.openStartWindow();</text>
|
|
}
|
|
});
|
|
|
|
</script> |