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,92 @@
@using Kreta.Web.Areas.Adminisztracio.Models;
@using Kreta.Web.Security;
@model ElerhetosegekModel
@{
var formName = "ElerhetosegekMegjeleniteseForm";
var emailCimTextBoxName = "EmailCimTxt_";
var emailAlapertelmezettRadioName = "EmailCimRdo_";
var emailAlapertelmezettRadioGroupName = "AlapertelmezettEmailGroup";
var telefonszamTextBoxName = "TelefonszamTxt_";
var telefonAlapertelmezettRadioName = "TelefonRdo_";
var telefonAlapertelmezettRadioGroupName = "AlapertelmezettTelefonGroup";
}
<style>
.containerPaddingLeftZero {
padding-left: 0;
}
</style>
<script type="text/javascript">
var ElerhetosegekModositasHelper = (function () {
var elerhetosegekModositasHelper = function () { };
elerhetosegekModositasHelper.setAlapertelmezettLabelTitle = function () {
$("#ElerhetosegekMegjeleniteseForm").find("label.k-radio-label").attr("title", "Alapértelmezett");
}
return elerhetosegekModositasHelper;
})();
</script>
@using (Html.KretaForm(formName))
{
@Html.KretaValidationSummary()
<div class="container-fluid">
<div class="row">
<div class="col-sm-6" id="EmailTable">
<div class="row">
<h4>@AdminisztracioResource.Email</h4>
</div>
@foreach (var email in Model.Email)
{
var tooltipResource = email.IsPublic ? AdminisztracioResource.PublikusEmailToolTip : string.Empty;
var textBoxId = emailCimTextBoxName + email.Id;
<div class="row">
<div class="col-sm-10 containerPaddingLeftZero">
@Html.KretaTextBox(textBoxId, htmlAttributes: new Dictionary<string, object> { { "data-labelmsg", email.Label }}).Enable(false).Value(email.EmailCim_Input).RenderWithName(tooltipResource: tooltipResource, customClass: "containerPaddingLeftZero")
</div>
<div class="col-sm-1">
@if (!email.IsPublic)
{
@Html.KretaRadioButton(emailAlapertelmezettRadioName + email.Id, string.Empty, email.Alapertelmezett, htmlAttributes: new Dictionary<string, object> { { "name", emailAlapertelmezettRadioGroupName }}).Enable(false)
}
</div>
</div>
}
</div>
<div class="col-sm-6" id="TelefonTable">
<div class="row">
<h4>@AdminisztracioResource.Telefonszam</h4>
</div>
@foreach (var telefon in Model.Telefon)
{
var tooltipResource = telefon.IsPublic ? AdminisztracioResource.PublikusTelefonszamTooltip : string.Empty;
var textBoxId = telefonszamTextBoxName + telefon.Id;
<div class="row">
<div class="col-sm-10 containerPaddingLeftZero">
@Html.KretaTextBox(textBoxId, htmlAttributes: new Dictionary<string, object> { { "data-labelmsg", telefon.Label } }).Enable(false).Value(telefon.Telefonszam).RenderWithName(tooltipResource: tooltipResource, customClass: "containerPaddingLeftZero")
</div>
<div class="col-sm-1">
@if (!telefon.IsPublic)
{
@Html.KretaRadioButton(telefonAlapertelmezettRadioName + telefon.Id, string.Empty, telefon.Alapertelmezett, htmlAttributes: new Dictionary<string, object> { { "name", telefonAlapertelmezettRadioGroupName }}).Enable(false)
}
</div>
</div>
}
</div>
</div>
</div>
}
<script>
$(document).ready(function () {
ElerhetosegekModositasHelper.setAlapertelmezettLabelTitle();
});
</script>

View file

