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,241 @@
@using Kreta.Web.Areas.Orarend.Models
@model CsoportOrarendTorleseModel
<style>
#csoport-select {
width: 100%;
}
#CsoportOrarendTorlesVisszaBtn {
margin-left: 80px;
}
#CsoportOrarendTorlesTorlesBtn {
margin-right: 80px;
}
.selected-torles-btn > button {
padding: 3px;
}
</style>
@using (Html.KretaForm("CsoportOrarendTorlesForm"))
{
@Html.KretaValidationSummary()
<div class="row">
<div class="@BootsrapHelper.GetSizeClasses(6)">
@Html.KretaComboBox("FeladatellatasiHelyCmb", Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = "GetFeladatellatasiHelyWithMukodesiHelyList" }), onChangeFunction: "CsoportOrarendTorleseHelper.cmbOnChange()", placeholder: CommonResource.PleaseChoose)
<select id="csoport-select" class="form-control" multiple="multiple" style="height: 400px;"></select>
</div>
<div class="@BootsrapHelper.GetSizeClasses(6)">
<div class="@BootsrapHelper.GetSizeClasses(12)">
@Html.Partial("KozosParameterekView")
</div>
<div class="@BootsrapHelper.GetSizeClasses(12)" style="margin-top: 40px;">
<span class="col-sm-4">@OrarendekTorleseResource.KivalasztottCsoportok</span>
<div id="selected-csoport-container" class="col-sm-12"></div>
</div>
</div>
</div>
<div class="row" style="margin-top: 40px;">
<div class="@BootsrapHelper.GetSizeClasses(6)">
@Html.KretaButton("CsoportOrarendTorlesVisszaBtn", CommonResource.Vissza, clickEventName: "OrarendekTorleseHelper.vissza")
</div>
<div class="@BootsrapHelper.GetSizeClasses(6) BtnDelete">
@Html.KretaButton("CsoportOrarendTorlesTorlesBtn", CommonResource.Torles, clickEventName: "function () { OrarendekTorleseHelper.torles(CsoportOrarendTorleseHelper.torles); }")
</div>
</div>
<div hidden>
@Html.KretaTextBoxFor(x => x.SelectedCsoportok)
</div>
}
<script type="text/javascript">
var CsoportOrarendTorleseHelper = (function () {
var csoportOrarendTorleseHelper = function () { };
var csoportSelectId = "#csoport-select";
var selectedCsoportContainerId = "#selected-csoport-container";
var formName = "CsoportOrarendTorlesForm";
var formId = "#" + formName;
var selectedCsoportokId = "#SelectedCsoportok";
var feladatellatasiHelyCmbName = "FeladatellatasiHelyCmb";
var csoportList = @Html.Raw(Json.Encode(Model.CsoportList));
var url = {
CsoportOrarendekTorlese: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.OrarendekTorleseApi, action = "CsoportOrarendekTorlese" })"
}
csoportOrarendTorleseHelper.cmbOnChange = function () {
setUpCsoportSelectRows();
}
function setUpCsoportSelectRows() {
var feladatellatasiHelyId = KretaComboBoxHelper.getKendoValue(feladatellatasiHelyCmbName);
$(csoportSelectId).empty();
var csoportokByFeladatellatasiHely = csoportList.filter(function (cs) {
return cs.FeladatellatasiHelyId == feladatellatasiHelyId;
});
csoportokByFeladatellatasiHely.forEach(function (item) {
createOptionRow(item);
});
}
function createOptionRow(csoport) {
var option = $("<option></option>")
.attr("value", csoport.Id)
.append(csoport.Nev);
if (csoport.IsSelected) {
option.attr("selected", true);
}
$(csoportSelectId).append(option);
}
csoportOrarendTorleseHelper.selectOption = function (o) {
var csoportId = $(o).attr("value");
if (!CommonUtils.isNullOrUndefined(csoportId)) {
var csoport = csoportList.filter(function (cs) {
return cs.Id == csoportId;
})[0];
csoport.IsSelected = !csoport.IsSelected;
if (csoport.IsSelected) {
createSelection(csoport);
addSelectedCsoportToInputString(csoport.Id);
}
else {
csoportOrarendTorleseHelper.deleteSelection(csoportId);
}
}
}
function createSelection(csoport) {
var nev = $("<div></div>")
.addClass("col-sm-6")
.append(csoport.Nev);
var torlesBtnName = "SelectedTorlesBtn" + csoport.Id;
var torlesBtn = $("<button></button>")
.addClass("k-button")
.attr("id", torlesBtnName)
.attr("onclick", "CsoportOrarendTorleseHelper.deleteSelection(" + csoport.Id + ");")
.append("@CommonResource.Eltavolitas");
var torles = $("<div></div>")
.addClass("col-sm-6 BtnDelete selected-torles-btn")
.append(torlesBtn);
var row = $("<div></div>")
.addClass("row")
.attr("data-csoport-id", csoport.Id)
.append(nev)
.append(torles);
$(selectedCsoportContainerId).append(row);
}
csoportOrarendTorleseHelper.deleteSelection = function (csoportId) {
var csoport = csoportList.filter(function (cs) {
return cs.Id == csoportId;
})[0];
csoport.IsSelected = false;
setUpCsoportSelectRows();
$(selectedCsoportContainerId + " > div.row[data-csoport-id='" + csoportId + "']").remove();
removeSelectedCsoportFromInputString(csoportId);
}
csoportOrarendTorleseHelper.torles = function () {
var form = $(formId);
if (form.valid()) {
var formData = form.toObject();
if (formData.hasOwnProperty(feladatellatasiHelyCmbName + "_input")) {
delete formData.FeladatellatasiHelyCmb_input;
}
if (formData.hasOwnProperty(feladatellatasiHelyCmbName)) {
delete formData.FeladatellatasiHelyCmb;
}
AjaxHelper.DoValidationPost(url.CsoportOrarendekTorlese, formName, formData, OrarendekTorleseHelper.torlesSuccessCallBack);
}
}
function addSelectedCsoportToInputString(csoportId) {
var json = parseSelectedCsoportokJson();
json.push({
Id: csoportId
});
stringifySelectedCsoportokJson(json);
$(selectedCsoportokId).valid();
}
function removeSelectedCsoportFromInputString(csoportId) {
var json = parseSelectedCsoportokJson();
json = json.filter(function (obj) {
return obj.Id != csoportId;
});
stringifySelectedCsoportokJson(json);
$(selectedCsoportokId).valid();
}
function parseSelectedCsoportokJson() {
var jsonString = $(selectedCsoportokId).val();
var jsonObj = null;
if (jsonString.length > 0) {
jsonObj = CommonUtils.JSONparse(jsonString);
}
else {
jsonObj = [];
}
return jsonObj;
}
function stringifySelectedCsoportokJson(json) {
if (json.length == 0) {
$(selectedCsoportokId).val("");
}
else {
$(selectedCsoportokId).val(JSON.stringify(json));
}
}
return csoportOrarendTorleseHelper;
})();
</script>
<script type="text/javascript">
$(document).ready(function () {
// https://stackoverflow.com/questions/24543862/selecting-multiple-from-an-html-select-element-without-using-ctrl-key
$("select").mousedown(function (e) {
e.preventDefault();
var select = this;
var scroll = select.scrollTop;
e.target.selected = !e.target.selected;
CsoportOrarendTorleseHelper.selectOption(e.target);
setTimeout(function () { select.scrollTop = scroll; }, 0);
$(select).focus();
}).mousemove(function (e) { e.preventDefault() });
})
</script>

