174 lines
8 KiB
Text
174 lines
8 KiB
Text
@using Kreta.BusinessLogic.Logic.TanuloErtekeles
|
|
@using Kreta.Enums
|
|
@using CoreConstants = Kreta.Core.Constants;
|
|
@using Kreta.Web.Security;
|
|
@using Kreta.KretaServer.SystemSettings;
|
|
|
|
<script type="text/javascript">
|
|
var TanuloErtekelesHelper = (function () {
|
|
var tanuloErtekelesHelper = function () { };
|
|
|
|
tanuloErtekelesHelper.setMenuCaption = function (tipusId) {
|
|
var sideBarMenuCaptionText;
|
|
if (tipusId === "@((int) ErtekelesTipusEnum.evkozi_jegy_ertekeles)") {
|
|
sideBarMenuCaptionText = "@Html.Raw(TanuloErtekelesResource.Evkozi)";
|
|
} else if (tipusId === "@((int) ErtekelesTipusEnum.felevi_jegy_ertekeles)") {
|
|
sideBarMenuCaptionText = "@Html.Raw(TanuloErtekelesResource.Felevi)";
|
|
} else if (tipusId === "@((int) ErtekelesTipusEnum.evvegi_jegy_ertekeles)") {
|
|
sideBarMenuCaptionText = "@Html.Raw(TanuloErtekelesResource.EvVegi)";
|
|
} else {
|
|
sideBarMenuCaptionText = "@Html.Raw(TanuloErtekelesResource.Egyeb)";
|
|
}
|
|
$("#menucaption").text(sideBarMenuCaptionText);
|
|
}
|
|
|
|
tanuloErtekelesHelper.setValueToGridSelectorControlAfterChangeDate = function (value, selectListSelector, valueControlSelector) {
|
|
var selectList = $(selectListSelector);
|
|
for (var i = 0; i < selectList.length; i++) {
|
|
if (selectList[i].attributes.val.nodeValue === value) {
|
|
selectList[i].classList.add('activebar');
|
|
}
|
|
}
|
|
$(valueControlSelector).val(value);
|
|
}
|
|
|
|
tanuloErtekelesHelper.changeColumnValues = function (gridName, selector, val) {
|
|
if (!CommonUtils.isNullOrEmpty(val)) {
|
|
$.each($("#" + gridName).find(selector + "[val='" + val + "']"), function () {
|
|
if (!$(this).hasClass("activebar")) {
|
|
$(this).click();
|
|
}
|
|
});
|
|
} else {
|
|
$.each($("#" + gridName).find(selector), function () {
|
|
if ($(this).hasClass("activebar")) {
|
|
$(this).click();
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
tanuloErtekelesHelper.setDetailGridRowAthuzas = function (gridName) {
|
|
var dataSource = KretaGridHelper.getKendoGridData(gridName).dataSource.data();
|
|
$.each(dataSource, function (index, value) {
|
|
if (value.Torolt_BOOL) {
|
|
$('#' + gridName).find('[data-uid= ' + value.uid + ']').addClass("kretaStrikedGridRow disabledItem");
|
|
}
|
|
});
|
|
}
|
|
|
|
tanuloErtekelesHelper.getNormalizedErtekelesSzoveg = function (ertekelesSzoveg) {
|
|
if (CommonUtils.isNullOrWhiteSpace(ertekelesSzoveg, false)) {
|
|
return null;
|
|
} else {
|
|
//NOTE: Ékezetek miatt kell, hogy ne legyen encode-olva.
|
|
var result = CommonUtils.getNormalizedHtmlFromString(ertekelesSzoveg);
|
|
return result;
|
|
}
|
|
}
|
|
|
|
tanuloErtekelesHelper.setSzovegEditorOnPaste = function (szovegEditorSelector) {
|
|
var editor = $("div[id^='" + szovegEditorSelector + "']");
|
|
if (editor.length > 0) {
|
|
editor.on("paste", function (e) {
|
|
//NOTE: Cancel paste!
|
|
e.preventDefault();
|
|
var text = "";
|
|
if (e.clipboardData || e.originalEvent.clipboardData) {
|
|
text = (e.originalEvent || e).clipboardData.getData("text/plain");
|
|
} else if (window.clipboardData) {
|
|
text = window.clipboardData.getData("Text");
|
|
}
|
|
if (document.queryCommandSupported("insertText")) {
|
|
document.execCommand("insertText", false, text);
|
|
} else {
|
|
document.execCommand("paste", false, text);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
tanuloErtekelesHelper.setErtekelesNyelviesitesVisibility = function (tipusId, selector) {
|
|
if (CommonUtils.isNullOrUndefined(tipusId)) {
|
|
$(selector).removeClass("showNyelviesites").addClass("hideNyelviesites");
|
|
}
|
|
var nyelviesithetoTanuloErtekelesTipusIdArray = @Html.Raw(Json.Encode(TanuloErtekelesLogicBase.NyelviesithetoTanuloErtekelesTipusIdList));
|
|
if (nyelviesithetoTanuloErtekelesTipusIdArray.includes(parseInt(tipusId))) {
|
|
$(selector).removeClass("hideNyelviesites").addClass("showNyelviesites");
|
|
} else {
|
|
$(selector).removeClass("showNyelviesites").addClass("hideNyelviesites");
|
|
}
|
|
}
|
|
|
|
return tanuloErtekelesHelper;
|
|
})();
|
|
|
|
var HaviAtlagHelper = (function () {
|
|
var haviAtlagHelper = function () { };
|
|
|
|
haviAtlagHelper.setHaviAtlagok = function (grid) {
|
|
var isHaviAtlagShow = @Html.Raw(Json.Encode(SystemSettingsManager.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.ertekelesnel_a_naplojegyek_havi_atlaga_megjelenik, ClaimData.IntezmenyAzonosito, ClaimData.SelectedTanevID.Value)));
|
|
var rows = grid.items();
|
|
if (isHaviAtlagShow && rows.length > 0) {
|
|
var haviAtlagWrapper = grid.element.find(".HaviAtlagWrapper");
|
|
haviAtlagWrapper.append("@TanuloErtekelesResource.HaviAtlag");
|
|
|
|
var haviAtlagArray = [];
|
|
rows.each(function () {
|
|
var dataItem = grid.dataItem(this);
|
|
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.Szeptember_HaviAtlag", dataItem.Szeptember_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.Oktober_HaviAtlag", dataItem.Oktober_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.November_HaviAtlag", dataItem.November_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.December_HaviAtlag", dataItem.December_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.JanuarI_HaviAtlag", dataItem.JanuarI_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.I_HaviAtlag", dataItem.I_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.JanuarII_HaviAtlag", dataItem.JanuarII_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.Februar_HaviAtlag", dataItem.Februar_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.Marcius_HaviAtlag", dataItem.Marcius_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.Aprilis_HaviAtlag", dataItem.Aprilis_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.Majus_HaviAtlag", dataItem.Majus_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.Junius_HaviAtlag", dataItem.Junius_HaviAtlag);
|
|
fillHaviAtlagArray(haviAtlagArray, "@CoreConstants.TanuloErtekelesHaviAtlagColumnNames.II_HaviAtlag", dataItem.II_HaviAtlag);
|
|
});
|
|
processHaviAtlagArray(grid, haviAtlagArray);
|
|
}
|
|
}
|
|
|
|
function fillHaviAtlagArray(haviAtlagArray, honap, atlagErtekek) {
|
|
if (atlagErtekek != null) {
|
|
if (!haviAtlagArray[honap]) {
|
|
haviAtlagArray[honap] = [];
|
|
}
|
|
|
|
var atlagErtekekObj = CommonUtils.JSONparse(atlagErtekek);
|
|
atlagErtekekObj.haviAtlagErtekek.forEach(a => haviAtlagArray[honap].push(a));
|
|
}
|
|
}
|
|
|
|
function processHaviAtlagArray(grid, haviAtlagArray) {
|
|
for (var honap in haviAtlagArray) {
|
|
var atlagErtekek = haviAtlagArray[honap];
|
|
if (Array.isArray(atlagErtekek)) {
|
|
var sulyzottAtlag = calculateSulyzottAtlag(atlagErtekek);
|
|
showHaviAtlag(grid, honap, sulyzottAtlag);
|
|
}
|
|
}
|
|
}
|
|
|
|
function calculateSulyzottAtlag(ertekek) {
|
|
var szamlalo = ertekek.reduce((t, e) => t + e.ertekeles * e.suly, 0);
|
|
var nevezo = ertekek.reduce((t, e) => t + e.suly, 0);
|
|
var sulyzottAtlag = szamlalo / nevezo;
|
|
return sulyzottAtlag;
|
|
}
|
|
|
|
function showHaviAtlag(grid, honap, sulyzottAtlag) {
|
|
var wrapperClassName = "." + honap + "Wrapper";
|
|
var wrapper = grid.element.find(wrapperClassName);
|
|
wrapper.append(sulyzottAtlag.toFixed(2));
|
|
}
|
|
|
|
return haviAtlagHelper;
|
|
})();
|
|
</script>
|