@ -0,0 +1,712 @@
@using Kreta.Web.Areas.Adminisztracio.Models;
@using Kreta.Web.Security;
@model ElerhetosegekModel
@{
var formName = "ElerhetosegekModositasForm";
var emailComboBoxName = "EmailTipusCmb_";
var emailCimTextBoxName = "EmailCimTxt_";
var emailAlapertelmezettRadioName = "EmailCimRdo_";
var emailDeleteButtonName = "DeleteEmailBtn_";
var emailAlapertelmezettRadioGroupName = "AlapertelmezettEmailGroup";
var emailAlapertelmezettRadioChangeEventName = "ElerhetosegekModositasHelper.setEmailDeleteButtonVisibility();";
var emailDeleteEventName = "ElerhetosegekModositasHelper.deleteEmail(this);";
var telefonComboBoxName = "TelefonTipusCmb_";
var telefonszamTextBoxName = "TelefonszamTxt_";
var telefonAlapertelmezettRadioName = "TelefonRdo_";
var telefonDeleteButtonName = "DeleteTelefonBtn_";
var telefonAlapertelmezettRadioGroupName = "AlapertelmezettTelefonGroup";
var telefonAlapertelmezettRadioChangeEventName = "ElerhetosegekModositasHelper.setTelefonDeleteButtonVisibility();";
var telefonDeleteEventName = "ElerhetosegekModositasHelper.deleteTelefon(this);";
var ujEmailButtonName = "UjEmailBtn";
var ujTelefonButtonName = "UjTelefonBtn";
var new_dataStatus = (int)Kreta.Enums.ManualEnums.ElerhetosegStatusEnum.New;
var saved_dataStatus = (int)Kreta.Enums.ManualEnums.ElerhetosegStatusEnum.Saved;
var deleted_dataStatus = (int)Kreta.Enums.ManualEnums.ElerhetosegStatusEnum.Deleted;
}
<style>
.kretaLabelTooltipText {
min-width: 400px;
}
.deleteIcon {
font-size: 22px;
margin: 10px auto;
}
.buttonContainer {
display: block;
text-align: left;
}
.buttonColPadding {
padding: 0;
}
.containerPaddingLeftZero {
padding-left: 0;
}
.newButtonPadding {
padding: 8px 2px;
}
.saveButton {
background-color: #54a5d1;
}
</style>
<script type="text/javascript">
var ElerhetosegekModositasHelper = (function () {
var elerhetosegekModositasHelper = function () { };
var url = {
Save: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ProfilApi", action = "SaveElerhetosegek" })"
};
var formName = "@formName";
var ujEmailCounter = 1;
var ujTelefonCounter = 1;
elerhetosegekModositasHelper.saveConfirmWindow = function () {
KretaWindowHelper.confirmWindow("@(CommonResource.Kerdes)", "@(CommonResource.BiztosanMenteniSzeretneAModositasokat)", save);
}
function save () {
var emailDatas = [];
var emailRows = $("#EmailTable > div[data-status].row");
if (emailRows.length > 0) {
emailRows.each(function (index, value) {
var row = $(value);
var tipus = row.data("email-type");
var alapertelmezett = tipus !== @((int)Kreta.Enums.EmailTipusEnum.PublikusEmailcim) ? row.find("input[id^='@emailAlapertelmezettRadioName']")[0].checked : false;
emailDatas[index] = {
Id: row.data("email-id"),
TextBoxId: row.data("textbox-id"),
ComboBoxId: row.data("combobox-id"),
Tipus: tipus,
Status: row.data("status"),
Alapertelmezett: alapertelmezett,
EmailCim_Input: row.find("input[id^='@emailCimTextBoxName']").val()
}
});
}
var telefonDatas = [];
var telefonRows = $("#TelefonTable > div[data-status].row");
if (telefonRows.length > 0) {
telefonRows.each(function (index, value) {
var row = $(value);
var tipus = row.data("telefon-type");
var alapertelmezett = tipus !== @((int)Kreta.Enums.TelefonTipusEnum.PublikusTelefonszam) ? row.find("input[id^='@telefonAlapertelmezettRadioName']")[0].checked : false;
telefonDatas[index] = {
Id: row.data("telefon-id"),
TextBoxId: row.data("textbox-id"),
ComboBoxId: row.data("combobox-id"),
Tipus: tipus,
Status: row.data("status"),
Alapertelmezett: alapertelmezett,
Telefonszam: row.find("input[id^='@telefonszamTextBoxName']").val()
}
});
}
if (emailDatas.length > 0 || telefonDatas.length > 0) {
var elerhetosegek = {
Email: emailDatas,
Telefon: telefonDatas
};
AjaxHelper.DoValidationPost(url.Save, formName, elerhetosegek, setElerhetosegStatuses);
}
}
function setElerhetosegStatuses(newElerhetosegDbDatas) {
var emailRows = $("#EmailTable > div[data-status].row");
emailRows.each(function (index, value) {
var row = $(value);
var status = row.data("status");
if (status === @(new_dataStatus)) {
var textBoxId = row.data("textbox-id");
var newElerhetosegDbData = newElerhetosegDbDatas.Email.find(e => e.TextBoxId === textBoxId);
row.data("email-id", newElerhetosegDbData.Id);
row.data("status", @(saved_dataStatus));
var newIdCounter = textBoxId.split('_')[1];
var comboBox = KretaComboBoxHelper.getKendoComboBoxData("@emailComboBoxName" + newIdCounter);
var emailTipusText = comboBox.text();
var emailTipusValue = comboBox.value();
var emailLabel = emailTipusText + " e-mail cím";
var emailCimTextBoxName = "@emailCimTextBoxName" + newIdCounter;
var emailCim = $("#" + textBoxId).val();
var labelDivClass = "col-xs-12 col-sm-12 col-md-6 containerPaddingLeftZero";
var label = $("<label></label>")
.addClass("windowInputLabel")
.attr("for", emailCimTextBoxName)
.append(emailLabel);
if (emailTipusValue === "@((int)Kreta.Enums.EmailTipusEnum.PublikusEmailcim)") {
label.append("&nbsp;");
label.append(
$("<img/>")
.addClass("kretaLabelTooltipImg")
);
label.append(
$("<span></span>")
.addClass("kretaLabelTooltipText")
.append("@AdminisztracioResource.PublikusEmailToolTip")
);
labelDivClass += " kretaLabelTooltip";
}
var textBox = $("<input/>")
.addClass("k-textbox")
.attr("data-labelmsg", emailLabel)
.attr("id", emailCimTextBoxName)
.attr("name", emailCimTextBoxName)
.attr("type", "text")
.attr("value", emailCim)
.attr("maxlength", @Kreta.Core.Constants.General.EmailMaximumKarakterekSzama);
var replaceDiv = $("<div></div>")
.addClass("col-sm-10 containerPaddingLeftZero")
.append(
$("<div></div>")
.addClass(labelDivClass)
.append(label)
)
.append(
$("<div></div>")
.addClass("col-xs-12 col-sm-12 col-md-6 containerPaddingLeftZero")
.append(textBox)
);
row.find("div.col-sm-10").replaceWith(replaceDiv);
}
else if (status === @(deleted_dataStatus)) {
row.removeData("email-id");
}
});
var telefonRows = $("#TelefonTable > div[data-status].row");
telefonRows.each(function (index, value) {
var row = $(value);
var status = row.data("status");
if (status === @(new_dataStatus)) {
var textBoxId = row.data("textbox-id");
var newElerhetosegDbData = newElerhetosegDbDatas.Telefon.find(e => e.TextBoxId === textBoxId);
row.data("telefon-id", newElerhetosegDbData.Id);
row.data("status", (@saved_dataStatus));
var newIdCounter = textBoxId.split('_')[1];
var comboBox = KretaComboBoxHelper.getKendoComboBoxData("@telefonComboBoxName" + newIdCounter);
var telefonTipusText = comboBox.text();
var telefonTipusValue = comboBox.value();
var telefonLabel = telefonTipusText + " telefonszám";
var telefonszamTextBoxName = "@telefonszamTextBoxName" + newIdCounter;
var telefonszam = $("#" + textBoxId).val();
var labelDivClass = "col-xs-12 col-sm-12 col-md-6 containerPaddingLeftZero";
var label = $("<label></label>")
.addClass("windowInputLabel")
.attr("for", telefonszamTextBoxName)
.append(telefonLabel);
if (telefonTipusValue === "@((int)Kreta.Enums.TelefonTipusEnum.PublikusTelefonszam)") {
label.append("&nbsp;");
label.append(
$("<img/>")
.addClass("kretaLabelTooltipImg")
);
label.append(
$("<span></span>")
.addClass("kretaLabelTooltipText")
.append("@AdminisztracioResource.PublikusTelefonszamTooltip")
);
labelDivClass += " kretaLabelTooltip";
}
var textBox = $("<input/>")
.addClass("k-textbox")
.attr("data-labelmsg", telefonLabel)
.attr("id", telefonszamTextBoxName)
.attr("name", telefonszamTextBoxName)
.attr("type", "text")
.attr("value", telefonszam);
var replaceDiv = $("<div></div>")
.addClass("col-sm-10 containerPaddingLeftZero")
.append(
$("<div></div>")
.addClass(labelDivClass)
.append(label)
)
.append(
$("<div></div>")
.addClass("col-xs-12 col-sm-12 col-md-6 containerPaddingLeftZero")
.append(textBox)
);
row.find("div.col-sm-10").replaceWith(replaceDiv);
}
else if (status === @(deleted_dataStatus)) {
row.removeData("telefon-id");
}
});
KretaWindowHelper.successFeedBackWindow();
}
elerhetosegekModositasHelper.setEmailDeleteButtonVisibility = function () {
$("input[id^='@emailAlapertelmezettRadioName']").each(function () {
var checked = this.checked;
var emailId = this.id.split('_')[1];
var deleteEmailButtonByIdSelector = "#" + "@emailDeleteButtonName" + emailId;
var deleteEmailButtonById = $(deleteEmailButtonByIdSelector);
if (checked) {
deleteEmailButtonById.hide();
}
else {
deleteEmailButtonById.show();
}
});
}
elerhetosegekModositasHelper.addNewEmail = function () {
var ujEmailId = "new" + ujEmailCounter;
var ujEmailComboBoxName = "@emailComboBoxName" + ujEmailId;
var ujEmailCimTextBoxName = "@emailCimTextBoxName" + ujEmailId;
var ujEmailAlapertelmezettRadioName = "@emailAlapertelmezettRadioName" + ujEmailId + "_";
var ujEmailDeleteButtonName = "@emailDeleteButtonName" + ujEmailId;
var cmb = $("<span></span>")
.addClass("k-widget k-combobox k-header")
.attr("style", "")
.append(
$("<span></span>")
.addClass("k-dropdown-wrap k-state-default k-state-hover")
.attr("tabindex", -1)
.attr("unselectable", "on")
.append(
$("<input/>")
.addClass("k-input")
.attr("name", ujEmailComboBoxName + "_input")
.attr("type", "text")
.attr("autocomplete", "off")
.attr("title", "")
.attr("role", "combobox")
.attr("aria-expanded", false)
.attr("tabindex", 0)
.attr("style", "width: 100%;")
.attr("aria-disabled", false)
.attr("aria-autocomplete", "list")
.attr("aria-owns", ujEmailComboBoxName + "_listbox")
.attr("aria-busy", false)
.attr("aria-activedescendant", "c195d3bf-857f-48f7-ac43-3f820877a4a5")
)
.append(
$("<span></span>")
.addClass("k-select")
.attr("tabindex", -1)
.attr("unselectable", "on")
.append(
$("<span></span>")
.addClass("k-icon k-i-arrow-s")
.attr("unselectable", "on")
.attr("role", "button")
.attr("tabindex", -1)
.attr("aria-controls", ujEmailComboBoxName + "_listbox")
.text("select")
)
)
)
.append(
$("<input/>")
.addClass("valid")
.attr("data-msg-unknownvalue", "Ismeretlen érték")
.attr("id", ujEmailComboBoxName)
.attr("name", ujEmailComboBoxName)
.attr("type", "text")
.attr("data-role", "combobox")
.attr("style", "display: none;")
.attr("aria-disabled", false)
);
var cmbScript = $("<script>")
.text('jQuery(function(){jQuery("' + '#' + ujEmailComboBoxName + '").kendoComboBox({"open":KretaComboBoxHelper.onOpenDropdown,"dataBound":KretaComboBoxHelper.onDataBound,"change":function(e){ KretaComboBoxHelper.onChange(e); ElerhetosegekModositasHelper.emailTipusComboBoxOnChange(e); },"dataSource":{"transport":{"read":{"url":"/api/ComboBoxHelperApi/GetEmailTipusList?forProfilElerhetosegek=True\u0026isTanulo=' + @Json.Encode(ClaimData.IsTanuloOrGondviselo) + '"}},"serverFiltering":true,"filter":[]},"dataTextField":"Text","dataValueField":"Value"});});');
var txt = $("<input/>")
.addClass("k-textbox")
.attr("type", "text")
.attr("id", ujEmailCimTextBoxName)
.attr("name", ujEmailCimTextBoxName)
.attr("maxlength", @Kreta.Core.Constants.General.EmailMaximumKarakterekSzama);
var rdo = $("<input/>")
.addClass("k-radio k-radio")
.attr("id", ujEmailAlapertelmezettRadioName)
.attr("name", "@emailAlapertelmezettRadioGroupName")
.attr("onchange", "@emailAlapertelmezettRadioChangeEventName")
.attr("type", "radio")
.attr("value", "");
var rdoLabel = $("<label></label>")
.addClass("k-radio-label")
.attr("for", ujEmailAlapertelmezettRadioName)
.attr("title", "Alapértelmezett");
var button = $("<a></a>")
.addClass("buttonContainer")
.attr("title", "Törlés")
.attr("href", "javascript:void(0)")
.attr("onclick", "@emailDeleteEventName")
.attr("id", ujEmailDeleteButtonName)
.append(
$("<i/>")
.addClass("fa fa-trash deleteIcon")
.attr("aria-hidden", "true")
);
var newRow = $("<div></div>")
.addClass("row")
.attr("data-status", @(new_dataStatus))
.attr("data-textbox-id", ujEmailCimTextBoxName)
.attr("data-combobox-id", ujEmailComboBoxName)
.append(
$("<div></div>")
.addClass("col-sm-10 containerPaddingLeftZero")
.append(
$("<div></div>")
.addClass("col-xs-12 col-sm-12 col-md-6 containerPaddingLeftZero")
.append(cmb)
.append(cmbScript)
)
.append(
$("<div></div>")
.addClass("col-xs-12 col-sm-12 col-md-6 containerPaddingLeftZero")
.append(txt)
)
)
.append(
$("<div></div>")
.addClass("col-sm-1")
.append(
$("<div></div>")
.append(rdo)
.append(rdoLabel)
)
)
.append(
$("<div></div>")
.addClass("col-sm-1 buttonColPadding")
.append(button)
);
$("#EmailTable > .row").last().after(newRow);
++ujEmailCounter;
}
elerhetosegekModositasHelper.emailTipusComboBoxOnChange = function (e) {
var comboBoxId = e.sender.element[0].id;
var comboBoxValue = KretaComboBoxHelper.getKendoValue(comboBoxId);
var row = $("#" + comboBoxId).closest(".row");
row.data("email-type", comboBoxValue);
var newIdCounter = comboBoxId.split('_')[1];
var alapertelmezettRdoClosestDiv = $("#" + "@emailAlapertelmezettRadioName" + newIdCounter + "_").closest("div");
if (comboBoxValue === "@((int)Kreta.Enums.EmailTipusEnum.PublikusEmailcim)") {
alapertelmezettRdoClosestDiv.hide();
}
else {
alapertelmezettRdoClosestDiv.show();
}
}
elerhetosegekModositasHelper.deleteEmail = function (e) {
KretaWindowHelper.confirmWindow("@(CommonResource.Kerdes)", "@(CommonResource.BiztosanTorli)", deleteRow, e);
}
elerhetosegekModositasHelper.setTelefonDeleteButtonVisibility = function () {
$("input[id^='@telefonAlapertelmezettRadioName']").each(function () {
var checked = this.checked;
var telefonId = this.id.split('_')[1];
var deleteTelefonszamButtonByIdSelector = "#" + "@telefonDeleteButtonName" + telefonId;
var deleteTelefonszamButtonById = $(deleteTelefonszamButtonByIdSelector);
if (checked) {
deleteTelefonszamButtonById.hide();
}
else {
deleteTelefonszamButtonById.show();
}
});
}
elerhetosegekModositasHelper.addNewTelefon = function () {
var ujTelefonId = "new" + ujTelefonCounter;
var ujTelefonComboBoxName = "@telefonComboBoxName" + ujTelefonId;
var ujTelefonszamTextBoxName = "@telefonszamTextBoxName" + ujTelefonId;
var ujTelefonAlapertelmezettRadioName = "@telefonAlapertelmezettRadioName" + ujTelefonId + "_";
var ujTelefonDeleteButtonName = "@telefonDeleteButtonName" + ujTelefonId;
var cmb = $("<span></span>")
.addClass("k-widget k-combobox k-header")
.attr("style", "")
.append(
$("<span></span>")
.addClass("k-dropdown-wrap k-state-default k-state-hover")
.attr("tabindex", -1)
.attr("unselectable", "on")
.append(
$("<input/>")
.addClass("k-input")
.attr("name", ujTelefonComboBoxName + "_input")
.attr("type", "text")
.attr("autocomplete", "off")
.attr("title", "")
.attr("role", "combobox")
.attr("aria-expanded", false)
.attr("tabindex", 0)
.attr("style", "width: 100%;")
.attr("aria-disabled", false)
.attr("aria-autocomplete", "list")
.attr("aria-owns", ujTelefonComboBoxName + "_listbox")
.attr("aria-busy", false)
.attr("aria-activedescendant", "c195d3bf-857f-48f7-ac43-3f820877a4a5")
)
.append(
$("<span></span>")
.addClass("k-select")
.attr("tabindex", -1)
.attr("unselectable", "on")
.append(
$("<span></span>")
.addClass("k-icon k-i-arrow-s")
.attr("unselectable", "on")
.attr("role", "button")
.attr("tabindex", -1)
.attr("aria-controls", ujTelefonComboBoxName + "_listbox")
.text("select")
)
)
)
.append(
$("<input/>")
.addClass("valid")
.attr("data-msg-unknownvalue", "Ismeretlen érték")
.attr("id", ujTelefonComboBoxName)
.attr("name", ujTelefonComboBoxName)
.attr("type", "text")
.attr("data-role", "combobox")
.attr("style", "display: none;")
.attr("aria-disabled", false)
);
var cmbScript = $("<script>")
.text('jQuery(function(){jQuery("' + '#' + ujTelefonComboBoxName + '").kendoComboBox({"open":KretaComboBoxHelper.onOpenDropdown,"dataBound":KretaComboBoxHelper.onDataBound,"change":function(e){ KretaComboBoxHelper.onChange(e); ElerhetosegekModositasHelper.telefonTipusComboBoxOnChange(e); },"dataSource":{"transport":{"read":{"url":"/api/ComboBoxHelperApi/GetTelefonTipusList?forProfilElerhetosegek=True\u0026isTanulo=' + @Json.Encode(ClaimData.IsTanuloOrGondviselo) + '"}},"serverFiltering":true,"filter":[]},"dataTextField":"Text","dataValueField":"Value"});});');
var txt = $("<input/>")
.addClass("k-textbox")
.attr("type", "text")
.attr("id", ujTelefonszamTextBoxName)
.attr("name", ujTelefonszamTextBoxName);
var rdo = $("<input/>")
.addClass("k-radio k-radio")
.attr("id", ujTelefonAlapertelmezettRadioName)
.attr("name", "@telefonAlapertelmezettRadioGroupName")
.attr("onchange", "@telefonAlapertelmezettRadioChangeEventName")
.attr("type", "radio")
.attr("value", "");
var rdoLabel = $("<label></label>")
.addClass("k-radio-label")
.attr("for", ujTelefonAlapertelmezettRadioName)
.attr("title", "Alapértelmezett");
var button = $("<a></a>")
.addClass("buttonContainer")
.attr("title", "Törlés")
.attr("href", "javascript:void(0)")
.attr("onclick", "@telefonDeleteEventName")
.attr("id", ujTelefonDeleteButtonName)
.append(
$("<i/>")
.addClass("fa fa-trash deleteIcon")
.attr("aria-hidden", "true")
);
var newRow = $("<div></div>")
.addClass("row")
.attr("data-status", @(new_dataStatus))
.attr("data-textbox-id", ujTelefonszamTextBoxName)
.attr("data-combobox-id", ujTelefonComboBoxName)
.append(
$("<div></div>")
.addClass("col-sm-10 containerPaddingLeftZero")
.append(
$("<div></div>")
.addClass("col-xs-12 col-sm-12 col-md-6 containerPaddingLeftZero")
.append(cmb)
.append(cmbScript)
)
.append(
$("<div></div>")
.addClass("col-xs-12 col-sm-12 col-md-6 containerPaddingLeftZero")
.append(txt)
)
)
.append(
$("<div></div>")
.addClass("col-sm-1")
.append(
$("<div></div>")
.append(rdo)
.append(rdoLabel)
)
)
.append(
$("<div></div>")
.addClass("col-sm-1 buttonColPadding")
.append(button)
);
$("#TelefonTable > .row").last().after(newRow);
++ujTelefonCounter;
}
elerhetosegekModositasHelper.telefonTipusComboBoxOnChange = function (e) {
var comboBoxId = e.sender.element[0].id;
var comboBoxValue = KretaComboBoxHelper.getKendoValue(comboBoxId);
var row = $("#" + comboBoxId).closest(".row");
row.data("telefon-type", comboBoxValue);
var newIdCounter = comboBoxId.split('_')[1];
var alapertelmezettRdoClosestDiv = $("#" + "@telefonAlapertelmezettRadioName" + newIdCounter + "_").closest("div");
if (comboBoxValue === "@((int)Kreta.Enums.TelefonTipusEnum.PublikusTelefonszam)") {
alapertelmezettRdoClosestDiv.hide();
}
else {
alapertelmezettRdoClosestDiv.show();
}
}
elerhetosegekModositasHelper.deleteTelefon = function (e) {
KretaWindowHelper.confirmWindow("@(CommonResource.Kerdes)", "@(CommonResource.BiztosanTorli)", deleteRow, e);
}
function deleteRow (e) {
var row = $(e).closest("div").parent();
$(row).data("status", @(deleted_dataStatus));
row.hide();
}
elerhetosegekModositasHelper.setAlapertelmezettLabelTitle = function () {
$("#ElerhetosegekModositasForm").find("label.k-radio-label").attr("title", "Alapértelmezett");
}
return elerhetosegekModositasHelper;
})();
</script>
@using (Html.KretaForm(formName))
{
@Html.KretaValidationSummary()
<div class="container-fluid">
<div class="row">
<div class="col-sm-6" id="EmailTable">
<div class="row">
<h4>@AdminisztracioResource.Email</h4>
</div>
<div class="row">
<div class="kendo-gridFunctionKommand">
@Html.KretaButton(ujEmailButtonName, CommonResource.Uj.ToUpper(), clickEventName: "ElerhetosegekModositasHelper.addNewEmail", htmlAttributes: new Dictionary<string, object> { { "class", "newButtonPadding" } })
</div>
</div>
@foreach (var email in Model.Email)
{
var tooltipResource = email.IsPublic ? AdminisztracioResource.PublikusEmailToolTip : string.Empty;
var textBoxId = emailCimTextBoxName + email.Id;
<div class="row" data-email-type="@email.Tipus" data-status="@saved_dataStatus" data-email-id="@email.Id" data-textbox-id="@textBoxId">
<div class="col-sm-10 containerPaddingLeftZero">
@Html.KretaTextBox(textBoxId, htmlAttributes: new Dictionary<string, object> { { "data-labelmsg", email.Label }, { "maxlength", Kreta.Core.Constants.General.EmailMaximumKarakterekSzama } }).Value(email.EmailCim_Input).RenderWithName(tooltipResource: tooltipResource, customClass: "containerPaddingLeftZero")
</div>
<div class="col-sm-1">
@if (!email.IsPublic)
{
@Html.KretaRadioButton(emailAlapertelmezettRadioName + email.Id, string.Empty, email.Alapertelmezett, htmlAttributes: new Dictionary<string, object> { { "name", emailAlapertelmezettRadioGroupName }, { "onchange", emailAlapertelmezettRadioChangeEventName } })
}
</div>
<div class="col-sm-1 buttonColPadding">
<a class="buttonContainer" title="Törlés" href="javascript:void(0)" onclick="@emailDeleteEventName" id="@(emailDeleteButtonName + email.Id)">
<i class="fa fa-trash deleteIcon" aria-hidden="true"></i>
</a>
</div>
</div>
}
</div>
<div class="col-sm-6" id="TelefonTable">
<div class="row">
<h4>@AdminisztracioResource.Telefonszam</h4>
</div>
<div class="row">
<div class="kendo-gridFunctionKommand">
@Html.KretaButton(ujTelefonButtonName, CommonResource.Uj.ToUpper(), clickEventName: "ElerhetosegekModositasHelper.addNewTelefon", htmlAttributes: new Dictionary<string, object> { { "class", "newButtonPadding" } })
</div>
</div>
@foreach (var telefon in Model.Telefon)
{
var tooltipResource = telefon.IsPublic ? AdminisztracioResource.PublikusTelefonszamTooltip : string.Empty;
var textBoxId = telefonszamTextBoxName + telefon.Id;
<div class="row" data-telefon-type="@telefon.Tipus" data-status="@saved_dataStatus" data-telefon-id="@telefon.Id" data-textbox-id="@textBoxId">
<div class="col-sm-10 containerPaddingLeftZero">
@Html.KretaTextBox(textBoxId, htmlAttributes: new Dictionary<string, object> { { "data-labelmsg", telefon.Label } }).Value(telefon.Telefonszam).RenderWithName(tooltipResource: tooltipResource, customClass: "containerPaddingLeftZero")
</div>
<div class="col-sm-1">
@if (!telefon.IsPublic)
{
@Html.KretaRadioButton(telefonAlapertelmezettRadioName + telefon.Id, string.Empty, telefon.Alapertelmezett, htmlAttributes: new Dictionary<string, object> { { "name", telefonAlapertelmezettRadioGroupName }, { "onchange", telefonAlapertelmezettRadioChangeEventName } })
}
</div>
<div class="col-sm-1 buttonColPadding">
<a class="buttonContainer" title="Törlés" href="javascript:void(0)" onclick="@telefonDeleteEventName" id="@(telefonDeleteButtonName + telefon.Id)">
<i class="fa fa-trash deleteIcon" aria-hidden="true"></i>
</a>
</div>
</div>
}
</div>
</div>
<div style="margin-top: 20px"></div>
@if (!ClaimData.IsTanuloOrGondviselo)
{
<div class="row">
@AdminisztracioResource.FigyelemAMezokKitoltesevelHozzajarulAhhozHogyAzInformacioNyilvanossaValjonAKretaRendszerFelhasznaloiReszereABeirtPublikusEmailCimEstelefonszamMegjelenikAzElektronikusEllenorzokonyvbenASzulokEsDiakokReszere
</div>
}
<div class="row">
@Html.KretaButton("ElerhetosegekModositasSaveBtn", CommonResource.Mentes, clickEventName: "ElerhetosegekModositasHelper.saveConfirmWindow", htmlAttributes: new Dictionary<string, object> { { "class", "saveButton" } })
</div>
</div>
}
<script>
$(document).ready(function () {
ElerhetosegekModositasHelper.setEmailDeleteButtonVisibility();
ElerhetosegekModositasHelper.setTelefonDeleteButtonVisibility();
ElerhetosegekModositasHelper.setAlapertelmezettLabelTitle();
});
</script>