View file

@ -0,0 +1,95 @@
@using Kreta.Web.Areas.Orarend.Models
@model FelhelyOrarendTorleseModel
@{
var formName = "felhelyOrarendTorleseForm";
}
<style type="text/css">
.k-checkbox-label::before {
top: 3px;
}
.k-checkbox-label {
line-height: 1.5em;
}
#FelhelyOrarendTorlesVisszaBtn {
margin-left: 80px;
}
#felhelyOrarendTorlesTorles {
margin-right: 80px;
}
</style>
<div style="padding: 40px;">@Html.Raw(OrarendekTorleseResource.FelhelyInformaciosSzoveg)</div>
@using (Html.KretaForm("FelhelyOrarendekTorlese", Constants.Controllers.OrarendekTorlese, FormMethod.Post, formName))
{
@Html.KretaValidationSummary()
<div style="display: none;">
@Html.KretaTextBoxFor(x => x.KivalasztottFelhelyekIds)
</div>
<div class="row">
<div class="@BootsrapHelper.GetSizeClasses(12)">
<div class="@BootsrapHelper.GetSizeClasses(6)">
<div class="hiba">Feladatellátási helyek:</div>
@Html.KretaCheckBoxList("FeladatEllatasiHelyIds", Model.FelhelyList, isPostAsArray: false)
</div>
<div class="@BootsrapHelper.GetSizeClasses(6)">
@Html.Partial("KozosParameterekView")
</div>
</div>
</div>
<div class="row" style="margin-top: 40px;">
<div class="@BootsrapHelper.GetSizeClasses(6)">
@Html.KretaButton("FelhelyOrarendTorlesVisszaBtn", CommonResource.Vissza, clickEventName: "OrarendekTorleseHelper.vissza")
</div>
<div class="@BootsrapHelper.GetSizeClasses(6) BtnDelete">
@Html.KretaButton("felhelyOrarendTorlesTorles", CommonResource.Torles, clickEventName: "function () { OrarendekTorleseHelper.torles(FelhelyOrarendTorleseHelper.submitForm); }")
</div>
</div>
}
<script type="text/javascript">
var FelhelyOrarendTorleseHelper = (function () {
var felhelyOrarendTorleseHelper = function () { };
var urls = {
FelhelyOrarendTorlesUrl: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.OrarendekTorleseApi, action = "FelhelyOrarendekTorlese" })"
}
felhelyOrarendTorleseHelper.submitForm = function () {
if ($('#@formName').valid()) {
var data = $('#@formName').toObject();
AjaxHelper.DoValidationPost(urls.FelhelyOrarendTorlesUrl, "@formName", data, OrarendekTorleseHelper.torlesSuccessCallBack, felhelyOrarendTorleseHelper.error);
}
}
felhelyOrarendTorleseHelper.error = function (data) {
if (data.responseJSON.ModelState === undefined) {
KretaWindowHelper.warningWindow("@Html.Raw(ErrorResource.Hiba)", data.responseJSON.Message);
}
}
return felhelyOrarendTorleseHelper;
})();
$(document).ready(function () {
$('[name^="FeladatEllatasiHelyIds"]').unbind("change");
$('[name^="FeladatEllatasiHelyIds"]').bind("change", felhelychanged);
});
function felhelychanged(e) {
var yourArray = [];
$("input:checkbox:checked").each(function () {
yourArray.push($(this).val());
});
var a = yourArray.join();
var container = $("#KivalasztottFelhelyekIds")
container.val(a);
container.trigger('keyup');
}
</script>

