(e)
| 115 | }); |
| 116 | } |
| 117 | function Nt(e) { |
| 118 | e.config.mark_now = !0, e.config.display_marked_timespans = !0, e.config.overwrite_marked_timespans = !0; |
| 119 | var i = "dhx_time_block", t = "default", n = function(a, o, _) { |
| 120 | var r = typeof a == "object" ? a : { days: a }; |
| 121 | return r.type = i, r.css = "", o && (_ && (r.sections = _), r = function(d, l, h) { |
| 122 | return l instanceof Date && h instanceof Date ? (d.start_date = l, d.end_date = h) : (d.days = l, d.zones = h), d; |
| 123 | }(r, a, o)), r; |
| 124 | }; |
| 125 | function s(a, o, _, r, d) { |
| 126 | var l = e, h = [], p = { _props: "map_to", matrix: "y_property" }; |
| 127 | for (var m in p) { |
| 128 | var g = p[m]; |
| 129 | if (l[m]) |
| 130 | for (var c in l[m]) { |
| 131 | var u = l[m][c][g]; |
| 132 | a[u] && (h = l._add_timespan_zones(h, e._get_blocked_zones(o[c], a[u], _, r, d))); |
| 133 | } |
| 134 | } |
| 135 | return h = l._add_timespan_zones(h, e._get_blocked_zones(o, "global", _, r, d)); |
| 136 | } |
| 137 | e.blockTime = function(a, o, _) { |
| 138 | var r = n(a, o, _); |
| 139 | return e.addMarkedTimespan(r); |
| 140 | }, e.unblockTime = function(a, o, _) { |
| 141 | var r = n(a, o = o || "fullday", _); |
| 142 | return e.deleteMarkedTimespan(r); |
| 143 | }, e.checkInMarkedTimespan = function(a, o, _) { |
| 144 | o = o || t; |
| 145 | for (var r = !0, d = new Date(a.start_date.valueOf()), l = e.date.add(d, 1, "day"), h = e._marked_timespans; d < a.end_date; d = e.date.date_part(l), l = e.date.add(d, 1, "day")) { |
| 146 | var p = +e.date.date_part(new Date(d)), m = s(a, h, d.getDay(), p, o); |
| 147 | if (m) |
| 148 | for (var g = 0; g < m.length; g += 2) { |
| 149 | var c = e._get_zone_minutes(d), u = a.end_date > l || a.end_date.getDate() != d.getDate() ? 1440 : e._get_zone_minutes(a.end_date), f = m[g], y = m[g + 1]; |
| 150 | if (f < u && y > c && !(r = typeof _ == "function" && _(a, c, u, f, y))) |
| 151 | break; |
| 152 | } |
| 153 | } |
| 154 | return !r; |
| 155 | }, e.checkLimitViolation = function(a) { |
| 156 | if (!a || !e.config.check_limits) |
| 157 | return !0; |
| 158 | var o = e, _ = o.config, r = []; |
| 159 | if (a.rec_type && a._end_date || a.rrule) { |
| 160 | const m = a._end_date || a.end_date; |
| 161 | return !_.limit_start || !_.limit_end || m.valueOf() >= _.limit_start.valueOf() && a.start_date.valueOf() <= _.limit_end.valueOf(); |
| 162 | } |
| 163 | r = [a]; |
| 164 | for (var d = !0, l = 0; l < r.length; l++) { |
| 165 | var h = !0, p = r[l]; |
| 166 | p._timed = e.isOneDayEvent(p), (h = !_.limit_start || !_.limit_end || p.start_date.valueOf() >= _.limit_start.valueOf() && p.end_date.valueOf() <= _.limit_end.valueOf()) && (h = !e.checkInMarkedTimespan(p, i, function(m, g, c, u, f) { |
| 167 | var y = !0; |
| 168 | return g <= f && g >= u && ((f == 1440 || c <= f) && (y = !1), m._timed && o._drag_id && o._drag_mode == "new-size" ? (m.start_date.setHours(0), m.start_date.setMinutes(f)) : y = !1), (c >= u && c <= f || g < u && c > f) && (m._timed && o._drag_id && o._drag_mode == "new-size" ? (m.end_date.setHours(0), m.end_date.setMinutes(u)) : y = !1), y; |
| 169 | })), h || (h = o.checkEvent("onLimitViolation") ? o.callEvent("onLimitViolation", [p.id, p]) : h), d = d && h; |
| 170 | } |
| 171 | return d || (o._drag_id = null, o._drag_mode = null), d; |
| 172 | }, e._get_blocked_zones = function(a, o, _, r, d) { |
| 173 | var l = []; |
| 174 | if (a && a[o]) |
no test coverage detected