View file

@ -0,0 +1,47 @@
@using Kreta.Resources
@using Kreta.Web.Helpers
@using Kreta.Web.Models
@model Gondviselo4TAdatokModel
@{
var formName = "Gondviselo4TAdatokModForm";
}
<script type="text/javascript">
var Gondviselo4TAdatokModHelper = (function () {
var gondviselo4TAdatokModHelper = function () { };
var url = {
Save4TAdatok: '@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ProfilApi, action = "SaveGondviselo4TAdatok" })',
};
gondviselo4TAdatokModHelper.save = function () {
AjaxHelper.DoPostElement(url.Save4TAdatok, "@formName", sikeresMentes, sikertelenMentes);
}
sikeresMentes = function (data) {
KretaWindowHelper.successFeedBackWindow();
}
sikertelenMentes = function (data) {
KretaWindowHelper.feedbackWindow("@ErrorResource.Hiba", data.responseJSON.Message, true);
}
return gondviselo4TAdatokModHelper;
})();
</script>
@using (Html.KretaForm(formName))
{
@Html.KretaValidationSummary()
<div class="container-fluid details">
@Html.Partial("Gondviselo4TAdatokEditor", Model)
</div>
<div class="row">
<div class="col-xs-11">
@Html.KretaButton("Gondviselo4TAdatSaveBtn", CommonResource.AdatokMentese, clickEventName: "Gondviselo4TAdatokModHelper.save").Enable(Model.IsEditable)
</div>
<div class="col-xs-1"></div>
</div>
}