View file

@ -0,0 +1,92 @@
@{
Layout = "~/Views/Shared/_MasterLayout.cshtml";
}
<div id="orarendek-torlese-container" class="view-container" style="padding: 40px 0px;"></div>
<script type="text/javascript">
var OrarendekTorleseHelper = (function () {
var orarendekTorleseHelper = function () { };
var popupName = "SelectorPopup";
var viewContainerClassName = ".view-container";
var oraTipusRdoListContainerId = "#ora-tipus-rdo-list-container";
var url = {
OpenPopup: "@Url.Action("OpenSelectorPopup", Constants.Controllers.OrarendekTorlese, new { area = Constants.Areas.Orarend })",
LoadFeladatellatasiHelyView: "@Url.Action("LoadFeladatellatasiHelyView", Constants.Controllers.OrarendekTorlese, new { area = Constants.Areas.Orarend })",
LoadOsztalyView: "@Url.Action("LoadOsztalyView", Constants.Controllers.OrarendekTorlese, new { area = Constants.Areas.Orarend })",
LoadCsoportView: "@Url.Action("LoadCsoportView", Constants.Controllers.OrarendekTorlese, new { area = Constants.Areas.Orarend })",
}
orarendekTorleseHelper.openSelector = function () {
$(viewContainerClassName).empty();
var postData = { url: "@Request.Headers["Referer"]" };
AjaxHelper.DoPost(url.OpenPopup, postData, selectorPopup);
}
function selectorPopup(data) {
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "@OrarendekTorleseResource.OrarendekTorlese";
config.content = data;
config.width = 500;
config.height = 292;
var modal = KretaWindowHelper.createWindow(popupName, config);
KretaWindowHelper.openWindow(modal, true);
}
orarendekTorleseHelper.vissza = function () {
KretaWindowHelper.confirmWindow("@CommonResource.Kerdes", "@OrarendekTorleseResource.VisszaConfirmText", orarendekTorleseHelper.openSelector);
}
orarendekTorleseHelper.loadFeladatellatasiHelyView = function () {
AjaxHelper.DoPost(url.LoadFeladatellatasiHelyView, null, loadView);
$('.view-buttons').removeClass('hidden');
}
orarendekTorleseHelper.loadOsztalyView = function () {
AjaxHelper.DoPost(url.LoadOsztalyView, null, loadView);
}
orarendekTorleseHelper.loadCsoportView = function () {
AjaxHelper.DoPost(url.LoadCsoportView, null, loadView);
}
orarendekTorleseHelper.visszaUrl = function (url) {
window.location = url;
}
function loadView(data) {
$(viewContainerClassName).append(data);
KretaWindowHelper.destroyWindow(popupName);
}
orarendekTorleseHelper.torles = function (torlesFunction) {
KretaWindowHelper.confirmWindow("@CommonResource.Torles", "@OrarendekTorleseResource.TorlesConfirmText", torlesFunction);
}
orarendekTorleseHelper.rdoListOnChange = function () {
$(oraTipusRdoListContainerId).find("label.labelError").removeClass("labelError");
}
orarendekTorleseHelper.torlesSuccessCallBack = function (result) {
KretaWindowHelper.notification("@OrarendekTorleseResource.TorlesSikeresText", "success");
if (!CommonUtils.isNullOrEmpty(result) && result.isBase64()) {
var dataUri = "data:text/plain;base64," + result;
kendo.saveAs({
dataURI: dataUri,
fileName: "@OrarendekTorleseResource.ExportZipFileName"
});
}
}
return orarendekTorleseHelper;
})();
</script>
<script type="text/javascript">
$(document).ready(function () {
OrarendekTorleseHelper.openSelector();
});
</script>

