140 lines
No EOL
6.5 KiB
Text
140 lines
No EOL
6.5 KiB
Text
@using Kreta.Framework
|
|
@using Kreta.Web.Areas.Orarend.Models
|
|
@using Kreta.Web.Helpers
|
|
@using Kreta.Web.Classes
|
|
@using Kreta.Enums.ManualEnums;
|
|
|
|
@model OralatogatasModel
|
|
@{
|
|
Layout = "~/Views/Shared/_MasterLayout.cshtml";
|
|
}
|
|
|
|
@section AddSearchPanel {
|
|
@using (Html.SearchPanelSideBar("searchForm", null, postSubmitFunction: "OralatogatasHelper.formSearch"))
|
|
{
|
|
@Html.KretaComboBoxFor(x => x.TanarId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "TanarOralatogatasApi", action = "GetTanarList" })).AutoBind(true).RenderSearchPanelSideBar()
|
|
}
|
|
}
|
|
|
|
@section AddJs {
|
|
@Scripts.Render("~/bundles/Calendar")
|
|
|
|
<script type="text/javascript">
|
|
var OralatogatasHelper = (function () {
|
|
var oralatogatasHelper = function () { };
|
|
var eventURL = '@Url.Action("OralatogatasEvent", "TanarOralatogatas", new { area = "Orarend" })';
|
|
var saveURL = "@Url.HttpRouteUrl("ActionApi", new { controller = "TanarOralatogatasApi", action = "SaveOralatogatas" })";
|
|
var deleteURL = "@Url.HttpRouteUrl("ActionApi", new { controller = "TanarOralatogatasApi", action = "DeleteOralatogatas" })";
|
|
var formName = "OralatogatasForm";
|
|
|
|
oralatogatasHelper.formSearch = function () {
|
|
var formContent = $("#searchForm").serializeObject();
|
|
CreateCalendar(formContent.TanarId);
|
|
}
|
|
|
|
oralatogatasHelper.CalendarClickEvent = function (e) {
|
|
var json = {};
|
|
json.CalendarModel = e;
|
|
json.TanarId = $("#searchForm #TanarId").val();
|
|
|
|
AjaxHelper.DoPost(eventURL, json, popUpWindow);
|
|
};
|
|
|
|
oralatogatasHelper.windowCancel = function () {
|
|
KretaWindowHelper.destroyWindow("OralatogatasWindow");
|
|
}
|
|
|
|
oralatogatasHelper.windowSave = function () {
|
|
AjaxHelper.DoPostElement(saveURL, formName, SaveDeleteResponseOk);
|
|
}
|
|
|
|
oralatogatasHelper.windowDelete = function () {
|
|
var json = {};
|
|
json.id = $("#OraID").val();
|
|
AjaxHelper.DoPostQuery(deleteURL, null, json, SaveDeleteResponseOk);
|
|
}
|
|
|
|
function CreateCalendar(tanarId) {
|
|
var startDate = $("#Calendar").fullCalendar("getView").start;
|
|
$("#Calendar").fullCalendar("destroy");
|
|
|
|
var calendar = new SDAFullCalendar();
|
|
var pram = calendar.getParameters();
|
|
pram.calendar = "Calendar";
|
|
pram.kellCsengetesiRendMegjelenites = false;
|
|
if (typeof startDate !== "undefined") { pram.calendarStartDate = startDate; } else { pram.calendarStartDate = "@DateTime.Now.ToString("yyyy-MM-dd")"; }
|
|
pram.serviceURL = '@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "CalendarApi", action = "GetOralatogatasOrarend" })';
|
|
|
|
pram.minTime = '@Model.CalendarMinTime';
|
|
pram.maxTime = '@Model.CalendarMaxTime';
|
|
pram.tanarId = tanarId;
|
|
pram.clickEvent = OralatogatasHelper.CalendarClickEvent;
|
|
pram.hetirendek = '@Model.HetirendJson';
|
|
pram.naptariHetekHetirend = '@Model.NaptariHetekHetirendJson';
|
|
pram.naptariHetekUrl = '@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "CalendarApi", action = "GetTanevHetek" })';
|
|
pram.mouseoverEvent = showTemaTooltip;
|
|
pram.mouseoutEvent = hideTemaTooltip;
|
|
|
|
calendar.initialize(pram);
|
|
// Amikor betöltődik, akkor hívja meg a hétválasztót, hogy kereséskor beálljon a megfelelő hétre
|
|
if (typeof setHetValaszto === 'function') {
|
|
$("#Calendar_tanevHetek").data('kendoComboBox').dataSource.one('change', setHetValaszto);
|
|
}
|
|
|
|
}
|
|
|
|
function popUpWindow(data) {
|
|
var config = KretaWindowHelper.getWindowConfigContainer();
|
|
config.title = "@(StringResourcesUtil.GetString(4737))"; /*Óralátogatás felvitele / módosítása*/
|
|
config.content = data;
|
|
|
|
var modal = KretaWindowHelper.createWindow("OralatogatasWindow", config);
|
|
KretaWindowHelper.openWindow(modal, true);
|
|
}
|
|
|
|
function SaveDeleteResponseOk() {
|
|
OralatogatasHelper.formSearch();
|
|
KretaWindowHelper.destroyWindow("OralatogatasWindow");
|
|
}
|
|
|
|
function showTemaTooltip(data, element) {
|
|
var elem = $(element).data('kendoTooltip');
|
|
var contentDateResourceString = '@OrarendResource.DateTooltipMsg';
|
|
var contentResourceString = '@OrarendResource.TemaTooltipMsg';
|
|
var contentMessage = contentDateResourceString.format(data.OraKezdete, data.OraVege);
|
|
|
|
if (data.oraType == '@((int)CalendarOraTypeEnum.TanitasiOra)' || data.oraType == '@((int)CalendarOraTypeEnum.TanoranKivuliNaplozottFoglalkozas)')
|
|
{
|
|
contentMessage += '<br />' + contentResourceString.format('@OrarendResource.OraTemaja', data.isElmaradt ? " - " : data.Tema);
|
|
contentMessage += data.TooltipMsg;
|
|
}
|
|
if (data.BejelentettSzamonkeresContent != null) {
|
|
contentMessage += ' - ' + data.BejelentettSzamonkeresContent;
|
|
}
|
|
|
|
if((data.oraType == '@((int)CalendarOraTypeEnum.TanitasiOra)' || data.oraType == '@((int)CalendarOraTypeEnum.TanoranKivuliNaplozottFoglalkozas)')
|
|
|| (data.oraType == '@((int)CalendarOraTypeEnum.OrarendiOra)' || data.oraType == '@((int)CalendarOraTypeEnum.TanoranKivuliFoglalkozas)') && CommonUtils.isNullOrUndefined(elem)) {
|
|
$(element).kendoTooltip({
|
|
filter: ".tooltip",
|
|
width: 250,
|
|
position: "top",
|
|
content: contentMessage
|
|
}).data("kendoTooltip").show();
|
|
}
|
|
}
|
|
|
|
function hideTemaTooltip(data, element) {
|
|
if (!CommonUtils.isUndefined(element) && !CommonUtils.isNullOrEmpty(element) && !data._allDay){
|
|
var kendoTooltipElement = $(element).data('kendoTooltip');
|
|
if (!CommonUtils.isUndefined(kendoTooltipElement) && !CommonUtils.isNullOrEmpty(kendoTooltipElement) && CommonUtils.isFunction(kendoTooltipElement.hide)){
|
|
kendoTooltipElement.destroy();
|
|
}
|
|
}
|
|
}
|
|
|
|
return oralatogatasHelper;
|
|
})();
|
|
</script>
|
|
}
|
|
|
|
<div id="Calendar"></div> |