View file

@ -0,0 +1,18 @@
@using Kreta.Web.Areas.Adminisztracio.Models;
@model GondviseloAdatokModModel
@using (Html.KretaForm("GondviseloAdatokViewForm"))
{
@Html.KretaValidationSummary()
<div class="container-fluid details">
<div class="row">
<div class="col-sm-6">
@Html.KretaLabelFor(x => x.AktEmail)
</div>
<div class="col-sm-6">
@Html.KretaLabelFor(m => m.AktTelefon)
</div>
</div>
</div>
}

View file

@ -0,0 +1,79 @@
@using Kreta.Web.Areas.Adminisztracio.Models;
@model GondviseloAdatokModModel
<script type="text/javascript">
var GondviseloAdatokModHelper = (function () {
var gondviseloAdatokModHelper = function () { };
var formName = "GondviseloAdatokModForm";
var url = "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ProfilApi", action = "SaveGondviseloAdatok" })";
var deleteEmailUrl = "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ProfilApi", action = "DeleteGondviseloEmail" })";
gondviseloAdatokModHelper.save = function () {
AjaxHelper.DoPostElement(url, formName, saveFeedBackOk, showEmailCimRemoteError);
}
gondviseloAdatokModHelper.deleteEmail = function () {
AjaxHelper.DoPostElement(deleteEmailUrl, formName, saveFeedBackOk);
}
function saveFeedBackOk() {
KretaWindowHelper.successFeedBackWindow(reloadPage);
}
function reloadPage() {
location.reload(true);
}
function showEmailCimRemoteError(response) {
if (!CommonUtils.isNullOrUndefined(response.responseJSON.ModelState)) {
var errorsStr = JSON.stringify(response.responseJSON.ModelState);
errorsStr = errorsStr.replace("UjEmail\"", "UjEmail_Input\"");
response.responseJSON.ModelState = CommonUtils.JSONparse(errorsStr);
AjaxHelper.CallRemoteErrors($("#" + formName), response.responseJSON.ModelState);
}
else {
AjaxHelper.ShowError(response);
}
}
return gondviseloAdatokModHelper;
})();
</script>
@using (Html.KretaForm("GondviseloAdatokModForm"))
{
@Html.KretaValidationSummary()
<div class="container-fluid details">
<div class="row">
<div class="col-sm-6">
@Html.KretaLabelFor(x => x.AktEmail)
</div>
<div class="col-sm-6">
@Html.KretaLabelFor(m => m.AktTelefon)
</div>
</div>
<div class="row">
<div class="col-sm-6">
@Html.KretaTextBoxFor(x => x.UjEmail_Input).RenderWithName()
</div>
<div class="col-sm-6">
@Html.KretaTextBoxFor(m => m.UjTelefon).RenderWithName()
</div>
</div>
<div class="row">
<div class="col-sm-6">
@Html.KretaTextBoxFor(x => x.UjEmailEllenorzes).RenderWithName()
</div>
</div>
</div>
<div class="row">
<div class="col-xs-11">
@Html.KretaButton("GondviseloAdatSaveBtn", 111/*Mentés*/, true, "", "", "", null, "GondviseloAdatokModHelper.save")
@Html.KretaButton("GondviseloEmailDeleteBtn", 8042/*Email törlése*/, true, "", "", "", null, "GondviseloAdatokModHelper.deleteEmail")
</div>
<div class="col-xs-1"></div>
</div>
}