View file

@ -0,0 +1,76 @@
@using Kreta.Web.Areas.Orarend.Models
@model BaseOrarendTorleseModel
<div class="@BootsrapHelper.GetSizeClasses(6)" style="padding-top: 20px;">
@Html.Raw(OrarendekTorleseResource.OraTipusText)
</div>
<div id="ora-tipus-rdo-list-container" class="@BootsrapHelper.GetSizeClasses(6)">
@Html.KretaRadioButtonListFor(x => x.OraTipus, Model.OraTipusok, isNeedValidation: true, onChangeFunction: "OrarendekTorleseHelper.rdoListOnChange()")
</div>
<div class="@BootsrapHelper.GetSizeClasses(4)">
@Html.KretaDatePickerFor(x => x.KezdeteDatum).Min(Model.MinDatum).Max(Model.MaxDatum)
</div>
<div class="@BootsrapHelper.GetSizeClasses(2)" style="height: 40px; line-height: 40px;">
<span>-tól</span>
</div>
<div class="@BootsrapHelper.GetSizeClasses(4)">
@Html.KretaDatePickerFor(x => x.VegeDatum).Min(Model.MinDatum).Max(Model.MaxDatum)
</div>
<div class="@BootsrapHelper.GetSizeClasses(2)" style="height: 40px; line-height: 40px;">
<span>-ig</span>
</div>
<script type="text/javascript">
$(document).ready(function () {
$('label[for^="OraTipus"]').css({ paddingLeft: "2em", lineHeight: "0.7em" });
var mask = "0000. 00. 00.";
var format = "yyyy. MM. dd.";
var culture = "en-US";
var kezdeteDatum = $("#KezdeteDatum");
kezdeteDatum.kendoMaskedTextBox({
mask: mask,
culture: culture
});
kezdeteDatum.kendoDatePicker({
format: format
});
kezdeteDatum.closest(".k-datepicker")
.add(kezdeteDatum)
.removeClass("k-textbox");
var vegeDatum = $("#VegeDatum");
vegeDatum.kendoMaskedTextBox({
mask: mask,
culture: culture
});
vegeDatum.kendoDatePicker({
format: format
});
vegeDatum.closest(".k-datepicker")
.add(vegeDatum)
.removeClass("k-textbox");
$("#orarendek-torlese-container > form").kendoValidator({
rules: {
dateValidation: function (input, params) {
if (input.is("[name$='Datum']") && input.val() != "") {
var date = kendo.parseDate(input.val(), format);
if (!date) {
input.val("");
}
}
return true;
}
}
});
});
</script>

