dhtmlx-scheduler 7.0.0 → 7.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -12
- package/bower.json +1 -1
- package/codebase/dhtmlxscheduler.css +1 -1
- package/codebase/dhtmlxscheduler.es.js +850 -867
- package/codebase/dhtmlxscheduler.es.js.map +1 -1
- package/codebase/dhtmlxscheduler.js +19 -19
- package/codebase/dhtmlxscheduler.js.map +1 -1
- package/codebase/sources/dhtmlxscheduler.css +24 -4
- package/codebase/sources/dhtmlxscheduler.es.js +100 -146
- package/codebase/sources/dhtmlxscheduler.es.js.map +1 -1
- package/codebase/sources/dhtmlxscheduler.js +100 -146
- package/codebase/sources/dhtmlxscheduler.js.map +1 -1
- package/codebase/sources/less/package.json +1 -1
- package/codebase/sources/less/src/base.less +5 -0
- package/codebase/sources/less/src/columns_view.less +1 -0
- package/codebase/sources/less/src/icons.less +4 -0
- package/codebase/sources/less/src/quick_info.less +1 -1
- package/codebase/sources/less/src/timeline.less +16 -4
- package/package.json +1 -1
- package/whatsnew.md +18 -0
|
@@ -62,7 +62,7 @@ function de(e) {
|
|
|
62
62
|
}(o);
|
|
63
63
|
if (t) {
|
|
64
64
|
var r = t(o);
|
|
65
|
-
if (o.css && r.classList.add(o.css), o.width && ((s = o.width) === 1 * s && (s += "px"), r.style.width = s), o.height && ((s = o.height) === 1 * s && (s += "px"), r.style.height = s), o.click &&
|
|
65
|
+
if (o.css && r.classList.add(o.css), o.width && ((s = o.width) === 1 * s && (s += "px"), r.style.width = s), o.height && ((s = o.height) === 1 * s && (s += "px"), r.style.height = s), o.click && e.event(r, "click", o.click), o.html && (r.innerHTML = o.html), o.align) {
|
|
66
66
|
var s = "";
|
|
67
67
|
o.align == "right" ? s = "flex-end" : o.align == "left" && (s = "flex-start"), r.style.justifyContent = s;
|
|
68
68
|
}
|
|
@@ -78,8 +78,8 @@ function de(e) {
|
|
|
78
78
|
for (var s = 0; s < t.length; s++) {
|
|
79
79
|
var c, u = d(t[s]);
|
|
80
80
|
u.view === "day" && t[s + 1] && ((c = d(t[s + 1])).view !== "week" && c.view !== "month" || (u.$firstTab = !0, u.$segmentedTab = !0)), u.view === "week" && t[s - 1] && ((c = d(t[s + 1])).view !== "week" && c.view !== "month" || (u.$segmentedTab = !0)), u.view === "month" && t[s - 1] && ((c = d(t[s - 1])).view !== "week" && c.view !== "day" || (u.$lastTab = !0, u.$segmentedTab = !0));
|
|
81
|
-
var
|
|
82
|
-
r.appendChild(
|
|
81
|
+
var v = i(u);
|
|
82
|
+
r.appendChild(v), (u.cols || u.rows) && v.appendChild(n(u.cols || u.rows));
|
|
83
83
|
}
|
|
84
84
|
return r;
|
|
85
85
|
}
|
|
@@ -402,8 +402,8 @@ const q = { getAbsoluteLeft: function(e) {
|
|
|
402
402
|
var a = document.documentElement, i = function(d) {
|
|
403
403
|
var n = 0, _ = 0, o = 0, t = 0;
|
|
404
404
|
if (d.getBoundingClientRect) {
|
|
405
|
-
var r = d.getBoundingClientRect(), s = document.body, c = document.documentElement || document.body.parentNode || document.body, u = window.pageYOffset || c.scrollTop || s.scrollTop,
|
|
406
|
-
n = r.top + u -
|
|
405
|
+
var r = d.getBoundingClientRect(), s = document.body, c = document.documentElement || document.body.parentNode || document.body, u = window.pageYOffset || c.scrollTop || s.scrollTop, v = window.pageXOffset || c.scrollLeft || s.scrollLeft, m = c.clientTop || s.clientTop || 0, l = c.clientLeft || s.clientLeft || 0;
|
|
406
|
+
n = r.top + u - m, _ = r.left + v - l, o = document.body.offsetWidth - r.right, t = document.body.offsetHeight - r.bottom;
|
|
407
407
|
} else {
|
|
408
408
|
for (; d; )
|
|
409
409
|
n += parseInt(d.offsetTop, 10), _ += parseInt(d.offsetLeft, 10), d = d.offsetParent;
|
|
@@ -709,7 +709,7 @@ function be(e) {
|
|
|
709
709
|
var o = new Function("date", 'return "' + n + '";');
|
|
710
710
|
return e.date._bind_host_object(o);
|
|
711
711
|
}, str_to_date: function(n, _, o) {
|
|
712
|
-
var t = d() ? a : h, r = t(n, _), s = /^[0-9]{4}(\-|\/)[0-9]{2}(\-|\/)[0-9]{2} ?(([0-9]{1,2}:[0-9]{1,2})(:[0-9]{1,2})?)?$/, c = /^[0-9]{2}\/[0-9]{2}\/[0-9]{4} ?(([0-9]{1,2}:[0-9]{2})(:[0-9]{1,2})?)?$/, u = /^[0-9]{2}\-[0-9]{2}\-[0-9]{4} ?(([0-9]{1,2}:[0-9]{1,2})(:[0-9]{1,2})?)?$/,
|
|
712
|
+
var t = d() ? a : h, r = t(n, _), s = /^[0-9]{4}(\-|\/)[0-9]{2}(\-|\/)[0-9]{2} ?(([0-9]{1,2}:[0-9]{1,2})(:[0-9]{1,2})?)?$/, c = /^[0-9]{2}\/[0-9]{2}\/[0-9]{4} ?(([0-9]{1,2}:[0-9]{2})(:[0-9]{1,2})?)?$/, u = /^[0-9]{2}\-[0-9]{2}\-[0-9]{4} ?(([0-9]{1,2}:[0-9]{1,2})(:[0-9]{1,2})?)?$/, v = /^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/, m = t("%Y-%m-%d %H:%i:%s", _), l = t("%m/%d/%Y %H:%i:%s", _), f = t("%d-%m-%Y %H:%i:%s", _);
|
|
713
713
|
return function(g) {
|
|
714
714
|
if (!o && !e.config.parse_exact_format) {
|
|
715
715
|
if (g && g.getISOWeek)
|
|
@@ -717,7 +717,7 @@ function be(e) {
|
|
|
717
717
|
if (typeof g == "number")
|
|
718
718
|
return new Date(g);
|
|
719
719
|
if (p = g, s.test(String(p)))
|
|
720
|
-
return
|
|
720
|
+
return m(g);
|
|
721
721
|
if (function(y) {
|
|
722
722
|
return c.test(String(y));
|
|
723
723
|
}(g))
|
|
@@ -727,7 +727,7 @@ function be(e) {
|
|
|
727
727
|
}(g))
|
|
728
728
|
return f(g);
|
|
729
729
|
if (function(y) {
|
|
730
|
-
return
|
|
730
|
+
return v.test(y);
|
|
731
731
|
}(g))
|
|
732
732
|
return new Date(g);
|
|
733
733
|
}
|
|
@@ -806,11 +806,11 @@ function xe(e) {
|
|
|
806
806
|
var t = _[o].getAttribute("for"), r = a.serverList[t];
|
|
807
807
|
r || (a.serverList[t] = r = []), r.splice(0, r.length);
|
|
808
808
|
for (var s = a.ajax.xpath(".//item", _[o]), c = 0; c < s.length; c++) {
|
|
809
|
-
for (var u = s[c].attributes,
|
|
810
|
-
var l = u[
|
|
811
|
-
l.nodeName != "value" && l.nodeName != "label" && (
|
|
809
|
+
for (var u = s[c].attributes, v = { key: s[c].getAttribute("value"), label: s[c].getAttribute("label") }, m = 0; m < u.length; m++) {
|
|
810
|
+
var l = u[m];
|
|
811
|
+
l.nodeName != "value" && l.nodeName != "label" && (v[l.nodeName] = l.nodeValue);
|
|
812
812
|
}
|
|
813
|
-
r.push(
|
|
813
|
+
r.push(v);
|
|
814
814
|
}
|
|
815
815
|
}
|
|
816
816
|
_.length && a.callEvent("onOptionsLoad", []);
|
|
@@ -849,21 +849,21 @@ function xe(e) {
|
|
|
849
849
|
r || (a.serverList[o] = r = []), r.splice(0, r.length);
|
|
850
850
|
for (var s = 0; s < t.length; s++) {
|
|
851
851
|
var c = t[s], u = { key: c.value, label: c.label };
|
|
852
|
-
for (var
|
|
853
|
-
if (c.hasOwnProperty(
|
|
854
|
-
if (
|
|
852
|
+
for (var v in c)
|
|
853
|
+
if (c.hasOwnProperty(v)) {
|
|
854
|
+
if (v == "value" || v == "label")
|
|
855
855
|
continue;
|
|
856
|
-
u[
|
|
856
|
+
u[v] = c[v];
|
|
857
857
|
}
|
|
858
858
|
r.push(u);
|
|
859
859
|
}
|
|
860
860
|
}
|
|
861
861
|
_ && a.callEvent("onOptionsLoad", []);
|
|
862
|
-
for (var
|
|
862
|
+
for (var m = [], l = 0; l < d.length; l++) {
|
|
863
863
|
var f = d[l];
|
|
864
|
-
a._init_event(f),
|
|
864
|
+
a._init_event(f), m.push(f);
|
|
865
865
|
}
|
|
866
|
-
return
|
|
866
|
+
return m;
|
|
867
867
|
} };
|
|
868
868
|
}(e), function(a) {
|
|
869
869
|
a.ical = a._parsers.ical = { canParse: function(i) {
|
|
@@ -993,18 +993,18 @@ function we(e) {
|
|
|
993
993
|
}
|
|
994
994
|
}, e._touch_events = function(h, a, i) {
|
|
995
995
|
var d, n, _, o, t, r, s = 0;
|
|
996
|
-
function c(
|
|
997
|
-
|
|
996
|
+
function c(v, m, l) {
|
|
997
|
+
e.event(v, m, function(f) {
|
|
998
998
|
return !!e._is_lightbox_open() || (i(f) ? void 0 : l(f));
|
|
999
999
|
}, { passive: !1 });
|
|
1000
1000
|
}
|
|
1001
|
-
function u(
|
|
1002
|
-
i(
|
|
1001
|
+
function u(v) {
|
|
1002
|
+
i(v) || (e._hide_global_tip(), o && (e._on_mouse_up(a(v)), e._temp_touch_block = !1), e._drag_id = null, e._drag_mode = null, e._drag_pos = null, e._pointerDragId = null, clearTimeout(_), o = r = !1, t = !0);
|
|
1003
1003
|
}
|
|
1004
|
-
c(document.body, h[0], function(
|
|
1005
|
-
if (!i(
|
|
1006
|
-
var
|
|
1007
|
-
if (
|
|
1004
|
+
c(document.body, h[0], function(v) {
|
|
1005
|
+
if (!i(v)) {
|
|
1006
|
+
var m = a(v);
|
|
1007
|
+
if (m) {
|
|
1008
1008
|
if (o)
|
|
1009
1009
|
return function(l) {
|
|
1010
1010
|
if (!i(l)) {
|
|
@@ -1015,26 +1015,26 @@ function we(e) {
|
|
|
1015
1015
|
w._sorder = k.length - 1, w._count = k.length, this.render_data([w], e.getState().mode);
|
|
1016
1016
|
}), e._on_mouse_move(l), f == "create" && g && (e.render_view_data = p), l.preventDefault && l.preventDefault(), l.cancelBubble = !0;
|
|
1017
1017
|
}
|
|
1018
|
-
}(
|
|
1019
|
-
n = a(
|
|
1018
|
+
}(m), v.preventDefault && v.preventDefault(), v.cancelBubble = !0, e._update_global_tip(), !1;
|
|
1019
|
+
n = a(v), r && (n ? (d.target != n.target || Math.abs(d.pageX - n.pageX) > 5 || Math.abs(d.pageY - n.pageY) > 5) && (t = !0, clearTimeout(_)) : t = !0);
|
|
1020
1020
|
}
|
|
1021
1021
|
}
|
|
1022
|
-
}), c(this._els.dhx_cal_data[0], "touchcancel", u), c(this._els.dhx_cal_data[0], "contextmenu", function(
|
|
1023
|
-
if (!i(
|
|
1024
|
-
return r ? (
|
|
1025
|
-
}), c(this._obj, h[1], function(
|
|
1026
|
-
var
|
|
1027
|
-
if (document && document.body && document.body.classList.add("dhx_cal_touch_active"), !i(
|
|
1028
|
-
if (e._pointerDragId =
|
|
1022
|
+
}), c(this._els.dhx_cal_data[0], "touchcancel", u), c(this._els.dhx_cal_data[0], "contextmenu", function(v) {
|
|
1023
|
+
if (!i(v))
|
|
1024
|
+
return r ? (v && v.preventDefault && v.preventDefault(), v.cancelBubble = !0, !1) : void 0;
|
|
1025
|
+
}), c(this._obj, h[1], function(v) {
|
|
1026
|
+
var m;
|
|
1027
|
+
if (document && document.body && document.body.classList.add("dhx_cal_touch_active"), !i(v))
|
|
1028
|
+
if (e._pointerDragId = v.pointerId, o = t = !1, r = !0, m = n = a(v)) {
|
|
1029
1029
|
var l = /* @__PURE__ */ new Date();
|
|
1030
1030
|
if (!t && !o && l - s < 250)
|
|
1031
|
-
return e._click.dhx_cal_data(
|
|
1032
|
-
e.$destroyed || e._on_dbl_click(
|
|
1033
|
-
}, 50),
|
|
1031
|
+
return e._click.dhx_cal_data(m), window.setTimeout(function() {
|
|
1032
|
+
e.$destroyed || e._on_dbl_click(m);
|
|
1033
|
+
}, 50), v.preventDefault && v.preventDefault(), v.cancelBubble = !0, e._block_next_stop = !0, !1;
|
|
1034
1034
|
if (s = l, !t && !o && e.config.touch_drag) {
|
|
1035
|
-
var f = e._locate_event(document.activeElement), g = e._locate_event(
|
|
1035
|
+
var f = e._locate_event(document.activeElement), g = e._locate_event(m.target), p = d ? e._locate_event(d.target) : null;
|
|
1036
1036
|
if (f && g && f == g && f != p)
|
|
1037
|
-
return
|
|
1037
|
+
return v.preventDefault && v.preventDefault(), v.cancelBubble = !0, e._ignore_next_click = !1, e._click.dhx_cal_data(m), d = m, !1;
|
|
1038
1038
|
_ = setTimeout(function() {
|
|
1039
1039
|
if (!e.$destroyed) {
|
|
1040
1040
|
o = !0;
|
|
@@ -1043,24 +1043,24 @@ function we(e) {
|
|
|
1043
1043
|
b.style.display = "none", e._rendered.splice(k, 1);
|
|
1044
1044
|
}), e.config.touch_tip && e._show_global_tip(), e.updateEvent(e._drag_id);
|
|
1045
1045
|
}
|
|
1046
|
-
}, e.config.touch_drag), d =
|
|
1046
|
+
}, e.config.touch_drag), d = m;
|
|
1047
1047
|
}
|
|
1048
1048
|
} else
|
|
1049
1049
|
t = !0;
|
|
1050
|
-
}), c(this._els.dhx_cal_data[0], h[2], function(
|
|
1051
|
-
if (document && document.body && document.body.classList.remove("dhx_cal_touch_active"), !i(
|
|
1052
|
-
return e.config.touch_swipe_dates && !o && function(
|
|
1053
|
-
if (!
|
|
1050
|
+
}), c(this._els.dhx_cal_data[0], h[2], function(v) {
|
|
1051
|
+
if (document && document.body && document.body.classList.remove("dhx_cal_touch_active"), !i(v))
|
|
1052
|
+
return e.config.touch_swipe_dates && !o && function(m, l, f, g) {
|
|
1053
|
+
if (!m || !l)
|
|
1054
1054
|
return !1;
|
|
1055
|
-
for (var p =
|
|
1055
|
+
for (var p = m.target; p && p != e._obj; )
|
|
1056
1056
|
p = p.parentNode;
|
|
1057
1057
|
if (p != e._obj || e.matrix && e.matrix[e.getState().mode] && e.matrix[e.getState().mode].scrollable)
|
|
1058
1058
|
return !1;
|
|
1059
|
-
var y = Math.abs(
|
|
1060
|
-
return y < g && w > f && (!y || w / y > 3) && (
|
|
1059
|
+
var y = Math.abs(m.pageY - l.pageY), w = Math.abs(m.pageX - l.pageX);
|
|
1060
|
+
return y < g && w > f && (!y || w / y > 3) && (m.pageX > l.pageX ? e._click.dhx_cal_next_button() : e._click.dhx_cal_prev_button(), !0);
|
|
1061
1061
|
}(d, n, 200, 100) && (e._block_next_stop = !0), o && (e._ignore_next_click = !0, setTimeout(function() {
|
|
1062
1062
|
e._ignore_next_click = !1;
|
|
1063
|
-
}, 100)), u(
|
|
1063
|
+
}, 100)), u(v), e._block_next_stop ? (e._block_next_stop = !1, v.preventDefault && v.preventDefault(), v.cancelBubble = !0, !1) : void 0;
|
|
1064
1064
|
}), e.event(document.body, h[2], u);
|
|
1065
1065
|
}, e._show_global_tip = function() {
|
|
1066
1066
|
e._hide_global_tip();
|
|
@@ -1088,122 +1088,111 @@ function ke(e) {
|
|
|
1088
1088
|
return !0;
|
|
1089
1089
|
if (a !== void 0)
|
|
1090
1090
|
return a;
|
|
1091
|
-
var
|
|
1092
|
-
|
|
1093
|
-
var
|
|
1094
|
-
document.body.removeChild(
|
|
1091
|
+
var o = document.createElement("div");
|
|
1092
|
+
o.style.position = "absolute", o.style.left = "-9999px", o.style.top = "-9999px", o.innerHTML = "<div class='dhx_cal_container'><div class='dhx_cal_data'><div class='dhx_cal_event'><div class='dhx_body'></div></div><div>", document.body.appendChild(o);
|
|
1093
|
+
var t = window.getComputedStyle(o.querySelector(".dhx_body")).getPropertyValue("box-sizing");
|
|
1094
|
+
document.body.removeChild(o), (a = t === "border-box") || setTimeout(function() {
|
|
1095
1095
|
a = void 0;
|
|
1096
1096
|
}, 1e3);
|
|
1097
1097
|
}
|
|
1098
1098
|
function d() {
|
|
1099
1099
|
if (!e._is_material_skin() && !e._border_box_events()) {
|
|
1100
|
-
var
|
|
1101
|
-
a = void 0, h = void 0,
|
|
1100
|
+
var o = a;
|
|
1101
|
+
a = void 0, h = void 0, o !== i() && e.$container && e.getState().mode && e.setCurrentView();
|
|
1102
1102
|
}
|
|
1103
1103
|
}
|
|
1104
|
-
function n(
|
|
1105
|
-
var
|
|
1106
|
-
return
|
|
1104
|
+
function n(o) {
|
|
1105
|
+
var t = o.getMinutes();
|
|
1106
|
+
return t = t < 10 ? "0" + t : t, "<span class='dhx_scale_h'>" + o.getHours() + "</span><span class='dhx_scale_m'> " + t + "</span>";
|
|
1107
1107
|
}
|
|
1108
1108
|
e._addThemeClass = function() {
|
|
1109
1109
|
document.documentElement.setAttribute("data-scheduler-theme", e.skin);
|
|
1110
1110
|
}, e._skin_settings = { fix_tab_position: [1, 0], use_select_menu_space: [1, 0], wide_form: [1, 0], hour_size_px: [44, 42], displayed_event_color: ["#ff4a4a", "ffc5ab"], displayed_event_text_color: ["#ffef80", "7e2727"] }, e._skin_xy = { lightbox_additional_height: [90, 50], nav_height: [59, 22], bar_height: [24, 20] }, e._is_material_skin = function() {
|
|
1111
1111
|
return e.skin ? (e.skin + "").indexOf("material") > -1 : function() {
|
|
1112
1112
|
if (h === void 0) {
|
|
1113
|
-
var
|
|
1114
|
-
|
|
1115
|
-
var
|
|
1116
|
-
h =
|
|
1117
|
-
h = null,
|
|
1113
|
+
var o = document.createElement("div");
|
|
1114
|
+
o.style.position = "absolute", o.style.left = "-9999px", o.style.top = "-9999px", o.innerHTML = "<div class='dhx_cal_container'><div class='dhx_cal_scale_placeholder'></div><div>", document.body.appendChild(o);
|
|
1115
|
+
var t = window.getComputedStyle(o.querySelector(".dhx_cal_scale_placeholder")).getPropertyValue("position");
|
|
1116
|
+
h = t === "absolute", setTimeout(function() {
|
|
1117
|
+
h = null, o && o.parentNode && o.parentNode.removeChild(o);
|
|
1118
1118
|
}, 500);
|
|
1119
1119
|
}
|
|
1120
1120
|
return h;
|
|
1121
1121
|
}();
|
|
1122
1122
|
}, e._build_skin_info = function() {
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1123
|
+
(function() {
|
|
1124
|
+
const v = e.$container;
|
|
1125
|
+
clearInterval(_), v && (_ = setInterval(() => {
|
|
1126
|
+
const m = getComputedStyle(v).getPropertyValue("--dhx-scheduler-theme");
|
|
1127
|
+
m && m !== e.skin && e.setSkin(m);
|
|
1128
|
+
}, 100));
|
|
1129
|
+
})();
|
|
1130
|
+
const o = getComputedStyle(this.$container), t = o.getPropertyValue("--dhx-scheduler-theme");
|
|
1131
|
+
let r, s = !!t, c = {}, u = !1;
|
|
1132
|
+
if (s) {
|
|
1133
|
+
r = t;
|
|
1134
|
+
for (let v in e.xy)
|
|
1135
|
+
c[v] = o.getPropertyValue(`--dhx-scheduler-xy-${v}`);
|
|
1136
|
+
c.hour_size_px = o.getPropertyValue("--dhx-scheduler-config-hour_size_px"), c.wide_form = o.getPropertyValue("--dhx-scheduler-config-form_wide");
|
|
1130
1137
|
} else
|
|
1131
|
-
|
|
1132
|
-
for (var
|
|
1133
|
-
var
|
|
1134
|
-
if (
|
|
1135
|
-
return
|
|
1138
|
+
r = function() {
|
|
1139
|
+
for (var v = document.getElementsByTagName("link"), m = 0; m < v.length; m++) {
|
|
1140
|
+
var l = v[m].href.match("dhtmlxscheduler_([a-z]+).css");
|
|
1141
|
+
if (l)
|
|
1142
|
+
return l[1];
|
|
1136
1143
|
}
|
|
1137
|
-
}(),
|
|
1138
|
-
if (e._theme_info = { theme:
|
|
1139
|
-
const
|
|
1144
|
+
}(), u = e._is_material_skin();
|
|
1145
|
+
if (e._theme_info = { theme: r, cssVarTheme: s, oldMaterialTheme: u, values: c }, e._theme_info.cssVarTheme) {
|
|
1146
|
+
const v = this._theme_info.values;
|
|
1140
1147
|
for (let m in e.xy)
|
|
1141
|
-
isNaN(parseInt(
|
|
1148
|
+
isNaN(parseInt(v[m])) || (e.xy[m] = parseInt(v[m]));
|
|
1142
1149
|
}
|
|
1143
|
-
}, e.
|
|
1144
|
-
return e._theme_info.cssVarTheme;
|
|
1145
|
-
}, window.addEventListener("DOMContentLoaded", d), window.addEventListener("load", d), e._border_box_events = function() {
|
|
1150
|
+
}, e.event(window, "DOMContentLoaded", d), e.event(window, "load", d), e._border_box_events = function() {
|
|
1146
1151
|
return i();
|
|
1147
|
-
}, e._configure = function(
|
|
1148
|
-
for (var
|
|
1149
|
-
|
|
1150
|
-
}, e.setSkin = function(
|
|
1151
|
-
this.skin =
|
|
1152
|
-
}
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
e.config.buttons_left = e.config.buttons_right.slice(), e.config.buttons_right = r;
|
|
1160
|
-
}
|
|
1161
|
-
e.xy.event_header_height = 18, e.xy.week_agenda_scale_height = 35, e.xy.map_icon_width = 38, e._lightbox_controls.defaults.textarea.height = 64, e._lightbox_controls.defaults.time.height = "auto";
|
|
1162
|
-
}
|
|
1163
|
-
if (this._configure(e.config, e._skin_settings, _), this._configure(e.xy, e._skin_xy, _), e.skin === "flat" && (e.xy.scale_height = 35, e.templates.hour_scale = function(c) {
|
|
1164
|
-
var u = c.getMinutes();
|
|
1165
|
-
return u = u < 10 ? "0" + u : u, "<span class='dhx_scale_h'>" + c.getHours() + "</span><span class='dhx_scale_m'> " + u + "</span>";
|
|
1166
|
-
}), _)
|
|
1167
|
-
return;
|
|
1168
|
-
}
|
|
1169
|
-
if (!this._theme_info.cssVarTheme) {
|
|
1170
|
-
var s = e.config.minicalendar;
|
|
1171
|
-
s && (s.padding = 14);
|
|
1172
|
-
}
|
|
1173
|
-
e.attachEvent("onTemplatesReady", function() {
|
|
1174
|
-
var c = e.date.date_to_str("%d");
|
|
1152
|
+
}, e._configure = function(o, t, r) {
|
|
1153
|
+
for (var s in t)
|
|
1154
|
+
o[s] === void 0 && (o[s] = t[s][r]);
|
|
1155
|
+
}, e.setSkin = function(o) {
|
|
1156
|
+
this.skin = o, e._addThemeClass(), e.$container && (this._skin_init(), this.render());
|
|
1157
|
+
};
|
|
1158
|
+
let _ = null;
|
|
1159
|
+
e.attachEvent("onDestroy", function() {
|
|
1160
|
+
clearInterval(_);
|
|
1161
|
+
}), e._skin_init = function() {
|
|
1162
|
+
this._build_skin_info(), this.skin || (this.skin = this._theme_info.theme), e._addThemeClass(), e.skin === "flat" ? e.templates.hour_scale = n : e.templates.hour_scale === n && (e.templates.hour_scale = e.date.date_to_str(e.config.hour_date)), e.attachEvent("onTemplatesReady", function() {
|
|
1163
|
+
var o = e.date.date_to_str("%d");
|
|
1175
1164
|
e.templates._old_month_day || (e.templates._old_month_day = e.templates.month_day);
|
|
1176
|
-
var
|
|
1177
|
-
e.templates.month_day = function(
|
|
1165
|
+
var t = e.templates._old_month_day;
|
|
1166
|
+
e.templates.month_day = function(r) {
|
|
1178
1167
|
if (this._mode == "month") {
|
|
1179
|
-
var
|
|
1180
|
-
return
|
|
1168
|
+
var s = o(r);
|
|
1169
|
+
return r.getDate() == 1 && (s = e.locale.date.month_full[r.getMonth()] + " " + s), +r == +e.date.date_part(this._currentDate()) && (s = e.locale.labels.dhx_cal_today_button + " " + s), s;
|
|
1181
1170
|
}
|
|
1182
|
-
return
|
|
1183
|
-
}, e.config.fix_tab_position && (e._els.dhx_cal_navline[0].querySelectorAll("[data-tab]").forEach((
|
|
1184
|
-
switch (
|
|
1171
|
+
return t.call(this, r);
|
|
1172
|
+
}, e.config.fix_tab_position && (e._els.dhx_cal_navline[0].querySelectorAll("[data-tab]").forEach((r) => {
|
|
1173
|
+
switch (r.getAttribute("data-tab") || r.getAttribute("name")) {
|
|
1185
1174
|
case "day":
|
|
1186
1175
|
case "day_tab":
|
|
1187
|
-
|
|
1176
|
+
r.classList.add("dhx_cal_tab_first"), r.classList.add("dhx_cal_tab_segmented");
|
|
1188
1177
|
break;
|
|
1189
1178
|
case "week":
|
|
1190
1179
|
case "week_tab":
|
|
1191
|
-
|
|
1180
|
+
r.classList.add("dhx_cal_tab_segmented");
|
|
1192
1181
|
break;
|
|
1193
1182
|
case "month":
|
|
1194
1183
|
case "month_tab":
|
|
1195
|
-
|
|
1184
|
+
r.classList.add("dhx_cal_tab_last"), r.classList.add("dhx_cal_tab_segmented");
|
|
1196
1185
|
break;
|
|
1197
1186
|
default:
|
|
1198
|
-
|
|
1187
|
+
r.classList.add("dhx_cal_tab_standalone");
|
|
1199
1188
|
}
|
|
1200
|
-
}), function(
|
|
1189
|
+
}), function(r) {
|
|
1201
1190
|
if (e.config.header)
|
|
1202
1191
|
return;
|
|
1203
|
-
const
|
|
1204
|
-
let
|
|
1205
|
-
|
|
1206
|
-
|
|
1192
|
+
const s = Array.from(r.querySelectorAll(".dhx_cal_tab")), c = ["day", "week", "month"].map((v) => s.find((m) => m.getAttribute("data-tab") === v)).filter((v) => v !== void 0);
|
|
1193
|
+
let u = s.length > 0 ? s[0] : null;
|
|
1194
|
+
c.reverse().forEach((v) => {
|
|
1195
|
+
r.insertBefore(v, u), u = v;
|
|
1207
1196
|
});
|
|
1208
1197
|
}(e._els.dhx_cal_navline[0]));
|
|
1209
1198
|
}, { once: !0 });
|
|
@@ -1241,7 +1230,7 @@ function De(e) {
|
|
|
1241
1230
|
var h = "data-dhxbox", a = null;
|
|
1242
1231
|
function i(g, p) {
|
|
1243
1232
|
var y = g.callback;
|
|
1244
|
-
|
|
1233
|
+
m.hide(g.box), a = g.box = null, y && y(p);
|
|
1245
1234
|
}
|
|
1246
1235
|
function d(g) {
|
|
1247
1236
|
if (a) {
|
|
@@ -1292,7 +1281,7 @@ function De(e) {
|
|
|
1292
1281
|
}(g, p, y);
|
|
1293
1282
|
g.hidden || n(!0), document.body.appendChild(w);
|
|
1294
1283
|
var b = Math.abs(Math.floor(((window.innerWidth || document.documentElement.offsetWidth) - w.offsetWidth) / 2)), k = Math.abs(Math.floor(((window.innerHeight || document.documentElement.offsetHeight) - w.offsetHeight) / 2));
|
|
1295
|
-
return g.position == "top" ? w.style.top = "-3px" : w.style.top = k + "px", w.style.left = b + "px", e.event(w, "keydown", d),
|
|
1284
|
+
return g.position == "top" ? w.style.top = "-3px" : w.style.top = k + "px", w.style.left = b + "px", e.event(w, "keydown", d), m.focus(w), g.hidden && m.hide(w), e.callEvent("onMessagePopup", [w]), w;
|
|
1296
1285
|
}
|
|
1297
1286
|
function r(g) {
|
|
1298
1287
|
return t(g, !0, !1);
|
|
@@ -1306,26 +1295,26 @@ function De(e) {
|
|
|
1306
1295
|
function u(g, p, y) {
|
|
1307
1296
|
return typeof g != "object" && (typeof p == "function" && (y = p, p = ""), g = { text: g, type: p, callback: y }), g;
|
|
1308
1297
|
}
|
|
1309
|
-
function
|
|
1298
|
+
function v(g, p, y, w) {
|
|
1310
1299
|
return typeof g != "object" && (g = { text: g, type: p, expire: y, id: w }), g.id = g.id || I.uid(), g.expire = g.expire || l.expire, g;
|
|
1311
1300
|
}
|
|
1312
1301
|
e.event(document, "keydown", d, !0);
|
|
1313
|
-
var
|
|
1302
|
+
var m = function() {
|
|
1314
1303
|
var g = u.apply(this, arguments);
|
|
1315
1304
|
return g.type = g.type || "alert", c(g);
|
|
1316
1305
|
};
|
|
1317
|
-
|
|
1306
|
+
m.hide = function(g) {
|
|
1318
1307
|
for (; g && g.getAttribute && !g.getAttribute(h); )
|
|
1319
1308
|
g = g.parentNode;
|
|
1320
1309
|
g && (g.parentNode.removeChild(g), n(!1), e.callEvent("onAfterMessagePopup", [g]));
|
|
1321
|
-
},
|
|
1310
|
+
}, m.focus = function(g) {
|
|
1322
1311
|
setTimeout(function() {
|
|
1323
1312
|
var p = q.getFocusableNodes(g);
|
|
1324
1313
|
p.length && p[0].focus && p[0].focus();
|
|
1325
1314
|
}, 1);
|
|
1326
1315
|
};
|
|
1327
1316
|
var l = function(g, p, y, w) {
|
|
1328
|
-
switch ((g =
|
|
1317
|
+
switch ((g = v.apply(this, arguments)).type = g.type || "info", g.type.split("-")[0]) {
|
|
1329
1318
|
case "alert":
|
|
1330
1319
|
return r(g);
|
|
1331
1320
|
case "confirm":
|
|
@@ -1370,7 +1359,7 @@ function De(e) {
|
|
|
1370
1359
|
}, confirm: function() {
|
|
1371
1360
|
var g = u.apply(this, arguments);
|
|
1372
1361
|
return g.type = g.type || "alert", s(g);
|
|
1373
|
-
}, message: l, modalbox:
|
|
1362
|
+
}, message: l, modalbox: m };
|
|
1374
1363
|
}
|
|
1375
1364
|
G.prototype = { setTransactionMode: function(e, h) {
|
|
1376
1365
|
typeof e == "object" ? (this._tMode = e.mode || this._tMode, e.headers !== void 0 && (this._headers = e.headers), e.payload !== void 0 && (this._payload = e.payload), this._tSend = !!h) : (this._tMode = e, this._tSend = h), this._tMode == "REST" && (this._tSend = !1, this._endnm = !0), this._tMode === "JSON" || this._tMode === "REST-JSON" ? (this._tSend = !1, this._endnm = !0, this._serializeAsJson = !0, this._headers = this._headers || {}, this._headers["Content-Type"] = "application/json") : this._headers && !this._headers["Content-Type"] && (this._headers["Content-Type"] = "application/x-www-form-urlencoded"), this._tMode === "CUSTOM" && (this._tSend = !1, this._endnm = !0, this._router = e.router);
|
|
@@ -1457,14 +1446,14 @@ G.prototype = { setTransactionMode: function(e, h) {
|
|
|
1457
1446
|
h && (this._in_progress[h] = (/* @__PURE__ */ new Date()).valueOf());
|
|
1458
1447
|
var a = this, i = this.$scheduler.ajax;
|
|
1459
1448
|
if (this._tMode !== "CUSTOM") {
|
|
1460
|
-
var d, n = { callback: function(
|
|
1449
|
+
var d, n = { callback: function(m) {
|
|
1461
1450
|
var l = [];
|
|
1462
1451
|
if (h)
|
|
1463
1452
|
l.push(h);
|
|
1464
1453
|
else if (e)
|
|
1465
1454
|
for (var f in e)
|
|
1466
1455
|
l.push(f);
|
|
1467
|
-
return a.afterUpdate(a,
|
|
1456
|
+
return a.afterUpdate(a, m, l);
|
|
1468
1457
|
}, headers: a._headers }, _ = this.serverProcessor + (this._user ? i.urlSeparator(this.serverProcessor) + ["dhx_user=" + this._user, "dhx_version=" + this.$scheduler.getUserData(0, "version")].join("&") : ""), o = this._applyPayload(_);
|
|
1469
1458
|
switch (this._tMode) {
|
|
1470
1459
|
case "GET":
|
|
@@ -1510,27 +1499,27 @@ G.prototype = { setTransactionMode: function(e, h) {
|
|
|
1510
1499
|
var g = h, p = h;
|
|
1511
1500
|
l && (f = l.action || f, g = l.sid || g, p = l.id || l.tid || p), a.afterUpdateCallback(g, p, f, l);
|
|
1512
1501
|
};
|
|
1513
|
-
const
|
|
1514
|
-
var
|
|
1502
|
+
const m = "event";
|
|
1503
|
+
var v;
|
|
1515
1504
|
if (this._router instanceof Function)
|
|
1516
|
-
|
|
1505
|
+
v = this._router(m, c, e, h);
|
|
1517
1506
|
else
|
|
1518
1507
|
switch (s) {
|
|
1519
1508
|
case "inserted":
|
|
1520
|
-
|
|
1509
|
+
v = this._router[m].create(e);
|
|
1521
1510
|
break;
|
|
1522
1511
|
case "deleted":
|
|
1523
|
-
|
|
1512
|
+
v = this._router[m].delete(h);
|
|
1524
1513
|
break;
|
|
1525
1514
|
default:
|
|
1526
|
-
|
|
1515
|
+
v = this._router[m].update(e, h);
|
|
1527
1516
|
}
|
|
1528
|
-
if (
|
|
1529
|
-
if (!
|
|
1517
|
+
if (v) {
|
|
1518
|
+
if (!v.then && v.id === void 0 && v.tid === void 0 && v.action === void 0)
|
|
1530
1519
|
throw new Error("Incorrect router return value. A Promise or a response object is expected");
|
|
1531
|
-
|
|
1520
|
+
v.then ? v.then(u).catch(function(l) {
|
|
1532
1521
|
l && l.action ? u(l) : u({ action: "error", value: l });
|
|
1533
|
-
}) : u(
|
|
1522
|
+
}) : u(v);
|
|
1534
1523
|
} else
|
|
1535
1524
|
u(null);
|
|
1536
1525
|
}
|
|
@@ -1667,15 +1656,18 @@ G.prototype = { setTransactionMode: function(e, h) {
|
|
|
1667
1656
|
}, setOnBeforeUpdateHandler: function(e) {
|
|
1668
1657
|
this.attachEvent("onBeforeDataSending", e);
|
|
1669
1658
|
}, setAutoUpdate: function(e, h) {
|
|
1670
|
-
e = e || 2e3, this._user = h || (/* @__PURE__ */ new Date()).valueOf(), this._need_update = !1, this._update_busy = !1, this.attachEvent("onAfterUpdate", function(
|
|
1671
|
-
this.afterAutoUpdate(
|
|
1659
|
+
e = e || 2e3, this._user = h || (/* @__PURE__ */ new Date()).valueOf(), this._need_update = !1, this._update_busy = !1, this.attachEvent("onAfterUpdate", function(d, n, _, o) {
|
|
1660
|
+
this.afterAutoUpdate(d, n, _, o);
|
|
1672
1661
|
}), this.attachEvent("onFullSync", function() {
|
|
1673
1662
|
this.fullSync();
|
|
1674
1663
|
});
|
|
1675
1664
|
var a = this;
|
|
1676
|
-
B.setInterval(function() {
|
|
1665
|
+
let i = B.setInterval(function() {
|
|
1677
1666
|
a.loadUpdate();
|
|
1678
1667
|
}, e);
|
|
1668
|
+
this.attachEvent("onDestroy", function() {
|
|
1669
|
+
clearInterval(i);
|
|
1670
|
+
});
|
|
1679
1671
|
}, afterAutoUpdate: function(e, h, a, i) {
|
|
1680
1672
|
return h != "collision" || (this._need_update = !0, !1);
|
|
1681
1673
|
}, fullSync: function() {
|
|
@@ -1746,7 +1738,7 @@ G.prototype = { setTransactionMode: function(e, h) {
|
|
|
1746
1738
|
var h = this.$scheduler.getEvent(e);
|
|
1747
1739
|
return h || (h = { id: e }), this._prepareDataItem(h);
|
|
1748
1740
|
} };
|
|
1749
|
-
const Se = { date: { month_full: ["كانون الثاني", "شباط", "آذار", "نيسان", "أيار", "حزيران", "تموز", "آب", "أيلول", "تشرين الأول", "تشرين الثاني", "كانون الأول"], month_short: ["يناير", "فبراير", "مارس", "أبريل", "مايو", "يونيو", "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر"], day_full: ["الأحد", "الأثنين", "ألثلاثاء", "الأربعاء", "ألحميس", "ألجمعة", "السبت"], day_short: ["احد", "اثنين", "ثلاثاء", "اربعاء", "خميس", "جمعة", "سبت"] }, labels: { dhx_cal_today_button: "اليوم", day_tab: "يوم", week_tab: "أسبوع", month_tab: "شهر", new_event: "حدث جديد", icon_save: "اخزن", icon_cancel: "الغاء", icon_details: "تفاصيل", icon_edit: "تحرير", icon_delete: "حذف", confirm_closing: "التغييرات سوف تضيع, هل انت متأكد؟", confirm_deleting: "الحدث سيتم حذفها نهائيا ، هل أنت متأكد؟", section_description: "الوصف", section_time: "الفترة الزمنية", full_day: "طوال اليوم", confirm_recurring: "هل تريد تحرير مجموعة كاملة من الأحداث المتكررة؟", section_recurring: "تكرار الحدث", button_recurring: "تعطيل", button_recurring_open: "تمكين", button_edit_series: "تحرير سلسلة", button_edit_occurrence: "تعديل نسخة", grid_tab: "جدول", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } }, Ne = { date: { month_full: ["Студзень", "Люты", "Сакавік", "Красавік", "Maй", "Чэрвень", "Ліпень", "Жнівень", "Верасень", "Кастрычнік", "Лістапад", "Снежань"], month_short: ["Студз", "Лют", "Сак", "Крас", "Maй", "Чэр", "Ліп", "Жнів", "Вер", "Каст", "Ліст", "Снеж"], day_full: ["Нядзеля", "Панядзелак", "Аўторак", "Серада", "Чацвер", "Пятніца", "Субота"], day_short: ["Нд", "Пн", "Аўт", "Ср", "Чцв", "Пт", "Сб"] }, labels: { dhx_cal_today_button: "Сёння", day_tab: "Дзень", week_tab: "Тыдзень", month_tab: "Месяц", new_event: "Новая падзея", icon_save: "Захаваць", icon_cancel: "Адмяніць", icon_details: "Дэталі", icon_edit: "Змяніць", icon_delete: "Выдаліць", confirm_closing: "", confirm_deleting: "Падзея будзе выдалена незваротна, працягнуць?", section_description: "Апісанне", section_time: "Перыяд часу", full_day: "Увесь дзень", confirm_recurring: "Вы хочаце змяніць усю серыю паўтаральных падзей?", section_recurring: "Паўтарэнне", button_recurring: "Адключана", button_recurring_open: "Уключана", button_edit_series: "Рэдагаваць серыю", button_edit_occurrence: "Рэдагаваць асобнік", agenda_tab: "Спіс", date: "Дата", description: "Апісанне", year_tab: "Год", week_agenda_tab: "Спіс", grid_tab: "Спic", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Дзень", repeat_radio_week: "Тыдзень", repeat_radio_month: "Месяц", repeat_radio_year: "Год", repeat_radio_day_type: "Кожны", repeat_text_day_count: "дзень", repeat_radio_day_type2: "Кожны працоўны дзень", repeat_week: " Паўтараць кожны", repeat_text_week_count: "тыдзень", repeat_radio_month_type: "Паўтараць", repeat_radio_month_start: "", repeat_text_month_day: " чысла кожнага", repeat_text_month_count: "месяцу", repeat_text_month_count2_before: "кожны ", repeat_text_month_count2_after: "месяц", repeat_year_label: "", select_year_day2: "", repeat_text_year_day: "дзень", select_year_month: "", repeat_radio_end: "Без даты заканчэння", repeat_text_occurences_count: "паўтораў", repeat_radio_end2: "", repeat_radio_end3: "Да ", month_for_recurring: ["Студзеня", "Лютага", "Сакавіка", "Красавіка", "Мая", "Чэрвеня", "Ліпeня", "Жніўня", "Верасня", "Кастрычніка", "Лістапада", "Снежня"], day_for_recurring: ["Нядзелю", "Панядзелак", "Аўторак", "Сераду", "Чацвер", "Пятніцу", "Суботу"] } }, Me = { date: { month_full: ["Gener", "Febrer", "Març", "Abril", "Maig", "Juny", "Juliol", "Agost", "Setembre", "Octubre", "Novembre", "Desembre"], month_short: ["Gen", "Feb", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Oct", "Nov", "Des"], day_full: ["Diumenge", "Dilluns", "Dimarts", "Dimecres", "Dijous", "Divendres", "Dissabte"], day_short: ["Dg", "Dl", "Dm", "Dc", "Dj", "Dv", "Ds"] }, labels: { dhx_cal_today_button: "Hui", day_tab: "Dia", week_tab: "Setmana", month_tab: "Mes", new_event: "Nou esdeveniment", icon_save: "Guardar", icon_cancel: "Cancel·lar", icon_details: "Detalls", icon_edit: "Editar", icon_delete: "Esborrar", confirm_closing: "", confirm_deleting: "L'esdeveniment s'esborrarà definitivament, continuar ?", section_description: "Descripció", section_time: "Periode de temps", full_day: "Tot el dia", confirm_recurring: "¿Desitja modificar el conjunt d'esdeveniments repetits?", section_recurring: "Repeteixca l'esdeveniment", button_recurring: "Impedit", button_recurring_open: "Permés", button_edit_series: "Edit sèrie", button_edit_occurrence: "Edita Instància", agenda_tab: "Agenda", date: "Data", description: "Descripció", year_tab: "Any", week_agenda_tab: "Agenda", grid_tab: "Taula", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } }, Ae = { date: { month_full: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], month_short: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"], day_full: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"], day_short: ["日", "一", "二", "三", "四", "五", "六"] }, labels: { dhx_cal_today_button: "今天", day_tab: "日", week_tab: "周", month_tab: "月", new_event: "新建日程", icon_save: "保存", icon_cancel: "关闭", icon_details: "详细", icon_edit: "编辑", icon_delete: "删除", confirm_closing: "请确认是否撤销修改!", confirm_deleting: "是否删除日程?", section_description: "描述", section_time: "时间范围", full_day: "整天", confirm_recurring: "请确认是否将日程设为重复模式?", section_recurring: "重复周期", button_recurring: "禁用", button_recurring_open: "启用", button_edit_series: "编辑系列", button_edit_occurrence: "编辑实例", agenda_tab: "议程", date: "日期", description: "说明", year_tab: "今年", week_agenda_tab: "议程", grid_tab: "电网", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "按天", repeat_radio_week: "按周", repeat_radio_month: "按月", repeat_radio_year: "按年", repeat_radio_day_type: "每", repeat_text_day_count: "天", repeat_radio_day_type2: "每个工作日", repeat_week: " 重复 每", repeat_text_week_count: "星期的:", repeat_radio_month_type: "重复", repeat_radio_month_start: "在", repeat_text_month_day: "日 每", repeat_text_month_count: "月", repeat_text_month_count2_before: "每", repeat_text_month_count2_after: "月", repeat_year_label: "在", select_year_day2: "的", repeat_text_year_day: "日", select_year_month: "月", repeat_radio_end: "无结束日期", repeat_text_occurences_count: "次结束", repeat_radio_end2: "重复", repeat_radio_end3: "结束于", month_for_recurring: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], day_for_recurring: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"] } }, Ce = { date: { month_full: ["Leden", "Únor", "Březen", "Duben", "Květen", "Červen", "Červenec", "Srpen", "Září", "Říjen", "Listopad", "Prosinec"], month_short: ["Led", "Ún", "Bře", "Dub", "Kvě", "Čer", "Čec", "Srp", "Září", "Říj", "List", "Pro"], day_full: ["Neděle", "Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota"], day_short: ["Ne", "Po", "Út", "St", "Čt", "Pá", "So"] }, labels: { dhx_cal_today_button: "Dnes", day_tab: "Den", week_tab: "Týden", month_tab: "Měsíc", new_event: "Nová událost", icon_save: "Uložit", icon_cancel: "Zpět", icon_details: "Detail", icon_edit: "Edituj", icon_delete: "Smazat", confirm_closing: "", confirm_deleting: "Událost bude trvale smazána, opravdu?", section_description: "Poznámky", section_time: "Doba platnosti", confirm_recurring: "Přejete si upravit celou řadu opakovaných událostí?", section_recurring: "Opakování události", button_recurring: "Vypnuto", button_recurring_open: "Zapnuto", button_edit_series: "Edit series", button_edit_occurrence: "Upravit instance", agenda_tab: "Program", date: "Datum", description: "Poznámka", year_tab: "Rok", full_day: "Full day", week_agenda_tab: "Program", grid_tab: "Mřížka", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Denně", repeat_radio_week: "Týdně", repeat_radio_month: "Měsíčně", repeat_radio_year: "Ročně", repeat_radio_day_type: "každý", repeat_text_day_count: "Den", repeat_radio_day_type2: "pracovní dny", repeat_week: "Opakuje každých", repeat_text_week_count: "Týdnů na:", repeat_radio_month_type: "u každého", repeat_radio_month_start: "na", repeat_text_month_day: "Den každého", repeat_text_month_count: "Měsíc", repeat_text_month_count2_before: "každý", repeat_text_month_count2_after: "Měsíc", repeat_year_label: "na", select_year_day2: "v", repeat_text_year_day: "Den v", select_year_month: "", repeat_radio_end: "bez data ukončení", repeat_text_occurences_count: "Události", repeat_radio_end2: "po", repeat_radio_end3: "Konec", month_for_recurring: ["Leden", "Únor", "Březen", "Duben", "Květen", "Červen", "Červenec", "Srpen", "Září", "Říjen", "Listopad", "Prosinec"], day_for_recurring: ["Neděle ", "Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota"] } }, Te = { date: { month_full: ["Januar", "Februar", "Marts", "April", "Maj", "Juni", "Juli", "August", "September", "Oktober", "November", "December"], month_short: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"], day_full: ["Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"], day_short: ["Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør"] }, labels: { dhx_cal_today_button: "Idag", day_tab: "Dag", week_tab: "Uge", month_tab: "Måned", new_event: "Ny begivenhed", icon_save: "Gem", icon_cancel: "Fortryd", icon_details: "Detaljer", icon_edit: "Tilret", icon_delete: "Slet", confirm_closing: "Dine rettelser vil gå tabt.. Er dy sikker?", confirm_deleting: "Bigivenheden vil blive slettet permanent. Er du sikker?", section_description: "Beskrivelse", section_time: "Tidsperiode", confirm_recurring: "Vil du tilrette hele serien af gentagne begivenheder?", section_recurring: "Gentag begivenhed", button_recurring: "Frakoblet", button_recurring_open: "Tilkoblet", button_edit_series: "Rediger serien", button_edit_occurrence: "Rediger en kopi", agenda_tab: "Dagsorden", date: "Dato", description: "Beskrivelse", year_tab: "År", week_agenda_tab: "Dagsorden", grid_tab: "Grid", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Daglig", repeat_radio_week: "Ugenlig", repeat_radio_month: "Månedlig", repeat_radio_year: "Årlig", repeat_radio_day_type: "Hver", repeat_text_day_count: "dag", repeat_radio_day_type2: "På hver arbejdsdag", repeat_week: " Gentager sig hver", repeat_text_week_count: "uge på følgende dage:", repeat_radio_month_type: "Hver den", repeat_radio_month_start: "Den", repeat_text_month_day: " i hver", repeat_text_month_count: "måned", repeat_text_month_count2_before: "hver", repeat_text_month_count2_after: "måned", repeat_year_label: "Den", select_year_day2: "i", repeat_text_year_day: "dag i", select_year_month: "", repeat_radio_end: "Ingen slutdato", repeat_text_occurences_count: "gentagelse", repeat_radio_end2: "Efter", repeat_radio_end3: "Slut", month_for_recurring: ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"], day_for_recurring: ["Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"] } }, Oe = { date: { month_full: [" Januar", " Februar", " März ", " April", " Mai", " Juni", " Juli", " August", " September ", " Oktober", " November ", " Dezember"], month_short: ["Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"], day_full: ["Sonntag", "Montag", "Dienstag", " Mittwoch", " Donnerstag", "Freitag", "Samstag"], day_short: ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"] }, labels: { dhx_cal_today_button: "Heute", day_tab: "Tag", week_tab: "Woche", month_tab: "Monat", new_event: "neuer Eintrag", icon_save: "Speichern", icon_cancel: "Abbrechen", icon_details: "Details", icon_edit: "Ändern", icon_delete: "Löschen", confirm_closing: "", confirm_deleting: "Der Eintrag wird gelöscht", section_description: "Beschreibung", section_time: "Zeitspanne", full_day: "Ganzer Tag", confirm_recurring: "Wollen Sie alle Einträge bearbeiten oder nur diesen einzelnen Eintrag?", section_recurring: "Wiederholung", button_recurring: "Aus", button_recurring_open: "An", button_edit_series: "Bearbeiten Sie die Serie", button_edit_occurrence: "Bearbeiten Sie eine Kopie", agenda_tab: "Agenda", date: "Datum", description: "Beschreibung", year_tab: "Jahre", week_agenda_tab: "Agenda", grid_tab: "Grid", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Täglich", repeat_radio_week: "Wöchentlich", repeat_radio_month: "Monatlich", repeat_radio_year: "Jährlich", repeat_radio_day_type: "jeden", repeat_text_day_count: "Tag", repeat_radio_day_type2: "an jedem Arbeitstag", repeat_week: " Wiederholt sich jede", repeat_text_week_count: "Woche am:", repeat_radio_month_type: "an jedem", repeat_radio_month_start: "am", repeat_text_month_day: "Tag eines jeden", repeat_text_month_count: "Monats", repeat_text_month_count2_before: "jeden", repeat_text_month_count2_after: "Monats", repeat_year_label: "am", select_year_day2: "im", repeat_text_year_day: "Tag im", select_year_month: "", repeat_radio_end: "kein Enddatum", repeat_text_occurences_count: "Ereignissen", repeat_radio_end3: "Schluß", repeat_radio_end2: "nach", month_for_recurring: ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"], day_for_recurring: ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"] } }, He = { date: { month_full: ["Ιανουάριος", "Φεβρουάριος", "Μάρτιος", "Απρίλιος", "Μάϊος", "Ιούνιος", "Ιούλιος", "Αύγουστος", "Σεπτέμβριος", "Οκτώβριος", "Νοέμβριος", "Δεκέμβριος"], month_short: ["ΙΑΝ", "ΦΕΒ", "ΜΑΡ", "ΑΠΡ", "ΜΑΙ", "ΙΟΥΝ", "ΙΟΥΛ", "ΑΥΓ", "ΣΕΠ", "ΟΚΤ", "ΝΟΕ", "ΔΕΚ"], day_full: ["Κυριακή", "Δευτέρα", "Τρίτη", "Τετάρτη", "Πέμπτη", "Παρασκευή", "Κυριακή"], day_short: ["ΚΥ", "ΔΕ", "ΤΡ", "ΤΕ", "ΠΕ", "ΠΑ", "ΣΑ"] }, labels: { dhx_cal_today_button: "Σήμερα", day_tab: "Ημέρα", week_tab: "Εβδομάδα", month_tab: "Μήνας", new_event: "Νέο έργο", icon_save: "Αποθήκευση", icon_cancel: "Άκυρο", icon_details: "Λεπτομέρειες", icon_edit: "Επεξεργασία", icon_delete: "Διαγραφή", confirm_closing: "", confirm_deleting: "Το έργο θα διαγραφεί οριστικά. Θέλετε να συνεχίσετε;", section_description: "Περιγραφή", section_time: "Χρονική περίοδος", full_day: "Πλήρης Ημέρα", confirm_recurring: "Θέλετε να επεξεργασθείτε ολόκληρη την ομάδα των επαναλαμβανόμενων έργων;", section_recurring: "Επαναλαμβανόμενο έργο", button_recurring: "Ανενεργό", button_recurring_open: "Ενεργό", button_edit_series: "Επεξεργαστείτε τη σειρά", button_edit_occurrence: "Επεξεργασία ένα αντίγραφο", agenda_tab: "Ημερήσια Διάταξη", date: "Ημερομηνία", description: "Περιγραφή", year_tab: "Έτος", week_agenda_tab: "Ημερήσια Διάταξη", grid_tab: "Πλέγμα", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Ημερησίως", repeat_radio_week: "Εβδομαδιαίως", repeat_radio_month: "Μηνιαίως", repeat_radio_year: "Ετησίως", repeat_radio_day_type: "Κάθε", repeat_text_day_count: "ημέρα", repeat_radio_day_type2: "Κάθε εργάσιμη", repeat_week: " Επανάληψη κάθε", repeat_text_week_count: "εβδομάδα τις επόμενες ημέρες:", repeat_radio_month_type: "Επανάληψη", repeat_radio_month_start: "Την", repeat_text_month_day: "ημέρα κάθε", repeat_text_month_count: "μήνα", repeat_text_month_count2_before: "κάθε", repeat_text_month_count2_after: "μήνα", repeat_year_label: "Την", select_year_day2: "του", repeat_text_year_day: "ημέρα", select_year_month: "μήνα", repeat_radio_end: "Χωρίς ημερομηνία λήξεως", repeat_text_occurences_count: "επαναλήψεις", repeat_radio_end3: "Λήγει την", repeat_radio_end2: "Μετά από", month_for_recurring: ["Ιανουάριος", "Φεβρουάριος", "Μάρτιος", "Απρίλιος", "Μάϊος", "Ιούνιος", "Ιούλιος", "Αύγουστος", "Σεπτέμβριος", "Οκτώβριος", "Νοέμβριος", "Δεκέμβριος"], day_for_recurring: ["Κυριακή", "Δευτέρα", "Τρίτη", "Τετάρτη", "Πέμπτη", "Παρασκευή", "Σάββατο"] } }, Le = { date: { month_full: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], month_short: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], day_full: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], day_short: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"] }, labels: { dhx_cal_today_button: "Today", day_tab: "Day", week_tab: "Week", month_tab: "Month", new_event: "New event", icon_save: "Save", icon_cancel: "Cancel", icon_details: "Details", icon_edit: "Edit", icon_delete: "Delete", confirm_closing: "", confirm_deleting: "Event will be deleted permanently, are you sure?", section_description: "Description", section_time: "Time period", full_day: "Full day", confirm_recurring: "Do you want to edit the whole set of repeated events?", section_recurring: "Repeat event", button_recurring: "Disabled", button_recurring_open: "Enabled", button_edit_series: "Edit series", button_edit_occurrence: "Edit occurrence", agenda_tab: "Agenda", date: "Date", description: "Description", year_tab: "Year", week_agenda_tab: "Agenda", grid_tab: "Grid", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Daily", repeat_radio_week: "Weekly", repeat_radio_month: "Monthly", repeat_radio_year: "Yearly", repeat_radio_day_type: "Every", repeat_text_day_count: "day", repeat_radio_day_type2: "Every workday", repeat_week: " Repeat every", repeat_text_week_count: "week next days:", repeat_radio_month_type: "Repeat", repeat_radio_month_start: "On", repeat_text_month_day: "day every", repeat_text_month_count: "month", repeat_text_month_count2_before: "every", repeat_text_month_count2_after: "month", repeat_year_label: "On", select_year_day2: "of", repeat_text_year_day: "day", select_year_month: "month", repeat_radio_end: "No end date", repeat_text_occurences_count: "occurrences", repeat_radio_end2: "After", repeat_radio_end3: "End by", month_for_recurring: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], day_for_recurring: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"] } }, $e = { date: { month_full: ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"], month_short: ["Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"], day_full: ["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"], day_short: ["Dom", "Lun", "Mar", "Mié", "Jue", "Vie", "Sáb"] }, labels: { dhx_cal_today_button: "Hoy", day_tab: "Día", week_tab: "Semana", month_tab: "Mes", new_event: "Nuevo evento", icon_save: "Guardar", icon_cancel: "Cancelar", icon_details: "Detalles", icon_edit: "Editar", icon_delete: "Eliminar", confirm_closing: "", confirm_deleting: "El evento se borrará definitivamente, ¿continuar?", section_description: "Descripción", section_time: "Período", full_day: "Todo el día", confirm_recurring: "¿Desea modificar el conjunto de eventos repetidos?", section_recurring: "Repita el evento", button_recurring: "Impedido", button_recurring_open: "Permitido", button_edit_series: "Editar la serie", button_edit_occurrence: "Editar este evento", agenda_tab: "Día", date: "Fecha", description: "Descripción", year_tab: "Año", week_agenda_tab: "Día", grid_tab: "Reja", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Diariamente", repeat_radio_week: "Semanalmente", repeat_radio_month: "Mensualmente", repeat_radio_year: "Anualmente", repeat_radio_day_type: "Cada", repeat_text_day_count: "dia", repeat_radio_day_type2: "Cada jornada de trabajo", repeat_week: " Repetir cada", repeat_text_week_count: "semana:", repeat_radio_month_type: "Repita", repeat_radio_month_start: "El", repeat_text_month_day: "dia cada ", repeat_text_month_count: "mes", repeat_text_month_count2_before: "cada", repeat_text_month_count2_after: "mes", repeat_year_label: "El", select_year_day2: "del", repeat_text_year_day: "dia", select_year_month: "mes", repeat_radio_end: "Sin fecha de finalización", repeat_text_occurences_count: "ocurrencias", repeat_radio_end3: "Fin", repeat_radio_end2: "Después de", month_for_recurring: ["Enero", "Febrero", "Маrzo", "Аbril", "Mayo", "Junio", "Julio", "Аgosto", "Setiembre", "Octubre", "Noviembre", "Diciembre"], day_for_recurring: ["Domingo", "Lunes", "Martes", "Miércoles", "Jeuves", "Viernes", "Sabado"] } }, ze = { date: { month_full: ["Tammikuu", "Helmikuu", "Maaliskuu", "Huhtikuu", "Toukokuu", "Kesäkuu", "Heinäkuu", "Elokuu", "Syyskuu", "Lokakuu", "Marraskuu", "Joulukuu"], month_short: ["Tam", "Hel", "Maa", "Huh", "Tou", "Kes", "Hei", "Elo", "Syy", "Lok", "Mar", "Jou"], day_full: ["Sunnuntai", "Maanantai", "Tiistai", "Keskiviikko", "Torstai", "Perjantai", "Lauantai"], day_short: ["Su", "Ma", "Ti", "Ke", "To", "Pe", "La"] }, labels: { dhx_cal_today_button: "Tänään", day_tab: "Päivä", week_tab: "Viikko", month_tab: "Kuukausi", new_event: "Uusi tapahtuma", icon_save: "Tallenna", icon_cancel: "Peru", icon_details: "Tiedot", icon_edit: "Muokkaa", icon_delete: "Poista", confirm_closing: "", confirm_deleting: "Haluatko varmasti poistaa tapahtuman?", section_description: "Kuvaus", section_time: "Aikajakso", full_day: "Koko päivä", confirm_recurring: "Haluatko varmasti muokata toistuvan tapahtuman kaikkia jaksoja?", section_recurring: "Toista tapahtuma", button_recurring: "Ei käytössä", button_recurring_open: "Käytössä", button_edit_series: "Muokkaa sarja", button_edit_occurrence: "Muokkaa kopio", agenda_tab: "Esityslista", date: "Päivämäärä", description: "Kuvaus", year_tab: "Vuoden", week_agenda_tab: "Esityslista", grid_tab: "Ritilä", drag_to_create: "Luo uusi vetämällä", drag_to_move: "Siirrä vetämällä", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Päivittäin", repeat_radio_week: "Viikoittain", repeat_radio_month: "Kuukausittain", repeat_radio_year: "Vuosittain", repeat_radio_day_type: "Joka", repeat_text_day_count: "päivä", repeat_radio_day_type2: "Joka arkipäivä", repeat_week: "Toista joka", repeat_text_week_count: "viikko näinä päivinä:", repeat_radio_month_type: "Toista", repeat_radio_month_start: "", repeat_text_month_day: "päivänä joka", repeat_text_month_count: "kuukausi", repeat_text_month_count2_before: "joka", repeat_text_month_count2_after: "kuukausi", repeat_year_label: "", select_year_day2: "", repeat_text_year_day: "päivä", select_year_month: "kuukausi", repeat_radio_end: "Ei loppumisaikaa", repeat_text_occurences_count: "Toiston jälkeen", repeat_radio_end3: "Loppuu", repeat_radio_end2: "", month_for_recurring: ["Tammikuu", "Helmikuu", "Maaliskuu", "Huhtikuu", "Toukokuu", "Kesäkuu", "Heinäkuu", "Elokuu", "Syyskuu", "Lokakuu", "Marraskuu", "Joulukuu"], day_for_recurring: ["Sunnuntai", "Maanantai", "Tiistai", "Keskiviikko", "Torstai", "Perjantai", "Lauantai"] } }, je = { date: { month_full: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"], month_short: ["Jan", "Fév", "Mar", "Avr", "Mai", "Juin", "Juil", "Aoû", "Sep", "Oct", "Nov", "Déc"], day_full: ["Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"], day_short: ["Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam"] }, labels: { dhx_cal_today_button: "Aujourd'hui", day_tab: "Jour", week_tab: "Semaine", month_tab: "Mois", new_event: "Nouvel événement", icon_save: "Enregistrer", icon_cancel: "Annuler", icon_details: "Détails", icon_edit: "Modifier", icon_delete: "Effacer", confirm_closing: "", confirm_deleting: "L'événement sera effacé sans appel, êtes-vous sûr ?", section_description: "Description", section_time: "Période", full_day: "Journée complète", confirm_recurring: "Voulez-vous éditer toute une série d'évènements répétés?", section_recurring: "Périodicité", button_recurring: "Désactivé", button_recurring_open: "Activé", button_edit_series: "Modifier la série", button_edit_occurrence: "Modifier une copie", agenda_tab: "Jour", date: "Date", description: "Description", year_tab: "Année", week_agenda_tab: "Jour", grid_tab: "Grille", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Quotidienne", repeat_radio_week: "Hebdomadaire", repeat_radio_month: "Mensuelle", repeat_radio_year: "Annuelle", repeat_radio_day_type: "Chaque", repeat_text_day_count: "jour", repeat_radio_day_type2: "Chaque journée de travail", repeat_week: " Répéter toutes les", repeat_text_week_count: "semaine:", repeat_radio_month_type: "Répéter", repeat_radio_month_start: "Le", repeat_text_month_day: "jour chaque", repeat_text_month_count: "mois", repeat_text_month_count2_before: "chaque", repeat_text_month_count2_after: "mois", repeat_year_label: "Le", select_year_day2: "du", repeat_text_year_day: "jour", select_year_month: "mois", repeat_radio_end: "Pas de date d"achèvement", repeat_text_occurences_count: "occurrences", repeat_radio_end3: "Fin", repeat_radio_end2: "Après", month_for_recurring: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"], day_for_recurring: ["Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"] } }, Pe = { date: { month_full: ["ינואר", "פברואר", "מרץ", "אפריל", "מאי", "יוני", "יולי", "אוגוסט", "ספטמבר", "אוקטובר", "נובמבר", "דצמבר"], month_short: ["ינו", "פבר", "מרץ", "אפר", "מאי", "יונ", "יול", "אוג", "ספט", "אוק", "נוב", "דצמ"], day_full: ["ראשון", "שני", "שלישי", "רביעי", "חמישי", "שישי", "שבת"], day_short: ["א", "ב", "ג", "ד", "ה", "ו", "ש"] }, labels: { dhx_cal_today_button: "היום", day_tab: "יום", week_tab: "שבוע", month_tab: "חודש", new_event: "ארוע חדש", icon_save: "שמור", icon_cancel: "בטל", icon_details: "פרטים", icon_edit: "ערוך", icon_delete: "מחק", confirm_closing: "", confirm_deleting: "ארוע ימחק סופית.להמשיך?", section_description: "תיאור", section_time: "תקופה", confirm_recurring: "האם ברצונך לשנות כל סדרת ארועים מתמשכים?", section_recurring: "להעתיק ארוע", button_recurring: "לא פעיל", button_recurring_open: "פעיל", full_day: "יום שלם", button_edit_series: "ערוך את הסדרה", button_edit_occurrence: "עריכת עותק", agenda_tab: "סדר יום", date: "תאריך", description: "תיאור", year_tab: "לשנה", week_agenda_tab: "סדר יום", grid_tab: "סורג", drag_to_create: "Drag to create", drag_to_move: "גרור כדי להזיז", message_ok: "OK", message_cancel: "בטל", next: "הבא", prev: "הקודם", year: "שנה", month: "חודש", day: "יום", hour: "שעה", minute: "דקה", repeat_radio_day: "יומי", repeat_radio_week: "שבועי", repeat_radio_month: "חודשי", repeat_radio_year: "שנתי", repeat_radio_day_type: "חזור כל", repeat_text_day_count: "ימים", repeat_radio_day_type2: "חזור כל יום עבודה", repeat_week: " חזור כל", repeat_text_week_count: "שבוע לפי ימים:", repeat_radio_month_type: "חזור כל", repeat_radio_month_start: "כל", repeat_text_month_day: "ימים כל", repeat_text_month_count: "חודשים", repeat_text_month_count2_before: "חזור כל", repeat_text_month_count2_after: "חודש", repeat_year_label: "כל", select_year_day2: "בחודש", repeat_text_year_day: "ימים", select_year_month: "חודש", repeat_radio_end: "לעולם לא מסתיים", repeat_text_occurences_count: "אירועים", repeat_radio_end3: "מסתיים ב", repeat_radio_end2: "אחרי", month_for_recurring: ["ינואר", "פברואר", "מרץ", "אפריל", "מאי", "יוני", "יולי", "אוגוסט", "ספטמבר", "אוקטובר", "נובמבר", "דצמבר"], day_for_recurring: ["ראשון", "שני", "שלישי", "רביעי", "חמישי", "שישי", "שבת"] } }, Ve = { date: { month_full: ["Január", "Február", "Március", "Április", "Május", "Június", "Július", "Augusztus", "Szeptember", "Október", "November", "December"], month_short: ["Jan", "Feb", "Már", "Ápr", "Máj", "Jún", "Júl", "Aug", "Sep", "Okt", "Nov", "Dec"], day_full: ["Vasárnap", "Hétfõ", "Kedd", "Szerda", "Csütörtök", "Péntek", "szombat"], day_short: ["Va", "Hé", "Ke", "Sze", "Csü", "Pé", "Szo"] }, labels: { dhx_cal_today_button: "Ma", day_tab: "Nap", week_tab: "Hét", month_tab: "Hónap", new_event: "Új esemény", icon_save: "Mentés", icon_cancel: "Mégse", icon_details: "Részletek", icon_edit: "Szerkesztés", icon_delete: "Törlés", confirm_closing: "", confirm_deleting: "Az esemény törölve lesz, biztosan folytatja?", section_description: "Leírás", section_time: "Idõszak", full_day: "Egesz napos", confirm_recurring: "Biztosan szerkeszteni akarod az összes ismétlõdõ esemény beállítását?", section_recurring: "Esemény ismétlése", button_recurring: "Tiltás", button_recurring_open: "Engedélyezés", button_edit_series: "Edit series", button_edit_occurrence: "Szerkesztés bíróság", agenda_tab: "Napirend", date: "Dátum", description: "Leírás", year_tab: "Év", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } }, Ie = { date: { month_full: ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"], month_short: ["Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ags", "Sep", "Okt", "Nov", "Des"], day_full: ["Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"], day_short: ["Ming", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"] }, labels: { dhx_cal_today_button: "Hari Ini", day_tab: "Hari", week_tab: "Minggu", month_tab: "Bulan", new_event: "Acara Baru", icon_save: "Simpan", icon_cancel: "Batal", icon_details: "Detail", icon_edit: "Edit", icon_delete: "Hapus", confirm_closing: "", confirm_deleting: "Acara akan dihapus", section_description: "Keterangan", section_time: "Periode", full_day: "Hari penuh", confirm_recurring: "Apakah acara ini akan berulang?", section_recurring: "Acara Rutin", button_recurring: "Tidak Difungsikan", button_recurring_open: "Difungsikan", button_edit_series: "Mengedit seri", button_edit_occurrence: "Mengedit salinan", agenda_tab: "Agenda", date: "Tanggal", description: "Keterangan", year_tab: "Tahun", week_agenda_tab: "Agenda", grid_tab: "Tabel", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } }, Be = { date: { month_full: ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"], month_short: ["Gen", "Feb", "Mar", "Apr", "Mag", "Giu", "Lug", "Ago", "Set", "Ott", "Nov", "Dic"], day_full: ["Domenica", "Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato"], day_short: ["Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab"] }, labels: { dhx_cal_today_button: "Oggi", day_tab: "Giorno", week_tab: "Settimana", month_tab: "Mese", new_event: "Nuovo evento", icon_save: "Salva", icon_cancel: "Chiudi", icon_details: "Dettagli", icon_edit: "Modifica", icon_delete: "Elimina", confirm_closing: "", confirm_deleting: "L'evento sarà eliminato, siete sicuri?", section_description: "Descrizione", section_time: "Periodo di tempo", full_day: "Intera giornata", confirm_recurring: "Vuoi modificare l'intera serie di eventi?", section_recurring: "Ripetere l'evento", button_recurring: "Disattivato", button_recurring_open: "Attivato", button_edit_series: "Modificare la serie", button_edit_occurrence: "Modificare una copia", agenda_tab: "Agenda", date: "Data", description: "Descrizione", year_tab: "Anno", week_agenda_tab: "Agenda", grid_tab: "Griglia", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Quotidiano", repeat_radio_week: "Settimanale", repeat_radio_month: "Mensile", repeat_radio_year: "Annuale", repeat_radio_day_type: "Ogni", repeat_text_day_count: "giorno", repeat_radio_day_type2: "Ogni giornata lavorativa", repeat_week: " Ripetere ogni", repeat_text_week_count: "settimana:", repeat_radio_month_type: "Ripetere", repeat_radio_month_start: "Il", repeat_text_month_day: "giorno ogni", repeat_text_month_count: "mese", repeat_text_month_count2_before: "ogni", repeat_text_month_count2_after: "mese", repeat_year_label: "Il", select_year_day2: "del", repeat_text_year_day: "giorno", select_year_month: "mese", repeat_radio_end: "Senza data finale", repeat_text_occurences_count: "occorenze", repeat_radio_end3: "Fine", repeat_radio_end2: "Dopo", month_for_recurring: ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Jiugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"], day_for_recurring: ["Domenica", "Lunedì", "Martedì", "Mercoledì", "Jovedì", "Venerdì", "Sabato"] } }, Re = { date: { month_full: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"], month_short: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"], day_full: ["日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日"], day_short: ["日", "月", "火", "水", "木", "金", "土"] }, labels: { dhx_cal_today_button: "今日", day_tab: "日", week_tab: "週", month_tab: "月", new_event: "新イベント", icon_save: "保存", icon_cancel: "キャンセル", icon_details: "詳細", icon_edit: "編集", icon_delete: "削除", confirm_closing: "", confirm_deleting: "イベント完全に削除されます、宜しいですか?", section_description: "デスクリプション", section_time: "期間", confirm_recurring: "繰り返されているイベントを全て編集しますか?", section_recurring: "イベントを繰り返す", button_recurring: "無効", button_recurring_open: "有効", full_day: "終日", button_edit_series: "シリーズを編集します", button_edit_occurrence: "コピーを編集", agenda_tab: "議題は", date: "日付", description: "説明", year_tab: "今年", week_agenda_tab: "議題は", grid_tab: "グリッド", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } };
|
|
1741
|
+
const Se = { date: { month_full: ["كانون الثاني", "شباط", "آذار", "نيسان", "أيار", "حزيران", "تموز", "آب", "أيلول", "تشرين الأول", "تشرين الثاني", "كانون الأول"], month_short: ["يناير", "فبراير", "مارس", "أبريل", "مايو", "يونيو", "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر"], day_full: ["الأحد", "الأثنين", "ألثلاثاء", "الأربعاء", "ألحميس", "ألجمعة", "السبت"], day_short: ["احد", "اثنين", "ثلاثاء", "اربعاء", "خميس", "جمعة", "سبت"] }, labels: { dhx_cal_today_button: "اليوم", day_tab: "يوم", week_tab: "أسبوع", month_tab: "شهر", new_event: "حدث جديد", icon_save: "اخزن", icon_cancel: "الغاء", icon_details: "تفاصيل", icon_edit: "تحرير", icon_delete: "حذف", confirm_closing: "التغييرات سوف تضيع, هل انت متأكد؟", confirm_deleting: "الحدث سيتم حذفها نهائيا ، هل أنت متأكد؟", section_description: "الوصف", section_time: "الفترة الزمنية", full_day: "طوال اليوم", confirm_recurring: "هل تريد تحرير مجموعة كاملة من الأحداث المتكررة؟", section_recurring: "تكرار الحدث", button_recurring: "تعطيل", button_recurring_open: "تمكين", button_edit_series: "تحرير سلسلة", button_edit_occurrence: "تعديل نسخة", grid_tab: "جدول", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } }, Ne = { date: { month_full: ["Студзень", "Люты", "Сакавік", "Красавік", "Maй", "Чэрвень", "Ліпень", "Жнівень", "Верасень", "Кастрычнік", "Лістапад", "Снежань"], month_short: ["Студз", "Лют", "Сак", "Крас", "Maй", "Чэр", "Ліп", "Жнів", "Вер", "Каст", "Ліст", "Снеж"], day_full: ["Нядзеля", "Панядзелак", "Аўторак", "Серада", "Чацвер", "Пятніца", "Субота"], day_short: ["Нд", "Пн", "Аўт", "Ср", "Чцв", "Пт", "Сб"] }, labels: { dhx_cal_today_button: "Сёння", day_tab: "Дзень", week_tab: "Тыдзень", month_tab: "Месяц", new_event: "Новая падзея", icon_save: "Захаваць", icon_cancel: "Адмяніць", icon_details: "Дэталі", icon_edit: "Змяніць", icon_delete: "Выдаліць", confirm_closing: "", confirm_deleting: "Падзея будзе выдалена незваротна, працягнуць?", section_description: "Апісанне", section_time: "Перыяд часу", full_day: "Увесь дзень", confirm_recurring: "Вы хочаце змяніць усю серыю паўтаральных падзей?", section_recurring: "Паўтарэнне", button_recurring: "Адключана", button_recurring_open: "Уключана", button_edit_series: "Рэдагаваць серыю", button_edit_occurrence: "Рэдагаваць асобнік", agenda_tab: "Спіс", date: "Дата", description: "Апісанне", year_tab: "Год", week_agenda_tab: "Спіс", grid_tab: "Спic", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Дзень", repeat_radio_week: "Тыдзень", repeat_radio_month: "Месяц", repeat_radio_year: "Год", repeat_radio_day_type: "Кожны", repeat_text_day_count: "дзень", repeat_radio_day_type2: "Кожны працоўны дзень", repeat_week: " Паўтараць кожны", repeat_text_week_count: "тыдзень", repeat_radio_month_type: "Паўтараць", repeat_radio_month_start: "", repeat_text_month_day: " чысла кожнага", repeat_text_month_count: "месяцу", repeat_text_month_count2_before: "кожны ", repeat_text_month_count2_after: "месяц", repeat_year_label: "", select_year_day2: "", repeat_text_year_day: "дзень", select_year_month: "", repeat_radio_end: "Без даты заканчэння", repeat_text_occurences_count: "паўтораў", repeat_radio_end2: "", repeat_radio_end3: "Да ", month_for_recurring: ["Студзеня", "Лютага", "Сакавіка", "Красавіка", "Мая", "Чэрвеня", "Ліпeня", "Жніўня", "Верасня", "Кастрычніка", "Лістапада", "Снежня"], day_for_recurring: ["Нядзелю", "Панядзелак", "Аўторак", "Сераду", "Чацвер", "Пятніцу", "Суботу"] } }, Me = { date: { month_full: ["Gener", "Febrer", "Març", "Abril", "Maig", "Juny", "Juliol", "Agost", "Setembre", "Octubre", "Novembre", "Desembre"], month_short: ["Gen", "Feb", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Oct", "Nov", "Des"], day_full: ["Diumenge", "Dilluns", "Dimarts", "Dimecres", "Dijous", "Divendres", "Dissabte"], day_short: ["Dg", "Dl", "Dm", "Dc", "Dj", "Dv", "Ds"] }, labels: { dhx_cal_today_button: "Hui", day_tab: "Dia", week_tab: "Setmana", month_tab: "Mes", new_event: "Nou esdeveniment", icon_save: "Guardar", icon_cancel: "Cancel·lar", icon_details: "Detalls", icon_edit: "Editar", icon_delete: "Esborrar", confirm_closing: "", confirm_deleting: "L'esdeveniment s'esborrarà definitivament, continuar ?", section_description: "Descripció", section_time: "Periode de temps", full_day: "Tot el dia", confirm_recurring: "¿Desitja modificar el conjunt d'esdeveniments repetits?", section_recurring: "Repeteixca l'esdeveniment", button_recurring: "Impedit", button_recurring_open: "Permés", button_edit_series: "Edit sèrie", button_edit_occurrence: "Edita Instància", agenda_tab: "Agenda", date: "Data", description: "Descripció", year_tab: "Any", week_agenda_tab: "Agenda", grid_tab: "Taula", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } }, Ae = { date: { month_full: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], month_short: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"], day_full: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"], day_short: ["日", "一", "二", "三", "四", "五", "六"] }, labels: { dhx_cal_today_button: "今天", day_tab: "日", week_tab: "周", month_tab: "月", new_event: "新建日程", icon_save: "保存", icon_cancel: "关闭", icon_details: "详细", icon_edit: "编辑", icon_delete: "删除", confirm_closing: "请确认是否撤销修改!", confirm_deleting: "是否删除日程?", section_description: "描述", section_time: "时间范围", full_day: "整天", confirm_recurring: "请确认是否将日程设为重复模式?", section_recurring: "重复周期", button_recurring: "禁用", button_recurring_open: "启用", button_edit_series: "编辑系列", button_edit_occurrence: "编辑实例", agenda_tab: "议程", date: "日期", description: "说明", year_tab: "今年", week_agenda_tab: "议程", grid_tab: "电网", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "按天", repeat_radio_week: "按周", repeat_radio_month: "按月", repeat_radio_year: "按年", repeat_radio_day_type: "每", repeat_text_day_count: "天", repeat_radio_day_type2: "每个工作日", repeat_week: " 重复 每", repeat_text_week_count: "星期的:", repeat_radio_month_type: "重复", repeat_radio_month_start: "在", repeat_text_month_day: "日 每", repeat_text_month_count: "月", repeat_text_month_count2_before: "每", repeat_text_month_count2_after: "月", repeat_year_label: "在", select_year_day2: "的", repeat_text_year_day: "日", select_year_month: "月", repeat_radio_end: "无结束日期", repeat_text_occurences_count: "次结束", repeat_radio_end2: "重复", repeat_radio_end3: "结束于", month_for_recurring: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], day_for_recurring: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"] } }, Ce = { date: { month_full: ["Leden", "Únor", "Březen", "Duben", "Květen", "Červen", "Červenec", "Srpen", "Září", "Říjen", "Listopad", "Prosinec"], month_short: ["Led", "Ún", "Bře", "Dub", "Kvě", "Čer", "Čec", "Srp", "Září", "Říj", "List", "Pro"], day_full: ["Neděle", "Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota"], day_short: ["Ne", "Po", "Út", "St", "Čt", "Pá", "So"] }, labels: { dhx_cal_today_button: "Dnes", day_tab: "Den", week_tab: "Týden", month_tab: "Měsíc", new_event: "Nová událost", icon_save: "Uložit", icon_cancel: "Zpět", icon_details: "Detail", icon_edit: "Edituj", icon_delete: "Smazat", confirm_closing: "", confirm_deleting: "Událost bude trvale smazána, opravdu?", section_description: "Poznámky", section_time: "Doba platnosti", confirm_recurring: "Přejete si upravit celou řadu opakovaných událostí?", section_recurring: "Opakování události", button_recurring: "Vypnuto", button_recurring_open: "Zapnuto", button_edit_series: "Edit series", button_edit_occurrence: "Upravit instance", agenda_tab: "Program", date: "Datum", description: "Poznámka", year_tab: "Rok", full_day: "Full day", week_agenda_tab: "Program", grid_tab: "Mřížka", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Denně", repeat_radio_week: "Týdně", repeat_radio_month: "Měsíčně", repeat_radio_year: "Ročně", repeat_radio_day_type: "každý", repeat_text_day_count: "Den", repeat_radio_day_type2: "pracovní dny", repeat_week: "Opakuje každých", repeat_text_week_count: "Týdnů na:", repeat_radio_month_type: "u každého", repeat_radio_month_start: "na", repeat_text_month_day: "Den každého", repeat_text_month_count: "Měsíc", repeat_text_month_count2_before: "každý", repeat_text_month_count2_after: "Měsíc", repeat_year_label: "na", select_year_day2: "v", repeat_text_year_day: "Den v", select_year_month: "", repeat_radio_end: "bez data ukončení", repeat_text_occurences_count: "Události", repeat_radio_end2: "po", repeat_radio_end3: "Konec", month_for_recurring: ["Leden", "Únor", "Březen", "Duben", "Květen", "Červen", "Červenec", "Srpen", "Září", "Říjen", "Listopad", "Prosinec"], day_for_recurring: ["Neděle ", "Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota"] } }, Te = { date: { month_full: ["Januar", "Februar", "Marts", "April", "Maj", "Juni", "Juli", "August", "September", "Oktober", "November", "December"], month_short: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"], day_full: ["Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"], day_short: ["Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør"] }, labels: { dhx_cal_today_button: "Idag", day_tab: "Dag", week_tab: "Uge", month_tab: "Måned", new_event: "Ny begivenhed", icon_save: "Gem", icon_cancel: "Fortryd", icon_details: "Detaljer", icon_edit: "Tilret", icon_delete: "Slet", confirm_closing: "Dine rettelser vil gå tabt.. Er dy sikker?", confirm_deleting: "Bigivenheden vil blive slettet permanent. Er du sikker?", section_description: "Beskrivelse", section_time: "Tidsperiode", confirm_recurring: "Vil du tilrette hele serien af gentagne begivenheder?", section_recurring: "Gentag begivenhed", button_recurring: "Frakoblet", button_recurring_open: "Tilkoblet", button_edit_series: "Rediger serien", button_edit_occurrence: "Rediger en kopi", agenda_tab: "Dagsorden", date: "Dato", description: "Beskrivelse", year_tab: "År", week_agenda_tab: "Dagsorden", grid_tab: "Grid", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Daglig", repeat_radio_week: "Ugenlig", repeat_radio_month: "Månedlig", repeat_radio_year: "Årlig", repeat_radio_day_type: "Hver", repeat_text_day_count: "dag", repeat_radio_day_type2: "På hver arbejdsdag", repeat_week: " Gentager sig hver", repeat_text_week_count: "uge på følgende dage:", repeat_radio_month_type: "Hver den", repeat_radio_month_start: "Den", repeat_text_month_day: " i hver", repeat_text_month_count: "måned", repeat_text_month_count2_before: "hver", repeat_text_month_count2_after: "måned", repeat_year_label: "Den", select_year_day2: "i", repeat_text_year_day: "dag i", select_year_month: "", repeat_radio_end: "Ingen slutdato", repeat_text_occurences_count: "gentagelse", repeat_radio_end2: "Efter", repeat_radio_end3: "Slut", month_for_recurring: ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"], day_for_recurring: ["Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"] } }, Oe = { date: { month_full: [" Januar", " Februar", " März ", " April", " Mai", " Juni", " Juli", " August", " September ", " Oktober", " November ", " Dezember"], month_short: ["Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"], day_full: ["Sonntag", "Montag", "Dienstag", " Mittwoch", " Donnerstag", "Freitag", "Samstag"], day_short: ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"] }, labels: { dhx_cal_today_button: "Heute", day_tab: "Tag", week_tab: "Woche", month_tab: "Monat", new_event: "neuer Eintrag", icon_save: "Speichern", icon_cancel: "Abbrechen", icon_details: "Details", icon_edit: "Ändern", icon_delete: "Löschen", confirm_closing: "", confirm_deleting: "Der Eintrag wird gelöscht", section_description: "Beschreibung", section_time: "Zeitspanne", full_day: "Ganzer Tag", confirm_recurring: "Wollen Sie alle Einträge bearbeiten oder nur diesen einzelnen Eintrag?", section_recurring: "Wiederholung", button_recurring: "Aus", button_recurring_open: "An", button_edit_series: "Bearbeiten Sie die Serie", button_edit_occurrence: "Bearbeiten Sie eine Kopie", agenda_tab: "Agenda", date: "Datum", description: "Beschreibung", year_tab: "Jahre", week_agenda_tab: "Agenda", grid_tab: "Grid", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Täglich", repeat_radio_week: "Wöchentlich", repeat_radio_month: "Monatlich", repeat_radio_year: "Jährlich", repeat_radio_day_type: "jeden", repeat_text_day_count: "Tag", repeat_radio_day_type2: "an jedem Arbeitstag", repeat_week: " Wiederholt sich jede", repeat_text_week_count: "Woche am:", repeat_radio_month_type: "an jedem", repeat_radio_month_start: "am", repeat_text_month_day: "Tag eines jeden", repeat_text_month_count: "Monats", repeat_text_month_count2_before: "jeden", repeat_text_month_count2_after: "Monats", repeat_year_label: "am", select_year_day2: "im", repeat_text_year_day: "Tag im", select_year_month: "", repeat_radio_end: "kein Enddatum", repeat_text_occurences_count: "Ereignissen", repeat_radio_end3: "Schluß", repeat_radio_end2: "nach", month_for_recurring: ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"], day_for_recurring: ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"] } }, He = { date: { month_full: ["Ιανουάριος", "Φεβρουάριος", "Μάρτιος", "Απρίλιος", "Μάϊος", "Ιούνιος", "Ιούλιος", "Αύγουστος", "Σεπτέμβριος", "Οκτώβριος", "Νοέμβριος", "Δεκέμβριος"], month_short: ["ΙΑΝ", "ΦΕΒ", "ΜΑΡ", "ΑΠΡ", "ΜΑΙ", "ΙΟΥΝ", "ΙΟΥΛ", "ΑΥΓ", "ΣΕΠ", "ΟΚΤ", "ΝΟΕ", "ΔΕΚ"], day_full: ["Κυριακή", "Δευτέρα", "Τρίτη", "Τετάρτη", "Πέμπτη", "Παρασκευή", "Σάββατο"], day_short: ["ΚΥ", "ΔΕ", "ΤΡ", "ΤΕ", "ΠΕ", "ΠΑ", "ΣΑ"] }, labels: { dhx_cal_today_button: "Σήμερα", day_tab: "Ημέρα", week_tab: "Εβδομάδα", month_tab: "Μήνας", new_event: "Νέο έργο", icon_save: "Αποθήκευση", icon_cancel: "Άκυρο", icon_details: "Λεπτομέρειες", icon_edit: "Επεξεργασία", icon_delete: "Διαγραφή", confirm_closing: "", confirm_deleting: "Το έργο θα διαγραφεί οριστικά. Θέλετε να συνεχίσετε;", section_description: "Περιγραφή", section_time: "Χρονική περίοδος", full_day: "Πλήρης Ημέρα", confirm_recurring: "Θέλετε να επεξεργασθείτε ολόκληρη την ομάδα των επαναλαμβανόμενων έργων;", section_recurring: "Επαναλαμβανόμενο έργο", button_recurring: "Ανενεργό", button_recurring_open: "Ενεργό", button_edit_series: "Επεξεργαστείτε τη σειρά", button_edit_occurrence: "Επεξεργασία ένα αντίγραφο", agenda_tab: "Ημερήσια Διάταξη", date: "Ημερομηνία", description: "Περιγραφή", year_tab: "Έτος", week_agenda_tab: "Ημερήσια Διάταξη", grid_tab: "Πλέγμα", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Ημερησίως", repeat_radio_week: "Εβδομαδιαίως", repeat_radio_month: "Μηνιαίως", repeat_radio_year: "Ετησίως", repeat_radio_day_type: "Κάθε", repeat_text_day_count: "ημέρα", repeat_radio_day_type2: "Κάθε εργάσιμη", repeat_week: " Επανάληψη κάθε", repeat_text_week_count: "εβδομάδα τις επόμενες ημέρες:", repeat_radio_month_type: "Επανάληψη", repeat_radio_month_start: "Την", repeat_text_month_day: "ημέρα κάθε", repeat_text_month_count: "μήνα", repeat_text_month_count2_before: "κάθε", repeat_text_month_count2_after: "μήνα", repeat_year_label: "Την", select_year_day2: "του", repeat_text_year_day: "ημέρα", select_year_month: "μήνα", repeat_radio_end: "Χωρίς ημερομηνία λήξεως", repeat_text_occurences_count: "επαναλήψεις", repeat_radio_end3: "Λήγει την", repeat_radio_end2: "Μετά από", month_for_recurring: ["Ιανουάριος", "Φεβρουάριος", "Μάρτιος", "Απρίλιος", "Μάϊος", "Ιούνιος", "Ιούλιος", "Αύγουστος", "Σεπτέμβριος", "Οκτώβριος", "Νοέμβριος", "Δεκέμβριος"], day_for_recurring: ["Κυριακή", "Δευτέρα", "Τρίτη", "Τετάρτη", "Πέμπτη", "Παρασκευή", "Σάββατο"] } }, Le = { date: { month_full: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], month_short: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], day_full: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], day_short: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"] }, labels: { dhx_cal_today_button: "Today", day_tab: "Day", week_tab: "Week", month_tab: "Month", new_event: "New event", icon_save: "Save", icon_cancel: "Cancel", icon_details: "Details", icon_edit: "Edit", icon_delete: "Delete", confirm_closing: "", confirm_deleting: "Event will be deleted permanently, are you sure?", section_description: "Description", section_time: "Time period", full_day: "Full day", confirm_recurring: "Do you want to edit the whole set of repeated events?", section_recurring: "Repeat event", button_recurring: "Disabled", button_recurring_open: "Enabled", button_edit_series: "Edit series", button_edit_occurrence: "Edit occurrence", agenda_tab: "Agenda", date: "Date", description: "Description", year_tab: "Year", week_agenda_tab: "Agenda", grid_tab: "Grid", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Daily", repeat_radio_week: "Weekly", repeat_radio_month: "Monthly", repeat_radio_year: "Yearly", repeat_radio_day_type: "Every", repeat_text_day_count: "day", repeat_radio_day_type2: "Every workday", repeat_week: " Repeat every", repeat_text_week_count: "week next days:", repeat_radio_month_type: "Repeat", repeat_radio_month_start: "On", repeat_text_month_day: "day every", repeat_text_month_count: "month", repeat_text_month_count2_before: "every", repeat_text_month_count2_after: "month", repeat_year_label: "On", select_year_day2: "of", repeat_text_year_day: "day", select_year_month: "month", repeat_radio_end: "No end date", repeat_text_occurences_count: "occurrences", repeat_radio_end2: "After", repeat_radio_end3: "End by", month_for_recurring: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], day_for_recurring: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"] } }, $e = { date: { month_full: ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"], month_short: ["Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"], day_full: ["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"], day_short: ["Dom", "Lun", "Mar", "Mié", "Jue", "Vie", "Sáb"] }, labels: { dhx_cal_today_button: "Hoy", day_tab: "Día", week_tab: "Semana", month_tab: "Mes", new_event: "Nuevo evento", icon_save: "Guardar", icon_cancel: "Cancelar", icon_details: "Detalles", icon_edit: "Editar", icon_delete: "Eliminar", confirm_closing: "", confirm_deleting: "El evento se borrará definitivamente, ¿continuar?", section_description: "Descripción", section_time: "Período", full_day: "Todo el día", confirm_recurring: "¿Desea modificar el conjunto de eventos repetidos?", section_recurring: "Repita el evento", button_recurring: "Impedido", button_recurring_open: "Permitido", button_edit_series: "Editar la serie", button_edit_occurrence: "Editar este evento", agenda_tab: "Día", date: "Fecha", description: "Descripción", year_tab: "Año", week_agenda_tab: "Día", grid_tab: "Reja", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Diariamente", repeat_radio_week: "Semanalmente", repeat_radio_month: "Mensualmente", repeat_radio_year: "Anualmente", repeat_radio_day_type: "Cada", repeat_text_day_count: "dia", repeat_radio_day_type2: "Cada jornada de trabajo", repeat_week: " Repetir cada", repeat_text_week_count: "semana:", repeat_radio_month_type: "Repita", repeat_radio_month_start: "El", repeat_text_month_day: "dia cada ", repeat_text_month_count: "mes", repeat_text_month_count2_before: "cada", repeat_text_month_count2_after: "mes", repeat_year_label: "El", select_year_day2: "del", repeat_text_year_day: "dia", select_year_month: "mes", repeat_radio_end: "Sin fecha de finalización", repeat_text_occurences_count: "ocurrencias", repeat_radio_end3: "Fin", repeat_radio_end2: "Después de", month_for_recurring: ["Enero", "Febrero", "Маrzo", "Аbril", "Mayo", "Junio", "Julio", "Аgosto", "Setiembre", "Octubre", "Noviembre", "Diciembre"], day_for_recurring: ["Domingo", "Lunes", "Martes", "Miércoles", "Jeuves", "Viernes", "Sabado"] } }, ze = { date: { month_full: ["Tammikuu", "Helmikuu", "Maaliskuu", "Huhtikuu", "Toukokuu", "Kesäkuu", "Heinäkuu", "Elokuu", "Syyskuu", "Lokakuu", "Marraskuu", "Joulukuu"], month_short: ["Tam", "Hel", "Maa", "Huh", "Tou", "Kes", "Hei", "Elo", "Syy", "Lok", "Mar", "Jou"], day_full: ["Sunnuntai", "Maanantai", "Tiistai", "Keskiviikko", "Torstai", "Perjantai", "Lauantai"], day_short: ["Su", "Ma", "Ti", "Ke", "To", "Pe", "La"] }, labels: { dhx_cal_today_button: "Tänään", day_tab: "Päivä", week_tab: "Viikko", month_tab: "Kuukausi", new_event: "Uusi tapahtuma", icon_save: "Tallenna", icon_cancel: "Peru", icon_details: "Tiedot", icon_edit: "Muokkaa", icon_delete: "Poista", confirm_closing: "", confirm_deleting: "Haluatko varmasti poistaa tapahtuman?", section_description: "Kuvaus", section_time: "Aikajakso", full_day: "Koko päivä", confirm_recurring: "Haluatko varmasti muokata toistuvan tapahtuman kaikkia jaksoja?", section_recurring: "Toista tapahtuma", button_recurring: "Ei käytössä", button_recurring_open: "Käytössä", button_edit_series: "Muokkaa sarja", button_edit_occurrence: "Muokkaa kopio", agenda_tab: "Esityslista", date: "Päivämäärä", description: "Kuvaus", year_tab: "Vuoden", week_agenda_tab: "Esityslista", grid_tab: "Ritilä", drag_to_create: "Luo uusi vetämällä", drag_to_move: "Siirrä vetämällä", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Päivittäin", repeat_radio_week: "Viikoittain", repeat_radio_month: "Kuukausittain", repeat_radio_year: "Vuosittain", repeat_radio_day_type: "Joka", repeat_text_day_count: "päivä", repeat_radio_day_type2: "Joka arkipäivä", repeat_week: "Toista joka", repeat_text_week_count: "viikko näinä päivinä:", repeat_radio_month_type: "Toista", repeat_radio_month_start: "", repeat_text_month_day: "päivänä joka", repeat_text_month_count: "kuukausi", repeat_text_month_count2_before: "joka", repeat_text_month_count2_after: "kuukausi", repeat_year_label: "", select_year_day2: "", repeat_text_year_day: "päivä", select_year_month: "kuukausi", repeat_radio_end: "Ei loppumisaikaa", repeat_text_occurences_count: "Toiston jälkeen", repeat_radio_end3: "Loppuu", repeat_radio_end2: "", month_for_recurring: ["Tammikuu", "Helmikuu", "Maaliskuu", "Huhtikuu", "Toukokuu", "Kesäkuu", "Heinäkuu", "Elokuu", "Syyskuu", "Lokakuu", "Marraskuu", "Joulukuu"], day_for_recurring: ["Sunnuntai", "Maanantai", "Tiistai", "Keskiviikko", "Torstai", "Perjantai", "Lauantai"] } }, je = { date: { month_full: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"], month_short: ["Jan", "Fév", "Mar", "Avr", "Mai", "Juin", "Juil", "Aoû", "Sep", "Oct", "Nov", "Déc"], day_full: ["Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"], day_short: ["Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam"] }, labels: { dhx_cal_today_button: "Aujourd'hui", day_tab: "Jour", week_tab: "Semaine", month_tab: "Mois", new_event: "Nouvel événement", icon_save: "Enregistrer", icon_cancel: "Annuler", icon_details: "Détails", icon_edit: "Modifier", icon_delete: "Effacer", confirm_closing: "", confirm_deleting: "L'événement sera effacé sans appel, êtes-vous sûr ?", section_description: "Description", section_time: "Période", full_day: "Journée complète", confirm_recurring: "Voulez-vous éditer toute une série d'évènements répétés?", section_recurring: "Périodicité", button_recurring: "Désactivé", button_recurring_open: "Activé", button_edit_series: "Modifier la série", button_edit_occurrence: "Modifier une copie", agenda_tab: "Jour", date: "Date", description: "Description", year_tab: "Année", week_agenda_tab: "Jour", grid_tab: "Grille", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Quotidienne", repeat_radio_week: "Hebdomadaire", repeat_radio_month: "Mensuelle", repeat_radio_year: "Annuelle", repeat_radio_day_type: "Chaque", repeat_text_day_count: "jour", repeat_radio_day_type2: "Chaque journée de travail", repeat_week: " Répéter toutes les", repeat_text_week_count: "semaine:", repeat_radio_month_type: "Répéter", repeat_radio_month_start: "Le", repeat_text_month_day: "jour chaque", repeat_text_month_count: "mois", repeat_text_month_count2_before: "chaque", repeat_text_month_count2_after: "mois", repeat_year_label: "Le", select_year_day2: "du", repeat_text_year_day: "jour", select_year_month: "mois", repeat_radio_end: "Pas de date d"achèvement", repeat_text_occurences_count: "occurrences", repeat_radio_end3: "Fin", repeat_radio_end2: "Après", month_for_recurring: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"], day_for_recurring: ["Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"] } }, Pe = { date: { month_full: ["ינואר", "פברואר", "מרץ", "אפריל", "מאי", "יוני", "יולי", "אוגוסט", "ספטמבר", "אוקטובר", "נובמבר", "דצמבר"], month_short: ["ינו", "פבר", "מרץ", "אפר", "מאי", "יונ", "יול", "אוג", "ספט", "אוק", "נוב", "דצמ"], day_full: ["ראשון", "שני", "שלישי", "רביעי", "חמישי", "שישי", "שבת"], day_short: ["א", "ב", "ג", "ד", "ה", "ו", "ש"] }, labels: { dhx_cal_today_button: "היום", day_tab: "יום", week_tab: "שבוע", month_tab: "חודש", new_event: "ארוע חדש", icon_save: "שמור", icon_cancel: "בטל", icon_details: "פרטים", icon_edit: "ערוך", icon_delete: "מחק", confirm_closing: "", confirm_deleting: "ארוע ימחק סופית.להמשיך?", section_description: "תיאור", section_time: "תקופה", confirm_recurring: "האם ברצונך לשנות כל סדרת ארועים מתמשכים?", section_recurring: "להעתיק ארוע", button_recurring: "לא פעיל", button_recurring_open: "פעיל", full_day: "יום שלם", button_edit_series: "ערוך את הסדרה", button_edit_occurrence: "עריכת עותק", agenda_tab: "סדר יום", date: "תאריך", description: "תיאור", year_tab: "לשנה", week_agenda_tab: "סדר יום", grid_tab: "סורג", drag_to_create: "Drag to create", drag_to_move: "גרור כדי להזיז", message_ok: "OK", message_cancel: "בטל", next: "הבא", prev: "הקודם", year: "שנה", month: "חודש", day: "יום", hour: "שעה", minute: "דקה", repeat_radio_day: "יומי", repeat_radio_week: "שבועי", repeat_radio_month: "חודשי", repeat_radio_year: "שנתי", repeat_radio_day_type: "חזור כל", repeat_text_day_count: "ימים", repeat_radio_day_type2: "חזור כל יום עבודה", repeat_week: " חזור כל", repeat_text_week_count: "שבוע לפי ימים:", repeat_radio_month_type: "חזור כל", repeat_radio_month_start: "כל", repeat_text_month_day: "ימים כל", repeat_text_month_count: "חודשים", repeat_text_month_count2_before: "חזור כל", repeat_text_month_count2_after: "חודש", repeat_year_label: "כל", select_year_day2: "בחודש", repeat_text_year_day: "ימים", select_year_month: "חודש", repeat_radio_end: "לעולם לא מסתיים", repeat_text_occurences_count: "אירועים", repeat_radio_end3: "מסתיים ב", repeat_radio_end2: "אחרי", month_for_recurring: ["ינואר", "פברואר", "מרץ", "אפריל", "מאי", "יוני", "יולי", "אוגוסט", "ספטמבר", "אוקטובר", "נובמבר", "דצמבר"], day_for_recurring: ["ראשון", "שני", "שלישי", "רביעי", "חמישי", "שישי", "שבת"] } }, Ve = { date: { month_full: ["Január", "Február", "Március", "Április", "Május", "Június", "Július", "Augusztus", "Szeptember", "Október", "November", "December"], month_short: ["Jan", "Feb", "Már", "Ápr", "Máj", "Jún", "Júl", "Aug", "Sep", "Okt", "Nov", "Dec"], day_full: ["Vasárnap", "Hétfõ", "Kedd", "Szerda", "Csütörtök", "Péntek", "szombat"], day_short: ["Va", "Hé", "Ke", "Sze", "Csü", "Pé", "Szo"] }, labels: { dhx_cal_today_button: "Ma", day_tab: "Nap", week_tab: "Hét", month_tab: "Hónap", new_event: "Új esemény", icon_save: "Mentés", icon_cancel: "Mégse", icon_details: "Részletek", icon_edit: "Szerkesztés", icon_delete: "Törlés", confirm_closing: "", confirm_deleting: "Az esemény törölve lesz, biztosan folytatja?", section_description: "Leírás", section_time: "Idõszak", full_day: "Egesz napos", confirm_recurring: "Biztosan szerkeszteni akarod az összes ismétlõdõ esemény beállítását?", section_recurring: "Esemény ismétlése", button_recurring: "Tiltás", button_recurring_open: "Engedélyezés", button_edit_series: "Edit series", button_edit_occurrence: "Szerkesztés bíróság", agenda_tab: "Napirend", date: "Dátum", description: "Leírás", year_tab: "Év", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } }, Ie = { date: { month_full: ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"], month_short: ["Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ags", "Sep", "Okt", "Nov", "Des"], day_full: ["Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"], day_short: ["Ming", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"] }, labels: { dhx_cal_today_button: "Hari Ini", day_tab: "Hari", week_tab: "Minggu", month_tab: "Bulan", new_event: "Acara Baru", icon_save: "Simpan", icon_cancel: "Batal", icon_details: "Detail", icon_edit: "Edit", icon_delete: "Hapus", confirm_closing: "", confirm_deleting: "Acara akan dihapus", section_description: "Keterangan", section_time: "Periode", full_day: "Hari penuh", confirm_recurring: "Apakah acara ini akan berulang?", section_recurring: "Acara Rutin", button_recurring: "Tidak Difungsikan", button_recurring_open: "Difungsikan", button_edit_series: "Mengedit seri", button_edit_occurrence: "Mengedit salinan", agenda_tab: "Agenda", date: "Tanggal", description: "Keterangan", year_tab: "Tahun", week_agenda_tab: "Agenda", grid_tab: "Tabel", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } }, Be = { date: { month_full: ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"], month_short: ["Gen", "Feb", "Mar", "Apr", "Mag", "Giu", "Lug", "Ago", "Set", "Ott", "Nov", "Dic"], day_full: ["Domenica", "Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato"], day_short: ["Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab"] }, labels: { dhx_cal_today_button: "Oggi", day_tab: "Giorno", week_tab: "Settimana", month_tab: "Mese", new_event: "Nuovo evento", icon_save: "Salva", icon_cancel: "Chiudi", icon_details: "Dettagli", icon_edit: "Modifica", icon_delete: "Elimina", confirm_closing: "", confirm_deleting: "L'evento sarà eliminato, siete sicuri?", section_description: "Descrizione", section_time: "Periodo di tempo", full_day: "Intera giornata", confirm_recurring: "Vuoi modificare l'intera serie di eventi?", section_recurring: "Ripetere l'evento", button_recurring: "Disattivato", button_recurring_open: "Attivato", button_edit_series: "Modificare la serie", button_edit_occurrence: "Modificare una copia", agenda_tab: "Agenda", date: "Data", description: "Descrizione", year_tab: "Anno", week_agenda_tab: "Agenda", grid_tab: "Griglia", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute", repeat_radio_day: "Quotidiano", repeat_radio_week: "Settimanale", repeat_radio_month: "Mensile", repeat_radio_year: "Annuale", repeat_radio_day_type: "Ogni", repeat_text_day_count: "giorno", repeat_radio_day_type2: "Ogni giornata lavorativa", repeat_week: " Ripetere ogni", repeat_text_week_count: "settimana:", repeat_radio_month_type: "Ripetere", repeat_radio_month_start: "Il", repeat_text_month_day: "giorno ogni", repeat_text_month_count: "mese", repeat_text_month_count2_before: "ogni", repeat_text_month_count2_after: "mese", repeat_year_label: "Il", select_year_day2: "del", repeat_text_year_day: "giorno", select_year_month: "mese", repeat_radio_end: "Senza data finale", repeat_text_occurences_count: "occorenze", repeat_radio_end3: "Fine", repeat_radio_end2: "Dopo", month_for_recurring: ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Jiugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"], day_for_recurring: ["Domenica", "Lunedì", "Martedì", "Mercoledì", "Jovedì", "Venerdì", "Sabato"] } }, Re = { date: { month_full: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"], month_short: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"], day_full: ["日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日"], day_short: ["日", "月", "火", "水", "木", "金", "土"] }, labels: { dhx_cal_today_button: "今日", day_tab: "日", week_tab: "週", month_tab: "月", new_event: "新イベント", icon_save: "保存", icon_cancel: "キャンセル", icon_details: "詳細", icon_edit: "編集", icon_delete: "削除", confirm_closing: "", confirm_deleting: "イベント完全に削除されます、宜しいですか?", section_description: "デスクリプション", section_time: "期間", confirm_recurring: "繰り返されているイベントを全て編集しますか?", section_recurring: "イベントを繰り返す", button_recurring: "無効", button_recurring_open: "有効", full_day: "終日", button_edit_series: "シリーズを編集します", button_edit_occurrence: "コピーを編集", agenda_tab: "議題は", date: "日付", description: "説明", year_tab: "今年", week_agenda_tab: "議題は", grid_tab: "グリッド", drag_to_create: "Drag to create", drag_to_move: "Drag to move", message_ok: "OK", message_cancel: "Cancel", next: "Next", prev: "Previous", year: "Year", month: "Month", day: "Day", hour: "Hour", minute: "Minute" } };
|
|
1750
1742
|
class qe {
|
|
1751
1743
|
constructor(h) {
|
|
1752
1744
|
this._locales = {};
|
|
@@ -1839,19 +1831,19 @@ class at {
|
|
|
1839
1831
|
let _ = i[0], o = i[1];
|
|
1840
1832
|
const t = d.reduce((p, y) => (p[this.scheduler.date.day_start(new Date(y)).valueOf()] = !0, p), {}), r = document.createElement("div");
|
|
1841
1833
|
this._renderDayGridHeader(r), h.appendChild(r);
|
|
1842
|
-
const s = this.scheduler, c = s.date.week_start(s.date.month_start(new Date(a))), u = s.date.month_start(new Date(a)),
|
|
1843
|
-
let
|
|
1844
|
-
|
|
1845
|
-
let l = this._weeksBetween(c,
|
|
1846
|
-
n && l < n && (
|
|
1834
|
+
const s = this.scheduler, c = s.date.week_start(s.date.month_start(new Date(a))), u = s.date.month_start(new Date(a)), v = s.date.add(s.date.month_start(new Date(a)), 1, "month");
|
|
1835
|
+
let m = s.date.add(s.date.month_start(new Date(a)), 1, "month");
|
|
1836
|
+
m.getDay() !== 0 && (m = s.date.add(s.date.week_start(m), 1, "week"));
|
|
1837
|
+
let l = this._weeksBetween(c, m);
|
|
1838
|
+
n && l < n && (m = s.date.add(m, n - l, "week"));
|
|
1847
1839
|
let f = c;
|
|
1848
1840
|
const g = document.createElement("div");
|
|
1849
1841
|
for (g.classList.add("dhx_cal_datepicker_days"), this._domEvents.attach(g, "click", (p) => {
|
|
1850
1842
|
const y = p.target.closest("[data-cell-date]"), w = new Date(y.getAttribute("data-cell-date"));
|
|
1851
1843
|
this.callEvent("onDateClick", [w, p]);
|
|
1852
|
-
}); f.valueOf() <
|
|
1844
|
+
}); f.valueOf() < m.valueOf(); ) {
|
|
1853
1845
|
const p = document.createElement("div");
|
|
1854
|
-
p.setAttribute("data-cell-date", s.templates.format_date(f)), p.setAttribute("data-day", f.getDay()), p.innerHTML = f.getDate(), f.valueOf() < u.valueOf() ? p.classList.add("dhx_before") : f.valueOf() >=
|
|
1846
|
+
p.setAttribute("data-cell-date", s.templates.format_date(f)), p.setAttribute("data-day", f.getDay()), p.innerHTML = f.getDate(), f.valueOf() < u.valueOf() ? p.classList.add("dhx_before") : f.valueOf() >= v.valueOf() && p.classList.add("dhx_after"), f.getDay() !== 0 && f.getDay() !== 6 || p.classList.add("dhx_cal_datepicker_weekend"), _ && o && f.valueOf() >= _.valueOf() && f.valueOf() < o.valueOf() && p.classList.add("dhx_cal_datepicker_current"), t[f.valueOf()] && p.classList.add("dhx_cal_datepicker_event"), p.classList.add("dhx_cal_datepicker_date"), g.appendChild(p), f = s.date.add(f, 1, "day");
|
|
1855
1847
|
}
|
|
1856
1848
|
h.appendChild(g);
|
|
1857
1849
|
}
|
|
@@ -1898,7 +1890,7 @@ class at {
|
|
|
1898
1890
|
}
|
|
1899
1891
|
}
|
|
1900
1892
|
function nt(e) {
|
|
1901
|
-
const h = { version: "7.0.
|
|
1893
|
+
const h = { version: "7.0.2" };
|
|
1902
1894
|
(function(t) {
|
|
1903
1895
|
var r = { agenda: "https://docs.dhtmlx.com/scheduler/agenda_view.html", grid: "https://docs.dhtmlx.com/scheduler/grid_view.html", map: "https://docs.dhtmlx.com/scheduler/map_view.html", unit: "https://docs.dhtmlx.com/scheduler/units_view.html", timeline: "https://docs.dhtmlx.com/scheduler/timeline_view.html", week_agenda: "https://docs.dhtmlx.com/scheduler/weekagenda_view.html", year: "https://docs.dhtmlx.com/scheduler/year_view.html", anythingElse: "https://docs.dhtmlx.com/scheduler/views.html" }, s = { agenda: "ext/dhtmlxscheduler_agenda_view.js", grid: "ext/dhtmlxscheduler_grid_view.js", map: "ext/dhtmlxscheduler_map_view.js", unit: "ext/dhtmlxscheduler_units.js", timeline: "ext/dhtmlxscheduler_timeline.js, ext/dhtmlxscheduler_treetimeline.js, ext/dhtmlxscheduler_daytimeline.js", week_agenda: "ext/dhtmlxscheduler_week_agenda.js", year: "ext/dhtmlxscheduler_year_view.js", limit: "ext/dhtmlxscheduler_limit.js" };
|
|
1904
1896
|
t._commonErrorMessages = { unknownView: function(c) {
|
|
@@ -1981,18 +1973,10 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
1981
1973
|
return l.apply(f, arguments);
|
|
1982
1974
|
};
|
|
1983
1975
|
}, t.set_sizes = function() {
|
|
1984
|
-
var l = this._x = this._obj.clientWidth - this.xy.margin_left, f = this.
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
this.set_xy(k, this._data_width, this.xy.scale_height), k.style.left = "", k.style.right = "", this._table_view ? this.config.rtl ? k.style.right = "-1px" : k.style.left = "-1px" : this.config.rtl ? k.style.right = `${this.xy.scale_width}px` : k.style.left = `${this.xy.scale_width}px`;
|
|
1989
|
-
} else {
|
|
1990
|
-
this.set_xy(this._els.dhx_cal_navline[0], l, this.xy.nav_height, 0, 0), this.set_xy(this._els.dhx_cal_header[0], l - g + 1, this.xy.scale_height, p, this.xy.nav_height + 1);
|
|
1991
|
-
var w = this._els.dhx_cal_navline[0].offsetHeight;
|
|
1992
|
-
w > 0 && (this.xy.nav_height = w);
|
|
1993
|
-
var b = this.xy.scale_height + this.xy.nav_height;
|
|
1994
|
-
this.set_xy(this._els.dhx_cal_data[0], l, f - (b + 2), 0, b + 2);
|
|
1995
|
-
}
|
|
1976
|
+
var l = this._x = this._obj.clientWidth - this.xy.margin_left, f = this._table_view ? 0 : this.xy.scale_width + this.xy.scroll_width, g = this.$container.querySelector(".dhx_cal_scale_placeholder");
|
|
1977
|
+
t._is_material_skin() ? (g || ((g = document.createElement("div")).className = "dhx_cal_scale_placeholder", this.$container.insertBefore(g, this._els.dhx_cal_header[0])), g.style.display = "block", this.set_xy(g, l, this.xy.scale_height + 1, 0, this._els.dhx_cal_header[0].offsetTop)) : g && g.parentNode.removeChild(g), this._lightbox && (t.$container.offsetWidth < 1200 || this._setLbPosition(document.querySelector(".dhx_cal_light"))), this._data_width = l - f, this._els.dhx_cal_navline[0].style.width = l + "px";
|
|
1978
|
+
const p = this._els.dhx_cal_header[0];
|
|
1979
|
+
this.set_xy(p, this._data_width, this.xy.scale_height), p.style.left = "", p.style.right = "", this._table_view ? this.config.rtl ? p.style.right = "-1px" : p.style.left = "-1px" : this.config.rtl ? p.style.right = `${this.xy.scale_width}px` : p.style.left = `${this.xy.scale_width}px`;
|
|
1996
1980
|
}, t.set_xy = function(l, f, g, p, y) {
|
|
1997
1981
|
function w(k) {
|
|
1998
1982
|
let E = k;
|
|
@@ -2008,31 +1992,31 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2008
1992
|
typeof y != "string" && p && !l[f].innerHTML && (y = p.split("_")[0]), y && (this._waiAria.labelAttr(l[f], y), l[f].innerHTML = y);
|
|
2009
1993
|
}
|
|
2010
1994
|
};
|
|
2011
|
-
var
|
|
2012
|
-
function
|
|
1995
|
+
var v = t._createDomEventScope();
|
|
1996
|
+
function m(l, f) {
|
|
2013
1997
|
const g = new Date(l), p = (new Date(f).getTime() - g.getTime()) / 864e5;
|
|
2014
1998
|
return Math.abs(p);
|
|
2015
1999
|
}
|
|
2016
2000
|
t.unset_actions = function() {
|
|
2017
|
-
|
|
2001
|
+
v.detachAll();
|
|
2018
2002
|
}, t.set_actions = function() {
|
|
2019
2003
|
for (var l in this._els)
|
|
2020
2004
|
if (this._click[l])
|
|
2021
2005
|
for (var f = 0; f < this._els[l].length; f++) {
|
|
2022
2006
|
const g = this._els[l][f], p = this._click[l].bind(g);
|
|
2023
|
-
|
|
2007
|
+
v.attach(g, "click", p);
|
|
2024
2008
|
}
|
|
2025
|
-
|
|
2009
|
+
v.attach(this._obj, "selectstart", function(g) {
|
|
2026
2010
|
return g.preventDefault(), !1;
|
|
2027
|
-
}),
|
|
2011
|
+
}), v.attach(this._obj, "mousemove", function(g) {
|
|
2028
2012
|
t._temp_touch_block || t._on_mouse_move(g);
|
|
2029
|
-
}),
|
|
2013
|
+
}), v.attach(this._obj, "mousedown", function(g) {
|
|
2030
2014
|
t._ignore_next_click || t._on_mouse_down(g);
|
|
2031
|
-
}),
|
|
2015
|
+
}), v.attach(this._obj, "mouseup", function(g) {
|
|
2032
2016
|
t._ignore_next_click || t._on_mouse_up(g);
|
|
2033
|
-
}),
|
|
2017
|
+
}), v.attach(this._obj, "dblclick", function(g) {
|
|
2034
2018
|
t._on_dbl_click(g);
|
|
2035
|
-
}),
|
|
2019
|
+
}), v.attach(this._obj, "contextmenu", function(g) {
|
|
2036
2020
|
t.checkEvent("onContextMenu") && g.preventDefault();
|
|
2037
2021
|
var p = g, y = p.target || p.srcElement;
|
|
2038
2022
|
return t.callEvent("onContextMenu", [t._locate_event(y), p]);
|
|
@@ -2162,7 +2146,7 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2162
2146
|
return l;
|
|
2163
2147
|
}, t._mouse_coords = function(l) {
|
|
2164
2148
|
var f, g = document.body, p = document.documentElement;
|
|
2165
|
-
f = this.$env.isIE || !l.pageX && !l.pageY ? { x: l.clientX + (g.scrollLeft || p.scrollLeft || 0) - g.clientLeft, y: l.clientY + (g.scrollTop || p.scrollTop || 0) - g.clientTop } : { x: l.pageX, y: l.pageY }, this.config.rtl && this._colsS ? (f.x = this.$container.querySelector(".dhx_cal_data").offsetWidth - f.x, this._mode !== "month" && (f.x -= this.xy.scale_width)) : f.x -= this.$domHelpers.getAbsoluteLeft(this._obj) + (this._table_view ? 0 : this.xy.scale_width);
|
|
2149
|
+
f = this.$env.isIE || !l.pageX && !l.pageY ? { x: l.clientX + (g.scrollLeft || p.scrollLeft || 0) - g.clientLeft, y: l.clientY + (g.scrollTop || p.scrollTop || 0) - g.clientTop } : { x: l.pageX, y: l.pageY }, this.config.rtl && this._colsS ? (f.x = this.$container.querySelector(".dhx_cal_data").offsetWidth - f.x, f.x += this.$domHelpers.getAbsoluteLeft(this._obj), this._mode !== "month" && (f.x -= this.xy.scale_width)) : f.x -= this.$domHelpers.getAbsoluteLeft(this._obj) + (this._table_view ? 0 : this.xy.scale_width);
|
|
2166
2150
|
var y = this.$container.querySelector(".dhx_cal_data");
|
|
2167
2151
|
f.y -= this.$domHelpers.getAbsoluteTop(y) - this._els.dhx_cal_data[0].scrollTop, f.ev = l;
|
|
2168
2152
|
var w = this["mouse_" + this._mode];
|
|
@@ -2346,7 +2330,7 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2346
2330
|
}
|
|
2347
2331
|
this._drag_pos && (this._drag_pos.has_moved || this._drag_pos === !0) && (this._drag_id = this._drag_mode = null, this.render_view_data()), t.callEvent("onDragEnd", [f, g, l]);
|
|
2348
2332
|
}
|
|
2349
|
-
this._drag_id = null, this._drag_mode = null, this._drag_pos = null;
|
|
2333
|
+
this._drag_id = null, this._drag_mode = null, this._drag_pos = null, this._drag_event = null, this._drag_from_start = null;
|
|
2350
2334
|
}
|
|
2351
2335
|
}, t._trigger_dyn_loading = function() {
|
|
2352
2336
|
return !(!this._load_mode || !this._load() || (this._render_wait = !0, 0));
|
|
@@ -2391,7 +2375,7 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2391
2375
|
var w = document.createElement("div");
|
|
2392
2376
|
w.className = "dhx_scale_bar", this.templates[this._mode + "_scalex_class"] && (w.className += " " + this.templates[this._mode + "_scalex_class"](g));
|
|
2393
2377
|
var b = this._cols[l];
|
|
2394
|
-
this._mode == "month" && l === 0 && this.config.left_border && (w.className += " dhx_scale_bar_border", f += 1),
|
|
2378
|
+
this._mode == "month" && l === 0 && this.config.left_border && (w.className += " dhx_scale_bar_border", f += 1), this.set_xy(w, b, this.xy.scale_height - 1, f, y);
|
|
2395
2379
|
var k = this.templates[this._mode + "_scale_date"](g, this._mode);
|
|
2396
2380
|
w.innerHTML = k, this._waiAria.dayHeaderAttr(w, k), p.appendChild(w);
|
|
2397
2381
|
}, t._get_columns_num = function(l, f) {
|
|
@@ -2427,19 +2411,19 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2427
2411
|
for (var D = 0; D < k; D++) {
|
|
2428
2412
|
if (this._ignores[D] || this._render_x_header(D, E, b, l), !this._table_view) {
|
|
2429
2413
|
var x = document.createElement("div"), S = "dhx_scale_holder";
|
|
2430
|
-
|
|
2431
|
-
|
|
2432
|
-
|
|
2433
|
-
|
|
2434
|
-
|
|
2435
|
-
|
|
2436
|
-
|
|
2437
|
-
|
|
2438
|
-
|
|
2439
|
-
|
|
2440
|
-
|
|
2441
|
-
|
|
2442
|
-
|
|
2414
|
+
b.valueOf() == y.valueOf() && (S += " dhx_scale_holder_now"), x.setAttribute("data-column-index", D), this._ignores_detected && this._ignores[D] && (S += " dhx_scale_ignore");
|
|
2415
|
+
for (let N = 1 * this.config.first_hour; N < this.config.last_hour; N++) {
|
|
2416
|
+
const M = document.createElement("div");
|
|
2417
|
+
M.className = "dhx_scale_time_slot dhx_scale_time_slot_hour_start", M.style.height = this.config.hour_size_px / 2 + "px";
|
|
2418
|
+
let A = new Date(b.getFullYear(), b.getMonth(), b.getDate(), N, 0);
|
|
2419
|
+
M.setAttribute("data-slot-date", this.templates.format_date(A));
|
|
2420
|
+
let C = this.templates.time_slot_text(A);
|
|
2421
|
+
C && (M.innerHTML = C);
|
|
2422
|
+
let T = this.templates.time_slot_class(A);
|
|
2423
|
+
T && M.classList.add(T), x.appendChild(M);
|
|
2424
|
+
const O = document.createElement("div");
|
|
2425
|
+
O.className = "dhx_scale_time_slot", A = new Date(b.getFullYear(), b.getMonth(), b.getDate(), N, 30), O.setAttribute("data-slot-date", this.templates.format_date(A)), O.style.height = this.config.hour_size_px / 2 + "px", C = this.templates.time_slot_text(A), C && (O.innerHTML = C), T = this.templates.time_slot_class(A), T && O.classList.add(T), x.appendChild(O);
|
|
2426
|
+
}
|
|
2443
2427
|
x.className = S + " " + this.templates.week_date_class(b, y), this._waiAria.dayColumnAttr(x, b), this._set_scale_col_size(x, this._cols[D], E), f.appendChild(x), this.callEvent("onScaleAdd", [x, b]);
|
|
2444
2428
|
}
|
|
2445
2429
|
E += this._cols[D], b = this.date.add(b, 1, "day"), b = this.date.day_start(b);
|
|
@@ -2460,14 +2444,12 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2460
2444
|
else if (this._reset_hours_scale(f, b, y), g.multi_day) {
|
|
2461
2445
|
var x = "dhx_multi_day";
|
|
2462
2446
|
this._els[x] && (this._els[x][0].parentNode.removeChild(this._els[x][0]), this._els[x] = null);
|
|
2463
|
-
var S =
|
|
2464
|
-
|
|
2465
|
-
var N =
|
|
2466
|
-
|
|
2467
|
-
var
|
|
2468
|
-
this.set_xy(
|
|
2469
|
-
var T = N.cloneNode(!0);
|
|
2470
|
-
T.className = x + "_icon", T.style.visibility = "hidden", T.style.display = "none", this.set_xy(T, this.xy.scale_width + 1, 0, 0, S), N.appendChild(T), this._els[x] = [N, T], t.event(this._els[x][0], "click", this._click.dhx_cal_data);
|
|
2447
|
+
var S = document.createElement("div");
|
|
2448
|
+
S.className = x, S.style.visibility = "hidden", S.style.display = "none";
|
|
2449
|
+
var N = this._colsS[this._colsS.col_length], M = g.rtl ? this.xy.scale_width : this.xy.scroll_width, A = Math.max(N + M, 0);
|
|
2450
|
+
this.set_xy(S, A, 0, 0), f.parentNode.insertBefore(S, f);
|
|
2451
|
+
var C = S.cloneNode(!0);
|
|
2452
|
+
C.className = x + "_icon", C.style.visibility = "hidden", C.style.display = "none", this.set_xy(C, this.xy.scale_width + 1, 0, 0), S.appendChild(C), this._els[x] = [S, C], t.event(this._els[x][0], "click", this._click.dhx_cal_data);
|
|
2471
2453
|
}
|
|
2472
2454
|
}
|
|
2473
2455
|
}, t._reset_hours_scale = function(l, f, g) {
|
|
@@ -2585,7 +2567,7 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2585
2567
|
}
|
|
2586
2568
|
}, t._get_real_event_length = function(l, f, g) {
|
|
2587
2569
|
var p, y = f - l, w = this["ignore_" + this._mode], b = 0;
|
|
2588
|
-
g.render ? (b = this._get_date_index(g, l), p = this._get_date_index(g, f), l.valueOf() < t.getState().min_date.valueOf() && (b = -
|
|
2570
|
+
g.render ? (b = this._get_date_index(g, l), p = this._get_date_index(g, f), l.valueOf() < t.getState().min_date.valueOf() && (b = -m(l, t.getState().min_date)), f.valueOf() > t.getState().max_date.valueOf() && (p += m(f, t.getState().max_date))) : p = Math.round(y / 60 / 60 / 1e3 / 24);
|
|
2589
2571
|
for (var k = !0; b < p; ) {
|
|
2590
2572
|
var E = t.date.add(f, -g.x_step, g.x_unit);
|
|
2591
2573
|
if (w && w(f) && (!k || k && w(E)))
|
|
@@ -2631,14 +2613,14 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2631
2613
|
return (l + "").replace(r, " ").replace(s, " ");
|
|
2632
2614
|
}
|
|
2633
2615
|
var u = new RegExp("'", "gm");
|
|
2634
|
-
function
|
|
2616
|
+
function v(l) {
|
|
2635
2617
|
return (l + "").replace(u, "'");
|
|
2636
2618
|
}
|
|
2637
|
-
for (var
|
|
2619
|
+
for (var m in t._waiAria = { getAttributeString: function(l) {
|
|
2638
2620
|
var f = [" "];
|
|
2639
2621
|
for (var g in l)
|
|
2640
2622
|
if (typeof l[g] != "function" && typeof l[g] != "object") {
|
|
2641
|
-
var p =
|
|
2623
|
+
var p = v(c(l[g]));
|
|
2642
2624
|
f.push(g + "='" + p + "'");
|
|
2643
2625
|
}
|
|
2644
2626
|
return f.push(" "), f.join(" ");
|
|
@@ -2781,11 +2763,11 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2781
2763
|
}, tooltipHiddenAttr: function(l) {
|
|
2782
2764
|
l.setAttribute("aria-hidden", "true");
|
|
2783
2765
|
} }, t._waiAria)
|
|
2784
|
-
t._waiAria[
|
|
2766
|
+
t._waiAria[m] = function(l) {
|
|
2785
2767
|
return function() {
|
|
2786
2768
|
return t.config.wai_aria_attributes ? l.apply(this, arguments) : " ";
|
|
2787
2769
|
};
|
|
2788
|
-
}(t._waiAria[
|
|
2770
|
+
}(t._waiAria[m]);
|
|
2789
2771
|
})();
|
|
2790
2772
|
}(h), h.utils = I, h.$domHelpers = q, h.utils.dom = q, h.uid = I.uid, h.mixin = I.mixin, h.defined = I.defined, h.assert = function(t) {
|
|
2791
2773
|
return function(r, s) {
|
|
@@ -2825,113 +2807,113 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2825
2807
|
var c;
|
|
2826
2808
|
}, xmltop: function(s, c, u) {
|
|
2827
2809
|
if (c.status === void 0 || c.status < 400) {
|
|
2828
|
-
var
|
|
2829
|
-
if (
|
|
2830
|
-
return
|
|
2810
|
+
var v = c.responseXML ? c.responseXML || c : this.parse(c.responseText || c);
|
|
2811
|
+
if (v && v.documentElement !== null && !v.getElementsByTagName("parsererror").length)
|
|
2812
|
+
return v.getElementsByTagName(s)[0];
|
|
2831
2813
|
}
|
|
2832
2814
|
return u !== -1 && t.callEvent("onLoadXMLError", ["Incorrect XML", arguments[1], u]), document.createElement("DIV");
|
|
2833
2815
|
}, xpath: function(s, c) {
|
|
2834
2816
|
if (c.nodeName || (c = c.responseXML || c), t.$env.isIE)
|
|
2835
2817
|
return c.selectNodes(s) || [];
|
|
2836
|
-
for (var u,
|
|
2837
|
-
|
|
2838
|
-
return
|
|
2818
|
+
for (var u, v = [], m = (c.ownerDocument || c).evaluate(s, c, null, XPathResult.ANY_TYPE, null); u = m.iterateNext(); )
|
|
2819
|
+
v.push(u);
|
|
2820
|
+
return v;
|
|
2839
2821
|
}, query: function(s) {
|
|
2840
2822
|
return this._call(s.method || "GET", s.url, s.data || "", s.async || !0, s.callback, s.headers);
|
|
2841
2823
|
}, get: function(s, c, u) {
|
|
2842
|
-
var
|
|
2843
|
-
return this.query(
|
|
2824
|
+
var v = r("GET", arguments);
|
|
2825
|
+
return this.query(v);
|
|
2844
2826
|
}, getSync: function(s, c) {
|
|
2845
2827
|
var u = r("GET", arguments);
|
|
2846
2828
|
return u.async = !1, this.query(u);
|
|
2847
|
-
}, put: function(s, c, u,
|
|
2848
|
-
var
|
|
2849
|
-
return this.query(v);
|
|
2850
|
-
}, del: function(s, c, u) {
|
|
2851
|
-
var m = r("DELETE", arguments);
|
|
2829
|
+
}, put: function(s, c, u, v) {
|
|
2830
|
+
var m = r("PUT", arguments);
|
|
2852
2831
|
return this.query(m);
|
|
2853
|
-
},
|
|
2854
|
-
|
|
2855
|
-
var v = r("POST", arguments);
|
|
2832
|
+
}, del: function(s, c, u) {
|
|
2833
|
+
var v = r("DELETE", arguments);
|
|
2856
2834
|
return this.query(v);
|
|
2835
|
+
}, post: function(s, c, u, v) {
|
|
2836
|
+
arguments.length == 1 ? c = "" : arguments.length == 2 && typeof c == "function" && (u = c, c = "");
|
|
2837
|
+
var m = r("POST", arguments);
|
|
2838
|
+
return this.query(m);
|
|
2857
2839
|
}, postSync: function(s, c, u) {
|
|
2858
2840
|
c = c === null ? "" : String(c);
|
|
2859
|
-
var
|
|
2860
|
-
return
|
|
2861
|
-
}, _call: function(s, c, u,
|
|
2841
|
+
var v = r("POST", arguments);
|
|
2842
|
+
return v.async = !1, this.query(v);
|
|
2843
|
+
}, _call: function(s, c, u, v, m, l) {
|
|
2862
2844
|
return new t.Promise((function(f, g) {
|
|
2863
2845
|
var p = typeof XMLHttpRequest === void 0 || t.$env.isIE ? new window.ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest(), y = navigator.userAgent.match(/AppleWebKit/) !== null && navigator.userAgent.match(/Qt/) !== null && navigator.userAgent.match(/Safari/) !== null;
|
|
2864
|
-
if (
|
|
2846
|
+
if (v && p.addEventListener("readystatechange", function() {
|
|
2865
2847
|
if (p.readyState == 4 || y && p.readyState == 3) {
|
|
2866
2848
|
if ((p.status != 200 || p.responseText === "") && !t.callEvent("onAjaxError", [p]))
|
|
2867
2849
|
return;
|
|
2868
2850
|
setTimeout(function() {
|
|
2869
|
-
typeof
|
|
2851
|
+
typeof m == "function" && m.apply(window, [{ xmlDoc: p, filePath: c }]), f(p), typeof m == "function" && (m = null, p = null);
|
|
2870
2852
|
}, 0);
|
|
2871
2853
|
}
|
|
2872
|
-
}), s != "GET" || this.cache || (c += (c.indexOf("?") >= 0 ? "&" : "?") + "dhxr" + (/* @__PURE__ */ new Date()).getTime() + "=1"), p.open(s, c,
|
|
2854
|
+
}), s != "GET" || this.cache || (c += (c.indexOf("?") >= 0 ? "&" : "?") + "dhxr" + (/* @__PURE__ */ new Date()).getTime() + "=1"), p.open(s, c, v), l)
|
|
2873
2855
|
for (var w in l)
|
|
2874
2856
|
p.setRequestHeader(w, l[w]);
|
|
2875
2857
|
else
|
|
2876
2858
|
s.toUpperCase() == "POST" || s == "PUT" || s == "DELETE" ? p.setRequestHeader("Content-Type", "application/x-www-form-urlencoded") : s == "GET" && (u = null);
|
|
2877
|
-
if (p.setRequestHeader("X-Requested-With", "XMLHttpRequest"), p.send(u), !
|
|
2859
|
+
if (p.setRequestHeader("X-Requested-With", "XMLHttpRequest"), p.send(u), !v)
|
|
2878
2860
|
return { xmlDoc: p, filePath: c };
|
|
2879
2861
|
}).bind(this));
|
|
2880
2862
|
}, urlSeparator: function(s) {
|
|
2881
2863
|
return s.indexOf("?") != -1 ? "&" : "?";
|
|
2882
2864
|
} }, t.$ajax = t.ajax;
|
|
2883
2865
|
}(h), be(h), function(t) {
|
|
2884
|
-
t.config = { default_date: "%j %M %Y", month_date: "%F %Y", load_date: "%Y-%m-%d", week_date: "%l", day_date: "%D %j", hour_date: "%H:%i", month_day: "%d", date_format: "%Y-%m-%d %H:%i", api_date: "%d-%m-%Y %H:%i", parse_exact_format: !1, preserve_length: !0, time_step: 5, displayed_event_color: "#ff4a4a", displayed_event_text_color: "#ffef80", wide_form: 0, day_column_padding: 8, use_select_menu_space: !0, fix_tab_position: !0, start_on_monday: !0, first_hour: 0, last_hour: 24, readonly: !1, drag_resize: !0, drag_move: !0, drag_create: !0, drag_event_body: !0, dblclick_create: !0, details_on_dblclick: !0, edit_on_create: !0, details_on_create: !0, header: null, hour_size_px: 44, resize_month_events: !1, resize_month_timed: !1, responsive_lightbox: !1, separate_short_events: !0, rtl: !1, cascade_event_display: !1, cascade_event_count: 4, cascade_event_margin: 30, multi_day: !0, multi_day_height_limit:
|
|
2866
|
+
t.config = { default_date: "%j %M %Y", month_date: "%F %Y", load_date: "%Y-%m-%d", week_date: "%l", day_date: "%D %j", hour_date: "%H:%i", month_day: "%d", date_format: "%Y-%m-%d %H:%i", api_date: "%d-%m-%Y %H:%i", parse_exact_format: !1, preserve_length: !0, time_step: 5, displayed_event_color: "#ff4a4a", displayed_event_text_color: "#ffef80", wide_form: 0, day_column_padding: 8, use_select_menu_space: !0, fix_tab_position: !0, start_on_monday: !0, first_hour: 0, last_hour: 24, readonly: !1, drag_resize: !0, drag_move: !0, drag_create: !0, drag_event_body: !0, dblclick_create: !0, details_on_dblclick: !0, edit_on_create: !0, details_on_create: !0, header: null, hour_size_px: 44, resize_month_events: !1, resize_month_timed: !1, responsive_lightbox: !1, separate_short_events: !0, rtl: !1, cascade_event_display: !1, cascade_event_count: 4, cascade_event_margin: 30, multi_day: !0, multi_day_height_limit: 200, drag_lightbox: !0, preserve_scroll: !0, select: !0, server_utc: !1, touch: !0, touch_tip: !0, touch_drag: 500, touch_swipe_dates: !1, quick_info_detached: !0, positive_closing: !1, drag_highlight: !0, limit_drag_out: !1, icons_edit: ["icon_save", "icon_cancel"], icons_select: ["icon_details", "icon_edit", "icon_delete"], buttons_left: ["dhx_save_btn", "dhx_cancel_btn"], buttons_right: ["dhx_delete_btn"], lightbox: { sections: [{ name: "description", map_to: "text", type: "textarea", focus: !0 }, { name: "time", height: 72, type: "time", map_to: "auto" }] }, highlight_displayed_event: !0, left_border: !1, ajax_error: "alert", delay_render: 0, timeline_swap_resize: !0, wai_aria_attributes: !0, wai_aria_application_role: !0, csp: "auto", event_attribute: "data-event-id", show_errors: !0 }, t.config.buttons_left.$initial = t.config.buttons_left.join(), t.config.buttons_right.$initial = t.config.buttons_right.join(), t._helpers = { parseDate: function(r) {
|
|
2885
2867
|
return (t.templates.xml_date || t.templates.parse_date)(r);
|
|
2886
2868
|
}, formatDate: function(r) {
|
|
2887
2869
|
return (t.templates.xml_format || t.templates.format_date)(r);
|
|
2888
2870
|
} }, t.templates = {}, t.init_templates = function() {
|
|
2889
2871
|
var r = t.date.date_to_str, s = t.config;
|
|
2890
2872
|
(function(c, u) {
|
|
2891
|
-
for (var
|
|
2892
|
-
c[
|
|
2873
|
+
for (var v in u)
|
|
2874
|
+
c[v] || (c[v] = u[v]);
|
|
2893
2875
|
})(t.templates, { day_date: r(s.default_date), month_date: r(s.month_date), week_date: function(c, u) {
|
|
2894
2876
|
return s.rtl ? t.templates.day_date(t.date.add(u, -1, "day")) + " – " + t.templates.day_date(c) : t.templates.day_date(c) + " – " + t.templates.day_date(t.date.add(u, -1, "day"));
|
|
2895
2877
|
}, day_scale_date: r(s.default_date), time_slot_text: function(c) {
|
|
2896
2878
|
return "";
|
|
2897
2879
|
}, time_slot_class: function(c) {
|
|
2898
2880
|
return "";
|
|
2899
|
-
}, month_scale_date: r(s.week_date), week_scale_date: r(s.day_date), hour_scale: r(s.hour_date), time_picker: r(s.hour_date), event_date: r(s.hour_date), month_day: r(s.month_day), load_format: r(s.load_date), format_date: r(s.date_format, s.server_utc), parse_date: t.date.str_to_date(s.date_format, s.server_utc), api_date: t.date.str_to_date(s.api_date, !1, !1), event_header: function(c, u,
|
|
2900
|
-
return
|
|
2901
|
-
}, event_text: function(c, u,
|
|
2902
|
-
return
|
|
2903
|
-
}, event_class: function(c, u,
|
|
2881
|
+
}, month_scale_date: r(s.week_date), week_scale_date: r(s.day_date), hour_scale: r(s.hour_date), time_picker: r(s.hour_date), event_date: r(s.hour_date), month_day: r(s.month_day), load_format: r(s.load_date), format_date: r(s.date_format, s.server_utc), parse_date: t.date.str_to_date(s.date_format, s.server_utc), api_date: t.date.str_to_date(s.api_date, !1, !1), event_header: function(c, u, v) {
|
|
2882
|
+
return v._mode === "small" || v._mode === "smallest" ? t.templates.event_date(c) : t.templates.event_date(c) + " - " + t.templates.event_date(u);
|
|
2883
|
+
}, event_text: function(c, u, v) {
|
|
2884
|
+
return v.text;
|
|
2885
|
+
}, event_class: function(c, u, v) {
|
|
2904
2886
|
return "";
|
|
2905
2887
|
}, month_date_class: function(c) {
|
|
2906
2888
|
return "";
|
|
2907
2889
|
}, week_date_class: function(c) {
|
|
2908
2890
|
return "";
|
|
2909
|
-
}, event_bar_date: function(c, u,
|
|
2891
|
+
}, event_bar_date: function(c, u, v) {
|
|
2910
2892
|
return t.templates.event_date(c);
|
|
2911
|
-
}, event_bar_text: function(c, u,
|
|
2912
|
-
return
|
|
2893
|
+
}, event_bar_text: function(c, u, v) {
|
|
2894
|
+
return v.text;
|
|
2913
2895
|
}, month_events_link: function(c, u) {
|
|
2914
2896
|
return "<a>View more(" + u + " events)</a>";
|
|
2915
|
-
}, drag_marker_class: function(c, u,
|
|
2897
|
+
}, drag_marker_class: function(c, u, v) {
|
|
2916
2898
|
return "";
|
|
2917
|
-
}, drag_marker_content: function(c, u,
|
|
2899
|
+
}, drag_marker_content: function(c, u, v) {
|
|
2918
2900
|
return "";
|
|
2919
|
-
}, tooltip_date_format: t.date.date_to_str("%Y-%m-%d %H:%i"), tooltip_text: function(c, u,
|
|
2920
|
-
return "<b>Event:</b> " +
|
|
2901
|
+
}, tooltip_date_format: t.date.date_to_str("%Y-%m-%d %H:%i"), tooltip_text: function(c, u, v) {
|
|
2902
|
+
return "<b>Event:</b> " + v.text + "<br/><b>Start date:</b> " + t.templates.tooltip_date_format(c) + "<br/><b>End date:</b> " + t.templates.tooltip_date_format(u);
|
|
2921
2903
|
}, calendar_month: r("%F %Y"), calendar_scale_date: r("%D"), calendar_date: r("%d"), calendar_time: r("%d-%m-%Y") }), this.callEvent("onTemplatesReady", []);
|
|
2922
2904
|
};
|
|
2923
2905
|
}(h), function(t) {
|
|
2924
2906
|
t._events = {}, t.clearAll = function() {
|
|
2925
2907
|
this._events = {}, this._loaded = {}, this._edit_id = null, this._select_id = null, this._drag_id = null, this._drag_mode = null, this._drag_pos = null, this._new_event = null, this.clear_view(), this.callEvent("onClearAll", []);
|
|
2926
|
-
}, t.addEvent = function(r, s, c, u,
|
|
2908
|
+
}, t.addEvent = function(r, s, c, u, v) {
|
|
2927
2909
|
if (!arguments.length)
|
|
2928
2910
|
return this.addEventNow();
|
|
2929
|
-
var
|
|
2930
|
-
arguments.length != 1 && ((
|
|
2911
|
+
var m = r;
|
|
2912
|
+
arguments.length != 1 && ((m = v || {}).start_date = r, m.end_date = s, m.text = c, m.id = u), m.id = m.id || t.uid(), m.text = m.text || "", typeof m.start_date == "string" && (m.start_date = this.templates.api_date(m.start_date)), typeof m.end_date == "string" && (m.end_date = this.templates.api_date(m.end_date));
|
|
2931
2913
|
var l = 6e4 * (this.config.event_duration || this.config.time_step);
|
|
2932
|
-
|
|
2933
|
-
var f = !this._events[
|
|
2934
|
-
return this._events[
|
|
2914
|
+
m.start_date.valueOf() == m.end_date.valueOf() && m.end_date.setTime(m.end_date.valueOf() + l), m.start_date.setMilliseconds(0), m.end_date.setMilliseconds(0), m._timed = this.isOneDayEvent(m);
|
|
2915
|
+
var f = !this._events[m.id];
|
|
2916
|
+
return this._events[m.id] = m, this.event_updated(m), this._loading || this.callEvent(f ? "onEventAdded" : "onEventChanged", [m.id, m]), m.id;
|
|
2935
2917
|
}, t.deleteEvent = function(r, s) {
|
|
2936
2918
|
var c = this._events[r];
|
|
2937
2919
|
(s || this.callEvent("onBeforeEventDelete", [r, c]) && this.callEvent("onConfirmedBeforeEventDelete", [r, c])) && (c && (t.getState().select_id == r && t.unselect(), delete this._events[r], this.event_updated(c), this._drag_id == c.id && (this._drag_id = null, this._drag_mode = null, this._drag_pos = null)), this.callEvent("onEventDeleted", [r, c]));
|
|
@@ -2950,14 +2932,14 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2950
2932
|
}), this._select_id == r && (this._select_id = s), this._edit_id == r && (this._edit_id = s), this.callEvent("onEventIdChange", [r, s]);
|
|
2951
2933
|
}
|
|
2952
2934
|
}, function() {
|
|
2953
|
-
for (var r = ["text", "Text", "start_date", "StartDate", "end_date", "EndDate"], s = function(
|
|
2954
|
-
return function(
|
|
2955
|
-
return t.getEvent(
|
|
2935
|
+
for (var r = ["text", "Text", "start_date", "StartDate", "end_date", "EndDate"], s = function(v) {
|
|
2936
|
+
return function(m) {
|
|
2937
|
+
return t.getEvent(m)[v];
|
|
2956
2938
|
};
|
|
2957
|
-
}, c = function(
|
|
2958
|
-
return function(
|
|
2959
|
-
var f = t.getEvent(
|
|
2960
|
-
f[
|
|
2939
|
+
}, c = function(v) {
|
|
2940
|
+
return function(m, l) {
|
|
2941
|
+
var f = t.getEvent(m);
|
|
2942
|
+
f[v] = l, f._changed = !0, f._timed = this.isOneDayEvent(f), t.event_updated(f, !0);
|
|
2961
2943
|
};
|
|
2962
2944
|
}, u = 0; u < r.length; u += 2)
|
|
2963
2945
|
t["getEvent" + r[u + 1]] = s(r[u]), t["setEvent" + r[u + 1]] = c(r[u]);
|
|
@@ -2967,8 +2949,8 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2967
2949
|
if (!this._min_date || !this._max_date)
|
|
2968
2950
|
return !1;
|
|
2969
2951
|
if (r.start_date.valueOf() < this._max_date.valueOf() && this._min_date.valueOf() < r.end_date.valueOf()) {
|
|
2970
|
-
var s = r.start_date.getHours(), c = r.end_date.getHours() + r.end_date.getMinutes() / 60, u = this.config.last_hour,
|
|
2971
|
-
return !(!this._table_view && (c > u || c <=
|
|
2952
|
+
var s = r.start_date.getHours(), c = r.end_date.getHours() + r.end_date.getMinutes() / 60, u = this.config.last_hour, v = this.config.first_hour;
|
|
2953
|
+
return !(!this._table_view && (c > u || c <= v) && (s >= u || s < v) && !((r.end_date.valueOf() - r.start_date.valueOf()) / 36e5 > 24 - (this.config.last_hour - this.config.first_hour) || s < u && c > v));
|
|
2972
2954
|
}
|
|
2973
2955
|
return !1;
|
|
2974
2956
|
}, t.isOneDayEvent = function(r) {
|
|
@@ -2991,17 +2973,17 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
2991
2973
|
return void (this._render_wait = !0);
|
|
2992
2974
|
this._render_wait = !1, this.clear_view(), r = this.get_visible_events(!(this._table_view || this.config.multi_day));
|
|
2993
2975
|
}
|
|
2994
|
-
for (var u = 0,
|
|
2976
|
+
for (var u = 0, v = r.length; u < v; u++)
|
|
2995
2977
|
this._recalculate_timed(r[u]);
|
|
2996
2978
|
if (this.config.multi_day && !this._table_view) {
|
|
2997
|
-
var
|
|
2979
|
+
var m = [], l = [];
|
|
2998
2980
|
for (u = 0; u < r.length; u++)
|
|
2999
|
-
this._is_main_area_event(r[u]) ?
|
|
2981
|
+
this._is_main_area_event(r[u]) ? m.push(r[u]) : l.push(r[u]);
|
|
3000
2982
|
if (!this._els.dhx_multi_day) {
|
|
3001
2983
|
var f = t._commonErrorMessages.unknownView(this._mode);
|
|
3002
2984
|
throw new Error(f);
|
|
3003
2985
|
}
|
|
3004
|
-
this._rendered_location = this._els.dhx_multi_day[0], this._table_view = !0, this.render_data(l, s), this._table_view = !1, this._rendered_location = this._els.dhx_cal_data[0], this._table_view = !1, this.render_data(
|
|
2986
|
+
this._rendered_location = this._els.dhx_multi_day[0], this._table_view = !0, this.render_data(l, s), this._table_view = !1, this._rendered_location = this._els.dhx_cal_data[0], this._table_view = !1, this.render_data(m, s);
|
|
3005
2987
|
} else {
|
|
3006
2988
|
var g = document.createDocumentFragment(), p = this._els.dhx_cal_data[0];
|
|
3007
2989
|
this._rendered_location = g, this.render_data(r, s), p.appendChild(g), this._rendered_location = p;
|
|
@@ -3013,12 +2995,12 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3013
2995
|
}, t._render_month_link = function(r) {
|
|
3014
2996
|
for (var s = this._rendered_location, c = this._lame_clone(r), u = r._sday; u < r._eday; u++) {
|
|
3015
2997
|
c._sday = u, c._eday = u + 1;
|
|
3016
|
-
var
|
|
3017
|
-
|
|
3018
|
-
var l = t.getEvents(
|
|
2998
|
+
var v = t.date, m = t._min_date;
|
|
2999
|
+
m = v.add(m, c._sweek, "week"), m = v.add(m, c._sday, "day");
|
|
3000
|
+
var l = t.getEvents(m, v.add(m, 1, "day")).length, f = this._get_event_bar_pos(c), g = f.x2 - f.x, p = document.createElement("div");
|
|
3019
3001
|
t.event(p, "click", function(y) {
|
|
3020
3002
|
t._view_month_day(y);
|
|
3021
|
-
}), p.className = "dhx_month_link", p.style.top = f.y + "px", p.style.left = f.x + "px", p.style.width = g + "px", p.innerHTML = t.templates.month_events_link(
|
|
3003
|
+
}), p.className = "dhx_month_link", p.style.top = f.y + "px", p.style.left = f.x + "px", p.style.width = g + "px", p.innerHTML = t.templates.month_events_link(m, l), this._rendered.push(p), s.appendChild(p);
|
|
3022
3004
|
}
|
|
3023
3005
|
}, t._recalculate_timed = function(r) {
|
|
3024
3006
|
var s;
|
|
@@ -3030,16 +3012,16 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3030
3012
|
if (t._mode != "month")
|
|
3031
3013
|
this.render_event_bar(r[u]);
|
|
3032
3014
|
else {
|
|
3033
|
-
var
|
|
3034
|
-
|
|
3015
|
+
var v = t.config.max_month_events;
|
|
3016
|
+
v !== 1 * v || r[u]._sorder < v ? this.render_event_bar(r[u]) : v !== void 0 && r[u]._sorder == v && t._render_month_link(r[u]);
|
|
3035
3017
|
}
|
|
3036
3018
|
else {
|
|
3037
|
-
var
|
|
3019
|
+
var m = r[u], l = t.locate_holder(m._sday);
|
|
3038
3020
|
if (!l)
|
|
3039
3021
|
continue;
|
|
3040
|
-
c[
|
|
3041
|
-
var f = c[
|
|
3042
|
-
this.render_event(
|
|
3022
|
+
c[m._sday] || (c[m._sday] = { real: l, buffer: document.createDocumentFragment(), width: l.clientWidth });
|
|
3023
|
+
var f = c[m._sday];
|
|
3024
|
+
this.render_event(m, f.buffer, f.width);
|
|
3043
3025
|
}
|
|
3044
3026
|
for (var u in c)
|
|
3045
3027
|
(f = c[u]).real && f.buffer && f.real.appendChild(f.buffer);
|
|
@@ -3049,35 +3031,35 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3049
3031
|
return r[s];
|
|
3050
3032
|
return r[0];
|
|
3051
3033
|
}, t._pre_render_events = function(r, s) {
|
|
3052
|
-
var c = this.xy.bar_height, u = this._colsS.heights,
|
|
3034
|
+
var c = this.xy.bar_height, u = this._colsS.heights, v = this._colsS.heights = [0, 0, 0, 0, 0, 0, 0], m = this._els.dhx_cal_data[0];
|
|
3053
3035
|
if (r = this._table_view ? this._pre_render_events_table(r, s) : this._pre_render_events_line(r, s), this._table_view)
|
|
3054
3036
|
if (s)
|
|
3055
3037
|
this._colsS.heights = u;
|
|
3056
3038
|
else {
|
|
3057
|
-
var l =
|
|
3039
|
+
var l = m.querySelectorAll(".dhx_cal_month_row");
|
|
3058
3040
|
if (l.length) {
|
|
3059
3041
|
for (var f = 0; f < l.length; f++) {
|
|
3060
|
-
|
|
3042
|
+
v[f]++;
|
|
3061
3043
|
var g = l[f].querySelectorAll(".dhx_cal_month_cell"), p = this._colsS.height - this.xy.month_head_height;
|
|
3062
|
-
if (
|
|
3044
|
+
if (v[f] * c > p) {
|
|
3063
3045
|
var y = p;
|
|
3064
|
-
1 * this.config.max_month_events !== this.config.max_month_events ||
|
|
3046
|
+
1 * this.config.max_month_events !== this.config.max_month_events || v[f] <= this.config.max_month_events ? y = v[f] * c : (this.config.max_month_events + 1) * c > p && (y = (this.config.max_month_events + 1) * c), l[f].style.height = y + this.xy.month_head_height + "px";
|
|
3065
3047
|
}
|
|
3066
|
-
|
|
3048
|
+
v[f] = (v[f - 1] || 0) + t._get_first_visible_cell(g).offsetHeight;
|
|
3067
3049
|
}
|
|
3068
|
-
|
|
3050
|
+
v.unshift(0);
|
|
3069
3051
|
const M = this.$container.querySelector(".dhx_cal_data");
|
|
3070
3052
|
if (M.offsetHeight < M.scrollHeight && !t._colsS.scroll_fix && t.xy.scroll_width) {
|
|
3071
3053
|
var w = t._colsS, b = w[w.col_length], k = w.heights.slice();
|
|
3072
3054
|
b -= t.xy.scroll_width || 0, this._calc_scale_sizes(b, this._min_date, this._max_date), t._colsS.heights = k, this.set_xy(this._els.dhx_cal_header[0], b), t._render_scales(this._els.dhx_cal_header[0]), t._render_month_scale(this._els.dhx_cal_data[0], this._get_timeunit_start(), this._min_date), w.scroll_fix = !0;
|
|
3073
3055
|
}
|
|
3074
|
-
} else if (r.length || this._els.dhx_multi_day[0].style.visibility != "visible" || (
|
|
3075
|
-
var E = (
|
|
3076
|
-
this.config.multi_day_height_limit && (x = (D = Math.min(E, this.config.multi_day_height_limit)) + "px")
|
|
3056
|
+
} else if (r.length || this._els.dhx_multi_day[0].style.visibility != "visible" || (v[0] = -1), r.length || v[0] == -1) {
|
|
3057
|
+
var E = (v[0] + 1) * c + 4, D = E, x = E + "px";
|
|
3058
|
+
this.config.multi_day_height_limit && (x = (D = Math.min(E, this.config.multi_day_height_limit)) + "px");
|
|
3077
3059
|
var S = this._els.dhx_multi_day[0];
|
|
3078
|
-
S.style.height = x, S.style.visibility =
|
|
3060
|
+
S.style.height = x, S.style.visibility = v[0] == -1 ? "hidden" : "visible", S.style.display = v[0] == -1 ? "none" : "";
|
|
3079
3061
|
var N = this._els.dhx_multi_day[1];
|
|
3080
|
-
N.style.height = x, N.style.visibility =
|
|
3062
|
+
N.style.height = x, N.style.visibility = v[0] == -1 ? "hidden" : "visible", N.style.display = v[0] == -1 ? "none" : "", N.className = v[0] ? "dhx_multi_day_icon" : "dhx_multi_day_icon_small", this._dy_shift = (v[0] + 1) * c, this.config.multi_day_height_limit && (this._dy_shift = Math.min(this.config.multi_day_height_limit, this._dy_shift)), v[0] = 0, D != E && (S.style.overflowY = "auto", N.style.position = "fixed", N.style.top = "", N.style.left = "");
|
|
3081
3063
|
}
|
|
3082
3064
|
}
|
|
3083
3065
|
return r;
|
|
@@ -3097,22 +3079,22 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3097
3079
|
});
|
|
3098
3080
|
var c = [], u = [];
|
|
3099
3081
|
this._min_mapped_duration = Math.floor(60 * this.xy.min_event_height / this.config.hour_size_px);
|
|
3100
|
-
for (var
|
|
3101
|
-
var
|
|
3102
|
-
if (
|
|
3103
|
-
r.splice(
|
|
3082
|
+
for (var v = 0; v < r.length; v++) {
|
|
3083
|
+
var m = r[v], l = m.start_date, f = m.end_date, g = l.getHours(), p = f.getHours();
|
|
3084
|
+
if (m._sday = this._get_event_sday(m), this._ignores[m._sday])
|
|
3085
|
+
r.splice(v, 1), v--;
|
|
3104
3086
|
else {
|
|
3105
|
-
if (c[
|
|
3106
|
-
|
|
3107
|
-
for (var y = c[
|
|
3087
|
+
if (c[m._sday] || (c[m._sday] = []), !s) {
|
|
3088
|
+
m._inner = !1;
|
|
3089
|
+
for (var y = c[m._sday]; y.length; ) {
|
|
3108
3090
|
var w = y[y.length - 1];
|
|
3109
|
-
if (!(this._get_event_mapped_end_date(w).valueOf() <=
|
|
3091
|
+
if (!(this._get_event_mapped_end_date(w).valueOf() <= m.start_date.valueOf()))
|
|
3110
3092
|
break;
|
|
3111
3093
|
y.splice(y.length - 1, 1);
|
|
3112
3094
|
}
|
|
3113
3095
|
for (var b = y.length, k = !1, E = 0; E < y.length; E++)
|
|
3114
|
-
if (w = y[E], this._get_event_mapped_end_date(w).valueOf() <=
|
|
3115
|
-
k = !0,
|
|
3096
|
+
if (w = y[E], this._get_event_mapped_end_date(w).valueOf() <= m.start_date.valueOf()) {
|
|
3097
|
+
k = !0, m._sorder = w._sorder, b = E, m._inner = !0;
|
|
3116
3098
|
break;
|
|
3117
3099
|
}
|
|
3118
3100
|
if (y.length && (y[y.length - 1]._inner = !0), !k)
|
|
@@ -3126,31 +3108,31 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3126
3108
|
break;
|
|
3127
3109
|
}
|
|
3128
3110
|
if (!D) {
|
|
3129
|
-
|
|
3111
|
+
m._sorder = E;
|
|
3130
3112
|
break;
|
|
3131
3113
|
}
|
|
3132
3114
|
}
|
|
3133
3115
|
else
|
|
3134
|
-
|
|
3135
|
-
|
|
3116
|
+
m._sorder = 0;
|
|
3117
|
+
m._inner = !0;
|
|
3136
3118
|
} else {
|
|
3137
3119
|
var S = y[0]._sorder;
|
|
3138
3120
|
for (E = 1; E < y.length; E++)
|
|
3139
3121
|
y[E]._sorder > S && (S = y[E]._sorder);
|
|
3140
|
-
|
|
3122
|
+
m._sorder = S + 1, m._inner = !1;
|
|
3141
3123
|
}
|
|
3142
3124
|
else
|
|
3143
|
-
|
|
3144
|
-
y.splice(b, b == y.length ? 0 : 1,
|
|
3125
|
+
m._sorder = 0;
|
|
3126
|
+
y.splice(b, b == y.length ? 0 : 1, m), y.length > (y.max_count || 0) ? (y.max_count = y.length, m._count = y.length) : m._count = m._count ? m._count : 1;
|
|
3145
3127
|
}
|
|
3146
|
-
(g < this.config.first_hour || p >= this.config.last_hour) && (u.push(
|
|
3128
|
+
(g < this.config.first_hour || p >= this.config.last_hour) && (u.push(m), r[v] = m = this._copy_event(m), g < this.config.first_hour && (m.start_date.setHours(this.config.first_hour), m.start_date.setMinutes(0)), p >= this.config.last_hour && (m.end_date.setMinutes(0), m.end_date.setHours(this.config.last_hour)), m.start_date > m.end_date || g == this.config.last_hour) && (r.splice(v, 1), v--);
|
|
3147
3129
|
}
|
|
3148
3130
|
}
|
|
3149
3131
|
if (!s) {
|
|
3150
|
-
for (
|
|
3151
|
-
r[
|
|
3152
|
-
for (
|
|
3153
|
-
u[
|
|
3132
|
+
for (v = 0; v < r.length; v++)
|
|
3133
|
+
r[v]._count = c[r[v]._sday].max_count;
|
|
3134
|
+
for (v = 0; v < u.length; v++)
|
|
3135
|
+
u[v]._count = c[u[v]._sday].max_count;
|
|
3154
3136
|
}
|
|
3155
3137
|
return r;
|
|
3156
3138
|
}, t._time_order = function(r) {
|
|
@@ -3158,20 +3140,20 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3158
3140
|
return s.start_date.valueOf() == c.start_date.valueOf() ? s._timed && !c._timed ? 1 : !s._timed && c._timed ? -1 : s.id > c.id ? 1 : -1 : s.start_date > c.start_date ? 1 : -1;
|
|
3159
3141
|
});
|
|
3160
3142
|
}, t._is_any_multiday_cell_visible = function(r, s, c) {
|
|
3161
|
-
var u = this._cols.length,
|
|
3162
|
-
for (t.date.day_start(new Date(s)).valueOf() != s.valueOf() && (f = t.date.day_start(f), f = t.date.add(f, 1, "day"));
|
|
3143
|
+
var u = this._cols.length, v = !1, m = r, l = !0, f = new Date(s);
|
|
3144
|
+
for (t.date.day_start(new Date(s)).valueOf() != s.valueOf() && (f = t.date.day_start(f), f = t.date.add(f, 1, "day")); m < f; ) {
|
|
3163
3145
|
l = !1;
|
|
3164
|
-
var g = this.locate_holder_day(
|
|
3146
|
+
var g = this.locate_holder_day(m, !1, c) % u;
|
|
3165
3147
|
if (!this._ignores[g]) {
|
|
3166
|
-
|
|
3148
|
+
v = !0;
|
|
3167
3149
|
break;
|
|
3168
3150
|
}
|
|
3169
|
-
|
|
3151
|
+
m = t.date.add(m, 1, "day");
|
|
3170
3152
|
}
|
|
3171
|
-
return l ||
|
|
3153
|
+
return l || v;
|
|
3172
3154
|
}, t._pre_render_events_table = function(r, s) {
|
|
3173
3155
|
this._time_order(r);
|
|
3174
|
-
for (var c, u = [],
|
|
3156
|
+
for (var c, u = [], v = [[], [], [], [], [], [], []], m = this._colsS.heights, l = this._cols.length, f = {}, g = 0; g < r.length; g++) {
|
|
3175
3157
|
var p = r[g], y = p.id;
|
|
3176
3158
|
f[y] || (f[y] = { first_chunk: !0, last_chunk: !0 });
|
|
3177
3159
|
var w = f[y], b = c || p.start_date, k = p.end_date;
|
|
@@ -3180,14 +3162,14 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3180
3162
|
if (p._sday = E % l, !this._ignores[p._sday] || !p._timed) {
|
|
3181
3163
|
var D = this.locate_holder_day(k, !0, p) || l;
|
|
3182
3164
|
if (p._eday = D % l || l, p._length = D - E, p._sweek = Math.floor((this._correct_shift(b.valueOf(), 1) - this._min_date.valueOf()) / (864e5 * l)), t._is_any_multiday_cell_visible(b, k, p)) {
|
|
3183
|
-
var x, S =
|
|
3165
|
+
var x, S = v[p._sweek];
|
|
3184
3166
|
for (x = 0; x < S.length && !(S[x]._eday <= p._sday); x++)
|
|
3185
3167
|
;
|
|
3186
3168
|
if (p._sorder && s || (p._sorder = x), p._sday + p._length <= l)
|
|
3187
|
-
c = null, u.push(p), S[x] = p,
|
|
3169
|
+
c = null, u.push(p), S[x] = p, m[p._sweek] = S.length - 1, p._first_chunk = w.first_chunk, p._last_chunk = w.last_chunk;
|
|
3188
3170
|
else {
|
|
3189
3171
|
var N = this._copy_event(p);
|
|
3190
|
-
N.id = p.id, N._length = l - p._sday, N._eday = l, N._sday = p._sday, N._sweek = p._sweek, N._sorder = p._sorder, N.end_date = this.date.add(b, N._length, "day"), N._first_chunk = w.first_chunk, w.first_chunk && (w.first_chunk = !1), u.push(N), S[x] = N, c = N.end_date,
|
|
3172
|
+
N.id = p.id, N._length = l - p._sday, N._eday = l, N._sday = p._sday, N._sweek = p._sweek, N._sorder = p._sorder, N.end_date = this.date.add(b, N._length, "day"), N._first_chunk = w.first_chunk, w.first_chunk && (w.first_chunk = !1), u.push(N), S[x] = N, c = N.end_date, m[p._sweek] = S.length - 1, g--;
|
|
3191
3173
|
}
|
|
3192
3174
|
}
|
|
3193
3175
|
}
|
|
@@ -3219,23 +3201,23 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3219
3201
|
var c = 60 * r.start_date.getHours() + r.start_date.getMinutes(), u = 60 * r.end_date.getHours() + r.end_date.getMinutes() || 60 * t.config.last_hour;
|
|
3220
3202
|
return { top: this._y_from_date(r.start_date), height: Math.max(s, (u - c) * this.config.hour_size_px / 60) };
|
|
3221
3203
|
}, t.render_event = function(r, s, c) {
|
|
3222
|
-
var u = t.xy.menu_width,
|
|
3204
|
+
var u = t.xy.menu_width, v = this.config.use_select_menu_space ? 0 : u;
|
|
3223
3205
|
if (!(r._sday < 0)) {
|
|
3224
|
-
var
|
|
3225
|
-
if (
|
|
3226
|
-
s = s ||
|
|
3206
|
+
var m = t.locate_holder(r._sday);
|
|
3207
|
+
if (m) {
|
|
3208
|
+
s = s || m;
|
|
3227
3209
|
var l = this._calc_event_y(r, t.xy.min_event_height), f = l.top, g = l.height, p = r._count || 1, y = r._sorder || 0;
|
|
3228
|
-
c = c ||
|
|
3229
|
-
var w = Math.floor((c -
|
|
3210
|
+
c = c || m.clientWidth, this.config.day_column_padding && (c -= this.config.day_column_padding);
|
|
3211
|
+
var w = Math.floor((c - v) / p), b = y * w + (y > 0 ? 2 : 1);
|
|
3230
3212
|
if (r._inner || (w *= p - y), this.config.cascade_event_display) {
|
|
3231
3213
|
var k = this.config.cascade_event_count, E = this.config.cascade_event_margin;
|
|
3232
3214
|
b = y % k * E;
|
|
3233
3215
|
var D = r._inner ? (p - y - 1) % k * E / 2 : 0;
|
|
3234
|
-
w = Math.floor(c -
|
|
3216
|
+
w = Math.floor(c - v - b - D);
|
|
3235
3217
|
}
|
|
3236
3218
|
r._mode = g < 30 ? "smallest" : g < 42 ? "small" : null;
|
|
3237
|
-
var x = this._render_v_bar(r,
|
|
3238
|
-
if (r._mode === "smallest" ? x.classList.add("dhx_cal_event--xsmall") : r._mode === "small" && x.classList.add("dhx_cal_event--small"), this._waiAria.eventAttr(r, x), this._rendered.push(x), s.appendChild(x), b = b + parseInt(this.config.rtl ?
|
|
3219
|
+
var x = this._render_v_bar(r, v + b, f, w, g, r._text_style, t.templates.event_header(r.start_date, r.end_date, r), t.templates.event_text(r.start_date, r.end_date, r));
|
|
3220
|
+
if (r._mode === "smallest" ? x.classList.add("dhx_cal_event--xsmall") : r._mode === "small" && x.classList.add("dhx_cal_event--small"), this._waiAria.eventAttr(r, x), this._rendered.push(x), s.appendChild(x), b = b + parseInt(this.config.rtl ? m.style.right : m.style.left, 10) + v, this._edit_id == r.id) {
|
|
3239
3221
|
x.style.zIndex = 1, w = Math.max(w, t.xy.editor_width), (x = document.createElement("div")).setAttribute("event_id", r.id), x.setAttribute(this.config.event_attribute, r.id), this._waiAria.eventAttr(r, x), x.className = "dhx_cal_event dhx_cal_editor", this.config.rtl && b++, this.set_xy(x, w, g, b, f), r.color && x.style.setProperty("--dhx-scheduler-event-background", r.color);
|
|
3240
3222
|
var S = t.templates.event_class(r.start_date, r.end_date, r);
|
|
3241
3223
|
S && (x.className += " " + S);
|
|
@@ -3261,15 +3243,15 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3261
3243
|
this.config.drag_highlight && this._drag_id == r.id && this.highlightEventPosition(r);
|
|
3262
3244
|
}
|
|
3263
3245
|
}
|
|
3264
|
-
}, t._render_v_bar = function(r, s, c, u,
|
|
3246
|
+
}, t._render_v_bar = function(r, s, c, u, v, m, l, f, g) {
|
|
3265
3247
|
var p = document.createElement("div"), y = r.id, w = g ? "dhx_cal_event dhx_cal_select_menu" : "dhx_cal_event", b = t.getState();
|
|
3266
3248
|
b.drag_id == r.id && (w += " dhx_cal_event_drag"), b.select_id == r.id && (w += " dhx_cal_event_selected");
|
|
3267
3249
|
var k = t.templates.event_class(r.start_date, r.end_date, r);
|
|
3268
3250
|
k && (w = w + " " + k), this.config.cascade_event_display && (w += " dhx_cal_event_cascade");
|
|
3269
|
-
var E = u, D = '<div event_id="' + y + '" ' + this.config.event_attribute + '="' + y + '" class="' + w + '" style="position:absolute; top:' + c + "px; " + (this.config.rtl ? "right:" : "left:") + s + "px; width:" + E + "px; height:" +
|
|
3251
|
+
var E = u, D = '<div event_id="' + y + '" ' + this.config.event_attribute + '="' + y + '" class="' + w + '" style="position:absolute; top:' + c + "px; " + (this.config.rtl ? "right:" : "left:") + s + "px; width:" + E + "px; height:" + v + "px;" + (m || "") + '"></div>';
|
|
3270
3252
|
p.innerHTML = D;
|
|
3271
3253
|
var x = p.cloneNode(!0).firstChild;
|
|
3272
|
-
if (!g && t.renderEvent(x, r, u,
|
|
3254
|
+
if (!g && t.renderEvent(x, r, u, v, l, f))
|
|
3273
3255
|
return r.color && x.style.setProperty("--dhx-scheduler-event-background", r.color), r.textColor && x.style.setProperty("--dhx-scheduler-event-color", r.textColor), x;
|
|
3274
3256
|
x = p.firstChild, r.color && x.style.setProperty("--dhx-scheduler-event-background", r.color), r.textColor && x.style.setProperty("--dhx-scheduler-event-color", r.textColor);
|
|
3275
3257
|
var S = '<div class="dhx_event_move dhx_header" > </div>';
|
|
@@ -3291,23 +3273,23 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3291
3273
|
r--, u -= s;
|
|
3292
3274
|
return Math.max(r, 0);
|
|
3293
3275
|
}, t._get_event_bar_pos = function(r) {
|
|
3294
|
-
var s = this.config.rtl, c = this._colsS, u = c[r._sday],
|
|
3295
|
-
s && (u = c[c.col_length] - c[r._eday] + c[0],
|
|
3296
|
-
var
|
|
3276
|
+
var s = this.config.rtl, c = this._colsS, u = c[r._sday], v = c[r._eday];
|
|
3277
|
+
s && (u = c[c.col_length] - c[r._eday] + c[0], v = c[c.col_length] - c[r._sday] + c[0]), v == u && (v = c[r._eday + 1]);
|
|
3278
|
+
var m = this.xy.bar_height, l = r._sorder;
|
|
3297
3279
|
if (r.id == this._drag_id) {
|
|
3298
3280
|
var f = c.heights[r._sweek + 1] - c.heights[r._sweek] - this.xy.month_head_height;
|
|
3299
|
-
l = t._get_dnd_order(l,
|
|
3281
|
+
l = t._get_dnd_order(l, m, f);
|
|
3300
3282
|
}
|
|
3301
|
-
var g = l *
|
|
3302
|
-
return { x: u, x2:
|
|
3283
|
+
var g = l * m;
|
|
3284
|
+
return { x: u, x2: v, y: c.heights[r._sweek] + (c.height ? this.xy.month_scale_height + 2 : 2) + g };
|
|
3303
3285
|
}, t.render_event_bar = function(r) {
|
|
3304
|
-
var s = this._rendered_location, c = this._get_event_bar_pos(r), u = c.y,
|
|
3305
|
-
if (
|
|
3286
|
+
var s = this._rendered_location, c = this._get_event_bar_pos(r), u = c.y, v = c.x, m = c.x2, l = "";
|
|
3287
|
+
if (m) {
|
|
3306
3288
|
var f = t.config.resize_month_events && this._mode == "month" && (!r._timed || t.config.resize_month_timed), g = document.createElement("div"), p = r.hasOwnProperty("_first_chunk") && r._first_chunk, y = r.hasOwnProperty("_last_chunk") && r._last_chunk, w = f && (r._timed || p), b = f && (r._timed || y), k = !0, E = "dhx_cal_event_clear";
|
|
3307
3289
|
r._timed && !f || (k = !1, E = "dhx_cal_event_line"), p && (E += " dhx_cal_event_line_start"), y && (E += " dhx_cal_event_line_end"), w && (l += "<div class='dhx_event_resize dhx_event_resize_start'></div>"), b && (l += "<div class='dhx_event_resize dhx_event_resize_end'></div>");
|
|
3308
3290
|
var D = t.templates.event_class(r.start_date, r.end_date, r);
|
|
3309
3291
|
D && (E += " " + D);
|
|
3310
|
-
var x = r.color ? "--dhx-scheduler-event-background:" + r.color + ";" : "", S = r.textColor ? "--dhx-scheduler-event-text:" + r.textColor + ";" : "", N = ["position:absolute", "top:" + u + "px", "left:" +
|
|
3292
|
+
var x = r.color ? "--dhx-scheduler-event-background:" + r.color + ";" : "", S = r.textColor ? "--dhx-scheduler-event-text:" + r.textColor + ";" : "", N = ["position:absolute", "top:" + u + "px", "left:" + v + "px", "width:" + (m - v - (k ? 1 : 0)) + "px", "height:" + (this.xy.bar_height - 2) + "px", S, x, r._text_style || ""].join(";"), M = "<div event_id='" + r.id + "' " + this.config.event_attribute + "='" + r.id + "' class='" + E + "' style='" + N + "'" + this._waiAria.eventBarAttrString(r) + ">";
|
|
3311
3293
|
f && (M += l), t.getState().mode == "month" && (r = t.getEvent(r.id)), r._timed && (M += `<span class='dhx_cal_event_clear_date'>${t.templates.event_bar_date(r.start_date, r.end_date, r)}</span>`), M += "<div class='dhx_cal_event_line_content'>", M += t.templates.event_bar_text(r.start_date, r.end_date, r) + "</div>", M += "</div>", M += "</div>", g.innerHTML = M, this._rendered.push(g.firstChild), s.appendChild(g.firstChild);
|
|
3312
3294
|
}
|
|
3313
3295
|
}, t._locate_event = function(r) {
|
|
@@ -3326,8 +3308,8 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3326
3308
|
}, t.getEvents = function(r, s) {
|
|
3327
3309
|
var c = [];
|
|
3328
3310
|
for (var u in this._events) {
|
|
3329
|
-
var
|
|
3330
|
-
|
|
3311
|
+
var v = this._events[u];
|
|
3312
|
+
v && (!r && !s || v.start_date < s && v.end_date > r) && c.push(v);
|
|
3331
3313
|
}
|
|
3332
3314
|
return c;
|
|
3333
3315
|
}, t.getRenderedEvent = function(r) {
|
|
@@ -3345,10 +3327,10 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3345
3327
|
if (s = s || t._mode, c && (!this.checkEvent("onBeforeEventDisplay") || this.callEvent("onBeforeEventDisplay", [c, s]))) {
|
|
3346
3328
|
var u = t.config.scroll_hour;
|
|
3347
3329
|
t.config.scroll_hour = c.start_date.getHours();
|
|
3348
|
-
var
|
|
3330
|
+
var v = t.config.preserve_scroll;
|
|
3349
3331
|
t.config.preserve_scroll = !1;
|
|
3350
|
-
var
|
|
3351
|
-
if (t.config.highlight_displayed_event && (c.color = t.config.displayed_event_color, c.textColor = t.config.displayed_event_text_color), t.setCurrentView(new Date(c.start_date), s), t.config.scroll_hour = u, t.config.preserve_scroll =
|
|
3332
|
+
var m = c.color, l = c.textColor;
|
|
3333
|
+
if (t.config.highlight_displayed_event && (c.color = t.config.displayed_event_color, c.textColor = t.config.displayed_event_text_color), t.setCurrentView(new Date(c.start_date), s), t.config.scroll_hour = u, t.config.preserve_scroll = v, t.matrix && t.matrix[s]) {
|
|
3352
3334
|
var f = t.getView(), g = f.y_property, p = t.getEvent(c.id);
|
|
3353
3335
|
if (p) {
|
|
3354
3336
|
if (!y) {
|
|
@@ -3367,7 +3349,7 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3367
3349
|
t.callEvent("onAfterEventDisplay", [c, s]);
|
|
3368
3350
|
}
|
|
3369
3351
|
function D() {
|
|
3370
|
-
c.color =
|
|
3352
|
+
c.color = m, c.textColor = l;
|
|
3371
3353
|
}
|
|
3372
3354
|
};
|
|
3373
3355
|
}(h), function(t) {
|
|
@@ -3395,13 +3377,13 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3395
3377
|
;
|
|
3396
3378
|
if (u === c.length)
|
|
3397
3379
|
return null;
|
|
3398
|
-
var
|
|
3380
|
+
var v = c[u];
|
|
3399
3381
|
t._lightbox || t.getLightbox();
|
|
3400
|
-
var
|
|
3401
|
-
return t.form_blocks[
|
|
3382
|
+
var m = t._lightbox.querySelector(`#${v.id}`), l = m.nextSibling, f = { section: v, header: m, node: l, getValue: function(p) {
|
|
3383
|
+
return t.form_blocks[v.type].get_value(l, p || {}, v);
|
|
3402
3384
|
}, setValue: function(p, y) {
|
|
3403
|
-
return t.form_blocks[
|
|
3404
|
-
} }, g = t._lightbox_controls["get_" +
|
|
3385
|
+
return t.form_blocks[v.type].set_value(l, p, y || {}, v);
|
|
3386
|
+
} }, g = t._lightbox_controls["get_" + v.type + "_control"];
|
|
3405
3387
|
return g ? g(f) : f;
|
|
3406
3388
|
}, t._lightbox_controls.get_template_control = function(s) {
|
|
3407
3389
|
return s.control = s.node, s;
|
|
@@ -3413,7 +3395,7 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3413
3395
|
return s.control = s.node.getElementsByTagName("select"), s;
|
|
3414
3396
|
}, t._lightbox_controls.defaults = { template: { height: 30 }, textarea: { height: 200 }, select: { height: 23 }, time: { height: 20 } }, t.form_blocks = { template: { render: function(s) {
|
|
3415
3397
|
return "<div class='dhx_cal_ltext dhx_cal_template' ></div>";
|
|
3416
|
-
}, set_value: function(s, c, u,
|
|
3398
|
+
}, set_value: function(s, c, u, v) {
|
|
3417
3399
|
s.innerHTML = c || "";
|
|
3418
3400
|
}, get_value: function(s, c, u) {
|
|
3419
3401
|
return s.innerHTML || "";
|
|
@@ -3433,9 +3415,9 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3433
3415
|
for (var c = "<div class='dhx_cal_ltext dhx_cal_select'><select style='width:100%;'>", u = 0; u < s.options.length; u++)
|
|
3434
3416
|
c += "<option value='" + s.options[u].key + "'>" + s.options[u].label + "</option>";
|
|
3435
3417
|
return c + "</select></div>";
|
|
3436
|
-
}, set_value: function(s, c, u,
|
|
3437
|
-
var
|
|
3438
|
-
!
|
|
3418
|
+
}, set_value: function(s, c, u, v) {
|
|
3419
|
+
var m = s.firstChild;
|
|
3420
|
+
!m._dhx_onchange && v.onchange && (t.event(m, "change", v.onchange), m._dhx_onchange = !0), c === void 0 && (c = (m.options[0] || {}).value), m.value = c || "";
|
|
3439
3421
|
}, get_value: function(s, c) {
|
|
3440
3422
|
return s.firstChild.value;
|
|
3441
3423
|
}, focus: function(s) {
|
|
@@ -3443,8 +3425,8 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3443
3425
|
t._focus(c, !0);
|
|
3444
3426
|
} }, time: { render: function(s) {
|
|
3445
3427
|
s.time_format || (s.time_format = ["%H:%i", "%d", "%m", "%Y"]), s._time_format_order = {};
|
|
3446
|
-
var c = s.time_format, u = t.config,
|
|
3447
|
-
t.config.limit_time_select && (
|
|
3428
|
+
var c = s.time_format, u = t.config, v = t.date.date_part(t._currentDate()), m = 1440, l = 0;
|
|
3429
|
+
t.config.limit_time_select && (m = 60 * u.last_hour + 1, l = 60 * u.first_hour, v.setHours(u.first_hour));
|
|
3448
3430
|
for (var f = "", g = 0; g < c.length; g++) {
|
|
3449
3431
|
var p = c[g];
|
|
3450
3432
|
g > 0 && (f += " ");
|
|
@@ -3454,7 +3436,7 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3454
3436
|
var b, k, E;
|
|
3455
3437
|
y = "dhx_lightbox_year_select", s._time_format_order[3] = g, s.year_range && (isNaN(s.year_range) ? s.year_range.push && (k = s.year_range[0], E = s.year_range[1]) : b = s.year_range), b = b || 10;
|
|
3456
3438
|
var D = D || Math.floor(b / 2);
|
|
3457
|
-
k = k ||
|
|
3439
|
+
k = k || v.getFullYear() - D, E = E || k + b;
|
|
3458
3440
|
for (var x = k; x < E; x++)
|
|
3459
3441
|
w += "<option value='" + x + "'>" + x + "</option>";
|
|
3460
3442
|
break;
|
|
@@ -3468,9 +3450,9 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3468
3450
|
break;
|
|
3469
3451
|
case "%H:%i":
|
|
3470
3452
|
y = "dhx_lightbox_time_select", s._time_format_order[0] = g, x = l;
|
|
3471
|
-
var S =
|
|
3472
|
-
for (s._time_values = []; x <
|
|
3473
|
-
w += "<option value='" + x + "'>" + this.templates.time_picker(
|
|
3453
|
+
var S = v.getDate();
|
|
3454
|
+
for (s._time_values = []; x < m; )
|
|
3455
|
+
w += "<option value='" + x + "'>" + this.templates.time_picker(v) + "</option>", s._time_values.push(x), v.setTime(v.valueOf() + 60 * this.config.time_step * 1e3), x = 24 * (v.getDate() != S ? 1 : 0) * 60 + 60 * v.getHours() + v.getMinutes();
|
|
3474
3456
|
}
|
|
3475
3457
|
if (w) {
|
|
3476
3458
|
var N = t._waiAria.lightboxSelectAttrString(p);
|
|
@@ -3478,8 +3460,8 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3478
3460
|
}
|
|
3479
3461
|
}
|
|
3480
3462
|
return "<div class='dhx_section_time'>" + f + "<span style='font-weight:normal; font-size:10pt;' class='dhx_section_time_spacer'> – </span>" + f + "</div>";
|
|
3481
|
-
}, set_value: function(s, c, u,
|
|
3482
|
-
var
|
|
3463
|
+
}, set_value: function(s, c, u, v) {
|
|
3464
|
+
var m, l, f = t.config, g = s.getElementsByTagName("select"), p = v._time_format_order;
|
|
3483
3465
|
if (f.full_day) {
|
|
3484
3466
|
if (!s._full_day) {
|
|
3485
3467
|
var y = "<label class='dhx_fullday'><input type='checkbox' name='full_day' value='true'> " + t.locale.labels.full_day + " </label></input>";
|
|
@@ -3489,19 +3471,19 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3489
3471
|
w.checked = t.date.time_part(u.start_date) === 0 && t.date.time_part(u.end_date) === 0, g[p[0]].disabled = w.checked, g[p[0] + g.length / 2].disabled = w.checked, w.$_eventAttached || (w.$_eventAttached = !0, t.event(w, "click", function() {
|
|
3490
3472
|
if (w.checked) {
|
|
3491
3473
|
var D = {};
|
|
3492
|
-
t.form_blocks.time.get_value(s, D,
|
|
3474
|
+
t.form_blocks.time.get_value(s, D, v), m = t.date.date_part(D.start_date), (+(l = t.date.date_part(D.end_date)) == +m || +l >= +m && (u.end_date.getHours() !== 0 || u.end_date.getMinutes() !== 0)) && (l = t.date.add(l, 1, "day"));
|
|
3493
3475
|
} else
|
|
3494
|
-
|
|
3495
|
-
g[p[0]].disabled = w.checked, g[p[0] + g.length / 2].disabled = w.checked, E(g, 0,
|
|
3476
|
+
m = null, l = null;
|
|
3477
|
+
g[p[0]].disabled = w.checked, g[p[0] + g.length / 2].disabled = w.checked, E(g, 0, m || u.start_date), E(g, 4, l || u.end_date);
|
|
3496
3478
|
}));
|
|
3497
3479
|
}
|
|
3498
3480
|
if (f.auto_end_date && f.event_duration)
|
|
3499
3481
|
for (var b = function() {
|
|
3500
|
-
f.auto_end_date && f.event_duration && (
|
|
3482
|
+
f.auto_end_date && f.event_duration && (m = new Date(g[p[3]].value, g[p[2]].value, g[p[1]].value, 0, g[p[0]].value), l = new Date(m.getTime() + 60 * t.config.event_duration * 1e3), E(g, 4, l));
|
|
3501
3483
|
}, k = 0; k < 4; k++)
|
|
3502
3484
|
g[k].$_eventAttached || (g[k].$_eventAttached = !0, t.event(g[k], "change", b));
|
|
3503
3485
|
function E(D, x, S) {
|
|
3504
|
-
for (var N =
|
|
3486
|
+
for (var N = v._time_values, M = 60 * S.getHours() + S.getMinutes(), A = M, C = !1, T = 0; T < N.length; T++) {
|
|
3505
3487
|
var O = N[T];
|
|
3506
3488
|
if (O === M) {
|
|
3507
3489
|
C = !0;
|
|
@@ -3513,8 +3495,8 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3513
3495
|
}
|
|
3514
3496
|
E(g, 0, u.start_date), E(g, 4, u.end_date);
|
|
3515
3497
|
}, get_value: function(s, c, u) {
|
|
3516
|
-
var
|
|
3517
|
-
if (c.start_date = new Date(m[
|
|
3498
|
+
var v = s.getElementsByTagName("select"), m = u._time_format_order;
|
|
3499
|
+
if (c.start_date = new Date(v[m[3]].value, v[m[2]].value, v[m[1]].value, 0, v[m[0]].value), c.end_date = new Date(v[m[3] + 4].value, v[m[2] + 4].value, v[m[1] + 4].value, 0, v[m[0] + 4].value), !v[m[3]].value || !v[m[3] + 4].value) {
|
|
3518
3500
|
var l = t.getEvent(t._lightbox_id);
|
|
3519
3501
|
l && (c.start_date = l.start_date, c.end_date = l.end_date);
|
|
3520
3502
|
}
|
|
@@ -3534,16 +3516,16 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3534
3516
|
} else
|
|
3535
3517
|
this._new_event && (this._new_event = null);
|
|
3536
3518
|
}, t._fill_lightbox = function(s, c) {
|
|
3537
|
-
var u = this.getEvent(s),
|
|
3519
|
+
var u = this.getEvent(s), v = c.getElementsByTagName("span"), m = [];
|
|
3538
3520
|
if (t.templates.lightbox_header) {
|
|
3539
|
-
|
|
3521
|
+
m.push("");
|
|
3540
3522
|
var l = t.templates.lightbox_header(u.start_date, u.end_date, u);
|
|
3541
|
-
|
|
3523
|
+
m.push(l), v[1].innerHTML = "", v[2].innerHTML = l;
|
|
3542
3524
|
} else {
|
|
3543
3525
|
var f = this.templates.event_header(u.start_date, u.end_date, u), g = (this.templates.event_bar_text(u.start_date, u.end_date, u) || "").substr(0, 70);
|
|
3544
|
-
|
|
3526
|
+
m.push(f), m.push(g), v[1].innerHTML = f, v[2].innerHTML = g;
|
|
3545
3527
|
}
|
|
3546
|
-
this._waiAria.lightboxHeader(c,
|
|
3528
|
+
this._waiAria.lightboxHeader(c, m.join(" "));
|
|
3547
3529
|
for (var p = this.config.lightbox.sections, y = 0; y < p.length; y++) {
|
|
3548
3530
|
var w = p[y], b = t._get_lightbox_section_node(w), k = this.form_blocks[w.type], E = u[w.map_to] !== void 0 ? u[w.map_to] : w.default_value;
|
|
3549
3531
|
k.set_value.call(this, b, E, u, w), p[y].focus && k.focus.call(this, b);
|
|
@@ -3553,10 +3535,10 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3553
3535
|
return t._lightbox.querySelector(`#${s.id}`).nextSibling;
|
|
3554
3536
|
}, t._lightbox_out = function(s) {
|
|
3555
3537
|
for (var c = this.config.lightbox.sections, u = 0; u < c.length; u++) {
|
|
3556
|
-
var
|
|
3557
|
-
|
|
3558
|
-
var
|
|
3559
|
-
c[u].map_to != "auto" && (s[c[u].map_to] =
|
|
3538
|
+
var v = t._lightbox.querySelector(`#${c[u].id}`);
|
|
3539
|
+
v = v && v.nextSibling;
|
|
3540
|
+
var m = this.form_blocks[c[u].type].get_value.call(this, v, s, c[u]);
|
|
3541
|
+
c[u].map_to != "auto" && (s[c[u].map_to] = m);
|
|
3560
3542
|
}
|
|
3561
3543
|
return s;
|
|
3562
3544
|
}, t._empty_lightbox = function(s) {
|
|
@@ -3598,8 +3580,8 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3598
3580
|
}
|
|
3599
3581
|
return;
|
|
3600
3582
|
}
|
|
3601
|
-
const
|
|
3602
|
-
switch (
|
|
3583
|
+
const v = u ? u.getAttribute("data-action") : null;
|
|
3584
|
+
switch (v) {
|
|
3603
3585
|
case "dhx_save_btn":
|
|
3604
3586
|
case "save":
|
|
3605
3587
|
if (t.config.readonly_active)
|
|
@@ -3610,8 +3592,8 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3610
3592
|
case "delete":
|
|
3611
3593
|
if (t.config.readonly_active)
|
|
3612
3594
|
return;
|
|
3613
|
-
var
|
|
3614
|
-
t._dhtmlx_confirm({ message:
|
|
3595
|
+
var m = t.locale.labels.confirm_deleting;
|
|
3596
|
+
t._dhtmlx_confirm({ message: m, title: t.locale.labels.title_confirm_deleting, callback: function() {
|
|
3615
3597
|
t.deleteEvent(t._lightbox_id), t._new_event = null, t.hide_lightbox();
|
|
3616
3598
|
}, config: { ok: t.locale.labels.icon_delete } });
|
|
3617
3599
|
break;
|
|
@@ -3620,21 +3602,21 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3620
3602
|
t.cancel_lightbox();
|
|
3621
3603
|
break;
|
|
3622
3604
|
default:
|
|
3623
|
-
t.callEvent("onLightboxButton", [
|
|
3605
|
+
t.callEvent("onLightboxButton", [v, u, c]);
|
|
3624
3606
|
}
|
|
3625
3607
|
}), t.event(s, "keydown", function(c) {
|
|
3626
|
-
var u = c || window.event,
|
|
3627
|
-
switch (
|
|
3608
|
+
var u = c || window.event, v = c.target || c.srcElement, m = v.querySelector("[dhx_button]");
|
|
3609
|
+
switch (m || (m = v.parentNode.querySelector(".dhx_custom_button, .dhx_readonly")), (c || u).keyCode) {
|
|
3628
3610
|
case 32:
|
|
3629
3611
|
if ((c || u).shiftKey)
|
|
3630
3612
|
return;
|
|
3631
|
-
|
|
3613
|
+
m && m.click && m.click();
|
|
3632
3614
|
break;
|
|
3633
3615
|
case t.keys.edit_save:
|
|
3634
3616
|
if ((c || u).shiftKey)
|
|
3635
3617
|
return;
|
|
3636
|
-
if (
|
|
3637
|
-
|
|
3618
|
+
if (m && m.click)
|
|
3619
|
+
m.click();
|
|
3638
3620
|
else {
|
|
3639
3621
|
if (t.config.readonly_active)
|
|
3640
3622
|
return;
|
|
@@ -3666,49 +3648,49 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3666
3648
|
s.className = "dhx_cal_light", t.config.wide_form && (s.className += " dhx_cal_light_wide"), t.form_blocks.recurring && (s.className += " dhx_cal_light_rec"), t.config.rtl && (s.className += " dhx_cal_light_rtl"), t.config.responsive_lightbox && (s.className += " dhx_cal_light_responsive"), s.style.visibility = "hidden";
|
|
3667
3649
|
var c = this._lightbox_template, u = this.config.buttons_left;
|
|
3668
3650
|
c += "<div class='dhx_cal_lcontrols'>";
|
|
3669
|
-
for (var
|
|
3670
|
-
c += "<div " +
|
|
3651
|
+
for (var v = 0; v < u.length; v++)
|
|
3652
|
+
c += "<div " + this._waiAria.lightboxButtonAttrString(u[v]) + " data-action='" + u[v] + "' class='dhx_btn_set dhx_" + (t.config.rtl ? "right" : "left") + "_btn_set " + u[v] + "_set'><div class='dhx_btn_inner " + u[v] + "'></div><div>" + t.locale.labels[u[v]] + "</div></div>";
|
|
3671
3653
|
u = this.config.buttons_right;
|
|
3672
|
-
var
|
|
3654
|
+
var m = t.config.rtl;
|
|
3673
3655
|
for (v = 0; v < u.length; v++)
|
|
3674
|
-
|
|
3675
|
-
c += "</div>", c += "</div>", s.innerHTML = c, t.config.drag_lightbox && (t.event(s.firstChild, "mousedown", t._ready_to_dnd), t.event(s.firstChild, "selectstart", function(
|
|
3676
|
-
return
|
|
3656
|
+
c += "<div class='dhx_cal_lcontrols_push_right'></div>", c += "<div " + this._waiAria.lightboxButtonAttrString(u[v]) + " data-action='" + u[v] + "' class='dhx_btn_set dhx_" + (m ? "left" : "right") + "_btn_set " + u[v] + "_set'><div class='dhx_btn_inner " + u[v] + "'></div><div>" + t.locale.labels[u[v]] + "</div></div>";
|
|
3657
|
+
c += "</div>", c += "</div>", s.innerHTML = c, t.config.drag_lightbox && (t.event(s.firstChild, "mousedown", t._ready_to_dnd), t.event(s.firstChild, "selectstart", function(b) {
|
|
3658
|
+
return b.preventDefault(), !1;
|
|
3677
3659
|
}), s.firstChild.style.cursor = "move", t._init_dnd_events()), this._waiAria.lightboxAttr(s), this.show_cover(), this._cover.insertBefore(s, this._cover.firstChild), this._lightbox = s;
|
|
3678
|
-
var
|
|
3679
|
-
for (c = "", v = 0; v <
|
|
3680
|
-
var
|
|
3681
|
-
if (
|
|
3682
|
-
|
|
3683
|
-
var
|
|
3684
|
-
|
|
3685
|
-
var
|
|
3686
|
-
typeof
|
|
3660
|
+
var l = this.config.lightbox.sections;
|
|
3661
|
+
for (c = "", v = 0; v < l.length; v++) {
|
|
3662
|
+
var f = this.form_blocks[l[v].type];
|
|
3663
|
+
if (f) {
|
|
3664
|
+
l[v].id = "area_" + this.uid();
|
|
3665
|
+
var g = "";
|
|
3666
|
+
l[v].button && (g = "<div " + t._waiAria.lightboxSectionButtonAttrString(this.locale.labels["button_" + l[v].button]) + " class='dhx_custom_button' data-section-index='" + v + "' index='" + v + "'><div class='dhx_custom_button_" + l[v].button + "'></div><div>" + this.locale.labels["button_" + l[v].button] + "</div></div>"), this.config.wide_form && (c += "<div class='dhx_wrap_section'>");
|
|
3667
|
+
var p = this.locale.labels["section_" + l[v].name];
|
|
3668
|
+
typeof p != "string" && (p = l[v].name), c += "<div id='" + l[v].id + "' class='dhx_cal_lsection'>" + g + "<label>" + p + "</label></div>" + f.render.call(this, l[v]), c += "</div>";
|
|
3687
3669
|
}
|
|
3688
3670
|
}
|
|
3689
|
-
var
|
|
3690
|
-
for (v = 0; v <
|
|
3691
|
-
var
|
|
3692
|
-
if (t._getClassName(
|
|
3693
|
-
|
|
3671
|
+
var y = s.getElementsByTagName("div");
|
|
3672
|
+
for (v = 0; v < y.length; v++) {
|
|
3673
|
+
var w = y[v];
|
|
3674
|
+
if (t._getClassName(w) == "dhx_cal_larea") {
|
|
3675
|
+
w.innerHTML = c;
|
|
3694
3676
|
break;
|
|
3695
3677
|
}
|
|
3696
3678
|
}
|
|
3697
|
-
t._bindLightboxLabels(
|
|
3679
|
+
t._bindLightboxLabels(l), this.setLightboxSize(), this._init_lightbox_events(this), s.style.visibility = "visible";
|
|
3698
3680
|
}
|
|
3699
3681
|
return this._lightbox;
|
|
3700
3682
|
}, t._bindLightboxLabels = function(s) {
|
|
3701
3683
|
for (var c = 0; c < s.length; c++) {
|
|
3702
3684
|
var u = s[c];
|
|
3703
3685
|
if (u.id && t._lightbox.querySelector(`#${u.id}`)) {
|
|
3704
|
-
for (var
|
|
3705
|
-
|
|
3686
|
+
for (var v = t._lightbox.querySelector(`#${u.id}`).querySelector("label"), m = t._get_lightbox_section_node(u); m && !m.querySelector; )
|
|
3687
|
+
m = m.nextSibling;
|
|
3706
3688
|
var l = !0;
|
|
3707
|
-
if (
|
|
3708
|
-
var f =
|
|
3709
|
-
f && (u.inputId = f.id || "input_" + t.uid(), f.id || (f.id = u.inputId),
|
|
3689
|
+
if (m) {
|
|
3690
|
+
var f = m.querySelector("input, select, textarea");
|
|
3691
|
+
f && (u.inputId = f.id || "input_" + t.uid(), f.id || (f.id = u.inputId), v.setAttribute("for", u.inputId), l = !1);
|
|
3710
3692
|
}
|
|
3711
|
-
l && t.form_blocks[u.type].focus && t.event(
|
|
3693
|
+
l && t.form_blocks[u.type].focus && t.event(v, "click", function(g) {
|
|
3712
3694
|
return function() {
|
|
3713
3695
|
var p = t.form_blocks[g.type], y = t._get_lightbox_section_node(g);
|
|
3714
3696
|
p && p.focus && p.focus.call(t, y);
|
|
@@ -3756,14 +3738,14 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3756
3738
|
i.error("Method " + t + " does not exist on jQuery.dhx_scheduler");
|
|
3757
3739
|
}), function(t) {
|
|
3758
3740
|
(function() {
|
|
3759
|
-
var r = t.setCurrentView, s = t.updateView, c = null, u = null,
|
|
3741
|
+
var r = t.setCurrentView, s = t.updateView, c = null, u = null, v = function(f, g) {
|
|
3760
3742
|
var p = this;
|
|
3761
3743
|
B.clearTimeout(u), B.clearTimeout(c);
|
|
3762
3744
|
var y = p._date, w = p._mode;
|
|
3763
3745
|
l(this, f, g), u = setTimeout(function() {
|
|
3764
3746
|
t.$destroyed || (p.callEvent("onBeforeViewChange", [w, y, g || p._mode, f || p._date]) ? (s.call(p, f, g), p.callEvent("onViewChange", [p._mode, p._date]), B.clearTimeout(c), u = 0) : l(p, y, w));
|
|
3765
3747
|
}, t.config.delay_render);
|
|
3766
|
-
},
|
|
3748
|
+
}, m = function(f, g) {
|
|
3767
3749
|
var p = this, y = arguments;
|
|
3768
3750
|
l(this, f, g), B.clearTimeout(c), c = setTimeout(function() {
|
|
3769
3751
|
t.$destroyed || u || s.apply(p, y);
|
|
@@ -3773,7 +3755,7 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3773
3755
|
g && (f._date = g), p && (f._mode = p);
|
|
3774
3756
|
}
|
|
3775
3757
|
t.attachEvent("onSchedulerReady", function() {
|
|
3776
|
-
t.config.delay_render ? (t.setCurrentView =
|
|
3758
|
+
t.config.delay_render ? (t.setCurrentView = v, t.updateView = m) : (t.setCurrentView = r, t.updateView = s);
|
|
3777
3759
|
});
|
|
3778
3760
|
})();
|
|
3779
3761
|
}(h), function(t) {
|
|
@@ -3814,19 +3796,19 @@ https://docs.dhtmlx.com/scheduler/minicalendar.html`);
|
|
|
3814
3796
|
const o = {};
|
|
3815
3797
|
return h.plugins = function(t) {
|
|
3816
3798
|
(function(s, c, u) {
|
|
3817
|
-
const
|
|
3818
|
-
for (const
|
|
3819
|
-
if (s[
|
|
3820
|
-
const l =
|
|
3799
|
+
const v = [];
|
|
3800
|
+
for (const m in s)
|
|
3801
|
+
if (s[m]) {
|
|
3802
|
+
const l = m.toLowerCase();
|
|
3821
3803
|
c[l] && c[l].forEach(function(f) {
|
|
3822
3804
|
const g = f.toLowerCase();
|
|
3823
|
-
s[g] ||
|
|
3824
|
-
}),
|
|
3805
|
+
s[g] || v.push(g);
|
|
3806
|
+
}), v.push(l);
|
|
3825
3807
|
}
|
|
3826
|
-
return
|
|
3827
|
-
const f = u[
|
|
3808
|
+
return v.sort(function(m, l) {
|
|
3809
|
+
const f = u[m] || 0, g = u[l] || 0;
|
|
3828
3810
|
return f > g ? 1 : f < g ? -1 : 0;
|
|
3829
|
-
}),
|
|
3811
|
+
}), v;
|
|
3830
3812
|
})(t, { treetimeline: ["timeline"], daytimeline: ["timeline"], outerdrag: ["legacy"] }, { legacy: 1, limit: 1, timeline: 2, daytimeline: 3, treetimeline: 3, outerdrag: 6 }).forEach(function(s) {
|
|
3831
3813
|
if (!o[s]) {
|
|
3832
3814
|
const c = e.getExtension(s);
|
|
@@ -4020,12 +4002,12 @@ function st(e) {
|
|
|
4020
4002
|
var s = new e.$keyboardNavigation.Event(t);
|
|
4021
4003
|
e.getState().lightbox_id || function(c) {
|
|
4022
4004
|
if (e.config.key_nav && a.isEnabled()) {
|
|
4023
|
-
var u = c,
|
|
4024
|
-
if (!
|
|
4025
|
-
var
|
|
4026
|
-
(
|
|
4005
|
+
var u = c, v = new e.$keyboardNavigation.Event(u.eventId);
|
|
4006
|
+
if (!v.isValid()) {
|
|
4007
|
+
var m = v.start || u.start, l = v.end || u.end, f = v.section || u.section;
|
|
4008
|
+
(v = new e.$keyboardNavigation.TimeSlot(m, l, f)).isValid() || (v = new e.$keyboardNavigation.TimeSlot());
|
|
4027
4009
|
}
|
|
4028
|
-
a.setActiveNode(
|
|
4010
|
+
a.setActiveNode(v);
|
|
4029
4011
|
var g = a.getActiveNode();
|
|
4030
4012
|
g && g.getNode && document.activeElement != g.getNode() && a.focusNode(a.getActiveNode());
|
|
4031
4013
|
}
|
|
@@ -4191,14 +4173,14 @@ const lt = { active_links: function(e) {
|
|
|
4191
4173
|
for (var _, o = "<div class='dhx_agenda_area' " + e._waiAria.agendaDataAttrString() + ">", t = 0; t < n.length; t++) {
|
|
4192
4174
|
var r = n[t], s = r.color ? "--dhx-scheduler-event-background:" + r.color + ";" : "", c = r.textColor ? "--dhx-scheduler-event-color:" + r.textColor + ";" : "", u = e.templates.event_class(r.start_date, r.end_date, r);
|
|
4193
4175
|
_ = e._waiAria.agendaEventAttrString(r);
|
|
4194
|
-
var
|
|
4195
|
-
o += "<div " + _ + " class='dhx_agenda_line" + (u ? " " + u : "") + "' event_id='" + r.id + "' " + e.config.event_attribute + "='" + r.id + "' style='" + c + s + (r._text_style || "") + "'><div class='dhx_agenda_event_time'>" + (e.config.rtl ? e.templates.agenda_time(r.end_date, r.start_date, r) : e.templates.agenda_time(r.start_date, r.end_date, r)) + "</div>", o += `<div ${
|
|
4176
|
+
var v = e._waiAria.agendaDetailsBtnString();
|
|
4177
|
+
o += "<div " + _ + " class='dhx_agenda_line" + (u ? " " + u : "") + "' event_id='" + r.id + "' " + e.config.event_attribute + "='" + r.id + "' style='" + c + s + (r._text_style || "") + "'><div class='dhx_agenda_event_time'>" + (e.config.rtl ? e.templates.agenda_time(r.end_date, r.start_date, r) : e.templates.agenda_time(r.start_date, r.end_date, r)) + "</div>", o += `<div ${v} class='dhx_event_icon icon_details'><svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
4196
4178
|
<path d="M15.4444 16.4H4.55556V7.6H15.4444V16.4ZM13.1111 2V3.6H6.88889V2H5.33333V3.6H4.55556C3.69222 3.6 3 4.312 3 5.2V16.4C3 16.8243 3.16389 17.2313 3.45561 17.5314C3.74733 17.8314 4.143 18 4.55556 18H15.4444C15.857 18 16.2527 17.8314 16.5444 17.5314C16.8361 17.2313 17 16.8243 17 16.4V5.2C17 4.312 16.3 3.6 15.4444 3.6H14.6667V2H13.1111ZM13.8889 10.8H10V14.8H13.8889V10.8Z" fill="#A1A4A6"/>
|
|
4197
4179
|
</svg></div>`, o += "<span>" + e.templates.agenda_text(r.start_date, r.end_date, r) + "</span></div>";
|
|
4198
4180
|
}
|
|
4199
4181
|
o += "<div class='dhx_v_border'></div></div>", e._els.dhx_cal_data[0].innerHTML = o, e._els.dhx_cal_data[0].childNodes[0].scrollTop = e._agendaScrollTop || 0;
|
|
4200
|
-
var
|
|
4201
|
-
|
|
4182
|
+
var m = e._els.dhx_cal_data[0].childNodes[0];
|
|
4183
|
+
m.childNodes[m.childNodes.length - 1].style.height = m.offsetHeight < e._els.dhx_cal_data[0].offsetHeight ? "100%" : m.offsetHeight + "px";
|
|
4202
4184
|
var l = e._els.dhx_cal_data[0].firstChild.childNodes, f = e._getNavDateElement();
|
|
4203
4185
|
for (f && (f.innerHTML = e.templates.agenda_date(e._min_date, e._max_date, e._mode)), e._rendered = [], t = 0; t < l.length - 1; t++)
|
|
4204
4186
|
e._rendered[t] = l[t];
|
|
@@ -4249,24 +4231,24 @@ const lt = { active_links: function(e) {
|
|
|
4249
4231
|
var _ = e.render_view_data;
|
|
4250
4232
|
function o() {
|
|
4251
4233
|
const r = e.get_visible_events();
|
|
4252
|
-
r.sort(function(
|
|
4253
|
-
return
|
|
4234
|
+
r.sort(function(m, l) {
|
|
4235
|
+
return m.start_date > l.start_date ? 1 : -1;
|
|
4254
4236
|
});
|
|
4255
4237
|
const s = {};
|
|
4256
4238
|
let c = e.getState().min_date;
|
|
4257
4239
|
const u = e.getState().max_date;
|
|
4258
4240
|
for (; c.valueOf() < u.valueOf(); )
|
|
4259
4241
|
s[c.valueOf()] = [], c = e.date.add(c, 1, "day");
|
|
4260
|
-
let
|
|
4261
|
-
if (r.forEach((
|
|
4262
|
-
let l = e.date.day_start(new Date(
|
|
4263
|
-
for (; l.valueOf() <
|
|
4264
|
-
s[l.valueOf()] && (s[l.valueOf()].push(
|
|
4265
|
-
}),
|
|
4266
|
-
let
|
|
4242
|
+
let v = !1;
|
|
4243
|
+
if (r.forEach((m) => {
|
|
4244
|
+
let l = e.date.day_start(new Date(m.start_date));
|
|
4245
|
+
for (; l.valueOf() < m.end_date.valueOf(); )
|
|
4246
|
+
s[l.valueOf()] && (s[l.valueOf()].push(m), v = !0), l = e.date.day_start(e.date.add(l, 1, "day"));
|
|
4247
|
+
}), v) {
|
|
4248
|
+
let m = "";
|
|
4267
4249
|
for (let l in s)
|
|
4268
|
-
|
|
4269
|
-
e._els.dhx_cal_data[0].innerHTML =
|
|
4250
|
+
m += t(new Date(1 * l), s[l]);
|
|
4251
|
+
e._els.dhx_cal_data[0].innerHTML = m;
|
|
4270
4252
|
} else
|
|
4271
4253
|
e._els.dhx_cal_data[0].innerHTML = `<div class="dhx_cal_agenda_no_events">${e.locale.labels.agenda_tab}</div>`;
|
|
4272
4254
|
e._els.dhx_cal_data[0].scrollTop = i;
|
|
@@ -4280,9 +4262,9 @@ const lt = { active_links: function(e) {
|
|
|
4280
4262
|
<div class="dhx_cal_agenda_day_events">
|
|
4281
4263
|
`;
|
|
4282
4264
|
return s.forEach((u) => {
|
|
4283
|
-
c += function(
|
|
4284
|
-
const l = e.templates.agenda_time(
|
|
4285
|
-
return `<div class="dhx_cal_agenda_event_line ${g || ""} ${
|
|
4265
|
+
c += function(v, m) {
|
|
4266
|
+
const l = e.templates.agenda_time(m.start_date, m.end_date, m), f = e.getState().select_id, g = e.templates.event_class(m.start_date, m.end_date, m), p = e.templates.agenda_text(m.start_date, m.end_date, m);
|
|
4267
|
+
return `<div class="dhx_cal_agenda_event_line ${g || ""} ${m.id == f ? "dhx_cal_agenda_event_line_selected" : ""}" ${e.config.event_attribute}="${m.id}">
|
|
4286
4268
|
<div class="dhx_cal_agenda_event_line_marker"></div>
|
|
4287
4269
|
<div class="dhx_cal_agenda_event_line_time">${l}</div>
|
|
4288
4270
|
<div class="dhx_cal_agenda_event_line_text">${p}</div>
|
|
@@ -4319,20 +4301,20 @@ const lt = { active_links: function(e) {
|
|
|
4319
4301
|
s._virtual ? c._first_chunk = !1 : c._first_chunk = !0, c._drag_resize = !1, c._virtual = !0, c.start_date = new Date(c.start_date), l(s) ? (c.end_date = f(c.start_date), this.config.last_hour != 24 && (c.end_date = g(c.start_date, this.config.last_hour))) : c.end_date = new Date(s.end_date);
|
|
4320
4302
|
var u = !1;
|
|
4321
4303
|
c.start_date < this._max_date && c.end_date > this._min_date && c.start_date < c.end_date && (o[r] = c, u = !0);
|
|
4322
|
-
var
|
|
4323
|
-
if (
|
|
4304
|
+
var v = this._safe_copy(s);
|
|
4305
|
+
if (v._virtual = !0, v.end_date = new Date(v.end_date), v.start_date < this._min_date ? v.start_date = g(this._min_date, this.config.first_hour) : v.start_date = g(f(s.start_date), this.config.first_hour), v.start_date < this._max_date && v.start_date < v.end_date) {
|
|
4324
4306
|
if (!u) {
|
|
4325
|
-
o[r--] =
|
|
4307
|
+
o[r--] = v;
|
|
4326
4308
|
continue;
|
|
4327
4309
|
}
|
|
4328
|
-
o.splice(r + 1, 0,
|
|
4310
|
+
o.splice(r + 1, 0, v), v._last_chunk = !1;
|
|
4329
4311
|
} else
|
|
4330
4312
|
c._last_chunk = !0, c._drag_resize = !0;
|
|
4331
4313
|
} else
|
|
4332
4314
|
this._mode != "month" && o.splice(r--, 1);
|
|
4333
4315
|
}
|
|
4334
|
-
var
|
|
4335
|
-
return d.call(this, o,
|
|
4316
|
+
var m = this._drag_mode != "move" && t;
|
|
4317
|
+
return d.call(this, o, m);
|
|
4336
4318
|
function l(p) {
|
|
4337
4319
|
var y = f(p.start_date);
|
|
4338
4320
|
return +p.end_date > +y;
|
|
@@ -4408,8 +4390,8 @@ const lt = { active_links: function(e) {
|
|
|
4408
4390
|
}
|
|
4409
4391
|
}
|
|
4410
4392
|
}
|
|
4411
|
-
var
|
|
4412
|
-
if (
|
|
4393
|
+
var v = e._get_section_view(), m = e._get_section_property(), l = !0;
|
|
4394
|
+
if (v) {
|
|
4413
4395
|
var f = 0;
|
|
4414
4396
|
for (c = 0; c < n.length; c++)
|
|
4415
4397
|
n[c].id != d.id && this._check_sections_collision(n[c], d) && f++;
|
|
@@ -4418,7 +4400,7 @@ const lt = { active_links: function(e) {
|
|
|
4418
4400
|
n.length >= _ && (l = !1);
|
|
4419
4401
|
if (!l) {
|
|
4420
4402
|
var g = !e.callEvent("onEventCollision", [d, n]);
|
|
4421
|
-
return g || (d[
|
|
4403
|
+
return g || (d[m] = h || d[m]), g;
|
|
4422
4404
|
}
|
|
4423
4405
|
return l;
|
|
4424
4406
|
};
|
|
@@ -4428,32 +4410,32 @@ const lt = { active_links: function(e) {
|
|
|
4428
4410
|
e._pre_render_events = function(s, c) {
|
|
4429
4411
|
if (!e.config.container_autoresize || !a)
|
|
4430
4412
|
return h.apply(this, arguments);
|
|
4431
|
-
var u = this.xy.bar_height,
|
|
4413
|
+
var u = this.xy.bar_height, v = this._colsS.heights, m = this._colsS.heights = [0, 0, 0, 0, 0, 0, 0], l = this._els.dhx_cal_data[0];
|
|
4432
4414
|
if (s = this._table_view ? this._pre_render_events_table(s, c) : this._pre_render_events_line(s, c), this._table_view)
|
|
4433
4415
|
if (c)
|
|
4434
|
-
this._colsS.heights =
|
|
4416
|
+
this._colsS.heights = v;
|
|
4435
4417
|
else {
|
|
4436
4418
|
var f = l.firstChild;
|
|
4437
4419
|
const E = f.querySelectorAll(".dhx_cal_month_row");
|
|
4438
4420
|
if (E) {
|
|
4439
4421
|
for (var g = 0; g < E.length; g++) {
|
|
4440
|
-
if (
|
|
4422
|
+
if (m[g]++, m[g] * u > this._colsS.height - this.xy.month_head_height) {
|
|
4441
4423
|
var p = E[g].querySelectorAll(".dhx_cal_month_cell"), y = this._colsS.height - this.xy.month_head_height;
|
|
4442
|
-
1 * this.config.max_month_events !== this.config.max_month_events ||
|
|
4424
|
+
1 * this.config.max_month_events !== this.config.max_month_events || m[g] <= this.config.max_month_events ? y = m[g] * u : (this.config.max_month_events + 1) * u > this._colsS.height - this.xy.month_head_height && (y = (this.config.max_month_events + 1) * u), E[g].style.height = y + this.xy.month_head_height + "px";
|
|
4443
4425
|
for (var w = 0; w < p.length; w++)
|
|
4444
4426
|
p[w].childNodes[1].style.height = y + "px";
|
|
4445
|
-
|
|
4427
|
+
m[g] = (m[g - 1] || 0) + p[0].offsetHeight;
|
|
4446
4428
|
}
|
|
4447
|
-
|
|
4429
|
+
m[g] = (m[g - 1] || 0) + E[g].querySelectorAll(".dhx_cal_month_cell")[0].offsetHeight;
|
|
4448
4430
|
}
|
|
4449
|
-
|
|
4450
|
-
} else if (s.length || this._els.dhx_multi_day[0].style.visibility != "visible" || (
|
|
4451
|
-
var b = (
|
|
4431
|
+
m.unshift(0), f.parentNode.offsetHeight < f.parentNode.scrollHeight && f._h_fix;
|
|
4432
|
+
} else if (s.length || this._els.dhx_multi_day[0].style.visibility != "visible" || (m[0] = -1), s.length || m[0] == -1) {
|
|
4433
|
+
var b = (m[0] + 1) * u + 1;
|
|
4452
4434
|
d != b + 1 && (this._obj.style.height = i - d + b - 1 + "px"), b += "px";
|
|
4453
4435
|
const D = this._els.dhx_cal_navline[0].offsetHeight, x = this._els.dhx_cal_header[0].offsetHeight;
|
|
4454
4436
|
l.style.height = this._obj.offsetHeight - D - x - (this.xy.margin_top || 0) + "px";
|
|
4455
4437
|
var k = this._els.dhx_multi_day[0];
|
|
4456
|
-
k.style.height = b, k.style.visibility =
|
|
4438
|
+
k.style.height = b, k.style.visibility = m[0] == -1 ? "hidden" : "visible", (k = this._els.dhx_multi_day[1]).style.height = b, k.style.visibility = m[0] == -1 ? "hidden" : "visible", k.style.visibility == "hidden" ? k.style.display = "none" : k.style.display = "", k.className = m[0] ? "dhx_multi_day_icon" : "dhx_multi_day_icon_small", this._dy_shift = (m[0] + 1) * u, m[0] = 0;
|
|
4457
4439
|
}
|
|
4458
4440
|
}
|
|
4459
4441
|
return s;
|
|
@@ -4461,68 +4443,68 @@ const lt = { active_links: function(e) {
|
|
|
4461
4443
|
var n = ["dhx_cal_navline", "dhx_cal_header", "dhx_multi_day", "dhx_cal_data"], _ = function(s) {
|
|
4462
4444
|
i = 0;
|
|
4463
4445
|
for (var c = 0; c < n.length; c++) {
|
|
4464
|
-
var u = n[c],
|
|
4446
|
+
var u = n[c], v = e._els[u] ? e._els[u][0] : null, m = 0;
|
|
4465
4447
|
switch (u) {
|
|
4466
4448
|
case "dhx_cal_navline":
|
|
4467
4449
|
case "dhx_cal_header":
|
|
4468
|
-
|
|
4450
|
+
m = v.offsetHeight;
|
|
4469
4451
|
break;
|
|
4470
4452
|
case "dhx_multi_day":
|
|
4471
|
-
|
|
4453
|
+
m = v ? v.offsetHeight - 1 : 0, d = m;
|
|
4472
4454
|
break;
|
|
4473
4455
|
case "dhx_cal_data":
|
|
4474
4456
|
var l = e.getState().mode;
|
|
4475
|
-
if (
|
|
4457
|
+
if (v.childNodes[1] && l != "month") {
|
|
4476
4458
|
let M = 0;
|
|
4477
|
-
for (let A = 0; A <
|
|
4478
|
-
|
|
4479
|
-
|
|
4459
|
+
for (let A = 0; A < v.childNodes.length; A++)
|
|
4460
|
+
v.childNodes[A].offsetHeight > M && (M = v.childNodes[A].offsetHeight);
|
|
4461
|
+
m = M;
|
|
4480
4462
|
} else
|
|
4481
|
-
|
|
4463
|
+
m = Math.max(v.offsetHeight - 1, v.scrollHeight);
|
|
4482
4464
|
if (l == "month")
|
|
4483
|
-
e.config.month_day_min_height && !s && (
|
|
4465
|
+
e.config.month_day_min_height && !s && (m = v.querySelectorAll(".dhx_cal_month_row").length * e.config.month_day_min_height), s && (v.style.height = m + "px");
|
|
4484
4466
|
else if (l == "year")
|
|
4485
|
-
|
|
4467
|
+
m = 190 * e.config.year_y;
|
|
4486
4468
|
else if (l == "agenda") {
|
|
4487
|
-
if (
|
|
4488
|
-
for (var f = 0; f <
|
|
4489
|
-
|
|
4490
|
-
|
|
4469
|
+
if (m = 0, v.childNodes && v.childNodes.length)
|
|
4470
|
+
for (var f = 0; f < v.childNodes.length; f++)
|
|
4471
|
+
m += v.childNodes[f].offsetHeight;
|
|
4472
|
+
m + 2 < e.config.min_grid_size ? m = e.config.min_grid_size : m += 2;
|
|
4491
4473
|
} else if (l == "week_agenda") {
|
|
4492
|
-
for (var g, p, y = e.xy.week_agenda_scale_height + e.config.min_grid_size, w = 0; w <
|
|
4493
|
-
for (p =
|
|
4474
|
+
for (var g, p, y = e.xy.week_agenda_scale_height + e.config.min_grid_size, w = 0; w < v.childNodes.length; w++)
|
|
4475
|
+
for (p = v.childNodes[w], f = 0; f < p.childNodes.length; f++) {
|
|
4494
4476
|
for (var b = 0, k = p.childNodes[f].childNodes[1], E = 0; E < k.childNodes.length; E++)
|
|
4495
4477
|
b += k.childNodes[E].offsetHeight;
|
|
4496
4478
|
g = b + e.xy.week_agenda_scale_height, (g = w != 1 || f != 2 && f != 3 ? g : 2 * g) > y && (y = g);
|
|
4497
4479
|
}
|
|
4498
|
-
|
|
4480
|
+
m = 3 * y;
|
|
4499
4481
|
} else if (l == "map") {
|
|
4500
|
-
|
|
4501
|
-
var D =
|
|
4482
|
+
m = 0;
|
|
4483
|
+
var D = v.querySelectorAll(".dhx_map_line");
|
|
4502
4484
|
for (f = 0; f < D.length; f++)
|
|
4503
|
-
|
|
4504
|
-
|
|
4485
|
+
m += D[f].offsetHeight;
|
|
4486
|
+
m + 2 < e.config.min_map_size ? m = e.config.min_map_size : m += 2;
|
|
4505
4487
|
} else if (e._gridView)
|
|
4506
|
-
if (
|
|
4507
|
-
for (D =
|
|
4508
|
-
|
|
4509
|
-
(
|
|
4488
|
+
if (m = 0, v.childNodes[1].childNodes[0].childNodes && v.childNodes[1].childNodes[0].childNodes.length) {
|
|
4489
|
+
for (D = v.childNodes[1].childNodes[0].childNodes[0].childNodes, f = 0; f < D.length; f++)
|
|
4490
|
+
m += D[f].offsetHeight;
|
|
4491
|
+
(m += 2) < e.config.min_grid_size && (m = e.config.min_grid_size);
|
|
4510
4492
|
} else
|
|
4511
|
-
|
|
4493
|
+
m = e.config.min_grid_size;
|
|
4512
4494
|
if (e.matrix && e.matrix[l]) {
|
|
4513
4495
|
if (s)
|
|
4514
|
-
|
|
4496
|
+
m += 0, v.style.height = m + "px";
|
|
4515
4497
|
else {
|
|
4516
|
-
|
|
4498
|
+
m = 0;
|
|
4517
4499
|
for (var x = e.matrix[l], S = x.y_unit, N = 0; N < S.length; N++)
|
|
4518
|
-
|
|
4519
|
-
e.$container.clientWidth != e.$container.scrollWidth && (
|
|
4500
|
+
m += x.getSectionHeight(S[N].key);
|
|
4501
|
+
e.$container.clientWidth != e.$container.scrollWidth && (m += r());
|
|
4520
4502
|
}
|
|
4521
|
-
|
|
4503
|
+
m -= 1;
|
|
4522
4504
|
}
|
|
4523
|
-
(l == "day" || l == "week" || e._props && e._props[l]) && (
|
|
4505
|
+
(l == "day" || l == "week" || e._props && e._props[l]) && (m += 2);
|
|
4524
4506
|
}
|
|
4525
|
-
i +=
|
|
4507
|
+
i += m += 1;
|
|
4526
4508
|
}
|
|
4527
4509
|
e._obj.style.height = i + "px", s || e.updateView();
|
|
4528
4510
|
};
|
|
@@ -4575,13 +4557,13 @@ const lt = { active_links: function(e) {
|
|
|
4575
4557
|
if (a) {
|
|
4576
4558
|
a = !1;
|
|
4577
4559
|
var s = function(u) {
|
|
4578
|
-
var
|
|
4560
|
+
var v = u + "=";
|
|
4579
4561
|
if (document.cookie.length > 0) {
|
|
4580
|
-
var
|
|
4581
|
-
if (
|
|
4582
|
-
|
|
4583
|
-
var l = document.cookie.indexOf(";",
|
|
4584
|
-
return l == -1 && (l = document.cookie.length), document.cookie.substring(
|
|
4562
|
+
var m = document.cookie.indexOf(v);
|
|
4563
|
+
if (m != -1) {
|
|
4564
|
+
m += v.length;
|
|
4565
|
+
var l = document.cookie.indexOf(";", m);
|
|
4566
|
+
return l == -1 && (l = document.cookie.length), document.cookie.substring(m, l);
|
|
4585
4567
|
}
|
|
4586
4568
|
}
|
|
4587
4569
|
return "";
|
|
@@ -4622,14 +4604,14 @@ const lt = { active_links: function(e) {
|
|
|
4622
4604
|
return a += "<div class='" + h.type + "' ></div>";
|
|
4623
4605
|
}, set_value: function(h, a, i, d) {
|
|
4624
4606
|
(function() {
|
|
4625
|
-
|
|
4607
|
+
v();
|
|
4626
4608
|
var u = e.attachEvent("onAfterLightbox", function() {
|
|
4627
|
-
|
|
4609
|
+
v(), e.detachEvent(u);
|
|
4628
4610
|
});
|
|
4629
|
-
function
|
|
4611
|
+
function v() {
|
|
4630
4612
|
if (h._combo && h._combo.DOMParent) {
|
|
4631
|
-
var
|
|
4632
|
-
|
|
4613
|
+
var m = h._combo;
|
|
4614
|
+
m.unload ? m.unload() : m.destructor && m.destructor(), m.DOMParent = m.DOMelem = null;
|
|
4633
4615
|
}
|
|
4634
4616
|
}
|
|
4635
4617
|
})(), window.dhx_globalImgPath = d.image_path || "/", h._combo = new dhtmlXCombo(h, d.name, h.offsetWidth - 8), d.onchange && h._combo.attachEvent("onChange", d.onchange), d.options_height && h._combo.setOptionHeight(d.options_height);
|
|
@@ -4637,13 +4619,13 @@ const lt = { active_links: function(e) {
|
|
|
4637
4619
|
if (n.enableFilteringMode(d.filtering, d.script_path || null, !!d.cache), d.script_path) {
|
|
4638
4620
|
var _ = i[d.map_to];
|
|
4639
4621
|
_ ? d.cached_options[_] ? (n.addOption(_, d.cached_options[_]), n.disable(1), n.selectOption(0), n.disable(0)) : e.ajax.get(d.script_path + "?id=" + _ + "&uid=" + e.uid(), function(u) {
|
|
4640
|
-
var
|
|
4622
|
+
var v, m = u.xmlDoc.responseText;
|
|
4641
4623
|
try {
|
|
4642
|
-
|
|
4624
|
+
v = JSON.parse(m).options[0].text;
|
|
4643
4625
|
} catch {
|
|
4644
|
-
|
|
4626
|
+
v = e.ajax.xpath("//option", u.xmlDoc)[0].childNodes[0].nodeValue;
|
|
4645
4627
|
}
|
|
4646
|
-
d.cached_options[_] =
|
|
4628
|
+
d.cached_options[_] = v, n.addOption(_, v), n.disable(1), n.selectOption(0), n.disable(0);
|
|
4647
4629
|
}) : n.setComboValue("");
|
|
4648
4630
|
} else {
|
|
4649
4631
|
for (var o = [], t = 0; t < d.options.length; t++) {
|
|
@@ -4806,23 +4788,23 @@ const lt = { active_links: function(e) {
|
|
|
4806
4788
|
return this._hidden_export_form;
|
|
4807
4789
|
}, i._get_export_size = function(n, _, o, t, r, s, c) {
|
|
4808
4790
|
t = parseInt(t) / 25.4 || 4;
|
|
4809
|
-
var u = { A5: { x: 148, y: 210 }, A4: { x: 210, y: 297 }, A3: { x: 297, y: 420 }, A2: { x: 420, y: 594 }, A1: { x: 594, y: 841 }, A0: { x: 841, y: 1189 } },
|
|
4810
|
-
return
|
|
4791
|
+
var u = { A5: { x: 148, y: 210 }, A4: { x: 210, y: 297 }, A3: { x: 297, y: 420 }, A2: { x: 420, y: 594 }, A1: { x: 594, y: 841 }, A0: { x: 841, y: 1189 } }, v = a("dhx_cal_data", this).x, m = { y: a("dhx_cal_data", this).y + a("dhx_cal_header", this).y + a("dhx_multi_day", this).y };
|
|
4792
|
+
return m.x = n === "full" ? v : Math.floor((_ === "landscape" ? u[n].y : u[n].x) * t), c && (m.x *= parseFloat(c.x) || 1, m.y *= parseFloat(c.y) || 1), m;
|
|
4811
4793
|
}, i._export_html = function(n) {
|
|
4812
4794
|
var _, o, t, r = (_ = void 0, o = void 0, (t = d()) && (o = t.scrollable, _ = t.smart_rendering), { nav_height: i.xy.nav_height, scroll_width: i.xy.scroll_width, style_width: i._obj.style.width, style_height: i._obj.style.height, timeline_scrollable: o, timeline_smart_rendering: _ }), s = i._get_export_size(n.format, n.orientation, n.zoom, n.dpi, n.header, n.footer, n.scales), c = "";
|
|
4813
4795
|
try {
|
|
4814
|
-
(function(u,
|
|
4796
|
+
(function(u, v) {
|
|
4815
4797
|
i._obj.style.width = u.x + "px", i._obj.style.height = u.y + "px", i.xy.nav_height = 0, i.xy.scroll_width = 0;
|
|
4816
|
-
var
|
|
4817
|
-
(
|
|
4798
|
+
var m = d();
|
|
4799
|
+
(v.timeline_scrollable || v.timeline_smart_rendering) && (m.scrollable = !1, m.smart_rendering = !1);
|
|
4818
4800
|
})(s, r), i.setCurrentView(), c = i._obj.innerHTML;
|
|
4819
4801
|
} catch (u) {
|
|
4820
4802
|
console.error(u);
|
|
4821
4803
|
} finally {
|
|
4822
4804
|
(function(u) {
|
|
4823
4805
|
i.xy.scroll_width = u.scroll_width, i.xy.nav_height = u.nav_height, i._obj.style.width = u.style_width, i._obj.style.height = u.style_height;
|
|
4824
|
-
var
|
|
4825
|
-
(u.timeline_scrollable || u.timeline_smart_rendering) && (
|
|
4806
|
+
var v = d();
|
|
4807
|
+
(u.timeline_scrollable || u.timeline_smart_rendering) && (v.scrollable = u.timeline_scrollable, v.smart_rendering = u.timeline_smart_rendering);
|
|
4826
4808
|
})(r), i.setCurrentView();
|
|
4827
4809
|
}
|
|
4828
4810
|
return c;
|
|
@@ -5020,10 +5002,11 @@ const lt = { active_links: function(e) {
|
|
|
5020
5002
|
var u = o[n];
|
|
5021
5003
|
if (!(r < d && s > i))
|
|
5022
5004
|
return t;
|
|
5023
|
-
var
|
|
5024
|
-
a._isRender("cell") && (g = u.offsetTop,
|
|
5025
|
-
var p = Math.max(1, l -
|
|
5026
|
-
|
|
5005
|
+
var v = this.createElement(), m = a._timeline_getX({ start_date: i }, !1, _) - 1, l = a._timeline_getX({ start_date: d }, !1, _) - 1, f = _._section_height[n] - 1 || _.dy - 1, g = 0;
|
|
5006
|
+
a._isRender("cell") && (g = u.offsetTop, m += _.dx, l += _.dx, u = a.$container.querySelector(".dhx_cal_data"));
|
|
5007
|
+
var p = Math.max(1, l - m - 1);
|
|
5008
|
+
let y = "left";
|
|
5009
|
+
return a.config.rtl && (y = "right"), v.style.cssText = `height:${f}px; ${y}:${m}px; width:${p}px; top:${g}px;`, u && (u.appendChild(v), t.push(v)), t;
|
|
5027
5010
|
}, renderMonthCell: function(i) {
|
|
5028
5011
|
for (var d = a.$container.querySelectorAll(".dhx_month_head"), n = [], _ = 0; _ < d.length; _++)
|
|
5029
5012
|
n.push(d[_].parentNode);
|
|
@@ -5032,10 +5015,10 @@ const lt = { active_links: function(e) {
|
|
|
5032
5015
|
s = a.date.add(s, 1, "day");
|
|
5033
5016
|
if (o == -1)
|
|
5034
5017
|
return [];
|
|
5035
|
-
var u = a._colsS[r],
|
|
5036
|
-
|
|
5018
|
+
var u = a._colsS[r], v = a._colsS.heights[t], m = this.createElement();
|
|
5019
|
+
m.style.top = v + "px", m.style.left = u + "px", m.style.width = a._cols[r] + "px", m.style.height = (a._colsS.heights[t + 1] - v || a._colsS.height) + "px";
|
|
5037
5020
|
var l = a.$container.querySelector(".dhx_cal_data"), f = l.querySelector("table");
|
|
5038
|
-
return f.nextSibling ? l.insertBefore(
|
|
5021
|
+
return f.nextSibling ? l.insertBefore(m, f.nextSibling) : l.appendChild(m), m;
|
|
5039
5022
|
}, renderMonthMarker: function(i, d) {
|
|
5040
5023
|
for (var n = [], _ = i; _.valueOf() < d.valueOf(); )
|
|
5041
5024
|
n.push(this.renderMonthCell(_)), _ = a.date.add(_, 1, "day");
|
|
@@ -5052,11 +5035,11 @@ const lt = { active_links: function(e) {
|
|
|
5052
5035
|
}
|
|
5053
5036
|
if (!(t = a.locate_holder(_)) || t.querySelector(".dhx_scale_hour"))
|
|
5054
5037
|
return document.createElement("div");
|
|
5055
|
-
var u = Math.max(60 * i.getHours() + i.getMinutes(), 60 * r.first_hour),
|
|
5056
|
-
if (!
|
|
5038
|
+
var u = Math.max(60 * i.getHours() + i.getMinutes(), 60 * r.first_hour), v = Math.min(60 * d.getHours() + d.getMinutes(), 60 * r.last_hour);
|
|
5039
|
+
if (!v && a.date.day_start(new Date(d)).valueOf() > a.date.day_start(new Date(i)).valueOf() && (v = 60 * r.last_hour), v <= u)
|
|
5057
5040
|
return [];
|
|
5058
|
-
var
|
|
5059
|
-
return
|
|
5041
|
+
var m = this.createElement(), l = a.config.hour_size_px * r.last_hour + 1, f = 36e5;
|
|
5042
|
+
return m.style.top = Math.round((60 * u * 1e3 - a.config.first_hour * f) * a.config.hour_size_px / f) % l + "px", m.style.lineHeight = m.style.height = Math.max(Math.round(60 * (v - u) * 1e3 * a.config.hour_size_px / f) % l, 1) + "px", m.style.width = "100%", t.appendChild(m), o.push(m), o[0];
|
|
5060
5043
|
} };
|
|
5061
5044
|
}(e), function(a) {
|
|
5062
5045
|
a.$keyboardNavigation.SchedulerNode = function() {
|
|
@@ -5711,74 +5694,74 @@ const lt = { active_links: function(e) {
|
|
|
5711
5694
|
clearTimeout(this._timeout), this._timeout = setTimeout(i, d || 1);
|
|
5712
5695
|
} };
|
|
5713
5696
|
}(e), ot(e), function() {
|
|
5714
|
-
st(e), function(
|
|
5715
|
-
|
|
5716
|
-
for (var
|
|
5717
|
-
if (this.isChildOf(
|
|
5697
|
+
st(e), function(o) {
|
|
5698
|
+
o.$keyboardNavigation._minicalendars = [], o.$keyboardNavigation.isMinical = function(t) {
|
|
5699
|
+
for (var r = o.$keyboardNavigation._minicalendars, s = 0; s < r.length; s++)
|
|
5700
|
+
if (this.isChildOf(t, r[s]))
|
|
5718
5701
|
return !0;
|
|
5719
5702
|
return !1;
|
|
5720
|
-
},
|
|
5721
|
-
for (;
|
|
5722
|
-
|
|
5723
|
-
return
|
|
5724
|
-
},
|
|
5725
|
-
var
|
|
5726
|
-
function
|
|
5727
|
-
var m =
|
|
5728
|
-
|
|
5703
|
+
}, o.$keyboardNavigation.isChildOf = function(t, r) {
|
|
5704
|
+
for (; t && t !== r; )
|
|
5705
|
+
t = t.parentNode;
|
|
5706
|
+
return t === r;
|
|
5707
|
+
}, o.$keyboardNavigation.patchMinicalendar = function() {
|
|
5708
|
+
var t = o.$keyboardNavigation.dispatcher;
|
|
5709
|
+
function r(v) {
|
|
5710
|
+
var m = v.target;
|
|
5711
|
+
t.enable(), t.setActiveNode(new o.$keyboardNavigation.MinicalButton(m, 0));
|
|
5729
5712
|
}
|
|
5730
|
-
function
|
|
5731
|
-
var m =
|
|
5732
|
-
if (
|
|
5733
|
-
for (var
|
|
5734
|
-
|
|
5735
|
-
if (
|
|
5736
|
-
for (var
|
|
5737
|
-
if (
|
|
5738
|
-
|
|
5713
|
+
function s(v) {
|
|
5714
|
+
var m = v.target || v.srcElement, l = o.utils.dom.locateCss(v, "dhx_cal_prev_button", !1), f = o.utils.dom.locateCss(v, "dhx_cal_next_button", !1), g = o.utils.dom.locateCss(v, "dhx_year_body", !1), p = 0, y = 0;
|
|
5715
|
+
if (g) {
|
|
5716
|
+
for (var w, b, k = m; k && k.tagName.toLowerCase() != "td"; )
|
|
5717
|
+
k = k.parentNode;
|
|
5718
|
+
if (k && (w = (b = k).parentNode), w && b) {
|
|
5719
|
+
for (var E = w.parentNode.querySelectorAll("tr"), D = 0; D < E.length; D++)
|
|
5720
|
+
if (E[D] == w) {
|
|
5721
|
+
p = D;
|
|
5739
5722
|
break;
|
|
5740
5723
|
}
|
|
5741
|
-
var
|
|
5742
|
-
for (
|
|
5743
|
-
if (D
|
|
5744
|
-
|
|
5724
|
+
var x = w.querySelectorAll("td");
|
|
5725
|
+
for (D = 0; D < x.length; D++)
|
|
5726
|
+
if (x[D] == b) {
|
|
5727
|
+
y = D;
|
|
5745
5728
|
break;
|
|
5746
5729
|
}
|
|
5747
5730
|
}
|
|
5748
5731
|
}
|
|
5749
|
-
var
|
|
5750
|
-
|
|
5751
|
-
var
|
|
5752
|
-
(
|
|
5732
|
+
var S = v.currentTarget;
|
|
5733
|
+
t.delay(function() {
|
|
5734
|
+
var N;
|
|
5735
|
+
(l || f || g) && (l ? (N = new o.$keyboardNavigation.MinicalButton(S, 0), t.setActiveNode(new o.$keyboardNavigation.MinicalButton(S, 0))) : f ? N = new o.$keyboardNavigation.MinicalButton(S, 1) : g && (N = new o.$keyboardNavigation.MinicalCell(S, p, y)), N && (t.enable(), N.isValid() && (t.activeNode = null, t.setActiveNode(N))));
|
|
5753
5736
|
});
|
|
5754
5737
|
}
|
|
5755
|
-
if (
|
|
5756
|
-
var
|
|
5757
|
-
|
|
5758
|
-
var
|
|
5759
|
-
|
|
5760
|
-
for (var
|
|
5761
|
-
if (m[
|
|
5762
|
-
|
|
5738
|
+
if (o.renderCalendar) {
|
|
5739
|
+
var c = o.renderCalendar;
|
|
5740
|
+
o.renderCalendar = function() {
|
|
5741
|
+
var v = c.apply(this, arguments), m = o.$keyboardNavigation._minicalendars;
|
|
5742
|
+
o.eventRemove(v, "click", s), o.event(v, "click", s), o.eventRemove(v, "focus", r), o.event(v, "focus", r);
|
|
5743
|
+
for (var l = !1, f = 0; f < m.length; f++)
|
|
5744
|
+
if (m[f] == v) {
|
|
5745
|
+
l = !0;
|
|
5763
5746
|
break;
|
|
5764
5747
|
}
|
|
5765
|
-
if (
|
|
5766
|
-
var
|
|
5767
|
-
|
|
5748
|
+
if (l || m.push(v), t.isEnabled()) {
|
|
5749
|
+
var g = t.getActiveNode();
|
|
5750
|
+
g && g.container == v ? t.focusNode(g) : v.setAttribute("tabindex", "0");
|
|
5768
5751
|
} else
|
|
5769
|
-
|
|
5770
|
-
return
|
|
5752
|
+
v.setAttribute("tabindex", "0");
|
|
5753
|
+
return v;
|
|
5771
5754
|
};
|
|
5772
5755
|
}
|
|
5773
|
-
if (
|
|
5774
|
-
var
|
|
5775
|
-
|
|
5776
|
-
|
|
5777
|
-
var
|
|
5778
|
-
if (!
|
|
5779
|
-
for (var
|
|
5780
|
-
|
|
5781
|
-
return
|
|
5756
|
+
if (o.destroyCalendar) {
|
|
5757
|
+
var u = o.destroyCalendar;
|
|
5758
|
+
o.destroyCalendar = function(v, m) {
|
|
5759
|
+
v = v || (o._def_count ? o._def_count.firstChild : null);
|
|
5760
|
+
var l = u.apply(this, arguments);
|
|
5761
|
+
if (!v || !v.parentNode)
|
|
5762
|
+
for (var f = o.$keyboardNavigation._minicalendars, g = 0; g < f.length; g++)
|
|
5763
|
+
f[g] == v && (o.eventRemove(f[g], "focus", r), f.splice(g, 1), g--);
|
|
5764
|
+
return l;
|
|
5782
5765
|
};
|
|
5783
5766
|
}
|
|
5784
5767
|
};
|
|
@@ -5792,21 +5775,24 @@ const lt = { active_links: function(e) {
|
|
|
5792
5775
|
});
|
|
5793
5776
|
function d() {
|
|
5794
5777
|
if (e.config.key_nav) {
|
|
5795
|
-
var
|
|
5796
|
-
return !(!
|
|
5778
|
+
var o = document.activeElement;
|
|
5779
|
+
return !(!o || e.utils.dom.locateCss(o, "dhx_cal_quick_info", !1)) && (e.$keyboardNavigation.isChildOf(o, e.$container) || e.$keyboardNavigation.isMinical(o));
|
|
5797
5780
|
}
|
|
5798
5781
|
}
|
|
5799
|
-
function n(
|
|
5800
|
-
|
|
5782
|
+
function n(o) {
|
|
5783
|
+
o && !a.isEnabled() ? a.enable() : !o && a.isEnabled() && a.disable();
|
|
5801
5784
|
}
|
|
5802
|
-
setInterval(function() {
|
|
5785
|
+
const _ = setInterval(function() {
|
|
5803
5786
|
if (e.$container && e.$keyboardNavigation.isChildOf(e.$container, document.body)) {
|
|
5804
|
-
var
|
|
5805
|
-
|
|
5787
|
+
var o = d();
|
|
5788
|
+
o ? n(o) : !o && a.isEnabled() && setTimeout(function() {
|
|
5806
5789
|
e.$destroyed || (e.config.key_nav ? n(d()) : e.$container.removeAttribute("tabindex"));
|
|
5807
5790
|
}, 100);
|
|
5808
5791
|
}
|
|
5809
5792
|
}, 500);
|
|
5793
|
+
e.attachEvent("onDestroy", function() {
|
|
5794
|
+
clearInterval(_);
|
|
5795
|
+
});
|
|
5810
5796
|
}();
|
|
5811
5797
|
}, layer: function(e) {
|
|
5812
5798
|
e.attachEvent("onTemplatesReady", function() {
|
|
@@ -5928,9 +5914,9 @@ const lt = { active_links: function(e) {
|
|
|
5928
5914
|
}, e._render_v_bar = function(a, i, d, n, _, o, t, r, s) {
|
|
5929
5915
|
var c = a.id;
|
|
5930
5916
|
t.indexOf("<div class=") == -1 && (t = e.templates["event_header_" + a.layer] ? e.templates["event_header_" + a.layer](a.start_date, a.end_date, a) : t), r.indexOf("<div class=") == -1 && (r = e.templates["event_text_" + a.layer] ? e.templates["event_text_" + a.layer](a.start_date, a.end_date, a) : r);
|
|
5931
|
-
var u = document.createElement("div"),
|
|
5932
|
-
|
|
5933
|
-
var l = e._border_box_events(), f = n - 2, g = l ? f : n - 4, p = l ? f : n - 6, y = l ? f : n - 14, w = l ? f - 2 : n - 8, b = l ? _ - this.xy.event_header_height : _ - 30 + 1, k = '<div event_id="' + c + '" ' + e.config.event_attribute + '="' + c + '" class="' +
|
|
5917
|
+
var u = document.createElement("div"), v = "dhx_cal_event", m = e.templates["event_class_" + a.layer] ? e.templates["event_class_" + a.layer](a.start_date, a.end_date, a) : e.templates.event_class(a.start_date, a.end_date, a);
|
|
5918
|
+
m && (v = v + " " + m);
|
|
5919
|
+
var l = e._border_box_events(), f = n - 2, g = l ? f : n - 4, p = l ? f : n - 6, y = l ? f : n - 14, w = l ? f - 2 : n - 8, b = l ? _ - this.xy.event_header_height : _ - 30 + 1, k = '<div event_id="' + c + '" ' + e.config.event_attribute + '="' + c + '" class="' + v + '" style="position:absolute; top:' + d + "px; left:" + i + "px; width:" + g + "px; height:" + _ + "px;" + (o || "") + '">';
|
|
5934
5920
|
return k += '<div class="dhx_header" style=" width:' + p + 'px;" > </div>', k += '<div class="dhx_title">' + t + "</div>", k += '<div class="dhx_body" style=" width:' + y + "px; height:" + b + 'px;">' + r + "</div>", k += '<div class="dhx_footer" style=" width:' + w + "px;" + (s ? " margin-top:-1px;" : "") + '" ></div></div>', u.innerHTML = k, u.style.zIndex = 100, u.firstChild;
|
|
5935
5921
|
}, e.render_event_bar = function(a) {
|
|
5936
5922
|
var i = this._els.dhx_cal_data[0], d = this._colsS[a._sday], n = this._colsS[a._eday];
|
|
@@ -5951,21 +5937,21 @@ const lt = { active_links: function(e) {
|
|
|
5951
5937
|
c.style.zIndex = parseInt(c.style.zIndex) + 1;
|
|
5952
5938
|
var u = c.style.zIndex;
|
|
5953
5939
|
r = Math.max(r - 4, e.xy.editor_width), (c = document.createElement("div")).setAttribute("event_id", a.id), c.setAttribute(this.config.event_attribute, a.id), this.set_xy(c, r, t - 20, s, o + 14), c.className = "dhx_cal_editor", c.style.zIndex = u;
|
|
5954
|
-
var
|
|
5955
|
-
this.set_xy(
|
|
5940
|
+
var v = document.createElement("div");
|
|
5941
|
+
this.set_xy(v, r - 6, t - 26), v.style.cssText += ";margin:2px 2px 2px 2px;overflow:hidden;", v.style.zIndex = u, c.appendChild(v), this._els.dhx_cal_data[0].appendChild(c), this._rendered.push(c), v.innerHTML = "<textarea class='dhx_cal_editor'>" + a.text + "</textarea>", this._editor = v.firstChild, this._editor.addEventListener("keypress", function(p) {
|
|
5956
5942
|
if (p.shiftKey)
|
|
5957
5943
|
return !0;
|
|
5958
5944
|
var y = p.keyCode;
|
|
5959
5945
|
y == e.keys.edit_save && e.editStop(!0), y == e.keys.edit_cancel && e.editStop(!1);
|
|
5960
5946
|
}), this._editor.addEventListener("selectstart", function(p) {
|
|
5961
5947
|
return p.cancelBubble = !0, !0;
|
|
5962
|
-
}),
|
|
5948
|
+
}), v.firstChild.focus(), this._els.dhx_cal_data[0].scrollLeft = 0, v.firstChild.select();
|
|
5963
5949
|
}
|
|
5964
5950
|
if (this._select_id == a.id) {
|
|
5965
5951
|
c.style.zIndex = parseInt(c.style.zIndex) + 1;
|
|
5966
|
-
for (var
|
|
5967
|
-
l += "<div class='dhx_menu_icon " +
|
|
5968
|
-
var g = this._render_v_bar(a.id, s - i + 1, o, i, 20 *
|
|
5952
|
+
for (var m = this.config["icons_" + (this._edit_id == a.id ? "edit" : "select")], l = "", f = 0; f < m.length; f++)
|
|
5953
|
+
l += "<div class='dhx_menu_icon " + m[f] + "' title='" + this.locale.labels[m[f]] + "'></div>";
|
|
5954
|
+
var g = this._render_v_bar(a.id, s - i + 1, o, i, 20 * m.length + 26, "", "<div class='dhx_menu_head'></div>", l, !0);
|
|
5969
5955
|
g.style.left = s - i + 1, g.style.zIndex = c.style.zIndex, this._els.dhx_cal_data[0].appendChild(g), this._rendered.push(g);
|
|
5970
5956
|
}
|
|
5971
5957
|
}
|
|
@@ -5979,8 +5965,8 @@ const lt = { active_links: function(e) {
|
|
|
5979
5965
|
e.config.limit_start = null, e.config.limit_end = null, e.config.limit_view = !1, e.config.check_limits = !0, e.config.mark_now = !0, e.config.display_marked_timespans = !0, e.config.overwrite_marked_timespans = !0, e._temp_limit_scope = function() {
|
|
5980
5966
|
var h = null, a = "dhx_time_block", i = "default", d = function(o, t, r) {
|
|
5981
5967
|
var s = typeof o == "object" ? o : { days: o };
|
|
5982
|
-
return s.type = a, s.css = "", t && (r && (s.sections = r), s = function(c, u,
|
|
5983
|
-
return u instanceof Date &&
|
|
5968
|
+
return s.type = a, s.css = "", t && (r && (s.sections = r), s = function(c, u, v) {
|
|
5969
|
+
return u instanceof Date && v instanceof Date ? (c.start_date = u, c.end_date = v) : (c.days = u, c.zones = v), c;
|
|
5984
5970
|
}(s, o, t)), s;
|
|
5985
5971
|
};
|
|
5986
5972
|
e.blockTime = function(o, t, r) {
|
|
@@ -5990,9 +5976,9 @@ const lt = { active_links: function(e) {
|
|
|
5990
5976
|
var s = d(o, t = t || "fullday", r);
|
|
5991
5977
|
return e.deleteMarkedTimespan(s);
|
|
5992
5978
|
}, e.attachEvent("onBeforeViewChange", function(o, t, r, s) {
|
|
5993
|
-
function c(u,
|
|
5994
|
-
var
|
|
5995
|
-
return u.valueOf() > l.valueOf() || f <=
|
|
5979
|
+
function c(u, v) {
|
|
5980
|
+
var m = e.config.limit_start, l = e.config.limit_end, f = e.date.add(u, 1, v);
|
|
5981
|
+
return u.valueOf() > l.valueOf() || f <= m.valueOf();
|
|
5996
5982
|
}
|
|
5997
5983
|
return !e.config.limit_view || !c(s = s || t, r = r || o) || t.valueOf() == s.valueOf() || (setTimeout(function() {
|
|
5998
5984
|
if (e.$destroyed)
|
|
@@ -6002,8 +5988,8 @@ const lt = { active_links: function(e) {
|
|
|
6002
5988
|
}, 1), !1);
|
|
6003
5989
|
}), e.checkInMarkedTimespan = function(o, t, r) {
|
|
6004
5990
|
t = t || i;
|
|
6005
|
-
for (var s = !0, c = new Date(o.start_date.valueOf()), u = e.date.add(c, 1, "day"),
|
|
6006
|
-
var
|
|
5991
|
+
for (var s = !0, c = new Date(o.start_date.valueOf()), u = e.date.add(c, 1, "day"), v = e._marked_timespans; c < o.end_date; c = e.date.date_part(u), u = e.date.add(c, 1, "day")) {
|
|
5992
|
+
var m = +e.date.date_part(new Date(c)), l = _(o, v, c.getDay(), m, t);
|
|
6007
5993
|
if (l)
|
|
6008
5994
|
for (var f = 0; f < l.length; f += 2) {
|
|
6009
5995
|
var g = e._get_zone_minutes(c), p = o.end_date > u || o.end_date.getDate() != c.getDate() ? 1440 : e._get_zone_minutes(o.end_date), y = l[f], w = l[f + 1];
|
|
@@ -6019,37 +6005,37 @@ const lt = { active_links: function(e) {
|
|
|
6019
6005
|
var t = e, r = t.config, s = [];
|
|
6020
6006
|
if (o.rec_type)
|
|
6021
6007
|
for (var c = e.getRecDates(o), u = 0; u < c.length; u++) {
|
|
6022
|
-
var
|
|
6023
|
-
e._lame_copy(
|
|
6008
|
+
var v = e._copy_event(o);
|
|
6009
|
+
e._lame_copy(v, c[u]), s.push(v);
|
|
6024
6010
|
}
|
|
6025
6011
|
else
|
|
6026
6012
|
s = [o];
|
|
6027
|
-
for (var
|
|
6013
|
+
for (var m = !0, l = 0; l < s.length; l++) {
|
|
6028
6014
|
var f = !0;
|
|
6029
|
-
(
|
|
6015
|
+
(v = s[l])._timed = e.isOneDayEvent(v), (f = !r.limit_start || !r.limit_end || v.start_date.valueOf() >= r.limit_start.valueOf() && v.end_date.valueOf() <= r.limit_end.valueOf()) && (f = !e.checkInMarkedTimespan(v, a, function(g, p, y, w, b) {
|
|
6030
6016
|
var k = !0;
|
|
6031
6017
|
return p <= b && p >= w && ((b == 1440 || y <= b) && (k = !1), g._timed && t._drag_id && t._drag_mode == "new-size" ? (g.start_date.setHours(0), g.start_date.setMinutes(b)) : k = !1), (y >= w && y <= b || p < w && y > b) && (g._timed && t._drag_id && t._drag_mode == "new-size" ? (g.end_date.setHours(0), g.end_date.setMinutes(w)) : k = !1), k;
|
|
6032
|
-
})), f || (f = t.checkEvent("onLimitViolation") ? t.callEvent("onLimitViolation", [
|
|
6018
|
+
})), f || (f = t.checkEvent("onLimitViolation") ? t.callEvent("onLimitViolation", [v.id, v]) : f), m = m && f;
|
|
6033
6019
|
}
|
|
6034
|
-
return
|
|
6020
|
+
return m || (t._drag_id = null, t._drag_mode = null), m;
|
|
6035
6021
|
};
|
|
6036
6022
|
function _(o, t, r, s, c) {
|
|
6037
|
-
var u = e,
|
|
6038
|
-
for (var l in
|
|
6039
|
-
var f =
|
|
6023
|
+
var u = e, v = [], m = { _props: "map_to", matrix: "y_property" };
|
|
6024
|
+
for (var l in m) {
|
|
6025
|
+
var f = m[l];
|
|
6040
6026
|
if (u[l])
|
|
6041
6027
|
for (var g in u[l]) {
|
|
6042
6028
|
var p = u[l][g][f];
|
|
6043
|
-
o[p] && (
|
|
6029
|
+
o[p] && (v = u._add_timespan_zones(v, e._get_blocked_zones(t[g], o[p], r, s, c)));
|
|
6044
6030
|
}
|
|
6045
6031
|
}
|
|
6046
|
-
return
|
|
6032
|
+
return v = u._add_timespan_zones(v, e._get_blocked_zones(t, "global", r, s, c));
|
|
6047
6033
|
}
|
|
6048
6034
|
e._get_blocked_zones = function(o, t, r, s, c) {
|
|
6049
6035
|
var u = [];
|
|
6050
6036
|
if (o && o[t])
|
|
6051
|
-
for (var
|
|
6052
|
-
u = this._add_timespan_zones(u,
|
|
6037
|
+
for (var v = o[t], m = this._get_relevant_blocked_zones(r, s, v, c), l = 0; l < m.length; l++)
|
|
6038
|
+
u = this._add_timespan_zones(u, m[l].zones);
|
|
6053
6039
|
return u;
|
|
6054
6040
|
}, e._get_relevant_blocked_zones = function(o, t, r, s) {
|
|
6055
6041
|
var c;
|
|
@@ -6105,6 +6091,8 @@ const lt = { active_links: function(e) {
|
|
|
6105
6091
|
e._mark_now_timer = window.setInterval(function() {
|
|
6106
6092
|
e._is_initialized() && e._mark_now();
|
|
6107
6093
|
}, 6e4);
|
|
6094
|
+
}), e.attachEvent("onDestroy", function() {
|
|
6095
|
+
clearInterval(e._mark_now_timer);
|
|
6108
6096
|
}), e._mark_now = function(o) {
|
|
6109
6097
|
var t = "dhx_now_time";
|
|
6110
6098
|
this._els[t] || (this._els[t] = []);
|
|
@@ -6117,9 +6105,9 @@ const lt = { active_links: function(e) {
|
|
|
6117
6105
|
var r = "dhx_now_time", s = e._get_zone_minutes(t), c = { zones: [s, s + 1], css: r, type: r };
|
|
6118
6106
|
if (!this._table_view) {
|
|
6119
6107
|
if (this._props && this._props[this._mode]) {
|
|
6120
|
-
var u,
|
|
6121
|
-
|
|
6122
|
-
for (var f = [], g = u; g <
|
|
6108
|
+
var u, v, m = this._props[this._mode], l = m.size || m.options.length;
|
|
6109
|
+
m.days > 1 ? (m.size && m.options.length && (o = (m.position + o) / m.options.length * m.size), u = o, v = o + l) : v = (u = 0) + l;
|
|
6110
|
+
for (var f = [], g = u; g < v; g++) {
|
|
6123
6111
|
var p = g;
|
|
6124
6112
|
c.days = p;
|
|
6125
6113
|
var y = e._render_marked_timespan(c, null, p)[0];
|
|
@@ -6151,13 +6139,13 @@ const lt = { active_links: function(e) {
|
|
|
6151
6139
|
if (!o || !(o.start_date && o.end_date && o.end_date > o.start_date || o.days !== void 0 && o.zones) && !o.type)
|
|
6152
6140
|
return t;
|
|
6153
6141
|
o.zones == "fullday" && (o.zones = [0, 1440]), o.zones && o.invert_zones && (o.zones = e.invertZones(o.zones)), o.id = e.uid(), o.css = o.css || "", o.type = o.type || i;
|
|
6154
|
-
var
|
|
6155
|
-
if (
|
|
6156
|
-
for (var
|
|
6157
|
-
if (
|
|
6158
|
-
var l = m
|
|
6142
|
+
var v = o.sections;
|
|
6143
|
+
if (v) {
|
|
6144
|
+
for (var m in v)
|
|
6145
|
+
if (v.hasOwnProperty(m)) {
|
|
6146
|
+
var l = v[m];
|
|
6159
6147
|
for (l instanceof Array || (l = [l]), c = 0; c < l.length; c++)
|
|
6160
|
-
(k = e._lame_copy({}, o)).sections = {}, k.sections[
|
|
6148
|
+
(k = e._lame_copy({}, o)).sections = {}, k.sections[m] = l[c], r.push(k);
|
|
6161
6149
|
}
|
|
6162
6150
|
} else
|
|
6163
6151
|
r.push(o);
|
|
@@ -6177,8 +6165,8 @@ const lt = { active_links: function(e) {
|
|
|
6177
6165
|
}, e._get_dates_by_index = function(o, t, r) {
|
|
6178
6166
|
var s = [];
|
|
6179
6167
|
t = e.date.date_part(new Date(t || e._min_date)), r = new Date(r || e._max_date);
|
|
6180
|
-
for (var c = t.getDay(), u = o - c >= 0 ? o - c : 7 - t.getDay() + o,
|
|
6181
|
-
s.push(
|
|
6168
|
+
for (var c = t.getDay(), u = o - c >= 0 ? o - c : 7 - t.getDay() + o, v = e.date.add(t, u, "day"); v < r; v = e.date.add(v, 1, "week"))
|
|
6169
|
+
s.push(v);
|
|
6182
6170
|
return s;
|
|
6183
6171
|
}, e._get_css_classes_by_config = function(o) {
|
|
6184
6172
|
var t = [];
|
|
@@ -6187,7 +6175,7 @@ const lt = { active_links: function(e) {
|
|
|
6187
6175
|
var t = document.createElement("div");
|
|
6188
6176
|
return o.html && (typeof o.html == "string" ? t.innerHTML = o.html : t.appendChild(o.html)), t;
|
|
6189
6177
|
}, e._render_marked_timespan = function(o, t, r) {
|
|
6190
|
-
var s = [], c = e.config, u = this._min_date,
|
|
6178
|
+
var s = [], c = e.config, u = this._min_date, v = this._max_date, m = !1;
|
|
6191
6179
|
if (!c.display_marked_timespans)
|
|
6192
6180
|
return s;
|
|
6193
6181
|
if (!r && r !== 0) {
|
|
@@ -6195,7 +6183,7 @@ const lt = { active_links: function(e) {
|
|
|
6195
6183
|
r = o.days;
|
|
6196
6184
|
else {
|
|
6197
6185
|
var l = new Date(o.days);
|
|
6198
|
-
if (
|
|
6186
|
+
if (m = +l, !(+v > +l && +u <= +l))
|
|
6199
6187
|
return s;
|
|
6200
6188
|
r = l.getDay();
|
|
6201
6189
|
}
|
|
@@ -6208,7 +6196,7 @@ const lt = { active_links: function(e) {
|
|
|
6208
6196
|
if (t)
|
|
6209
6197
|
y.push(t), w.push(r);
|
|
6210
6198
|
else {
|
|
6211
|
-
w =
|
|
6199
|
+
w = m ? [m] : e._get_dates_by_index(r);
|
|
6212
6200
|
for (var b = 0; b < w.length; b++)
|
|
6213
6201
|
y.push(this._scales[w[b]]);
|
|
6214
6202
|
}
|
|
@@ -6259,8 +6247,8 @@ const lt = { active_links: function(e) {
|
|
|
6259
6247
|
else {
|
|
6260
6248
|
s = new Date(e._min_date);
|
|
6261
6249
|
for (var c = 0, u = o.childNodes.length; c < u; c++) {
|
|
6262
|
-
var
|
|
6263
|
-
|
|
6250
|
+
var v = o.childNodes[c];
|
|
6251
|
+
v.firstChild && e._getClassName(v.firstChild).indexOf("dhx_scale_hour") > -1 || (t.push.apply(t, e._on_scale_add_marker(v, s)), s = e.date.add(s, 1, "day"));
|
|
6264
6252
|
}
|
|
6265
6253
|
}
|
|
6266
6254
|
return t;
|
|
@@ -6280,18 +6268,18 @@ const lt = { active_links: function(e) {
|
|
|
6280
6268
|
}, e._addMarkerTimespanConfig = function(o) {
|
|
6281
6269
|
var t = "global", r = e._marked_timespans, s = o.id, c = e._marked_timespans_ids;
|
|
6282
6270
|
c[s] || (c[s] = []);
|
|
6283
|
-
var u = o.days,
|
|
6284
|
-
if (o.id = s,
|
|
6285
|
-
for (var l in
|
|
6286
|
-
if (
|
|
6271
|
+
var u = o.days, v = o.sections, m = o.type;
|
|
6272
|
+
if (o.id = s, v) {
|
|
6273
|
+
for (var l in v)
|
|
6274
|
+
if (v.hasOwnProperty(l)) {
|
|
6287
6275
|
r[l] || (r[l] = {});
|
|
6288
|
-
var f =
|
|
6289
|
-
g[f] || (g[f] = {}), g[f][u] || (g[f][u] = {}), g[f][u][
|
|
6290
|
-
var p = g[f][u][
|
|
6276
|
+
var f = v[l], g = r[l];
|
|
6277
|
+
g[f] || (g[f] = {}), g[f][u] || (g[f][u] = {}), g[f][u][m] || (g[f][u][m] = [], e._marked_timespans_types || (e._marked_timespans_types = {}), e._marked_timespans_types[m] || (e._marked_timespans_types[m] = !0));
|
|
6278
|
+
var p = g[f][u][m];
|
|
6291
6279
|
o._array = p, p.push(o), c[s].push(o);
|
|
6292
6280
|
}
|
|
6293
6281
|
} else
|
|
6294
|
-
r[t][u] || (r[t][u] = {}), r[t][u][
|
|
6282
|
+
r[t][u] || (r[t][u] = {}), r[t][u][m] || (r[t][u][m] = []), e._marked_timespans_types || (e._marked_timespans_types = {}), e._marked_timespans_types[m] || (e._marked_timespans_types[m] = !0), p = r[t][u][m], o._array = p, p.push(o), c[s].push(o);
|
|
6295
6283
|
}, e._marked_timespans_ids = {}, e.addMarkedTimespan = function(o) {
|
|
6296
6284
|
var t = e._prepare_timespan_options(o);
|
|
6297
6285
|
if (t.length) {
|
|
@@ -6304,27 +6292,27 @@ const lt = { active_links: function(e) {
|
|
|
6304
6292
|
if (t = t.slice(), !r.length)
|
|
6305
6293
|
return t;
|
|
6306
6294
|
for (var s = 0; s < r.length; s += 2)
|
|
6307
|
-
for (var c = r[s], u = r[s + 1],
|
|
6308
|
-
var l = t[
|
|
6295
|
+
for (var c = r[s], u = r[s + 1], v = s + 2 == r.length, m = 0; m < t.length; m += 2) {
|
|
6296
|
+
var l = t[m], f = t[m + 1];
|
|
6309
6297
|
if (f > u && l <= u || l < c && f >= c)
|
|
6310
6298
|
r[s] = Math.min(c, l), r[s + 1] = Math.max(u, f), s -= 2;
|
|
6311
6299
|
else {
|
|
6312
|
-
if (!
|
|
6300
|
+
if (!v)
|
|
6313
6301
|
continue;
|
|
6314
6302
|
var g = c > l ? 0 : 2;
|
|
6315
6303
|
r.splice(s + g, 0, l, f);
|
|
6316
6304
|
}
|
|
6317
|
-
t.splice(
|
|
6305
|
+
t.splice(m--, 2);
|
|
6318
6306
|
break;
|
|
6319
6307
|
}
|
|
6320
6308
|
return r;
|
|
6321
6309
|
}, e._subtract_timespan_zones = function(o, t) {
|
|
6322
6310
|
for (var r = o.slice(), s = 0; s < r.length; s += 2)
|
|
6323
|
-
for (var c = r[s], u = r[s + 1],
|
|
6324
|
-
var
|
|
6325
|
-
if (l > c &&
|
|
6311
|
+
for (var c = r[s], u = r[s + 1], v = 0; v < t.length; v += 2) {
|
|
6312
|
+
var m = t[v], l = t[v + 1];
|
|
6313
|
+
if (l > c && m < u) {
|
|
6326
6314
|
var f = !1;
|
|
6327
|
-
c >=
|
|
6315
|
+
c >= m && u <= l && r.splice(s, 2), c < m && (r.splice(s, 2, c, m), f = !0), u > l && r.splice(f ? s + 2 : s, f ? 0 : 2, l, u), s -= 2;
|
|
6328
6316
|
break;
|
|
6329
6317
|
}
|
|
6330
6318
|
}
|
|
@@ -6344,10 +6332,10 @@ const lt = { active_links: function(e) {
|
|
|
6344
6332
|
}, e._delete_marked_timespan_by_config = function(o) {
|
|
6345
6333
|
var t, r = e._marked_timespans, s = o.sections, c = o.days, u = o.type || i;
|
|
6346
6334
|
if (s) {
|
|
6347
|
-
for (var
|
|
6348
|
-
if (s.hasOwnProperty(
|
|
6349
|
-
var
|
|
6350
|
-
r[
|
|
6335
|
+
for (var v in s)
|
|
6336
|
+
if (s.hasOwnProperty(v) && r[v]) {
|
|
6337
|
+
var m = s[v];
|
|
6338
|
+
r[v][m] && (t = r[v][m]);
|
|
6351
6339
|
}
|
|
6352
6340
|
} else
|
|
6353
6341
|
t = r.global;
|
|
@@ -6368,9 +6356,9 @@ const lt = { active_links: function(e) {
|
|
|
6368
6356
|
s.zones = c;
|
|
6369
6357
|
else {
|
|
6370
6358
|
o.splice(r, 1), r--;
|
|
6371
|
-
for (var u = e._marked_timespans_ids[s.id],
|
|
6372
|
-
if (u[
|
|
6373
|
-
u.splice(
|
|
6359
|
+
for (var u = e._marked_timespans_ids[s.id], v = 0; v < u.length; v++)
|
|
6360
|
+
if (u[v] == s) {
|
|
6361
|
+
u.splice(v, 1);
|
|
6374
6362
|
break;
|
|
6375
6363
|
}
|
|
6376
6364
|
}
|
|
@@ -6387,9 +6375,9 @@ const lt = { active_links: function(e) {
|
|
|
6387
6375
|
for (var r in e._marked_timespans_types)
|
|
6388
6376
|
t.push(r);
|
|
6389
6377
|
for (var s = e._prepare_timespan_options(o), c = 0; c < s.length; c++)
|
|
6390
|
-
for (var u = s[c],
|
|
6391
|
-
var
|
|
6392
|
-
|
|
6378
|
+
for (var u = s[c], v = 0; v < t.length; v++) {
|
|
6379
|
+
var m = e._lame_clone(u);
|
|
6380
|
+
m.type = t[v], e._delete_marked_timespan_by_config(m);
|
|
6393
6381
|
}
|
|
6394
6382
|
}
|
|
6395
6383
|
}, e._get_types_to_render = function(o, t) {
|
|
@@ -6404,7 +6392,7 @@ const lt = { active_links: function(e) {
|
|
|
6404
6392
|
return t;
|
|
6405
6393
|
}, e._on_scale_add_marker = function(o, t) {
|
|
6406
6394
|
if (!e._table_view || e._mode == "month") {
|
|
6407
|
-
var r = t.getDay(), s = t.valueOf(), c = this._mode, u = e._marked_timespans,
|
|
6395
|
+
var r = t.getDay(), s = t.valueOf(), c = this._mode, u = e._marked_timespans, v = [], m = [];
|
|
6408
6396
|
if (this._props && this._props[c]) {
|
|
6409
6397
|
var l = this._props[c], f = l.options, g = f[e._get_unit_index(l, t)];
|
|
6410
6398
|
if (l.days > 1) {
|
|
@@ -6414,18 +6402,18 @@ const lt = { active_links: function(e) {
|
|
|
6414
6402
|
t = e.date.date_part(new Date(this._date));
|
|
6415
6403
|
if (r = t.getDay(), s = t.valueOf(), u[c] && u[c][g.key]) {
|
|
6416
6404
|
var w = u[c][g.key], b = e._get_types_to_render(w[r], w[s]);
|
|
6417
|
-
|
|
6405
|
+
v.push.apply(v, e._get_configs_to_render(b));
|
|
6418
6406
|
}
|
|
6419
6407
|
}
|
|
6420
6408
|
var k = u.global;
|
|
6421
6409
|
if (e.config.overwrite_marked_timespans) {
|
|
6422
6410
|
var E = k[s] || k[r];
|
|
6423
|
-
|
|
6411
|
+
v.push.apply(v, e._get_configs_to_render(E));
|
|
6424
6412
|
} else
|
|
6425
|
-
k[s] &&
|
|
6426
|
-
for (var D = 0; D <
|
|
6427
|
-
|
|
6428
|
-
return
|
|
6413
|
+
k[s] && v.push.apply(v, e._get_configs_to_render(k[s])), k[r] && v.push.apply(v, e._get_configs_to_render(k[r]));
|
|
6414
|
+
for (var D = 0; D < v.length; D++)
|
|
6415
|
+
m.push.apply(m, e._render_marked_timespan(v[D], o, t));
|
|
6416
|
+
return m;
|
|
6429
6417
|
}
|
|
6430
6418
|
}, e.attachEvent("onScaleAdd", function() {
|
|
6431
6419
|
e._on_scale_add_marker.apply(e, arguments);
|
|
@@ -6456,18 +6444,18 @@ const lt = { active_links: function(e) {
|
|
|
6456
6444
|
h.className = "dhx_map", h.id = "dhx_gmap", h.style.display = "none", e._obj.appendChild(h), e._els.dhx_gmap = [], e._els.dhx_gmap.push(h), o("dhx_gmap");
|
|
6457
6445
|
const a = { zoom: e.config.map_initial_zoom || 10, center: e.config.map_initial_position, mapTypeId: e.config.map_type || google.maps.MapTypeId.ROADMAP }, i = new google.maps.Map(document.getElementById("dhx_gmap"), a);
|
|
6458
6446
|
i.disableDefaultUI = !1, i.disableDoubleClickZoom = !e.config.readonly, google.maps.event.addListener(i, "dblclick", function(u) {
|
|
6459
|
-
const
|
|
6447
|
+
const v = e.ext.mapView.geocoder;
|
|
6460
6448
|
if (!e.config.readonly && e.config.dblclick_create) {
|
|
6461
|
-
var
|
|
6462
|
-
|
|
6463
|
-
f == google.maps.GeocoderStatus.OK && (
|
|
6449
|
+
var m = u.latLng;
|
|
6450
|
+
v.geocode({ latLng: m }, function(l, f) {
|
|
6451
|
+
f == google.maps.GeocoderStatus.OK && (m = l[0].geometry.location, e.addEventNow({ lat: m.lat(), lng: m.lng(), event_location: l[0].formatted_address, start_date: e._date, end_date: e.date.add(e._date, e.config.time_step, "minute") }));
|
|
6464
6452
|
});
|
|
6465
6453
|
}
|
|
6466
6454
|
});
|
|
6467
6455
|
var d = { content: "" };
|
|
6468
6456
|
e.config.map_infowindow_max_width && (d.maxWidth = e.config.map_infowindow_max_width), e.map = { _points: [], _markers: [], _infowindow: new google.maps.InfoWindow(d), _infowindows_content: [], _initialization_count: -1, _obj: i }, e.ext.mapView.geocoder = new google.maps.Geocoder(), e.ext.mapView.map = i, e.ext.mapView.points = e.map._points, e.ext.mapView.markers = e.map._markers, e.ext.mapView.infoWindow = e.map._infowindow, e.config.map_resolve_user_location && navigator.geolocation && (e._isMapPositionSet || navigator.geolocation.getCurrentPosition(function(u) {
|
|
6469
|
-
var
|
|
6470
|
-
i.setCenter(
|
|
6457
|
+
var v = new google.maps.LatLng(u.coords.latitude, u.coords.longitude);
|
|
6458
|
+
i.setCenter(v), i.setZoom(e.config.map_zoom_after_resolve || 10), e.map._infowindow.setContent(e.locale.labels.marker_geo_success), e.map._infowindow.position = i.getCenter(), e.map._infowindow.open(i), e._isMapPositionSet = !0;
|
|
6471
6459
|
}, function() {
|
|
6472
6460
|
e.map._infowindow.setContent(e.locale.labels.marker_geo_fail), e.map._infowindow.setPosition(i.getCenter()), e.map._infowindow.open(i), e._isMapPositionSet = !0;
|
|
6473
6461
|
})), google.maps.event.addListener(i, "resize", function(u) {
|
|
@@ -6481,34 +6469,34 @@ const lt = { active_links: function(e) {
|
|
|
6481
6469
|
u.sort(function(E, D) {
|
|
6482
6470
|
return E.start_date.valueOf() == D.start_date.valueOf() ? E.id > D.id ? 1 : -1 : E.start_date > D.start_date ? 1 : -1;
|
|
6483
6471
|
});
|
|
6484
|
-
for (var
|
|
6485
|
-
var l = u[
|
|
6486
|
-
|
|
6472
|
+
for (var v = "<div " + (y = e._waiAria.mapAttrString()) + " class='dhx_map_area'>", m = 0; m < u.length; m++) {
|
|
6473
|
+
var l = u[m], f = l.id == e._selected_event_id ? "dhx_map_line highlight" : "dhx_map_line", g = l.color ? "--dhx-scheduler-event-background:" + l.color + ";" : "", p = l.textColor ? "--dhx-scheduler-event-color:" + l.textColor + ";" : "", y = e._waiAria.mapRowAttrString(l), w = e._waiAria.mapDetailsBtnString();
|
|
6474
|
+
v += "<div " + y + " class='" + f + "' event_id='" + l.id + "' " + e.config.event_attribute + "='" + l.id + "' style='" + g + p + (l._text_style || "") + " width: " + (e.xy.map_date_width + e.xy.map_description_width + 2) + "px;'><div class='dhx_map_event_time' style='width: " + e.xy.map_date_width + "px;' >" + e.templates.map_time(l.start_date, l.end_date, l) + "</div>", v += `<div ${w} class='dhx_event_icon icon_details'><svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
6487
6475
|
<path d="M15.4444 16.4H4.55556V7.6H15.4444V16.4ZM13.1111 2V3.6H6.88889V2H5.33333V3.6H4.55556C3.69222 3.6 3 4.312 3 5.2V16.4C3 16.8243 3.16389 17.2313 3.45561 17.5314C3.74733 17.8314 4.143 18 4.55556 18H15.4444C15.857 18 16.2527 17.8314 16.5444 17.5314C16.8361 17.2313 17 16.8243 17 16.4V5.2C17 4.312 16.3 3.6 15.4444 3.6H14.6667V2H13.1111ZM13.8889 10.8H10V14.8H13.8889V10.8Z" fill="#A1A4A6"/>
|
|
6488
|
-
</svg></div>`,
|
|
6476
|
+
</svg></div>`, v += "<div class='line_description' style='width:" + (e.xy.map_description_width - e.xy.map_icon_width) + "px;'>" + e.templates.map_text(l.start_date, l.end_date, l) + "</div></div>";
|
|
6489
6477
|
}
|
|
6490
|
-
|
|
6478
|
+
v += "<div class='dhx_v_border' style=" + (e.config.rtl ? "'right: " : "'left: ") + (e.xy.map_date_width - 1) + "px;'></div><div class='dhx_v_border_description'></div></div>", e._els.dhx_cal_data[0].scrollTop = 0, e._els.dhx_cal_data[0].innerHTML = v;
|
|
6491
6479
|
var b = e._els.dhx_cal_data[0].firstChild.childNodes, k = e._getNavDateElement();
|
|
6492
|
-
for (k && (k.innerHTML = e.templates[e._mode + "_date"](e._min_date, e._max_date, e._mode)), e._rendered = [],
|
|
6493
|
-
e._rendered[
|
|
6480
|
+
for (k && (k.innerHTML = e.templates[e._mode + "_date"](e._min_date, e._max_date, e._mode)), e._rendered = [], m = 0; m < b.length - 2; m++)
|
|
6481
|
+
e._rendered[m] = b[m];
|
|
6494
6482
|
}
|
|
6495
6483
|
function o(u) {
|
|
6496
|
-
var
|
|
6497
|
-
const
|
|
6498
|
-
var l = e._y -
|
|
6484
|
+
var v = document.getElementById(u);
|
|
6485
|
+
const m = e.$container.querySelector(".dhx_cal_navline").offsetHeight;
|
|
6486
|
+
var l = e._y - m;
|
|
6499
6487
|
l < 0 && (l = 0);
|
|
6500
6488
|
var f = e._x - e.xy.map_date_width - e.xy.map_description_width - 1;
|
|
6501
|
-
f < 0 && (f = 0),
|
|
6489
|
+
f < 0 && (f = 0), v.style.height = l + "px", v.style.width = f + "px", v.style.position = "absolute", v.style.top = m + "px", e.config.rtl ? v.style.marginRight = e.xy.map_date_width + e.xy.map_description_width + 1 + "px" : v.style.marginLeft = e.xy.map_date_width + e.xy.map_description_width + 1 + "px", v.style.marginTop = e.xy.nav_height + 2 + "px";
|
|
6502
6490
|
}
|
|
6503
|
-
e.render_data = function(u,
|
|
6491
|
+
e.render_data = function(u, v) {
|
|
6504
6492
|
if (this._mode != "map")
|
|
6505
6493
|
return n.apply(this, arguments);
|
|
6506
6494
|
_();
|
|
6507
|
-
for (var
|
|
6508
|
-
e.map._markers[
|
|
6495
|
+
for (var m = e.get_visible_events(), l = 0; l < m.length; l++)
|
|
6496
|
+
e.map._markers[m[l].id] || r(m[l], !1, !1);
|
|
6509
6497
|
}, e.map_view = function(u) {
|
|
6510
6498
|
e.map._initialization_count++;
|
|
6511
|
-
var
|
|
6499
|
+
var v, m = e._els.dhx_gmap[0];
|
|
6512
6500
|
if (e._min_date = e.config.map_start || e._currentDate(), e._max_date = e.config.map_end || e.date.add(e._currentDate(), 1, "year"), e._table_view = !0, function(g) {
|
|
6513
6501
|
if (g) {
|
|
6514
6502
|
var p = e.locale.labels;
|
|
@@ -6520,65 +6508,65 @@ const lt = { active_links: function(e) {
|
|
|
6520
6508
|
var g = e.map._markers;
|
|
6521
6509
|
for (var p in g)
|
|
6522
6510
|
g.hasOwnProperty(p) && (g[p].setMap(null), delete e.map._markers[p], e.map._infowindows_content[p] && delete e.map._infowindows_content[p]);
|
|
6523
|
-
})(), _(),
|
|
6511
|
+
})(), _(), m.style.display = "block", o("dhx_gmap"), v = e.map._obj.getCenter();
|
|
6524
6512
|
for (var l = e.get_visible_events(), f = 0; f < l.length; f++)
|
|
6525
6513
|
e.map._markers[l[f].id] || r(l[f]);
|
|
6526
6514
|
} else
|
|
6527
|
-
|
|
6528
|
-
google.maps.event.trigger(e.map._obj, "resize"), e.map._initialization_count === 0 &&
|
|
6515
|
+
m.style.display = "none";
|
|
6516
|
+
google.maps.event.trigger(e.map._obj, "resize"), e.map._initialization_count === 0 && v && e.map._obj.setCenter(v), e._selected_event_id && t(e._selected_event_id);
|
|
6529
6517
|
};
|
|
6530
6518
|
var t = function(u) {
|
|
6531
6519
|
e.map._obj.setCenter(e.map._points[u]), e.callEvent("onClick", [u]);
|
|
6532
|
-
}, r = function(u,
|
|
6520
|
+
}, r = function(u, v, m) {
|
|
6533
6521
|
var l = e.config.map_error_position;
|
|
6534
6522
|
u.lat && u.lng && (l = new google.maps.LatLng(u.lat, u.lng));
|
|
6535
6523
|
var f = e.templates.marker_text(u.start_date, u.end_date, u);
|
|
6536
6524
|
e._new_event || (e.map._infowindows_content[u.id] = f, e.map._markers[u.id] && e.map._markers[u.id].setMap(null), e.map._markers[u.id] = e.ext.mapView.createMarker({ position: l, map: e.map._obj }), google.maps.event.addListener(e.map._markers[u.id], "click", function() {
|
|
6537
6525
|
e.map._infowindow.setContent(e.map._infowindows_content[u.id]), e.map._infowindow.open(e.map._obj, e.map._markers[u.id]), e._selected_event_id = u.id, e.render_data();
|
|
6538
|
-
}), e.map._points[u.id] = l,
|
|
6526
|
+
}), e.map._points[u.id] = l, v && e.map._obj.setCenter(e.map._points[u.id]), m && e.callEvent("onClick", [u.id]));
|
|
6539
6527
|
};
|
|
6540
|
-
e.attachEvent("onClick", function(u,
|
|
6528
|
+
e.attachEvent("onClick", function(u, v) {
|
|
6541
6529
|
if (this._mode == "map") {
|
|
6542
6530
|
e._selected_event_id = u;
|
|
6543
|
-
for (var
|
|
6544
|
-
e._rendered[
|
|
6531
|
+
for (var m = 0; m < e._rendered.length; m++)
|
|
6532
|
+
e._rendered[m].className = "dhx_map_line", e._rendered[m].getAttribute(e.config.event_attribute) == u && (e._rendered[m].className += " highlight");
|
|
6545
6533
|
e.map._points[u] && e.map._markers[u] && (e.map._obj.setCenter(e.map._points[u]), google.maps.event.trigger(e.map._markers[u], "click"));
|
|
6546
6534
|
}
|
|
6547
6535
|
return !0;
|
|
6548
6536
|
});
|
|
6549
6537
|
var s = function(u) {
|
|
6550
|
-
const
|
|
6551
|
-
u.event_location &&
|
|
6538
|
+
const v = e.ext.mapView.geocoder;
|
|
6539
|
+
u.event_location && v ? v.geocode({ address: u.event_location, language: e.uid().toString() }, function(m, l) {
|
|
6552
6540
|
var f = {};
|
|
6553
|
-
l != google.maps.GeocoderStatus.OK ? (f = e.callEvent("onLocationError", [u.id])) && f !== !0 || (f = e.config.map_error_position) : f =
|
|
6541
|
+
l != google.maps.GeocoderStatus.OK ? (f = e.callEvent("onLocationError", [u.id])) && f !== !0 || (f = e.config.map_error_position) : f = m[0].geometry.location, u.lat = f.lat(), u.lng = f.lng(), e._selected_event_id = u.id, e._latLngUpdate = !0, e.callEvent("onEventChanged", [u.id, u]), r(u, !0, !0);
|
|
6554
6542
|
}) : r(u, !0, !0);
|
|
6555
6543
|
}, c = function(u) {
|
|
6556
|
-
const
|
|
6557
|
-
u.event_location &&
|
|
6544
|
+
const v = e.ext.mapView.geocoder;
|
|
6545
|
+
u.event_location && v && v.geocode({ address: u.event_location, language: e.uid().toString() }, function(m, l) {
|
|
6558
6546
|
var f = {};
|
|
6559
|
-
l != google.maps.GeocoderStatus.OK ? (f = e.callEvent("onLocationError", [u.id])) && f !== !0 || (f = e.config.map_error_position) : f =
|
|
6547
|
+
l != google.maps.GeocoderStatus.OK ? (f = e.callEvent("onLocationError", [u.id])) && f !== !0 || (f = e.config.map_error_position) : f = m[0].geometry.location, u.lat = f.lat(), u.lng = f.lng(), e._latLngUpdate = !0, e.callEvent("onEventChanged", [u.id, u]);
|
|
6560
6548
|
});
|
|
6561
6549
|
};
|
|
6562
|
-
e.attachEvent("onEventChanged", function(u,
|
|
6563
|
-
return this._latLngUpdate ? this._latLngUpdate = !1 : (
|
|
6564
|
-
}), e.attachEvent("onEventIdChange", function(u,
|
|
6565
|
-
var
|
|
6566
|
-
return (
|
|
6567
|
-
}), e.attachEvent("onEventAdded", function(u,
|
|
6568
|
-
return e._dataprocessor || (
|
|
6569
|
-
}), e.attachEvent("onBeforeEventDelete", function(u,
|
|
6550
|
+
e.attachEvent("onEventChanged", function(u, v) {
|
|
6551
|
+
return this._latLngUpdate ? this._latLngUpdate = !1 : (v = e.getEvent(u)).start_date < e._min_date && v.end_date > e._min_date || v.start_date < e._max_date && v.end_date > e._max_date || v.start_date.valueOf() >= e._min_date && v.end_date.valueOf() <= e._max_date ? (e.map._markers[u] && e.map._markers[u].setMap(null), s(v)) : (e._selected_event_id = null, e.map._infowindow.close(), e.map._markers[u] && e.map._markers[u].setMap(null)), !0;
|
|
6552
|
+
}), e.attachEvent("onEventIdChange", function(u, v) {
|
|
6553
|
+
var m = e.getEvent(v);
|
|
6554
|
+
return (m.start_date < e._min_date && m.end_date > e._min_date || m.start_date < e._max_date && m.end_date > e._max_date || m.start_date.valueOf() >= e._min_date && m.end_date.valueOf() <= e._max_date) && (e.map._markers[u] && (e.map._markers[u].setMap(null), delete e.map._markers[u]), e.map._infowindows_content[u] && delete e.map._infowindows_content[u], s(m)), !0;
|
|
6555
|
+
}), e.attachEvent("onEventAdded", function(u, v) {
|
|
6556
|
+
return e._dataprocessor || (v.start_date < e._min_date && v.end_date > e._min_date || v.start_date < e._max_date && v.end_date > e._max_date || v.start_date.valueOf() >= e._min_date && v.end_date.valueOf() <= e._max_date) && (e.map._markers[u] && e.map._markers[u].setMap(null), s(v)), !0;
|
|
6557
|
+
}), e.attachEvent("onBeforeEventDelete", function(u, v) {
|
|
6570
6558
|
return e.map._markers[u] && e.map._markers[u].setMap(null), e._selected_event_id = null, e.map._infowindow.close(), !0;
|
|
6571
6559
|
}), e._event_resolve_delay = 1500, e.attachEvent("onEventLoading", function(u) {
|
|
6572
|
-
return e.config.map_resolve_event_location && u.event_location && !u.lat && !u.lng && (e._event_resolve_delay += 1500, function(
|
|
6560
|
+
return e.config.map_resolve_event_location && u.event_location && !u.lat && !u.lng && (e._event_resolve_delay += 1500, function(v, m, l, f) {
|
|
6573
6561
|
setTimeout(function() {
|
|
6574
6562
|
if (e.$destroyed)
|
|
6575
6563
|
return !0;
|
|
6576
|
-
var g =
|
|
6577
|
-
return
|
|
6564
|
+
var g = v.apply(m, l);
|
|
6565
|
+
return v = m = l = null, g;
|
|
6578
6566
|
}, f || 1);
|
|
6579
6567
|
}(c, this, [u], e._event_resolve_delay)), !0;
|
|
6580
|
-
}), e.attachEvent("onEventCancel", function(u,
|
|
6581
|
-
return
|
|
6568
|
+
}), e.attachEvent("onEventCancel", function(u, v) {
|
|
6569
|
+
return v && (e.map._markers[u] && e.map._markers[u].setMap(null), e.map._infowindow.close()), !0;
|
|
6582
6570
|
});
|
|
6583
6571
|
});
|
|
6584
6572
|
}, minical: function(e) {
|
|
@@ -6602,11 +6590,11 @@ const lt = { active_links: function(e) {
|
|
|
6602
6590
|
}).bind(n)));
|
|
6603
6591
|
}
|
|
6604
6592
|
if (e.config.minicalendar.mark_events)
|
|
6605
|
-
for (var s = e.date.month_start(_), c = e.date.add(s, 1, "month"), u = this.getEvents(s, c),
|
|
6593
|
+
for (var s = e.date.month_start(_), c = e.date.add(s, 1, "month"), u = this.getEvents(s, c), v = this["filter_" + this._mode], m = {}, l = 0; l < u.length; l++) {
|
|
6606
6594
|
var f = u[l];
|
|
6607
|
-
if (!
|
|
6595
|
+
if (!v || v(f.id, f)) {
|
|
6608
6596
|
var g = f.start_date;
|
|
6609
|
-
for (g.valueOf() < s.valueOf() && (g = s), g = e.date.date_part(new Date(g.valueOf())); g < f.end_date && (
|
|
6597
|
+
for (g.valueOf() < s.valueOf() && (g = s), g = e.date.date_part(new Date(g.valueOf())); g < f.end_date && (m[+g] || (m[+g] = !0, this.markCalendar(n, g, "dhx_year_event")), !((g = this.date.add(g, 1, "day")).valueOf() >= c.valueOf())); )
|
|
6610
6598
|
;
|
|
6611
6599
|
}
|
|
6612
6600
|
}
|
|
@@ -6646,7 +6634,7 @@ const lt = { active_links: function(e) {
|
|
|
6646
6634
|
this._mode = "calendar";
|
|
6647
6635
|
var r = this._colsS;
|
|
6648
6636
|
this._colsS = { height: 0 };
|
|
6649
|
-
var s = new Date(this._min_date), c = new Date(this._max_date), u = new Date(e._date),
|
|
6637
|
+
var s = new Date(this._min_date), c = new Date(this._max_date), u = new Date(e._date), v = _.month_day, m = this._ignores_detected;
|
|
6650
6638
|
this._ignores_detected = 0, _.month_day = _.calendar_date, i = this.date.month_start(i);
|
|
6651
6639
|
var l, f = this._week_template(a.offsetWidth - 1 - this.config.minicalendar.padding);
|
|
6652
6640
|
n ? l = n : (l = document.createElement("div")).className = "dhx_cal_container dhx_mini_calendar", l.setAttribute("date", this._helpers.formatDate(i)), l.innerHTML = "<div class='dhx_year_month'></div><div class='dhx_year_grid" + (e.config.rtl ? " dhx_grid_rtl'>" : "'>") + "<div class='dhx_year_week'>" + (f ? f.innerHTML : "") + "</div><div class='dhx_year_body'></div></div>";
|
|
@@ -6677,7 +6665,7 @@ const lt = { active_links: function(e) {
|
|
|
6677
6665
|
var O = y.querySelectorAll(".dhx_cal_month_cell"), $ = new Date(M);
|
|
6678
6666
|
for (T = 0; T < O.length; T++)
|
|
6679
6667
|
e._waiAria.minicalDayCell(O[T], new Date($)), $ = e.date.add($, 1, "day");
|
|
6680
|
-
return e._waiAria.minicalHeader(g, A), this._cols = o, this._mode = t, this._colsS = r, this._min_date = s, this._max_date = c, e._date = u, _.month_day =
|
|
6668
|
+
return e._waiAria.minicalHeader(g, A), this._cols = o, this._mode = t, this._colsS = r, this._min_date = s, this._max_date = c, e._date = u, _.month_day = v, this._ignores_detected = m, l;
|
|
6681
6669
|
}, e.destroyCalendar = function(a, i) {
|
|
6682
6670
|
!a && this._def_count && this._def_count.firstChild && (i || (/* @__PURE__ */ new Date()).valueOf() - this._def_count._created.valueOf() > 500) && (a = this._def_count.firstChild), a && (h.detachAll(), a.innerHTML = "", a.parentNode && a.parentNode.removeChild(a), this._def_count && (this._def_count.style.top = "-1000px"), a.conf && a.conf._on_xle_handler && e.detachEvent(a.conf._on_xle_handler));
|
|
6683
6671
|
}, e.isCalendarVisible = function() {
|
|
@@ -6696,7 +6684,7 @@ const lt = { active_links: function(e) {
|
|
|
6696
6684
|
var _, o, t = a.getElementsByTagName("input"), r = a.getElementsByTagName("select"), s = function(g, p, y) {
|
|
6697
6685
|
e.event(g, "click", function() {
|
|
6698
6686
|
e.destroyCalendar(null, !0), e.renderCalendar({ position: g, date: new Date(this._date), navigation: !0, handler: function(w) {
|
|
6699
|
-
g.value = e.templates.calendar_time(w), g._date = new Date(w), e.destroyCalendar(), e.config.event_duration && e.config.auto_end_date && y === 0 &&
|
|
6687
|
+
g.value = e.templates.calendar_time(w), g._date = new Date(w), e.destroyCalendar(), e.config.event_duration && e.config.auto_end_date && y === 0 && m();
|
|
6700
6688
|
} });
|
|
6701
6689
|
});
|
|
6702
6690
|
};
|
|
@@ -6705,8 +6693,8 @@ const lt = { active_links: function(e) {
|
|
|
6705
6693
|
var c = "<label class='dhx_fullday'><input type='checkbox' name='full_day' value='true'> " + e.locale.labels.full_day + " </label></input>";
|
|
6706
6694
|
e.config.wide_form || (c = a.previousSibling.innerHTML + c), a.previousSibling.innerHTML = c, a._full_day = !0;
|
|
6707
6695
|
}
|
|
6708
|
-
var u = a.previousSibling.getElementsByTagName("input")[0],
|
|
6709
|
-
u.checked =
|
|
6696
|
+
var u = a.previousSibling.getElementsByTagName("input")[0], v = e.date.time_part(d.start_date) === 0 && e.date.time_part(d.end_date) === 0;
|
|
6697
|
+
u.checked = v, r[0].disabled = u.checked, r[1].disabled = u.checked, u.$_eventAttached || (u.$_eventAttached = !0, e.event(u, "click", function() {
|
|
6710
6698
|
if (u.checked === !0) {
|
|
6711
6699
|
var g = {};
|
|
6712
6700
|
e.form_blocks.calendar_time.get_value(a, g), _ = e.date.date_part(g.start_date), (+(o = e.date.date_part(g.end_date)) == +_ || +o >= +_ && (d.end_date.getHours() !== 0 || d.end_date.getMinutes() !== 0)) && (o = e.date.add(o, 1, "day"));
|
|
@@ -6716,10 +6704,10 @@ const lt = { active_links: function(e) {
|
|
|
6716
6704
|
}));
|
|
6717
6705
|
}
|
|
6718
6706
|
if (e.config.event_duration && e.config.auto_end_date) {
|
|
6719
|
-
var
|
|
6707
|
+
var m = function() {
|
|
6720
6708
|
e.config.auto_end_date && e.config.event_duration && (_ = e.date.add(t[0]._date, r[0].value, "minute"), o = new Date(_.getTime() + 60 * e.config.event_duration * 1e3), t[1].value = e.templates.calendar_time(o), t[1]._date = e.date.date_part(new Date(o)), r[1].value = 60 * o.getHours() + o.getMinutes());
|
|
6721
6709
|
};
|
|
6722
|
-
r[0].$_eventAttached || r[0].addEventListener("change",
|
|
6710
|
+
r[0].$_eventAttached || r[0].addEventListener("change", m);
|
|
6723
6711
|
}
|
|
6724
6712
|
function l(g, p, y) {
|
|
6725
6713
|
s(g, p, y), g.value = e.templates.calendar_time(p), g._date = e.date.date_part(new Date(p));
|
|
@@ -6786,8 +6774,8 @@ const lt = { active_links: function(e) {
|
|
|
6786
6774
|
for (var n = h.getElementsByTagName("input"), _ = 0; _ < n.length; _++)
|
|
6787
6775
|
n[_].checked = !1;
|
|
6788
6776
|
function o(u) {
|
|
6789
|
-
for (var
|
|
6790
|
-
m
|
|
6777
|
+
for (var v = h.getElementsByTagName("input"), m = 0; m < v.length; m++)
|
|
6778
|
+
v[m].checked = !!u[v[m].value];
|
|
6791
6779
|
}
|
|
6792
6780
|
var t = {};
|
|
6793
6781
|
if (i[d.map_to]) {
|
|
@@ -6802,9 +6790,9 @@ const lt = { active_links: function(e) {
|
|
|
6802
6790
|
s.className = "dhx_loading", s.style.cssText = "position: absolute; top: 40%; left: 40%;", h.appendChild(s);
|
|
6803
6791
|
var c = [d.script_url, d.script_url.indexOf("?") == -1 ? "?" : "&", "dhx_crosslink_" + d.map_to + "=" + i.id + "&uid=" + e.uid()].join("");
|
|
6804
6792
|
e.ajax.get(c, function(u) {
|
|
6805
|
-
var
|
|
6793
|
+
var v = function(m, l) {
|
|
6806
6794
|
try {
|
|
6807
|
-
for (var f = JSON.parse(
|
|
6795
|
+
for (var f = JSON.parse(m.xmlDoc.responseText), g = {}, p = 0; p < f.length; p++) {
|
|
6808
6796
|
var y = f[p];
|
|
6809
6797
|
g[y.value || y.key || y.id] = !0;
|
|
6810
6798
|
}
|
|
@@ -6813,11 +6801,11 @@ const lt = { active_links: function(e) {
|
|
|
6813
6801
|
return null;
|
|
6814
6802
|
}
|
|
6815
6803
|
}(u);
|
|
6816
|
-
|
|
6817
|
-
for (var f = e.ajax.xpath("//data/item",
|
|
6804
|
+
v || (v = function(m, l) {
|
|
6805
|
+
for (var f = e.ajax.xpath("//data/item", m.xmlDoc), g = {}, p = 0; p < f.length; p++)
|
|
6818
6806
|
g[f[p].getAttribute(l.map_to)] = !0;
|
|
6819
6807
|
return g;
|
|
6820
|
-
}(u, d)), o(
|
|
6808
|
+
}(u, d)), o(v), h.removeChild(s);
|
|
6821
6809
|
});
|
|
6822
6810
|
}
|
|
6823
6811
|
}, get_value: function(h, a, i) {
|
|
@@ -6855,8 +6843,8 @@ const lt = { active_links: function(e) {
|
|
|
6855
6843
|
}
|
|
6856
6844
|
e.backbone = function(_, o) {
|
|
6857
6845
|
o && (a = o), _.bind("change", function(s, c) {
|
|
6858
|
-
var u = n(s),
|
|
6859
|
-
|
|
6846
|
+
var u = n(s), v = e._events[u] = s.toJSON();
|
|
6847
|
+
v.id = u, e._init_event(v), clearTimeout(h), h = setTimeout(function() {
|
|
6860
6848
|
if (e.$destroyed)
|
|
6861
6849
|
return !0;
|
|
6862
6850
|
e.updateView();
|
|
@@ -6874,8 +6862,8 @@ const lt = { active_links: function(e) {
|
|
|
6874
6862
|
_.bind("add", function(s, c) {
|
|
6875
6863
|
var u = n(s);
|
|
6876
6864
|
if (!e._events[u]) {
|
|
6877
|
-
var
|
|
6878
|
-
|
|
6865
|
+
var v = s.toJSON();
|
|
6866
|
+
v.id = u, e._init_event(v), t.push(v), t.length == 1 && setTimeout(r, 1);
|
|
6879
6867
|
}
|
|
6880
6868
|
}), _.bind("request", function(s) {
|
|
6881
6869
|
var c;
|
|
@@ -6889,8 +6877,8 @@ const lt = { active_links: function(e) {
|
|
|
6889
6877
|
return e._events[s] = c.toJSON(), e._events[s].id = s, !0;
|
|
6890
6878
|
}), e.attachEvent("onEventAdded", function(s) {
|
|
6891
6879
|
if (!_.get(s)) {
|
|
6892
|
-
var c = i(e.getEvent(s)), u = new _.model(c),
|
|
6893
|
-
|
|
6880
|
+
var c = i(e.getEvent(s)), u = new _.model(c), v = n(u);
|
|
6881
|
+
v != s && this.changeEventId(s, v), _.add(u), _.trigger("scheduler:add", u);
|
|
6894
6882
|
}
|
|
6895
6883
|
return !0;
|
|
6896
6884
|
}), e.attachEvent("onEventChanged", function(s) {
|
|
@@ -6906,14 +6894,14 @@ const lt = { active_links: function(e) {
|
|
|
6906
6894
|
var h, a = new dhtmlDragAndDropObject(), i = a.stopDrag;
|
|
6907
6895
|
function d(n, _, o, t) {
|
|
6908
6896
|
if (!e.checkEvent("onBeforeExternalDragIn") || e.callEvent("onBeforeExternalDragIn", [n, _, o, t, h])) {
|
|
6909
|
-
var r = e.attachEvent("onEventCreated", function(
|
|
6910
|
-
e.callEvent("onExternalDragIn", [
|
|
6897
|
+
var r = e.attachEvent("onEventCreated", function(m) {
|
|
6898
|
+
e.callEvent("onExternalDragIn", [m, n, h]) || (this._drag_mode = this._drag_id = null, this.deleteEvent(m));
|
|
6911
6899
|
}), s = e.getActionData(h), c = { start_date: new Date(s.date) };
|
|
6912
6900
|
if (e.matrix && e.matrix[e._mode]) {
|
|
6913
6901
|
var u = e.matrix[e._mode];
|
|
6914
6902
|
c[u.y_property] = s.section;
|
|
6915
|
-
var
|
|
6916
|
-
c.start_date = u._trace_x[
|
|
6903
|
+
var v = e._locate_cell_timeline(h);
|
|
6904
|
+
c.start_date = u._trace_x[v.x], c.end_date = e.date.add(c.start_date, u.x_step, u.x_unit);
|
|
6917
6905
|
}
|
|
6918
6906
|
e._props && e._props[e._mode] && (c[e._props[e._mode].map_to] = s.section), e.addEventNow(c), e.detachEvent(r);
|
|
6919
6907
|
}
|
|
@@ -6976,10 +6964,10 @@ const lt = { active_links: function(e) {
|
|
|
6976
6964
|
return D;
|
|
6977
6965
|
return k;
|
|
6978
6966
|
}
|
|
6979
|
-
function
|
|
6967
|
+
function v(b) {
|
|
6980
6968
|
return b ? "</" + b + ">" : "";
|
|
6981
6969
|
}
|
|
6982
|
-
function
|
|
6970
|
+
function m(b, k, E, D) {
|
|
6983
6971
|
var x = "<" + b + " profile='" + k + "'";
|
|
6984
6972
|
return E && (x += " header='" + E + "'"), D && (x += " footer='" + D + "'"), x += ">";
|
|
6985
6973
|
}
|
|
@@ -7099,12 +7087,12 @@ const lt = { active_links: function(e) {
|
|
|
7099
7087
|
var M, A = "";
|
|
7100
7088
|
if (b) {
|
|
7101
7089
|
var C = e._date, T = e._mode;
|
|
7102
|
-
k = e.date[E + "_start"](k), k = e.date["get_" + E + "_end"] ? e.date["get_" + E + "_end"](k) : e.date.add(k, 1, E), A =
|
|
7090
|
+
k = e.date[E + "_start"](k), k = e.date["get_" + E + "_end"] ? e.date["get_" + E + "_end"](k) : e.date.add(k, 1, E), A = m("pages", D, x, S);
|
|
7103
7091
|
for (var O = new Date(b); +O < +k; O = this.date.add(O, 1, E))
|
|
7104
|
-
this.setCurrentView(O, E), A += ((M = "page") ? "<" + M + ">" : "") + l().replace("–", "-") + p(N) +
|
|
7105
|
-
A +=
|
|
7092
|
+
this.setCurrentView(O, E), A += ((M = "page") ? "<" + M + ">" : "") + l().replace("–", "-") + p(N) + v("page");
|
|
7093
|
+
A += v("pages"), this.setCurrentView(C, T);
|
|
7106
7094
|
} else
|
|
7107
|
-
A =
|
|
7095
|
+
A = m("data", D, x, S) + l().replace("–", "-") + p(N) + v("data");
|
|
7108
7096
|
return A;
|
|
7109
7097
|
}
|
|
7110
7098
|
function w(b, k, E, D, x, S, N) {
|
|
@@ -7185,13 +7173,15 @@ const lt = { active_links: function(e) {
|
|
|
7185
7173
|
var i = a.offsetWidth, d = a.offsetHeight;
|
|
7186
7174
|
if (e.config.quick_info_detached) {
|
|
7187
7175
|
var n = h.left - h.dx * (i - h.width);
|
|
7188
|
-
n + i > window.innerWidth && (n = window.innerWidth - i), n = Math.max(0, n), a.style.left = n + "px", a.style.top = h.top - (h.dy ? d : -h.height) + "px";
|
|
7189
|
-
} else
|
|
7190
|
-
|
|
7176
|
+
e.getView() && e.getView()._x_scroll && (e.config.rtl ? n += e.getView()._x_scroll : n -= e.getView()._x_scroll), n + i > window.innerWidth && (n = window.innerWidth - i), n = Math.max(0, n), a.style.left = n + "px", a.style.top = h.top - (h.dy ? d : -h.height) + "px";
|
|
7177
|
+
} else {
|
|
7178
|
+
const _ = e.$container.querySelector(".dhx_cal_data").offsetTop;
|
|
7179
|
+
a.style.top = _ + 20 + "px", h.dx == 1 ? (a.style.right = "auto", a.style.left = -i + "px", setTimeout(function() {
|
|
7191
7180
|
a.style.left = "-10px";
|
|
7192
7181
|
}, 1)) : (a.style.left = "auto", a.style.right = -i + "px", setTimeout(function() {
|
|
7193
7182
|
a.style.right = "-10px";
|
|
7194
7183
|
}, 1)), a.className = a.className.replace(" dhx_qi_left", "").replace(" dhx_qi_right", "") + " dhx_qi_" + (h.dx == 1 ? "left" : "right");
|
|
7184
|
+
}
|
|
7195
7185
|
}, e.attachEvent("onTemplatesReady", function() {
|
|
7196
7186
|
if (e.hideQuickInfo(), this._quick_info_box) {
|
|
7197
7187
|
var h = this._quick_info_box;
|
|
@@ -7254,10 +7244,10 @@ const lt = { active_links: function(e) {
|
|
|
7254
7244
|
e.form_blocks.recurring && (h = e.form_blocks.recurring.set_value);
|
|
7255
7245
|
var a = e.config.buttons_left.slice(), i = e.config.buttons_right.slice();
|
|
7256
7246
|
function d(o, t, r, s) {
|
|
7257
|
-
for (var c = t.getElementsByTagName(o), u = r.getElementsByTagName(o),
|
|
7258
|
-
if (r = u[
|
|
7259
|
-
var
|
|
7260
|
-
|
|
7247
|
+
for (var c = t.getElementsByTagName(o), u = r.getElementsByTagName(o), v = u.length - 1; v >= 0; v--)
|
|
7248
|
+
if (r = u[v], s) {
|
|
7249
|
+
var m = document.createElement("span");
|
|
7250
|
+
m.className = "dhx_text_disabled", m.innerHTML = s(c[v]), r.parentNode.insertBefore(m, r), r.parentNode.removeChild(r);
|
|
7261
7251
|
} else
|
|
7262
7252
|
r.disabled = !0, t.checked && (r.checked = !0);
|
|
7263
7253
|
}
|
|
@@ -7272,13 +7262,13 @@ const lt = { active_links: function(e) {
|
|
|
7272
7262
|
});
|
|
7273
7263
|
var s = ["dhx_delete_btn", "dhx_save_btn"], c = [e.config.buttons_left, e.config.buttons_right];
|
|
7274
7264
|
for (r = 0; r < s.length; r++)
|
|
7275
|
-
for (var u = s[r],
|
|
7276
|
-
for (var
|
|
7277
|
-
if (
|
|
7265
|
+
for (var u = s[r], v = 0; v < c.length; v++) {
|
|
7266
|
+
for (var m = c[v], l = -1, f = 0; f < m.length; f++)
|
|
7267
|
+
if (m[f] == u) {
|
|
7278
7268
|
l = f;
|
|
7279
7269
|
break;
|
|
7280
7270
|
}
|
|
7281
|
-
l != -1 &&
|
|
7271
|
+
l != -1 && m.splice(l, 1);
|
|
7282
7272
|
}
|
|
7283
7273
|
}
|
|
7284
7274
|
return this.resetLightbox(), !0;
|
|
@@ -7379,26 +7369,26 @@ const lt = { active_links: function(e) {
|
|
|
7379
7369
|
}, _init_set_value: function(n, _, o) {
|
|
7380
7370
|
var t = e.form_blocks.recurring, r = t._get_node_value, s = t._set_node_value;
|
|
7381
7371
|
e.form_blocks.recurring._ds = { start: o.start_date, end: o._end_date };
|
|
7382
|
-
var c = e.date.str_to_date(e.config.repeat_date, !1, !0), u = e.date.date_to_str(e.config.repeat_date),
|
|
7372
|
+
var c = e.date.str_to_date(e.config.repeat_date, !1, !0), u = e.date.date_to_str(e.config.repeat_date), v = n.getElementsByTagName("FORM")[0], m = {};
|
|
7383
7373
|
function l(D) {
|
|
7384
7374
|
for (var x = 0; x < D.length; x++) {
|
|
7385
7375
|
var S = D[x];
|
|
7386
7376
|
if (S.name)
|
|
7387
|
-
if (
|
|
7388
|
-
if (
|
|
7389
|
-
var N =
|
|
7390
|
-
|
|
7377
|
+
if (m[S.name])
|
|
7378
|
+
if (m[S.name].nodeType) {
|
|
7379
|
+
var N = m[S.name];
|
|
7380
|
+
m[S.name] = [N, S];
|
|
7391
7381
|
} else
|
|
7392
|
-
|
|
7382
|
+
m[S.name].push(S);
|
|
7393
7383
|
else
|
|
7394
|
-
|
|
7384
|
+
m[S.name] = S;
|
|
7395
7385
|
}
|
|
7396
7386
|
}
|
|
7397
|
-
if (l(
|
|
7387
|
+
if (l(v.getElementsByTagName("INPUT")), l(v.getElementsByTagName("SELECT")), !e.config.repeat_date_of_end) {
|
|
7398
7388
|
var f = e.date.date_to_str(e.config.repeat_date);
|
|
7399
7389
|
e.config.repeat_date_of_end = f(e.date.add(e._currentDate(), 30, "day"));
|
|
7400
7390
|
}
|
|
7401
|
-
s(
|
|
7391
|
+
s(m, "date_of_end", e.config.repeat_date_of_end);
|
|
7402
7392
|
var g = function(D) {
|
|
7403
7393
|
return e._lightbox.querySelector(`#${D}`) || { style: {} };
|
|
7404
7394
|
};
|
|
@@ -7429,7 +7419,7 @@ const lt = { active_links: function(e) {
|
|
|
7429
7419
|
S.value = x;
|
|
7430
7420
|
}
|
|
7431
7421
|
e.form_blocks.recurring._get_repeat_code = function(D) {
|
|
7432
|
-
var x = [r(
|
|
7422
|
+
var x = [r(m, "repeat")];
|
|
7433
7423
|
for (w[x[0]](x, D); x.length < 5; )
|
|
7434
7424
|
x.push("");
|
|
7435
7425
|
var S = "", N = function(M) {
|
|
@@ -7441,63 +7431,63 @@ const lt = { active_links: function(e) {
|
|
|
7441
7431
|
} else if (A.value)
|
|
7442
7432
|
return A.value;
|
|
7443
7433
|
return "no";
|
|
7444
|
-
}(
|
|
7434
|
+
}(m);
|
|
7445
7435
|
return N == "no" ? (D.end = new Date(9999, 1, 1), S = "no") : N == "date_of_end" ? D.end = function(M) {
|
|
7446
7436
|
var A = c(M);
|
|
7447
7437
|
return e.config.include_end_by && (A = e.date.add(A, 1, "day")), A;
|
|
7448
|
-
}(r(
|
|
7438
|
+
}(r(m, "date_of_end")) : (e.transpose_type(x.join("_")), S = Math.max(1, r(m, "occurences_count")), D.end = e.date["add_" + x.join("_")](new Date(D.start), S + 0, { start_date: D.start }) || D.start), x.join("_") + "#" + S;
|
|
7449
7439
|
};
|
|
7450
7440
|
var w = { month: function(D, x) {
|
|
7451
7441
|
var S = e.form_blocks.recurring._get_node_value, N = e.form_blocks.recurring._get_node_numeric_value;
|
|
7452
|
-
S(
|
|
7442
|
+
S(m, "month_type") == "d" ? (D.push(Math.max(1, N(m, "month_count"))), x.start.setDate(S(m, "month_day"))) : (D.push(Math.max(1, N(m, "month_count2"))), D.push(S(m, "month_day2")), D.push(Math.max(1, N(m, "month_week2"))), e.config.repeat_precise || x.start.setDate(1)), x._start = !0;
|
|
7453
7443
|
}, week: function(D, x) {
|
|
7454
7444
|
var S = e.form_blocks.recurring._get_node_value, N = e.form_blocks.recurring._get_node_numeric_value;
|
|
7455
|
-
D.push(Math.max(1, N(
|
|
7456
|
-
for (var M = [], A = S(
|
|
7445
|
+
D.push(Math.max(1, N(m, "week_count"))), D.push(""), D.push("");
|
|
7446
|
+
for (var M = [], A = S(m, "week_day", !0), C = x.start.getDay(), T = !1, O = 0; O < A.length; O++)
|
|
7457
7447
|
M.push(A[O]), T = T || A[O] == C;
|
|
7458
7448
|
M.length || (M.push(C), T = !0), M.sort(), e.config.repeat_precise ? T || (e.transpose_day_week(x.start, M, 1, 7), x._start = !0) : (x.start = e.date.week_start(x.start), x._start = !0), D.push(M.join(","));
|
|
7459
7449
|
}, day: function(D) {
|
|
7460
7450
|
var x = e.form_blocks.recurring._get_node_value, S = e.form_blocks.recurring._get_node_numeric_value;
|
|
7461
|
-
x(
|
|
7451
|
+
x(m, "day_type") == "d" ? D.push(Math.max(1, S(m, "day_count"))) : (D.push("week"), D.push(1), D.push(""), D.push(""), D.push(e.config.recurring_workdays.join(",")), D.splice(0, 1));
|
|
7462
7452
|
}, year: function(D, x) {
|
|
7463
7453
|
var S = e.form_blocks.recurring._get_node_value;
|
|
7464
|
-
S(
|
|
7454
|
+
S(m, "year_type") == "d" ? (D.push("1"), x.start.setMonth(0), x.start.setDate(S(m, "year_day")), x.start.setMonth(S(m, "year_month"))) : (D.push("1"), D.push(S(m, "year_day2")), D.push(S(m, "year_week2")), x.start.setDate(1), x.start.setMonth(S(m, "year_month2"))), x._start = !0;
|
|
7465
7455
|
} }, b = { week: function(D, x) {
|
|
7466
7456
|
var S = e.form_blocks.recurring._set_node_value;
|
|
7467
|
-
S(
|
|
7457
|
+
S(m, "week_count", D[1]);
|
|
7468
7458
|
for (var N = D[4].split(","), M = {}, A = 0; A < N.length; A++)
|
|
7469
7459
|
M[N[A]] = !0;
|
|
7470
|
-
S(
|
|
7460
|
+
S(m, "week_day", M);
|
|
7471
7461
|
}, month: function(D, x) {
|
|
7472
7462
|
var S = e.form_blocks.recurring._set_node_value;
|
|
7473
|
-
D[2] === "" ? (S(
|
|
7463
|
+
D[2] === "" ? (S(m, "month_type", "d"), S(m, "month_count", D[1]), S(m, "month_day", x.start.getDate())) : (S(m, "month_type", "w"), S(m, "month_count2", D[1]), S(m, "month_week2", D[3]), S(m, "month_day2", D[2]));
|
|
7474
7464
|
}, day: function(D, x) {
|
|
7475
7465
|
var S = e.form_blocks.recurring._set_node_value;
|
|
7476
|
-
S(
|
|
7466
|
+
S(m, "day_type", "d"), S(m, "day_count", D[1]);
|
|
7477
7467
|
}, year: function(D, x) {
|
|
7478
7468
|
var S = e.form_blocks.recurring._set_node_value;
|
|
7479
|
-
D[2] === "" ? (S(
|
|
7469
|
+
D[2] === "" ? (S(m, "year_type", "d"), S(m, "year_day", x.start.getDate()), S(m, "year_month", x.start.getMonth())) : (S(m, "year_type", "w"), S(m, "year_week2", D[3]), S(m, "year_day2", D[2]), S(m, "year_month2", x.start.getMonth()));
|
|
7480
7470
|
} };
|
|
7481
7471
|
e.form_blocks.recurring._set_repeat_code = function(D, x) {
|
|
7482
7472
|
var S = e.form_blocks.recurring._set_node_value, N = D.split("#");
|
|
7483
7473
|
switch (D = N[0].split("_"), b[D[0]](D, x), N[1]) {
|
|
7484
7474
|
case "no":
|
|
7485
|
-
y(
|
|
7475
|
+
y(m, "no");
|
|
7486
7476
|
break;
|
|
7487
7477
|
case "":
|
|
7488
|
-
y(
|
|
7478
|
+
y(m, "date_of_end");
|
|
7489
7479
|
var M = x.end;
|
|
7490
|
-
e.config.include_end_by && (M = e.date.add(M, -1, "day")), S(
|
|
7480
|
+
e.config.include_end_by && (M = e.date.add(M, -1, "day")), S(m, "date_of_end", u(M));
|
|
7491
7481
|
break;
|
|
7492
7482
|
default:
|
|
7493
|
-
y(
|
|
7483
|
+
y(m, "occurences_count"), S(m, "occurences_count", N[1]);
|
|
7494
7484
|
}
|
|
7495
|
-
S(
|
|
7496
|
-
var A = e.form_blocks.recurring._get_form_node(
|
|
7485
|
+
S(m, "repeat", D[0]);
|
|
7486
|
+
var A = e.form_blocks.recurring._get_form_node(m, "repeat", D[0]);
|
|
7497
7487
|
A.nodeName == "SELECT" ? (A.dispatchEvent(new Event("change")), A.dispatchEvent(new MouseEvent("click"))) : A.dispatchEvent(new MouseEvent("click"));
|
|
7498
7488
|
};
|
|
7499
|
-
for (var k = 0; k <
|
|
7500
|
-
var E =
|
|
7489
|
+
for (var k = 0; k < v.elements.length; k++) {
|
|
7490
|
+
var E = v.elements[k];
|
|
7501
7491
|
E.name === "repeat" && (E.nodeName != "SELECT" || E.$_eventAttached ? E.$_eventAttached || (E.$_eventAttached = !0, E.addEventListener("click", p)) : (E.$_eventAttached = !0, E.addEventListener("change", p)));
|
|
7502
7492
|
}
|
|
7503
7493
|
e._lightbox._rec_init_done = !0;
|
|
@@ -7600,9 +7590,9 @@ const lt = { active_links: function(e) {
|
|
|
7600
7590
|
for (var u in c)
|
|
7601
7591
|
c.hasOwnProperty(u) && (delete this._rec_markers[c[u].id], this.deleteEvent(c[u].id, !0));
|
|
7602
7592
|
delete this._rec_markers_pull[n];
|
|
7603
|
-
for (var
|
|
7604
|
-
this._rendered[
|
|
7605
|
-
|
|
7593
|
+
for (var v = !1, m = 0; m < this._rendered.length; m++)
|
|
7594
|
+
this._rendered[m].getAttribute(this.config.event_attribute) == n && (v = !0);
|
|
7595
|
+
v || (this._select_id = null);
|
|
7606
7596
|
}
|
|
7607
7597
|
return !0;
|
|
7608
7598
|
}), e.attachEvent("onEventAdded", function(n) {
|
|
@@ -7628,9 +7618,9 @@ const lt = { active_links: function(e) {
|
|
|
7628
7618
|
}, e.showLightbox_rec = e.showLightbox, e.showLightbox = function(n) {
|
|
7629
7619
|
var _ = this.locale, o = e.config.lightbox_recurring, t = this.getEvent(n), r = t.event_pid, s = this._is_virtual_event(n);
|
|
7630
7620
|
s && (r = n.split("#")[0]);
|
|
7631
|
-
var c = function(
|
|
7632
|
-
var
|
|
7633
|
-
return
|
|
7621
|
+
var c = function(v) {
|
|
7622
|
+
var m = e.getEvent(v);
|
|
7623
|
+
return m._end_date = m.end_date, m.end_date = new Date(m.start_date.valueOf() + 1e3 * m.event_length), e.showLightbox_rec(v);
|
|
7634
7624
|
};
|
|
7635
7625
|
if ((r || 1 * r == 0) && t.rec_type)
|
|
7636
7626
|
return c(n);
|
|
@@ -7638,8 +7628,8 @@ const lt = { active_links: function(e) {
|
|
|
7638
7628
|
return this.showLightbox_rec(n);
|
|
7639
7629
|
if (o == "ask") {
|
|
7640
7630
|
var u = this;
|
|
7641
|
-
e.modalbox({ text: _.labels.confirm_recurring, title: _.labels.title_confirm_recurring, width: "500px", position: "middle", buttons: [_.labels.button_edit_series, _.labels.button_edit_occurrence, _.labels.icon_cancel], callback: function(
|
|
7642
|
-
switch (+
|
|
7631
|
+
e.modalbox({ text: _.labels.confirm_recurring, title: _.labels.title_confirm_recurring, width: "500px", position: "middle", buttons: [_.labels.button_edit_series, _.labels.button_edit_occurrence, _.labels.icon_cancel], callback: function(v) {
|
|
7632
|
+
switch (+v) {
|
|
7643
7633
|
case 0:
|
|
7644
7634
|
return c(r);
|
|
7645
7635
|
case 1:
|
|
@@ -7690,48 +7680,48 @@ const lt = { active_links: function(e) {
|
|
|
7690
7680
|
s[c] = 1 * s[c] || 7;
|
|
7691
7681
|
s.sort();
|
|
7692
7682
|
}
|
|
7693
|
-
this.date[_] = function(u,
|
|
7694
|
-
var
|
|
7695
|
-
return
|
|
7696
|
-
}, this.date[t] = function(u,
|
|
7697
|
-
var
|
|
7683
|
+
this.date[_] = function(u, v) {
|
|
7684
|
+
var m = Math.floor((v.valueOf() - u.valueOf()) / (864e5 * r));
|
|
7685
|
+
return m > 0 && u.setDate(u.getDate() + m * r), s && e.transpose_day_week(u, s, 1, r), u;
|
|
7686
|
+
}, this.date[t] = function(u, v) {
|
|
7687
|
+
var m = new Date(u.valueOf());
|
|
7698
7688
|
if (s)
|
|
7699
|
-
for (var l = 0; l <
|
|
7700
|
-
e.transpose_day_week(
|
|
7689
|
+
for (var l = 0; l < v; l++)
|
|
7690
|
+
e.transpose_day_week(m, s, 0, r);
|
|
7701
7691
|
else
|
|
7702
|
-
|
|
7703
|
-
return
|
|
7692
|
+
m.setDate(m.getDate() + v * r);
|
|
7693
|
+
return m;
|
|
7704
7694
|
};
|
|
7705
7695
|
} else
|
|
7706
|
-
o[0] != "month" && o[0] != "year" || (this.date[_] = function(u,
|
|
7707
|
-
var l = Math.ceil((12 *
|
|
7708
|
-
return l >= 0 && (u.setDate(1), u.setMonth(u.getMonth() + l * r)), e.date[t](u, 0,
|
|
7709
|
-
}, this.date[t] = function(u,
|
|
7696
|
+
o[0] != "month" && o[0] != "year" || (this.date[_] = function(u, v, m) {
|
|
7697
|
+
var l = Math.ceil((12 * v.getFullYear() + 1 * v.getMonth() + 1 - (12 * u.getFullYear() + 1 * u.getMonth() + 1)) / r - 1);
|
|
7698
|
+
return l >= 0 && (u.setDate(1), u.setMonth(u.getMonth() + l * r)), e.date[t](u, 0, m);
|
|
7699
|
+
}, this.date[t] = function(u, v, m, l) {
|
|
7710
7700
|
if (l ? l++ : l = 1, l > 12)
|
|
7711
7701
|
return null;
|
|
7712
7702
|
var f = new Date(u.valueOf());
|
|
7713
|
-
f.setDate(1), f.setMonth(f.getMonth() +
|
|
7703
|
+
f.setDate(1), f.setMonth(f.getMonth() + v * r);
|
|
7714
7704
|
var g = f.getMonth(), p = f.getFullYear();
|
|
7715
|
-
f.setDate(
|
|
7705
|
+
f.setDate(m.start_date.getDate()), o[3] && e.date.day_week(f, o[2], o[3]);
|
|
7716
7706
|
var y = e.config.recurring_overflow_instances;
|
|
7717
|
-
return f.getMonth() != g && y != "none" && (f = y === "lastDay" ? new Date(p, g + 1, 0, f.getHours(), f.getMinutes(), f.getSeconds(), f.getMilliseconds()) : e.date[t](new Date(p, g + 1, 0),
|
|
7707
|
+
return f.getMonth() != g && y != "none" && (f = y === "lastDay" ? new Date(p, g + 1, 0, f.getHours(), f.getMinutes(), f.getSeconds(), f.getMilliseconds()) : e.date[t](new Date(p, g + 1, 0), v || 1, m, l)), f;
|
|
7718
7708
|
});
|
|
7719
7709
|
}
|
|
7720
7710
|
}, e.repeat_date = function(n, _, o, t, r, s) {
|
|
7721
7711
|
t = t || this._min_date, r = r || this._max_date;
|
|
7722
|
-
var c = s || -1, u = new Date(n.start_date.valueOf()),
|
|
7712
|
+
var c = s || -1, u = new Date(n.start_date.valueOf()), v = u.getHours(), m = 0;
|
|
7723
7713
|
for (!n.rec_pattern && n.rec_type && (n.rec_pattern = n.rec_type.split("#")[0]), this.transpose_type(n.rec_pattern), u = e.date["transpose_" + n.rec_pattern](u, t, n); u && (u < n.start_date || e._fix_daylight_saving_date(u, t, n, u, new Date(u.valueOf() + 1e3 * n.event_length)).valueOf() <= t.valueOf() || u.valueOf() + 1e3 * n.event_length <= t.valueOf()); )
|
|
7724
7714
|
u = this.date["add_" + n.rec_pattern](u, 1, n);
|
|
7725
|
-
for (; u && u < r && u < n.end_date && (c < 0 ||
|
|
7726
|
-
u.setHours(
|
|
7715
|
+
for (; u && u < r && u < n.end_date && (c < 0 || m < c); ) {
|
|
7716
|
+
u.setHours(v);
|
|
7727
7717
|
var l = e.config.occurrence_timestamp_in_utc ? Date.UTC(u.getFullYear(), u.getMonth(), u.getDate(), u.getHours(), u.getMinutes(), u.getSeconds()) : u.valueOf(), f = this._get_rec_marker(l, n.id);
|
|
7728
7718
|
if (f)
|
|
7729
|
-
o && (f.rec_type != "none" &&
|
|
7719
|
+
o && (f.rec_type != "none" && m++, _.push(f));
|
|
7730
7720
|
else {
|
|
7731
7721
|
var g = new Date(u.valueOf() + 1e3 * n.event_length), p = this._copy_event(n);
|
|
7732
7722
|
if (p.text = n.text, p.start_date = u, p.event_pid = n.id, p.id = n.id + "#" + Math.round(l / 1e3), p.end_date = g, p.end_date = e._fix_daylight_saving_date(p.start_date, p.end_date, n, u, p.end_date), p._timed = this.isOneDayEvent(p), !p._timed && !this._table_view && !this.config.multi_day)
|
|
7733
7723
|
return;
|
|
7734
|
-
_.push(p), o || (this._events[p.id] = p, this._rec_temp.push(p)),
|
|
7724
|
+
_.push(p), o || (this._events[p.id] = p, this._rec_temp.push(p)), m++;
|
|
7735
7725
|
}
|
|
7736
7726
|
u = this.date["add_" + n.rec_pattern](u, 1, n);
|
|
7737
7727
|
}
|
|
@@ -7883,8 +7873,8 @@ END:VCALENDAR`;
|
|
|
7883
7873
|
}
|
|
7884
7874
|
var u = ["date=" + i(r || o), "mode=" + (t || _)];
|
|
7885
7875
|
d && u.push("event=" + d);
|
|
7886
|
-
var
|
|
7887
|
-
return document.location.hash =
|
|
7876
|
+
var v = "#" + u.join(",");
|
|
7877
|
+
return document.location.hash = v, !0;
|
|
7888
7878
|
});
|
|
7889
7879
|
});
|
|
7890
7880
|
}, week_agenda: function(e) {
|
|
@@ -7956,14 +7946,14 @@ END:VCALENDAR`;
|
|
|
7956
7946
|
}
|
|
7957
7947
|
});
|
|
7958
7948
|
}
|
|
7959
|
-
for (var u = this.getEvents(o, this.date.add(o, 1, "day")),
|
|
7960
|
-
var l = u[
|
|
7949
|
+
for (var u = this.getEvents(o, this.date.add(o, 1, "day")), v = "", m = 0; m < u.length; m++) {
|
|
7950
|
+
var l = u[m];
|
|
7961
7951
|
if (this.filter_event(l.id, l)) {
|
|
7962
7952
|
var f = l.color ? "--dhx-scheduler-event-background:" + l.color + ";" : "", g = l.textColor ? "--dhx-scheduler-event-color:" + l.textColor + ";" : "";
|
|
7963
|
-
|
|
7953
|
+
v += "<div class='dhx_tooltip_line' style='" + f + g + "' event_id='" + u[m].id + "' " + this.config.event_attribute + "='" + u[m].id + "'>", v += "<div class='dhx_tooltip_date' style='" + f + g + "'>" + (u[m]._timed ? this.templates.event_date(u[m].start_date) : "") + "</div>", v += "<div class='dhx_event_icon icon_details'> </div>", v += this.templates.year_tooltip(u[m].start_date, u[m].end_date, u[m]) + "</div>";
|
|
7964
7954
|
}
|
|
7965
7955
|
}
|
|
7966
|
-
this._tooltip.style.display = "", this._tooltip.style.top = "0px", document.body.offsetWidth - t.left - this._tooltip.offsetWidth < 0 ? this._tooltip.style.left = t.left - this._tooltip.offsetWidth + "px" : this._tooltip.style.left = t.left + s.offsetWidth + "px", this._tooltip.date = o, this._tooltip.innerHTML =
|
|
7956
|
+
this._tooltip.style.display = "", this._tooltip.style.top = "0px", document.body.offsetWidth - t.left - this._tooltip.offsetWidth < 0 ? this._tooltip.style.left = t.left - this._tooltip.offsetWidth + "px" : this._tooltip.style.left = t.left + s.offsetWidth + "px", this._tooltip.date = o, this._tooltip.innerHTML = v, document.body.offsetHeight - t.top - this._tooltip.offsetHeight < 0 ? this._tooltip.style.top = t.top - this._tooltip.offsetHeight + s.offsetHeight + "px" : this._tooltip.style.top = t.top + "px";
|
|
7967
7957
|
}, e._year_view_tooltip_handler = function(o) {
|
|
7968
7958
|
if (h()) {
|
|
7969
7959
|
var t = o.target || o.srcElement;
|
|
@@ -8001,36 +7991,29 @@ END:VCALENDAR`;
|
|
|
8001
7991
|
}, e._reset_year_scale = function() {
|
|
8002
7992
|
this._cols = [], this._colsS = {};
|
|
8003
7993
|
var o = [], t = this._els.dhx_cal_data[0], r = this.config;
|
|
8004
|
-
t.scrollTop = 0, t.innerHTML = "";
|
|
8005
|
-
var s =
|
|
8006
|
-
|
|
8007
|
-
var u =
|
|
8008
|
-
|
|
8009
|
-
for (
|
|
8010
|
-
this.
|
|
8011
|
-
|
|
8012
|
-
|
|
8013
|
-
|
|
8014
|
-
|
|
8015
|
-
|
|
8016
|
-
|
|
8017
|
-
|
|
8018
|
-
var
|
|
8019
|
-
this.
|
|
8020
|
-
var
|
|
8021
|
-
|
|
8022
|
-
|
|
8023
|
-
|
|
8024
|
-
|
|
8025
|
-
|
|
8026
|
-
|
|
8027
|
-
g.style.marginTop = M + "px", this.set_xy(g, s - 10, c - M - 10, s * y + 5, c * v + 5 + e.xy.year_top);
|
|
8028
|
-
}
|
|
8029
|
-
o[v * r.year_x + y] = (l.getDay() - (this.config.start_on_monday ? 1 : 0) + 7) % 7, l = this.date.add(l, 1, "month");
|
|
8030
|
-
}
|
|
8031
|
-
t.appendChild(p);
|
|
8032
|
-
var A = this._getNavDateElement();
|
|
8033
|
-
A && (A.innerHTML = this.templates[this._mode + "_date"](f, l, this._mode)), this.week_starts = o, o._month = f.getMonth(), this._min_date = f, this._max_date = l;
|
|
7994
|
+
t.scrollTop = 0, t.innerHTML = "", Math.floor((parseInt(t.style.height) - e.xy.year_top) / r.year_y);
|
|
7995
|
+
var s = document.createElement("div"), c = this.date.week_start(e._currentDate());
|
|
7996
|
+
this._process_ignores(c, 7, "day", 1);
|
|
7997
|
+
for (var u = 0; u < 7; u++)
|
|
7998
|
+
this._ignores && this._ignores[u] || (this._cols[u] = "var(--dhx-scheduler-datepicker-cell-size)", this._render_x_header(u, 0, c, s)), c = this.date.add(c, 1, "day");
|
|
7999
|
+
for (s.lastChild.className += " dhx_scale_bar_last", u = 0; u < s.childNodes.length; u++)
|
|
8000
|
+
this._waiAria.yearHeadCell(s.childNodes[u]);
|
|
8001
|
+
var v = this.date[this._mode + "_start"](this.date.copy(this._date)), m = v, l = null;
|
|
8002
|
+
const f = document.createElement("div");
|
|
8003
|
+
for (f.classList.add("dhx_year_wrapper"), u = 0; u < r.year_y; u++)
|
|
8004
|
+
for (var g = 0; g < r.year_x; g++) {
|
|
8005
|
+
(l = document.createElement("div")).className = "dhx_year_box", l.setAttribute("date", this._helpers.formatDate(v)), l.setAttribute("data-month-date", this._helpers.formatDate(v)), l.innerHTML = "<div class='dhx_year_month'></div><div class='dhx_year_grid'><div class='dhx_year_week'>" + s.innerHTML + "</div><div class='dhx_year_body'></div></div>";
|
|
8006
|
+
var p = l.querySelector(".dhx_year_month"), y = l.querySelector(".dhx_year_grid"), w = l.querySelector(".dhx_year_body"), b = e.uid();
|
|
8007
|
+
this._waiAria.yearHeader(p, b), this._waiAria.yearGrid(y, b), p.innerHTML = this.templates.year_month(v);
|
|
8008
|
+
var k = this.date.week_start(v);
|
|
8009
|
+
this._reset_month_scale(w, v, k, 6);
|
|
8010
|
+
for (var E = w.querySelectorAll("td"), D = 0; D < E.length; D++)
|
|
8011
|
+
this._waiAria.yearDayCell(E[D]);
|
|
8012
|
+
f.appendChild(l), o[u * r.year_x + g] = (v.getDay() - (this.config.start_on_monday ? 1 : 0) + 7) % 7, v = this.date.add(v, 1, "month");
|
|
8013
|
+
}
|
|
8014
|
+
t.appendChild(f);
|
|
8015
|
+
var x = this._getNavDateElement();
|
|
8016
|
+
x && (x.innerHTML = this.templates[this._mode + "_date"](m, v, this._mode)), this.week_starts = o, o._month = m.getMonth(), this._min_date = m, this._max_date = v;
|
|
8034
8017
|
}, e._reset_year_scale = function() {
|
|
8035
8018
|
var o = this._els.dhx_cal_data[0];
|
|
8036
8019
|
o.scrollTop = 0, o.innerHTML = "";
|
|
@@ -8039,12 +8022,12 @@ END:VCALENDAR`;
|
|
|
8039
8022
|
const r = document.createElement("div");
|
|
8040
8023
|
r.classList.add("dhx_year_wrapper");
|
|
8041
8024
|
let s = t;
|
|
8042
|
-
for (let
|
|
8043
|
-
let
|
|
8044
|
-
|
|
8025
|
+
for (let v = 0; v < 12; v++) {
|
|
8026
|
+
let m = document.createElement("div");
|
|
8027
|
+
m.className = "dhx_year_box", m.setAttribute("date", this._helpers.formatDate(s)), m.setAttribute("data-month-date", this._helpers.formatDate(s)), m.innerHTML = `<div class='dhx_year_month'>${this.templates.year_month(s)}</div>
|
|
8045
8028
|
<div class='dhx_year_grid'></div>`;
|
|
8046
|
-
const l =
|
|
8047
|
-
f._renderDayGrid(l), f.destructor(), r.appendChild(
|
|
8029
|
+
const l = m.querySelector(".dhx_year_grid"), f = e._createDatePicker(null, { date: s, minWeeks: 6 });
|
|
8030
|
+
f._renderDayGrid(l), f.destructor(), r.appendChild(m), s = this.date.add(s, 1, "month");
|
|
8048
8031
|
}
|
|
8049
8032
|
o.appendChild(r);
|
|
8050
8033
|
let c = this.date.add(t, 1, "year");
|