View file

@ -0,0 +1,52 @@
@using Kreta.Web.Security
@using Kreta.Enums
@using Kreta.Framework;
@using Kreta.Web.Areas.Adminisztracio.Models;
@model ProfilModel
@section AddTip
{
<ul id="tipList" style="display: none;">
<li>@(StringResourcesUtil.GetString(4136)) @(StringResourcesUtil.GetString(4179))</li>
</ul>
}
<h4>@(AdminisztracioResource.Profilbeallitasok)</h4>
@Html.KretaTabStrip("ProfilTab").Items(items =>
{
items.Add().Text(AdminisztracioResource.EgyediFelhasznaloBeallitasok).Selected(true).LoadContentFrom("LoadTippekBeallitasa", "Profil");
if (ClaimData.IsActivTanev)
{
items.Add().Text(StringResourcesUtil.GetString(1965)).LoadContentFrom("LoadJelszoModositas", "Profil");
}
if ((ClaimData.FelhasznaloSzerepkor == SzerepkorTipusEnum.Naplo || (ClaimData.FelhasznaloSzerepkor == SzerepkorTipusEnum.Ellenorzo && !ClaimData.GondviseloId.HasValue)))
{
if (!Model.IsElerhetosegAdatokSzerkeszthetoek && (ClaimData.FelhasznaloSzerepkor == SzerepkorTipusEnum.Ellenorzo && !ClaimData.GondviseloId.HasValue))
{
items.Add().Text(AdminisztracioResource.Elerhetosegek).LoadContentFrom("LoadElerhetosegek", "Profil");
}
else
{
items.Add().Text(AdminisztracioResource.Elerhetosegek).LoadContentFrom("LoadElerhetosegekSzerk", "Profil");
}
}
if (ClaimData.GondviseloId.HasValue)
{
if (Model.IsElerhetosegAdatokSzerkeszthetoek)
{
items.Add().Text(AdminisztracioResource.GondviseloElerhetosegSzerkesztese).LoadContentFrom("LoadGondviseloAdatokSzerk", "Profil");
}
else
{
items.Add().Text(AdminisztracioResource.GondviseloElerhetoseg).LoadContentFrom("LoadGondviseloAdatok", "Profil");
}
}
if (ClaimData.GondviseloId.HasValue && ClaimData.FeltarGondviseloEnabled)
{
items.Add().Text(AdminisztracioResource.Gondviselo4TAdatok).LoadContentFrom("LoadGondviselo4TSzerkesztese", "Profil");
}
}).RenderOnModal()

View file