View file

@ -0,0 +1,312 @@
@using Kreta.Web.Areas.Orarend.Models
@model OsztalyOrarendTorleseModel
<style>
#osztaly-select {
width: 100%;
}
#OsztalyOrarendTorlesVisszaBtn {
margin-left: 80px;
}
#OsztalyOrarendTorlesTorlesBtn {
margin-right: 80px;
}
.selected-torles-btn > button {
padding: 3px;
}
</style>
@using (Html.KretaForm("OsztalyOrarendTorlesForm"))
{
@Html.KretaValidationSummary()
<div class="row">
<div class="@BootsrapHelper.GetSizeClasses(6)">
@Html.KretaComboBox("FeladatellatasiHelyCmb", Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = "GetFeladatellatasiHelyWithMukodesiHelyList" }), onChangeFunction: "OsztalyOrarendTorleseHelper.cmbOnChange()", placeholder: CommonResource.PleaseChoose)
<select id="osztaly-select" class="form-control" multiple="multiple" style="height: 400px;"></select>
</div>
<div class="@BootsrapHelper.GetSizeClasses(6)">
<div class="@BootsrapHelper.GetSizeClasses(12)">
@Html.Partial("KozosParameterekView")
</div>
<div class="@BootsrapHelper.GetSizeClasses(12)" style="margin-top: 40px;">
<span class="col-sm-3">@OrarendekTorleseResource.KivalasztottOsztalyok</span>
<span class="col-sm-3" style="text-align: center">@OrarendekTorleseResource.OsztalybontottCsoportok</span>
<span class="col-sm-3" style="text-align: center">@OrarendekTorleseResource.KapcsolodoCsoportok</span>
<div id="selected-osztaly-container" class="col-sm-12"></div>
</div>
</div>
</div>
<div class="row" style="margin-top: 40px;">
<div class="@BootsrapHelper.GetSizeClasses(6)">
@Html.KretaButton("OsztalyOrarendTorlesVisszaBtn", CommonResource.Vissza, clickEventName: "OrarendekTorleseHelper.vissza")
</div>
<div class="@BootsrapHelper.GetSizeClasses(6) BtnDelete">
@Html.KretaButton("OsztalyOrarendTorlesTorlesBtn", CommonResource.Torles, clickEventName: "function () { OrarendekTorleseHelper.torles(OsztalyOrarendTorleseHelper.torles); }")
</div>
</div>
<div hidden>
@Html.KretaTextBoxFor(x => x.SelectedOsztalyok)
</div>
}
<script type="text/javascript">
var OsztalyOrarendTorleseHelper = (function () {
var osztalyOrarendTorleseHelper = function () { };
var osztalySelectId = "#osztaly-select";
var selectedOsztalyContainerId = "#selected-osztaly-container";
var formName = "OsztalyOrarendTorlesForm";
var formId = "#" + formName;
var selectedOsztalyokId = "#SelectedOsztalyok";
var feladatellatasiHelyCmbName = "FeladatellatasiHelyCmb";
var osztalyList = @Html.Raw(Json.Encode(Model.OsztalyList));
var url = {
OsztalyOrarendekTorlese: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.OrarendekTorleseApi, action = "OsztalyOrarendekTorlese" })"
}
osztalyOrarendTorleseHelper.cmbOnChange = function () {
setUpOsztalySelectRows();
}
function setUpOsztalySelectRows() {
var feladatellatasiHelyId = KretaComboBoxHelper.getKendoValue(feladatellatasiHelyCmbName);
$(osztalySelectId).empty();
var osztalyokByFeladatellatasiHely = osztalyList.filter(function (o) {
return o.FeladatellatasiHelyId == feladatellatasiHelyId;
});
osztalyokByFeladatellatasiHely.forEach(function (item) {
createOptionRow(item);
});
}
function createOptionRow(osztaly) {
var option = $("<option></option>")
.attr("value", osztaly.Id)
.append(osztaly.Nev);
if (osztaly.IsSelected) {
option.attr("selected", true);
}
$(osztalySelectId).append(option);
}
osztalyOrarendTorleseHelper.selectOption = function (o) {
var osztalyId = $(o).attr("value");
if (!CommonUtils.isNullOrUndefined(osztalyId)) {
var osztaly = osztalyList.filter(function (osztaly) {
return osztaly.Id == osztalyId;
})[0];
osztaly.IsSelected = !osztaly.IsSelected;
if (osztaly.IsSelected) {
createSelection(osztaly);
addSelectedOsztalyToInputString(osztaly.Id);
}
else {
osztalyOrarendTorleseHelper.deleteSelection(osztalyId);
}
}
}
function createSelection(osztaly) {
var nev = $("<div></div>")
.addClass("col-sm-3")
.append(osztaly.Nev);
var osztalybontottCsoportokChkName = "OsztalybontottCsoportokChk" + osztaly.Id;
var osztalybontottCsoportokChk = $("<input/>")
.addClass("k-checkbox")
.attr("type", "checkbox")
.attr("id", osztalybontottCsoportokChkName)
.attr("name", osztalybontottCsoportokChkName)
.attr("onclick", "OsztalyOrarendTorleseHelper.osztalybontottOnClick(" + osztaly.Id + ");");
var osztalybontottCsoportokLbl = $("<label></label>")
.addClass("k-checkbox-label")
.attr("for", osztalybontottCsoportokChkName)
.css("display", "inline-block");
var osztalybontottCsoportok = $("<div></div>")
.addClass("col-sm-3")
.css("text-align", "center")
.append(osztalybontottCsoportokChk)
.append(osztalybontottCsoportokLbl);
var kapcsolodoCsoportokChkName = "KapcsolodCsoportokChk" + osztaly.Id;
var kapcsolodoCsoportokChk = $("<input/>")
.addClass("k-checkbox")
.attr("type", "checkbox")
.attr("id", kapcsolodoCsoportokChkName)
.attr("name", kapcsolodoCsoportokChkName)
.attr("onclick", "OsztalyOrarendTorleseHelper.kapcsolodOnClick(" + osztaly.Id + ");");
var kapcsolodoCsoportokLbl = $("<label></label>")
.addClass("k-checkbox-label")
.attr("for", kapcsolodoCsoportokChkName)
.css("display", "inline-block");
var kapcsolodoCsoportok = $("<div></div>")
.addClass("col-sm-3")
.css("text-align", "center")
.append(kapcsolodoCsoportokChk)
.append(kapcsolodoCsoportokLbl);
var torlesBtnName = "SelectedTorlesBtn" + osztaly.Id;
var torlesBtn = $("<button></button>")
.addClass("k-button")
.attr("id", torlesBtnName)
.attr("onclick", "OsztalyOrarendTorleseHelper.deleteSelection(" + osztaly.Id + ");")
.append("@CommonResource.Eltavolitas");
var torles = $("<div></div>")
.addClass("col-sm-3 BtnDelete selected-torles-btn")
.append(torlesBtn);
var row = $("<div></div>")
.addClass("row")
.attr("data-osztaly-id", osztaly.Id)
.append(nev)
.append(osztalybontottCsoportok)
.append(kapcsolodoCsoportok)
.append(torles);
$(selectedOsztalyContainerId).append(row);
}
osztalyOrarendTorleseHelper.deleteSelection = function (osztalyId) {
var osztaly = osztalyList.filter(function (o) {
return o.Id == osztalyId;
})[0];
osztaly.IsSelected = false;
setUpOsztalySelectRows();
$(selectedOsztalyContainerId + " > div.row[data-osztaly-id='" + osztalyId + "']").remove();
removeSelectedOsztalyIdFromInputString(osztalyId);
}
osztalyOrarendTorleseHelper.torles = function () {
var form = $(formId);
if (form.valid()) {
var formData = form.toObject();
if (formData.hasOwnProperty(feladatellatasiHelyCmbName + "_input")) {
delete formData.FeladatellatasiHelyCmb_input;
}
if (formData.hasOwnProperty(feladatellatasiHelyCmbName)) {
delete formData.FeladatellatasiHelyCmb;
}
AjaxHelper.DoValidationPost(url.OsztalyOrarendekTorlese, formName, formData, OrarendekTorleseHelper.torlesSuccessCallBack);
}
}
function addSelectedOsztalyToInputString(osztalyId) {
var json = parseSelectedOsztalyokJson();
json.push({
Id: osztalyId,
IsKellKapcsolodoCsoportok: false,
IsKellOsztalybontottCsoportok: false,
});
stringifySelectedOsztalyokJson(json);
$(selectedOsztalyokId).valid();
}
function removeSelectedOsztalyIdFromInputString(osztalyId) {
var json = parseSelectedOsztalyokJson();
json = json.filter(function (obj) {
return obj.Id != osztalyId;
});
stringifySelectedOsztalyokJson(json);
$(selectedOsztalyokId).valid();
}
function parseSelectedOsztalyokJson() {
var jsonString = $(selectedOsztalyokId).val();
var jsonObj = null;
if (jsonString.length > 0) {
jsonObj = CommonUtils.JSONparse(jsonString);
}
else {
jsonObj = [];
}
return jsonObj;
}
function stringifySelectedOsztalyokJson(json) {
if (json.length == 0) {
$(selectedOsztalyokId).val("");
}
else {
$(selectedOsztalyokId).val(JSON.stringify(json));
}
}
osztalyOrarendTorleseHelper.osztalybontottOnClick = function (osztalyId) {
var json = parseSelectedOsztalyokJson();
var osztaly = json.filter(function (obj) {
return obj.Id == osztalyId;
})[0];
osztaly.IsKellOsztalybontottCsoportok = !osztaly.IsKellOsztalybontottCsoportok;
stringifySelectedOsztalyokJson(json);
}
osztalyOrarendTorleseHelper.kapcsolodOnClick = function (osztalyId) {
var json = parseSelectedOsztalyokJson();
var osztaly = json.filter(function (obj) {
return obj.Id == osztalyId;
})[0];
osztaly.IsKellKapcsolodoCsoportok = !osztaly.IsKellKapcsolodoCsoportok;
if (osztaly.IsKellKapcsolodoCsoportok) {
osztaly.IsKellOsztalybontottCsoportok = true;
$('#OsztalybontottCsoportokChk' + osztaly.Id).prop("checked", true).attr("disabled", true);
}
else {
$('#OsztalybontottCsoportokChk' + osztaly.Id).removeAttr("disabled");
}
stringifySelectedOsztalyokJson(json);
}
return osztalyOrarendTorleseHelper;
})();
</script>
<script type="text/javascript">
$(document).ready(function () {
// https://stackoverflow.com/questions/24543862/selecting-multiple-from-an-html-select-element-without-using-ctrl-key
$("select").mousedown(function (e) {
e.preventDefault();
var select = this;
var scroll = select.scrollTop;
e.target.selected = !e.target.selected;
OsztalyOrarendTorleseHelper.selectOption(e.target);
setTimeout(function () { select.scrollTop = scroll; }, 0);
$(select).focus();
}).mousemove(function (e) { e.preventDefault() });
})
</script>