@ -0,0 +1,374 @@
@using Kreta.BusinessLogic.Security;
@using Kreta.Web.Areas.Adminisztracio.Models
@using Kreta.Web.Helpers.Grid;
@using Kreta.Web.Security
@model SajatAdatlapInfoModel
<script type="text/javascript">
var SajatAdatlapHelper = (function () {
var sajatAdatlapHelper = function () { };
var url = {
SaveTanuloBankszamlaAdatok: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ProfilApi, action = "SaveTanuloBankszamlaAdatok" })",
SaveAlkalmazottBankszamlaAdatok: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ProfilApi, action = "SaveAlkalmazottBankszamlaAdatok" })",
};
@if (Model.MkbBankszamlaIgenylesModel != null && Model.MkbBankszamlaIgenylesModel.ShowIgenyles)
{
<text>
sajatAdatlapHelper.mkbBankszamlaIgenylesButtonOnClick = function () {
window.open("@Html.Raw(Model.MkbBankszamlaIgenylesModel.IgenylesOldalUrl)", "_blank");
}
</text>
}
@if (Model.OtpBankszamlaIgenylesModel != null && Model.OtpBankszamlaIgenylesModel.ShowIgenyles)
{
<text>
sajatAdatlapHelper.otpBankszamlaIgenylesButtonOnClick = function () {
window.open("@Html.Raw(Model.OtpBankszamlaIgenylesModel.IgenylesOldalUrl)", "_blank");
}
</text>
}
sajatAdatlapHelper.tanuloBankszamlaMentesClick = function (data) {
AjaxHelper.DoPost(url.SaveTanuloBankszamlaAdatok, data, function () { successSavebankszamlaAdatok(data) }, errorSavebankszamlaAdatok);
};
sajatAdatlapHelper.alkalmazottBankszamlaMentesClick = function (data) {
AjaxHelper.DoPost(url.SaveAlkalmazottBankszamlaAdatok, data, function () { successSavebankszamlaAdatok(data) }, errorSavebankszamlaAdatok);
};
sajatAdatlapHelper.closeSajatAdatlapPopUp = function () {
KretaWindowHelper.destroyWindow("SzemelyesAdatlapWindow");
};
successSavebankszamlaAdatok = function (data) {
BankszamlaEditorHelper.tanuloBankszamlaModel = data;
BankszamlaEditorHelper.defaultBankszamlaAdatokControls();
KretaWindowHelper.successFeedBackWindow();
}
errorSavebankszamlaAdatok = function (data) {
KretaWindowHelper.feedbackWindow("@(CommonResource.Hiba)", data.responseJSON.Message, true);
}
return sajatAdatlapHelper;
})();
</script>
<div class="container-fluid details">
<div class="GDPR">
<p>@AlkalmazottResource.GDPRfejlec
</div>
<div id="szemelyesAdatlapAccordion" role="tablist" aria-multiselectable="true">
<div class="k-widget k-panelbar">
<div role="tab" id="szemelyesAdatlapHeading">
<a data-toggle="collapse" data-parent="#szemelyesAdatlapAccordion" href="#collapse1" aria-expanded="false" aria-controls="collapse1">
<h5 style="font-weight: bold; padding-left: 1em;">@AlkalmazottResource.SzemelyesAdataok</h5>
</a>
</div>
</div>
<div id="collapse1" class="collapse in" role="tabpanel" aria-labelledby="szemelyesAdatlapHeading" data-parent="#szemelyesAdatlapAccordion">
@Html.Partial("_Tanulo_Szemelyes_Adatlap_Partial", Model)
</div>
@if (ClaimData.GondviseloId.HasValue && ClaimManager.HasPackage(KretaClaimPackages.Ellenorzo.ClaimValue))
{
<div class="k-widget k-panelbar">
<div role="tab" id="szemelyesAdatlapHeading">
<a data-toggle="collapse" data-parent="#szemelyesAdatlapAccordion" href="#collapse2" aria-expanded="true" aria-controls="collapse2">
<h5 style="font-weight: bold; padding-left: 1em;">@TanuloResource.TanuloAdatok</h5>
</a>
</div>
</div>
<div id="collapse2" class="collapse" role="tabpanel" aria-labelledby="szemelyesAdatlapHeading" data-parent="#szemelyesAdatlapAccordion">
<div class="container-fluid details">
@(
Html.KretaGrid<SajatAdatlapInfoModel.TanuloAdatModel>(
name: "TanuloAdatGrid",
getUrl: new GridApiUrl("ProfilApi", "GetTanuloAdatGrid"),
useToolBar: false)
.Columns(columns =>
{
columns.Bound(c => c.TanuloNev);
columns.Bound(c => c.OktAzon);
columns.Bound(c => c.OsztalyfonokNev);
columns.Bound(c => c.OsztalyNev);
columns.Bound(c => c.TeremNev);
})
.Sortable(sortable => sortable
.AllowUnsort(true)
.SortMode(GridSortMode.MultipleColumn))
)
</div>
</div>
<div class="k-widget k-panelbar">
<div role="tab" id="szemelyesAdatlapHeading">
<a data-toggle="collapse" data-parent="#szemelyesAdatlapAccordion" href="#collapse3" aria-expanded="true" aria-controls="collapse3">
<h5 style="font-weight: bold; padding-left: 1em;">@TanuloResource.BankszamlaSzamAdatokGondviseloiFejlec</h5>
</a>
</div>
</div>
<div id="collapse3" class="collapse" role="tabpanel" aria-labelledby="szemelyesAdatlapHeading" data-parent="#szemelyesAdatlapAccordion">
<div class="container-fluid details">
@{
Html.RenderPartial("BankszamlaEditor", Model.TanuloBankszamla);
if (Model.MkbBankszamlaIgenylesModel != null && Model.MkbBankszamlaIgenylesModel.ShowIgenyles)
{
<div class="row">
<div class="col-sm-4 col-md-2">
@Html.KretaButton("MkbBankszamlaIgenylesButton", TanuloResource.MkbBankszamlaIgenylesButton, clickEventName: "SajatAdatlapHelper.mkbBankszamlaIgenylesButtonOnClick").HtmlAttributes(new { @class = "bankszamlaIgenylesButton" })
</div>
<div class="col-sm-8 col-md-10">
@TanuloResource.MkbBankszamlaIgenylesText
</div>
</div>
}
if (Model.OtpBankszamlaIgenylesModel != null && Model.OtpBankszamlaIgenylesModel.ShowIgenyles)
{
<div class="row">
<div class="col-sm-4 col-md-2">
@Html.KretaButton("OtpBankszamlaIgenylesButton", TanuloResource.OtpBankszamlaIgenylesButton, clickEventName: "SajatAdatlapHelper.otpBankszamlaIgenylesButtonOnClick").HtmlAttributes(new { @class = "bankszamlaIgenylesButton" })
</div>
<div class="col-sm-8 col-md-10">
@TanuloResource.OtpBankszamlaIgenylesText
</div>
</div>
}
}
</div>
</div>
}
@if (ClaimManager.HasPackage(KretaClaimPackages.Naplo.ClaimValue) && (Model.AlkalmazottBankszamla.IsApaczaiMentor))
{
<div class="k-widget k-panelbar">
<div role="tab" id="szemelyesAdatlapHeading">
<a data-toggle="collapse" data-parent="#szemelyesAdatlapAccordion" href="#collapse8" aria-expanded="true" aria-controls="collapse5">
<h5 style="font-weight: bold; padding-left: 1em;">@AlkalmazottResource.BankszamlaSzamAdatokAlkalmazottiFejlec</h5>
</a>
</div>
</div>
<div id="collapse8" class="collapse" role="tabpanel" aria-labelledby="szemelyesAdatlapHeading" data-parent="#szemelyesAdatlapAccordion">
<div class="container-fluid details">
@{Html.RenderPartial("BankszamlaEditor", (Kreta.Web.Models.TanuloBankszamlaModel)Model.AlkalmazottBankszamla);
}
</div>
</div>
}
@if (ClaimManager.HasPackage(KretaClaimPackages.Naplo.ClaimValue) && (Model.ApaczaiMentorNyugdijModel.IsApaczaiMentor))
{
<div class="k-widget k-panelbar">
<div role="tab" id="szemelyesAdatlapHeading">
<a data-toggle="collapse" data-parent="#szemelyesAdatlapAccordion" href="#collapse9" aria-expanded="true" aria-controls="collapse5">
<h5 style="font-weight: bold; padding-left: 1em;">@AlkalmazottResource.NyugdijAdatokAlkalmazottiFejlec</h5>
</a>
</div>
</div>
<div id="collapse9" class="collapse" role="tabpanel" aria-labelledby="szemelyesAdatlapHeading" data-parent="#szemelyesAdatlapAccordion">
<div class="container-fluid details">
@{Html.RenderPartial("_Nyugdij_Partial", (Kreta.Web.Models.MentoriNyugdijModel)Model.ApaczaiMentorNyugdijModel);
}
</div>
</div>
}
<div class="k-widget k-panelbar">
<div role="tab" id="szemelyesAdatlapHeading">
<a data-toggle="collapse" data-parent="#szemelyesAdatlapAccordion" href="#collapse4" aria-expanded="true" aria-controls="collapse4">
<h5 style="font-weight: bold; padding-left: 1em;">@AlkalmazottResource.ElerhetosegAdatok</h5>
</a>
</div>
</div>
<div id="collapse4" class="collapse" role="tabpanel" aria-labelledby="szemelyesAdatlapHeading" data-parent="#szemelyesAdatlapAccordion">
<div class="container-fluid details">
<h4>@TanuloResource.CimAdatok</h4>
@(
Html.KretaGrid<SajatAdatlapInfoModel.ElerhetosegCimModel>(
name: "ElerhetosegCimGrid",
getUrl: new GridApiUrl("ProfilApi", "GetElerhetosegCimGrid"),
useToolBar: false
)
.Columns(columns =>
{
columns.Bound(c => c.CimTipus_DNAME).Width("20%");
columns.Bound(c => c.Irsz).Width("10%");
columns.Bound(c => c.Varos).Width("30%");
columns.Bound(c => c.Cim).Sortable(false).ClientTemplate(@"#: Kozterulet# #: KozteruletJellegeNev# #: HazSzam# #if(Emelet != null){# #: Emelet # #}else{# #}# #if(Ajto != null){# #: Ajto # #}else{# #}# ").Width("30%");
})
.CheckBoxColumn(TanuloResource.Alapertelmezett, c => c.Alapertelmezett_BOOL, addHeaderTitle: true)
.Sortable(sortable => sortable
.AllowUnsort(true)
.SortMode(GridSortMode.MultipleColumn))
)
@if (ClaimData.GondviseloId == null)
{
<br />
<h4>@TanuloResource.Telefonszam</h4>
@(
Html.KretaGrid<SajatAdatlapInfoModel.ElerhetosegTelModel>(
name: "ElerhetosegTelGrid",
getUrl: new GridApiUrl("ProfilApi", "GetElerhetosegTelGrid"),
useToolBar: false
)
.Columns(columns =>
{
columns.Bound(c => c.Tipus_DNAME).Width("20%");
columns.Bound(c => c.TelefonSzam).Width("30%");
})
.CheckBoxColumn(TanuloResource.Alapertelmezett, c => c.Alapertelmezett_BOOL, addHeaderTitle: true)
.Sortable(sortable => sortable
.AllowUnsort(true)
.SortMode(GridSortMode.MultipleColumn))
)
<br />
<h4>@TanuloResource.EMail</h4>
@(
Html.KretaGrid<SajatAdatlapInfoModel.ElerhetosegEmailModel>(
name: "ElerhetosegEmailGrid",
getUrl: new GridApiUrl("ProfilApi", "GetElerhetosegEmailGrid"),
useToolBar: false
)
.Columns(columns =>
{
columns.Bound(c => c.Tipus_DNAME).Width("20%");
columns.Bound(c => c.EmailCim).Width("30%");
})
.CheckBoxColumn(TanuloResource.Alapertelmezett, c => c.Alapertelmezett_BOOL, addHeaderTitle: true)
.Sortable(sortable => sortable
.AllowUnsort(true)
.SortMode(GridSortMode.MultipleColumn))
)
}
@if ((ClaimManager.HasPackage(KretaClaimPackages.Naplo.ClaimValue)))
{
<br />
<h4>Eszközeim</h4>
@(
Html.KretaGrid<SajatAdatlapInfoModel.TargyiEszkozModel>(
name: "TargyiEszkozokGrid",
getUrl: new GridApiUrl("ProfilApi", "GetTargyiEszkozokGrid"),
useToolBar: false,
allowSorting: false
)
.Columns(columns =>
{
columns.Bound(c => c.Megnevezes).Width("25%");
columns.Bound(c => c.GyariSzam).Width("20%");
columns.Bound(c => c.LeltariSzam);
})
)
}
</div>
</div>
@if (ClaimManager.HasPackage(KretaClaimPackages.Ellenorzo.ClaimValue) && (ClaimData.GondviseloId == null))
{
<div class="k-widget k-panelbar">
<div role="tab" id="szemelyesAdatlapHeading">
<a data-toggle="collapse" data-parent="#szemelyesAdatlapAccordion" href="#collapse5" aria-expanded="true" aria-controls="collapse5">
<h5 style="font-weight: bold; padding-left: 1em;">@TanuloResource.BankszamlaSzamAdatokTanuloiFejlec</h5>
</a>
</div>
</div>
<div id="collapse5" class="collapse" role="tabpanel" aria-labelledby="szemelyesAdatlapHeading" data-parent="#szemelyesAdatlapAccordion">
<div class="container-fluid details">
@{Html.RenderPartial("BankszamlaEditor", Model.TanuloBankszamla);
if (Model.MkbBankszamlaIgenylesModel != null && Model.MkbBankszamlaIgenylesModel.ShowIgenyles)
{
<div class="row">
<div class="col-sm-4 col-md-2">
@Html.KretaButton("MkbBankszamlaIgenylesButton", TanuloResource.MkbBankszamlaIgenylesButton, clickEventName: "SajatAdatlapHelper.mkbBankszamlaIgenylesButtonOnClick").HtmlAttributes(new { @class = "bankszamlaIgenylesButton" })
</div>
<div class="col-sm-8 col-md-10">
@TanuloResource.MkbBankszamlaIgenylesText
</div>
</div>
}
if (Model.OtpBankszamlaIgenylesModel != null && Model.OtpBankszamlaIgenylesModel.ShowIgenyles)
{
<div class="row">
<div class="col-sm-4 col-md-2">
@Html.KretaButton("OtpBankszamlaIgenylesButton", TanuloResource.OtpBankszamlaIgenylesButton, clickEventName: "SajatAdatlapHelper.otpBankszamlaIgenylesButtonOnClick").HtmlAttributes(new { @class = "bankszamlaIgenylesButton" })
</div>
<div class="col-sm-8 col-md-10">
@TanuloResource.OtpBankszamlaIgenylesText
</div>
</div>
}
}
</div>
</div>
<div class="k-widget k-panelbar">
<div role="tab" id="szemelyesAdatlapHeading">
<a data-toggle="collapse" data-parent="#szemelyesAdatlapAccordion" href="#collapse6" aria-expanded="true" aria-controls="collapse6">
<h5 style="font-weight: bold; padding-left: 1em;">@TanuloResource.TanuloiIgazolvanyAdatok</h5>
</a>
</div>
</div>
<div id="collapse6" class="collapse" role="tabpanel" aria-labelledby="szemelyesAdatlapHeading" data-parent="#szemelyesAdatlapAccordion">
<div class="container-fluid details">
<div class="row">
@Html.KretaLabelFor(model => model.TanuloIgazolvany.IgazolvanyTipus, 2, 2)
@Html.KretaLabelFor(model => model.TanuloIgazolvany.Igazolvanyszam, 2, 2)
@Html.KretaLabelFor(model => model.TanuloIgazolvany.AdoazonositoJel, 2, 2)
</div>
<div class="row">
@Html.KretaLabelFor(model => model.TanuloIgazolvany.DiakigazolvanySzam, 2, 2)
@Html.KretaLabelFor(model => model.TanuloIgazolvany.DiakigazolvanyKelte_SDATE, 2, 2)
@Html.KretaLabelFor(model => model.TanuloIgazolvany.TajSzam, 2, 2)
</div>
</div>
</div>
}
@*
<div class="k-widget k-panelbar">
<div role="tab" id="szemelyesAdatlapHeading">
<a data-toggle="collapse" data-parent="#szemelyesAdatlapAccordion" href="#collapse7" aria-expanded="true" aria-controls="collapse7">
<h5 style="font-weight: bold; padding-left: 1em;">@LayoutResource.EgyHaztartasbanLevoSzemelyek</h5>
</a>
</div>
</div>
<div id="collapse7" class="collapse" role="tabpanel" aria-labelledby="szemelyesAdatlapHeading" data-parent="#szemelyesAdatlapAccordion">
<div class="container-fluid details">
@{
Html.RenderPartial("EgyHaztartasbanLevokEditor", Model.EgyhaztartasbanElokModel);
}
</div>
</div>
*@
</div>
</div>
<style type="text/css">
.bankszamlaIgenylesButton {
background-color: #54A5D1;
}
.bankszamlaIgenylesButton:hover {
background-color: #338BB5;
}
div.GDPR {
height: 5em;
position: relative;
}
div.GDPR p {
text-align: center;
margin: 40px auto;
line-height: 145%;
font-size: 14pt;
}
</style>

View file

@ -0,0 +1,47 @@
@using Kreta.Framework;
@using Kreta.Web.Areas.Adminisztracio.Models;
@model ProfilModel
<script type="text/javascript">
var JelszoModositasHelper = (function () {
var jelszoModositasHelper = function () { };
var formName = "JelszoModositasForm";
jelszoModositasHelper.changePassword = function () {
var url = "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ProfilApi", action = "SaveProfilData" })";
AjaxHelper.DoPostElement(url, formName, newSaveFeedBackOk);
}
function newSaveFeedBackOk() {
KretaWindowHelper.feedbackWindow("@(StringResourcesUtil.GetString(366))" /*Siker*/, "Jelszó módosítva");
}
return jelszoModositasHelper;
})();
</script>
@if (Model.JelszoValtoztatasNemLehetseges)
{
<div>@(StringResourcesUtil.GetString(3987)) @*A kréta rendszerben a jelszóváltoztatás nem engedélyezett!*@</div>
}
else
{
using (Html.KretaForm("JelszoModositasForm"))
{
@Html.KretaValidationSummary()
<div class="row">
@Html.KretaPasswordFor(x => x.JelenlegiJelszo).RenderWithName()
</div>
<div class="row">
@Html.KretaPasswordFor(x => x.UjJelszo).RenderWithName()
</div>
<div class="row">
@Html.KretaPasswordFor(x => x.UjJelszoMegerositese).RenderWithName()
</div>
@Html.KretaSaveButton("JelszoModositasSaveBtn", "JelszoModositasHelper.changePassword")
}
}