View file

@ -0,0 +1,36 @@
<style>
.grid-container {
display: grid;
grid-template-columns: 100%;
}
.grid-item {
text-align: center;
margin-top: 36px;
}
.container-fluid:before {
content: none;
}
</style>
<div class="grid-container">
<div class="grid-item">
@Html.KretaButton("FeladatelltasiHelyOrarendTorlesBtn", OrarendekTorleseResource.FeladatellatasiHelyekOrarendjenekTorlese, clickEventName: "OrarendekTorleseHelper.loadFeladatellatasiHelyView", htmlAttributes: new Dictionary<string, object> { { "style", "width: 350px;" } })
</div>
<div class="grid-item">
@Html.KretaButton("OsztalyOrarendTorlesBtn", OrarendekTorleseResource.OsztalyokOrarendjenekTorlese, clickEventName: "OrarendekTorleseHelper.loadOsztalyView", htmlAttributes: new Dictionary<string, object> { { "style", "width: 350px;" } })
</div>
<div class="grid-item">
@Html.KretaButton("CsoportOrarendTorlesBtn", OrarendekTorleseResource.CsoportokOrarendjenekTorlese, clickEventName: "OrarendekTorleseHelper.loadCsoportView", htmlAttributes: new Dictionary<string, object> { { "style", "width: 350px;" } })
</div>
</div>
<script type="text/javascript">
$(document).ready(function () {
$(".k-window-actions").hide();
$(".modalOuter").css("height", "100%");
});
</script>