View file

@ -0,0 +1,14 @@
@using Kreta.Framework;
@using Kreta.Web.Areas.Adminisztracio.Models;
@using Kreta.Web.Classes
@model ProfilModel
@(Html.Kendo().Upload()
.Name("files").Messages(m => m.Select(StringResourcesUtil.GetString(5548)/*Fájl kiválasztása...*/).StatusFailed(StringResourcesUtil.GetString(5549)/*Fájl feltöltése nem sikerült! Kérjük, próbálja újra!*/).HeaderStatusUploaded(StringResourcesUtil.GetString(5550)/*Fájl feltöltése sikeres!*/).HeaderStatusUploading(StringResourcesUtil.GetString(5551)/*Feltöltés...*/))
.HtmlAttributes(new { accept = "image/*" })
.Async(x => x
.SaveUrl(Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ProfilApi", action = "SaveProfilePicture" }))
.AutoUpload(true)
)
)

View file

@ -0,0 +1,161 @@
@using Kreta.Enums;
@using Kreta.BusinessLogic.Security;
@using Kreta.Web.Areas.Adminisztracio.Models;
@using Kreta.Web.Security
@model TippModel
<style>
#fogadooraEmailDiv .windowInputLabel {
margin-left: 2em;
}
</style>
<script type="text/javascript">
var TippModositasHelper = (function () {
var tippModositasHelper = function () { };
var formName = "TippModositasForm";
tippModositasHelper.tippMentes = function () {
if ($("#TippekElrejtese").is(':checked')) {
$('#tippekFul').addClass('disabled');
$('#tippekFul').removeAttr('onclick');
var tipp = $('#tippPopupNotification').data('kendoNotification');
if (tipp) {
tipp.hide();
}
}
else {
$('#tippekFul').removeClass('disabled');
$('#tippekFul').attr('onclick', 'showTip();');
}
var url = "@Url.Action("TippBeallitasokMentese", "Profil", new { area = "Adminisztracio" })";
AjaxHelper.DoPostElement(url, formName, newSaveFeedBackOk);
}
function newSaveFeedBackOk() {
KretaWindowHelper.successFeedBackWindow();
}
return tippModositasHelper;
})();
</script>
@using (Html.KretaForm("TippModositasForm"))
{
<div class="container-fluid details">
<div class="row">
@Html.KretaCheckBoxFor(x => x.TippekElrejtese).RenderWithName()
</div>
@if (ClaimData.FelhasznaloSzerepkor == SzerepkorTipusEnum.Naplo)
{
<div class="row">
@Html.KretaCheckBoxFor(x => x.EmailHelyettesites).RenderWithName()
</div>
<div class="row">
@Html.KretaCheckBoxFor(x => x.HianyzokAutoKitoltes).RenderWithName()
</div>
<div class="row">
@Html.KretaCheckBoxFor(x => x.HetirendMegjeleniteseBelepeskor).RenderWithName(tooltipResource: AdminisztracioResource.HetirendMegjeleniteseBelepeskorToolTip)
</div>
<div class="row">
@Html.KretaDropdownListFor(x => x.AtlagMegjelenitesTipusa, Model.AtlagMegjelenitesTipusaList, addOptionLabel: false).RenderWithName()
</div>
<div class="row">
@Html.KretaDropdownListFor(x => x.AtlagbaBeleszamitoOsztalyTipusa, Model.AtlagbaBeleszamitoOsztalyTipusaList, addOptionLabel: false).RenderWithName()
</div>
<div class="row">
@Html.KretaDropdownListFor(x => x.HaladasiNaploFulTipusa, Model.HaladasiNaploFulTipusaList, addOptionLabel: false).RenderWithName()
</div>
<div class="row">
@Html.KretaDropdownListFor(x => x.HaladasiNaploNezetTipusa, Model.HaladasiNaploNezetTipusaList, addOptionLabel: false).RenderWithName()
</div>
}
@if (ClaimData.FelhasznaloSzerepkor == SzerepkorTipusEnum.Naplo || ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Gondviselo.ClaimValue))
{
<div style="margin-left:10px; margin-bottom:10px;"><h3>@FogadooraResource.Fogadoora</h3></div>
<div class="row">
@Html.KretaCheckBoxFor(x => x.FogadooraEmail).RenderWithName()
</div>
<div id="fogadooraEmailDiv">
<div class="row">
@Html.KretaCheckBoxFor(x => x.FogadooraEmailUj).RenderWithName()
</div>
<div class="row">
@Html.KretaCheckBoxFor(x => x.FogadooraEmailTorles).RenderWithName()
</div>
<div class="row">
@Html.KretaCheckBoxFor(x => x.FogadooraEmailJelentkezes).RenderWithName()
</div>
<div class="row">
@Html.KretaCheckBoxFor(x => x.FogadooraEmailJelentkezesLemondas).RenderWithName()
</div>
<div class="row">
@Html.KretaCheckBoxFor(x => x.FogadooraEmlekeztetoEmailJelentkezes).RenderWithName()
</div>
@*@if (ClaimData.FelhasznaloSzerepkor == SzerepkorTipusEnum.Ellenorzo)
{
<div class="row">
@Html.KretaCheckBoxFor(x => x.FogadooraEmailTorles).RenderWithName()
</div>
}*@
@*<div class="row">
@Html.KretaCheckBoxFor(x => x.FogadooraEmail3Nappal).RenderWithName()
</div>
<div class="row">
@Html.KretaCheckBoxFor(x => x.FogadooraEmail1Nappal).RenderWithName()
</div>*@
</div>
}
@if (ClaimData.FelhasznaloSzerepkor == SzerepkorTipusEnum.Naplo)
{
<div style="margin-left:10px; margin-bottom:10px;"><h3>@NemNaplozottTanorakResource.NemNaplozottTanorak</h3></div>
<div class="row">
@Html.KretaCheckBoxFor(x => x.NemNaplozottTanorakEmail).RenderWithName()
</div>
}
</div>
<div style="display:flex;justify-content:space-between;align-items:center;">
@Html.KretaSaveButton("TippSaveBtn", "TippModositasHelper.tippMentes")
@Html.Label(CommonResource.ProfilMentesLabel, htmlAttributes: new Dictionary<string, object> { { "style", "margin-left:10px;" } })
</div>
}
<script type="text/javascript">
$(document).ready(function () {
$("#DiakHazifeladat").change(function () {
if (!$(this).prop('checked')) {
$("#DiakHazifeladatEmail").prop('checked', false).attr('disabled', true);
}
else {
$("#DiakHazifeladatEmail").attr('disabled', false);
}
});
if (!$("#DiakHazifeladat").prop('checked')) {
$("#DiakHazifeladatEmail").prop('checked', false).attr('disabled', true);
}
$("#FogadooraEmail").change(function () {
if (!$(this).prop('checked')) {
$("#fogadooraEmailDiv").hide();
$("#FogadooraEmailUj").prop('checked', false);
$("#FogadooraEmailJelentkezes").prop('checked', false);
$("#FogadooraEmailJelentkezesLemondas").prop('checked', false);
$("#FogadooraEmailTorles").prop('checked', false);
//$("#FogadooraEmail3Nappal").prop('checked', false);
//$("#FogadooraEmail1Nappal").prop('checked', false);
}
else {
$("#fogadooraEmailDiv").show();
}
});
if (!$("#FogadooraEmail").prop('checked')) {
$("#fogadooraEmailDiv").hide();
}
});
</script>