summaryrefslogtreecommitdiffstats
path: root/codebase/ext
diff options
context:
space:
mode:
authorAlexKlimenkov <shurick.klimenkov@gmail.com>2017-01-31 18:38:36 +0300
committerAlexKlimenkov <shurick.klimenkov@gmail.com>2017-01-31 18:38:36 +0300
commitae92cf850550a9be965db867ba4bfb5651a18e5f (patch)
treebbf70ce45cc6e608def6e9a81570febe4528208b /codebase/ext
parent2e509c1f562c4f471d766c9b3532370f847f0839 (diff)
downloadscheduler-ae92cf850550a9be965db867ba4bfb5651a18e5f.zip
scheduler-ae92cf850550a9be965db867ba4bfb5651a18e5f.tar.gz
scheduler-ae92cf850550a9be965db867ba4bfb5651a18e5f.tar.bz2
[update] version 4.4.0
Diffstat (limited to 'codebase/ext')
-rw-r--r--codebase/ext/dhtmlxscheduler_active_links.js7
-rw-r--r--codebase/ext/dhtmlxscheduler_agenda_view.js17
-rw-r--r--codebase/ext/dhtmlxscheduler_all_timed.js12
-rw-r--r--codebase/ext/dhtmlxscheduler_collision.js12
-rw-r--r--codebase/ext/dhtmlxscheduler_container_autoresize.js22
-rw-r--r--codebase/ext/dhtmlxscheduler_cookie.js9
-rw-r--r--codebase/ext/dhtmlxscheduler_csp.js15
-rw-r--r--codebase/ext/dhtmlxscheduler_editors.js17
-rw-r--r--codebase/ext/dhtmlxscheduler_expand.js2
-rw-r--r--codebase/ext/dhtmlxscheduler_html_templates.js4
-rw-r--r--codebase/ext/dhtmlxscheduler_key_nav.js91
-rw-r--r--codebase/ext/dhtmlxscheduler_layer.js37
-rw-r--r--codebase/ext/dhtmlxscheduler_limit.js69
-rw-r--r--codebase/ext/dhtmlxscheduler_map_view.js39
-rw-r--r--codebase/ext/dhtmlxscheduler_minical.js51
-rw-r--r--codebase/ext/dhtmlxscheduler_monthheight.js4
-rw-r--r--codebase/ext/dhtmlxscheduler_multiselect.js9
-rw-r--r--codebase/ext/dhtmlxscheduler_multisource.js4
-rw-r--r--codebase/ext/dhtmlxscheduler_mvc.js12
-rw-r--r--codebase/ext/dhtmlxscheduler_offline.js9
-rw-r--r--codebase/ext/dhtmlxscheduler_outerdrag.js9
-rw-r--r--codebase/ext/dhtmlxscheduler_pdf.js40
-rw-r--r--codebase/ext/dhtmlxscheduler_quick_info.js20
-rw-r--r--codebase/ext/dhtmlxscheduler_readonly.js15
-rw-r--r--codebase/ext/dhtmlxscheduler_recurring.js79
-rw-r--r--codebase/ext/dhtmlxscheduler_serialize.js10
-rw-r--r--codebase/ext/dhtmlxscheduler_tooltip.js21
-rw-r--r--codebase/ext/dhtmlxscheduler_url.js6
-rw-r--r--codebase/ext/dhtmlxscheduler_wp.js4
-rw-r--r--codebase/ext/dhtmlxscheduler_year_view.js42
30 files changed, 345 insertions, 343 deletions
diff --git a/codebase/ext/dhtmlxscheduler_active_links.js b/codebase/ext/dhtmlxscheduler_active_links.js
index 3e957e7..1b435f9 100644
--- a/codebase/ext/dhtmlxscheduler_active_links.js
+++ b/codebase/ext/dhtmlxscheduler_active_links.js
@@ -1,12 +1,11 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.config.active_link_view="day",scheduler._active_link_click=function(e){var t=e.target||event.srcElement,i=t.getAttribute("jump_to"),s=scheduler.date.str_to_date(scheduler.config.api_date);return i?(scheduler.setCurrentView(s(i),scheduler.config.active_link_view),e&&e.preventDefault&&e.preventDefault(),!1):void 0},scheduler.attachEvent("onTemplatesReady",function(){var e=function(e,t){t=t||e+"_scale_date",scheduler.templates["_active_links_old_"+t]||(scheduler.templates["_active_links_old_"+t]=scheduler.templates[t]);
-
-var i=scheduler.templates["_active_links_old_"+t],s=scheduler.date.date_to_str(scheduler.config.api_date);scheduler.templates[t]=function(e){return"<a jump_to='"+s(e)+"' href='#'>"+i(e)+"</a>"}};if(e("week"),e("","month_day"),this.matrix)for(var t in this.matrix)e(t);this._detachDomEvent(this._obj,"click",scheduler._active_link_click),dhtmlxEvent(this._obj,"click",scheduler._active_link_click)});
+scheduler.config.active_link_view="day",scheduler._active_link_click=function(e){var t=e.target||event.srcElement,c=t.getAttribute("jump_to"),i=scheduler.date.str_to_date(scheduler.config.api_date);return c?(scheduler.setCurrentView(i(c),scheduler.config.active_link_view),e&&e.preventDefault&&e.preventDefault(),!1):void 0},scheduler.attachEvent("onTemplatesReady",function(){var e=function(e,t){t=t||e+"_scale_date",scheduler.templates["_active_links_old_"+t]||(scheduler.templates["_active_links_old_"+t]=scheduler.templates[t]);
+var c=scheduler.templates["_active_links_old_"+t],i=scheduler.date.date_to_str(scheduler.config.api_date);scheduler.templates[t]=function(e){return"<a jump_to='"+i(e)+"' href='#'>"+c(e)+"</a>"}};if(e("week"),e("","month_day"),this.matrix)for(var t in this.matrix)e(t);this._detachDomEvent(this._obj,"click",scheduler._active_link_click),dhtmlxEvent(this._obj,"click",scheduler._active_link_click)});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_active_links.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_agenda_view.js b/codebase/ext/dhtmlxscheduler_agenda_view.js
index fc635e7..46c457a 100644
--- a/codebase/ext/dhtmlxscheduler_agenda_view.js
+++ b/codebase/ext/dhtmlxscheduler_agenda_view.js
@@ -1,17 +1,16 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.date.add_agenda=function(e){return scheduler.date.add(e,1,"year")},scheduler.templates.agenda_time=function(e,t,s){return s._timed?this.day_date(s.start_date,s.end_date,s)+" "+this.event_date(e):scheduler.templates.day_date(e)+" &ndash; "+scheduler.templates.day_date(t)},scheduler.templates.agenda_text=function(e,t,s){return s.text},scheduler.templates.agenda_date=function(){return""},scheduler.date.agenda_start=function(){return scheduler.date.date_part(scheduler._currentDate())},scheduler.attachEvent("onTemplatesReady",function(){
-function e(e){if(e){var t=scheduler.locale.labels;scheduler._els.dhx_cal_header[0].innerHTML="<div class='dhx_agenda_line'><div>"+t.date+"</div><span style='padding-left:25px'>"+t.description+"</span></div>",scheduler._table_view=!0,scheduler.set_sizes()}}function t(){var e=(scheduler._date,scheduler.get_visible_events());e.sort(function(e,t){return e.start_date>t.start_date?1:-1});for(var t="<div class='dhx_agenda_area'>",s=0;s<e.length;s++){var i=e[s],a=i.color?"background:"+i.color+";":"",r=i.textColor?"color:"+i.textColor+";":"",n=scheduler.templates.event_class(i.start_date,i.end_date,i);
-
-t+="<div class='dhx_agenda_line"+(n?" "+n:"")+"' event_id='"+i.id+"' style='"+r+a+(i._text_style||"")+"'><div class='dhx_agenda_event_time'>"+scheduler.templates.agenda_time(i.start_date,i.end_date,i)+"</div>",t+="<div class='dhx_event_icon icon_details'>&nbsp</div>",t+="<span>"+scheduler.templates.agenda_text(i.start_date,i.end_date,i)+"</span></div>"}t+="<div class='dhx_v_border'></div></div>",scheduler._els.dhx_cal_data[0].innerHTML=t,scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop=scheduler._agendaScrollTop||0;
-
-var d=scheduler._els.dhx_cal_data[0].childNodes[0],o=d.childNodes[d.childNodes.length-1];o.style.height=d.offsetHeight<scheduler._els.dhx_cal_data[0].offsetHeight?"100%":d.offsetHeight+"px";var l=scheduler._els.dhx_cal_data[0].firstChild.childNodes;scheduler._els.dhx_cal_date[0].innerHTML=scheduler.templates.agenda_date(scheduler._min_date,scheduler._max_date,scheduler._mode),scheduler._rendered=[];for(var s=0;s<l.length-1;s++)scheduler._rendered[s]=l[s]}var s=scheduler.dblclick_dhx_cal_data;scheduler.dblclick_dhx_cal_data=function(){
-if("agenda"==this._mode)!this.config.readonly&&this.config.dblclick_create&&this.addEventNow();else if(s)return s.apply(this,arguments)},scheduler.attachEvent("onSchedulerResize",function(){return"agenda"==this._mode?(this.agenda_view(!0),!1):!0});var i=scheduler.render_data;scheduler.render_data=function(e){return"agenda"!=this._mode?i.apply(this,arguments):void t()};var a=scheduler.render_view_data;scheduler.render_view_data=function(){return"agenda"==this._mode&&(scheduler._agendaScrollTop=scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop,
-scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop=0),a.apply(this,arguments)},scheduler.agenda_view=function(s){scheduler._min_date=scheduler.config.agenda_start||scheduler.date.agenda_start(scheduler._date),scheduler._max_date=scheduler.config.agenda_end||scheduler.date.add_agenda(scheduler._min_date,1),scheduler._table_view=!0,e(s),s&&t()}});
+scheduler.date.add_agenda=function(e){return scheduler.date.add(e,1,"year")},scheduler.templates.agenda_time=function(e,t,i){return i._timed?this.day_date(i.start_date,i.end_date,i)+" "+this.event_date(e):scheduler.templates.day_date(e)+" &ndash; "+scheduler.templates.day_date(t)},scheduler.templates.agenda_text=function(e,t,i){return i.text},scheduler.templates.agenda_date=function(){return""},scheduler.date.agenda_start=function(){return scheduler.date.date_part(scheduler._currentDate())},scheduler.attachEvent("onTemplatesReady",function(){
+function e(e){if(e){var t=scheduler.locale.labels,i=scheduler._waiAria.agendaHeadAttrString(),a=scheduler._waiAria.agendaHeadDateString(t.date),r=scheduler._waiAria.agendaHeadDescriptionString(t.description);scheduler._els.dhx_cal_header[0].innerHTML="<div "+i+" class='dhx_agenda_line'><div "+a+">"+t.date+"</div><span style='padding-left:25px' "+r+">"+t.description+"</span></div>",scheduler._table_view=!0,scheduler.set_sizes()}}function t(){var e=(scheduler._date,scheduler.get_visible_events());e.sort(function(e,t){
+return e.start_date>t.start_date?1:-1});for(var t,i=scheduler._waiAria.agendaDataAttrString(),a="<div class='dhx_agenda_area' "+i+">",r=0;r<e.length;r++){var s=e[r],n=s.color?"background:"+s.color+";":"",d=s.textColor?"color:"+s.textColor+";":"",l=scheduler.templates.event_class(s.start_date,s.end_date,s);t=scheduler._waiAria.agendaEventAttrString(s);var o=scheduler._waiAria.agendaDetailsBtnString();a+="<div "+t+" class='dhx_agenda_line"+(l?" "+l:"")+"' event_id='"+s.id+"' style='"+d+n+(s._text_style||"")+"'><div class='dhx_agenda_event_time'>"+scheduler.templates.agenda_time(s.start_date,s.end_date,s)+"</div>",
+a+="<div "+o+" class='dhx_event_icon icon_details'>&nbsp</div>",a+="<span>"+scheduler.templates.agenda_text(s.start_date,s.end_date,s)+"</span></div>"}a+="<div class='dhx_v_border'></div></div>",scheduler._els.dhx_cal_data[0].innerHTML=a,scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop=scheduler._agendaScrollTop||0;var h=scheduler._els.dhx_cal_data[0].childNodes[0],_=h.childNodes[h.childNodes.length-1];_.style.height=h.offsetHeight<scheduler._els.dhx_cal_data[0].offsetHeight?"100%":h.offsetHeight+"px";
+var c=scheduler._els.dhx_cal_data[0].firstChild.childNodes;scheduler._els.dhx_cal_date[0].innerHTML=scheduler.templates.agenda_date(scheduler._min_date,scheduler._max_date,scheduler._mode),scheduler._rendered=[];for(var r=0;r<c.length-1;r++)scheduler._rendered[r]=c[r]}var i=scheduler.dblclick_dhx_cal_data;scheduler.dblclick_dhx_cal_data=function(){if("agenda"==this._mode)!this.config.readonly&&this.config.dblclick_create&&this.addEventNow();else if(i)return i.apply(this,arguments)},scheduler.attachEvent("onSchedulerResize",function(){
+return"agenda"==this._mode?(this.agenda_view(!0),!1):!0});var a=scheduler.render_data;scheduler.render_data=function(e){return"agenda"!=this._mode?a.apply(this,arguments):void t()};var r=scheduler.render_view_data;scheduler.render_view_data=function(){return"agenda"==this._mode&&(scheduler._agendaScrollTop=scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop,scheduler._els.dhx_cal_data[0].childNodes[0].scrollTop=0),r.apply(this,arguments)},scheduler.agenda_view=function(i){scheduler._min_date=scheduler.config.agenda_start||scheduler.date.agenda_start(scheduler._date),
+scheduler._max_date=scheduler.config.agenda_end||scheduler.date.add_agenda(scheduler._min_date,1),e(i),i?(scheduler._cols=null,scheduler._colsS=null,scheduler._table_view=!0,t()):scheduler._table_view=!1}});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_agenda_view.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_all_timed.js b/codebase/ext/dhtmlxscheduler_all_timed.js
index 8fac02e..327bb83 100644
--- a/codebase/ext/dhtmlxscheduler_all_timed.js
+++ b/codebase/ext/dhtmlxscheduler_all_timed.js
@@ -1,18 +1,14 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-!function(){scheduler.config.all_timed="short";var e=function(e){return!((e.end_date-e.start_date)/36e5>=24)};scheduler._safe_copy=function(e){var t=null,a=null;return e.event_pid&&(t=scheduler.getEvent(e.event_pid)),t&&t.isPrototypeOf(e)?(a=scheduler._copy_event(e),delete a.event_length,delete a.event_pid,delete a.rec_pattern,delete a.rec_type):a=scheduler._lame_clone(e),a};var t=scheduler._pre_render_events_line;scheduler._pre_render_events_line=function(a,i){function n(e){var t=r(e.start_date);
-
-return+e.end_date>+t}function r(e){var t=scheduler.date.add(e,1,"day");return t=scheduler.date.date_part(t)}function l(e,t){var a=scheduler.date.date_part(new Date(e));return a.setHours(t),a}if(!this.config.all_timed)return t.call(this,a,i);for(var d=0;d<a.length;d++){var o=a[d];if(!o._timed)if("short"!=this.config.all_timed||e(o)){var s=this._safe_copy(o);s.start_date=new Date(s.start_date),n(o)?(s.end_date=r(s.start_date),24!=this.config.last_hour&&(s.end_date=l(s.start_date,this.config.last_hour))):s.end_date=new Date(o.end_date);
-
-var _=!1;s.start_date<this._max_date&&s.end_date>this._min_date&&s.start_date<s.end_date&&(a[d]=s,_=!0);var c=this._safe_copy(o);if(c.end_date=new Date(c.end_date),c.start_date<this._min_date?c.start_date=l(this._min_date,this.config.first_hour):c.start_date=l(r(o.start_date),this.config.first_hour),c.start_date<this._max_date&&c.start_date<c.end_date){if(!_){a[d--]=c;continue}a.splice(d+1,0,c)}}else a.splice(d--,1)}var u="move"==this._drag_mode?!1:i;return t.call(this,a,u)};var a=scheduler.get_visible_events;
-
+!function(){scheduler.config.all_timed="short";var e=function(e){return!((e.end_date-e.start_date)/36e5>=24)};scheduler._safe_copy=function(e){var t=null,a=scheduler._copy_event(e);return e.event_pid&&(t=scheduler.getEvent(e.event_pid)),t&&t.isPrototypeOf(e)&&(delete a.event_length,delete a.event_pid,delete a.rec_pattern,delete a.rec_type),a};var t=scheduler._pre_render_events_line;scheduler._pre_render_events_line=function(a,i){function r(e){var t=s(e.start_date);return+e.end_date>+t}function s(e){
+var t=scheduler.date.add(e,1,"day");return t=scheduler.date.date_part(t)}function n(e,t){var a=scheduler.date.date_part(new Date(e));return a.setHours(t),a}if(!this.config.all_timed)return t.call(this,a,i);for(var d=0;d<a.length;d++){var l=a[d];if(!l._timed)if("short"!=this.config.all_timed||e(l)){var o=this._safe_copy(l);o.start_date=new Date(o.start_date),r(l)?(o.end_date=s(o.start_date),24!=this.config.last_hour&&(o.end_date=n(o.start_date,this.config.last_hour))):o.end_date=new Date(l.end_date);
+var _=!1;o.start_date<this._max_date&&o.end_date>this._min_date&&o.start_date<o.end_date&&(a[d]=o,_=!0);var h=this._safe_copy(l);if(h.end_date=new Date(h.end_date),h.start_date<this._min_date?h.start_date=n(this._min_date,this.config.first_hour):h.start_date=n(s(l.start_date),this.config.first_hour),h.start_date<this._max_date&&h.start_date<h.end_date){if(!_){a[d--]=h;continue}a.splice(d+1,0,h)}}else a.splice(d--,1)}var c="move"==this._drag_mode?!1:i;return t.call(this,a,c)};var a=scheduler.get_visible_events;
scheduler.get_visible_events=function(e){return this.config.all_timed&&this.config.multi_day?a.call(this,!1):a.call(this,e)},scheduler.attachEvent("onBeforeViewChange",function(e,t,a,i){return scheduler._allow_dnd="day"==a||"week"==a,!0}),scheduler._is_main_area_event=function(t){return!!(t._timed||this.config.all_timed===!0||"short"==this.config.all_timed&&e(t))};var i=scheduler.updateEvent;scheduler.updateEvent=function(e){var t,a=scheduler.config.all_timed&&!(scheduler.isOneDayEvent(scheduler._events[e])||scheduler.getState().drag_id);
-
a&&(t=scheduler.config.update_render,scheduler.config.update_render=!0),i.apply(scheduler,arguments),a&&(scheduler.config.update_render=t)}}();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_all_timed.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_collision.js b/codebase/ext/dhtmlxscheduler_collision.js
index 056a4f9..3c8e8d9 100644
--- a/codebase/ext/dhtmlxscheduler_collision.js
+++ b/codebase/ext/dhtmlxscheduler_collision.js
@@ -1,15 +1,13 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-!function(){function e(e){var a=scheduler._get_section_view();a&&e&&(t=scheduler.getEvent(e)[scheduler._get_section_property()])}var t,a;scheduler.config.collision_limit=1,scheduler.attachEvent("onBeforeDrag",function(t){return e(t),!0}),scheduler.attachEvent("onBeforeLightbox",function(t){var i=scheduler.getEvent(t);return a=[i.start_date,i.end_date],e(t),!0}),scheduler.attachEvent("onEventChanged",function(e){if(!e||!scheduler.getEvent(e))return!0;var t=scheduler.getEvent(e);if(!scheduler.checkCollision(t)){
-if(!a)return!1;t.start_date=a[0],t.end_date=a[1],t._timed=this.isOneDayEvent(t)}return!0}),scheduler.attachEvent("onBeforeEventChanged",function(e,t,a){return scheduler.checkCollision(e)}),scheduler.attachEvent("onEventAdded",function(e,t){var a=scheduler.checkCollision(t);a||scheduler.deleteEvent(e)}),scheduler.attachEvent("onEventSave",function(e,t,a){if(t=scheduler._lame_clone(t),t.id=e,!t.start_date||!t.end_date){var i=scheduler.getEvent(e);t.start_date=new Date(i.start_date),t.end_date=new Date(i.end_date);
-
-}return t.rec_type&&scheduler._roll_back_dates(t),scheduler.checkCollision(t)}),scheduler._check_sections_collision=function(e,t){var a=scheduler._get_section_property();return e[a]==t[a]&&e.id!=t.id?!0:!1},scheduler.checkCollision=function(e){var a=[],i=scheduler.config.collision_limit;if(e.rec_type)for(var n=scheduler.getRecDates(e),r=0;r<n.length;r++)for(var l=scheduler.getEvents(n[r].start_date,n[r].end_date),d=0;d<l.length;d++)(l[d].event_pid||l[d].id)!=e.id&&a.push(l[d]);else{a=scheduler.getEvents(e.start_date,e.end_date);
-
-for(var o=0;o<a.length;o++)if(a[o].id==e.id){a.splice(o,1);break}}var s=scheduler._get_section_view(),_=scheduler._get_section_property(),c=!0;if(s){for(var u=0,o=0;o<a.length;o++)a[o].id!=e.id&&this._check_sections_collision(a[o],e)&&u++;u>=i&&(c=!1)}else a.length>=i&&(c=!1);if(!c){var h=!scheduler.callEvent("onEventCollision",[e,a]);return h||(e[_]=t||e[_]),h}return c}}();
+!function(){function e(e){var i=scheduler._get_section_view();i&&e&&(t=scheduler.getEvent(e)[scheduler._get_section_property()])}var t,i;scheduler.config.collision_limit=1,scheduler.attachEvent("onBeforeDrag",function(t){return e(t),!0}),scheduler.attachEvent("onBeforeLightbox",function(t){var a=scheduler.getEvent(t);return i=[a.start_date,a.end_date],e(t),!0}),scheduler.attachEvent("onEventChanged",function(e){if(!e||!scheduler.getEvent(e))return!0;var t=scheduler.getEvent(e);if(!scheduler.checkCollision(t)){
+if(!i)return!1;t.start_date=i[0],t.end_date=i[1],t._timed=this.isOneDayEvent(t)}return!0}),scheduler.attachEvent("onBeforeEventChanged",function(e,t,i){return scheduler.checkCollision(e)}),scheduler.attachEvent("onEventAdded",function(e,t){var i=scheduler.checkCollision(t);i||scheduler.deleteEvent(e)}),scheduler.attachEvent("onEventSave",function(e,t,i){if(t=scheduler._lame_clone(t),t.id=e,!t.start_date||!t.end_date){var a=scheduler.getEvent(e);t.start_date=new Date(a.start_date),t.end_date=new Date(a.end_date);
+}return t.rec_type&&scheduler._roll_back_dates(t),scheduler.checkCollision(t)}),scheduler._check_sections_collision=function(e,t){var i=scheduler._get_section_property();return e[i]==t[i]&&e.id!=t.id?!0:!1},scheduler.checkCollision=function(e){var i=[],a=scheduler.config.collision_limit;if(e.rec_type)for(var r=scheduler.getRecDates(e),s=0;s<r.length;s++)for(var n=scheduler.getEvents(r[s].start_date,r[s].end_date),d=0;d<n.length;d++)(n[d].event_pid||n[d].id)!=e.id&&i.push(n[d]);else{i=scheduler.getEvents(e.start_date,e.end_date);
+for(var l=0;l<i.length;l++)if(i[l].id==e.id){i.splice(l,1);break}}var o=scheduler._get_section_view(),h=scheduler._get_section_property(),_=!0;if(o){for(var c=0,l=0;l<i.length;l++)i[l].id!=e.id&&this._check_sections_collision(i[l],e)&&c++;c>=a&&(_=!1)}else i.length>=a&&(_=!1);if(!_){var u=!scheduler.callEvent("onEventCollision",[e,i]);return u||(e[h]=t||e[h]),u}return _}}();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_collision.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_container_autoresize.js b/codebase/ext/dhtmlxscheduler_container_autoresize.js
index af278ee..2d02ef9 100644
--- a/codebase/ext/dhtmlxscheduler_container_autoresize.js
+++ b/codebase/ext/dhtmlxscheduler_container_autoresize.js
@@ -1,20 +1,18 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-!function(){scheduler.config.container_autoresize=!0,scheduler.config.month_day_min_height=90;var e=scheduler._pre_render_events,t=!0;scheduler._pre_render_events=function(a,i){if(!scheduler.config.container_autoresize||!t)return e.apply(this,arguments);var n=this.xy.bar_height,l=this._colsS.heights,r=this._colsS.heights=[0,0,0,0,0,0,0],d=this._els.dhx_cal_data[0];if(a=this._table_view?this._pre_render_events_table(a,i):this._pre_render_events_line(a,i),this._table_view)if(i)this._colsS.heights=l;
-else{var o=d.firstChild;if(o.rows){for(var s=0;s<o.rows.length;s++){if(r[s]++,r[s]*n>this._colsS.height-this.xy.month_head_height){var _=o.rows[s].cells,c=this._colsS.height-this.xy.month_head_height;1*this.config.max_month_events!==this.config.max_month_events||r[s]<=this.config.max_month_events?c=r[s]*n:(this.config.max_month_events+1)*n>this._colsS.height-this.xy.month_head_height&&(c=(this.config.max_month_events+1)*n);for(var u=0;u<_.length;u++)_[u].childNodes[1].style.height=c+"px";r[s]=(r[s-1]||0)+_[0].offsetHeight;
-
-}r[s]=(r[s-1]||0)+o.rows[s].cells[0].offsetHeight}r.unshift(0),o.parentNode.offsetHeight<o.parentNode.scrollHeight&&!o._h_fix}else if(a.length||"visible"!=this._els.dhx_multi_day[0].style.visibility||(r[0]=-1),a.length||-1==r[0]){var h=(o.parentNode.childNodes,(r[0]+1)*n+1+"px");d.style.top=this._els.dhx_cal_navline[0].offsetHeight+this._els.dhx_cal_header[0].offsetHeight+parseInt(h,10)+"px",d.style.height=this._obj.offsetHeight-parseInt(d.style.top,10)-(this.xy.margin_top||0)+"px";var p=this._els.dhx_multi_day[0];
-
-p.style.height=h,p.style.visibility=-1==r[0]?"hidden":"visible",p=this._els.dhx_multi_day[1],p.style.height=h,p.style.visibility=-1==r[0]?"hidden":"visible",p.className=r[0]?"dhx_multi_day_icon":"dhx_multi_day_icon_small",this._dy_shift=(r[0]+1)*n,r[0]=0}}return a};var a=["dhx_cal_navline","dhx_cal_header","dhx_multi_day","dhx_cal_data"],i=function(e){for(var t=0,i=0;i<a.length;i++){var n=a[i],l=scheduler._els[n]?scheduler._els[n][0]:null,r=0;switch(n){case"dhx_cal_navline":case"dhx_cal_header":r=parseInt(l.style.height,10);
-
-break;case"dhx_multi_day":r=l?l.offsetHeight:0,1==r&&(r=0);break;case"dhx_cal_data":var d=scheduler.getState().mode;if(r=l.childNodes[1]&&"month"!=d?l.childNodes[1].offsetHeight:Math.max(l.offsetHeight-1,l.scrollHeight),"month"==d){if(scheduler.config.month_day_min_height&&!e){var o=l.getElementsByTagName("tr").length;r=o*scheduler.config.month_day_min_height}e&&(l.style.height=r+"px")}if(scheduler.matrix&&scheduler.matrix[d])if(e)r+=2,l.style.height=r+"px";else{r=2;for(var s=scheduler.matrix[d],_=s.y_unit,c=0;c<_.length;c++)r+=_[c].children?s.folder_dy||s.dy:s.dy;
-
-}("day"==d||"week"==d)&&(r+=2)}t+=r}scheduler._obj.style.height=t+"px",e||scheduler.updateView()},n=function(){if(!scheduler.config.container_autoresize||!t)return!0;var e=scheduler.getState().mode;i(),(scheduler.matrix&&scheduler.matrix[e]||"month"==e)&&window.setTimeout(function(){i(!0)},1)};scheduler.attachEvent("onViewChange",n),scheduler.attachEvent("onXLE",n),scheduler.attachEvent("onEventChanged",n),scheduler.attachEvent("onEventCreated",n),scheduler.attachEvent("onEventAdded",n),scheduler.attachEvent("onEventDeleted",n),
-scheduler.attachEvent("onAfterSchedulerResize",n),scheduler.attachEvent("onClearAll",n),scheduler.attachEvent("onBeforeExpand",function(){return t=!1,!0}),scheduler.attachEvent("onBeforeCollapse",function(){return t=!0,!0})}();
+!function(){scheduler.config.container_autoresize=!0,scheduler.config.month_day_min_height=90,scheduler.config.min_grid_size=25,scheduler.config.min_map_size=400;var e=scheduler._pre_render_events,t=!0,i=0,a=0;scheduler._pre_render_events=function(r,s){if(!scheduler.config.container_autoresize||!t)return e.apply(this,arguments);var n=this.xy.bar_height,d=this._colsS.heights,l=this._colsS.heights=[0,0,0,0,0,0,0],o=this._els.dhx_cal_data[0];if(r=this._table_view?this._pre_render_events_table(r,s):this._pre_render_events_line(r,s),
+this._table_view)if(s)this._colsS.heights=d;else{var h=o.firstChild;if(h.rows){for(var _=0;_<h.rows.length;_++){if(l[_]++,l[_]*n>this._colsS.height-this.xy.month_head_height){var c=h.rows[_].cells,u=this._colsS.height-this.xy.month_head_height;1*this.config.max_month_events!==this.config.max_month_events||l[_]<=this.config.max_month_events?u=l[_]*n:(this.config.max_month_events+1)*n>this._colsS.height-this.xy.month_head_height&&(u=(this.config.max_month_events+1)*n);for(var g=0;g<c.length;g++)c[g].childNodes[1].style.height=u+"px";
+l[_]=(l[_-1]||0)+c[0].offsetHeight}l[_]=(l[_-1]||0)+h.rows[_].cells[0].offsetHeight}l.unshift(0),h.parentNode.offsetHeight<h.parentNode.scrollHeight&&!h._h_fix}else if(r.length||"visible"!=this._els.dhx_multi_day[0].style.visibility||(l[0]=-1),r.length||-1==l[0]){var f=(h.parentNode.childNodes,(l[0]+1)*n+1);a!=f+1&&(this._obj.style.height=i-a+f-1+"px"),f+="px",o.style.top=this._els.dhx_cal_navline[0].offsetHeight+this._els.dhx_cal_header[0].offsetHeight+parseInt(f,10)+"px",o.style.height=this._obj.offsetHeight-parseInt(o.style.top,10)-(this.xy.margin_top||0)+"px";
+var v=this._els.dhx_multi_day[0];v.style.height=f,v.style.visibility=-1==l[0]?"hidden":"visible",v=this._els.dhx_multi_day[1],v.style.height=f,v.style.visibility=-1==l[0]?"hidden":"visible",v.className=l[0]?"dhx_multi_day_icon":"dhx_multi_day_icon_small",this._dy_shift=(l[0]+1)*n,l[0]=0}}return r};var r=["dhx_cal_navline","dhx_cal_header","dhx_multi_day","dhx_cal_data"],s=function(e){i=0;for(var t=0;t<r.length;t++){var s=r[t],n=scheduler._els[s]?scheduler._els[s][0]:null,d=0;switch(s){case"dhx_cal_navline":
+case"dhx_cal_header":d=parseInt(n.style.height,10);break;case"dhx_multi_day":d=n?n.offsetHeight-1:0,a=d;break;case"dhx_cal_data":var l=scheduler.getState().mode;if(d=n.childNodes[1]&&"month"!=l?n.childNodes[1].offsetHeight:Math.max(n.offsetHeight-1,n.scrollHeight),"month"==l){if(scheduler.config.month_day_min_height&&!e){var o=n.getElementsByTagName("tr").length;d=o*scheduler.config.month_day_min_height}e&&(n.style.height=d+"px")}else if("year"==l)d=190*scheduler.config.year_y;else if("agenda"==l){
+if(d=0,n.childNodes&&n.childNodes.length)for(var h=0;h<n.childNodes.length;h++)d+=n.childNodes[h].offsetHeight;d+2<scheduler.config.min_grid_size?d=scheduler.config.min_grid_size:d+=2}else if("week_agenda"==l){for(var _,c,u=scheduler.xy.week_agenda_scale_height+scheduler.config.min_grid_size,g=0;g<n.childNodes.length;g++){c=n.childNodes[g];for(var h=0;h<c.childNodes.length;h++){for(var f=0,v=c.childNodes[h].childNodes[1],m=0;m<v.childNodes.length;m++)f+=v.childNodes[m].offsetHeight;_=f+scheduler.xy.week_agenda_scale_height,
+_=1!=g||2!=h&&3!=h?_:2*_,_>u&&(u=_)}}d=3*u}else if("map"==l){d=0;for(var p=n.querySelectorAll(".dhx_map_line"),h=0;h<p.length;h++)d+=p[h].offsetHeight;d+2<scheduler.config.min_map_size?d=scheduler.config.min_map_size:d+=2}else if(scheduler._gridView)if(d=0,n.childNodes[1].childNodes[0].childNodes&&n.childNodes[1].childNodes[0].childNodes.length){for(var p=n.childNodes[1].childNodes[0].childNodes[0].childNodes,h=0;h<p.length;h++)d+=p[h].offsetHeight;d+=2,d<scheduler.config.min_grid_size&&(d=scheduler.config.min_grid_size);
+}else d=scheduler.config.min_grid_size;if(scheduler.matrix&&scheduler.matrix[l])if(e)d+=2,n.style.height=d+"px";else{d=2;for(var x=scheduler.matrix[l],b=x.y_unit,y=0;y<b.length;y++)d+=b[y].children?x.folder_dy||x.dy:x.dy}("day"==l||"week"==l||scheduler._props&&scheduler._props[l])&&(d+=2)}i+=d}scheduler._obj.style.height=i+"px",e||scheduler.updateView()},n=function(){if(!scheduler.config.container_autoresize||!t)return!0;var e=scheduler.getState().mode;s(),(scheduler.matrix&&scheduler.matrix[e]||"month"==e)&&window.setTimeout(function(){
+s(!0)},1)};scheduler.attachEvent("onViewChange",n),scheduler.attachEvent("onXLE",n),scheduler.attachEvent("onEventChanged",n),scheduler.attachEvent("onEventCreated",n),scheduler.attachEvent("onEventAdded",n),scheduler.attachEvent("onEventDeleted",n),scheduler.attachEvent("onAfterSchedulerResize",n),scheduler.attachEvent("onClearAll",n),scheduler.attachEvent("onBeforeExpand",function(){return t=!1,!0}),scheduler.attachEvent("onBeforeCollapse",function(){return t=!0,!0})}();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_container_autoresize.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_cookie.js b/codebase/ext/dhtmlxscheduler_cookie.js
index b0bfb40..ff6f4ec 100644
--- a/codebase/ext/dhtmlxscheduler_cookie.js
+++ b/codebase/ext/dhtmlxscheduler_cookie.js
@@ -1,13 +1,12 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-!function(){function e(e,t,a){var i=e+"="+a+(t?"; "+t:"");document.cookie=i}function t(e){var t=e+"=";if(document.cookie.length>0){var a=document.cookie.indexOf(t);if(-1!=a){a+=t.length;var i=document.cookie.indexOf(";",a);return-1==i&&(i=document.cookie.length),document.cookie.substring(a,i)}}return""}var a=!0;scheduler.attachEvent("onBeforeViewChange",function(i,n,l,r){if(a&&scheduler._get_url_nav){var d=scheduler._get_url_nav();(d.date||d.mode||d.event)&&(a=!1)}if(a){a=!1;var o=t("scheduler_settings");
-
-if(o){scheduler._min_date||(scheduler._min_date=r),o=unescape(o).split("@"),o[0]=this.templates.xml_date(o[0]);var s=this.isViewExists(o[1])?o[1]:l,_=isNaN(+o[0])?r:o[0];return window.setTimeout(function(){scheduler.setCurrentView(_,s)},1),!1}}var c=escape(this.templates.xml_format(r||n)+"@"+(l||i));return e("scheduler_settings","expires=Sun, 31 Jan 9999 22:00:00 GMT",c),!0});var i=scheduler._load;scheduler._load=function(){var e=arguments;if(!scheduler._date&&scheduler._load_mode){var t=this;window.setTimeout(function(){
-i.apply(t,e)},1)}else i.apply(this,e)}}();
+!function(){function e(e,t,i){var a=e+"="+i+(t?"; "+t:"");document.cookie=a}function t(e){var t=e+"=";if(document.cookie.length>0){var i=document.cookie.indexOf(t);if(-1!=i){i+=t.length;var a=document.cookie.indexOf(";",i);return-1==a&&(a=document.cookie.length),document.cookie.substring(i,a)}}return""}var i=!0;scheduler.attachEvent("onBeforeViewChange",function(a,r,s,n){if(i&&scheduler._get_url_nav){var d=scheduler._get_url_nav();(d.date||d.mode||d.event)&&(i=!1)}if(i){i=!1;var l=t("scheduler_settings");
+if(l){scheduler._min_date||(scheduler._min_date=n),l=unescape(l).split("@"),l[0]=this.templates.xml_date(l[0]);var o=this.isViewExists(l[1])?l[1]:s,h=isNaN(+l[0])?n:l[0];return window.setTimeout(function(){scheduler.setCurrentView(h,o)},1),!1}}var _=escape(this.templates.xml_format(n||r)+"@"+(s||a));return e("scheduler_settings","expires=Sun, 31 Jan 9999 22:00:00 GMT",_),!0});var a=scheduler._load;scheduler._load=function(){var e=arguments;if(!scheduler._date&&scheduler._load_mode){var t=this;window.setTimeout(function(){
+a.apply(t,e)},1)}else a.apply(this,e)}}();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_cookie.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_csp.js b/codebase/ext/dhtmlxscheduler_csp.js
new file mode 100644
index 0000000..4c52af9
--- /dev/null
+++ b/codebase/ext/dhtmlxscheduler_csp.js
@@ -0,0 +1,15 @@
+/*
+@license
+dhtmlxScheduler v.4.4.0 Stardard
+
+This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
+
+(c) Dinamenta, UAB.
+*/
+scheduler.date.date_to_str=function(e,t){return function(i){return e.replace(/%[a-zA-Z]/g,function(e){switch(e){case"%d":return t?scheduler.date.to_fixed(i.getUTCDate()):scheduler.date.to_fixed(i.getDate());case"%m":return t?scheduler.date.to_fixed(i.getUTCMonth()+1):scheduler.date.to_fixed(i.getMonth()+1);case"%j":return t?i.getUTCDate():i.getDate();case"%n":return t?i.getUTCMonth()+1:i.getMonth()+1;case"%y":return t?scheduler.date.to_fixed(i.getUTCFullYear()%100):scheduler.date.to_fixed(i.getFullYear()%100);
+case"%Y":return t?i.getUTCFullYear():i.getFullYear();case"%D":return t?scheduler.locale.date.day_short[i.getUTCDay()]:scheduler.locale.date.day_short[i.getDay()];case"%l":return t?scheduler.locale.date.day_full[i.getUTCDay()]:scheduler.locale.date.day_full[i.getDay()];case"%M":return t?scheduler.locale.date.month_short[i.getUTCMonth()]:scheduler.locale.date.month_short[i.getMonth()];case"%F":return t?scheduler.locale.date.month_full[i.getUTCMonth()]:scheduler.locale.date.month_full[i.getMonth()];case"%h":
+return t?scheduler.date.to_fixed((i.getUTCHours()+11)%12+1):scheduler.date.to_fixed((i.getHours()+11)%12+1);case"%g":return t?(i.getUTCHours()+11)%12+1:(i.getHours()+11)%12+1;case"%G":return t?i.getUTCHours():i.getHours();case"%H":return t?scheduler.date.to_fixed(i.getUTCHours()):scheduler.date.to_fixed(i.getHours());case"%i":return t?scheduler.date.to_fixed(i.getUTCMinutes()):scheduler.date.to_fixed(i.getMinutes());case"%a":return t?i.getUTCHours()>11?"pm":"am":i.getHours()>11?"pm":"am";case"%A":
+return t?i.getUTCHours()>11?"PM":"AM":i.getHours()>11?"PM":"AM";case"%s":return t?scheduler.date.to_fixed(i.getUTCSeconds()):scheduler.date.to_fixed(i.getSeconds());case"%W":return t?scheduler.date.to_fixed(scheduler.date.getUTCISOWeek(i)):scheduler.date.to_fixed(scheduler.date.getISOWeek(i));default:return e}})}},scheduler.date.str_to_date=function(e,t){return function(i){for(var a=[0,0,1,0,0,0],r=i.match(/[a-zA-Z]+|[0-9]+/g),s=e.match(/%[a-zA-Z]/g),n=0;n<s.length;n++)switch(s[n]){case"%j":case"%d":
+a[2]=r[n]||1;break;case"%n":case"%m":a[1]=(r[n]||1)-1;break;case"%y":a[0]=1*r[n]+(r[n]>50?1900:2e3);break;case"%g":case"%G":case"%h":case"%H":a[3]=r[n]||0;break;case"%i":a[4]=r[n]||0;break;case"%Y":a[0]=r[n]||0;break;case"%a":case"%A":a[3]=a[3]%12+("am"==(r[n]||"").toLowerCase()?0:12);break;case"%s":a[5]=r[n]||0;break;case"%M":a[1]=scheduler.locale.date.month_short_hash[r[n]]||0;break;case"%F":a[1]=scheduler.locale.date.month_full_hash[r[n]]||0}return t?new Date(Date.UTC(a[0],a[1],a[2],a[3],a[4],a[5])):new Date(a[0],a[1],a[2],a[3],a[4],a[5]);
+}};
+//# sourceMappingURL=../sources/ext/dhtmlxscheduler_csp.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_editors.js b/codebase/ext/dhtmlxscheduler_editors.js
index b41ccde..304ea8b 100644
--- a/codebase/ext/dhtmlxscheduler_editors.js
+++ b/codebase/ext/dhtmlxscheduler_editors.js
@@ -1,18 +1,15 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.form_blocks.combo={render:function(e){e.cached_options||(e.cached_options={});var t="";return t+="<div class='"+e.type+"' style='height:"+(e.height||20)+"px;' ></div>"},set_value:function(e,t,a,i){!function(){function t(){if(e._combo&&e._combo.DOMParent){var t=e._combo;t.unload?t.unload():t.destructor&&t.destructor(),t.DOMParent=t.DOMelem=null}}t();var a=scheduler.attachEvent("onAfterLightbox",function(){t(),scheduler.detachEvent(a)})}(),window.dhx_globalImgPath=i.image_path||"/",e._combo=new dhtmlXCombo(e,i.name,e.offsetWidth-8),
-i.onchange&&e._combo.attachEvent("onChange",i.onchange),i.options_height&&e._combo.setOptionHeight(i.options_height);var n=e._combo;if(n.enableFilteringMode(i.filtering,i.script_path||null,!!i.cache),i.script_path){var r=a[i.map_to];r?i.cached_options[r]?(n.addOption(r,i.cached_options[r]),n.disable(1),n.selectOption(0),n.disable(0)):dhtmlxAjax.get(i.script_path+"?id="+r+"&uid="+scheduler.uid(),function(e){var t=e.doXPath("//option")[0],a=t.childNodes[0].nodeValue;i.cached_options[r]=a,n.addOption(r,a),
-n.disable(1),n.selectOption(0),n.disable(0)}):n.setComboValue("")}else{for(var l=[],d=0;d<i.options.length;d++){var o=i.options[d],s=[o.key,o.label,o.css];l.push(s)}if(n.addOption(l),a[i.map_to]){var _=n.getIndexByValue(a[i.map_to]);n.selectOption(_)}}},get_value:function(e,t,a){var i=e._combo.getSelectedValue();return a.script_path&&(a.cached_options[i]=e._combo.getSelectedText()),i},focus:function(e){}},scheduler.form_blocks.radio={render:function(e){var t="";t+="<div class='dhx_cal_ltext dhx_cal_radio' style='height:"+e.height+"px;' >";
-
-for(var a=0;a<e.options.length;a++){var i=scheduler.uid();t+="<input id='"+i+"' type='radio' name='"+e.name+"' value='"+e.options[a].key+"'><label for='"+i+"'> "+e.options[a].label+"</label>",e.vertical&&(t+="<br/>")}return t+="</div>"},set_value:function(e,t,a,i){for(var n=e.getElementsByTagName("input"),r=0;r<n.length;r++){n[r].checked=!1;var l=a[i.map_to]||t;n[r].value==l&&(n[r].checked=!0)}},get_value:function(e,t,a){for(var i=e.getElementsByTagName("input"),n=0;n<i.length;n++)if(i[n].checked)return i[n].value;
-
-},focus:function(e){}},scheduler.form_blocks.checkbox={render:function(e){return scheduler.config.wide_form?'<div class="dhx_cal_wide_checkbox" '+(e.height?"style='height:"+e.height+"px;'":"")+"></div>":""},set_value:function(e,t,a,i){e=document.getElementById(i.id);var n=scheduler.uid(),r="undefined"!=typeof i.checked_value?t==i.checked_value:!!t;e.className+=" dhx_cal_checkbox";var l="<input id='"+n+"' type='checkbox' value='true' name='"+i.name+"'"+(r?"checked='true'":"")+"'>",d="<label for='"+n+"'>"+(scheduler.locale.labels["section_"+i.name]||i.name)+"</label>";
-
-if(scheduler.config.wide_form?(e.innerHTML=d,e.nextSibling.innerHTML=l):e.innerHTML=l+d,i.handler){var o=e.getElementsByTagName("input")[0];o.onclick=i.handler}},get_value:function(e,t,a){e=document.getElementById(a.id);var i=e.getElementsByTagName("input")[0];return i||(i=e.nextSibling.getElementsByTagName("input")[0]),i.checked?a.checked_value||!0:a.unchecked_value||!1},focus:function(e){}};
+scheduler.form_blocks.combo={render:function(e){e.cached_options||(e.cached_options={});var t="";return t+="<div class='"+e.type+"' style='height:"+(e.height||20)+"px;' ></div>"},set_value:function(e,t,a,r){!function(){function t(){if(e._combo&&e._combo.DOMParent){var t=e._combo;t.unload?t.unload():t.destructor&&t.destructor(),t.DOMParent=t.DOMelem=null}}t();var a=scheduler.attachEvent("onAfterLightbox",function(){t(),scheduler.detachEvent(a)})}(),window.dhx_globalImgPath=r.image_path||"/",e._combo=new dhtmlXCombo(e,r.name,e.offsetWidth-8),
+r.onchange&&e._combo.attachEvent("onChange",r.onchange),r.options_height&&e._combo.setOptionHeight(r.options_height);var i=e._combo;if(i.enableFilteringMode(r.filtering,r.script_path||null,!!r.cache),r.script_path){var s=a[r.map_to];s?r.cached_options[s]?(i.addOption(s,r.cached_options[s]),i.disable(1),i.selectOption(0),i.disable(0)):dhtmlxAjax.get(r.script_path+"?id="+s+"&uid="+scheduler.uid(),function(e){var t=e.doXPath("//option")[0],a=t.childNodes[0].nodeValue;r.cached_options[s]=a,i.addOption(s,a),
+i.disable(1),i.selectOption(0),i.disable(0)}):i.setComboValue("")}else{for(var n=[],d=0;d<r.options.length;d++){var l=r.options[d],o=[l.key,l.label,l.css];n.push(o)}if(i.addOption(n),a[r.map_to]){var h=i.getIndexByValue(a[r.map_to]);i.selectOption(h)}}},get_value:function(e,t,a){var r=e._combo.getSelectedValue();return a.script_path&&(a.cached_options[r]=e._combo.getSelectedText()),r},focus:function(e){}},scheduler.form_blocks.radio={render:function(e){var t="";t+="<div class='dhx_cal_ltext dhx_cal_radio' style='height:"+e.height+"px;' >";
+for(var a=0;a<e.options.length;a++){var r=scheduler.uid();t+="<input id='"+r+"' type='radio' name='"+e.name+"' value='"+e.options[a].key+"'><label for='"+r+"'> "+e.options[a].label+"</label>",e.vertical&&(t+="<br/>")}return t+="</div>"},set_value:function(e,t,a,r){for(var i=e.getElementsByTagName("input"),s=0;s<i.length;s++){i[s].checked=!1;var n=a[r.map_to]||t;i[s].value==n&&(i[s].checked=!0)}},get_value:function(e,t,a){for(var r=e.getElementsByTagName("input"),i=0;i<r.length;i++)if(r[i].checked)return r[i].value;
+},focus:function(e){}},scheduler.form_blocks.checkbox={render:function(e){return scheduler.config.wide_form?'<div class="dhx_cal_wide_checkbox" '+(e.height?"style='height:"+e.height+"px;'":"")+"></div>":""},set_value:function(e,t,a,r){e=document.getElementById(r.id);var i=scheduler.uid(),s="undefined"!=typeof r.checked_value?t==r.checked_value:!!t;e.className+=" dhx_cal_checkbox";var n="<input id='"+i+"' type='checkbox' value='true' name='"+r.name+"'"+(s?"checked='true'":"")+"'>",d="<label for='"+i+"'>"+(scheduler.locale.labels["section_"+r.name]||r.name)+"</label>";
+if(scheduler.config.wide_form?(e.innerHTML=d,e.nextSibling.innerHTML=n):e.innerHTML=n+d,r.handler){var l=e.getElementsByTagName("input")[0];l.onclick=r.handler}},get_value:function(e,t,a){e=document.getElementById(a.id);var r=e.getElementsByTagName("input")[0];return r||(r=e.nextSibling.getElementsByTagName("input")[0]),r.checked?a.checked_value||!0:a.unchecked_value||!1},focus:function(e){}};
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_editors.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_expand.js b/codebase/ext/dhtmlxscheduler_expand.js
index bf92001..cac302c 100644
--- a/codebase/ext/dhtmlxscheduler_expand.js
+++ b/codebase/ext/dhtmlxscheduler_expand.js
@@ -1,6 +1,6 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
diff --git a/codebase/ext/dhtmlxscheduler_html_templates.js b/codebase/ext/dhtmlxscheduler_html_templates.js
index c9298d7..5d497c5 100644
--- a/codebase/ext/dhtmlxscheduler_html_templates.js
+++ b/codebase/ext/dhtmlxscheduler_html_templates.js
@@ -1,10 +1,10 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.attachEvent("onTemplatesReady",function(){for(var e=document.body.getElementsByTagName("DIV"),t=0;t<e.length;t++){var a=e[t].className||"";if(a=a.split(":"),2==a.length&&"template"==a[0]){var i='return "'+(e[t].innerHTML||"").replace(/\"/g,'\\"').replace(/[\n\r]+/g,"")+'";';i=unescape(i).replace(/\{event\.([a-z]+)\}/g,function(e,t){return'"+ev.'+t+'+"'}),scheduler.templates[a[1]]=Function("start","end","ev",i),e[t].style.display="none"}}});
+scheduler.attachEvent("onTemplatesReady",function(){for(var e=document.body.getElementsByTagName("DIV"),t=0;t<e.length;t++){var r=e[t].className||"";if(r=r.split(":"),2==r.length&&"template"==r[0]){var a='return "'+(e[t].innerHTML||"").replace(/\"/g,'\\"').replace(/[\n\r]+/g,"")+'";';a=unescape(a).replace(/\{event\.([a-z]+)\}/g,function(e,t){return'"+ev.'+t+'+"'}),scheduler.templates[r[1]]=Function("start","end","ev",a),e[t].style.display="none"}}});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_html_templates.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_key_nav.js b/codebase/ext/dhtmlxscheduler_key_nav.js
index f81bb20..1fbad35 100644
--- a/codebase/ext/dhtmlxscheduler_key_nav.js
+++ b/codebase/ext/dhtmlxscheduler_key_nav.js
@@ -1,15 +1,92 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler._temp_key_scope=function(){function e(e){delete e.rec_type,delete e.rec_pattern,delete e.event_pid,delete e.event_length}scheduler.config.key_nav=!0;var t,a,i=null;scheduler.attachEvent("onMouseMove",function(e,i){t=scheduler.getActionData(i).date,a=scheduler.getActionData(i).section}),scheduler._make_pasted_event=function(i){var n=i.end_date-i.start_date,r=scheduler._lame_copy({},i);if(e(r),r.start_date=new Date(t),r.end_date=new Date(r.start_date.valueOf()+n),a){var l=scheduler._get_section_property();
-
-scheduler.config.multisection?r[l]=i[l]:r[l]=a}return r},scheduler._do_paste=function(e,t,a){scheduler.addEvent(t),scheduler.callEvent("onEventPasted",[e,t,a])},scheduler._is_key_nav_active=function(){return this._is_initialized()&&!this._is_lightbox_open()&&this.config.key_nav?!0:!1},dhtmlxEvent(document,_isOpera?"keypress":"keydown",function(e){if(!scheduler._is_key_nav_active())return!0;if(e=e||event,37==e.keyCode||39==e.keyCode){e.cancelBubble=!0;var t=scheduler.date.add(scheduler._date,37==e.keyCode?-1:1,scheduler._mode);
-
-return scheduler.setCurrentView(t),!0}var a=scheduler._select_id;if(e.ctrlKey&&67==e.keyCode)return a&&(scheduler._buffer_id=a,i=!0,scheduler.callEvent("onEventCopied",[scheduler.getEvent(a)])),!0;if(e.ctrlKey&&88==e.keyCode&&a){i=!1,scheduler._buffer_id=a;var n=scheduler.getEvent(a);scheduler.updateEvent(n.id),scheduler.callEvent("onEventCut",[n])}if(e.ctrlKey&&86==e.keyCode){var n=scheduler.getEvent(scheduler._buffer_id);if(n){var r=scheduler._make_pasted_event(n);if(i)r.id=scheduler.uid(),scheduler._do_paste(i,r,n);
-else{var l=scheduler.callEvent("onBeforeEventChanged",[r,e,!1,n]);l&&(scheduler._do_paste(i,r,n),i=!0)}}return!0}})},scheduler._temp_key_scope();
+!function(){function e(e){function t(t){var a={minicalButton:e.$keyboardNavigation.MinicalButton,minicalDate:e.$keyboardNavigation.MinicalCell,scheduler:e.$keyboardNavigation.SchedulerNode,dataArea:e.$keyboardNavigation.DataArea,timeSlot:e.$keyboardNavigation.TimeSlot,event:e.$keyboardNavigation.Event};return a[t]||a.scheduler}e.config.key_nav=!0,e.config.key_nav_step=30,e.addShortcut=function(e,a,i){var r=t(i);r&&r.prototype.bind(e,a)},e.removeShortcut=function(e,a){var i=t(a);i&&i.prototype.unbind(e);
+},e.focus=function(){if(e.config.key_nav){var t=e.$keyboardNavigation.dispatcher;t.enable();var a=t.getActiveNode();!a||a instanceof e.$keyboardNavigation.MinicalButton||a instanceof e.$keyboardNavigation.MinicalCell?t.setDefaultNode():t.focusNode(t.getActiveNode())}},e.$keyboardNavigation={},e._compose=function(){for(var e=Array.prototype.slice.call(arguments,0),t={},a=0;a<e.length;a++){var i=e[a];"function"==typeof i&&(i=new i);for(var r in i)t[r]=i[r]}return t},e.$keyboardNavigation.shortcuts={
+createCommand:function(){return{modifiers:{shift:!1,alt:!1,ctrl:!1,meta:!1},keyCode:null}},parse:function(e){for(var t=[],a=this.getExpressions(this.trim(e)),i=0;i<a.length;i++){for(var r=this.getWords(a[i]),n=this.createCommand(),s=0;s<r.length;s++)this.commandKeys[r[s]]?n.modifiers[r[s]]=!0:this.specialKeys[r[s]]?n.keyCode=this.specialKeys[r[s]]:n.keyCode=r[s].charCodeAt(0);t.push(n)}return t},getCommandFromEvent:function(e){var t=this.createCommand();t.modifiers.shift=!!e.shiftKey,t.modifiers.alt=!!e.altKey,
+t.modifiers.ctrl=!!e.ctrlKey,t.modifiers.meta=!!e.metaKey,t.keyCode=e.which||e.keyCode;var a=String.fromCharCode(t.keyCode);return a&&(t.keyCode=a.toLowerCase().charCodeAt(0)),t},getHashFromEvent:function(e){return this.getHash(this.getCommandFromEvent(e))},getHash:function(e){var t=[];for(var a in e.modifiers)e.modifiers[a]&&t.push(a);return t.push(e.keyCode),t.join(this.junctionChar)},getExpressions:function(e){return e.split(this.junctionChar)},getWords:function(e){return e.split(this.combinationChar);
+},trim:function(e){return e.replace(/\s/g,"")},junctionChar:",",combinationChar:"+",commandKeys:{shift:16,alt:18,ctrl:17,meta:!0},specialKeys:{backspace:8,tab:9,enter:13,esc:27,space:32,up:38,down:40,left:37,right:39,home:36,end:35,pageup:33,pagedown:34,"delete":46,insert:45,plus:107,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123}},e.$keyboardNavigation.EventHandler={_handlers:null,findHandler:function(t){this._handlers||(this._handlers={});var a=e.$keyboardNavigation.shortcuts,i=a.getHash(t);
+return this._handlers[i]},doAction:function(e,t){var a=this.findHandler(e);a&&(a.call(this,t),t.preventDefault?t.preventDefault():t.returnValue=!1)},bind:function(t,a){this._handlers||(this._handlers={});for(var i=e.$keyboardNavigation.shortcuts,r=i.parse(t),n=0;n<r.length;n++)this._handlers[i.getHash(r[n])]=a},unbind:function(t){for(var a=e.$keyboardNavigation.shortcuts,i=a.parse(t),r=0;r<i.length;r++)this._handlers[a.getHash(i[r])]&&delete this._handlers[a.getHash(i[r])]},bindAll:function(e){for(var t in e)this.bind(t,e[t]);
+},initKeys:function(){this._handlers||(this._handlers={}),this.keys&&this.bindAll(this.keys)}},function(){e.$keyboardNavigation.getFocusableNodes=e._getFocusableNodes,e.$keyboardNavigation.trapFocus=function(t,a){if(9!=a.keyCode)return!1;for(var i=e.$keyboardNavigation.getFocusableNodes(t),r=document.activeElement,n=-1,s=0;s<i.length;s++)if(i[s]==r){n=s;break}var d,o;if(a.shiftKey){if(d=0>=n?i[i.length-1]:n-1,o=i[d])return o.focus(),a.preventDefault(),!0}else if(d=n>=i.length-1?0:n+1,o=i[d])return o.focus(),
+a.preventDefault(),!0;return!1}}(),e.$keyboardNavigation.marker={clear:function(){for(var t=e.$container.querySelectorAll(".dhx_focus_slot"),a=0;a<t.length;a++)t[a].parentNode.removeChild(t[a])},createElement:function(){var e=document.createElement("DIV");return e.setAttribute("tabindex",-1),e.className="dhx_focus_slot",e},renderMultiple:function(t,a,i){for(var r=[],n=new Date(t),s=new Date(Math.min(a.valueOf(),e.date.add(e.date.day_start(new Date(t)),1,"day").valueOf()));n.valueOf()<a.valueOf();)r=r.concat(i.call(this,n,new Date(Math.min(s.valueOf(),a.valueOf())))),
+n=e.date.day_start(e.date.add(n,1,"day")),s=e.date.day_start(e.date.add(n,1,"day")),s=new Date(Math.min(s.valueOf(),a.valueOf()));return r},render:function(t,a,i){this.clear();var r=[],n=e.$keyboardNavigation.TimeSlot.prototype._modes,s=e.$keyboardNavigation.TimeSlot.prototype._getMode();switch(s){case n.units:r=this.renderVerticalMarker(t,a,i);break;case n.timeline:r=this.renderTimelineMarker(t,a,i);break;case n.year:r=r.concat(this.renderMultiple(t,a,this.renderYearMarker));break;case n.month:r=this.renderMonthMarker(t,a);
+break;case n.weekAgenda:r=r.concat(this.renderMultiple(t,a,this.renderWeekAgendaMarker));break;case n.list:r=this.renderAgendaMarker(t,a);break;case n.dayColumns:r=r.concat(this.renderMultiple(t,a,this.renderVerticalMarker))}this.addWaiAriaLabel(r,t,a,i),this.addDataAttributes(r,t,a,i);for(var d=r.length-1;d>=0;d--)if(r[d].offsetWidth)return r[d];return null},addDataAttributes:function(t,a,i,r){for(var n=e.date.date_to_str(e.config.api_date),s=n(a),d=n(i),o=0;o<t.length;o++)t[o].setAttribute("data-start-date",s),
+t[o].setAttribute("data-end-date",d),r&&t[o].setAttribute("data-section",r)},addWaiAriaLabel:function(t,a,i,r){var n="",s=e.getState(),d=s.mode,o=!1;n+=e.templates.day_date(a),e.date.day_start(new Date(a)).valueOf()!=a.valueOf()&&(n+=" "+e.templates.hour_scale(a),o=!0),e.date.day_start(new Date(a)).valueOf()!=e.date.day_start(new Date(i)).valueOf()&&(n+=" - "+e.templates.day_date(i),(o||e.date.day_start(new Date(i)).valueOf()!=i.valueOf())&&(n+=" "+e.templates.hour_scale(i))),r&&(e.matrix&&e.matrix[d]?n+=", "+e.templates[d+"_scale_label"](r.key,r.label,r):e._props&&e._props[d]&&(n+=", "+e.templates[d+"_scale_text"](r.key,r.label,r)));
+for(var l=0;l<t.length;l++)e._waiAria.setAttributes(t[l],{"aria-label":n,"aria-live":"polite"})},renderWeekAgendaMarker:function(t,a){for(var i=e.$container.querySelectorAll(".dhx_wa_day_cont .dhx_wa_scale_bar"),r=e.date.week_start(new Date(e.getState().min_date)),n=-1,s=e.date.day_start(new Date(t)),d=0;d<i.length&&(n++,e.date.day_start(new Date(r)).valueOf()!=s.valueOf());d++)r=e.date.add(r,1,"day");return-1!=n?this._wrapDiv(i[n]):[]},_wrapDiv:function(e){var t=this.createElement();return t.style.top=e.offsetTop+"px",
+t.style.left=e.offsetLeft+"px",t.style.width=e.offsetWidth+"px",t.style.height=e.offsetHeight+"px",e.appendChild(t),[t]},renderYearMarker:function(t,a){var i=e._get_year_cell(t);i.style.position="relative";var r=this.createElement();return r.style.top="0px",r.style.left="0px",r.style.width="100%",r.style.height="100%",i.appendChild(r),[r]},renderAgendaMarker:function(t,a){var i=this.createElement();return i.style.height="1px",i.style.width="100%",i.style.opacity=1,i.style.top="0px",i.style.left="0px",
+e.$container.querySelector(".dhx_cal_data").appendChild(i),[i]},renderTimelineMarker:function(t,a,i){var r=e._lame_copy({},e.matrix[e._mode]),n=r._scales;r.round_position=!1;var s=[],d=t?new Date(t):e._min_date,o=a?new Date(a):e._max_date;if(d.valueOf()<e._min_date.valueOf()&&(d=new Date(e._min_date)),o.valueOf()>e._max_date.valueOf()&&(o=new Date(e._max_date)),!r._trace_x)return s;for(var l=0;l<r._trace_x.length&&!e._is_column_visible(r._trace_x[l]);l++);if(l==r._trace_x.length)return s;var c=n[i];
+if(!(a>d&&o>t))return s;var h=this.createElement(),_=e._timeline_getX({start_date:t},!1,r)-1,u=e._timeline_getX({start_date:a},!1,r)-1,v=r._section_height[i]-1||r.dy-1,g=0;e._isRender("cell")&&(g=c.offsetTop,_+=r.dx,u+=r.dx,c=e.$container.querySelector(".dhx_cal_data"));var f=Math.max(1,u-_-1);return h.style.cssText="height: "+v+"px; left: "+_+"px; width: "+f+"px; top: "+g+"px;",c.insertBefore(h,c.firstChild),s.push(h),s},renderMonthCell:function(t){for(var a=e.$container.querySelectorAll(".dhx_month_head"),i=[],r=0;r<a.length;r++)i.push(a[r].parentNode);
+for(var n=e.date.week_start(new Date(e.getState().min_date)),s=-1,d=0,o=-1,l=n,c=e.date.day_start(new Date(t)),r=0;r<i.length&&(s++,6==o?(d++,o=0):o++,e.date.day_start(new Date(l)).valueOf()!=c.valueOf());r++)l=e.date.add(l,1,"day");if(-1==s)return[];var h=e._colsS[o],_=e._colsS.heights[d],u=this.createElement();u.style.top=_+"px",u.style.left=h+"px",u.style.width=e._cols[o]+"px",u.style.height=(e._colsS.heights[d+1]-_||e._colsS.height)+"px";var v=e.$container.querySelector(".dhx_cal_data"),g=v.querySelector("table");
+return g.nextSibling?v.insertBefore(u,g.nextSibling):v.appendChild(u),u},renderMonthMarker:function(t,a){for(var i=[],r=t;r.valueOf()<a.valueOf();)i.push(this.renderMonthCell(r)),r=e.date.add(r,1,"day");return i},renderVerticalMarker:function(t,a,i){var r=e.locate_holder_day(t),n=[],s=null,d=e.config;if(e._ignores[r])return n;if(e._props&&e._props[e._mode]&&i){var o=e._props[e._mode];r=o.order[i];var l=o.order[i];o.days>1?r=e.locate_holder_day(t)+l:(r=l,o.size&&r>o.position+o.size&&(r=0))}if(s=e.locate_holder(r),
+!s||s.querySelector(".dhx_scale_hour"))return document.createElement("div");var c=Math.max(60*t.getHours()+t.getMinutes(),60*d.first_hour),h=Math.min(60*a.getHours()+a.getMinutes(),60*d.last_hour);if(!h&&e.date.day_start(new Date(a)).valueOf()>e.date.day_start(new Date(t)).valueOf()&&(h=60*d.last_hour),c>=h)return[];var _=this.createElement(),u=e.config.hour_size_px*d.last_hour+1,v=36e5;return _.style.top=Math.round((60*c*1e3-e.config.first_hour*v)*e.config.hour_size_px/v)%u+"px",_.style.lineHeight=_.style.height=Math.max(Math.round(60*(h-c)*1e3*e.config.hour_size_px/v)%u,1)+"px",
+_.style.width="100%",s.appendChild(_),n.push(_),n[0]}},e.$keyboardNavigation.SchedulerNode=function(){},e.$keyboardNavigation.SchedulerNode.prototype=e._compose(e.$keyboardNavigation.EventHandler,{getDefaultNode:function(){var t=new e.$keyboardNavigation.TimeSlot;return t.isValid()||(t=t.fallback()),t},_modes:{month:"month",year:"year",dayColumns:"dayColumns",timeline:"timeline",units:"units",weekAgenda:"weekAgenda",list:"list"},getMode:function(){var t=e.getState(),a=t.mode;return e.matrix&&e.matrix[a]?this._modes.timeline:e._props&&e._props[a]?this._modes.units:"month"==a?this._modes.month:"year"==a?this._modes.year:"week_agenda"==a?this._modes.weekAgenda:"map"==a||"agenda"==a||e._grid&&e["grid_"+a]?this._modes.list:this._modes.dayColumns;
+},focus:function(){e.focus()},blur:function(){},disable:function(){e.$container.setAttribute("tabindex","0")},enable:function(){e.$container&&e.$container.removeAttribute("tabindex")},isEnabled:function(){return e.$container.hasAttribute("tabindex")},_compareEvents:function(e,t){return e.start_date.valueOf()==t.start_date.valueOf()?e.id>t.id?1:-1:e.start_date.valueOf()>t.start_date.valueOf()?1:-1},_pickEvent:function(t,a,i,r){var n=e.getState();t=new Date(Math.max(n.min_date.valueOf(),t.valueOf())),
+a=new Date(Math.min(n.max_date.valueOf(),a.valueOf()));var s=e.getEvents(t,a);s.sort(this._compareEvents),r&&(s=s.reverse());for(var d=!!i,o=0;o<s.length&&d;o++)s[o].id==i&&(d=!1),s.splice(o,1),o--;return s[0]},nextEventHandler:function(t){var a=e.$keyboardNavigation.dispatcher.activeNode,i=t||a&&a.eventId,r=null;if(i&&e.getEvent(i)){var n=e.getEvent(i);r=e.$keyboardNavigation.SchedulerNode.prototype._pickEvent(n.start_date,e.date.add(n.start_date,1,"year"),n.id,!1)}if(!r&&!t){var s=e.getState();r=e.$keyboardNavigation.SchedulerNode.prototype._pickEvent(s.min_date,e.date.add(s.min_date,1,"year"),null,!1);
+}if(r){var d=new e.$keyboardNavigation.Event(r.id);d.isValid()?(a&&a.blur(),e.$keyboardNavigation.dispatcher.setActiveNode(d)):this.nextEventHandler(r.id)}},prevEventHandler:function(t){var a=e.$keyboardNavigation.dispatcher.activeNode,i=t||a&&a.eventId,r=null;if(i&&e.getEvent(i)){var n=e.getEvent(i);r=e.$keyboardNavigation.SchedulerNode.prototype._pickEvent(e.date.add(n.end_date,-1,"year"),n.end_date,n.id,!0)}if(!r&&!t){var s=e.getState();r=e.$keyboardNavigation.SchedulerNode.prototype._pickEvent(e.date.add(s.max_date,-1,"year"),s.max_date,null,!0);
+}if(r){var d=new e.$keyboardNavigation.Event(r.id);d.isValid()?(a&&a.blur(),e.$keyboardNavigation.dispatcher.setActiveNode(d)):this.prevEventHandler(r.id)}},keys:{"alt+1, alt+2, alt+3, alt+4, alt+5, alt+6, alt+7, alt+8, alt+9":function(t){var a=e.$keyboardNavigation.HeaderCell.prototype.getNodes(".dhx_cal_navline .dhx_cal_tab"),i=t.key;void 0===i&&(i=t.keyCode-48),a[1*i-1]&&a[1*i-1].click()},"ctrl+left,meta+left":function(t){e._click.dhx_cal_prev_button()},"ctrl+right,meta+right":function(t){e._click.dhx_cal_next_button();
+},"ctrl+up,meta+up":function(t){var a=e.$container.querySelector(".dhx_cal_data");a.scrollTop-=20},"ctrl+down,meta+down":function(t){var a=e.$container.querySelector(".dhx_cal_data");a.scrollTop+=20},e:function(){this.nextEventHandler()},home:function(){e.setCurrentView(new Date)},"shift+e":function(){this.prevEventHandler()},"ctrl+enter,meta+enter":function(){e.addEventNow({start_date:new Date(e.getState().date)})},"ctrl+c,meta+c":function(t){e._key_nav_copy_paste(t)},"ctrl+v,meta+v":function(t){
+e._key_nav_copy_paste(t)},"ctrl+x,meta+x":function(t){e._key_nav_copy_paste(t)}}}),e.$keyboardNavigation.SchedulerNode.prototype.bindAll(e.$keyboardNavigation.SchedulerNode.prototype.keys),e.$keyboardNavigation.KeyNavNode=function(){},e.$keyboardNavigation.KeyNavNode.prototype=e._compose(e.$keyboardNavigation.EventHandler,{isValid:function(){return!0},fallback:function(){return null},moveTo:function(t){e.$keyboardNavigation.dispatcher.setActiveNode(t)},compareTo:function(e){if(!e)return!1;for(var t in this){
+if(!!this[t]!=!!e[t])return!1;var a=!(!this[t]||!this[t].toString),i=!(!e[t]||!e[t].toString);if(i!=a)return!1;if(i&&a){if(e[t].toString()!=this[t].toString())return!1}else if(e[t]!=this[t])return!1}return!0},getNode:function(){},focus:function(){var e=this.getNode();e&&(e.setAttribute("tabindex","-1"),e.focus&&e.focus())},blur:function(){var e=this.getNode();e&&e.setAttribute("tabindex","-1")}}),e.$keyboardNavigation.HeaderCell=function(e){this.index=e||0},e.$keyboardNavigation.HeaderCell.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{
+getNode:function(e){e=e||this.index||0;var t=this.getNodes();return t[e]?t[e]:void 0},getNodes:function(t){t=t||[".dhx_cal_navline .dhx_cal_prev_button",".dhx_cal_navline .dhx_cal_next_button",".dhx_cal_navline .dhx_cal_today_button",".dhx_cal_navline .dhx_cal_tab"].join(", ");var a=Array.prototype.slice.call(e.$container.querySelectorAll(t));return a.sort(function(e,t){return e.offsetLeft-t.offsetLeft}),a},_handlers:null,isValid:function(){return!!this.getNode(this.index)},fallback:function(){var t=this.getNode(0);
+return t||(t=new e.$keyboardNavigation.TimeSlot),t},keys:{left:function(){var t=this.index-1;0>t&&(t=this.getNodes().length-1),this.moveTo(new e.$keyboardNavigation.HeaderCell(t))},right:function(){var t=this.index+1;t>=this.getNodes().length&&(t=0),this.moveTo(new e.$keyboardNavigation.HeaderCell(t))},down:function(){this.moveTo(new e.$keyboardNavigation.TimeSlot)},enter:function(){var e=this.getNode();e&&e.click()}}}),e.$keyboardNavigation.HeaderCell.prototype.bindAll(e.$keyboardNavigation.HeaderCell.prototype.keys),
+e.$keyboardNavigation.Event=function(t){if(this.eventId=null,e.getEvent(t)){var a=e.getEvent(t);this.start=new Date(a.start_date),this.end=new Date(a.end_date),this.section=this._getSection(a),this.eventId=t}},e.$keyboardNavigation.Event.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{_getNodes:function(){return Array.prototype.slice.call(e.$container.querySelectorAll("[event_id]"))},_modes:e.$keyboardNavigation.SchedulerNode.prototype._modes,getMode:e.$keyboardNavigation.SchedulerNode.prototype.getMode,
+_handlers:null,isValid:function(){return!(!e.getEvent(this.eventId)||!this.getNode())},fallback:function(){var t=this._getNodes()[0],a=null;if(t&&e._locate_event(t)){var i=e._locate_event(t);a=new e.$keyboardNavigation.Event(i)}else a=new e.$keyboardNavigation.TimeSlot;return a},getNode:function(){return e.$container.querySelector("[event_id='"+this.eventId+"']")},focus:function(){var t=e.getEvent(this.eventId),a=e.getState();(t.start_date.valueOf()>a.max_date.valueOf()||t.end_date.valueOf()<=a.min_date.valueOf())&&e.setCurrentView(t.start_date),
+e.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this)},blur:function(){e.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this)},_getSection:function(t){var a=null,i=e.getState().mode;if(e.matrix&&e.matrix[i]){var r=e.matrix[e.getState().mode];a=t[r.y_property]}else if(e._props&&e._props[i]){var n=e._props[i];a=t[n.map_to]}return a},_moveToSlot:function(t){var a=e.getEvent(this.eventId);if(a){var i=this._getSection(a),r=new e.$keyboardNavigation.TimeSlot(a.start_date,null,i);this.moveTo(r.nextSlot(r,t));
+}else this.moveTo(new e.$keyboardNavigation.TimeSlot)},keys:{left:function(){this._moveToSlot("left")},right:function(){this._moveToSlot("right")},down:function(){this.getMode()==this._modes.list?e.$keyboardNavigation.SchedulerNode.prototype.nextEventHandler():this._moveToSlot("down")},space:function(){var t=this.getNode();t&&t.click?t.click():this.moveTo(new e.$keyboardNavigation.TimeSlot)},up:function(){this.getMode()==this._modes.list?e.$keyboardNavigation.SchedulerNode.prototype.prevEventHandler():this._moveToSlot("up");
+},"delete":function(){e.getEvent(this.eventId)?e._click.buttons["delete"](this.eventId):this.moveTo(new e.$keyboardNavigation.TimeSlot)},enter:function(){e.getEvent(this.eventId)?e.showLightbox(this.eventId):this.moveTo(new e.$keyboardNavigation.TimeSlot)}}}),e.$keyboardNavigation.Event.prototype.bindAll(e.$keyboardNavigation.Event.prototype.keys),e.$keyboardNavigation.TimeSlot=function(t,a,i,r){var n=e.getState(),s=e.matrix&&e.matrix[n.mode];t||(s?(t=e.date[s.name+"_start"](new Date(n.date)),t=this.findVisibleColumn(t)):(t=new Date(e.getState().min_date),
+t=this.findVisibleColumn(t),t.setHours(e.config.first_hour))),a||(a=s?e.date.add(t,s.x_step,s.x_unit):e.date.add(t,e.config.key_nav_step,"minute")),this.section=i||this._getDefaultSection(),this.start_date=new Date(t),this.end_date=new Date(a),this.movingDate=r||null},e.$keyboardNavigation.TimeSlot.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{_handlers:null,clone:function(t){return new e.$keyboardNavigation.TimeSlot(t.start_date,t.end_date,t.section,t.movingDate)},_getMultisectionView:function(){
+var t,a=e.getState();return e._props&&e._props[a.mode]?t=e._props[a.mode]:e.matrix&&e.matrix[a.mode]&&(t=e.matrix[a.mode]),t},_getDefaultSection:function(){var e=null,t=this._getMultisectionView();return t&&!e&&(e=this._getNextSection()),e},_getNextSection:function(e,t){var a=this._getMultisectionView(),i=a.order[e],r=i;r=void 0!==i?i+t:a.size&&a.position?a.position:0,r=0>r?r=(a.options||a.y_unit).length-1:r;var n=a.options||a.y_unit;return n[r]?n[r].key:null},isValid:function(){var t=e.getState(),a=!(this.start_date.valueOf()<t.min_date.valueOf()||this.start_date.valueOf()>=t.max_date.valueOf());
+if(!a)return!1;if(!this.isVisible(this.start_date,this.end_date))return!1;var i=this._getMultisectionView();return i?void 0!==i.order[this.section]:!0},fallback:function(){var t=new e.$keyboardNavigation.TimeSlot;return t.isValid()?t:new e.$keyboardNavigation.DataArea},getNodes:function(){return Array.prototype.slice.call(e.$container.querySelectorAll(".dhx_focus_slot"))},getNode:function(){return this.getNodes()[0]},focus:function(){e.$keyboardNavigation.marker.render(this.start_date,this.end_date,this.section),
+e.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this),e.$keyboardNavigation._pasteDate=this.start_date,e.$keyboardNavigation._pasteSection=this.section},blur:function(){e.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this),e.$keyboardNavigation.marker.clear()},_modes:e.$keyboardNavigation.SchedulerNode.prototype._modes,_getMode:e.$keyboardNavigation.SchedulerNode.prototype.getMode,addMonthDate:function(t,a,i){var r;switch(a){case"up":r=e.date.add(t,-1,"week");break;case"down":r=e.date.add(t,1,"week");
+break;case"left":r=e.date.day_start(e.date.add(t,-1,"day")),r=this.findVisibleColumn(r,-1);break;case"right":r=e.date.day_start(e.date.add(t,1,"day")),r=this.findVisibleColumn(r,1);break;default:r=e.date.day_start(new Date(t))}var n=e.getState();return(t.valueOf()<n.min_date.valueOf()||!i&&t.valueOf()>=n.max_date.valueOf())&&(r=new Date(n.min_date)),r},nextMonthSlot:function(t,a,i){var r,n;return r=this.addMonthDate(t.start_date,a,i),r.setHours(e.config.first_hour),n=new Date(r),n.setHours(e.config.last_hour),
+{start_date:r,end_date:n}},_alignTimeSlot:function(t,a,i,r){for(var n=new Date(a);n.valueOf()<t.valueOf();)n=e.date.add(n,r,i);return n.valueOf()>t.valueOf()&&(n=e.date.add(n,-r,i)),n},nextTimelineSlot:function(t,a,i){var r=e.getState(),n=e.matrix[r.mode],s=this._alignTimeSlot(t.start_date,e.date[n.name+"_start"](new Date(t.start_date)),n.x_unit,n.x_step),d=this._alignTimeSlot(t.end_date,e.date[n.name+"_start"](new Date(t.end_date)),n.x_unit,n.x_step);d.valueOf()<=s.valueOf()&&(d=e.date.add(s,n.x_step,n.x_unit));
+var o=this.clone(t);switch(o.start_date=s,o.end_date=d,o.section=t.section||this._getNextSection(),a){case"up":o.section=this._getNextSection(t.section,-1);break;case"down":o.section=this._getNextSection(t.section,1);break;case"left":o.start_date=this.findVisibleColumn(e.date.add(o.start_date,-n.x_step,n.x_unit),-1),o.end_date=e.date.add(o.start_date,n.x_step,n.x_unit);break;case"right":o.start_date=this.findVisibleColumn(e.date.add(o.start_date,n.x_step,n.x_unit),1),o.end_date=e.date.add(o.start_date,n.x_step,n.x_unit);
+}return(o.start_date.valueOf()<r.min_date.valueOf()||o.start_date.valueOf()>=r.max_date.valueOf())&&(i&&o.start_date.valueOf()>=r.max_date.valueOf()?o.start_date=new Date(r.max_date):(o.start_date=e.date[r.mode+"_start"](e.date.add(r.date,"left"==a?-1:1,r.mode)),o.end_date=e.date.add(o.start_date,n.x_step,n.x_unit))),o},nextUnitsSlot:function(t,a,i){var r=this.clone(t);r.section=t.section||this._getNextSection();var n=t.section||this._getNextSection(),s=e.getState(),d=e._props[s.mode];switch(a){case"left":
+n=this._getNextSection(t.section,-1);var o=d.size?d.size-1:d.options.length;d.days>1&&d.order[n]==o-1&&e.date.add(t.start_date,-1,"day").valueOf()>=s.min_date.valueOf()&&(r=this.nextDaySlot(t,a,i));break;case"right":n=this._getNextSection(t.section,1),d.days>1&&!d.order[n]&&e.date.add(t.start_date,1,"day").valueOf()<s.max_date.valueOf()&&(r=this.nextDaySlot(t,a,i));break;default:r=this.nextDaySlot(t,a,i),n=t.section}return r.section=n,r},_moveDate:function(t,a){var i=this.findVisibleColumn(e.date.add(t,a,"day"),a);
+return i.setHours(t.getHours()),i.setMinutes(t.getMinutes()),i},isBeforeLastHour:function(t,a){var i=t.getMinutes(),r=t.getHours(),n=e.config.last_hour;return n>r||!a&&(24==n||r==n)&&!i},isAfterFirstHour:function(t,a){var i=t.getMinutes(),r=t.getHours(),n=e.config.first_hour,s=e.config.last_hour;return r>=n||!a&&!i&&(!r&&24==s||r==s)},isInVisibleDayTime:function(e,t){return this.isBeforeLastHour(e,t)&&this.isAfterFirstHour(e,t)},nextDaySlot:function(t,a,i){var r,n,s=e.config.key_nav_step,d=this._alignTimeSlot(t.start_date,e.date.day_start(new Date(t.start_date)),"minute",s),o=t.start_date;
+switch(a){case"up":if(r=e.date.add(d,-s,"minute"),!this.isInVisibleDayTime(r,!0)&&(!i||this.isInVisibleDayTime(o,!0))){var l=!0;i&&e.date.date_part(new Date(r)).valueOf()!=e.date.date_part(new Date(o)).valueOf()&&(l=!1),l&&(r=this.findVisibleColumn(e.date.add(t.start_date,-1,"day"),-1)),r.setHours(e.config.last_hour),r.setMinutes(0),r=e.date.add(r,-s,"minute")}n=e.date.add(r,s,"minute");break;case"down":r=e.date.add(d,s,"minute");var c=i?r:e.date.add(r,s,"minute");if(!this.isInVisibleDayTime(c,!1)&&(!i||this.isInVisibleDayTime(o,!1)))if(i){
+var l=!0;e.date.date_part(new Date(o)).valueOf()==o.valueOf()&&(l=!1),l&&(r=this.findVisibleColumn(e.date.add(t.start_date,1,"day"),1)),r.setHours(e.config.first_hour),r.setMinutes(0),r=e.date.add(r,s,"minute")}else r=this.findVisibleColumn(e.date.add(t.start_date,1,"day"),1),r.setHours(e.config.first_hour),r.setMinutes(0);n=e.date.add(r,s,"minute");break;case"left":r=this._moveDate(t.start_date,-1),n=this._moveDate(t.end_date,-1);break;case"right":r=this._moveDate(t.start_date,1),n=this._moveDate(t.end_date,1);
+break;default:r=d,n=e.date.add(r,s,"minute")}return{start_date:r,end_date:n}},nextWeekAgendaSlot:function(t,a){var i,r,n=e.getState();switch(a){case"down":case"left":i=e.date.day_start(e.date.add(t.start_date,-1,"day")),i=this.findVisibleColumn(i,-1);break;case"up":case"right":i=e.date.day_start(e.date.add(t.start_date,1,"day")),i=this.findVisibleColumn(i,1);break;default:i=e.date.day_start(t.start_date)}return(t.start_date.valueOf()<n.min_date.valueOf()||t.start_date.valueOf()>=n.max_date.valueOf())&&(i=new Date(n.min_date)),
+r=new Date(i),r.setHours(e.config.last_hour),{start_date:i,end_date:r}},nextAgendaSlot:function(e,t){return{start_date:e.start_date,end_date:e.end_date}},isDateVisible:function(t){if(!e._ignores_detected)return!0;var a,i=e.matrix&&e.matrix[e.getState().mode];return a=i?e._get_date_index(i,t):e.locate_holder_day(t),!e._ignores[a]},findVisibleColumn:function(t,a){var i=t;a=a||1;for(var r=e.getState();!this.isDateVisible(i)&&(a>0&&i.valueOf()<=r.max_date.valueOf()||0>a&&i.valueOf()>=r.min_date.valueOf());)i=this.nextDateColumn(i,a);
+return i},nextDateColumn:function(t,a){a=a||1;var i,r=e.matrix&&e.matrix[e.getState().mode];return i=r?e.date.add(t,a*r.x_step,r.x_unit):e.date.day_start(e.date.add(t,a,"day"))},isVisible:function(t,a){if(!e._ignores_detected)return!0;for(var i=new Date(t);i.valueOf()<a.valueOf();){if(this.isDateVisible(i))return!0;i=this.nextDateColumn(i)}return!1},nextSlot:function(t,a,i,r){var n;i=i||this._getMode();var s=e.$keyboardNavigation.TimeSlot.prototype.clone(t);switch(i){case this._modes.units:n=this.nextUnitsSlot(s,a,r);
+break;case this._modes.timeline:n=this.nextTimelineSlot(s,a,r);break;case this._modes.year:n=this.nextMonthSlot(s,a,r);break;case this._modes.month:n=this.nextMonthSlot(s,a,r);break;case this._modes.weekAgenda:n=this.nextWeekAgendaSlot(s,a,r);break;case this._modes.list:n=this.nextAgendaSlot(s,a,r);break;case this._modes.dayColumns:n=this.nextDaySlot(s,a,r)}return n.start_date.valueOf()>=n.end_date.valueOf()&&(n=this.nextSlot(n,a,i)),e.$keyboardNavigation.TimeSlot.prototype.clone(n)},extendSlot:function(t,a){
+var i,r=this._getMode();switch(r){case this._modes.units:i="left"==a||"right"==a?this.nextUnitsSlot(t,a):this.extendUnitsSlot(t,a);break;case this._modes.timeline:i="down"==a||"up"==a?this.nextTimelineSlot(t,a):this.extendTimelineSlot(t,a);break;case this._modes.year:i=this.extendMonthSlot(t,a);break;case this._modes.month:i=this.extendMonthSlot(t,a);break;case this._modes.dayColumns:i=this.extendDaySlot(t,a);break;case this._modes.weekAgenda:i=this.extendWeekAgendaSlot(t,a);break;default:i=t}var n=e.getState();
+return i.start_date.valueOf()<n.min_date.valueOf()&&(i.start_date=this.findVisibleColumn(n.min_date),i.start_date.setHours(e.config.first_hour)),i.end_date.valueOf()>n.max_date.valueOf()&&(i.end_date=this.findVisibleColumn(n.max_date,-1)),e.$keyboardNavigation.TimeSlot.prototype.clone(i)},extendTimelineSlot:function(e,t){return this.extendGenericSlot({left:"start_date",right:"end_date"},e,t,"timeline")},extendWeekAgendaSlot:function(e,t){return this.extendGenericSlot({left:"start_date",right:"end_date"
+},e,t,"weekAgenda")},extendGenericSlot:function(t,a,i,r){var n,s=a.movingDate;if(s||(s=t[i]),!s||!t[i])return a;if(!i)return e.$keyboardNavigation.TimeSlot.prototype.clone(a);n=this.nextSlot({start_date:a[s],section:a.section},i,r,!0),n.start_date.valueOf()==a.start_date.valueOf()&&(n=this.nextSlot({start_date:n.start_date,section:n.section},i,r,!0)),n.movingDate=s;var d=this.extendSlotDates(a,n,n.movingDate);return d.end_date.valueOf()<=d.start_date.valueOf()&&(n.movingDate="end_date"==n.movingDate?"start_date":"end_date"),
+d=this.extendSlotDates(a,n,n.movingDate),n.start_date=d.start_date,n.end_date=d.end_date,n},extendSlotDates:function(e,t,a){var i={start_date:null,end_date:null};return"start_date"==a?(i.start_date=t.start_date,i.end_date=e.end_date):(i.start_date=e.start_date,i.end_date=t.start_date),i},extendMonthSlot:function(t,a){var t=this.extendGenericSlot({up:"start_date",down:"end_date",left:"start_date",right:"end_date"},t,a,"month");return t.start_date.setHours(e.config.first_hour),t.end_date=e.date.add(t.end_date,-1,"day"),
+t.end_date.setHours(e.config.last_hour),t},extendUnitsSlot:function(e,t){var a;switch(t){case"down":case"up":a=this.extendDaySlot(e,t);break;default:a=e}return a.section=e.section,a},extendDaySlot:function(e,t){return this.extendGenericSlot({up:"start_date",down:"end_date",left:"start_date",right:"end_date"},e,t,"dayColumns")},scrollSlot:function(t){var a=e.getState(),i=this.nextSlot(this,t);(i.start_date.valueOf()<a.min_date.valueOf()||i.start_date.valueOf()>=a.max_date.valueOf())&&e.setCurrentView(new Date(i.start_date)),
+this.moveTo(i)},keys:{left:function(){this.scrollSlot("left")},right:function(){this.scrollSlot("right")},down:function(){var t=this._getMode();t==this._modes.list?e.$keyboardNavigation.SchedulerNode.prototype.nextEventHandler():this.scrollSlot("down")},up:function(){var t=this._getMode();t==this._modes.list?e.$keyboardNavigation.SchedulerNode.prototype.prevEventHandler():this.scrollSlot("up")},"shift+down":function(){this.moveTo(this.extendSlot(this,"down"))},"shift+up":function(){this.moveTo(this.extendSlot(this,"up"));
+},"shift+right":function(){this.moveTo(this.extendSlot(this,"right"))},"shift+left":function(){this.moveTo(this.extendSlot(this,"left"))},enter:function(){var t={start_date:new Date(this.start_date),end_date:new Date(this.end_date)},a=e.getState().mode;if(e.matrix&&e.matrix[a]){var i=e.matrix[e.getState().mode];t[i.y_property]=this.section}else if(e._props&&e._props[a]){var r=e._props[a];t[r.map_to]=this.section}e.addEventNow(t)}}}),e.$keyboardNavigation.TimeSlot.prototype.bindAll(e.$keyboardNavigation.TimeSlot.prototype.keys),
+e.$keyboardNavigation.MinicalButton=function(e,t){this.container=e,this.index=t||0},e.$keyboardNavigation.MinicalButton.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{isValid:function(){return!0},focus:function(){e.$keyboardNavigation.dispatcher.globalNode.disable(),this.container.removeAttribute("tabindex"),e.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this)},blur:function(){this.container.setAttribute("tabindex","0"),e.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this)},
+getNode:function(){return this.index?this.container.querySelector(".dhx_cal_next_button"):this.container.querySelector(".dhx_cal_prev_button")},keys:{right:function(t){this.moveTo(new e.$keyboardNavigation.MinicalButton(this.container,this.index?0:1))},left:function(t){this.moveTo(new e.$keyboardNavigation.MinicalButton(this.container,this.index?0:1))},down:function(){var t=new e.$keyboardNavigation.MinicalCell(this.container,0,0);t&&!t.isValid()&&(t=t.fallback()),this.moveTo(t)},enter:function(e){
+this.getNode().click()}}}),e.$keyboardNavigation.MinicalButton.prototype.bindAll(e.$keyboardNavigation.MinicalButton.prototype.keys),e.$keyboardNavigation.MinicalCell=function(e,t,a){this.container=e,this.row=t||0,this.col=a||0},e.$keyboardNavigation.MinicalCell.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{isValid:function(){var e=this._getGrid();return!(!e[this.row]||!e[this.row][this.col])},fallback:function(){var t=this.row,a=this.col,i=this._getGrid();i[t]||(t=0);var r=!0;if(t>i.length/2&&(r=!1),
+r){for(var n=a;n<i[t].length;n++)if(i[t][n]||n!=i[t].length-1||(t++,a=0),i[t][n])return new e.$keyboardNavigation.MinicalCell(this.container,t,n)}else for(var n=a;n<i[t].length;n--)if(i[t][n]||n||(t--,a=i[t].length-1),i[t][n])return new e.$keyboardNavigation.MinicalCell(this.container,t,n);return new e.$keyboardNavigation.MinicalButton(this.container,0)},focus:function(){e.$keyboardNavigation.dispatcher.globalNode.disable(),this.container.removeAttribute("tabindex"),e.$keyboardNavigation.KeyNavNode.prototype.focus.apply(this);
+},blur:function(){this.container.setAttribute("tabindex","0"),e.$keyboardNavigation.KeyNavNode.prototype.blur.apply(this)},_getNode:function(e,t){return this.container.querySelector(".dhx_year_body tr:nth-child("+(e+1)+") td:nth-child("+(t+1)+")")},getNode:function(){return this._getNode(this.row,this.col)},_getGrid:function(){for(var t=this.container.querySelectorAll(".dhx_year_body tr"),a=[],i=0;i<t.length;i++){a[i]=[];for(var r=t[i],n=r.querySelectorAll("td"),s=0;s<n.length;s++){var d=n[s],o=!0,l=e._getClassName(d);
+(l.indexOf("dhx_after")>-1||l.indexOf("dhx_before")>-1||l.indexOf("dhx_scale_ignore")>-1)&&(o=!1),a[i][s]=o}}return a},keys:{right:function(t){var a=this._getGrid(),i=this.row,r=this.col+1;a[i]&&a[i][r]||(a[i+1]?(i+=1,r=0):r=this.col);var n=new e.$keyboardNavigation.MinicalCell(this.container,i,r);n.isValid()||(n=n.fallback()),this.moveTo(n)},left:function(t){var a=this._getGrid(),i=this.row,r=this.col-1;a[i]&&a[i][r]||(a[i-1]?(i-=1,r=a[i].length-1):r=this.col);var n=new e.$keyboardNavigation.MinicalCell(this.container,i,r);
+n.isValid()||(n=n.fallback()),this.moveTo(n)},down:function(){var t=this._getGrid(),a=this.row+1,i=this.col;t[a]&&t[a][i]||(a=this.row);var r=new e.$keyboardNavigation.MinicalCell(this.container,a,i);r.isValid()||(r=r.fallback()),this.moveTo(r)},up:function(){var t=this._getGrid(),a=this.row-1,i=this.col;if(t[a]&&t[a][i]){var r=new e.$keyboardNavigation.MinicalCell(this.container,a,i);r.isValid()||(r=r.fallback()),this.moveTo(r)}else{var n=0;this.col>t[this.row].length/2&&(n=1),this.moveTo(new e.$keyboardNavigation.MinicalButton(this.container,n));
+}},enter:function(e){this.getNode().querySelector(".dhx_month_head").click()}}}),e.$keyboardNavigation.MinicalCell.prototype.bindAll(e.$keyboardNavigation.MinicalCell.prototype.keys),e.$keyboardNavigation.DataArea=function(e){this.index=e||0},e.$keyboardNavigation.DataArea.prototype=e._compose(e.$keyboardNavigation.KeyNavNode,{getNode:function(t){return e.$container.querySelector(".dhx_cal_data")},_handlers:null,isValid:function(){return!0},fallback:function(){return this},keys:{"up,down,right,left":function(){
+this.moveTo(new e.$keyboardNavigation.TimeSlot)}}}),e.$keyboardNavigation.DataArea.prototype.bindAll(e.$keyboardNavigation.DataArea.prototype.keys),dhtmlx._modalsStack||(dhtmlx._modalsStack=[]),function(){function t(){return!(!l.length&&!dhtmlx._modalsStack.length)}function a(e,t){for(;e&&e!=t;)e=e.parentNode;return!(e!=t)}function i(i){setTimeout(function(){t()||a(document.activeElement,e.$container)||e.focus()},1)}function r(t){e.eventRemove(t,"keydown",d),e.event(t,"keydown",d),l.push(t)}function n(){
+var t=l.pop();t&&e.eventRemove(t,"keydown",d),i(t)}function s(e){return dhtmlx._modalsStack.length?e==dhtmlx._modalsStack[dhtmlx._modalsStack.length-1]:e==l[l.length-1]}function d(t){var t=t||window.event,a=t.currentTarget;s(a)&&e.$keyboardNavigation.trapFocus(a,t)}function o(){r(e.getLightbox())}var l=[];if(e.attachEvent("onLightbox",o),e.attachEvent("onAfterLightbox",n),e.attachEvent("onAfterQuickInfo",function(){i()}),!dhtmlx._keyNavMessagePopup){dhtmlx._keyNavMessagePopup=!0;var c=null,h=null;
+dhtmlx.attachEvent("onMessagePopup",function(t){for(c=document.activeElement,h=c;h&&e._getClassName(h).indexOf("dhx_cal_data")<0;)h=h.parentNode;h&&(h=h.parentNode),e.eventRemove(t,"keydown",d),e.event(t,"keydown",d),dhtmlx._modalsStack.push(t)}),dhtmlx.attachEvent("onAfterMessagePopup",function(){var t=dhtmlx._modalsStack.pop();t&&e.eventRemove(t,"keydown",d),setTimeout(function(){for(var t=document.activeElement;t&&e._getClassName(t).indexOf("dhx_cal_light")<0;)t=t.parentNode;t||(c&&c.parentNode?c.focus():h&&h.parentNode&&h.focus(),
+c=null,h=null)},1)})}e.$keyboardNavigation.isModal=t}(),e.$keyboardNavigation.dispatcher={isActive:!1,activeNode:null,globalNode:new e.$keyboardNavigation.SchedulerNode,enable:function(){this.isActive=!0,this.globalNode.enable(),this.setActiveNode(this.getActiveNode())},disable:function(){this.isActive=!1,this.globalNode.disable()},isEnabled:function(){return!!this.isActive},getDefaultNode:function(){return this.globalNode.getDefaultNode()},setDefaultNode:function(){this.setActiveNode(this.getDefaultNode());
+},getActiveNode:function(){var e=this.activeNode;return e&&!e.isValid()&&(e=e.fallback()),e},focusGlobalNode:function(){this.blurNode(this.globalNode),this.focusNode(this.globalNode)},setActiveNode:function(e){e&&e.isValid()&&(this.activeNode&&this.activeNode.compareTo(e)||this.isEnabled()&&(this.blurNode(this.activeNode),this.activeNode=e,this.focusNode(this.activeNode)))},focusNode:function(t){t&&t.focus&&(t.focus(),t.getNode&&document.activeElement!=t.getNode()&&this.setActiveNode(new e.$keyboardNavigation.DataArea));
+},blurNode:function(e){e&&e.blur&&e.blur()},keyDownHandler:function(t){var a=this.getActiveNode();if((!e.$keyboardNavigation.isModal()||a&&a.container&&e._locate_css({target:a.container},"dhx_minical_popup",!1))&&this.isEnabled()){t=t||window.event;var i=this.globalNode,r=e.$keyboardNavigation.shortcuts.getCommandFromEvent(t);a?a.findHandler(r)?a.doAction(r,t):i.findHandler(r)&&i.doAction(r,t):this.setDefaultNode()}}},e._temp_key_scope=function(){function t(e){e=e||window.event,s.x=e.clientX,s.y=e.clientY;
+}function a(){for(var t=!1,a=!1,i=document.elementFromPoint(s.x,s.y);i&&i!=e._obj;)i=i.parentNode;return t=!(i!=e._obj),a=e.$keyboardNavigation.dispatcher.isEnabled(),t||a}function i(e){delete e.rec_type,delete e.rec_pattern,delete e.event_pid,delete e.event_length}function r(){var t=e.$keyboardNavigation.dispatcher.getActiveNode();return t&&t.eventId?t.eventId:e._select_id}e.config.key_nav=!0,e.$keyboardNavigation._pasteDate=null,e.$keyboardNavigation._pasteSection=null;var n=null,s={};document.body?dhtmlxEvent(document.body,"mousemove",t):dhtmlxEvent(window,"load",function(){
+dhtmlxEvent(document.body,"mousemove",t)}),e.attachEvent("onMouseMove",function(t,a){var i=e.getState();if(i.mode&&i.min_date){var r=e.getActionData(a);e.$keyboardNavigation._pasteDate=r.date,e.$keyboardNavigation._pasteSection=r.section}}),e._make_pasted_event=function(t){var a=e.$keyboardNavigation._pasteDate,r=e.$keyboardNavigation._pasteSection,n=t.end_date-t.start_date,s=e._lame_copy({},t);if(i(s),s.start_date=new Date(a),s.end_date=new Date(s.start_date.valueOf()+n),r){var d=e._get_section_property();
+e.config.multisection?s[d]=t[d]:s[d]=r}return s},e._do_paste=function(t,a,i){e.addEvent(a),e.callEvent("onEventPasted",[t,a,i])},e._is_key_nav_active=function(){return this._is_initialized()&&!this._is_lightbox_open()&&this.config.key_nav?!0:!1},e._key_nav_copy_paste=function(t){if(!e._is_key_nav_active())return!0;if(t=t||event,37==t.keyCode||39==t.keyCode){t.cancelBubble=!0;var i=e.date.add(e._date,37==t.keyCode?-1:1,e._mode);return e.setCurrentView(i),!0}var s=r();if((t.ctrlKey||t.metaKey)&&67==t.keyCode)return s&&(e._buffer_id=s,
+n=!0,e.callEvent("onEventCopied",[e.getEvent(s)])),!0;if((t.ctrlKey||t.metaKey)&&88==t.keyCode&&s){n=!1,e._buffer_id=s;var d=e.getEvent(s);e.updateEvent(d.id),e.callEvent("onEventCut",[d])}if((t.ctrlKey||t.metaKey)&&86==t.keyCode&&a(t)){var d=e.getEvent(e._buffer_id);if(d){var o=e._make_pasted_event(d);if(n)o.id=e.uid(),e._do_paste(n,o,d);else{var l=e.callEvent("onBeforeEventChanged",[o,t,!1,d]);l&&(e._do_paste(n,o,d),n=!0)}}return!0}}},e._temp_key_scope(),function(){function t(e){clearTimeout(_),
+_=setTimeout(e,1)}function a(t){if(e.config.key_nav&&l.isEnabled()){var a=t,i=new e.$keyboardNavigation.Event(a.eventId);if(!i.isValid()){var r=i.start||a.start,n=i.end||a.end,s=i.section||a.section;i=new e.$keyboardNavigation.TimeSlot(r,n,s),i.isValid()||(i=new e.$keyboardNavigation.TimeSlot)}l.setActiveNode(i);var d=l.getActiveNode();d&&d.getNode&&document.activeElement!=d.getNode()&&l.focusNode(l.getActiveNode())}}function i(e,t){for(;e&&e!=t;)e=e.parentNode;return!(e!=t)}function r(e){for(var t=0;t<v.length;t++)if(i(e,v[t]))return!0;
+return!1}function n(t){var a=t.target;l.enable(),l.setActiveNode(new e.$keyboardNavigation.MinicalButton(a,0))}function s(a){var i=a.target||a.srcElement,r=e._locate_css(a,"dhx_cal_prev_button",!1),n=e._locate_css(a,"dhx_cal_next_button",!1),s=e._locate_css(a,"dhx_year_body",!1),d=0,o=0;if(s){for(var c,h,_=i;_&&"td"!=_.tagName.toLowerCase();)_=_.parentNode;if(_&&(h=_,c=h.parentNode),c&&h){for(var u=c.parentNode.querySelectorAll("tr"),v=0;v<u.length;v++)if(u[v]==c){d=v;break}for(var g=c.querySelectorAll("td"),v=0;v<g.length;v++)if(g[v]==h){
+o=v;break}}}var f=a.currentTarget;t(function(){(r||n||s)&&(l.enable(),l.activeNode=null),r?l.setActiveNode(new e.$keyboardNavigation.MinicalButton(f,0)):n?l.setActiveNode(new e.$keyboardNavigation.MinicalButton(f,1)):s&&l.setActiveNode(new e.$keyboardNavigation.MinicalCell(f,d,o))})}function d(){if(e.config.key_nav){var t,a=document.activeElement;return t=!a||e._locate_css(a,"dhx_cal_quick_info",!1)?!1:i(a,e.$container)||r(a)}}function o(e){e&&!l.isEnabled()?l.enable():!e&&l.isEnabled()&&l.disable();
+}var l=e.$keyboardNavigation.dispatcher,c=function(t){return e.config.key_nav&&!e._edit_id?l.keyDownHandler(t):void 0},h=function(){l.focusGlobalNode()};e.attachEvent("onDataRender",function(){if(e.config.key_nav&&l.isEnabled()&&!e.getState().editor_id){var t=l.getActiveNode();if(t instanceof e.$keyboardNavigation.MinicalButton||t instanceof e.$keyboardNavigation.MinicalCell)return;t.isValid()?l.focusNode(t):l.setActiveNode(t.fallback()),l.focusNode(l.getActiveNode())}}),e.attachEvent("onSchedulerReady",function(){
+var t=e.$container;e.eventRemove(document,"keydown",c),e.eventRemove(t,"focus",h),e.config.key_nav?(e.event(document,"keydown",c),e.event(t,"focus",h),t.setAttribute("tabindex","0")):t.removeAttribute("tabindex")});var _=null;e.attachEvent("onEventAdded",function(i,r){if(!e.config.key_nav)return!0;if(l.isEnabled()){var n=new e.$keyboardNavigation.Event(i);t(function(){a(n)})}});var u=e.updateEvent;e.updateEvent=function(i){var r=!1,n=document.activeElement;n&&e._getClassName(n).indexOf("dhx_cal_editor")>-1&&(r=!0);
+var s=u.apply(this,arguments);if(e.config.key_nav&&l.isEnabled()){var d=l.getActiveNode();if(d.eventId==i||r){var o=new e.$keyboardNavigation.Event(i);r?(l.disable(),t(function(){l.enable(),a(o)})):a(o)}}return s},e.attachEvent("onEventDeleted",function(t){if(!e.config.key_nav)return!0;if(l.isEnabled()){var a=l.getActiveNode();a.eventId==t&&l.setActiveNode(new e.$keyboardNavigation.TimeSlot)}return!0}),e.attachEvent("onClearAll",function(){return e.config.key_nav?void(l.isEnabled()&&l.getActiveNode()instanceof e.$keyboardNavigation.Event&&l.setActiveNode(new e.$keyboardNavigation.TimeSlot)):!0;
+}),e.attachEvent("onClick",function(i){if(!e.config.key_nav)return!0;var r=new e.$keyboardNavigation.Event(i);return t(function(){e.getEvent(i)&&(l.enable(),a(r))}),!0}),e.attachEvent("onEmptyClick",function(t,a){if(!e.config.key_nav)return!0;if(l.isEnabled()||l.enable(),l.isEnabled()){var i=e.getActionData(a);if(i.date){var r=e.$keyboardNavigation.TimeSlot;l.setActiveNode(r.prototype.nextSlot(new r(i.date,null,i.section)))}}});var v=[],g=e.renderCalendar;e.renderCalendar=function(){var t=g.apply(this,arguments);
+t._key_nav_click||(t._key_nav_click=!0,e.event(t,"click",s)),t._key_nav_focus||(t._key_nav_focus=!0,e.event(t,"focus",n));for(var a=!1,i=0;i<v.length;i++)if(v[i]==t){a=!0;break}if(a||v.push(t),l.isEnabled()){var r=l.getActiveNode();r.container==t?l.focusNode(r):t.setAttribute("tabindex","0")}else t.setAttribute("tabindex","0");return t};var f=e.destroyCalendar;e.destroyCalendar=function(t){for(var a=0;a<v.length;a++)v[a]==t&&(e.eventRemove(v[a],"focus",n),v[a].splice(a,1),a--);return f.apply(this,arguments);
+},setInterval(function(){var t=d();t?o(t):!t&&l.isEnabled()&&setTimeout(function(){e.config.key_nav?o(d()):e.$container.removeAttribute("tabindex")},20)},500)}()}window.Scheduler?window.Scheduler.plugin(e):e(window.scheduler)}();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_key_nav.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_layer.js b/codebase/ext/dhtmlxscheduler_layer.js
index e01f7b0..2d7b724 100644
--- a/codebase/ext/dhtmlxscheduler_layer.js
+++ b/codebase/ext/dhtmlxscheduler_layer.js
@@ -1,37 +1,28 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
scheduler.attachEvent("onTemplatesReady",function(){this.layers.sort(function(e,t){return e.zIndex-t.zIndex}),scheduler._dp_init=function(e){e._methods=["_set_event_text_style","","changeEventId","deleteEvent"],this.attachEvent("onEventAdded",function(t){!this._loading&&this.validId(t)&&this.getEvent(t)&&this.getEvent(t).layer==e.layer&&e.setUpdated(t,!0,"inserted")}),this.attachEvent("onBeforeEventDelete",function(t){if(this.getEvent(t)&&this.getEvent(t).layer==e.layer){if(!this.validId(t))return;
-
-var a=e.getState(t);return"inserted"==a||this._new_event?(e.setUpdated(t,!1),!0):"deleted"==a?!1:"true_deleted"==a?!0:(e.setUpdated(t,!0,"deleted"),!1)}return!0}),this.attachEvent("onEventChanged",function(t){!this._loading&&this.validId(t)&&this.getEvent(t)&&this.getEvent(t).layer==e.layer&&e.setUpdated(t,!0,"updated")}),e._getRowData=function(e,t){var a=this.obj.getEvent(e),i={};for(var n in a)0!==n.indexOf("_")&&(a[n]&&a[n].getUTCFullYear?i[n]=this.obj.templates.xml_format(a[n]):i[n]=a[n]);return i;
-
+var a=e.getState(t);return"inserted"==a||this._new_event?(e.setUpdated(t,!1),!0):"deleted"==a?!1:"true_deleted"==a?!0:(e.setUpdated(t,!0,"deleted"),!1)}return!0}),this.attachEvent("onEventChanged",function(t){!this._loading&&this.validId(t)&&this.getEvent(t)&&this.getEvent(t).layer==e.layer&&e.setUpdated(t,!0,"updated")}),e._getRowData=function(e,t){var a=this.obj.getEvent(e),i={};for(var r in a)0!==r.indexOf("_")&&(a[r]&&a[r].getUTCFullYear?i[r]=this.obj.templates.xml_format(a[r]):i[r]=a[r]);return i;
},e._clearUpdateFlag=function(){},e.attachEvent("insertCallback",scheduler._update_callback),e.attachEvent("updateCallback",scheduler._update_callback),e.attachEvent("deleteCallback",function(e,t){this.obj.setUserData(t,this.action_param,"true_deleted"),this.obj.deleteEvent(t)})},function(){var e=function(t){if(null===t||"object"!=typeof t)return t;var a=new t.constructor;for(var i in t)a[i]=e(t[i]);return a};scheduler._dataprocessors=[],scheduler._layers_zindex={};for(var t=0;t<scheduler.layers.length;t++){
if(scheduler.config["lightbox_"+scheduler.layers[t].name]={},scheduler.config["lightbox_"+scheduler.layers[t].name].sections=e(scheduler.config.lightbox.sections),scheduler._layers_zindex[scheduler.layers[t].name]=scheduler.config.inital_layer_zindex||5+3*t,scheduler.layers[t].url){var a=new dataProcessor(scheduler.layers[t].url);a.layer=scheduler.layers[t].name,scheduler._dataprocessors.push(a),scheduler._dataprocessors[t].init(scheduler)}scheduler.layers[t].isDefault&&(scheduler.defaultLayer=scheduler.layers[t].name);
-
}}(),scheduler.showLayer=function(e){this.toggleLayer(e,!0)},scheduler.hideLayer=function(e){this.toggleLayer(e,!1)},scheduler.toggleLayer=function(e,t){var a=this.getLayer(e);"undefined"!=typeof t?a.visible=!!t:a.visible=!a.visible,this.setCurrentView(this._date,this._mode)},scheduler.getLayer=function(e){var t,a;"string"==typeof e&&(a=e),"object"==typeof e&&(a=e.layer);for(var i=0;i<scheduler.layers.length;i++)scheduler.layers[i].name==a&&(t=scheduler.layers[i]);return t},scheduler.attachEvent("onBeforeLightbox",function(e){
-var t=this.getEvent(e);return this.config.lightbox.sections=this.config["lightbox_"+t.layer].sections,scheduler.resetLightbox(),!0}),scheduler.attachEvent("onClick",function(e,t){var a=scheduler.getEvent(e);return!scheduler.getLayer(a.layer).noMenu}),scheduler.attachEvent("onEventCollision",function(e,t){var a=this.getLayer(e);if(!a.checkCollision)return!1;for(var i=0,n=0;n<t.length;n++)t[n].layer==a.name&&t[n].id!=e.id&&i++;return i>=scheduler.config.collision_limit}),scheduler.addEvent=function(e,t,a,i,n){
-var r=e;1!=arguments.length&&(r=n||{},r.start_date=e,r.end_date=t,r.text=a,r.id=i,r.layer=this.defaultLayer),r.id=r.id||scheduler.uid(),r.text=r.text||"","string"==typeof r.start_date&&(r.start_date=this.templates.api_date(r.start_date)),"string"==typeof r.end_date&&(r.end_date=this.templates.api_date(r.end_date)),r._timed=this.isOneDayEvent(r);var l=!this._events[r.id];this._events[r.id]=r,this.event_updated(r),this._loading||this.callEvent(l?"onEventAdded":"onEventChanged",[r.id,r])},this._evs_layer={};
-
-for(var e=0;e<this.layers.length;e++)this._evs_layer[this.layers[e].name]=[];scheduler.addEventNow=function(e,t,a){var i={};"object"==typeof e&&(i=e,e=null);var n=6e4*(this.config.event_duration||this.config.time_step);e||(e=Math.round(scheduler._currentDate().valueOf()/n)*n);var r=new Date(e);if(!t){var l=this.config.first_hour;l>r.getHours()&&(r.setHours(l),e=r.valueOf()),t=e+n}i.start_date=i.start_date||r,i.end_date=i.end_date||new Date(t),i.text=i.text||this.locale.labels.new_event,i.id=this._drag_id=this.uid(),
+var t=this.getEvent(e);return this.config.lightbox.sections=this.config["lightbox_"+t.layer].sections,scheduler.resetLightbox(),!0}),scheduler.attachEvent("onClick",function(e,t){var a=scheduler.getEvent(e);return!scheduler.getLayer(a.layer).noMenu}),scheduler.attachEvent("onEventCollision",function(e,t){var a=this.getLayer(e);if(!a.checkCollision)return!1;for(var i=0,r=0;r<t.length;r++)t[r].layer==a.name&&t[r].id!=e.id&&i++;return i>=scheduler.config.collision_limit}),scheduler.addEvent=function(e,t,a,i,r){
+var n=e;1!=arguments.length&&(n=r||{},n.start_date=e,n.end_date=t,n.text=a,n.id=i,n.layer=this.defaultLayer),n.id=n.id||scheduler.uid(),n.text=n.text||"","string"==typeof n.start_date&&(n.start_date=this.templates.api_date(n.start_date)),"string"==typeof n.end_date&&(n.end_date=this.templates.api_date(n.end_date)),n._timed=this.isOneDayEvent(n);var s=!this._events[n.id];this._events[n.id]=n,this.event_updated(n),this._loading||this.callEvent(s?"onEventAdded":"onEventChanged",[n.id,n])},this._evs_layer={};
+for(var e=0;e<this.layers.length;e++)this._evs_layer[this.layers[e].name]=[];scheduler.addEventNow=function(e,t,a){var i={};"object"==typeof e&&(i=e,e=null);var r=6e4*(this.config.event_duration||this.config.time_step);e||(e=Math.round(scheduler._currentDate().valueOf()/r)*r);var n=new Date(e);if(!t){var s=this.config.first_hour;s>n.getHours()&&(n.setHours(s),e=n.valueOf()),t=e+r}i.start_date=i.start_date||n,i.end_date=i.end_date||new Date(t),i.text=i.text||this.locale.labels.new_event,i.id=this._drag_id=this.uid(),
i.layer=this.defaultLayer,this._drag_mode="new-size",this._loading=!0,this.addEvent(i),this.callEvent("onEventCreated",[this._drag_id,a]),this._loading=!1,this._drag_event={},this._on_mouse_up(a)},scheduler._t_render_view_data=function(e){if(this.config.multi_day&&!this._table_view){for(var t=[],a=[],i=0;i<e.length;i++)e[i]._timed?t.push(e[i]):a.push(e[i]);this._table_view=!0,this.render_data(a),this._table_view=!1,this.render_data(t)}else this.render_data(e)},scheduler.render_view_data=function(){
if(this._not_render)return void(this._render_wait=!0);this._render_wait=!1,this.clear_view(),this._evs_layer={};for(var e=0;e<this.layers.length;e++)this._evs_layer[this.layers[e].name]=[];for(var t=this.get_visible_events(),e=0;e<t.length;e++)this._evs_layer[t[e].layer]&&this._evs_layer[t[e].layer].push(t[e]);if("month"==this._mode){for(var a=[],e=0;e<this.layers.length;e++)this.layers[e].visible&&(a=a.concat(this._evs_layer[this.layers[e].name]));this._t_render_view_data(a)}else for(var e=0;e<this.layers.length;e++)if(this.layers[e].visible){
-var i=this._evs_layer[this.layers[e].name];this._t_render_view_data(i)}},scheduler._render_v_bar=function(e,t,a,i,n,r,l,d,s){var o=e.id;-1==l.indexOf("<div class=")&&(l=scheduler.templates["event_header_"+e.layer]?scheduler.templates["event_header_"+e.layer](e.start_date,e.end_date,e):l),-1==d.indexOf("<div class=")&&(d=scheduler.templates["event_text_"+e.layer]?scheduler.templates["event_text_"+e.layer](e.start_date,e.end_date,e):d);var _=document.createElement("DIV"),c="dhx_cal_event",u=scheduler.templates["event_class_"+e.layer]?scheduler.templates["event_class_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_class(e.start_date,e.end_date,e);
-
-u&&(c=c+" "+u);var h='<div event_id="'+o+'" class="'+c+'" style="position:absolute; top:'+a+"px; left:"+t+"px; width:"+(i-4)+"px; height:"+n+"px;"+(r||"")+'">';return h+='<div class="dhx_header" style=" width:'+(i-6)+'px;" >&nbsp;</div>',h+='<div class="dhx_title">'+l+"</div>",h+='<div class="dhx_body" style=" width:'+(i-(this._quirks?4:14))+"px; height:"+(n-(this._quirks?20:30))+'px;">'+d+"</div>",h+='<div class="dhx_footer" style=" width:'+(i-8)+"px;"+(s?" margin-top:-1px;":"")+'" ></div></div>',
-_.innerHTML=h,_.style.zIndex=100,_.firstChild},scheduler.render_event_bar=function(e){var t=this._els.dhx_cal_data[0],a=this._colsS[e._sday],i=this._colsS[e._eday];i==a&&(i=this._colsS[e._eday+1]);var n=this.xy.bar_height,r=this._colsS.heights[e._sweek]+(this._colsS.height?this.xy.month_scale_height+2:2)+e._sorder*n,l=document.createElement("DIV"),d=e._timed?"dhx_cal_event_clear":"dhx_cal_event_line",s=scheduler.templates["event_class_"+e.layer]?scheduler.templates["event_class_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_class(e.start_date,e.end_date,e);
-
-s&&(d=d+" "+s);var o='<div event_id="'+e.id+'" class="'+d+'" style="position:absolute; top:'+r+"px; left:"+a+"px; width:"+(i-a-15)+"px;"+(e._text_style||"")+'">';e._timed&&(o+=scheduler.templates["event_bar_date_"+e.layer]?scheduler.templates["event_bar_date_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_bar_date(e.start_date,e.end_date,e)),o+=scheduler.templates["event_bar_text_"+e.layer]?scheduler.templates["event_bar_text_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_bar_text(e.start_date,e.end_date,e)+"</div>)",
-o+="</div>",l.innerHTML=o,this._rendered.push(l.firstChild),t.appendChild(l.firstChild)},scheduler.render_event=function(e){var t=scheduler.xy.menu_width;if(scheduler.getLayer(e.layer).noMenu&&(t=0),!(e._sday<0)){var a=scheduler.locate_holder(e._sday);if(a){var i=60*e.start_date.getHours()+e.start_date.getMinutes(),n=60*e.end_date.getHours()+e.end_date.getMinutes()||60*scheduler.config.last_hour,r=Math.round((60*i*1e3-60*this.config.first_hour*60*1e3)*this.config.hour_size_px/36e5)%(24*this.config.hour_size_px)+1,l=Math.max(scheduler.xy.min_event_height,(n-i)*this.config.hour_size_px/60)+1,d=Math.floor((a.clientWidth-t)/e._count),s=e._sorder*d+1;
-
-e._inner||(d*=e._count-e._sorder);var o=this._render_v_bar(e.id,t+s,r,d,l,e._text_style,scheduler.templates.event_header(e.start_date,e.end_date,e),scheduler.templates.event_text(e.start_date,e.end_date,e));if(this._rendered.push(o),a.appendChild(o),s=s+parseInt(a.style.left,10)+t,r+=this._dy_shift,o.style.zIndex=this._layers_zindex[e.layer],this._edit_id==e.id){o.style.zIndex=parseInt(o.style.zIndex)+1;var _=o.style.zIndex;d=Math.max(d-4,scheduler.xy.editor_width);var o=document.createElement("DIV");
-
-o.setAttribute("event_id",e.id),this.set_xy(o,d,l-20,s,r+14),o.className="dhx_cal_editor",o.style.zIndex=_;var c=document.createElement("DIV");this.set_xy(c,d-6,l-26),c.style.cssText+=";margin:2px 2px 2px 2px;overflow:hidden;",c.style.zIndex=_,o.appendChild(c),this._els.dhx_cal_data[0].appendChild(o),this._rendered.push(o),c.innerHTML="<textarea class='dhx_cal_editor'>"+e.text+"</textarea>",this._quirks7&&(c.firstChild.style.height=l-12+"px"),this._editor=c.firstChild,this._editor.onkeypress=function(e){
-if((e||event).shiftKey)return!0;var t=(e||event).keyCode;t==scheduler.keys.edit_save&&scheduler.editStop(!0),t==scheduler.keys.edit_cancel&&scheduler.editStop(!1)},this._editor.onselectstart=function(e){return(e||event).cancelBubble=!0,!0},c.firstChild.focus(),this._els.dhx_cal_data[0].scrollLeft=0,c.firstChild.select()}if(this._select_id==e.id){o.style.zIndex=parseInt(o.style.zIndex)+1;for(var u=this.config["icons_"+(this._edit_id==e.id?"edit":"select")],h="",p=0;p<u.length;p++)h+="<div class='dhx_menu_icon "+u[p]+"' title='"+this.locale.labels[u[p]]+"'></div>";
-
-var v=this._render_v_bar(e.id,s-t+1,r,t,20*u.length+26,"","<div class='dhx_menu_head'></div>",h,!0);v.style.left=s-t+1,v.style.zIndex=o.style.zIndex,this._els.dhx_cal_data[0].appendChild(v),this._rendered.push(v)}}}},scheduler.filter_agenda=function(e,t){var a=scheduler.getLayer(t.layer);return a&&a.visible}});
+var i=this._evs_layer[this.layers[e].name];this._t_render_view_data(i)}},scheduler._render_v_bar=function(e,t,a,i,r,n,s,d,o){var l=e.id;-1==s.indexOf("<div class=")&&(s=scheduler.templates["event_header_"+e.layer]?scheduler.templates["event_header_"+e.layer](e.start_date,e.end_date,e):s),-1==d.indexOf("<div class=")&&(d=scheduler.templates["event_text_"+e.layer]?scheduler.templates["event_text_"+e.layer](e.start_date,e.end_date,e):d);var h=document.createElement("DIV"),c="dhx_cal_event",_=scheduler.templates["event_class_"+e.layer]?scheduler.templates["event_class_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_class(e.start_date,e.end_date,e);
+_&&(c=c+" "+_);var u='<div event_id="'+l+'" class="'+c+'" style="position:absolute; top:'+a+"px; left:"+t+"px; width:"+(i-4)+"px; height:"+r+"px;"+(n||"")+'">';return u+='<div class="dhx_header" style=" width:'+(i-6)+'px;" >&nbsp;</div>',u+='<div class="dhx_title">'+s+"</div>",u+='<div class="dhx_body" style=" width:'+(i-(this._quirks?4:14))+"px; height:"+(r-(this._quirks?20:30))+'px;">'+d+"</div>",u+='<div class="dhx_footer" style=" width:'+(i-8)+"px;"+(o?" margin-top:-1px;":"")+'" ></div></div>',
+h.innerHTML=u,h.style.zIndex=100,h.firstChild},scheduler.render_event_bar=function(e){var t=this._els.dhx_cal_data[0],a=this._colsS[e._sday],i=this._colsS[e._eday];i==a&&(i=this._colsS[e._eday+1]);var r=this.xy.bar_height,n=this._colsS.heights[e._sweek]+(this._colsS.height?this.xy.month_scale_height+2:2)+e._sorder*r,s=document.createElement("DIV"),d=e._timed?"dhx_cal_event_clear":"dhx_cal_event_line",o=scheduler.templates["event_class_"+e.layer]?scheduler.templates["event_class_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_class(e.start_date,e.end_date,e);
+o&&(d=d+" "+o);var l='<div event_id="'+e.id+'" class="'+d+'" style="position:absolute; top:'+n+"px; left:"+a+"px; width:"+(i-a-15)+"px;"+(e._text_style||"")+'">';e._timed&&(l+=scheduler.templates["event_bar_date_"+e.layer]?scheduler.templates["event_bar_date_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_bar_date(e.start_date,e.end_date,e)),l+=scheduler.templates["event_bar_text_"+e.layer]?scheduler.templates["event_bar_text_"+e.layer](e.start_date,e.end_date,e):scheduler.templates.event_bar_text(e.start_date,e.end_date,e)+"</div>)",
+l+="</div>",s.innerHTML=l,this._rendered.push(s.firstChild),t.appendChild(s.firstChild)},scheduler.render_event=function(e){var t=scheduler.xy.menu_width;if(scheduler.getLayer(e.layer).noMenu&&(t=0),!(e._sday<0)){var a=scheduler.locate_holder(e._sday);if(a){var i=60*e.start_date.getHours()+e.start_date.getMinutes(),r=60*e.end_date.getHours()+e.end_date.getMinutes()||60*scheduler.config.last_hour,n=Math.round((60*i*1e3-60*this.config.first_hour*60*1e3)*this.config.hour_size_px/36e5)%(24*this.config.hour_size_px)+1,s=Math.max(scheduler.xy.min_event_height,(r-i)*this.config.hour_size_px/60)+1,d=Math.floor((a.clientWidth-t)/e._count),o=e._sorder*d+1;
+e._inner||(d*=e._count-e._sorder);var l=this._render_v_bar(e.id,t+o,n,d,s,e._text_style,scheduler.templates.event_header(e.start_date,e.end_date,e),scheduler.templates.event_text(e.start_date,e.end_date,e));if(this._rendered.push(l),a.appendChild(l),o=o+parseInt(a.style.left,10)+t,n+=this._dy_shift,l.style.zIndex=this._layers_zindex[e.layer],this._edit_id==e.id){l.style.zIndex=parseInt(l.style.zIndex)+1;var h=l.style.zIndex;d=Math.max(d-4,scheduler.xy.editor_width);var l=document.createElement("DIV");
+l.setAttribute("event_id",e.id),this.set_xy(l,d,s-20,o,n+14),l.className="dhx_cal_editor",l.style.zIndex=h;var c=document.createElement("DIV");this.set_xy(c,d-6,s-26),c.style.cssText+=";margin:2px 2px 2px 2px;overflow:hidden;",c.style.zIndex=h,l.appendChild(c),this._els.dhx_cal_data[0].appendChild(l),this._rendered.push(l),c.innerHTML="<textarea class='dhx_cal_editor'>"+e.text+"</textarea>",this._quirks7&&(c.firstChild.style.height=s-12+"px"),this._editor=c.firstChild,this._editor.onkeypress=function(e){
+if((e||event).shiftKey)return!0;var t=(e||event).keyCode;t==scheduler.keys.edit_save&&scheduler.editStop(!0),t==scheduler.keys.edit_cancel&&scheduler.editStop(!1)},this._editor.onselectstart=function(e){return(e||event).cancelBubble=!0,!0},c.firstChild.focus(),this._els.dhx_cal_data[0].scrollLeft=0,c.firstChild.select()}if(this._select_id==e.id){l.style.zIndex=parseInt(l.style.zIndex)+1;for(var _=this.config["icons_"+(this._edit_id==e.id?"edit":"select")],u="",v=0;v<_.length;v++)u+="<div class='dhx_menu_icon "+_[v]+"' title='"+this.locale.labels[_[v]]+"'></div>";
+var f=this._render_v_bar(e.id,o-t+1,n,t,20*_.length+26,"","<div class='dhx_menu_head'></div>",u,!0);f.style.left=o-t+1,f.style.zIndex=l.style.zIndex,this._els.dhx_cal_data[0].appendChild(f),this._rendered.push(f)}}}},scheduler.filter_agenda=function(e,t){var a=scheduler.getLayer(t.layer);return a&&a.visible}});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_layer.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_limit.js b/codebase/ext/dhtmlxscheduler_limit.js
index 772e1ba..3d704bc 100644
--- a/codebase/ext/dhtmlxscheduler_limit.js
+++ b/codebase/ext/dhtmlxscheduler_limit.js
@@ -1,50 +1,41 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.config.limit_start=null,scheduler.config.limit_end=null,scheduler.config.limit_view=!1,scheduler.config.check_limits=!0,scheduler.config.mark_now=!0,scheduler.config.display_marked_timespans=!0,scheduler._temp_limit_scope=function(){function e(e,t,a,r,i){var n=scheduler,l=[],d={_props:"map_to",matrix:"y_property"};for(var s in d){var o=d[s];if(n[s])for(var _ in n[s]){var c=n[s][_],u=c[o];e[u]&&(l=n._add_timespan_zones(l,scheduler._get_blocked_zones(t[_],e[u],a,r,i)))}}return l=n._add_timespan_zones(l,scheduler._get_blocked_zones(t,"global",a,r,i));
-
+scheduler.config.limit_start=null,scheduler.config.limit_end=null,scheduler.config.limit_view=!1,scheduler.config.check_limits=!0,scheduler.config.mark_now=!0,scheduler.config.display_marked_timespans=!0,scheduler._temp_limit_scope=function(){function e(e,t,a,r,i){var n=scheduler,s=[],d={_props:"map_to",matrix:"y_property"};for(var l in d){var o=d[l];if(n[l])for(var _ in n[l]){var h=n[l][_],c=h[o];e[c]&&(s=n._add_timespan_zones(s,scheduler._get_blocked_zones(t[_],e[c],a,r,i)))}}return s=n._add_timespan_zones(s,scheduler._get_blocked_zones(t,"global",a,r,i));
}var t=null,a="dhx_time_block",r="default",i=function(e,t,a){return t instanceof Date&&a instanceof Date?(e.start_date=t,e.end_date=a):(e.days=t,e.zones=a),e},n=function(e,t,r){var n="object"==typeof e?e:{days:e};return n.type=a,n.css="",t&&(r&&(n.sections=r),n=i(n,e,t)),n};scheduler.blockTime=function(e,t,a){var r=n(e,t,a);return scheduler.addMarkedTimespan(r)},scheduler.unblockTime=function(e,t,a){t=t||"fullday";var r=n(e,t,a);return scheduler.deleteMarkedTimespan(r)},scheduler.attachEvent("onBeforeViewChange",function(e,t,a,r){
-function i(e,t){var a=scheduler.config.limit_start,r=scheduler.config.limit_end,i=scheduler.date.add(e,1,t);return e.valueOf()>r.valueOf()||i<=a.valueOf()}return scheduler.config.limit_view&&(r=r||t,a=a||e,i(r,a)&&t.valueOf()!=r.valueOf())?(setTimeout(function(){var e=i(t,a)?scheduler.config.limit_start:t;scheduler.setCurrentView(i(e,a)?null:e,a)},1),!1):!0}),scheduler.checkInMarkedTimespan=function(t,a,i){a=a||r;for(var n=!0,l=new Date(t.start_date.valueOf()),d=scheduler.date.add(l,1,"day"),s=scheduler._marked_timespans;l<t.end_date;l=scheduler.date.date_part(d),
-d=scheduler.date.add(l,1,"day")){var o=+scheduler.date.date_part(new Date(l)),_=l.getDay(),c=e(t,s,_,o,a);if(c)for(var u=0;u<c.length;u+=2){var h=scheduler._get_zone_minutes(l),p=t.end_date>d||t.end_date.getDate()!=l.getDate()?1440:scheduler._get_zone_minutes(t.end_date),v=c[u],m=c[u+1];if(p>v&&m>h&&(n="function"==typeof i?i(t,h,p,v,m):!1,!n))break}}return!n};var l=scheduler.checkLimitViolation=function(e){if(!e)return!0;if(!scheduler.config.check_limits)return!0;var t=scheduler,r=t.config,i=[];if(e.rec_type)for(var n=scheduler.getRecDates(e),l=0;l<n.length;l++){
-var d=scheduler._copy_event(e);scheduler._lame_copy(d,n[l]),i.push(d)}else i=[e];for(var s=!0,o=0;o<i.length;o++){var _=!0,d=i[o];d._timed=scheduler.isOneDayEvent(d),_=r.limit_start&&r.limit_end?d.start_date.valueOf()>=r.limit_start.valueOf()&&d.end_date.valueOf()<=r.limit_end.valueOf():!0,_&&(_=!scheduler.checkInMarkedTimespan(d,a,function(e,a,r,i,n){var l=!0;return n>=a&&a>=i&&((1440==n||n>r)&&(l=!1),e._timed&&t._drag_id&&"new-size"==t._drag_mode?(e.start_date.setHours(0),e.start_date.setMinutes(n)):l=!1),
-(r>=i&&n>r||i>a&&r>n)&&(e._timed&&t._drag_id&&"new-size"==t._drag_mode?(e.end_date.setHours(0),e.end_date.setMinutes(i)):l=!1),l})),_||(_=t.checkEvent("onLimitViolation")?t.callEvent("onLimitViolation",[d.id,d]):_),s=s&&_}return s||(t._drag_id=null,t._drag_mode=null),s};scheduler._get_blocked_zones=function(e,t,a,r,i){var n=[];if(e&&e[t])for(var l=e[t],d=this._get_relevant_blocked_zones(a,r,l,i),s=0;s<d.length;s++)n=this._add_timespan_zones(n,d[s].zones);return n},scheduler._get_relevant_blocked_zones=function(e,t,a,r){
-var i=a[t]&&a[t][r]?a[t][r]:a[e]&&a[e][r]?a[e][r]:[];return i},scheduler.attachEvent("onMouseDown",function(e){return!(e==a)}),scheduler.attachEvent("onBeforeDrag",function(e){return e?l(scheduler.getEvent(e)):!0}),scheduler.attachEvent("onClick",function(e,t){return l(scheduler.getEvent(e))}),scheduler.attachEvent("onBeforeLightbox",function(e){var a=scheduler.getEvent(e);return t=[a.start_date,a.end_date],l(a)}),scheduler.attachEvent("onEventSave",function(e,t,a){if(!t.start_date||!t.end_date){
-var r=scheduler.getEvent(e);t.start_date=new Date(r.start_date),t.end_date=new Date(r.end_date)}if(t.rec_type){var i=scheduler._lame_clone(t);return scheduler._roll_back_dates(i),l(i)}return l(t)}),scheduler.attachEvent("onEventAdded",function(e){if(!e)return!0;var t=scheduler.getEvent(e);return!l(t)&&scheduler.config.limit_start&&scheduler.config.limit_end&&(t.start_date<scheduler.config.limit_start&&(t.start_date=new Date(scheduler.config.limit_start)),t.start_date.valueOf()>=scheduler.config.limit_end.valueOf()&&(t.start_date=this.date.add(scheduler.config.limit_end,-1,"day")),
-t.end_date<scheduler.config.limit_start&&(t.end_date=new Date(scheduler.config.limit_start)),t.end_date.valueOf()>=scheduler.config.limit_end.valueOf()&&(t.end_date=this.date.add(scheduler.config.limit_end,-1,"day")),t.start_date.valueOf()>=t.end_date.valueOf()&&(t.end_date=this.date.add(t.start_date,this.config.event_duration||this.config.time_step,"minute")),t._timed=this.isOneDayEvent(t)),!0}),scheduler.attachEvent("onEventChanged",function(e){if(!e)return!0;var a=scheduler.getEvent(e);if(!l(a)){
-if(!t)return!1;a.start_date=t[0],a.end_date=t[1],a._timed=this.isOneDayEvent(a)}return!0}),scheduler.attachEvent("onBeforeEventChanged",function(e,t,a){return l(e)}),scheduler.attachEvent("onBeforeEventCreated",function(e){var t=scheduler.getActionData(e).date,a={_timed:!0,start_date:t,end_date:scheduler.date.add(t,scheduler.config.time_step,"minute")};return l(a)}),scheduler.attachEvent("onViewChange",function(){scheduler._mark_now()}),scheduler.attachEvent("onSchedulerResize",function(){return window.setTimeout(function(){
+function i(e,t){var a=scheduler.config.limit_start,r=scheduler.config.limit_end,i=scheduler.date.add(e,1,t);return e.valueOf()>r.valueOf()||i<=a.valueOf()}return scheduler.config.limit_view&&(r=r||t,a=a||e,i(r,a)&&t.valueOf()!=r.valueOf())?(setTimeout(function(){var e=i(t,a)?scheduler.config.limit_start:t;scheduler.setCurrentView(i(e,a)?null:e,a)},1),!1):!0}),scheduler.checkInMarkedTimespan=function(t,a,i){a=a||r;for(var n=!0,s=new Date(t.start_date.valueOf()),d=scheduler.date.add(s,1,"day"),l=scheduler._marked_timespans;s<t.end_date;s=scheduler.date.date_part(d),
+d=scheduler.date.add(s,1,"day")){var o=+scheduler.date.date_part(new Date(s)),_=s.getDay(),h=e(t,l,_,o,a);if(h)for(var c=0;c<h.length;c+=2){var u=scheduler._get_zone_minutes(s),v=t.end_date>d||t.end_date.getDate()!=s.getDate()?1440:scheduler._get_zone_minutes(t.end_date),f=h[c],g=h[c+1];if(v>f&&g>u&&(n="function"==typeof i?i(t,u,v,f,g):!1,!n))break}}return!n};var s=scheduler.checkLimitViolation=function(e){if(!e)return!0;if(!scheduler.config.check_limits)return!0;var t=scheduler,r=t.config,i=[];if(e.rec_type)for(var n=scheduler.getRecDates(e),s=0;s<n.length;s++){
+var d=scheduler._copy_event(e);scheduler._lame_copy(d,n[s]),i.push(d)}else i=[e];for(var l=!0,o=0;o<i.length;o++){var _=!0,d=i[o];d._timed=scheduler.isOneDayEvent(d),_=r.limit_start&&r.limit_end?d.start_date.valueOf()>=r.limit_start.valueOf()&&d.end_date.valueOf()<=r.limit_end.valueOf():!0,_&&(_=!scheduler.checkInMarkedTimespan(d,a,function(e,a,r,i,n){var s=!0;return n>=a&&a>=i&&((1440==n||n>r)&&(s=!1),e._timed&&t._drag_id&&"new-size"==t._drag_mode?(e.start_date.setHours(0),e.start_date.setMinutes(n)):s=!1),
+(r>=i&&n>r||i>a&&r>n)&&(e._timed&&t._drag_id&&"new-size"==t._drag_mode?(e.end_date.setHours(0),e.end_date.setMinutes(i)):s=!1),s})),_||(_=t.checkEvent("onLimitViolation")?t.callEvent("onLimitViolation",[d.id,d]):_),l=l&&_}return l||(t._drag_id=null,t._drag_mode=null),l};scheduler._get_blocked_zones=function(e,t,a,r,i){var n=[];if(e&&e[t])for(var s=e[t],d=this._get_relevant_blocked_zones(a,r,s,i),l=0;l<d.length;l++)n=this._add_timespan_zones(n,d[l].zones);return n},scheduler._get_relevant_blocked_zones=function(e,t,a,r){
+var i=a[t]&&a[t][r]?a[t][r]:a[e]&&a[e][r]?a[e][r]:[];return i},scheduler.attachEvent("onMouseDown",function(e){return!(e==a)}),scheduler.attachEvent("onBeforeDrag",function(e){return e?s(scheduler.getEvent(e)):!0}),scheduler.attachEvent("onClick",function(e,t){return s(scheduler.getEvent(e))}),scheduler.attachEvent("onBeforeLightbox",function(e){var a=scheduler.getEvent(e);return t=[a.start_date,a.end_date],s(a)}),scheduler.attachEvent("onEventSave",function(e,t,a){if(!t.start_date||!t.end_date){
+var r=scheduler.getEvent(e);t.start_date=new Date(r.start_date),t.end_date=new Date(r.end_date)}if(t.rec_type){var i=scheduler._lame_clone(t);return scheduler._roll_back_dates(i),s(i)}return s(t)}),scheduler.attachEvent("onEventAdded",function(e){if(!e)return!0;var t=scheduler.getEvent(e);return!s(t)&&scheduler.config.limit_start&&scheduler.config.limit_end&&(t.start_date<scheduler.config.limit_start&&(t.start_date=new Date(scheduler.config.limit_start)),t.start_date.valueOf()>=scheduler.config.limit_end.valueOf()&&(t.start_date=this.date.add(scheduler.config.limit_end,-1,"day")),
+t.end_date<scheduler.config.limit_start&&(t.end_date=new Date(scheduler.config.limit_start)),t.end_date.valueOf()>=scheduler.config.limit_end.valueOf()&&(t.end_date=this.date.add(scheduler.config.limit_end,-1,"day")),t.start_date.valueOf()>=t.end_date.valueOf()&&(t.end_date=this.date.add(t.start_date,this.config.event_duration||this.config.time_step,"minute")),t._timed=this.isOneDayEvent(t)),!0}),scheduler.attachEvent("onEventChanged",function(e){if(!e)return!0;var a=scheduler.getEvent(e);if(!s(a)){
+if(!t)return!1;a.start_date=t[0],a.end_date=t[1],a._timed=this.isOneDayEvent(a)}return!0}),scheduler.attachEvent("onBeforeEventChanged",function(e,t,a){return s(e)}),scheduler.attachEvent("onBeforeEventCreated",function(e){var t=scheduler.getActionData(e).date,a={_timed:!0,start_date:t,end_date:scheduler.date.add(t,scheduler.config.time_step,"minute")};return s(a)}),scheduler.attachEvent("onViewChange",function(){scheduler._mark_now()}),scheduler.attachEvent("onSchedulerResize",function(){return window.setTimeout(function(){
scheduler._mark_now()},1),!0}),scheduler.attachEvent("onTemplatesReady",function(){scheduler._mark_now_timer=window.setInterval(function(){scheduler._is_initialized()&&scheduler._mark_now()},6e4)}),scheduler._mark_now=function(e){var t="dhx_now_time";this._els[t]||(this._els[t]=[]);var a=scheduler._currentDate(),r=this.config;if(scheduler._remove_mark_now(),!e&&r.mark_now&&a<this._max_date&&a>this._min_date&&a.getHours()>=r.first_hour&&a.getHours()<r.last_hour){var i=this.locate_holder_day(a);this._els[t]=scheduler._append_mark_now(i,a);
-
-}},scheduler._append_mark_now=function(e,t){var a="dhx_now_time",r=scheduler._get_zone_minutes(t),i={zones:[r,r+1],css:a,type:a};if(!this._table_view){if(this._props&&this._props[this._mode]){for(var n=this._props[this._mode],l=n.size||n.options.length,d=e*l,s=(e+1)*l,o=(this._els.dhx_cal_data[0].childNodes,[]),_=d;s>_;_++){var c=_;i.days=c;var u=scheduler._render_marked_timespan(i,null,c)[0];o.push(u)}return o}return i.days=e,scheduler._render_marked_timespan(i,null,e)}return"month"==this._mode?(i.days=+scheduler.date.date_part(t),
+}},scheduler._append_mark_now=function(e,t){var a="dhx_now_time",r=scheduler._get_zone_minutes(t),i={zones:[r,r+1],css:a,type:a};if(!this._table_view){if(this._props&&this._props[this._mode]){var n,s,d=this._props[this._mode],l=d.size||d.options.length;d.days>1?(n=e,s=e+l):(n=0,s=n+l);for(var o=[],_=n;s>_;_++){var h=_;i.days=h;var c=scheduler._render_marked_timespan(i,null,h)[0];o.push(c)}return o}return i.days=e,scheduler._render_marked_timespan(i,null,e)}return"month"==this._mode?(i.days=+scheduler.date.date_part(t),
scheduler._render_marked_timespan(i,null,null)):void 0},scheduler._remove_mark_now=function(){for(var e="dhx_now_time",t=this._els[e],a=0;a<t.length;a++){var r=t[a],i=r.parentNode;i&&i.removeChild(r)}this._els[e]=[]},scheduler._marked_timespans={global:{}},scheduler._get_zone_minutes=function(e){return 60*e.getHours()+e.getMinutes()},scheduler._prepare_timespan_options=function(e){var t=[],a=[];if("fullweek"==e.days&&(e.days=[0,1,2,3,4,5,6]),e.days instanceof Array){for(var i=e.days.slice(),n=0;n<i.length;n++){
-var l=scheduler._lame_clone(e);l.days=i[n],t.push.apply(t,scheduler._prepare_timespan_options(l))}return t}if(!e||!(e.start_date&&e.end_date&&e.end_date>e.start_date||void 0!==e.days&&e.zones))return t;var d=0,s=1440;"fullday"==e.zones&&(e.zones=[d,s]),e.zones&&e.invert_zones&&(e.zones=scheduler.invertZones(e.zones)),e.id=scheduler.uid(),e.css=e.css||"",e.type=e.type||r;var o=e.sections;if(o){for(var _ in o)if(o.hasOwnProperty(_)){var c=o[_];c instanceof Array||(c=[c]);for(var n=0;n<c.length;n++){
-var u=scheduler._lame_copy({},e);u.sections={},u.sections[_]=c[n],a.push(u)}}}else a.push(e);for(var h=0;h<a.length;h++){var p=a[h],v=p.start_date,m=p.end_date;if(v&&m)for(var g=scheduler.date.date_part(new Date(v)),b=scheduler.date.add(g,1,"day");m>g;){var u=scheduler._lame_copy({},p);delete u.start_date,delete u.end_date,u.days=g.valueOf();var y=v>g?scheduler._get_zone_minutes(v):d,f=m>b||m.getDate()!=g.getDate()?s:scheduler._get_zone_minutes(m);u.zones=[y,f],t.push(u),g=b,b=scheduler.date.add(b,1,"day");
-
-}else p.days instanceof Date&&(p.days=scheduler.date.date_part(p.days).valueOf()),p.zones=e.zones.slice(),t.push(p)}return t},scheduler._get_dates_by_index=function(e,t,a){var r=[];t=scheduler.date.date_part(new Date(t||scheduler._min_date)),a=new Date(a||scheduler._max_date);for(var i=t.getDay(),n=e-i>=0?e-i:7-t.getDay()+e,l=scheduler.date.add(t,n,"day");a>l;l=scheduler.date.add(l,1,"week"))r.push(l);return r},scheduler._get_css_classes_by_config=function(e){var t=[];return e.type==a&&(t.push(a),
-e.css&&t.push(a+"_reset")),t.push("dhx_marked_timespan",e.css),t.join(" ")},scheduler._get_block_by_config=function(e){var t=document.createElement("DIV");return e.html&&("string"==typeof e.html?t.innerHTML=e.html:t.appendChild(e.html)),t},scheduler._render_marked_timespan=function(e,t,a){var r=[],i=scheduler.config,n=this._min_date,l=this._max_date,d=!1;if(!i.display_marked_timespans)return r;if(!a&&0!==a){if(e.days<7)a=e.days;else{var s=new Date(e.days);if(d=+s,!(+l>+s&&+s>=+n))return r;a=s.getDay();
-
-}var o=n.getDay();o>a?a=7-(o-a):a-=o}var _=e.zones,c=scheduler._get_css_classes_by_config(e);if(scheduler._table_view&&"month"==scheduler._mode){var u=[],h=[];if(t)u.push(t),h.push(a);else{h=d?[d]:scheduler._get_dates_by_index(a);for(var p=0;p<h.length;p++)u.push(this._scales[h[p]])}for(var p=0;p<u.length;p++){t=u[p],a=h[p];var v=Math.floor((this._correct_shift(a,1)-n.valueOf())/(864e5*this._cols.length)),m=this.locate_holder_day(a,!1)%this._cols.length;if(!this._ignores[m]){var g=scheduler._get_block_by_config(e),b=Math.max(t.offsetHeight-1,0),y=Math.max(t.offsetWidth-1,0),f=this._colsS[m],x=this._colsS.heights[v]+(this._colsS.height?this.xy.month_scale_height+2:2)-1;
-
-g.className=c,g.style.top=x+"px",g.style.lineHeight=g.style.height=b+"px";for(var k=0;k<_.length;k+=2){var w=_[p],D=_[p+1];if(w>=D)return[];var E=g.cloneNode(!0);E.style.left=f+Math.round(w/1440*y)+"px",E.style.width=Math.round((D-w)/1440*y)+"px",t.appendChild(E),r.push(E)}}}}else{var M=a;if(this._ignores[this.locate_holder_day(a,!1)])return r;if(this._props&&this._props[this._mode]&&e.sections&&e.sections[this._mode]){var S=this._props[this._mode];M=S.order[e.sections[this._mode]];var O=S.order[e.sections[this._mode]];
-
-if(S.days>1){var N=S.size||S.options.length;M=M*N+O}else M=O,S.size&&M>S.position+S.size&&(M=0)}t=t?t:scheduler.locate_holder(M);for(var p=0;p<_.length;p+=2){var w=Math.max(_[p],60*i.first_hour),D=Math.min(_[p+1],60*i.last_hour);if(w>=D){if(p+2<_.length)continue;return[]}var E=scheduler._get_block_by_config(e);E.className=c;var L=24*this.config.hour_size_px+1,A=36e5;E.style.top=Math.round((60*w*1e3-this.config.first_hour*A)*this.config.hour_size_px/A)%L+"px",E.style.lineHeight=E.style.height=Math.max(Math.round(60*(D-w)*1e3*this.config.hour_size_px/A)%L,1)+"px",
-t.appendChild(E),r.push(E)}}return r},scheduler.markTimespan=function(e){var t=[],a=!1;this._els.dhx_cal_data||(scheduler.get_elements(),a=!0);var r=this._els.dhx_cal_data[0],i=scheduler._marked_timespans_ids,n=scheduler._marked_timespans_types,l=scheduler._marked_timespans;scheduler.deleteMarkedTimespan(),scheduler.addMarkedTimespan(e);for(var d=new Date(scheduler._min_date),s=0,o=r.childNodes.length;o>s;s++){var _=r.childNodes[s];_.firstChild&&(_.firstChild.className||"").indexOf("dhx_scale_hour")>-1||(t.push.apply(t,scheduler._on_scale_add_marker(_,d)),
-d=scheduler.date.add(d,1,"day"))}return a&&(scheduler._els=[]),scheduler._marked_timespans_ids=i,scheduler._marked_timespans_types=n,scheduler._marked_timespans=l,t},scheduler.unmarkTimespan=function(e){if(e)for(var t=0;t<e.length;t++){var a=e[t];a.parentNode&&a.parentNode.removeChild(a)}},scheduler._marked_timespans_ids={},scheduler.addMarkedTimespan=function(e){var t=scheduler._prepare_timespan_options(e),a="global";if(t.length){var r=t[0].id,i=scheduler._marked_timespans,n=scheduler._marked_timespans_ids;
-
-n[r]||(n[r]=[]);for(var l=0;l<t.length;l++){var d=t[l],s=d.days,o=(d.zones,d.css,d.sections),_=d.type;if(d.id=r,o){for(var c in o)if(o.hasOwnProperty(c)){i[c]||(i[c]={});var u=o[c],h=i[c];h[u]||(h[u]={}),h[u][s]||(h[u][s]={}),h[u][s][_]||(h[u][s][_]=[],scheduler._marked_timespans_types||(scheduler._marked_timespans_types={}),scheduler._marked_timespans_types[_]||(scheduler._marked_timespans_types[_]=!0));var p=h[u][s][_];d._array=p,p.push(d),n[r].push(d)}}else{i[a][s]||(i[a][s]={}),i[a][s][_]||(i[a][s][_]=[]),
-scheduler._marked_timespans_types||(scheduler._marked_timespans_types={}),scheduler._marked_timespans_types[_]||(scheduler._marked_timespans_types[_]=!0);var p=i[a][s][_];d._array=p,p.push(d),n[r].push(d)}}return r}},scheduler._add_timespan_zones=function(e,t){var a=e.slice();if(t=t.slice(),!a.length)return t;for(var r=0;r<a.length;r+=2)for(var i=a[r],n=a[r+1],l=r+2==a.length,d=0;d<t.length;d+=2){var s=t[d],o=t[d+1];if(o>n&&n>=s||i>s&&o>=i)a[r]=Math.min(i,s),a[r+1]=Math.max(n,o),r-=2;else{if(!l)continue;
-
-var _=i>s?0:2;a.splice(r+_,0,s,o)}t.splice(d--,2);break}return a},scheduler._subtract_timespan_zones=function(e,t){for(var a=e.slice(),r=0;r<a.length;r+=2)for(var i=a[r],n=a[r+1],l=0;l<t.length;l+=2){var d=t[l],s=t[l+1];if(s>i&&n>d){var o=!1;i>=d&&s>=n&&a.splice(r,2),d>i&&(a.splice(r,2,i,d),o=!0),n>s&&a.splice(o?r+2:r,o?0:2,s,n),r-=2;break}}return a},scheduler.invertZones=function(e){return scheduler._subtract_timespan_zones([0,1440],e.slice())},scheduler._delete_marked_timespan_by_id=function(e){
-var t=scheduler._marked_timespans_ids[e];if(t)for(var a=0;a<t.length;a++)for(var r=t[a],i=r._array,n=0;n<i.length;n++)if(i[n]==r){i.splice(n,1);break}},scheduler._delete_marked_timespan_by_config=function(e){var t=scheduler._marked_timespans,a=e.sections,i=e.days,n=e.type||r,l=[];if(a){for(var d in a)if(a.hasOwnProperty(d)&&t[d]){var s=a[d];t[d][s]&&t[d][s][i]&&t[d][s][i][n]&&(l=t[d][s][i][n])}}else t.global[i]&&t.global[i][n]&&(l=t.global[i][n]);for(var o=0;o<l.length;o++){var _=l[o],c=scheduler._subtract_timespan_zones(_.zones,e.zones);
-
-if(c.length)_.zones=c;else{l.splice(o,1),o--;for(var u=scheduler._marked_timespans_ids[_.id],h=0;h<u.length;h++)if(u[h]==_){u.splice(h,1);break}}}for(var o in scheduler._marked_timespans.timeline)for(var p in scheduler._marked_timespans.timeline[o])for(var h in scheduler._marked_timespans.timeline[o][p])h===n&&delete scheduler._marked_timespans.timeline[o][p][h]},scheduler.deleteMarkedTimespan=function(e){if(arguments.length||(scheduler._marked_timespans={global:{}},scheduler._marked_timespans_ids={},
-scheduler._marked_timespans_types={}),"object"!=typeof e)scheduler._delete_marked_timespan_by_id(e);else{e.start_date&&e.end_date||(e.days||(e.days="fullweek"),e.zones||(e.zones="fullday"));var t=[];if(e.type)t.push(e.type);else for(var a in scheduler._marked_timespans_types)t.push(a);for(var r=scheduler._prepare_timespan_options(e),i=0;i<r.length;i++)for(var n=r[i],l=0;l<t.length;l++){var d=scheduler._lame_clone(n);d.type=t[l],scheduler._delete_marked_timespan_by_config(d)}}},scheduler._get_types_to_render=function(e,t){
-var a=e?e:{};for(var r in t||{})t.hasOwnProperty(r)&&(a[r]=t[r]);return a},scheduler._get_configs_to_render=function(e){var t=[];for(var a in e)e.hasOwnProperty(a)&&t.push.apply(t,e[a]);return t},scheduler._on_scale_add_marker=function(e,t){if(!scheduler._table_view||"month"==scheduler._mode){var a=t.getDay(),r=t.valueOf(),i=this._mode,n=scheduler._marked_timespans,l=[],d=[];if(this._props&&this._props[i]){var s=this._props[i],o=s.options,_=scheduler._get_unit_index(s,t),c=o[_];if(s.days>1){var u=864e5,h=Math.floor((t-scheduler._min_date)/u);
-
-t=scheduler.date.add(scheduler._min_date,Math.floor(h/o.length),"day"),t=scheduler.date.date_part(t)}else t=scheduler.date.date_part(new Date(this._date));if(a=t.getDay(),r=t.valueOf(),n[i]&&n[i][c.key]){var p=n[i][c.key],v=scheduler._get_types_to_render(p[a],p[r]);l.push.apply(l,scheduler._get_configs_to_render(v))}}var m=n.global,g=m[r]||m[a];l.push.apply(l,scheduler._get_configs_to_render(g));for(var b=0;b<l.length;b++)d.push.apply(d,scheduler._render_marked_timespan(l[b],e,t));return d}},scheduler.attachEvent("onScaleAdd",scheduler._on_scale_add_marker),
-scheduler.dblclick_dhx_marked_timespan=function(e,t){scheduler.config.dblclick_create||scheduler.callEvent("onScaleDblClick",[scheduler.getActionData(e).date,t,e]),scheduler.addEventNow(scheduler.getActionData(e).date,null,e)}},scheduler._temp_limit_scope();
+var s=scheduler._lame_clone(e);s.days=i[n],t.push.apply(t,scheduler._prepare_timespan_options(s))}return t}if(!e||!(e.start_date&&e.end_date&&e.end_date>e.start_date||void 0!==e.days&&e.zones)&&!e.type)return t;var d=0,l=1440;"fullday"==e.zones&&(e.zones=[d,l]),e.zones&&e.invert_zones&&(e.zones=scheduler.invertZones(e.zones)),e.id=scheduler.uid(),e.css=e.css||"",e.type=e.type||r;var o=e.sections;if(o){for(var _ in o)if(o.hasOwnProperty(_)){var h=o[_];h instanceof Array||(h=[h]);for(var n=0;n<h.length;n++){
+var c=scheduler._lame_copy({},e);c.sections={},c.sections[_]=h[n],a.push(c)}}}else a.push(e);for(var u=0;u<a.length;u++){var v=a[u],f=v.start_date,g=v.end_date;if(f&&g)for(var m=scheduler.date.date_part(new Date(f)),p=scheduler.date.add(m,1,"day");g>m;){var c=scheduler._lame_copy({},v);delete c.start_date,delete c.end_date,c.days=m.valueOf();var y=f>m?scheduler._get_zone_minutes(f):d,b=g>p||g.getDate()!=m.getDate()?l:scheduler._get_zone_minutes(g);c.zones=[y,b],t.push(c),m=p,p=scheduler.date.add(p,1,"day");
+}else v.days instanceof Date&&(v.days=scheduler.date.date_part(v.days).valueOf()),v.zones=e.zones.slice(),t.push(v)}return t},scheduler._get_dates_by_index=function(e,t,a){var r=[];t=scheduler.date.date_part(new Date(t||scheduler._min_date)),a=new Date(a||scheduler._max_date);for(var i=t.getDay(),n=e-i>=0?e-i:7-t.getDay()+e,s=scheduler.date.add(t,n,"day");a>s;s=scheduler.date.add(s,1,"week"))r.push(s);return r},scheduler._get_css_classes_by_config=function(e){var t=[];return e.type==a&&(t.push(a),
+e.css&&t.push(a+"_reset")),t.push("dhx_marked_timespan",e.css),t.join(" ")},scheduler._get_block_by_config=function(e){var t=document.createElement("DIV");return e.html&&("string"==typeof e.html?t.innerHTML=e.html:t.appendChild(e.html)),t},scheduler._render_marked_timespan=function(e,t,a){var r=[],i=scheduler.config,n=this._min_date,s=this._max_date,d=!1;if(!i.display_marked_timespans)return r;if(!a&&0!==a){if(e.days<7)a=e.days;else{var l=new Date(e.days);if(d=+l,!(+s>+l&&+l>=+n))return r;a=l.getDay();
+}var o=n.getDay();o>a?a=7-(o-a):a-=o}var _=e.zones,h=scheduler._get_css_classes_by_config(e);if(scheduler._table_view&&"month"==scheduler._mode){var c=[],u=[];if(t)c.push(t),u.push(a);else{u=d?[d]:scheduler._get_dates_by_index(a);for(var v=0;v<u.length;v++)c.push(this._scales[u[v]])}for(var v=0;v<c.length;v++){t=c[v],a=u[v];var f=Math.floor((this._correct_shift(a,1)-n.valueOf())/(864e5*this._cols.length)),g=this.locate_holder_day(a,!1)%this._cols.length;if(!this._ignores[g]){var m=scheduler._get_block_by_config(e),p=Math.max(t.offsetHeight-1,0),y=Math.max(t.offsetWidth-1,0),b=this._colsS[g],x=this._colsS.heights[f]+(this._colsS.height?this.xy.month_scale_height+2:2)-1;
+m.className=h,m.style.top=x+"px",m.style.lineHeight=m.style.height=p+"px";for(var w=0;w<_.length;w+=2){var k=_[v],D=_[v+1];if(k>=D)return[];var E=m.cloneNode(!0);E.style.left=b+Math.round(k/1440*y)+"px",E.style.width=Math.round((D-k)/1440*y)+"px",t.appendChild(E),r.push(E)}}}}else{var N=a;if(this._ignores[this.locate_holder_day(a,!1)])return r;if(this._props&&this._props[this._mode]&&e.sections&&e.sections[this._mode]){var S=this._props[this._mode];N=S.order[e.sections[this._mode]];var A=S.order[e.sections[this._mode]];
+if(S.days>1){var M=S.size||S.options.length;N=N*M+A}else N=A,S.size&&N>S.position+S.size&&(N=0)}t=t?t:scheduler.locate_holder(N);for(var v=0;v<_.length;v+=2){var k=Math.max(_[v],60*i.first_hour),D=Math.min(_[v+1],60*i.last_hour);if(k>=D){if(v+2<_.length)continue;return[]}var E=scheduler._get_block_by_config(e);E.className=h;var C=24*this.config.hour_size_px+1,O=36e5;E.style.top=Math.round((60*k*1e3-this.config.first_hour*O)*this.config.hour_size_px/O)%C+"px",E.style.lineHeight=E.style.height=Math.max(Math.round(60*(D-k)*1e3*this.config.hour_size_px/O)%C,1)+"px",
+t.appendChild(E),r.push(E)}}return r},scheduler._mark_timespans=function(){var e=this._els.dhx_cal_data[0],t=[];if(scheduler._table_view&&"month"==scheduler._mode)for(var a in this._scales){var r=new Date(+a);t.push.apply(t,scheduler._on_scale_add_marker(this._scales[a],r))}else for(var r=new Date(scheduler._min_date),i=0,n=e.childNodes.length;n>i;i++){var s=e.childNodes[i];s.firstChild&&scheduler._getClassName(s.firstChild).indexOf("dhx_scale_hour")>-1||(t.push.apply(t,scheduler._on_scale_add_marker(s,r)),
+r=scheduler.date.add(r,1,"day"))}return t},scheduler.markTimespan=function(e){var t=!1;this._els.dhx_cal_data||(scheduler.get_elements(),t=!0);var a=scheduler._marked_timespans_ids,r=scheduler._marked_timespans_types,i=scheduler._marked_timespans;scheduler.deleteMarkedTimespan(),scheduler.addMarkedTimespan(e);var n=scheduler._mark_timespans();return t&&(scheduler._els=[]),scheduler._marked_timespans_ids=a,scheduler._marked_timespans_types=r,scheduler._marked_timespans=i,n},scheduler.unmarkTimespan=function(e){
+if(e)for(var t=0;t<e.length;t++){var a=e[t];a.parentNode&&a.parentNode.removeChild(a)}},scheduler._addMarkerTimespanConfig=function(e){var t="global",a=scheduler._marked_timespans,r=e.id,i=scheduler._marked_timespans_ids;i[r]||(i[r]=[]);var n=e.days,s=e.sections,d=e.type;if(e.id=r,s){for(var l in s)if(s.hasOwnProperty(l)){a[l]||(a[l]={});var o=s[l],_=a[l];_[o]||(_[o]={}),_[o][n]||(_[o][n]={}),_[o][n][d]||(_[o][n][d]=[],scheduler._marked_timespans_types||(scheduler._marked_timespans_types={}),scheduler._marked_timespans_types[d]||(scheduler._marked_timespans_types[d]=!0));
+var h=_[o][n][d];e._array=h,h.push(e),i[r].push(e)}}else{a[t][n]||(a[t][n]={}),a[t][n][d]||(a[t][n][d]=[]),scheduler._marked_timespans_types||(scheduler._marked_timespans_types={}),scheduler._marked_timespans_types[d]||(scheduler._marked_timespans_types[d]=!0);var h=a[t][n][d];e._array=h,h.push(e),i[r].push(e)}},scheduler._marked_timespans_ids={},scheduler.addMarkedTimespan=function(e){var t=scheduler._prepare_timespan_options(e);if(t.length){for(var a=t[0].id,r=0;r<t.length;r++)scheduler._addMarkerTimespanConfig(t[r]);
+return a}},scheduler._add_timespan_zones=function(e,t){var a=e.slice();if(t=t.slice(),!a.length)return t;for(var r=0;r<a.length;r+=2)for(var i=a[r],n=a[r+1],s=r+2==a.length,d=0;d<t.length;d+=2){var l=t[d],o=t[d+1];if(o>n&&n>=l||i>l&&o>=i)a[r]=Math.min(i,l),a[r+1]=Math.max(n,o),r-=2;else{if(!s)continue;var _=i>l?0:2;a.splice(r+_,0,l,o)}t.splice(d--,2);break}return a},scheduler._subtract_timespan_zones=function(e,t){for(var a=e.slice(),r=0;r<a.length;r+=2)for(var i=a[r],n=a[r+1],s=0;s<t.length;s+=2){
+var d=t[s],l=t[s+1];if(l>i&&n>d){var o=!1;i>=d&&l>=n&&a.splice(r,2),d>i&&(a.splice(r,2,i,d),o=!0),n>l&&a.splice(o?r+2:r,o?0:2,l,n),r-=2;break}}return a},scheduler.invertZones=function(e){return scheduler._subtract_timespan_zones([0,1440],e.slice())},scheduler._delete_marked_timespan_by_id=function(e){var t=scheduler._marked_timespans_ids[e];if(t)for(var a=0;a<t.length;a++)for(var r=t[a],i=r._array,n=0;n<i.length;n++)if(i[n]==r){i.splice(n,1);break}},scheduler._delete_marked_timespan_by_config=function(e){
+var t,a=scheduler._marked_timespans,i=e.sections,n=e.days,s=e.type||r;if(i){for(var d in i)if(i.hasOwnProperty(d)&&a[d]){var l=i[d];a[d][l]&&(t=a[d][l])}}else t=a.global;if(t)if(void 0!==n)t[n]&&t[n][s]&&(scheduler._addMarkerTimespanConfig(e),scheduler._delete_marked_timespans_list(t[n][s],e));else for(var o in t)if(t[o][s]){var _=scheduler._lame_clone(e);e.days=o,scheduler._addMarkerTimespanConfig(_),scheduler._delete_marked_timespans_list(t[o][s],e)}},scheduler._delete_marked_timespans_list=function(e,t){
+for(var a=0;a<e.length;a++){var r=e[a],i=scheduler._subtract_timespan_zones(r.zones,t.zones);if(i.length)r.zones=i;else{e.splice(a,1),a--;for(var n=scheduler._marked_timespans_ids[r.id],s=0;s<n.length;s++)if(n[s]==r){n.splice(s,1);break}}}},scheduler.deleteMarkedTimespan=function(e){if(arguments.length||(scheduler._marked_timespans={global:{}},scheduler._marked_timespans_ids={},scheduler._marked_timespans_types={}),"object"!=typeof e)scheduler._delete_marked_timespan_by_id(e);else{e.start_date&&e.end_date||(void 0!==e.days||e.type||(e.days="fullweek"),
+e.zones||(e.zones="fullday"));var t=[];if(e.type)t.push(e.type);else for(var a in scheduler._marked_timespans_types)t.push(a);for(var r=scheduler._prepare_timespan_options(e),i=0;i<r.length;i++)for(var n=r[i],s=0;s<t.length;s++){var d=scheduler._lame_clone(n);d.type=t[s],scheduler._delete_marked_timespan_by_config(d)}}},scheduler._get_types_to_render=function(e,t){var a=e?scheduler._lame_copy({},e):{};for(var r in t||{})t.hasOwnProperty(r)&&(a[r]=t[r]);return a},scheduler._get_configs_to_render=function(e){
+var t=[];for(var a in e)e.hasOwnProperty(a)&&t.push.apply(t,e[a]);return t},scheduler._on_scale_add_marker=function(e,t){if(!scheduler._table_view||"month"==scheduler._mode){var a=t.getDay(),r=t.valueOf(),i=this._mode,n=scheduler._marked_timespans,s=[],d=[];if(this._props&&this._props[i]){var l=this._props[i],o=l.options,_=scheduler._get_unit_index(l,t),h=o[_];if(l.days>1){var c=864e5,u=Math.round((t-scheduler._min_date)/c);t=scheduler.date.add(scheduler._min_date,Math.floor(u/o.length),"day"),t=scheduler.date.date_part(t);
+}else t=scheduler.date.date_part(new Date(this._date));if(a=t.getDay(),r=t.valueOf(),n[i]&&n[i][h.key]){var v=n[i][h.key],f=scheduler._get_types_to_render(v[a],v[r]);s.push.apply(s,scheduler._get_configs_to_render(f))}}var g=n.global,m=g[r]||g[a];s.push.apply(s,scheduler._get_configs_to_render(m));for(var p=0;p<s.length;p++)d.push.apply(d,scheduler._render_marked_timespan(s[p],e,t));return d}},scheduler.attachEvent("onScaleAdd",function(){scheduler._on_scale_add_marker.apply(scheduler,arguments)}),
+scheduler.dblclick_dhx_marked_timespan=function(e,t){scheduler.callEvent("onScaleDblClick",[scheduler.getActionData(e).date,t,e]),scheduler.config.dblclick_create&&scheduler.addEventNow(scheduler.getActionData(e).date,null,e)}},scheduler._temp_limit_scope();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_limit.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_map_view.js b/codebase/ext/dhtmlxscheduler_map_view.js
index ab7d018..d24e3d2 100644
--- a/codebase/ext/dhtmlxscheduler_map_view.js
+++ b/codebase/ext/dhtmlxscheduler_map_view.js
@@ -1,6 +1,6 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
@@ -11,30 +11,23 @@ scheduler.locale.labels.marker_geo_fail="Sorry, could not get your current posit
start_date:scheduler._date,end_date:scheduler.date.add(scheduler._date,scheduler.config.time_step,"minute")})},scheduler.templates.map_time=function(e,t,a){return a._timed?this.day_date(a.start_date,a.end_date,a)+" "+this.event_date(e):scheduler.templates.day_date(e)+" &ndash; "+scheduler.templates.day_date(t)},scheduler.templates.map_text=function(e,t,a){return a.text},scheduler.date.map_start=function(e){return e},scheduler.date.add_map=function(e,t,a){return new Date(e.valueOf())},scheduler.templates.map_date=function(e,t,a){
return""},scheduler._latLngUpdate=!1,scheduler.attachEvent("onSchedulerReady",function(){function e(e){if(e){var t=scheduler.locale.labels;scheduler._els.dhx_cal_header[0].innerHTML="<div class='dhx_map_line' style='width: "+(scheduler.xy.map_date_width+scheduler.xy.map_description_width+2)+"px;' ><div class='headline_date' style='width: "+scheduler.xy.map_date_width+"px;'>"+t.date+"</div><div class='headline_description' style='width: "+scheduler.xy.map_description_width+"px;'>"+t.description+"</div></div>",
scheduler._table_view=!0,scheduler.set_sizes()}}function t(){scheduler._selected_event_id=null,scheduler.map._infowindow.close();var e=scheduler.map._markers;for(var t in e)e.hasOwnProperty(t)&&(e[t].setMap(null),delete scheduler.map._markers[t],scheduler.map._infowindows_content[t]&&delete scheduler.map._infowindows_content[t])}function a(){var e=scheduler.get_visible_events();e.sort(function(e,t){return e.start_date.valueOf()==t.start_date.valueOf()?e.id>t.id?1:-1:e.start_date>t.start_date?1:-1;
-
-});for(var t="<div class='dhx_map_area'>",a=0;a<e.length;a++){var r=e[a],n=r.id==scheduler._selected_event_id?"dhx_map_line highlight":"dhx_map_line",i=r.color?"background:"+r.color+";":"",l=r.textColor?"color:"+r.textColor+";":"";t+="<div class='"+n+"' event_id='"+r.id+"' style='"+i+l+(r._text_style||"")+" width: "+(scheduler.xy.map_date_width+scheduler.xy.map_description_width+2)+"px;'><div style='width: "+scheduler.xy.map_date_width+"px;' >"+scheduler.templates.map_time(r.start_date,r.end_date,r)+"</div>",
-t+="<div class='dhx_event_icon icon_details'>&nbsp</div>",t+="<div class='line_description' style='width:"+(scheduler.xy.map_description_width-25)+"px;'>"+scheduler.templates.map_text(r.start_date,r.end_date,r)+"</div></div>"}t+="<div class='dhx_v_border' style='left: "+(scheduler.xy.map_date_width-2)+"px;'></div><div class='dhx_v_border_description'></div></div>",scheduler._els.dhx_cal_data[0].scrollTop=0,scheduler._els.dhx_cal_data[0].innerHTML=t,scheduler._els.dhx_cal_data[0].style.width=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px";
-
-var d=scheduler._els.dhx_cal_data[0].firstChild.childNodes;scheduler._els.dhx_cal_date[0].innerHTML=scheduler.templates[scheduler._mode+"_date"](scheduler._min_date,scheduler._max_date,scheduler._mode),scheduler._rendered=[];for(var a=0;a<d.length-2;a++)scheduler._rendered[a]=d[a]}function r(e){var t=document.getElementById(e),a=scheduler._y-scheduler.xy.nav_height;0>a&&(a=0);var r=scheduler._x-scheduler.xy.map_date_width-scheduler.xy.map_description_width-1;0>r&&(r=0),t.style.height=a+"px",t.style.width=r+"px",
-t.style.marginLeft=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px",t.style.marginTop=scheduler.xy.nav_height+2+"px"}scheduler._isMapPositionSet=!1;var n=document.createElement("div");n.className="dhx_map",n.id="dhx_gmap",n.style.dispay="none";var i=scheduler._obj;i.appendChild(n),scheduler._els.dhx_gmap=[],scheduler._els.dhx_gmap.push(n),r("dhx_gmap");var l={zoom:scheduler.config.map_inital_zoom||10,center:scheduler.config.map_initial_position,mapTypeId:scheduler.config.map_type||google.maps.MapTypeId.ROADMAP
-},d=new google.maps.Map(document.getElementById("dhx_gmap"),l);d.disableDefaultUI=!1,d.disableDoubleClickZoom=!scheduler.config.readonly,google.maps.event.addListener(d,"dblclick",function(e){if(!scheduler.config.readonly&&scheduler.config.dblclick_create){var t=e.latLng;geocoder.geocode({latLng:t},function(e,a){a==google.maps.GeocoderStatus.OK&&(t=e[0].geometry.location,scheduler.addEventNow({lat:t.lat(),lng:t.lng(),event_location:e[0].formatted_address,start_date:scheduler._date,end_date:scheduler.date.add(scheduler._date,scheduler.config.time_step,"minute")
-}))})}});var s={content:""};scheduler.config.map_infowindow_max_width&&(s.maxWidth=scheduler.config.map_infowindow_max_width),scheduler.map={_points:[],_markers:[],_infowindow:new google.maps.InfoWindow(s),_infowindows_content:[],_initialization_count:-1,_obj:d},geocoder=new google.maps.Geocoder,scheduler.config.map_resolve_user_location&&navigator.geolocation&&(scheduler._isMapPositionSet||navigator.geolocation.getCurrentPosition(function(e){var t=new google.maps.LatLng(e.coords.latitude,e.coords.longitude);
-
+});for(var t=scheduler._waiAria.mapAttrString(),a="<div "+t+" class='dhx_map_area'>",r=0;r<e.length;r++){var i=e[r],n=i.id==scheduler._selected_event_id?"dhx_map_line highlight":"dhx_map_line",s=i.color?"background:"+i.color+";":"",d=i.textColor?"color:"+i.textColor+";":"",t=scheduler._waiAria.mapRowAttrString(i),l=scheduler._waiAria.mapDetailsBtnString();a+="<div "+t+" class='"+n+"' event_id='"+i.id+"' style='"+s+d+(i._text_style||"")+" width: "+(scheduler.xy.map_date_width+scheduler.xy.map_description_width+2)+"px;'><div style='width: "+scheduler.xy.map_date_width+"px;' >"+scheduler.templates.map_time(i.start_date,i.end_date,i)+"</div>",
+a+="<div "+l+" class='dhx_event_icon icon_details'>&nbsp</div>",a+="<div class='line_description' style='width:"+(scheduler.xy.map_description_width-25)+"px;'>"+scheduler.templates.map_text(i.start_date,i.end_date,i)+"</div></div>"}a+="<div class='dhx_v_border' style='left: "+(scheduler.xy.map_date_width-2)+"px;'></div><div class='dhx_v_border_description'></div></div>",scheduler._els.dhx_cal_data[0].scrollTop=0,scheduler._els.dhx_cal_data[0].innerHTML=a,scheduler._els.dhx_cal_data[0].style.width=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px";
+var o=scheduler._els.dhx_cal_data[0].firstChild.childNodes;scheduler._els.dhx_cal_date[0].innerHTML=scheduler.templates[scheduler._mode+"_date"](scheduler._min_date,scheduler._max_date,scheduler._mode),scheduler._rendered=[];for(var r=0;r<o.length-2;r++)scheduler._rendered[r]=o[r]}function r(e){var t=document.getElementById(e),a=scheduler._y-scheduler.xy.nav_height;0>a&&(a=0);var r=scheduler._x-scheduler.xy.map_date_width-scheduler.xy.map_description_width-1;0>r&&(r=0),t.style.height=a+"px",t.style.width=r+"px",
+t.style.marginLeft=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px",t.style.marginTop=scheduler.xy.nav_height+2+"px"}scheduler._isMapPositionSet=!1;var i=document.createElement("div");i.className="dhx_map",i.id="dhx_gmap",i.style.dispay="none";var n=scheduler._obj;n.appendChild(i),scheduler._els.dhx_gmap=[],scheduler._els.dhx_gmap.push(i),r("dhx_gmap");var s={zoom:scheduler.config.map_inital_zoom||10,center:scheduler.config.map_initial_position,mapTypeId:scheduler.config.map_type||google.maps.MapTypeId.ROADMAP
+},d=new google.maps.Map(document.getElementById("dhx_gmap"),s);d.disableDefaultUI=!1,d.disableDoubleClickZoom=!scheduler.config.readonly,google.maps.event.addListener(d,"dblclick",function(e){if(!scheduler.config.readonly&&scheduler.config.dblclick_create){var t=e.latLng;geocoder.geocode({latLng:t},function(e,a){a==google.maps.GeocoderStatus.OK&&(t=e[0].geometry.location,scheduler.addEventNow({lat:t.lat(),lng:t.lng(),event_location:e[0].formatted_address,start_date:scheduler._date,end_date:scheduler.date.add(scheduler._date,scheduler.config.time_step,"minute")
+}))})}});var l={content:""};scheduler.config.map_infowindow_max_width&&(l.maxWidth=scheduler.config.map_infowindow_max_width),scheduler.map={_points:[],_markers:[],_infowindow:new google.maps.InfoWindow(l),_infowindows_content:[],_initialization_count:-1,_obj:d},geocoder=new google.maps.Geocoder,scheduler.config.map_resolve_user_location&&navigator.geolocation&&(scheduler._isMapPositionSet||navigator.geolocation.getCurrentPosition(function(e){var t=new google.maps.LatLng(e.coords.latitude,e.coords.longitude);
d.setCenter(t),d.setZoom(scheduler.config.map_zoom_after_resolve||10),scheduler.map._infowindow.setContent(scheduler.locale.labels.marker_geo_success),scheduler.map._infowindow.position=d.getCenter(),scheduler.map._infowindow.open(d),scheduler._isMapPositionSet=!0},function(){scheduler.map._infowindow.setContent(scheduler.locale.labels.marker_geo_fail),scheduler.map._infowindow.setPosition(d.getCenter()),scheduler.map._infowindow.open(d),scheduler._isMapPositionSet=!0})),google.maps.event.addListener(d,"resize",function(e){
-n.style.zIndex="5",d.setZoom(d.getZoom())}),google.maps.event.addListener(d,"tilesloaded",function(e){n.style.zIndex="5"}),n.style.display="none",scheduler.attachEvent("onSchedulerResize",function(){return"map"==this._mode?(this.map_view(!0),!1):!0});var o=scheduler.render_data;scheduler.render_data=function(e,t){if("map"!=this._mode)return o.apply(this,arguments);a();for(var r=scheduler.get_visible_events(),n=0;n<r.length;n++)scheduler.map._markers[r[n].id]||c(r[n],!1,!1)},scheduler.map_view=function(n){
-scheduler.map._initialization_count++;var i,l=scheduler._els.dhx_gmap[0];if(scheduler._els.dhx_cal_data[0].style.width=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px",scheduler._min_date=scheduler.config.map_start||scheduler._currentDate(),scheduler._max_date=scheduler.config.map_end||scheduler.date.add(scheduler._currentDate(),1,"year"),scheduler._table_view=!0,e(n),n){t(),a(),l.style.display="block",r("dhx_gmap"),i=scheduler.map._obj.getCenter();for(var d=scheduler.get_visible_events(),s=0;s<d.length;s++)scheduler.map._markers[d[s].id]||c(d[s]);
-
-}else l.style.display="none";google.maps.event.trigger(scheduler.map._obj,"resize"),0===scheduler.map._initialization_count&&i&&scheduler.map._obj.setCenter(i),scheduler._selected_event_id&&_(scheduler._selected_event_id)};var _=function(e){scheduler.map._obj.setCenter(scheduler.map._points[e]),scheduler.callEvent("onClick",[e])},c=function(e,t,a){var r=scheduler.config.map_error_position;e.lat&&e.lng&&(r=new google.maps.LatLng(e.lat,e.lng));var n=scheduler.templates.marker_text(e.start_date,e.end_date,e);
-
-scheduler._new_event||(scheduler.map._infowindows_content[e.id]=n,scheduler.map._markers[e.id]&&scheduler.map._markers[e.id].setMap(null),scheduler.map._markers[e.id]=new google.maps.Marker({position:r,map:scheduler.map._obj}),google.maps.event.addListener(scheduler.map._markers[e.id],"click",function(){scheduler.map._infowindow.setContent(scheduler.map._infowindows_content[e.id]),scheduler.map._infowindow.open(scheduler.map._obj,scheduler.map._markers[e.id]),scheduler._selected_event_id=e.id,scheduler.render_data();
-
+i.style.zIndex="5",d.setZoom(d.getZoom())}),google.maps.event.addListener(d,"tilesloaded",function(e){i.style.zIndex="5"}),i.style.display="none",scheduler.attachEvent("onSchedulerResize",function(){return"map"==this._mode?(this.map_view(!0),!1):!0});var o=scheduler.render_data;scheduler.render_data=function(e,t){if("map"!=this._mode)return o.apply(this,arguments);a();for(var r=scheduler.get_visible_events(),i=0;i<r.length;i++)scheduler.map._markers[r[i].id]||c(r[i],!1,!1)},scheduler.map_view=function(i){
+scheduler.map._initialization_count++;var n,s=scheduler._els.dhx_gmap[0];if(scheduler._els.dhx_cal_data[0].style.width=scheduler.xy.map_date_width+scheduler.xy.map_description_width+1+"px",scheduler._min_date=scheduler.config.map_start||scheduler._currentDate(),scheduler._max_date=scheduler.config.map_end||scheduler.date.add(scheduler._currentDate(),1,"year"),scheduler._table_view=!0,e(i),i){t(),a(),s.style.display="block",r("dhx_gmap"),n=scheduler.map._obj.getCenter();for(var d=scheduler.get_visible_events(),l=0;l<d.length;l++)scheduler.map._markers[d[l].id]||c(d[l]);
+}else s.style.display="none";google.maps.event.trigger(scheduler.map._obj,"resize"),0===scheduler.map._initialization_count&&n&&scheduler.map._obj.setCenter(n),scheduler._selected_event_id&&_(scheduler._selected_event_id)};var _=function(e){scheduler.map._obj.setCenter(scheduler.map._points[e]),scheduler.callEvent("onClick",[e])},c=function(e,t,a){var r=scheduler.config.map_error_position;e.lat&&e.lng&&(r=new google.maps.LatLng(e.lat,e.lng));var i=scheduler.templates.marker_text(e.start_date,e.end_date,e);
+scheduler._new_event||(scheduler.map._infowindows_content[e.id]=i,scheduler.map._markers[e.id]&&scheduler.map._markers[e.id].setMap(null),scheduler.map._markers[e.id]=new google.maps.Marker({position:r,map:scheduler.map._obj}),google.maps.event.addListener(scheduler.map._markers[e.id],"click",function(){scheduler.map._infowindow.setContent(scheduler.map._infowindows_content[e.id]),scheduler.map._infowindow.open(scheduler.map._obj,scheduler.map._markers[e.id]),scheduler._selected_event_id=e.id,scheduler.render_data();
}),scheduler.map._points[e.id]=r,t&&scheduler.map._obj.setCenter(scheduler.map._points[e.id]),a&&scheduler.callEvent("onClick",[e.id]))};scheduler.attachEvent("onClick",function(e,t){if("map"==this._mode){scheduler._selected_event_id=e;for(var a=0;a<scheduler._rendered.length;a++)scheduler._rendered[a].className="dhx_map_line",scheduler._rendered[a].getAttribute("event_id")==e&&(scheduler._rendered[a].className+=" highlight");scheduler.map._points[e]&&scheduler.map._markers[e]&&(scheduler.map._obj.setCenter(scheduler.map._points[e]),
-google.maps.event.trigger(scheduler.map._markers[e],"click"))}return!0});var u=function(e){e.event_location&&geocoder?geocoder.geocode({address:e.event_location,language:scheduler.uid().toString()},function(t,a){var r={};a!=google.maps.GeocoderStatus.OK?(r=scheduler.callEvent("onLocationError",[e.id]),r&&r!==!0||(r=scheduler.config.map_error_position)):r=t[0].geometry.location,e.lat=r.lat(),e.lng=r.lng(),scheduler._selected_event_id=e.id,scheduler._latLngUpdate=!0,scheduler.callEvent("onEventChanged",[e.id,e]),
-c(e,!0,!0)}):c(e,!0,!0)},h=function(e){e.event_location&&geocoder&&geocoder.geocode({address:e.event_location,language:scheduler.uid().toString()},function(t,a){var r={};a!=google.maps.GeocoderStatus.OK?(r=scheduler.callEvent("onLocationError",[e.id]),r&&r!==!0||(r=scheduler.config.map_error_position)):r=t[0].geometry.location,e.lat=r.lat(),e.lng=r.lng(),scheduler._latLngUpdate=!0,scheduler.callEvent("onEventChanged",[e.id,e])})},p=function(e,t,a,r){setTimeout(function(){var r=e.apply(t,a);return e=t=a=null,
-r},r||1)};scheduler.attachEvent("onEventChanged",function(e,t){if(this._latLngUpdate)this._latLngUpdate=!1;else{var a=scheduler.getEvent(e);a.start_date<scheduler._min_date&&a.end_date>scheduler._min_date||a.start_date<scheduler._max_date&&a.end_date>scheduler._max_date||a.start_date.valueOf()>=scheduler._min_date&&a.end_date.valueOf()<=scheduler._max_date?(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),u(a)):(scheduler._selected_event_id=null,scheduler.map._infowindow.close(),
+google.maps.event.trigger(scheduler.map._markers[e],"click"))}return!0});var h=function(e){e.event_location&&geocoder?geocoder.geocode({address:e.event_location,language:scheduler.uid().toString()},function(t,a){var r={};a!=google.maps.GeocoderStatus.OK?(r=scheduler.callEvent("onLocationError",[e.id]),r&&r!==!0||(r=scheduler.config.map_error_position)):r=t[0].geometry.location,e.lat=r.lat(),e.lng=r.lng(),scheduler._selected_event_id=e.id,scheduler._latLngUpdate=!0,scheduler.callEvent("onEventChanged",[e.id,e]),
+c(e,!0,!0)}):c(e,!0,!0)},u=function(e){e.event_location&&geocoder&&geocoder.geocode({address:e.event_location,language:scheduler.uid().toString()},function(t,a){var r={};a!=google.maps.GeocoderStatus.OK?(r=scheduler.callEvent("onLocationError",[e.id]),r&&r!==!0||(r=scheduler.config.map_error_position)):r=t[0].geometry.location,e.lat=r.lat(),e.lng=r.lng(),scheduler._latLngUpdate=!0,scheduler.callEvent("onEventChanged",[e.id,e])})},v=function(e,t,a,r){setTimeout(function(){var r=e.apply(t,a);return e=t=a=null,
+r},r||1)};scheduler.attachEvent("onEventChanged",function(e,t){if(this._latLngUpdate)this._latLngUpdate=!1;else{var a=scheduler.getEvent(e);a.start_date<scheduler._min_date&&a.end_date>scheduler._min_date||a.start_date<scheduler._max_date&&a.end_date>scheduler._max_date||a.start_date.valueOf()>=scheduler._min_date&&a.end_date.valueOf()<=scheduler._max_date?(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),h(a)):(scheduler._selected_event_id=null,scheduler.map._infowindow.close(),
scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null))}return!0}),scheduler.attachEvent("onEventIdChange",function(e,t){var a=scheduler.getEvent(t);return(a.start_date<scheduler._min_date&&a.end_date>scheduler._min_date||a.start_date<scheduler._max_date&&a.end_date>scheduler._max_date||a.start_date.valueOf()>=scheduler._min_date&&a.end_date.valueOf()<=scheduler._max_date)&&(scheduler.map._markers[e]&&(scheduler.map._markers[e].setMap(null),delete scheduler.map._markers[e]),scheduler.map._infowindows_content[e]&&delete scheduler.map._infowindows_content[e],
-u(a)),!0}),scheduler.attachEvent("onEventAdded",function(e,t){return scheduler._dataprocessor||(t.start_date<scheduler._min_date&&t.end_date>scheduler._min_date||t.start_date<scheduler._max_date&&t.end_date>scheduler._max_date||t.start_date.valueOf()>=scheduler._min_date&&t.end_date.valueOf()<=scheduler._max_date)&&(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),u(t)),!0}),scheduler.attachEvent("onBeforeEventDelete",function(e,t){return scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),
-scheduler._selected_event_id=null,scheduler.map._infowindow.close(),!0}),scheduler._event_resolve_delay=1500,scheduler.attachEvent("onEventLoading",function(e){return scheduler.config.map_resolve_event_location&&e.event_location&&!e.lat&&!e.lng&&(scheduler._event_resolve_delay+=1500,p(h,this,[e],scheduler._event_resolve_delay)),!0}),scheduler.attachEvent("onEventCancel",function(e,t){return t&&(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),scheduler.map._infowindow.close()),!0;
-
+h(a)),!0}),scheduler.attachEvent("onEventAdded",function(e,t){return scheduler._dataprocessor||(t.start_date<scheduler._min_date&&t.end_date>scheduler._min_date||t.start_date<scheduler._max_date&&t.end_date>scheduler._max_date||t.start_date.valueOf()>=scheduler._min_date&&t.end_date.valueOf()<=scheduler._max_date)&&(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),h(t)),!0}),scheduler.attachEvent("onBeforeEventDelete",function(e,t){return scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),
+scheduler._selected_event_id=null,scheduler.map._infowindow.close(),!0}),scheduler._event_resolve_delay=1500,scheduler.attachEvent("onEventLoading",function(e){return scheduler.config.map_resolve_event_location&&e.event_location&&!e.lat&&!e.lng&&(scheduler._event_resolve_delay+=1500,v(u,this,[e],scheduler._event_resolve_delay)),!0}),scheduler.attachEvent("onEventCancel",function(e,t){return t&&(scheduler.map._markers[e]&&scheduler.map._markers[e].setMap(null),scheduler.map._infowindow.close()),!0;
})});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_map_view.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_minical.js b/codebase/ext/dhtmlxscheduler_minical.js
index 8730a02..3fcd35f 100644
--- a/codebase/ext/dhtmlxscheduler_minical.js
+++ b/codebase/ext/dhtmlxscheduler_minical.js
@@ -1,37 +1,30 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.templates.calendar_month=scheduler.date.date_to_str("%F %Y"),scheduler.templates.calendar_scale_date=scheduler.date.date_to_str("%D"),scheduler.templates.calendar_date=scheduler.date.date_to_str("%d"),scheduler.config.minicalendar={mark_events:!0},scheduler._synced_minicalendars=[],scheduler.renderCalendar=function(e,t,a){var r=null,n=e.date||scheduler._currentDate();if("string"==typeof n&&(n=this.templates.api_date(n)),t)r=this._render_calendar(t.parentNode,n,e,t),scheduler.unmarkCalendar(r);
-else{var i=e.container,d=e.position;if("string"==typeof i&&(i=document.getElementById(i)),"string"==typeof d&&(d=document.getElementById(d)),d&&"undefined"==typeof d.left){var l=getOffset(d);d={top:l.top+d.offsetHeight,left:l.left}}i||(i=scheduler._get_def_cont(d)),r=this._render_calendar(i,n,e),r.onclick=function(e){e=e||event;var t=e.target||e.srcElement;if(-1!=t.className.indexOf("dhx_month_head")){var a=t.parentNode.className;if(-1==a.indexOf("dhx_after")&&-1==a.indexOf("dhx_before")){var r=scheduler.templates.xml_date(this.getAttribute("date"));
-
-r.setDate(parseInt(t.innerHTML,10)),scheduler.unmarkCalendar(this),scheduler.markCalendar(this,r,"dhx_calendar_click"),this._last_date=r,this.conf.handler&&this.conf.handler.call(scheduler,r,this)}}}}if(scheduler.config.minicalendar.mark_events)for(var s=scheduler.date.month_start(n),o=scheduler.date.add(s,1,"month"),_=this.getEvents(s,o),c=this["filter_"+this._mode],u=0;u<_.length;u++){var h=_[u];if(!c||c(h.id,h)){var p=h.start_date;for(p.valueOf()<s.valueOf()&&(p=s),p=scheduler.date.date_part(new Date(p.valueOf()));p<h.end_date&&(this.markCalendar(r,p,"dhx_year_event"),
-p=this.date.add(p,1,"day"),!(p.valueOf()>=o.valueOf())););}}return this._markCalendarCurrentDate(r),r.conf=e,e.sync&&!a&&this._synced_minicalendars.push(r),r.conf._on_xle_handler||(r.conf._on_xle_handler=scheduler.attachEvent("onXLE",function(){scheduler.updateCalendar(r,r.conf.date)})),r},scheduler._get_def_cont=function(e){return this._def_count||(this._def_count=document.createElement("DIV"),this._def_count.className="dhx_minical_popup",this._def_count.onclick=function(e){(e||event).cancelBubble=!0;
-
-},document.body.appendChild(this._def_count)),this._def_count.style.left=e.left+"px",this._def_count.style.top=e.top+"px",this._def_count._created=new Date,this._def_count},scheduler._locateCalendar=function(e,t){if("string"==typeof t&&(t=scheduler.templates.api_date(t)),+t>+e._max_date||+t<+e._min_date)return null;for(var a=e.childNodes[2].childNodes[0],r=0,n=new Date(e._min_date);+this.date.add(n,1,"week")<=+t;)n=this.date.add(n,1,"week"),r++;var i=scheduler.config.start_on_monday,d=(t.getDay()||(i?7:0))-(i?1:0);
-
-return a.rows[r].cells[d].firstChild},scheduler.markCalendar=function(e,t,a){var r=this._locateCalendar(e,t);r&&(r.className+=" "+a)},scheduler.unmarkCalendar=function(e,t,a){if(t=t||e._last_date,a=a||"dhx_calendar_click",t){var r=this._locateCalendar(e,t);r&&(r.className=(r.className||"").replace(RegExp(a,"g")))}},scheduler._week_template=function(e){for(var t=e||250,a=0,r=document.createElement("div"),n=this.date.week_start(scheduler._currentDate()),i=0;7>i;i++)this._cols[i]=Math.floor(t/(7-i)),
-this._render_x_header(i,a,n,r),n=this.date.add(n,1,"day"),t-=this._cols[i],a+=this._cols[i];return r.lastChild.className+=" dhx_scale_bar_last",r},scheduler.updateCalendar=function(e,t){e.conf.date=t,this.renderCalendar(e.conf,e,!0)},scheduler._mini_cal_arrows=["&nbsp","&nbsp"],scheduler._render_calendar=function(e,t,a,r){var n=scheduler.templates,i=this._cols;this._cols=[];var d=this._mode;this._mode="calendar";var l=this._colsS;this._colsS={height:0};var s=new Date(this._min_date),o=new Date(this._max_date),_=new Date(scheduler._date),c=n.month_day,u=this._ignores_detected;
-
-this._ignores_detected=0,n.month_day=n.calendar_date,t=this.date.month_start(t);var h,p=this._week_template(e.offsetWidth-1-this.config.minicalendar.padding);if(r?h=r:(h=document.createElement("DIV"),h.className="dhx_cal_container dhx_mini_calendar"),h.setAttribute("date",this.templates.xml_format(t)),h.innerHTML="<div class='dhx_year_month'></div><div class='dhx_year_week'>"+p.innerHTML+"</div><div class='dhx_year_body'></div>",h.childNodes[0].innerHTML=this.templates.calendar_month(t),a.navigation)for(var v=function(e,t){
-var a=scheduler.date.add(e._date,t,"month");scheduler.updateCalendar(e,a),scheduler._date.getMonth()==e._date.getMonth()&&scheduler._date.getFullYear()==e._date.getFullYear()&&scheduler._markCalendarCurrentDate(e)},m=["dhx_cal_prev_button","dhx_cal_next_button"],g=["left:1px;top:2px;position:absolute;","left:auto; right:1px;top:2px;position:absolute;"],b=[-1,1],f=function(e){return function(){if(a.sync)for(var t=scheduler._synced_minicalendars,r=0;r<t.length;r++)v(t[r],e);else v(h,e)}},y=0;2>y;y++){
-var x=document.createElement("DIV");x.className=m[y],x.style.cssText=g[y],x.innerHTML=this._mini_cal_arrows[y],h.firstChild.appendChild(x),x.onclick=f(b[y])}h._date=new Date(t),h.week_start=(t.getDay()-(this.config.start_on_monday?1:0)+7)%7;var k=h._min_date=this.date.week_start(t);h._max_date=this.date.add(h._min_date,6,"week"),this._reset_month_scale(h.childNodes[2],t,k);for(var w=h.childNodes[2].firstChild.rows,D=w.length;6>D;D++){var E=w[w.length-1];w[0].parentNode.appendChild(E.cloneNode(!0));
-
-var M=parseInt(E.childNodes[E.childNodes.length-1].childNodes[0].innerHTML);M=10>M?M:0;for(var S=0;S<w[D].childNodes.length;S++)w[D].childNodes[S].className="dhx_after",w[D].childNodes[S].childNodes[0].innerHTML=scheduler.date.to_fixed(++M)}return r||e.appendChild(h),h.childNodes[1].style.height=h.childNodes[1].childNodes[0].offsetHeight-1+"px",this._cols=i,this._mode=d,this._colsS=l,this._min_date=s,this._max_date=o,scheduler._date=_,n.month_day=c,this._ignores_detected=u,h},scheduler.destroyCalendar=function(e,t){
-!e&&this._def_count&&this._def_count.firstChild&&(t||(new Date).valueOf()-this._def_count._created.valueOf()>500)&&(e=this._def_count.firstChild),e&&(e.onclick=null,e.innerHTML="",e.parentNode&&e.parentNode.removeChild(e),this._def_count&&(this._def_count.style.top="-1000px"),e.conf&&e.conf._on_xle_handler&&scheduler.detachEvent(e.conf._on_xle_handler))},scheduler.isCalendarVisible=function(){return this._def_count&&parseInt(this._def_count.style.top,10)>0?this._def_count:!1},scheduler._attach_minical_events=function(){
-dhtmlxEvent(document.body,"click",function(){scheduler.destroyCalendar()}),scheduler._attach_minical_events=function(){}},scheduler.attachEvent("onTemplatesReady",function(){scheduler._attach_minical_events()}),scheduler.templates.calendar_time=scheduler.date.date_to_str("%d-%m-%Y"),scheduler.form_blocks.calendar_time={render:function(){var e="<input class='dhx_readonly' type='text' readonly='true'>",t=scheduler.config,a=this.date.date_part(scheduler._currentDate()),r=1440,n=0;t.limit_time_select&&(n=60*t.first_hour,
-r=60*t.last_hour+1),a.setHours(n/60),e+=" <select>";for(var i=n;r>i;i+=1*this.config.time_step){var d=this.templates.time_picker(a);e+="<option value='"+i+"'>"+d+"</option>",a=this.date.add(a,this.config.time_step,"minute")}e+="</select>";scheduler.config.full_day;return"<div style='height:30px;padding-top:0; font-size:inherit;' class='dhx_section_time'>"+e+"<span style='font-weight:normal; font-size:10pt;'> &nbsp;&ndash;&nbsp; </span>"+e+"</div>"},set_value:function(e,t,a){function r(e,t,a){s(e,t,a),
-e.value=scheduler.templates.calendar_time(t),e._date=scheduler.date.date_part(new Date(t))}var n,i,d=e.getElementsByTagName("input"),l=e.getElementsByTagName("select"),s=function(e,t,a){e.onclick=function(){scheduler.destroyCalendar(null,!0),scheduler.renderCalendar({position:e,date:new Date(this._date),navigation:!0,handler:function(t){e.value=scheduler.templates.calendar_time(t),e._date=new Date(t),scheduler.destroyCalendar(),scheduler.config.event_duration&&scheduler.config.auto_end_date&&0===a&&u();
-
-}})}};if(scheduler.config.full_day){if(!e._full_day){var o="<label class='dhx_fullday'><input type='checkbox' name='full_day' value='true'> "+scheduler.locale.labels.full_day+"&nbsp;</label></input>";scheduler.config.wide_form||(o=e.previousSibling.innerHTML+o),e.previousSibling.innerHTML=o,e._full_day=!0}var _=e.previousSibling.getElementsByTagName("input")[0],c=0===scheduler.date.time_part(a.start_date)&&0===scheduler.date.time_part(a.end_date);_.checked=c,l[0].disabled=_.checked,l[1].disabled=_.checked,
-_.onclick=function(){if(_.checked===!0){var t={};scheduler.form_blocks.calendar_time.get_value(e,t),n=scheduler.date.date_part(t.start_date),i=scheduler.date.date_part(t.end_date),(+i==+n||+i>=+n&&(0!==a.end_date.getHours()||0!==a.end_date.getMinutes()))&&(i=scheduler.date.add(i,1,"day"))}var s=n||a.start_date,o=i||a.end_date;r(d[0],s),r(d[1],o),l[0].value=60*s.getHours()+s.getMinutes(),l[1].value=60*o.getHours()+o.getMinutes(),l[0].disabled=_.checked,l[1].disabled=_.checked}}if(scheduler.config.event_duration&&scheduler.config.auto_end_date){
-var u=function(){n=scheduler.date.add(d[0]._date,l[0].value,"minute"),i=new Date(n.getTime()+60*scheduler.config.event_duration*1e3),d[1].value=scheduler.templates.calendar_time(i),d[1]._date=scheduler.date.date_part(new Date(i)),l[1].value=60*i.getHours()+i.getMinutes()};l[0].onchange=u}r(d[0],a.start_date,0),r(d[1],a.end_date,1),s=function(){},l[0].value=60*a.start_date.getHours()+a.start_date.getMinutes(),l[1].value=60*a.end_date.getHours()+a.end_date.getMinutes()},get_value:function(e,t){var a=e.getElementsByTagName("input"),r=e.getElementsByTagName("select");
-
-return t.start_date=scheduler.date.add(a[0]._date,r[0].value,"minute"),t.end_date=scheduler.date.add(a[1]._date,r[1].value,"minute"),t.end_date<=t.start_date&&(t.end_date=scheduler.date.add(t.start_date,scheduler.config.time_step,"minute")),{start_date:new Date(t.start_date),end_date:new Date(t.end_date)}},focus:function(e){}},scheduler.linkCalendar=function(e,t){var a=function(){var a=scheduler._date,r=new Date(a.valueOf());return t&&(r=t(r)),r.setDate(1),scheduler.updateCalendar(e,r),!0};scheduler.attachEvent("onViewChange",a),
-scheduler.attachEvent("onXLE",a),scheduler.attachEvent("onEventAdded",a),scheduler.attachEvent("onEventChanged",a),scheduler.attachEvent("onAfterEventDelete",a),a()},scheduler._markCalendarCurrentDate=function(e){var t=scheduler._date,a=scheduler._mode,r=scheduler.date.month_start(new Date(e._date)),n=scheduler.date.add(r,1,"month");if("day"==a||this._props&&this._props[a])r.valueOf()<=t.valueOf()&&n>t&&scheduler.markCalendar(e,t,"dhx_calendar_click");else if("week"==a)for(var i=scheduler.date.week_start(new Date(t.valueOf())),d=0;7>d;d++)r.valueOf()<=i.valueOf()&&n>i&&scheduler.markCalendar(e,i,"dhx_calendar_click"),
-i=scheduler.date.add(i,1,"day")},scheduler.attachEvent("onEventCancel",function(){scheduler.destroyCalendar(null,!0)});
+scheduler.templates.calendar_month=scheduler.date.date_to_str("%F %Y"),scheduler.templates.calendar_scale_date=scheduler.date.date_to_str("%D"),scheduler.templates.calendar_date=scheduler.date.date_to_str("%d"),scheduler.config.minicalendar={mark_events:!0},scheduler._synced_minicalendars=[],scheduler.renderCalendar=function(e,t,a){var r=null,i=e.date||scheduler._currentDate();if("string"==typeof i&&(i=this.templates.api_date(i)),t)r=this._render_calendar(t.parentNode,i,e,t),scheduler.unmarkCalendar(r);else{
+var n=e.container,s=e.position;if("string"==typeof n&&(n=document.getElementById(n)),"string"==typeof s&&(s=document.getElementById(s)),s&&"undefined"==typeof s.left){var d=getOffset(s);s={top:d.top+s.offsetHeight,left:d.left}}n||(n=scheduler._get_def_cont(s)),r=this._render_calendar(n,i,e),r.onclick=function(e){e=e||event;var t=e.target||e.srcElement;if(-1!=t.className.indexOf("dhx_month_head")){var a=t.parentNode.className;if(-1==a.indexOf("dhx_after")&&-1==a.indexOf("dhx_before")){var r=scheduler.templates.xml_date(this.getAttribute("date"));
+r.setDate(parseInt(t.innerHTML,10)),scheduler.unmarkCalendar(this),scheduler.markCalendar(this,r,"dhx_calendar_click"),this._last_date=r,this.conf.handler&&this.conf.handler.call(scheduler,r,this)}}}}if(scheduler.config.minicalendar.mark_events)for(var l=scheduler.date.month_start(i),o=scheduler.date.add(l,1,"month"),_=this.getEvents(l,o),c=this["filter_"+this._mode],h={},u=0;u<_.length;u++){var v=_[u];if(!c||c(v.id,v)){var f=v.start_date;for(f.valueOf()<l.valueOf()&&(f=l),f=scheduler.date.date_part(new Date(f.valueOf()));f<v.end_date&&(h[+f]||(h[+f]=!0,
+this.markCalendar(r,f,"dhx_year_event")),f=this.date.add(f,1,"day"),!(f.valueOf()>=o.valueOf())););}}return this._markCalendarCurrentDate(r),r.conf=e,e.sync&&!a&&this._synced_minicalendars.push(r),r.conf._on_xle_handler||(r.conf._on_xle_handler=scheduler.attachEvent("onXLE",function(){scheduler.updateCalendar(r,r.conf.date)})),r},scheduler._get_def_cont=function(e){return this._def_count||(this._def_count=document.createElement("DIV"),this._def_count.className="dhx_minical_popup",this._def_count.onclick=function(e){
+(e||event).cancelBubble=!0},document.body.appendChild(this._def_count)),this._def_count.style.left=e.left+"px",this._def_count.style.top=e.top+"px",this._def_count._created=new Date,this._def_count},scheduler._locateCalendar=function(e,t){if("string"==typeof t&&(t=scheduler.templates.api_date(t)),+t>+e._max_date||+t<+e._min_date)return null;for(var a=e.querySelector(".dhx_year_body").childNodes[0],r=0,i=new Date(e._min_date);+this.date.add(i,1,"week")<=+t;)i=this.date.add(i,1,"week"),r++;var n=scheduler.config.start_on_monday,s=(t.getDay()||(n?7:0))-(n?1:0);
+return a.rows[r].cells[s].firstChild},scheduler.markCalendar=function(e,t,a){var r=this._locateCalendar(e,t);r&&(r.className+=" "+a)},scheduler.unmarkCalendar=function(e,t,a){if(t=t||e._last_date,a=a||"dhx_calendar_click",t){var r=this._locateCalendar(e,t);r&&(r.className=(r.className||"").replace(RegExp(a,"g")))}},scheduler._week_template=function(e){for(var t=e||250,a=0,r=document.createElement("div"),i=this.date.week_start(scheduler._currentDate()),n=0;7>n;n++)this._cols[n]=Math.floor(t/(7-n)),
+this._render_x_header(n,a,i,r),i=this.date.add(i,1,"day"),t-=this._cols[n],a+=this._cols[n];return r.lastChild.className+=" dhx_scale_bar_last",r},scheduler.updateCalendar=function(e,t){e.conf.date=t,this.renderCalendar(e.conf,e,!0)},scheduler._mini_cal_arrows=["&nbsp","&nbsp"],scheduler._render_calendar=function(e,t,a,r){var i=scheduler.templates,n=this._cols;this._cols=[];var s=this._mode;this._mode="calendar";var d=this._colsS;this._colsS={height:0};var l=new Date(this._min_date),o=new Date(this._max_date),_=new Date(scheduler._date),c=i.month_day,h=this._ignores_detected;
+this._ignores_detected=0,i.month_day=i.calendar_date,t=this.date.month_start(t);var u,v=this._week_template(e.offsetWidth-1-this.config.minicalendar.padding);r?u=r:(u=document.createElement("DIV"),u.className="dhx_cal_container dhx_mini_calendar"),u.setAttribute("date",this.templates.xml_format(t)),u.innerHTML="<div class='dhx_year_month'></div><div class='dhx_year_grid'><div class='dhx_year_week'>"+(v?v.innerHTML:"")+"</div><div class='dhx_year_body'></div></div>";var f=u.querySelector(".dhx_year_month"),g=u.querySelector(".dhx_year_week"),m=u.querySelector(".dhx_year_body");
+if(f.innerHTML=this.templates.calendar_month(t),a.navigation)for(var p=function(e,t){var a=scheduler.date.add(e._date,t,"month");scheduler.updateCalendar(e,a),scheduler._date.getMonth()==e._date.getMonth()&&scheduler._date.getFullYear()==e._date.getFullYear()&&scheduler._markCalendarCurrentDate(e)},y=["dhx_cal_prev_button","dhx_cal_next_button"],b=["left:1px;top:2px;position:absolute;","left:auto; right:1px;top:2px;position:absolute;"],x=[-1,1],w=function(e){return function(){if(a.sync)for(var t=scheduler._synced_minicalendars,r=0;r<t.length;r++)p(t[r],e);else p(u,e);
+}},k=[scheduler.locale.labels.prev,scheduler.locale.labels.next],E=0;2>E;E++){var D=document.createElement("DIV");D.className=y[E],scheduler._waiAria.headerButtonsAttributes(D,k[E]),D.style.cssText=b[E],D.innerHTML=this._mini_cal_arrows[E],f.appendChild(D),D.onclick=w(x[E])}u._date=new Date(t),u.week_start=(t.getDay()-(this.config.start_on_monday?1:0)+7)%7;var N=u._min_date=this.date.week_start(t);u._max_date=this.date.add(u._min_date,6,"week"),this._reset_month_scale(m,t,N,6),r||e.appendChild(u),
+g.style.height=g.childNodes[0].offsetHeight-1+"px";var S=scheduler.uid();scheduler._waiAria.minicalHeader(f,S),scheduler._waiAria.minicalGrid(u.querySelector(".dhx_year_grid"),S),scheduler._waiAria.minicalRow(g);for(var A=g.querySelectorAll(".dhx_scale_bar"),M=0;M<A.length;M++)scheduler._waiAria.minicalHeadCell(A[M]);for(var C=m.querySelectorAll("td"),O=new Date(l),M=0;M<C.length;M++)scheduler._waiAria.minicalDayCell(C[M],new Date(O)),O=scheduler.date.add(O,1,"day");return scheduler._waiAria.minicalHeader(f,S),
+this._cols=n,this._mode=s,this._colsS=d,this._min_date=l,this._max_date=o,scheduler._date=_,i.month_day=c,this._ignores_detected=h,u},scheduler.destroyCalendar=function(e,t){!e&&this._def_count&&this._def_count.firstChild&&(t||(new Date).valueOf()-this._def_count._created.valueOf()>500)&&(e=this._def_count.firstChild),e&&(e.onclick=null,e.innerHTML="",e.parentNode&&e.parentNode.removeChild(e),this._def_count&&(this._def_count.style.top="-1000px"),e.conf&&e.conf._on_xle_handler&&scheduler.detachEvent(e.conf._on_xle_handler));
+},scheduler.isCalendarVisible=function(){return this._def_count&&parseInt(this._def_count.style.top,10)>0?this._def_count:!1},scheduler._attach_minical_events=function(){dhtmlxEvent(document.body,"click",function(){scheduler.destroyCalendar()}),scheduler._attach_minical_events=function(){}},scheduler.attachEvent("onTemplatesReady",function(){scheduler._attach_minical_events()}),scheduler.templates.calendar_time=scheduler.date.date_to_str("%d-%m-%Y"),scheduler.form_blocks.calendar_time={render:function(e){
+var t="<input class='dhx_readonly' type='text' readonly='true'>",a=scheduler.config,r=this.date.date_part(scheduler._currentDate()),i=1440,n=0;a.limit_time_select&&(n=60*a.first_hour,i=60*a.last_hour+1),r.setHours(n/60),e._time_values=[],t+=" <select>";for(var s=n;i>s;s+=1*this.config.time_step){var d=this.templates.time_picker(r);t+="<option value='"+s+"'>"+d+"</option>",e._time_values.push(s),r=this.date.add(r,this.config.time_step,"minute")}t+="</select>";scheduler.config.full_day;return"<div style='height:30px;padding-top:0; font-size:inherit;' class='dhx_section_time'>"+t+"<span style='font-weight:normal; font-size:10pt;'> &nbsp;&ndash;&nbsp; </span>"+t+"</div>";
+},set_value:function(e,t,a,r){function i(e,t,a){_(e,t,a),e.value=scheduler.templates.calendar_time(t),e._date=scheduler.date.date_part(new Date(t))}function n(e){for(var t=r._time_values,a=60*e.getHours()+e.getMinutes(),i=a,n=!1,s=0;s<t.length;s++){var d=t[s];if(d===a){n=!0;break}a>d&&(i=d)}return n||i?n?a:i:-1}var s,d,l=e.getElementsByTagName("input"),o=e.getElementsByTagName("select"),_=function(e,t,a){e.onclick=function(){scheduler.destroyCalendar(null,!0),scheduler.renderCalendar({position:e,
+date:new Date(this._date),navigation:!0,handler:function(t){e.value=scheduler.templates.calendar_time(t),e._date=new Date(t),scheduler.destroyCalendar(),scheduler.config.event_duration&&scheduler.config.auto_end_date&&0===a&&v()}})}};if(scheduler.config.full_day){if(!e._full_day){var c="<label class='dhx_fullday'><input type='checkbox' name='full_day' value='true'> "+scheduler.locale.labels.full_day+"&nbsp;</label></input>";scheduler.config.wide_form||(c=e.previousSibling.innerHTML+c),e.previousSibling.innerHTML=c,
+e._full_day=!0}var h=e.previousSibling.getElementsByTagName("input")[0],u=0===scheduler.date.time_part(a.start_date)&&0===scheduler.date.time_part(a.end_date);h.checked=u,o[0].disabled=h.checked,o[1].disabled=h.checked,h.onclick=function(){if(h.checked===!0){var t={};scheduler.form_blocks.calendar_time.get_value(e,t),s=scheduler.date.date_part(t.start_date),d=scheduler.date.date_part(t.end_date),(+d==+s||+d>=+s&&(0!==a.end_date.getHours()||0!==a.end_date.getMinutes()))&&(d=scheduler.date.add(d,1,"day"));
+}var r=s||a.start_date,n=d||a.end_date;i(l[0],r),i(l[1],n),o[0].value=60*r.getHours()+r.getMinutes(),o[1].value=60*n.getHours()+n.getMinutes(),o[0].disabled=h.checked,o[1].disabled=h.checked}}if(scheduler.config.event_duration&&scheduler.config.auto_end_date){var v=function(){s=scheduler.date.add(l[0]._date,o[0].value,"minute"),d=new Date(s.getTime()+60*scheduler.config.event_duration*1e3),l[1].value=scheduler.templates.calendar_time(d),l[1]._date=scheduler.date.date_part(new Date(d)),o[1].value=60*d.getHours()+d.getMinutes();
+};o[0].onchange=v}i(l[0],a.start_date,0),i(l[1],a.end_date,1),_=function(){},o[0].value=n(a.start_date),o[1].value=n(a.end_date)},get_value:function(e,t){var a=e.getElementsByTagName("input"),r=e.getElementsByTagName("select");return t.start_date=scheduler.date.add(a[0]._date,r[0].value,"minute"),t.end_date=scheduler.date.add(a[1]._date,r[1].value,"minute"),t.end_date<=t.start_date&&(t.end_date=scheduler.date.add(t.start_date,scheduler.config.time_step,"minute")),{start_date:new Date(t.start_date),
+end_date:new Date(t.end_date)}},focus:function(e){}},scheduler.linkCalendar=function(e,t){var a=function(){var a=scheduler._date,r=new Date(a.valueOf());return t&&(r=t(r)),r.setDate(1),scheduler.updateCalendar(e,r),!0};scheduler.attachEvent("onViewChange",a),scheduler.attachEvent("onXLE",a),scheduler.attachEvent("onEventAdded",a),scheduler.attachEvent("onEventChanged",a),scheduler.attachEvent("onAfterEventDelete",a),a()},scheduler._markCalendarCurrentDate=function(e){var t=scheduler._date,a=scheduler._mode,r=scheduler.date.month_start(new Date(e._date)),i=scheduler.date.add(r,1,"month");
+if("day"==a||this._props&&this._props[a])r.valueOf()<=t.valueOf()&&i>t&&scheduler.markCalendar(e,t,"dhx_calendar_click");else if("week"==a)for(var n=scheduler.date.week_start(new Date(t.valueOf())),s=0;7>s;s++)r.valueOf()<=n.valueOf()&&i>n&&scheduler.markCalendar(e,n,"dhx_calendar_click"),n=scheduler.date.add(n,1,"day")},scheduler.attachEvent("onEventCancel",function(){scheduler.destroyCalendar(null,!0)});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_minical.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_monthheight.js b/codebase/ext/dhtmlxscheduler_monthheight.js
index ce33da3..d98d55d 100644
--- a/codebase/ext/dhtmlxscheduler_monthheight.js
+++ b/codebase/ext/dhtmlxscheduler_monthheight.js
@@ -1,11 +1,11 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.attachEvent("onTemplatesReady",function(){scheduler.xy.scroll_width=0;var e=scheduler.render_view_data;scheduler.render_view_data=function(){var t=this._els.dhx_cal_data[0];t.firstChild._h_fix=!0,e.apply(scheduler,arguments);var a=parseInt(t.style.height);t.style.height="1px",t.style.height=t.scrollHeight+"px",this._obj.style.height=this._obj.clientHeight+t.scrollHeight-a+"px"};var t=scheduler._reset_month_scale;scheduler._reset_month_scale=function(e,a,r){var n={clientHeight:100};t.apply(scheduler,[n,a,r]),
+scheduler.attachEvent("onTemplatesReady",function(){scheduler.xy.scroll_width=0;var e=scheduler.render_view_data;scheduler.render_view_data=function(){var t=this._els.dhx_cal_data[0];t.firstChild._h_fix=!0,e.apply(scheduler,arguments);var a=parseInt(t.style.height);t.style.height="1px",t.style.height=t.scrollHeight+"px",this._obj.style.height=this._obj.clientHeight+t.scrollHeight-a+"px"};var t=scheduler._reset_month_scale;scheduler._reset_month_scale=function(e,a,r,i){var n={clientHeight:100};t.apply(scheduler,[n,a,r,i]),
e.innerHTML=n.innerHTML}});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_monthheight.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_multiselect.js b/codebase/ext/dhtmlxscheduler_multiselect.js
index 0b3c0d2..7102585 100644
--- a/codebase/ext/dhtmlxscheduler_multiselect.js
+++ b/codebase/ext/dhtmlxscheduler_multiselect.js
@@ -1,13 +1,12 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.form_blocks.multiselect={render:function(e){for(var t="<div class='dhx_multi_select_"+e.name+"' style='overflow: auto; height: "+e.height+"px; position: relative;' >",a=0;a<e.options.length;a++)t+="<label><input type='checkbox' value='"+e.options[a].key+"'/>"+e.options[a].label+"</label>",convertStringToBoolean(e.vertical)&&(t+="<br/>");return t+="</div>"},set_value:function(e,t,a,r){function n(t){for(var a=e.getElementsByTagName("input"),r=0;r<a.length;r++)a[r].checked=!!t[a[r].value]}
-for(var i=e.getElementsByTagName("input"),d=0;d<i.length;d++)i[d].checked=!1;var l={};if(a[r.map_to]){for(var s=(a[r.map_to]+"").split(","),d=0;d<s.length;d++)l[s[d]]=!0;n(l)}else{if(scheduler._new_event||!r.script_url)return;var o=document.createElement("div");o.className="dhx_loading",o.style.cssText="position: absolute; top: 40%; left: 40%;",e.appendChild(o),dhtmlxAjax.get(r.script_url+"?dhx_crosslink_"+r.map_to+"="+a.id+"&uid="+scheduler.uid(),function(t){for(var a=t.doXPath("//data/item"),i={},d=0;d<a.length;d++)i[a[d].getAttribute(r.map_to)]=!0;
-
-n(i),e.removeChild(o)})}},get_value:function(e,t,a){for(var r=[],n=e.getElementsByTagName("input"),i=0;i<n.length;i++)n[i].checked&&r.push(n[i].value);return r.join(",")},focus:function(e){}};
+scheduler.form_blocks.multiselect={render:function(e){for(var t="<div class='dhx_multi_select_"+e.name+"' style='overflow: auto; height: "+e.height+"px; position: relative;' >",a=0;a<e.options.length;a++)t+="<label><input type='checkbox' value='"+e.options[a].key+"'/>"+e.options[a].label+"</label>",convertStringToBoolean(e.vertical)&&(t+="<br/>");return t+="</div>"},set_value:function(e,t,a,r){function i(t){for(var a=e.getElementsByTagName("input"),r=0;r<a.length;r++)a[r].checked=!!t[a[r].value]}
+for(var n=e.getElementsByTagName("input"),s=0;s<n.length;s++)n[s].checked=!1;var d={};if(a[r.map_to]){for(var l=(a[r.map_to]+"").split(r.delimiter||scheduler.config.section_delimiter||","),s=0;s<l.length;s++)d[l[s]]=!0;i(d)}else{if(scheduler._new_event||!r.script_url)return;var o=document.createElement("div");o.className="dhx_loading",o.style.cssText="position: absolute; top: 40%; left: 40%;",e.appendChild(o),dhtmlxAjax.get(r.script_url+"?dhx_crosslink_"+r.map_to+"="+a.id+"&uid="+scheduler.uid(),function(t){
+for(var a=t.doXPath("//data/item"),n={},s=0;s<a.length;s++)n[a[s].getAttribute(r.map_to)]=!0;i(n),e.removeChild(o)})}},get_value:function(e,t,a){for(var r=[],i=e.getElementsByTagName("input"),n=0;n<i.length;n++)i[n].checked&&r.push(i[n].value);return r.join(a.delimiter||scheduler.config.section_delimiter||",")},focus:function(e){}};
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_multiselect.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_multisource.js b/codebase/ext/dhtmlxscheduler_multisource.js
index f10cead..3b0a11e 100644
--- a/codebase/ext/dhtmlxscheduler_multisource.js
+++ b/codebase/ext/dhtmlxscheduler_multisource.js
@@ -1,10 +1,10 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-!function(){function e(e){var t=function(){};return t.prototype=e,t}var t=scheduler._load;scheduler._load=function(a,r){if(a=a||this._load_url,"object"==typeof a)for(var n=e(this._loaded),i=0;i<a.length;i++)this._loaded=new n,t.call(this,a[i],r);else t.apply(this,arguments)}}();
+!function(){function e(e){var t=function(){};return t.prototype=e,t}var t=scheduler._load;scheduler._load=function(a,r){if(a=a||this._load_url,"object"==typeof a)for(var i=e(this._loaded),n=0;n<a.length;n++)this._loaded=new i,t.call(this,a[n],r);else t.apply(this,arguments)}}();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_multisource.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_mvc.js b/codebase/ext/dhtmlxscheduler_mvc.js
index 3bfc2d4..81ddd37 100644
--- a/codebase/ext/dhtmlxscheduler_mvc.js
+++ b/codebase/ext/dhtmlxscheduler_mvc.js
@@ -1,15 +1,13 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-!function(){function e(e){var t={};for(var a in e)0!==a.indexOf("_")&&(t[a]=e[a]);return d.use_id||delete t.id,t}function t(){clearTimeout(i),i=setTimeout(function(){scheduler.updateView()},1)}function a(e){e._loading=!0,e._not_render=!0,e.callEvent("onXLS",[])}function r(e){e._not_render=!1,e._render_wait&&e.render_view_data(),e._loading=!1,e.callEvent("onXLE",[])}function n(e){return d.use_id?e.id:e.cid}var i,d={use_id:!1};scheduler.backbone=function(i,l){function s(){o.length&&(scheduler.parse(o,"json"),
-o=[])}l&&(d=l),i.bind("change",function(e,a){var r=n(e),i=scheduler._events[r]=e.toJSON();i.id=r,scheduler._init_event(i),t()}),i.bind("remove",function(e,t){var a=n(e);scheduler._events[a]&&scheduler.deleteEvent(a)});var o=[];i.bind("add",function(e,t){var a=n(e);if(!scheduler._events[a]){var r=e.toJSON();r.id=a,scheduler._init_event(r),o.push(r),1==o.length&&setTimeout(s,1)}}),i.bind("request",function(e){e instanceof Backbone.Collection&&a(scheduler)}),i.bind("sync",function(e){e instanceof Backbone.Collection&&r(scheduler);
-
-}),i.bind("error",function(e){e instanceof Backbone.Collection&&r(scheduler)}),scheduler.attachEvent("onEventCreated",function(e){var t=new i.model(scheduler.getEvent(e));return scheduler._events[e]=t.toJSON(),scheduler._events[e].id=e,!0}),scheduler.attachEvent("onEventAdded",function(t){if(!i.get(t)){var a=e(scheduler.getEvent(t)),r=new i.model(a),d=n(r);d!=t&&this.changeEventId(t,d),i.add(r),i.trigger("scheduler:add",r)}return!0}),scheduler.attachEvent("onEventChanged",function(t){var a=i.get(t),r=e(scheduler.getEvent(t));
-
-return a.set(r),i.trigger("scheduler:change",a),!0}),scheduler.attachEvent("onEventDeleted",function(e){var t=i.get(e);return t&&(i.trigger("scheduler:remove",t),i.remove(e)),!0})}}();
+!function(){function e(e){var t={};for(var a in e)0!==a.indexOf("_")&&(t[a]=e[a]);return s.use_id||delete t.id,t}function t(){clearTimeout(n),n=setTimeout(function(){scheduler.updateView()},1)}function a(e){e._loading=!0,e._not_render=!0,e.callEvent("onXLS",[])}function r(e){e._not_render=!1,e._render_wait&&e.render_view_data(),e._loading=!1,e.callEvent("onXLE",[])}function i(e){return s.use_id?e.id:e.cid}var n,s={use_id:!1};scheduler.backbone=function(n,d){function l(){o.length&&(scheduler.parse(o,"json"),
+o=[])}d&&(s=d),n.bind("change",function(e,a){var r=i(e),n=scheduler._events[r]=e.toJSON();n.id=r,scheduler._init_event(n),t()}),n.bind("remove",function(e,t){var a=i(e);scheduler._events[a]&&scheduler.deleteEvent(a)});var o=[];n.bind("add",function(e,t){var a=i(e);if(!scheduler._events[a]){var r=e.toJSON();r.id=a,scheduler._init_event(r),o.push(r),1==o.length&&setTimeout(l,1)}}),n.bind("request",function(e){e instanceof Backbone.Collection&&a(scheduler)}),n.bind("sync",function(e){e instanceof Backbone.Collection&&r(scheduler);
+}),n.bind("error",function(e){e instanceof Backbone.Collection&&r(scheduler)}),scheduler.attachEvent("onEventCreated",function(e){var t=new n.model(scheduler.getEvent(e));return scheduler._events[e]=t.toJSON(),scheduler._events[e].id=e,!0}),scheduler.attachEvent("onEventAdded",function(t){if(!n.get(t)){var a=e(scheduler.getEvent(t)),r=new n.model(a),s=i(r);s!=t&&this.changeEventId(t,s),n.add(r),n.trigger("scheduler:add",r)}return!0}),scheduler.attachEvent("onEventChanged",function(t){var a=n.get(t),r=e(scheduler.getEvent(t));
+return a.set(r),n.trigger("scheduler:change",a),!0}),scheduler.attachEvent("onEventDeleted",function(e){var t=n.get(e);return t&&(n.trigger("scheduler:remove",t),n.remove(e)),!0})}}();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_mvc.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_offline.js b/codebase/ext/dhtmlxscheduler_offline.js
index 7732743..85ca7e6 100644
--- a/codebase/ext/dhtmlxscheduler_offline.js
+++ b/codebase/ext/dhtmlxscheduler_offline.js
@@ -1,16 +1,13 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
scheduler.load=function(e,t){var a;return"string"==typeof t&&(this._process=t,a=t,t=arguments[2]),this._load_url=e,this._after_call=t,e.$proxy?void e.load(this,"string"==typeof a?a:null):void this._load(e,this._date)},scheduler._dp_init_backup=scheduler._dp_init,scheduler._dp_init=function(e){e._sendData=function(e,t){if(e){if(!this.callEvent("onBeforeDataSending",t?[t,this.getState(t),e]:[null,null,e]))return!1;if(t&&(this._in_progress[t]=(new Date).valueOf()),this.serverProcessor.$proxy){var a="POST"!=this._tMode?"get":"post",r=[];
-
-for(var n in e)r.push({id:n,data:e[n],operation:this.getState(n)});return void this.serverProcessor._send(r,a,this)}var i=new dtmlXMLLoaderObject(this.afterUpdate,this,!0),d=this.serverProcessor+(this._user?getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+this.obj.getUserData(0,"version")].join("&"):"");"POST"!=this._tMode?i.loadXML(d+(-1!=d.indexOf("?")?"&":"?")+this.serialize(e,t)):i.loadXML(d,!0,this.serialize(e,t)),this._waitMode++}},e._updatesToParams=function(e){for(var t={},a=0;a<e.length;a++)t[e[a].id]=e[a].data;
-
-return this.serialize(t)},e._processResult=function(e,t,a){if(200==a.status)t=new dtmlXMLLoaderObject(function(){},this,!0),t.loadXMLString(e),t.xmlDoc=a,this.afterUpdate(this,null,null,null,t);else for(var r in this._in_progress){var n=this.getState(r);this.afterUpdateCallback(r,r,n,null)}},this._dp_init_backup(e)},window.dataProcessor&&(dataProcessor.prototype.init=function(e){this.init_original(e),e._dataprocessor=this,this.setTransactionMode("POST",!0),this.serverProcessor.$proxy||(this.serverProcessor+=(-1!=this.serverProcessor.indexOf("?")?"&":"?")+"editing=true");
-
+for(var i in e)r.push({id:i,data:e[i],operation:this.getState(i)});return void this.serverProcessor._send(r,a,this)}var n=new dtmlXMLLoaderObject(this.afterUpdate,this,!0),s=this.serverProcessor+(this._user?getUrlSymbol(this.serverProcessor)+["dhx_user="+this._user,"dhx_version="+this.obj.getUserData(0,"version")].join("&"):"");"POST"!=this._tMode?n.loadXML(s+(-1!=s.indexOf("?")?"&":"?")+this.serialize(e,t)):n.loadXML(s,!0,this.serialize(e,t)),this._waitMode++}},e._updatesToParams=function(e){for(var t={},a=0;a<e.length;a++)t[e[a].id]=e[a].data;
+return this.serialize(t)},e._processResult=function(e,t,a){if(200==a.status)t=new dtmlXMLLoaderObject(function(){},this,!0),t.loadXMLString(e),t.xmlDoc=a,this.afterUpdate(this,null,null,null,t);else for(var r in this._in_progress){var i=this.getState(r);this.afterUpdateCallback(r,r,i,null)}},this._dp_init_backup(e)},window.dataProcessor&&(dataProcessor.prototype.init=function(e){this.init_original(e),e._dataprocessor=this,this.setTransactionMode("POST",!0),this.serverProcessor.$proxy||(this.serverProcessor+=(-1!=this.serverProcessor.indexOf("?")?"&":"?")+"editing=true");
});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_offline.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_outerdrag.js b/codebase/ext/dhtmlxscheduler_outerdrag.js
index b1d16e2..e121f5e 100644
--- a/codebase/ext/dhtmlxscheduler_outerdrag.js
+++ b/codebase/ext/dhtmlxscheduler_outerdrag.js
@@ -1,13 +1,12 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.attachEvent("onTemplatesReady",function(){var e,t=new dhtmlDragAndDropObject,a=t.stopDrag;t.stopDrag=function(t){return e=t||event,a.apply(this,arguments)},t.addDragLanding(scheduler._els.dhx_cal_data[0],{_drag:function(t,a,r,n){if(!scheduler.checkEvent("onBeforeExternalDragIn")||scheduler.callEvent("onBeforeExternalDragIn",[t,a,r,n,e])){var i=scheduler.attachEvent("onEventCreated",function(a){scheduler.callEvent("onExternalDragIn",[a,t,e])||(this._drag_mode=this._drag_id=null,this.deleteEvent(a));
-
-}),d=scheduler.getActionData(e),l={start_date:new Date(d.date)};if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){var s=scheduler.matrix[scheduler._mode];l[s.y_property]=d.section;var o=scheduler._locate_cell_timeline(e);l.start_date=s._trace_x[o.x],l.end_date=scheduler.date.add(l.start_date,s.x_step,s.x_unit)}scheduler._props&&scheduler._props[scheduler._mode]&&(l[scheduler._props[scheduler._mode].map_to]=d.section),scheduler.addEventNow(l),scheduler.detachEvent(i)}},_dragIn:function(e,t){
-return e},_dragOut:function(e){return this}})});
+scheduler.attachEvent("onTemplatesReady",function(){function e(e,a,r,i){if(!scheduler.checkEvent("onBeforeExternalDragIn")||scheduler.callEvent("onBeforeExternalDragIn",[e,a,r,i,t])){var n=scheduler.attachEvent("onEventCreated",function(a){scheduler.callEvent("onExternalDragIn",[a,e,t])||(this._drag_mode=this._drag_id=null,this.deleteEvent(a))}),s=scheduler.getActionData(t),d={start_date:new Date(s.date)};if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){var l=scheduler.matrix[scheduler._mode];
+d[l.y_property]=s.section;var o=scheduler._locate_cell_timeline(t);d.start_date=l._trace_x[o.x],d.end_date=scheduler.date.add(d.start_date,l.x_step,l.x_unit)}scheduler._props&&scheduler._props[scheduler._mode]&&(d[scheduler._props[scheduler._mode].map_to]=s.section),scheduler.addEventNow(d),scheduler.detachEvent(n)}}var t,a=new dhtmlDragAndDropObject,r=a.stopDrag;a.stopDrag=function(e){return t=e||event,r.apply(this,arguments)},a.addDragLanding(scheduler._els.dhx_cal_data[0],{_drag:function(t,a,r,i){
+e(t,a,r,i)},_dragIn:function(e,t){return e},_dragOut:function(e){return this}}),dhtmlx.DragControl&&dhtmlx.DragControl.addDrop(scheduler._els.dhx_cal_data[0],{onDrop:function(a,r,i,n){var s=dhtmlx.DragControl.getMaster(a);t=n,e(a,s,r,n.target||n.srcElement)},onDragIn:function(e,t,a){return t}},!0)});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_outerdrag.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_pdf.js b/codebase/ext/dhtmlxscheduler_pdf.js
index 0ade92f..59067ec 100644
--- a/codebase/ext/dhtmlxscheduler_pdf.js
+++ b/codebase/ext/dhtmlxscheduler_pdf.js
@@ -1,32 +1,24 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-!function(){function e(e){return e.replace(f,"\n").replace(b,"")}function t(e,t){e=parseFloat(e),t=parseFloat(t),isNaN(t)||(e-=t);var a=r(e);return e=e-a.width+a.cols*m,isNaN(e)?"auto":100*e/m}function a(e,t,a){e=parseFloat(e),t=parseFloat(t),!isNaN(t)&&a&&(e-=t);var n=r(e);return e=e-n.width+n.cols*m,isNaN(e)?"auto":100*e/(m-(isNaN(t)?0:t))}function r(e){for(var t=0,a=scheduler._els.dhx_cal_header[0].childNodes,r=a[1]?a[1].childNodes:a[0].childNodes,n=0;n<r.length;n++){var i=r[n].style?r[n]:r[n].parentNode,d=parseFloat(i.style.width);
-
-if(!(e>d))break;e-=d+1,t+=d+1}return{width:t,cols:n}}function n(e){return e=parseFloat(e),isNaN(e)?"auto":100*e/g}function i(e,t){return(window.getComputedStyle?window.getComputedStyle(e,null)[t]:e.currentStyle?e.currentStyle[t]:null)||""}function d(e,t){for(var a=parseInt(e.style.left,10),r=0;r<scheduler._cols.length;r++)if(a-=scheduler._cols[r],0>a)return r;return t}function l(e,t){for(var a=parseInt(e.style.top,10),r=0;r<scheduler._colsS.heights.length;r++)if(scheduler._colsS.heights[r]>a)return r;
-
-return t}function s(e){return e?"<"+e+">":""}function o(e){return e?"</"+e+">":""}function _(e,t,a,r){var n="<"+e+" profile='"+t+"'";return a&&(n+=" header='"+a+"'"),r&&(n+=" footer='"+r+"'"),n+=">"}function c(){var t="",a=scheduler._mode;if(scheduler.matrix&&scheduler.matrix[scheduler._mode]&&(a="cell"==scheduler.matrix[scheduler._mode].render?"matrix":"timeline"),t+="<scale mode='"+a+"' today='"+scheduler._els.dhx_cal_date[0].innerHTML+"'>","week_agenda"==scheduler._mode)for(var r=scheduler._els.dhx_cal_data[0].getElementsByTagName("DIV"),n=0;n<r.length;n++)"dhx_wa_scale_bar"==r[n].className&&(t+="<column>"+e(r[n].innerHTML)+"</column>");
-else if("agenda"==scheduler._mode||"map"==scheduler._mode){var r=scheduler._els.dhx_cal_header[0].childNodes[0].childNodes;t+="<column>"+e(r[0].innerHTML)+"</column><column>"+e(r[1].innerHTML)+"</column>"}else if("year"==scheduler._mode)for(var r=scheduler._els.dhx_cal_data[0].childNodes,n=0;n<r.length;n++)t+="<month label='"+e(r[n].childNodes[0].innerHTML)+"'>",t+=h(r[n].childNodes[1].childNodes),t+=u(r[n].childNodes[2]),t+="</month>";else{t+="<x>";var r=scheduler._els.dhx_cal_header[0].childNodes;
-
-t+=h(r),t+="</x>";var i=scheduler._els.dhx_cal_data[0];if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){t+="<y>";for(var n=0;n<i.firstChild.rows.length;n++){var d=i.firstChild.rows[n];t+="<row><![CDATA["+e(d.cells[0].innerHTML)+"]]></row>"}t+="</y>",g=i.firstChild.rows[0].cells[0].offsetHeight}else if("TABLE"==i.firstChild.tagName)t+=u(i);else{for(i=i.childNodes[i.childNodes.length-1];-1==i.className.indexOf("dhx_scale_holder");)i=i.previousSibling;i=i.childNodes,t+="<y>";for(var n=0;n<i.length;n++)t+="\n<row><![CDATA["+e(i[n].innerHTML)+"]]></row>";
-
-t+="</y>",g=i[0].offsetHeight}}return t+="</scale>"}function u(t){for(var a="",r=t.firstChild.rows,n=0;n<r.length;n++){for(var i=[],d=0;d<r[n].cells.length;d++)i.push(r[n].cells[d].firstChild.innerHTML);a+="\n<row height='"+t.firstChild.rows[n].cells[0].offsetHeight+"'><![CDATA["+e(i.join("|"))+"]]></row>",g=t.firstChild.rows[0].cells[0].offsetHeight}return a}function h(t){var a,r="";scheduler.matrix&&scheduler.matrix[scheduler._mode]&&(scheduler.matrix[scheduler._mode].second_scale&&(a=t[1].childNodes),
-t=t[0].childNodes);for(var n=0;n<t.length;n++)r+="\n<column><![CDATA["+e(t[n].innerHTML)+"]]></column>";if(m=t[0].offsetWidth,a)for(var i=0,d=t[0].offsetWidth,l=1,n=0;n<a.length;n++)r+="\n<column second_scale='"+l+"'><![CDATA["+e(a[n].innerHTML)+"]]></column>",i+=a[n].offsetWidth,i>=d&&(d+=t[l]?t[l].offsetWidth:0,l++),m=a[0].offsetWidth;return r}function p(r){var s="",o=scheduler._rendered,_=scheduler.matrix&&scheduler.matrix[scheduler._mode];if("agenda"==scheduler._mode||"map"==scheduler._mode)for(var c=0;c<o.length;c++)s+="<event><head><![CDATA["+e(o[c].childNodes[0].innerHTML)+"]]></head><body><![CDATA["+e(o[c].childNodes[2].innerHTML)+"]]></body></event>";
-else if("week_agenda"==scheduler._mode)for(var c=0;c<o.length;c++)s+="<event day='"+o[c].parentNode.getAttribute("day")+"'><body>"+e(o[c].innerHTML)+"</body></event>";else if("year"==scheduler._mode)for(var o=scheduler.get_visible_events(),c=0;c<o.length;c++){var u=o[c].start_date;for(u.valueOf()<scheduler._min_date.valueOf()&&(u=scheduler._min_date);u<o[c].end_date;){var h=u.getMonth()+12*(u.getFullYear()-scheduler._min_date.getFullYear())-scheduler.week_starts._month,p=scheduler.week_starts[h]+u.getDate()-1,v=r?i(scheduler._get_year_cell(u),"color"):"",m=r?i(scheduler._get_year_cell(u),"backgroundColor"):"";
-
-if(s+="<event day='"+p%7+"' week='"+Math.floor(p/7)+"' month='"+h+"' backgroundColor='"+m+"' color='"+v+"'></event>",u=scheduler.date.add(u,1,"day"),u.valueOf()>=scheduler._max_date.valueOf())break}}else if(_&&"cell"==_.render)for(var o=scheduler._els.dhx_cal_data[0].getElementsByTagName("TD"),c=0;c<o.length;c++){var v=r?i(o[c],"color"):"",m=r?i(o[c],"backgroundColor"):"";s+="\n<event><body backgroundColor='"+m+"' color='"+v+"'><![CDATA["+e(o[c].innerHTML)+"]]></body></event>"}else for(var c=0;c<o.length;c++){
-var b,f;if(scheduler.matrix&&scheduler.matrix[scheduler._mode])b=t(o[c].style.left),f=t(o[c].offsetWidth)-1;else{var y=scheduler.config.use_select_menu_space?0:26;b=a(o[c].style.left,y,!0),f=a(o[c].style.width,y)-1}if(!isNaN(1*f)){var x=n(o[c].style.top),k=n(o[c].style.height),w=o[c].className.split(" ")[0].replace("dhx_cal_","");if("dhx_tooltip_line"!==w){var D=scheduler.getEvent(o[c].getAttribute("event_id"));if(D){var p=D._sday,E=D._sweek,M=D._length||0;if("month"==scheduler._mode)k=parseInt(o[c].offsetHeight,10),
-x=parseInt(o[c].style.top,10)-scheduler.xy.month_head_height,p=d(o[c],p),E=l(o[c],E);else if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){p=0;var S=o[c].parentNode.parentNode.parentNode;E=S.rowIndex;var N=g;g=o[c].parentNode.offsetHeight,x=n(o[c].style.top),x-=.2*x,g=N}else{if(o[c].parentNode==scheduler._els.dhx_cal_data[0])continue;var O=scheduler._els.dhx_cal_data[0].childNodes[0],T=parseFloat(-1!=O.className.indexOf("dhx_scale_holder")?O.style.left:0);b+=t(o[c].parentNode.style.left,T);
-
-}if(s+="\n<event week='"+E+"' day='"+p+"' type='"+w+"' x='"+b+"' y='"+x+"' width='"+f+"' height='"+k+"' len='"+M+"'>","event"==w){s+="<header><![CDATA["+e(o[c].childNodes[1].innerHTML)+"]]></header>";var v=r?i(o[c].childNodes[2],"color"):"",m=r?i(o[c].childNodes[2],"backgroundColor"):"";s+="<body backgroundColor='"+m+"' color='"+v+"'><![CDATA["+e(o[c].childNodes[2].innerHTML)+"]]></body>"}else{var v=r?i(o[c],"color"):"",m=r?i(o[c],"backgroundColor"):"";s+="<body backgroundColor='"+m+"' color='"+v+"'><![CDATA["+e(o[c].innerHTML)+"]]></body>";
-
-}s+="</event>"}}}}return s}function v(e,t,a,r,n,i,d){var l=!1;"fullcolor"==n&&(l=!0,n="color"),n=n||"color";var u=scheduler.uid(),h=document.createElement("div");h.style.display="none",document.body.appendChild(h),h.innerHTML='<form id="'+u+'" method="post" target="_blank" action="'+r+'" accept-charset="utf-8" enctype="application/x-www-form-urlencoded"><input type="hidden" name="mycoolxmlbody"/> </form>';var v="";if(e){var m=scheduler._date,g=scheduler._mode;t=scheduler.date[a+"_start"](t),t=scheduler.date["get_"+a+"_end"]?scheduler.date["get_"+a+"_end"](t):scheduler.date.add(t,1,a),
-v=_("pages",n,i,d);for(var b=new Date(e);+t>+b;b=scheduler.date.add(b,1,a))scheduler.setCurrentView(b,a),v+=s("page")+c().replace("–","-")+p(l)+o("page");v+=o("pages"),scheduler.setCurrentView(m,g)}else v=_("data",n,i,d)+c().replace("–","-")+p(l)+o("data");document.getElementById(u).firstChild.value=encodeURIComponent(v),document.getElementById(u).submit(),h.parentNode.removeChild(h)}var m,g,b=new RegExp("<[^>]*>","g"),f=new RegExp("<br[^>]*>","g");scheduler.toPDF=function(e,t,a,r){return v.apply(this,[null,null,null,e,t,a,r]);
-
-},scheduler.toPDFRange=function(e,t,a,r,n,i,d){return"string"==typeof e&&(e=scheduler.templates.api_date(e),t=scheduler.templates.api_date(t)),v.apply(this,arguments)}}();
+!function(){function e(e){return e.replace(y,"\n").replace(p,"")}function t(e,t){e=parseFloat(e),t=parseFloat(t),isNaN(t)||(e-=t);var a=r(e);return e=e-a.width+a.cols*g,isNaN(e)?"auto":100*e/g}function a(e,t,a){e=parseFloat(e),t=parseFloat(t),!isNaN(t)&&a&&(e-=t);var i=r(e);return e=e-i.width+i.cols*g,isNaN(e)?"auto":100*e/(g-(isNaN(t)?0:t))}function r(e){for(var t=0,a=scheduler._els.dhx_cal_header[0].childNodes,r=a[1]?a[1].childNodes:a[0].childNodes,i=0;i<r.length;i++){var n=r[i].style?r[i]:r[i].parentNode,s=parseFloat(n.style.width);
+if(!(e>s))break;e-=s+1,t+=s+1}return{width:t,cols:i}}function i(e){return e=parseFloat(e),isNaN(e)?"auto":100*e/m}function n(e,t){return(window.getComputedStyle?window.getComputedStyle(e,null)[t]:e.currentStyle?e.currentStyle[t]:null)||""}function s(e,t){for(var a=parseInt(e.style.left,10),r=0;r<scheduler._cols.length;r++)if(a-=scheduler._cols[r],0>a)return r;return t}function d(e,t){for(var a=parseInt(e.style.top,10),r=0;r<scheduler._colsS.heights.length;r++)if(scheduler._colsS.heights[r]>a)return r;
+return t}function l(e){return e?"<"+e+">":""}function o(e){return e?"</"+e+">":""}function c(e,t,a,r){var i="<"+e+" profile='"+t+"'";return a&&(i+=" header='"+a+"'"),r&&(i+=" footer='"+r+"'"),i+=">"}function _(){var t="",a=scheduler._mode;if(scheduler.matrix&&scheduler.matrix[scheduler._mode]&&(a="cell"==scheduler.matrix[scheduler._mode].render?"matrix":"timeline"),t+="<scale mode='"+a+"' today='"+scheduler._els.dhx_cal_date[0].innerHTML+"'>","week_agenda"==scheduler._mode)for(var r=scheduler._els.dhx_cal_data[0].getElementsByTagName("DIV"),i=0;i<r.length;i++)"dhx_wa_scale_bar"==r[i].className&&(t+="<column>"+e(r[i].innerHTML)+"</column>");else if("agenda"==scheduler._mode||"map"==scheduler._mode){
+var r=scheduler._els.dhx_cal_header[0].childNodes[0].childNodes;t+="<column>"+e(r[0].innerHTML)+"</column><column>"+e(r[1].innerHTML)+"</column>"}else if("year"==scheduler._mode)for(var r=scheduler._els.dhx_cal_data[0].childNodes,i=0;i<r.length;i++)t+="<month label='"+e(r[i].childNodes[0].innerHTML)+"'>",t+=u(r[i].childNodes[1].childNodes),t+=h(r[i].childNodes[2]),t+="</month>";else{t+="<x>";var r=scheduler._els.dhx_cal_header[0].childNodes;t+=u(r),t+="</x>";var n=scheduler._els.dhx_cal_data[0];if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){
+t+="<y>";for(var i=0;i<n.firstChild.rows.length;i++){var s=n.firstChild.rows[i];t+="<row><![CDATA["+e(s.cells[0].innerHTML)+"]]></row>"}t+="</y>",m=n.firstChild.rows[0].cells[0].offsetHeight}else if("TABLE"==n.firstChild.tagName)t+=h(n);else{for(n=n.childNodes[n.childNodes.length-1];-1==n.className.indexOf("dhx_scale_holder");)n=n.previousSibling;n=n.childNodes,t+="<y>";for(var i=0;i<n.length;i++)t+="\n<row><![CDATA["+e(n[i].innerHTML)+"]]></row>";t+="</y>",m=n[0].offsetHeight}}return t+="</scale>";
+}function h(t){for(var a="",r=t.firstChild.rows,i=0;i<r.length;i++){for(var n=[],s=0;s<r[i].cells.length;s++)n.push(r[i].cells[s].firstChild.innerHTML);a+="\n<row height='"+t.firstChild.rows[i].cells[0].offsetHeight+"'><![CDATA["+e(n.join("|"))+"]]></row>",m=t.firstChild.rows[0].cells[0].offsetHeight}return a}function u(t){var a,r="";scheduler.matrix&&scheduler.matrix[scheduler._mode]&&(scheduler.matrix[scheduler._mode].second_scale&&(a=t[1].childNodes),t=t[0].childNodes);for(var i=0;i<t.length;i++)r+="\n<column><![CDATA["+e(t[i].innerHTML)+"]]></column>";
+if(g=t[0].offsetWidth,a)for(var n=0,s=t[0].offsetWidth,d=1,i=0;i<a.length;i++)r+="\n<column second_scale='"+d+"'><![CDATA["+e(a[i].innerHTML)+"]]></column>",n+=a[i].offsetWidth,n>=s&&(s+=t[d]?t[d].offsetWidth:0,d++),g=a[0].offsetWidth;return r}function v(r){var l="",o=scheduler._rendered,c=scheduler.matrix&&scheduler.matrix[scheduler._mode];if("agenda"==scheduler._mode||"map"==scheduler._mode)for(var _=0;_<o.length;_++)l+="<event><head><![CDATA["+e(o[_].childNodes[0].innerHTML)+"]]></head><body><![CDATA["+e(o[_].childNodes[2].innerHTML)+"]]></body></event>";else if("week_agenda"==scheduler._mode)for(var _=0;_<o.length;_++)l+="<event day='"+o[_].parentNode.getAttribute("day")+"'><body>"+e(o[_].innerHTML)+"</body></event>";else if("year"==scheduler._mode)for(var o=scheduler.get_visible_events(),_=0;_<o.length;_++){
+var h=o[_].start_date;for(h.valueOf()<scheduler._min_date.valueOf()&&(h=scheduler._min_date);h<o[_].end_date;){var u=h.getMonth()+12*(h.getFullYear()-scheduler._min_date.getFullYear())-scheduler.week_starts._month,v=scheduler.week_starts[u]+h.getDate()-1,f=r?n(scheduler._get_year_cell(h),"color"):"",g=r?n(scheduler._get_year_cell(h),"backgroundColor"):"";if(l+="<event day='"+v%7+"' week='"+Math.floor(v/7)+"' month='"+u+"' backgroundColor='"+g+"' color='"+f+"'></event>",h=scheduler.date.add(h,1,"day"),
+h.valueOf()>=scheduler._max_date.valueOf())break}}else if(c&&"cell"==c.render)for(var o=scheduler._els.dhx_cal_data[0].getElementsByTagName("TD"),_=0;_<o.length;_++){var f=r?n(o[_],"color"):"",g=r?n(o[_],"backgroundColor"):"";l+="\n<event><body backgroundColor='"+g+"' color='"+f+"'><![CDATA["+e(o[_].innerHTML)+"]]></body></event>"}else for(var _=0;_<o.length;_++){var p,y;if(scheduler.matrix&&scheduler.matrix[scheduler._mode])p=t(o[_].style.left),y=t(o[_].offsetWidth)-1;else{var b=scheduler.config.use_select_menu_space?0:26;
+p=a(o[_].style.left,b,!0),y=a(o[_].style.width,b)-1}if(!isNaN(1*y)){var x=i(o[_].style.top),w=i(o[_].style.height),k=o[_].className.split(" ")[0].replace("dhx_cal_","");if("dhx_tooltip_line"!==k){var E=scheduler.getEvent(o[_].getAttribute("event_id"));if(E){var v=E._sday,D=E._sweek,N=E._length||0;if("month"==scheduler._mode)w=parseInt(o[_].offsetHeight,10),x=parseInt(o[_].style.top,10)-scheduler.xy.month_head_height,v=s(o[_],v),D=d(o[_],D);else if(scheduler.matrix&&scheduler.matrix[scheduler._mode]){
+v=0;var S=o[_].parentNode.parentNode.parentNode;D=S.rowIndex;var A=m;m=o[_].parentNode.offsetHeight,x=i(o[_].style.top),x-=.2*x,m=A}else{if(o[_].parentNode==scheduler._els.dhx_cal_data[0])continue;var C=scheduler._els.dhx_cal_data[0].childNodes[0],M=parseFloat(-1!=C.className.indexOf("dhx_scale_holder")?C.style.left:0);p+=t(o[_].parentNode.style.left,M)}if(l+="\n<event week='"+D+"' day='"+v+"' type='"+k+"' x='"+p+"' y='"+x+"' width='"+y+"' height='"+w+"' len='"+N+"'>","event"==k){l+="<header><![CDATA["+e(o[_].childNodes[1].innerHTML)+"]]></header>";
+var f=r?n(o[_].childNodes[2],"color"):"",g=r?n(o[_].childNodes[2],"backgroundColor"):"";l+="<body backgroundColor='"+g+"' color='"+f+"'><![CDATA["+e(o[_].childNodes[2].innerHTML)+"]]></body>"}else{var f=r?n(o[_],"color"):"",g=r?n(o[_],"backgroundColor"):"";l+="<body backgroundColor='"+g+"' color='"+f+"'><![CDATA["+e(o[_].innerHTML)+"]]></body>"}l+="</event>"}}}}return l}function f(e,t,a,r,i,n,s){var d=!1;"fullcolor"==i&&(d=!0,i="color"),i=i||"color";var h=scheduler.uid(),u=document.createElement("div");
+u.style.display="none",document.body.appendChild(u),u.innerHTML='<form id="'+h+'" method="post" target="_blank" action="'+r+'" accept-charset="utf-8" enctype="application/x-www-form-urlencoded"><input type="hidden" name="mycoolxmlbody"/> </form>';var f="";if(e){var g=scheduler._date,m=scheduler._mode;t=scheduler.date[a+"_start"](t),t=scheduler.date["get_"+a+"_end"]?scheduler.date["get_"+a+"_end"](t):scheduler.date.add(t,1,a),f=c("pages",i,n,s);for(var p=new Date(e);+t>+p;p=scheduler.date.add(p,1,a))scheduler.setCurrentView(p,a),
+f+=l("page")+_().replace("–","-")+v(d)+o("page");f+=o("pages"),scheduler.setCurrentView(g,m)}else f=c("data",i,n,s)+_().replace("–","-")+v(d)+o("data");document.getElementById(h).firstChild.value=encodeURIComponent(f),document.getElementById(h).submit(),u.parentNode.removeChild(u)}var g,m,p=new RegExp("<[^>]*>","g"),y=new RegExp("<br[^>]*>","g");scheduler.toPDF=function(e,t,a,r){return f.apply(this,[null,null,null,e,t,a,r])},scheduler.toPDFRange=function(e,t,a,r,i,n,s){return"string"==typeof e&&(e=scheduler.templates.api_date(e),
+t=scheduler.templates.api_date(t)),f.apply(this,arguments)}}();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_pdf.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_quick_info.js b/codebase/ext/dhtmlxscheduler_quick_info.js
index 015ce84..1e6bbe7 100644
--- a/codebase/ext/dhtmlxscheduler_quick_info.js
+++ b/codebase/ext/dhtmlxscheduler_quick_info.js
@@ -1,6 +1,6 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
@@ -8,14 +8,12 @@ This software is covered by GPL license. You also can obtain Commercial or Enter
*/
scheduler.config.icons_select=["icon_details","icon_delete"],scheduler.config.details_on_create=!0,scheduler.config.show_quick_info=!0,scheduler.xy.menu_width=0,scheduler.attachEvent("onClick",function(e){return scheduler.showQuickInfo(e),!0}),function(){for(var e=["onEmptyClick","onViewChange","onLightbox","onBeforeEventDelete","onBeforeDrag"],t=function(){return scheduler._hideQuickInfo(),!0},a=0;a<e.length;a++)scheduler.attachEvent(e[a],t)}(),scheduler.templates.quick_info_title=function(e,t,a){
return a.text.substr(0,50)},scheduler.templates.quick_info_content=function(e,t,a){return a.details||a.text},scheduler.templates.quick_info_date=function(e,t,a){return scheduler.isOneDayEvent(a)?scheduler.templates.day_date(e,t,a)+" "+scheduler.templates.event_header(e,t,a):scheduler.templates.week_date(e,t,a)},scheduler.showQuickInfo=function(e){if(e!=this._quick_info_box_id&&this.config.show_quick_info){this.hideQuickInfo(!0);var t=this._get_event_counter_part(e);t&&(this._quick_info_box=this._init_quick_info(t),
-this._fill_quick_data(e),this._show_quick_info(t))}},scheduler._hideQuickInfo=function(){scheduler.hideQuickInfo()},scheduler.hideQuickInfo=function(e){var t=this._quick_info_box;if(this._quick_info_box_id=0,t&&t.parentNode){var a=t._offsetWidth;if(scheduler.config.quick_info_detached)return t.parentNode.removeChild(t);"auto"==t.style.right?t.style.left=-a+"px":t.style.right=-a+"px",e&&t.parentNode.removeChild(t)}},dhtmlxEvent(window,"keydown",function(e){27==e.keyCode&&scheduler.hideQuickInfo()}),
-scheduler._show_quick_info=function(e){var t=scheduler._quick_info_box;scheduler._obj.appendChild(t);var a=t.offsetWidth,r=t.offsetHeight;scheduler.config.quick_info_detached?(t.style.left=e.left-e.dx*(a-e.width)+"px",t.style.top=e.top-(e.dy?r:-e.height)+"px"):(t.style.top=this.xy.scale_height+this.xy.nav_height+20+"px",1==e.dx?(t.style.right="auto",t.style.left=-a+"px",setTimeout(function(){t.style.left="-10px"},1)):(t.style.left="auto",t.style.right=-a+"px",setTimeout(function(){t.style.right="-10px";
-
-},1)),t.className=t.className.replace("dhx_qi_left","").replace("dhx_qi_right","")+" dhx_qi_"+(1==e?"left":"right"))},scheduler.attachEvent("onTemplatesReady",function(){if(scheduler.hideQuickInfo(),this._quick_info_box){var e=this._quick_info_box;e.parentNode&&e.parentNode.removeChild(e),this._quick_info_box=null}}),scheduler._quick_info_onscroll_handler=function(e){scheduler.hideQuickInfo()},scheduler._init_quick_info=function(){if(!this._quick_info_box){var e=scheduler.xy,t=this._quick_info_box=document.createElement("div");
-
-t.className="dhx_cal_quick_info",scheduler.$testmode&&(t.className+=" dhx_no_animate");var a='<div class="dhx_cal_qi_title" style="height:'+e.quick_info_title+'px"><div class="dhx_cal_qi_tcontent"></div><div class="dhx_cal_qi_tdate"></div></div><div class="dhx_cal_qi_content"></div>';a+='<div class="dhx_cal_qi_controls" style="height:'+e.quick_info_buttons+'px">';for(var r=scheduler.config.icons_select,n=0;n<r.length;n++)a+='<div class="dhx_qi_big_icon '+r[n]+'" title="'+scheduler.locale.labels[r[n]]+"\"><div class='dhx_menu_icon "+r[n]+"'></div><div>"+scheduler.locale.labels[r[n]]+"</div></div>";
-
-a+="</div>",t.innerHTML=a,dhtmlxEvent(t,"click",function(e){e=e||event,scheduler._qi_button_click(e.target||e.srcElement)}),scheduler.config.quick_info_detached&&(scheduler._detachDomEvent(scheduler._els.dhx_cal_data[0],"scroll",scheduler._quick_info_onscroll_handler),dhtmlxEvent(scheduler._els.dhx_cal_data[0],"scroll",scheduler._quick_info_onscroll_handler))}return this._quick_info_box},scheduler._qi_button_click=function(e){var t=scheduler._quick_info_box;if(e&&e!=t){var a=e.className;if(-1!=a.indexOf("_icon")){
-var r=scheduler._quick_info_box_id;scheduler._click.buttons[a.split(" ")[1].replace("icon_","")](r)}else scheduler._qi_button_click(e.parentNode)}},scheduler._get_event_counter_part=function(e){for(var t=scheduler.getRenderedEvent(e),a=0,r=0,n=t;n&&n!=scheduler._obj;)a+=n.offsetLeft,r+=n.offsetTop-n.scrollTop,n=n.offsetParent;if(n){var i=a+t.offsetWidth/2>scheduler._x/2?1:0,d=r+t.offsetHeight/2>scheduler._y/2?1:0;return{left:a,top:r,dx:i,dy:d,width:t.offsetWidth,height:t.offsetHeight}}return 0},scheduler._fill_quick_data=function(e){
-var t=scheduler.getEvent(e),a=scheduler._quick_info_box;scheduler._quick_info_box_id=e;var r=a.firstChild.firstChild;r.innerHTML=scheduler.templates.quick_info_title(t.start_date,t.end_date,t);var n=r.nextSibling;n.innerHTML=scheduler.templates.quick_info_date(t.start_date,t.end_date,t);var i=a.firstChild.nextSibling;i.innerHTML=scheduler.templates.quick_info_content(t.start_date,t.end_date,t)};
+this._fill_quick_data(e),this._show_quick_info(t),this.callEvent("onQuickInfo",[e]))}},scheduler._hideQuickInfo=function(){scheduler.hideQuickInfo()},scheduler.hideQuickInfo=function(e){var t=this._quick_info_box,a=this._quick_info_box_id;if(this._quick_info_box_id=0,t&&t.parentNode){var r=t.offsetWidth;if(scheduler.config.quick_info_detached)return this.callEvent("onAfterQuickInfo",[a]),t.parentNode.removeChild(t);"auto"==t.style.right?t.style.left=-r+"px":t.style.right=-r+"px",e&&t.parentNode.removeChild(t),
+this.callEvent("onAfterQuickInfo",[a])}},dhtmlxEvent(window,"keydown",function(e){27==e.keyCode&&scheduler.hideQuickInfo()}),scheduler._show_quick_info=function(e){var t=scheduler._quick_info_box;scheduler._obj.appendChild(t);var a=t.offsetWidth,r=t.offsetHeight;scheduler.config.quick_info_detached?(t.style.left=e.left-e.dx*(a-e.width)+"px",t.style.top=e.top-(e.dy?r:-e.height)+"px"):(t.style.top=this.xy.scale_height+this.xy.nav_height+20+"px",1==e.dx?(t.style.right="auto",t.style.left=-a+"px",setTimeout(function(){
+t.style.left="-10px"},1)):(t.style.left="auto",t.style.right=-a+"px",setTimeout(function(){t.style.right="-10px"},1)),t.className=t.className.replace(" dhx_qi_left","").replace(" dhx_qi_right","")+" dhx_qi_"+(1==e.dx?"left":"right"))},scheduler.attachEvent("onTemplatesReady",function(){if(scheduler.hideQuickInfo(),this._quick_info_box){var e=this._quick_info_box;e.parentNode&&e.parentNode.removeChild(e),this._quick_info_box=null}}),scheduler._quick_info_onscroll_handler=function(e){scheduler.hideQuickInfo();
+},scheduler._init_quick_info=function(){if(!this._quick_info_box){var e=scheduler.xy,t=this._quick_info_box=document.createElement("div");this._waiAria.quickInfoAttr(t),t.className="dhx_cal_quick_info",scheduler.$testmode&&(t.className+=" dhx_no_animate");var a=this._waiAria.quickInfoHeaderAttrString(),r='<div class="dhx_cal_qi_title" style="height:'+e.quick_info_title+'px" '+a+'><div class="dhx_cal_qi_tcontent"></div><div class="dhx_cal_qi_tdate"></div></div><div class="dhx_cal_qi_content"></div>';
+r+='<div class="dhx_cal_qi_controls" style="height:'+e.quick_info_buttons+'px">';for(var i=scheduler.config.icons_select,n=0;n<i.length;n++){var a=this._waiAria.quickInfoButtonAttrString(this.locale.labels[i[n]]);r+="<div "+a+' class="dhx_qi_big_icon '+i[n]+'" title="'+scheduler.locale.labels[i[n]]+"\"><div class='dhx_menu_icon "+i[n]+"'></div><div>"+scheduler.locale.labels[i[n]]+"</div></div>"}r+="</div>",t.innerHTML=r,dhtmlxEvent(t,"click",function(e){e=e||event,scheduler._qi_button_click(e.target||e.srcElement);
+}),scheduler.config.quick_info_detached&&(scheduler._detachDomEvent(scheduler._els.dhx_cal_data[0],"scroll",scheduler._quick_info_onscroll_handler),dhtmlxEvent(scheduler._els.dhx_cal_data[0],"scroll",scheduler._quick_info_onscroll_handler))}return this._quick_info_box},scheduler._qi_button_click=function(e){var t=scheduler._quick_info_box;if(e&&e!=t){var a=scheduler._getClassName(e);if(-1!=a.indexOf("_icon")){var r=scheduler._quick_info_box_id;scheduler._click.buttons[a.split(" ")[1].replace("icon_","")](r);
+}else scheduler._qi_button_click(e.parentNode)}},scheduler._get_event_counter_part=function(e){for(var t=scheduler.getRenderedEvent(e),a=0,r=0,i=t;i&&i!=scheduler._obj;)a+=i.offsetLeft,r+=i.offsetTop-i.scrollTop,i=i.offsetParent;if(i){var n=a+t.offsetWidth/2>scheduler._x/2?1:0,s=r+t.offsetHeight/2>scheduler._y/2?1:0;return{left:a,top:r,dx:n,dy:s,width:t.offsetWidth,height:t.offsetHeight}}return 0},scheduler._fill_quick_data=function(e){var t=scheduler.getEvent(e),a=scheduler._quick_info_box;scheduler._quick_info_box_id=e;
+var r={content:scheduler.templates.quick_info_title(t.start_date,t.end_date,t),date:scheduler.templates.quick_info_date(t.start_date,t.end_date,t)},i=a.firstChild.firstChild;i.innerHTML=r.content;var n=i.nextSibling;n.innerHTML=r.date,scheduler._waiAria.quickInfoHeader(a,[r.content,r.date].join(" "));var s=a.firstChild.nextSibling;s.innerHTML=scheduler.templates.quick_info_content(t.start_date,t.end_date,t)};
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_quick_info.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_readonly.js b/codebase/ext/dhtmlxscheduler_readonly.js
index 1f198dd..59542f6 100644
--- a/codebase/ext/dhtmlxscheduler_readonly.js
+++ b/codebase/ext/dhtmlxscheduler_readonly.js
@@ -1,16 +1,15 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.attachEvent("onTemplatesReady",function(){function e(e,t,a,r){for(var n=t.getElementsByTagName(e),i=a.getElementsByTagName(e),l=i.length-1;l>=0;l--){var a=i[l];if(r){var d=document.createElement("SPAN");d.className="dhx_text_disabled",d.innerHTML=r(n[l]),a.parentNode.insertBefore(d,a),a.parentNode.removeChild(a)}else a.disabled=!0,t.checked&&(a.checked=!0)}}var t=scheduler.config.lightbox.sections.slice(),a=scheduler.config.buttons_left.slice(),r=scheduler.config.buttons_right.slice();scheduler.attachEvent("onBeforeLightbox",function(e){
-if(this.config.readonly_form||this.getEvent(e).readonly){this.config.readonly_active=!0;for(var n=0;n<this.config.lightbox.sections.length;n++)this.config.lightbox.sections[n].focus=!1}else this.config.readonly_active=!1,scheduler.config.lightbox.sections=t.slice(),scheduler.config.buttons_left=a.slice(),scheduler.config.buttons_right=r.slice();var i=this.config.lightbox.sections;if(this.config.readonly_active){for(var n=0;n<i.length;n++)if("recurring"==i[n].type){this.config.readonly_active&&i.splice(n,1);
-
-break}for(var l=["dhx_delete_btn","dhx_save_btn"],d=[scheduler.config.buttons_left,scheduler.config.buttons_right],n=0;n<l.length;n++)for(var s=l[n],o=0;o<d.length;o++){for(var _=d[o],c=-1,u=0;u<_.length;u++)if(_[u]==s){c=u;break}-1!=c&&_.splice(c,1)}}return this.resetLightbox(),!0});var n=scheduler._fill_lightbox;scheduler._fill_lightbox=function(){var t=this.getLightbox();this.config.readonly_active&&(t.style.visibility="hidden",t.style.display="block");var a=n.apply(this,arguments);if(this.config.readonly_active&&(t.style.visibility="",
-t.style.display="none"),this.config.readonly_active){var r=this.getLightbox(),l=this._lightbox_r=r.cloneNode(!0);l.id=scheduler.uid(),e("textarea",r,l,function(e){return e.value}),e("input",r,l,!1),e("select",r,l,function(e){return e.options.length?e.options[Math.max(e.selectedIndex||0,0)].text:""}),r.parentNode.insertBefore(l,r),i.call(this,l),scheduler._lightbox&&scheduler._lightbox.parentNode.removeChild(scheduler._lightbox),this._lightbox=l,scheduler.config.drag_lightbox&&(l.firstChild.onmousedown=scheduler._ready_to_dnd),
-this.setLightboxSize(),l.onclick=function(e){var t=e?e.target:event.srcElement;if(t.className||(t=t.previousSibling),t&&t.className)switch(t.className){case"dhx_cancel_btn":scheduler.callEvent("onEventCancel",[scheduler._lightbox_id]),scheduler._edit_stop_event(scheduler.getEvent(scheduler._lightbox_id),!1),scheduler.hide_lightbox()}}}return a};var i=scheduler.showCover;scheduler.showCover=function(){this.config.readonly_active||i.apply(this,arguments)};var l=scheduler.hide_lightbox;scheduler.hide_lightbox=function(){
-return this._lightbox_r&&(this._lightbox_r.parentNode.removeChild(this._lightbox_r),this._lightbox_r=this._lightbox=null),l.apply(this,arguments)}});
+scheduler.attachEvent("onTemplatesReady",function(){function e(e,t,a,r){for(var i=t.getElementsByTagName(e),n=a.getElementsByTagName(e),s=n.length-1;s>=0;s--){var a=n[s];if(r){var d=document.createElement("SPAN");d.className="dhx_text_disabled",d.innerHTML=r(i[s]),a.parentNode.insertBefore(d,a),a.parentNode.removeChild(a)}else a.disabled=!0,t.checked&&(a.checked=!0)}}var t=scheduler.config.lightbox.sections.slice(),a=scheduler.config.buttons_left.slice(),r=scheduler.config.buttons_right.slice();scheduler.attachEvent("onBeforeLightbox",function(e){
+if(this.config.readonly_form||this.getEvent(e).readonly){this.config.readonly_active=!0;for(var i=0;i<this.config.lightbox.sections.length;i++)this.config.lightbox.sections[i].focus=!1}else this.config.readonly_active=!1,scheduler.config.lightbox.sections=t.slice(),scheduler.config.buttons_left=a.slice(),scheduler.config.buttons_right=r.slice();var n=this.config.lightbox.sections;if(this.config.readonly_active){for(var i=0;i<n.length;i++)if("recurring"==n[i].type){this.config.readonly_active&&n.splice(i,1);
+break}for(var s=["dhx_delete_btn","dhx_save_btn"],d=[scheduler.config.buttons_left,scheduler.config.buttons_right],i=0;i<s.length;i++)for(var l=s[i],o=0;o<d.length;o++){for(var c=d[o],_=-1,h=0;h<c.length;h++)if(c[h]==l){_=h;break}-1!=_&&c.splice(_,1)}}return this.resetLightbox(),!0});var i=scheduler._fill_lightbox;scheduler._fill_lightbox=function(){var t=this.getLightbox();this.config.readonly_active&&(t.style.visibility="hidden",t.style.display="block");var a=i.apply(this,arguments);if(this.config.readonly_active&&(t.style.visibility="",
+t.style.display="none"),this.config.readonly_active){var r=this.getLightbox(),s=this._lightbox_r=r.cloneNode(!0);s.id=scheduler.uid(),e("textarea",r,s,function(e){return e.value}),e("input",r,s,!1),e("select",r,s,function(e){return e.options.length?e.options[Math.max(e.selectedIndex||0,0)].text:""}),r.parentNode.insertBefore(s,r),n.call(this,s),scheduler._lightbox&&scheduler._lightbox.parentNode.removeChild(scheduler._lightbox),this._lightbox=s,scheduler.config.drag_lightbox&&(s.firstChild.onmousedown=scheduler._ready_to_dnd),
+this.setLightboxSize(),s.onclick=function(e){var t=e?e.target:event.srcElement;if(scheduler._getClassName(t)||(t=t.previousSibling),t&&t.className)switch(scheduler._getClassName(t)){case"dhx_cancel_btn":scheduler.callEvent("onEventCancel",[scheduler._lightbox_id]),scheduler._edit_stop_event(scheduler.getEvent(scheduler._lightbox_id),!1),scheduler.hide_lightbox()}},s.onkeydown=function(e){var t=e||window.event,a=e.target||e.srcElement,r=a.querySelector("[dhx_button]");switch(r||(r=a.parentNode.querySelector(".dhx_custom_button, .dhx_readonly")),
+(e||t).keyCode){case 32:if((e||t).shiftKey)return;r&&r.click&&r.click();break;case scheduler.keys.edit_cancel:scheduler.cancel_lightbox()}}}return a};var n=scheduler.showCover;scheduler.showCover=function(){this.config.readonly_active||n.apply(this,arguments)};var s=scheduler.hide_lightbox;scheduler.hide_lightbox=function(){return this._lightbox_r&&(this._lightbox_r.parentNode.removeChild(this._lightbox_r),this._lightbox_r=this._lightbox=null),s.apply(this,arguments)}});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_readonly.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_recurring.js b/codebase/ext/dhtmlxscheduler_recurring.js
index 432b9d7..8cc2107 100644
--- a/codebase/ext/dhtmlxscheduler_recurring.js
+++ b/codebase/ext/dhtmlxscheduler_recurring.js
@@ -1,59 +1,44 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
scheduler.config.occurrence_timestamp_in_utc=!1,scheduler.config.recurring_workdays=[1,2,3,4,5],scheduler.form_blocks.recurring={_get_node:function(e){return"string"==typeof e&&(e=document.getElementById(e)),"none"==e.style.display&&(e.style.display=""),e},_outer_html:function(e){function t(e){var t,a=document.createElement("div");return a.appendChild(e.cloneNode(!0)),t=a.innerHTML,a=null,t}return e.outerHTML||t(e)},render:function(e){if(e.form){var t=scheduler.form_blocks.recurring,a=t._get_node(e.form),r=t._outer_html(a);
-
-return a.style.display="none",r}return scheduler.__recurring_template},_ds:{},_get_form_node:function(e,t,a){var r=e[t];if(!r)return null;if(r.nodeName)return r;if(r.length)for(var n=0;n<r.length;n++)if(r[n].value==a)return r[n]},_get_node_value:function(e,t,a){var r=e[t];if(!r)return"";if(r.length){if(a){for(var n=[],i=0;i<r.length;i++)r[i].checked&&n.push(r[i].value);return n}for(var i=0;i<r.length;i++)if(r[i].checked)return r[i].value}return r.value?a?[r.value]:r.value:void 0},_set_node_value:function(e,t,a){
-var r=e[t];if(r)if(r.name==t)r.value=a;else if(r.length)for(var n="object"==typeof a,i=0;i<r.length;i++)(n||r[i].value==a)&&(r[i].checked=n?!!a[r[i].value]:!!a)},_init_set_value:function(e,t,a){function r(e){for(var t=0;t<e.length;t++){var a=e[t];if(a.name)if(m[a.name])if(m[a.name].nodeType){var r=m[a.name];m[a.name]=[r,a]}else m[a.name].push(a);else m[a.name]=a}}function n(){f("dhx_repeat_day").style.display="none",f("dhx_repeat_week").style.display="none",f("dhx_repeat_month").style.display="none",
-f("dhx_repeat_year").style.display="none",f("dhx_repeat_"+this.value).style.display="block",scheduler.setLightboxSize()}function i(e){var t=[_(m,"repeat")];for(b[t[0]](t,e);t.length<5;)t.push("");var a="",r=l(m);if("no"==r)e.end=new Date(9999,1,1),a="no";else if("date_of_end"==r)e.end=h(_(m,"date_of_end"));else{scheduler.transpose_type(t.join("_")),a=Math.max(1,_(m,"occurences_count"));var n=0;e.end=scheduler.date.add(new Date(e.start),a+n,t.join("_"))}return t.join("_")+"#"+a}function l(e){var t=e.end;
-
-if(t.length){for(var a=0;a<t.length;a++)if(t[a].checked)return t[a].value&&"on"!=t[a].value?t[a].value:a?2==a?"date_of_end":"occurences_count":"no"}else if(t.value)return t.value;return"no"}function d(e,t){var a=e.end;if(a.length){var r=!!a[0].value&&"on"!=a[0].value;if(r)for(var n=0;n<a.length;n++)a[n].value==t&&(a[n].checked=!0);else{var i=0;switch(t){case"no":i=0;break;case"date_of_end":i=2;break;default:i=1}a[i].checked=!0}}else a.value=t}function s(e,t){var a=scheduler.form_blocks.recurring._set_node_value,r=e.split("#");
-
-switch(e=r[0].split("_"),y[e[0]](e,t),r[1]){case"no":d(m,"no");break;case"":d(m,"date_of_end");var n=t.end;scheduler.config.include_end_by&&(n=scheduler.date.add(n,-1,"day")),a(m,"date_of_end",p(n));break;default:d(m,"occurences_count"),a(m,"occurences_count",r[1])}a(m,"repeat",e[0]);var i=scheduler.form_blocks.recurring._get_form_node(m,"repeat",e[0]);"SELECT"==i.nodeName&&i.onchange?i.onchange():i.onclick&&i.onclick()}var o=scheduler.form_blocks.recurring,_=o._get_node_value,c=o._set_node_value;
-
-scheduler.form_blocks.recurring._ds={start:a.start_date,end:a._end_date};var u=scheduler.date.str_to_date(scheduler.config.repeat_date),h=function(e){var t=u(e);return scheduler.config.include_end_by&&(t=scheduler.date.add(t,1,"day")),t},p=scheduler.date.date_to_str(scheduler.config.repeat_date),v=e.getElementsByTagName("FORM")[0],m={};if(r(v.getElementsByTagName("INPUT")),r(v.getElementsByTagName("SELECT")),!scheduler.config.repeat_date_of_end){var g=scheduler.date.date_to_str(scheduler.config.repeat_date);
-
-scheduler.config.repeat_date_of_end=g(scheduler.date.add(scheduler._currentDate(),30,"day"))}c(m,"date_of_end",scheduler.config.repeat_date_of_end);var f=function(e){return document.getElementById(e)||{style:{}}};scheduler.form_blocks.recurring._get_repeat_code=i;var b={month:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value;"d"==a(m,"month_type")?(e.push(Math.max(1,a(m,"month_count"))),t.start.setDate(a(m,"month_day"))):(e.push(Math.max(1,a(m,"month_count2"))),e.push(a(m,"month_day2")),
-e.push(Math.max(1,a(m,"month_week2"))),scheduler.config.repeat_precise||t.start.setDate(1)),t._start=!0},week:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value;e.push(Math.max(1,a(m,"week_count"))),e.push(""),e.push("");for(var r=[],n=a(m,"week_day",!0),i=t.start.getDay(),l=!1,d=0;d<n.length;d++)r.push(n[d]),l=l||n[d]==i;r.length||(r.push(i),l=!0),r.sort(),scheduler.config.repeat_precise?l||(scheduler.transpose_day_week(t.start,r,1,7),t._start=!0):(t.start=scheduler.date.week_start(t.start),
-t._start=!0),e.push(r.join(","))},day:function(e){var t=scheduler.form_blocks.recurring._get_node_value;"d"==t(m,"day_type")?e.push(Math.max(1,t(m,"day_count"))):(e.push("week"),e.push(1),e.push(""),e.push(""),e.push(scheduler.config.recurring_workdays.join(",")),e.splice(0,1))},year:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value;"d"==a(m,"year_type")?(e.push("1"),t.start.setMonth(0),t.start.setDate(a(m,"year_day")),t.start.setMonth(a(m,"year_month"))):(e.push("1"),e.push(a(m,"year_day2")),
-e.push(a(m,"year_week2")),t.start.setDate(1),t.start.setMonth(a(m,"year_month2"))),t._start=!0}},y={week:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;a(m,"week_count",e[1]);for(var r=e[4].split(","),n={},i=0;i<r.length;i++)n[r[i]]=!0;a(m,"week_day",n)},month:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;""===e[2]?(a(m,"month_type","d"),a(m,"month_count",e[1]),a(m,"month_day",t.start.getDate())):(a(m,"month_type","w"),a(m,"month_count2",e[1]),a(m,"month_week2",e[3]),
-a(m,"month_day2",e[2]))},day:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;a(m,"day_type","d"),a(m,"day_count",e[1])},year:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;""===e[2]?(a(m,"year_type","d"),a(m,"year_day",t.start.getDate()),a(m,"year_month",t.start.getMonth())):(a(m,"year_type","w"),a(m,"year_week2",e[3]),a(m,"year_day2",e[2]),a(m,"year_month2",t.start.getMonth()))}};scheduler.form_blocks.recurring._set_repeat_code=s;for(var x=0;x<v.elements.length;x++){
-var k=v.elements[x];switch(k.name){case"repeat":"SELECT"==k.nodeName?k.onchange=n:k.onclick=n}}scheduler._lightbox._rec_init_done=!0},set_value:function(e,t,a){var r=scheduler.form_blocks.recurring;scheduler._lightbox._rec_init_done||r._init_set_value(e,t,a),e.open=!a.rec_type,this._is_modified_occurence(a)?e.blocked=!0:e.blocked=!1;var n=r._ds;n.start=a.start_date,n.end=a._end_date,r.button_click(0,e.previousSibling.firstChild.firstChild,e,e),t&&r._set_repeat_code(t,n)},get_value:function(e,t){if(e.open){
-var a=scheduler.form_blocks.recurring._ds,r={};this.formSection("time").getValue(r),a.start=r.start_date,t.rec_type=scheduler.form_blocks.recurring._get_repeat_code(a),a._start?(t.start_date=new Date(a.start),t._start_date=new Date(a.start),a._start=!1):t._start_date=null,t._end_date=a.end,t.rec_pattern=t.rec_type.split("#")[0]}else t.rec_type=t.rec_pattern="",t._end_date=t.end_date;return t.rec_type},_get_button:function(){var e=scheduler.formSection("recurring").header;return e.firstChild.firstChild;
-
-},_get_form:function(){return scheduler.formSection("recurring").node},open:function(){var e=scheduler.form_blocks.recurring,t=e._get_form();t.open||e._toggle_block()},close:function(){var e=scheduler.form_blocks.recurring,t=e._get_form();t.open&&e._toggle_block()},_toggle_block:function(){var e=scheduler.form_blocks.recurring,t=e._get_form(),a=e._get_button();t.open||t.blocked?(t.style.height="0px",a&&(a.style.backgroundPosition="-5px 20px",a.nextSibling.innerHTML=scheduler.locale.labels.button_recurring)):(t.style.height="auto",
-a&&(a.style.backgroundPosition="-5px 0px",a.nextSibling.innerHTML=scheduler.locale.labels.button_recurring_open)),t.open=!t.open,scheduler.setLightboxSize()},focus:function(e){},button_click:function(e,t,a,r){scheduler.form_blocks.recurring._toggle_block()}},scheduler._rec_markers={},scheduler._rec_markers_pull={},scheduler._add_rec_marker=function(e,t){e._pid_time=t,this._rec_markers[e.id]=e,this._rec_markers_pull[e.event_pid]||(this._rec_markers_pull[e.event_pid]={}),this._rec_markers_pull[e.event_pid][t]=e;
-
-},scheduler._get_rec_marker=function(e,t){var a=this._rec_markers_pull[t];return a?a[e]:null},scheduler._get_rec_markers=function(e){return this._rec_markers_pull[e]||[]},scheduler._rec_temp=[],function(){var e=scheduler.addEvent;scheduler.addEvent=function(t,a,r,n,i){var l=e.apply(this,arguments);if(l){var d=scheduler.getEvent(l);this._is_modified_occurence(d)&&scheduler._add_rec_marker(d,1e3*d.event_length),d.rec_type&&(d.rec_pattern=d.rec_type.split("#")[0])}return l}}(),scheduler.attachEvent("onEventIdChange",function(e,t){
-if(!this._ignore_call){this._ignore_call=!0,scheduler._rec_markers[e]&&(scheduler._rec_markers[t]=scheduler._rec_markers[e],delete scheduler._rec_markers[e]);for(var a=0;a<this._rec_temp.length;a++){var r=this._rec_temp[a];r.event_pid==e&&(r.event_pid=t,this.changeEventId(r.id,t+"#"+r.id.split("#")[1]))}delete this._ignore_call}}),scheduler.attachEvent("onConfirmedBeforeEventDelete",function(e){var t=this.getEvent(e);if(this._is_virtual_event(e)||this._is_modified_occurence(t)&&t.rec_type&&"none"!=t.rec_type){
-e=e.split("#");var a=this.uid(),r=e[1]?e[1]:t._pid_time/1e3,n=this._copy_event(t);n.id=a,n.event_pid=t.event_pid||e[0];var i=r;n.event_length=i,n.rec_type=n.rec_pattern="none",this.addEvent(n),this._add_rec_marker(n,1e3*i)}else{t.rec_type&&this._lightbox_id&&this._roll_back_dates(t);var l=this._get_rec_markers(e);for(var d in l)l.hasOwnProperty(d)&&(e=l[d].id,this.getEvent(e)&&this.deleteEvent(e,!0))}return!0}),scheduler.attachEvent("onEventDeleted",function(e,t){!this._is_virtual_event(e)&&this._is_modified_occurence(t)&&(scheduler._events[e]||(t.rec_type=t.rec_pattern="none",
-this.setEvent(e,t)))}),scheduler.attachEvent("onEventChanged",function(e){if(this._loading)return!0;var t=this.getEvent(e);if(this._is_virtual_event(e)){var e=e.split("#"),a=this.uid();this._not_render=!0;var r=this._copy_event(t);r.id=a,r.event_pid=e[0];var n=e[1];r.event_length=n,r.rec_type=r.rec_pattern="",this._add_rec_marker(r,1e3*n),this.addEvent(r),this._not_render=!1}else{t.rec_type&&this._lightbox_id&&this._roll_back_dates(t);var i=this._get_rec_markers(e);for(var l in i)i.hasOwnProperty(l)&&(delete this._rec_markers[i[l].id],
-this.deleteEvent(i[l].id,!0));delete this._rec_markers_pull[e];for(var d=!1,s=0;s<this._rendered.length;s++)this._rendered[s].getAttribute("event_id")==e&&(d=!0);d||(this._select_id=null)}return!0}),scheduler.attachEvent("onEventAdded",function(e){if(!this._loading){var t=this.getEvent(e);t.rec_type&&!t.event_length&&this._roll_back_dates(t)}return!0}),scheduler.attachEvent("onEventSave",function(e,t,a){var r=this.getEvent(e);return r.rec_type||!t.rec_type||this._is_virtual_event(e)||(this._select_id=null),
+return a.style.display="none",r}return scheduler.__recurring_template},_ds:{},_get_form_node:function(e,t,a){var r=e[t];if(!r)return null;if(r.nodeName)return r;if(r.length)for(var n=0;n<r.length;n++)if(r[n].value==a)return r[n]},_get_node_value:function(e,t,a){var r=e[t];if(!r)return"";if(r.length){if(a){for(var n=[],i=0;i<r.length;i++)r[i].checked&&n.push(r[i].value);return n}for(var i=0;i<r.length;i++)if(r[i].checked)return r[i].value}return r.value?a?[r.value]:r.value:void 0},_get_node_numeric_value:function(e,t){
+var a=scheduler.form_blocks.recurring._get_node_value(e,t);return 1*a||0},_set_node_value:function(e,t,a){var r=e[t];if(r)if(r.name==t)r.value=a;else if(r.length)for(var n="object"==typeof a,i=0;i<r.length;i++)(n||r[i].value==a)&&(r[i].checked=n?!!a[r[i].value]:!!a)},_init_set_value:function(e,t,a){function r(e){for(var t=0;t<e.length;t++){var a=e[t];if(a.name)if(g[a.name])if(g[a.name].nodeType){var r=g[a.name];g[a.name]=[r,a]}else g[a.name].push(a);else g[a.name]=a}}function n(){m("dhx_repeat_day").style.display="none",
+m("dhx_repeat_week").style.display="none",m("dhx_repeat_month").style.display="none",m("dhx_repeat_year").style.display="none",m("dhx_repeat_"+this.value).style.display="block",scheduler.setLightboxSize()}function i(e){var t=[c(g,"repeat")];for(y[t[0]](t,e);t.length<5;)t.push("");var a="",r=s(g);if("no"==r)e.end=new Date(9999,1,1),a="no";else if("date_of_end"==r)e.end=u(c(g,"date_of_end"));else{scheduler.transpose_type(t.join("_")),a=Math.max(1,c(g,"occurences_count"));var n=0;e.end=scheduler.date.add(new Date(e.start),a+n,t.join("_"));
+}return t.join("_")+"#"+a}function s(e){var t=e.end;if(t.length){for(var a=0;a<t.length;a++)if(t[a].checked)return t[a].value&&"on"!=t[a].value?t[a].value:a?2==a?"date_of_end":"occurences_count":"no"}else if(t.value)return t.value;return"no"}function d(e,t){var a=e.end;if(a.length){var r=!!a[0].value&&"on"!=a[0].value;if(r)for(var n=0;n<a.length;n++)a[n].value==t&&(a[n].checked=!0);else{var i=0;switch(t){case"no":i=0;break;case"date_of_end":i=2;break;default:i=1}a[i].checked=!0}}else a.value=t}function l(e,t){
+var a=scheduler.form_blocks.recurring._set_node_value,r=e.split("#");switch(e=r[0].split("_"),b[e[0]](e,t),r[1]){case"no":d(g,"no");break;case"":d(g,"date_of_end");var n=t.end;scheduler.config.include_end_by&&(n=scheduler.date.add(n,-1,"day")),a(g,"date_of_end",v(n));break;default:d(g,"occurences_count"),a(g,"occurences_count",r[1])}a(g,"repeat",e[0]);var i=scheduler.form_blocks.recurring._get_form_node(g,"repeat",e[0]);"SELECT"==i.nodeName&&i.onchange?i.onchange():i.onclick&&i.onclick()}var o=scheduler.form_blocks.recurring,c=o._get_node_value,_=o._set_node_value;
+scheduler.form_blocks.recurring._ds={start:a.start_date,end:a._end_date};var h=scheduler.date.str_to_date(scheduler.config.repeat_date),u=function(e){var t=h(e);return scheduler.config.include_end_by&&(t=scheduler.date.add(t,1,"day")),t},v=scheduler.date.date_to_str(scheduler.config.repeat_date),f=e.getElementsByTagName("FORM")[0],g={};if(r(f.getElementsByTagName("INPUT")),r(f.getElementsByTagName("SELECT")),!scheduler.config.repeat_date_of_end){var p=scheduler.date.date_to_str(scheduler.config.repeat_date);
+scheduler.config.repeat_date_of_end=p(scheduler.date.add(scheduler._currentDate(),30,"day"))}_(g,"date_of_end",scheduler.config.repeat_date_of_end);var m=function(e){return document.getElementById(e)||{style:{}}};scheduler.form_blocks.recurring._get_repeat_code=i;var y={month:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value,r=scheduler.form_blocks.recurring._get_node_numeric_value;"d"==a(g,"month_type")?(e.push(Math.max(1,r(g,"month_count"))),t.start.setDate(a(g,"month_day"))):(e.push(Math.max(1,r(g,"month_count2"))),
+e.push(a(g,"month_day2")),e.push(Math.max(1,r(g,"month_week2"))),scheduler.config.repeat_precise||t.start.setDate(1)),t._start=!0},week:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value,r=scheduler.form_blocks.recurring._get_node_numeric_value;e.push(Math.max(1,r(g,"week_count"))),e.push(""),e.push("");for(var n=[],i=a(g,"week_day",!0),s=t.start.getDay(),d=!1,l=0;l<i.length;l++)n.push(i[l]),d=d||i[l]==s;n.length||(n.push(s),d=!0),n.sort(),scheduler.config.repeat_precise?d||(scheduler.transpose_day_week(t.start,n,1,7),
+t._start=!0):(t.start=scheduler.date.week_start(t.start),t._start=!0),e.push(n.join(","))},day:function(e){var t=scheduler.form_blocks.recurring._get_node_value,a=scheduler.form_blocks.recurring._get_node_numeric_value;"d"==t(g,"day_type")?e.push(Math.max(1,a(g,"day_count"))):(e.push("week"),e.push(1),e.push(""),e.push(""),e.push(scheduler.config.recurring_workdays.join(",")),e.splice(0,1))},year:function(e,t){var a=scheduler.form_blocks.recurring._get_node_value;"d"==a(g,"year_type")?(e.push("1"),
+t.start.setMonth(0),t.start.setDate(a(g,"year_day")),t.start.setMonth(a(g,"year_month"))):(e.push("1"),e.push(a(g,"year_day2")),e.push(a(g,"year_week2")),t.start.setDate(1),t.start.setMonth(a(g,"year_month2"))),t._start=!0}},b={week:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;a(g,"week_count",e[1]);for(var r=e[4].split(","),n={},i=0;i<r.length;i++)n[r[i]]=!0;a(g,"week_day",n)},month:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;""===e[2]?(a(g,"month_type","d"),
+a(g,"month_count",e[1]),a(g,"month_day",t.start.getDate())):(a(g,"month_type","w"),a(g,"month_count2",e[1]),a(g,"month_week2",e[3]),a(g,"month_day2",e[2]))},day:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;a(g,"day_type","d"),a(g,"day_count",e[1])},year:function(e,t){var a=scheduler.form_blocks.recurring._set_node_value;""===e[2]?(a(g,"year_type","d"),a(g,"year_day",t.start.getDate()),a(g,"year_month",t.start.getMonth())):(a(g,"year_type","w"),a(g,"year_week2",e[3]),a(g,"year_day2",e[2]),
+a(g,"year_month2",t.start.getMonth()))}};scheduler.form_blocks.recurring._set_repeat_code=l;for(var x=0;x<f.elements.length;x++){var w=f.elements[x];switch(w.name){case"repeat":"SELECT"==w.nodeName?w.onchange=n:w.onclick=n}}scheduler._lightbox._rec_init_done=!0},set_value:function(e,t,a){var r=scheduler.form_blocks.recurring;scheduler._lightbox._rec_init_done||r._init_set_value(e,t,a),e.open=!a.rec_type,this._is_modified_occurence(a)?e.blocked=!0:e.blocked=!1;var n=r._ds;n.start=a.start_date,n.end=a._end_date,
+r.button_click(0,e.previousSibling.firstChild.firstChild,e,e),t&&r._set_repeat_code(t,n)},get_value:function(e,t){if(e.open){var a=scheduler.form_blocks.recurring._ds,r={};this.formSection("time").getValue(r),a.start=r.start_date,t.rec_type=scheduler.form_blocks.recurring._get_repeat_code(a),a._start?(t.start_date=new Date(a.start),t._start_date=new Date(a.start),a._start=!1):t._start_date=null,t._end_date=a.end,t.rec_pattern=t.rec_type.split("#")[0]}else t.rec_type=t.rec_pattern="",t._end_date=t.end_date;
+return t.rec_type},_get_button:function(){var e=scheduler.formSection("recurring").header;return e.firstChild.firstChild},_get_form:function(){return scheduler.formSection("recurring").node},open:function(){var e=scheduler.form_blocks.recurring,t=e._get_form();t.open||e._toggle_block()},close:function(){var e=scheduler.form_blocks.recurring,t=e._get_form();t.open&&e._toggle_block()},_toggle_block:function(){var e=scheduler.form_blocks.recurring,t=e._get_form(),a=e._get_button();t.open||t.blocked?(t.style.height="0px",
+a&&(a.style.backgroundPosition="-5px 20px",a.nextSibling.innerHTML=scheduler.locale.labels.button_recurring)):(t.style.height="auto",a&&(a.style.backgroundPosition="-5px 0px",a.nextSibling.innerHTML=scheduler.locale.labels.button_recurring_open)),t.open=!t.open,scheduler.setLightboxSize()},focus:function(e){},button_click:function(e,t,a,r){scheduler.form_blocks.recurring._toggle_block()}},scheduler._rec_markers={},scheduler._rec_markers_pull={},scheduler._add_rec_marker=function(e,t){e._pid_time=t,
+this._rec_markers[e.id]=e,this._rec_markers_pull[e.event_pid]||(this._rec_markers_pull[e.event_pid]={}),this._rec_markers_pull[e.event_pid][t]=e},scheduler._get_rec_marker=function(e,t){var a=this._rec_markers_pull[t];return a?a[e]:null},scheduler._get_rec_markers=function(e){return this._rec_markers_pull[e]||[]},scheduler._rec_temp=[],function(){var e=scheduler.addEvent;scheduler.addEvent=function(t,a,r,n,i){var s=e.apply(this,arguments);if(s){var d=scheduler.getEvent(s);this._is_modified_occurence(d)&&scheduler._add_rec_marker(d,1e3*d.event_length),
+d.rec_type&&(d.rec_pattern=d.rec_type.split("#")[0])}return s}}(),scheduler.attachEvent("onEventIdChange",function(e,t){if(!this._ignore_call){this._ignore_call=!0,scheduler._rec_markers[e]&&(scheduler._rec_markers[t]=scheduler._rec_markers[e],delete scheduler._rec_markers[e]),scheduler._rec_markers_pull[e]&&(scheduler._rec_markers_pull[t]=scheduler._rec_markers_pull[e],delete scheduler._rec_markers_pull[e]);for(var a=0;a<this._rec_temp.length;a++){var r=this._rec_temp[a];r.event_pid==e&&(r.event_pid=t,
+this.changeEventId(r.id,t+"#"+r.id.split("#")[1]))}for(var a in this._rec_markers){var r=this._rec_markers[a];r.event_pid==e&&(r.event_pid=t,r._pid_changed=!0)}var n=scheduler._rec_markers[t];n&&n._pid_changed&&(delete n._pid_changed,setTimeout(function(){scheduler.callEvent("onEventChanged",[t,scheduler.getEvent(t)])},1)),delete this._ignore_call}}),scheduler.attachEvent("onConfirmedBeforeEventDelete",function(e){var t=this.getEvent(e);if(this._is_virtual_event(e)||this._is_modified_occurence(t)&&t.rec_type&&"none"!=t.rec_type){
+e=e.split("#");var a=this.uid(),r=e[1]?e[1]:t._pid_time/1e3,n=this._copy_event(t);n.id=a,n.event_pid=t.event_pid||e[0];var i=r;n.event_length=i,n.rec_type=n.rec_pattern="none",this.addEvent(n),this._add_rec_marker(n,1e3*i)}else{t.rec_type&&this._lightbox_id&&this._roll_back_dates(t);var s=this._get_rec_markers(e);for(var d in s)s.hasOwnProperty(d)&&(e=s[d].id,this.getEvent(e)&&this.deleteEvent(e,!0))}return!0}),scheduler.attachEvent("onEventDeleted",function(e,t){!this._is_virtual_event(e)&&this._is_modified_occurence(t)&&(scheduler._events[e]||(t.rec_type=t.rec_pattern="none",
+this.setEvent(e,t)))}),scheduler.attachEvent("onEventChanged",function(e){if(this._loading)return!0;var t=this.getEvent(e);if(this._is_virtual_event(e)){var e=e.split("#"),a=this.uid();this._not_render=!0;var r=this._copy_event(t);r.id=a,r.event_pid=e[0];var n=e[1];r.event_length=n,r.rec_type=r.rec_pattern="",this._add_rec_marker(r,1e3*n),this.addEvent(r),this._not_render=!1}else{t.rec_type&&this._lightbox_id&&this._roll_back_dates(t);var i=this._get_rec_markers(e);for(var s in i)i.hasOwnProperty(s)&&(delete this._rec_markers[i[s].id],
+this.deleteEvent(i[s].id,!0));delete this._rec_markers_pull[e];for(var d=!1,l=0;l<this._rendered.length;l++)this._rendered[l].getAttribute("event_id")==e&&(d=!0);d||(this._select_id=null)}return!0}),scheduler.attachEvent("onEventAdded",function(e){if(!this._loading){var t=this.getEvent(e);t.rec_type&&!t.event_length&&this._roll_back_dates(t)}return!0}),scheduler.attachEvent("onEventSave",function(e,t,a){var r=this.getEvent(e);return r.rec_type||!t.rec_type||this._is_virtual_event(e)||(this._select_id=null),
!0}),scheduler.attachEvent("onEventCreated",function(e){var t=this.getEvent(e);return t.rec_type||(t.rec_type=t.rec_pattern=t.event_length=t.event_pid=""),!0}),scheduler.attachEvent("onEventCancel",function(e){var t=this.getEvent(e);t.rec_type&&(this._roll_back_dates(t),this.render_view_data())}),scheduler._roll_back_dates=function(e){e.event_length=(e.end_date.valueOf()-e.start_date.valueOf())/1e3,e.end_date=e._end_date,e._start_date&&(e.start_date.setMonth(0),e.start_date.setDate(e._start_date.getDate()),
e.start_date.setMonth(e._start_date.getMonth()),e.start_date.setFullYear(e._start_date.getFullYear()))},scheduler._is_virtual_event=function(e){return-1!=e.toString().indexOf("#")},scheduler._is_modified_occurence=function(e){return e.event_pid&&"0"!=e.event_pid},scheduler._validId=function(e){return!this._is_virtual_event(e)},scheduler.showLightbox_rec=scheduler.showLightbox,scheduler.showLightbox=function(e){var t=this.locale,a=scheduler.config.lightbox_recurring,r=this.getEvent(e),n=r.event_pid,i=this._is_virtual_event(e);
-
-i&&(n=e.split("#")[0]);var l=function(e){var t=scheduler.getEvent(e);return t._end_date=t.end_date,t.end_date=new Date(t.start_date.valueOf()+1e3*t.event_length),scheduler.showLightbox_rec(e)};if((n||1*n===0)&&r.rec_type)return l(e);if(!n||"0"===n||!t.labels.confirm_recurring||"instance"==a||"series"==a&&!i)return this.showLightbox_rec(e);if("ask"==a){var d=this;dhtmlx.modalbox({text:t.labels.confirm_recurring,title:t.labels.title_confirm_recurring,width:"500px",position:"middle",buttons:[t.labels.button_edit_series,t.labels.button_edit_occurrence,t.labels.icon_cancel],
-callback:function(t){switch(+t){case 0:return l(n);case 1:return d.showLightbox_rec(e);case 2:return}}})}else l(n)},scheduler.get_visible_events_rec=scheduler.get_visible_events,scheduler.get_visible_events=function(e){for(var t=0;t<this._rec_temp.length;t++)delete this._events[this._rec_temp[t].id];this._rec_temp=[];for(var a=this.get_visible_events_rec(e),r=[],t=0;t<a.length;t++)a[t].rec_type?"none"!=a[t].rec_pattern&&this.repeat_date(a[t],r):r.push(a[t]);return r},function(){var e=scheduler.isOneDayEvent;
-
+i&&(n=e.split("#")[0]);var s=function(e){var t=scheduler.getEvent(e);return t._end_date=t.end_date,t.end_date=new Date(t.start_date.valueOf()+1e3*t.event_length),scheduler.showLightbox_rec(e)};if((n||1*n===0)&&r.rec_type)return s(e);if(!n||"0"===n||!t.labels.confirm_recurring||"instance"==a||"series"==a&&!i)return this.showLightbox_rec(e);if("ask"==a){var d=this;dhtmlx.modalbox({text:t.labels.confirm_recurring,title:t.labels.title_confirm_recurring,width:"500px",position:"middle",buttons:[t.labels.button_edit_series,t.labels.button_edit_occurrence,t.labels.icon_cancel],
+callback:function(t){switch(+t){case 0:return s(n);case 1:return d.showLightbox_rec(e);case 2:return}}})}else s(n)},scheduler.get_visible_events_rec=scheduler.get_visible_events,scheduler.get_visible_events=function(e){for(var t=0;t<this._rec_temp.length;t++)delete this._events[this._rec_temp[t].id];this._rec_temp=[];for(var a=this.get_visible_events_rec(e),r=[],t=0;t<a.length;t++)a[t].rec_type?"none"!=a[t].rec_pattern&&this.repeat_date(a[t],r):r.push(a[t]);return r},function(){var e=scheduler.isOneDayEvent;
scheduler.isOneDayEvent=function(t){return t.rec_type?!0:e.call(this,t)};var t=scheduler.updateEvent;scheduler.updateEvent=function(e){var a=scheduler.getEvent(e);a&&a.rec_type&&(a.rec_pattern=(a.rec_type||"").split("#")[0]),a&&a.rec_type&&!this._is_virtual_event(e)?scheduler.update_view():t.call(this,e)}}(),scheduler.transponse_size={day:1,week:7,month:1,year:12},scheduler.date.day_week=function(e,t,a){e.setDate(1),a=7*(a-1);var r=e.getDay(),n=1*t+a-r+1;e.setDate(a>=n?n+7:n)},scheduler.transpose_day_week=function(e,t,a,r,n){
-for(var i=(e.getDay()||(scheduler.config.start_on_monday?7:0))-a,l=0;l<t.length;l++)if(t[l]>i)return e.setDate(e.getDate()+1*t[l]-i-(r?a:n));this.transpose_day_week(e,t,a+r,null,a)},scheduler.transpose_type=function(e){var t="transpose_"+e;if(!this.date[t]){var a=e.split("_"),r=864e5,n="add_"+e,i=this.transponse_size[a[0]]*a[1];if("day"==a[0]||"week"==a[0]){var l=null;if(a[4]&&(l=a[4].split(","),scheduler.config.start_on_monday)){for(var d=0;d<l.length;d++)l[d]=1*l[d]||7;l.sort()}this.date[t]=function(e,t){
-var a=Math.floor((t.valueOf()-e.valueOf())/(r*i));a>0&&e.setDate(e.getDate()+a*i),l&&scheduler.transpose_day_week(e,l,1,i)},this.date[n]=function(e,t){var a=new Date(e.valueOf());if(l)for(var r=0;t>r;r++)scheduler.transpose_day_week(a,l,0,i);else a.setDate(a.getDate()+t*i);return a}}else("month"==a[0]||"year"==a[0])&&(this.date[t]=function(e,t){var r=Math.ceil((12*t.getFullYear()+1*t.getMonth()-(12*e.getFullYear()+1*e.getMonth()))/i);r>=0&&e.setMonth(e.getMonth()+r*i),a[3]&&scheduler.date.day_week(e,a[2],a[3]);
-
-},this.date[n]=function(e,t){var r=new Date(e.valueOf());return r.setMonth(r.getMonth()+t*i),a[3]&&scheduler.date.day_week(r,a[2],a[3]),r})}},scheduler.repeat_date=function(e,t,a,r,n){r=r||this._min_date,n=n||this._max_date;var i=new Date(e.start_date.valueOf());for(!e.rec_pattern&&e.rec_type&&(e.rec_pattern=e.rec_type.split("#")[0]),this.transpose_type(e.rec_pattern),scheduler.date["transpose_"+e.rec_pattern](i,r);i<e.start_date||scheduler._fix_daylight_saving_date(i,r,e,i,new Date(i.valueOf()+1e3*e.event_length)).valueOf()<=r.valueOf()||i.valueOf()+1e3*e.event_length<=r.valueOf();)i=this.date.add(i,1,e.rec_pattern);
-
-for(;n>i&&i<e.end_date;){var l=scheduler.config.occurrence_timestamp_in_utc?Date.UTC(i.getFullYear(),i.getMonth(),i.getDate(),i.getHours(),i.getMinutes(),i.getSeconds()):i.valueOf(),d=this._get_rec_marker(l,e.id);if(d)a&&t.push(d);else{var s=new Date(i.valueOf()+1e3*e.event_length),o=this._copy_event(e);if(o.text=e.text,o.start_date=i,o.event_pid=e.id,o.id=e.id+"#"+Math.ceil(l/1e3),o.end_date=s,o.end_date=scheduler._fix_daylight_saving_date(o.start_date,o.end_date,e,i,o.end_date),o._timed=this.isOneDayEvent(o),
-!o._timed&&!this._table_view&&!this.config.multi_day)return;t.push(o),a||(this._events[o.id]=o,this._rec_temp.push(o))}i=this.date.add(i,1,e.rec_pattern)}},scheduler._fix_daylight_saving_date=function(e,t,a,r,n){var i=e.getTimezoneOffset()-t.getTimezoneOffset();return new Date(i?i>0?r.valueOf()+1e3*a.event_length-60*i*1e3:t.valueOf()-60*i*1e3:n.valueOf())},scheduler.getRecDates=function(e,t){var a="object"==typeof e?e:scheduler.getEvent(e),r=0,n=[];t=t||100;var i=new Date(a.start_date.valueOf()),l=new Date(i.valueOf());
-
-if(!a.rec_type)return[{start_date:a.start_date,end_date:a.end_date}];if("none"==a.rec_type)return[];for(this.transpose_type(a.rec_pattern),scheduler.date["transpose_"+a.rec_pattern](i,l);i<a.start_date||i.valueOf()+1e3*a.event_length<=l.valueOf();)i=this.date.add(i,1,a.rec_pattern);for(;i<a.end_date;){var d=this._get_rec_marker(i.valueOf(),a.id),s=!0;if(d)"none"==d.rec_type?s=!1:n.push({start_date:d.start_date,end_date:d.end_date});else{var o=new Date(i),_=new Date(i.valueOf()+1e3*a.event_length);
-
-_=scheduler._fix_daylight_saving_date(o,_,a,i,_),n.push({start_date:o,end_date:_})}if(i=this.date.add(i,1,a.rec_pattern),s&&(r++,r==t))break}return n},scheduler.getEvents=function(e,t){var a=[];for(var r in this._events){var n=this._events[r];if(n&&n.start_date<t&&n.end_date>e)if(n.rec_pattern){if("none"==n.rec_pattern)continue;var i=[];this.repeat_date(n,i,!0,e,t);for(var l=0;l<i.length;l++)!i[l].rec_pattern&&i[l].start_date<t&&i[l].end_date>e&&!this._rec_markers[i[l].id]&&a.push(i[l])}else this._is_virtual_event(n.id)||a.push(n);
-
-}return a},scheduler.config.repeat_date="%m.%d.%Y",scheduler.config.lightbox.sections=[{name:"description",height:130,map_to:"text",type:"textarea",focus:!0},{name:"recurring",type:"recurring",map_to:"rec_type",button:"recurring"},{name:"time",height:72,type:"time",map_to:"auto"}],scheduler._copy_dummy=function(e){var t=new Date(this.start_date),a=new Date(this.end_date);this.start_date=t,this.end_date=a,this.event_length=this.event_pid=this.rec_pattern=this.rec_type=null},scheduler.config.include_end_by=!1,
-scheduler.config.lightbox_recurring="ask",scheduler.attachEvent("onClearAll",function(){scheduler._rec_markers={},scheduler._rec_markers_pull={},scheduler._rec_temp=[]}),scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Daily</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Weekly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Monthly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Yearly</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />day<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Every workday</label> </div> <div style="display:none;" id="dhx_repeat_week"> Repeat every<input class="dhx_repeat_text" type="text" name="week_count" value="1" />week next days:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Monday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Thursday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tuesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Friday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Wednesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Saturday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Sunday</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Repeat</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />day every<input class="dhx_repeat_text" type="text" name="month_count" value="1" />month<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="0">Sunday</select>every<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />month<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />day<select name="year_month"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select>month<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="7">Sunday</select>of<select name="year_month2"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>No end date</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />After</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />occurrences<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />End by</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>';
-
+for(var i=(e.getDay()||(scheduler.config.start_on_monday?7:0))-a,s=0;s<t.length;s++)if(t[s]>i)return e.setDate(e.getDate()+1*t[s]-i-(r?a:n));this.transpose_day_week(e,t,a+r,null,a)},scheduler.transpose_type=function(e){var t="transpose_"+e;if(!this.date[t]){var a=e.split("_"),r=864e5,n="add_"+e,i=this.transponse_size[a[0]]*a[1];if("day"==a[0]||"week"==a[0]){var s=null;if(a[4]&&(s=a[4].split(","),scheduler.config.start_on_monday)){for(var d=0;d<s.length;d++)s[d]=1*s[d]||7;s.sort()}this.date[t]=function(e,t){
+var a=Math.floor((t.valueOf()-e.valueOf())/(r*i));a>0&&e.setDate(e.getDate()+a*i),s&&scheduler.transpose_day_week(e,s,1,i)},this.date[n]=function(e,t){var a=new Date(e.valueOf());if(s)for(var r=0;t>r;r++)scheduler.transpose_day_week(a,s,0,i);else a.setDate(a.getDate()+t*i);return a}}else("month"==a[0]||"year"==a[0])&&(this.date[t]=function(e,t){var r=Math.ceil((12*t.getFullYear()+1*t.getMonth()-(12*e.getFullYear()+1*e.getMonth()))/i);r>=0&&e.setMonth(e.getMonth()+r*i),a[3]&&scheduler.date.day_week(e,a[2],a[3]);
+},this.date[n]=function(e,t){var r=new Date(e.valueOf());return r.setMonth(r.getMonth()+t*i),a[3]&&scheduler.date.day_week(r,a[2],a[3]),r})}},scheduler.repeat_date=function(e,t,a,r,n,i){r=r||this._min_date,n=n||this._max_date;var s=i||-1,d=new Date(e.start_date.valueOf()),l=0;for(!e.rec_pattern&&e.rec_type&&(e.rec_pattern=e.rec_type.split("#")[0]),this.transpose_type(e.rec_pattern),scheduler.date["transpose_"+e.rec_pattern](d,r);d<e.start_date||scheduler._fix_daylight_saving_date(d,r,e,d,new Date(d.valueOf()+1e3*e.event_length)).valueOf()<=r.valueOf()||d.valueOf()+1e3*e.event_length<=r.valueOf();)d=this.date.add(d,1,e.rec_pattern);
+for(;n>d&&d<e.end_date&&(0>s||s>l);){var o=scheduler.config.occurrence_timestamp_in_utc?Date.UTC(d.getFullYear(),d.getMonth(),d.getDate(),d.getHours(),d.getMinutes(),d.getSeconds()):d.valueOf(),c=this._get_rec_marker(o,e.id);if(c)a&&("none"!=c.rec_type&&l++,t.push(c));else{var _=new Date(d.valueOf()+1e3*e.event_length),h=this._copy_event(e);if(h.text=e.text,h.start_date=d,h.event_pid=e.id,h.id=e.id+"#"+Math.ceil(o/1e3),h.end_date=_,h.end_date=scheduler._fix_daylight_saving_date(h.start_date,h.end_date,e,d,h.end_date),
+h._timed=this.isOneDayEvent(h),!h._timed&&!this._table_view&&!this.config.multi_day)return;t.push(h),a||(this._events[h.id]=h,this._rec_temp.push(h)),l++}d=this.date.add(d,1,e.rec_pattern)}},scheduler._fix_daylight_saving_date=function(e,t,a,r,n){var i=e.getTimezoneOffset()-t.getTimezoneOffset();return i?i>0?new Date(r.valueOf()+1e3*a.event_length-60*i*1e3):new Date(t.valueOf()-60*i*1e3):new Date(n.valueOf())},scheduler.getRecDates=function(e,t){var a="object"==typeof e?e:scheduler.getEvent(e),r=[];
+if(t=t||100,!a.rec_type)return[{start_date:a.start_date,end_date:a.end_date}];if("none"==a.rec_type)return[];scheduler.repeat_date(a,r,!0,a.start_date,a.end_date,t);for(var n=[],i=0;i<r.length;i++)"none"!=r[i].rec_type&&n.push({start_date:r[i].start_date,end_date:r[i].end_date});return n},scheduler.getEvents=function(e,t){var a=[];for(var r in this._events){var n=this._events[r];if(n&&n.start_date<t&&n.end_date>e)if(n.rec_pattern){if("none"==n.rec_pattern)continue;var i=[];this.repeat_date(n,i,!0,e,t);
+for(var s=0;s<i.length;s++)!i[s].rec_pattern&&i[s].start_date<t&&i[s].end_date>e&&!this._rec_markers[i[s].id]&&a.push(i[s])}else this._is_virtual_event(n.id)||a.push(n)}return a},scheduler.config.repeat_date="%m.%d.%Y",scheduler.config.lightbox.sections=[{name:"description",height:130,map_to:"text",type:"textarea",focus:!0},{name:"recurring",type:"recurring",map_to:"rec_type",button:"recurring"},{name:"time",height:72,type:"time",map_to:"auto"}],scheduler._copy_dummy=function(e){var t=new Date(this.start_date),a=new Date(this.end_date);
+this.start_date=t,this.end_date=a,this.event_length=this.event_pid=this.rec_pattern=this.rec_type=null},scheduler.config.include_end_by=!1,scheduler.config.lightbox_recurring="ask",scheduler.attachEvent("onClearAll",function(){scheduler._rec_markers={},scheduler._rec_markers_pull={},scheduler._rec_temp=[]}),scheduler.__recurring_template='<div class="dhx_form_repeat"> <form> <div class="dhx_repeat_left"> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="day" />Daily</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="week"/>Weekly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="month" checked />Monthly</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="repeat" value="year" />Yearly</label> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_center"> <div style="display:none;" id="dhx_repeat_day"> <label><input class="dhx_repeat_radio" type="radio" name="day_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="day_count" value="1" />day<br /> <label><input class="dhx_repeat_radio" type="radio" name="day_type" checked value="w"/>Every workday</label> </div> <div style="display:none;" id="dhx_repeat_week"> Repeat every<input class="dhx_repeat_text" type="text" name="week_count" value="1" />week next days:<br /> <table class="dhx_repeat_days"> <tr> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="1" />Monday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="4" />Thursday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="2" />Tuesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="5" />Friday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="3" />Wednesday</label><br /> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="6" />Saturday</label> </td> <td> <label><input class="dhx_repeat_checkbox" type="checkbox" name="week_day" value="0" />Sunday</label><br /><br /> </td> </tr> </table> </div> <div id="dhx_repeat_month"> <label><input class="dhx_repeat_radio" type="radio" name="month_type" value="d"/>Repeat</label><input class="dhx_repeat_text" type="text" name="month_day" value="1" />day every<input class="dhx_repeat_text" type="text" name="month_count" value="1" />month<br /> <label><input class="dhx_repeat_radio" type="radio" name="month_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="month_week2" value="1" /><select name="month_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="0">Sunday</select>every<input class="dhx_repeat_text" type="text" name="month_count2" value="1" />month<br /> </div> <div style="display:none;" id="dhx_repeat_year"> <label><input class="dhx_repeat_radio" type="radio" name="year_type" value="d"/>Every</label><input class="dhx_repeat_text" type="text" name="year_day" value="1" />day<select name="year_month"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select>month<br /> <label><input class="dhx_repeat_radio" type="radio" name="year_type" checked value="w"/>On</label><input class="dhx_repeat_text" type="text" name="year_week2" value="1" /><select name="year_day2"><option value="1" selected >Monday<option value="2">Tuesday<option value="3">Wednesday<option value="4">Thursday<option value="5">Friday<option value="6">Saturday<option value="7">Sunday</select>of<select name="year_month2"><option value="0" selected >January<option value="1">February<option value="2">March<option value="3">April<option value="4">May<option value="5">June<option value="6">July<option value="7">August<option value="8">September<option value="9">October<option value="10">November<option value="11">December</select><br /> </div> </div> <div class="dhx_repeat_divider"></div> <div class="dhx_repeat_right"> <label><input class="dhx_repeat_radio" type="radio" name="end" checked/>No end date</label><br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />After</label><input class="dhx_repeat_text" type="text" name="occurences_count" value="1" />occurrences<br /> <label><input class="dhx_repeat_radio" type="radio" name="end" />End by</label><input class="dhx_repeat_date" type="text" name="date_of_end" value="'+scheduler.config.repeat_date_of_end+'" /><br /> </div> </form> </div> <div style="clear:both"> </div>';
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_recurring.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_serialize.js b/codebase/ext/dhtmlxscheduler_serialize.js
index b12aa96..37b1385 100644
--- a/codebase/ext/dhtmlxscheduler_serialize.js
+++ b/codebase/ext/dhtmlxscheduler_serialize.js
@@ -1,15 +1,13 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
scheduler._get_serializable_data=function(){var e={};for(var t in this._events){var a=this._events[t];-1==a.id.toString().indexOf("#")&&(e[a.id]=a)}return e},scheduler.data_attributes=function(){var e=[],t=scheduler.templates.xml_format,a=this._get_serializable_data();for(var r in a){var n=a[r];for(var i in n)"_"!=i.substr(0,1)&&e.push([i,"start_date"==i||"end_date"==i?t:null]);break}return e},scheduler.toXML=function(e){var t=[],a=this.data_attributes(),r=this._get_serializable_data();for(var n in r){
-var i=r[n];t.push("<event>");for(var l=0;l<a.length;l++)t.push("<"+a[l][0]+"><![CDATA["+(a[l][1]?a[l][1](i[a[l][0]]):i[a[l][0]])+"]]></"+a[l][0]+">");t.push("</event>")}return(e||"")+"<data>"+t.join("\n")+"</data>"},scheduler._serialize_json_value=function(e){return null===e||"boolean"==typeof e?e=""+e:(e||0===e||(e=""),e='"'+e.toString().replace(/\n/g,"").replace(/\\/g,"\\\\").replace(/\"/g,'\\"')+'"'),e},scheduler.toJSON=function(){var e=[],t="",a=this.data_attributes(),r=this._get_serializable_data();
-
-for(var n in r){for(var i=r[n],l=[],d=0;d<a.length;d++)t=a[d][1]?a[d][1](i[a[d][0]]):i[a[d][0]],l.push(' "'+a[d][0]+'": '+this._serialize_json_value(t));e.push("{"+l.join(",")+"}")}return"["+e.join(",\n")+"]"},scheduler.toICal=function(e){var t="BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//dhtmlXScheduler//NONSGML v2.2//EN\nDESCRIPTION:",a="END:VCALENDAR",r=scheduler.date.date_to_str("%Y%m%dT%H%i%s"),n=scheduler.date.date_to_str("%Y%m%d"),i=[],l=this._get_serializable_data();for(var d in l){var s=l[d];
-
-i.push("BEGIN:VEVENT"),i.push(s._timed&&(s.start_date.getHours()||s.start_date.getMinutes())?"DTSTART:"+r(s.start_date):"DTSTART:"+n(s.start_date)),i.push(s._timed&&(s.end_date.getHours()||s.end_date.getMinutes())?"DTEND:"+r(s.end_date):"DTEND:"+n(s.end_date)),i.push("SUMMARY:"+s.text),i.push("END:VEVENT")}return t+(e||"")+"\n"+i.join("\n")+"\n"+a};
+var i=r[n];t.push("<event>");for(var s=0;s<a.length;s++)t.push("<"+a[s][0]+"><![CDATA["+(a[s][1]?a[s][1](i[a[s][0]]):i[a[s][0]])+"]]></"+a[s][0]+">");t.push("</event>")}return(e||"")+"<data>"+t.join("\n")+"</data>"},scheduler._serialize_json_value=function(e){return null===e||"boolean"==typeof e?e=""+e:(e||0===e||(e=""),e='"'+e.toString().replace(/\n/g,"").replace(/\\/g,"\\\\").replace(/\"/g,'\\"')+'"'),e},scheduler.toJSON=function(){var e=[],t="",a=this.data_attributes(),r=this._get_serializable_data();
+for(var n in r){for(var i=r[n],s=[],d=0;d<a.length;d++)t=a[d][1]?a[d][1](i[a[d][0]]):i[a[d][0]],s.push(' "'+a[d][0]+'": '+this._serialize_json_value(t));e.push("{"+s.join(",")+"}")}return"["+e.join(",\n")+"]"},scheduler.toICal=function(e){var t="BEGIN:VCALENDAR\nVERSION:2.0\nPRODID:-//dhtmlXScheduler//NONSGML v2.2//EN\nDESCRIPTION:",a="END:VCALENDAR",r=scheduler.date.date_to_str("%Y%m%dT%H%i%s"),n=scheduler.date.date_to_str("%Y%m%d"),i=[],s=this._get_serializable_data();for(var d in s){var l=s[d];
+i.push("BEGIN:VEVENT"),l._timed&&(l.start_date.getHours()||l.start_date.getMinutes())?i.push("DTSTART:"+r(l.start_date)):i.push("DTSTART:"+n(l.start_date)),l._timed&&(l.end_date.getHours()||l.end_date.getMinutes())?i.push("DTEND:"+r(l.end_date)):i.push("DTEND:"+n(l.end_date)),i.push("SUMMARY:"+l.text),i.push("END:VEVENT")}return t+(e||"")+"\n"+i.join("\n")+"\n"+a};
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_serialize.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_tooltip.js b/codebase/ext/dhtmlxscheduler_tooltip.js
index 45adc3a..3e77344 100644
--- a/codebase/ext/dhtmlxscheduler_tooltip.js
+++ b/codebase/ext/dhtmlxscheduler_tooltip.js
@@ -1,21 +1,16 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-window.dhtmlXTooltip=scheduler.dhtmlXTooltip=window.dhtmlxTooltip={},dhtmlXTooltip.config={className:"dhtmlXTooltip tooltip",timeout_to_display:50,timeout_to_hide:50,delta_x:15,delta_y:-20},dhtmlXTooltip.tooltip=document.createElement("div"),dhtmlXTooltip.tooltip.className=dhtmlXTooltip.config.className,dhtmlXTooltip.show=function(e,t){if(!scheduler.config.touch||scheduler.config.touch_tooltip){var a=dhtmlXTooltip,r=this.tooltip,n=r.style;a.tooltip.className=a.config.className;var i=this.position(e),l=e.target||e.srcElement;
-
-if(!this.isTooltip(l)){var d=i.x+(a.config.delta_x||0),s=i.y-(a.config.delta_y||0);n.visibility="hidden",n.removeAttribute?(n.removeAttribute("right"),n.removeAttribute("bottom")):(n.removeProperty("right"),n.removeProperty("bottom")),n.left="0",n.top="0",this.tooltip.innerHTML=t,document.body.appendChild(this.tooltip);var o=this.tooltip.offsetWidth,_=this.tooltip.offsetHeight;document.body.offsetWidth-d-o<0?(n.removeAttribute?n.removeAttribute("left"):n.removeProperty("left"),n.right=document.body.offsetWidth-d+2*(a.config.delta_x||0)+"px"):0>d?n.left=i.x+Math.abs(a.config.delta_x||0)+"px":n.left=d+"px",
-document.body.offsetHeight-s-_<0?(n.removeAttribute?n.removeAttribute("top"):n.removeProperty("top"),n.bottom=document.body.offsetHeight-s-2*(a.config.delta_y||0)+"px"):0>s?n.top=i.y+Math.abs(a.config.delta_y||0)+"px":n.top=s+"px",n.visibility="visible",this.tooltip.onmouseleave=function(e){e=e||window.event;for(var t=scheduler.dhtmlXTooltip,a=e.relatedTarget;a!=scheduler._obj&&a;)a=a.parentNode;a!=scheduler._obj&&t.delay(t.hide,t,[],t.config.timeout_to_hide)},scheduler.callEvent("onTooltipDisplayed",[this.tooltip,this.tooltip.event_id]);
-
-}}},dhtmlXTooltip._clearTimeout=function(){this.tooltip._timeout_id&&window.clearTimeout(this.tooltip._timeout_id)},dhtmlXTooltip.hide=function(){if(this.tooltip.parentNode){var e=this.tooltip.event_id;this.tooltip.event_id=null,this.tooltip.onmouseleave=null,this.tooltip.parentNode.removeChild(this.tooltip),scheduler.callEvent("onAfterTooltip",[e])}this._clearTimeout()},dhtmlXTooltip.delay=function(e,t,a,r){this._clearTimeout(),this.tooltip._timeout_id=setTimeout(function(){var r=e.apply(t,a);return e=t=a=null,
-r},r||this.config.timeout_to_display)},dhtmlXTooltip.isTooltip=function(e){var t=!1;for("dhtmlXTooltip"==e.className.split(" ")[0];e&&!t;)t=e.className==this.tooltip.className,e=e.parentNode;return t},dhtmlXTooltip.position=function(e){if(e=e||window.event,e.pageX||e.pageY)return{x:e.pageX,y:e.pageY};var t=window._isIE&&"BackCompat"!=document.compatMode?document.documentElement:document.body;return{x:e.clientX+t.scrollLeft-t.clientLeft,y:e.clientY+t.scrollTop-t.clientTop}},scheduler.attachEvent("onMouseMove",function(e,t){
-var a=window.event||t,r=a.target||a.srcElement,n=dhtmlXTooltip,i=n.isTooltip(r),l=n.isTooltipTarget&&n.isTooltipTarget(r);if(e||i||l){var d;if(e||n.tooltip.event_id){var s=scheduler.getEvent(e)||scheduler.getEvent(n.tooltip.event_id);if(!s)return;if(n.tooltip.event_id=s.id,d=scheduler.templates.tooltip_text(s.start_date,s.end_date,s),!d)return n.hide()}l&&(d="");var o;if(_isIE){o={pageX:void 0,pageY:void 0,clientX:void 0,clientY:void 0,target:void 0,srcElement:void 0};for(var _ in o)o[_]=a[_]}if(!scheduler.callEvent("onBeforeTooltip",[e])||!d)return;
-
-n.delay(n.show,n,[o||a,d])}else n.delay(n.hide,n,[],n.config.timeout_to_hide)}),scheduler.attachEvent("onBeforeDrag",function(){return dhtmlXTooltip.hide(),!0}),scheduler.attachEvent("onEventDeleted",function(){return dhtmlXTooltip.hide(),!0}),scheduler.templates.tooltip_date_format=scheduler.date.date_to_str("%Y-%m-%d %H:%i"),scheduler.templates.tooltip_text=function(e,t,a){return"<b>Event:</b> "+a.text+"<br/><b>Start date:</b> "+scheduler.templates.tooltip_date_format(e)+"<br/><b>End date:</b> "+scheduler.templates.tooltip_date_format(t);
-
-};
+window.dhtmlXTooltip=scheduler.dhtmlXTooltip=window.dhtmlxTooltip={},dhtmlXTooltip.config={className:"dhtmlXTooltip tooltip",timeout_to_display:50,timeout_to_hide:50,delta_x:15,delta_y:-20},dhtmlXTooltip.tooltip=document.createElement("div"),dhtmlXTooltip.tooltip.className=dhtmlXTooltip.config.className,scheduler._waiAria.tooltipAttr(dhtmlXTooltip.tooltip),dhtmlXTooltip.show=function(e,t){if(!scheduler.config.touch||scheduler.config.touch_tooltip){var a=dhtmlXTooltip,r=this.tooltip,i=r.style;a.tooltip.className=a.config.className;
+var n=this.position(e),s=e.target||e.srcElement;if(!this.isTooltip(s)){var d=n.x+(a.config.delta_x||0),l=n.y-(a.config.delta_y||0);i.visibility="hidden",i.removeAttribute?(i.removeAttribute("right"),i.removeAttribute("bottom")):(i.removeProperty("right"),i.removeProperty("bottom")),i.left="0",i.top="0",this.tooltip.innerHTML=t,document.body.appendChild(this.tooltip);var o=this.tooltip.offsetWidth,_=this.tooltip.offsetHeight;document.documentElement.clientWidth-d-o<0?(i.removeAttribute?i.removeAttribute("left"):i.removeProperty("left"),
+i.right=document.documentElement.clientWidth-d+2*(a.config.delta_x||0)+"px"):0>d?i.left=n.x+Math.abs(a.config.delta_x||0)+"px":i.left=d+"px",document.documentElement.clientHeight-l-_<0?(i.removeAttribute?i.removeAttribute("top"):i.removeProperty("top"),i.bottom=document.documentElement.clientHeight-l-2*(a.config.delta_y||0)+"px"):0>l?i.top=n.y+Math.abs(a.config.delta_y||0)+"px":i.top=l+"px",scheduler._waiAria.tooltipVisibleAttr(this.tooltip),i.visibility="visible",this.tooltip.onmouseleave=function(e){
+e=e||window.event;for(var t=scheduler.dhtmlXTooltip,a=e.relatedTarget;a!=scheduler._obj&&a;)a=a.parentNode;a!=scheduler._obj&&t.delay(t.hide,t,[],t.config.timeout_to_hide)},scheduler.callEvent("onTooltipDisplayed",[this.tooltip,this.tooltip.event_id])}}},dhtmlXTooltip._clearTimeout=function(){this.tooltip._timeout_id&&window.clearTimeout(this.tooltip._timeout_id)},dhtmlXTooltip.hide=function(){if(this.tooltip.parentNode){scheduler._waiAria.tooltipHiddenAttr(this.tooltip);var e=this.tooltip.event_id;
+this.tooltip.event_id=null,this.tooltip.onmouseleave=null,this.tooltip.parentNode.removeChild(this.tooltip),scheduler.callEvent("onAfterTooltip",[e])}this._clearTimeout()},dhtmlXTooltip.delay=function(e,t,a,r){this._clearTimeout(),this.tooltip._timeout_id=setTimeout(function(){var r=e.apply(t,a);return e=t=a=null,r},r||this.config.timeout_to_display)},dhtmlXTooltip.isTooltip=function(e){for(var t=!1;e&&!t;)t=e.className==this.tooltip.className,e=e.parentNode;return t},dhtmlXTooltip.position=function(e){
+return e=e||window.event,{x:e.clientX,y:e.clientY}},scheduler.attachEvent("onMouseMove",function(e,t){var a=window.event||t,r=a.target||a.srcElement,i=dhtmlXTooltip,n=i.isTooltip(r),s=i.isTooltipTarget&&i.isTooltipTarget(r);if(e||n||s){var d;if(e||i.tooltip.event_id){var l=scheduler.getEvent(e)||scheduler.getEvent(i.tooltip.event_id);if(!l)return;if(i.tooltip.event_id=l.id,d=scheduler.templates.tooltip_text(l.start_date,l.end_date,l),!d)return i.hide()}s&&(d="");var o;if(_isIE){o={pageX:void 0,pageY:void 0,
+clientX:void 0,clientY:void 0,target:void 0,srcElement:void 0};for(var _ in o)o[_]=a[_]}if(!scheduler.callEvent("onBeforeTooltip",[e])||!d)return;i.delay(i.show,i,[o||a,d])}else i.delay(i.hide,i,[],i.config.timeout_to_hide)}),scheduler.attachEvent("onBeforeDrag",function(){return dhtmlXTooltip.hide(),!0}),scheduler.attachEvent("onEventDeleted",function(){return dhtmlXTooltip.hide(),!0});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_tooltip.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_url.js b/codebase/ext/dhtmlxscheduler_url.js
index 844ef58..c5e298b 100644
--- a/codebase/ext/dhtmlxscheduler_url.js
+++ b/codebase/ext/dhtmlxscheduler_url.js
@@ -1,12 +1,12 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler._get_url_nav=function(){for(var e={},t=(document.location.hash||"").replace("#","").split(","),a=0;a<t.length;a++){var r=t[a].split("=");2==r.length&&(e[r[0]]=r[1])}return e},scheduler.attachEvent("onTemplatesReady",function(){function e(e){n=e,scheduler.getEvent(e)&&scheduler.showEvent(e)}var t=!0,a=scheduler.date.str_to_date("%Y-%m-%d"),r=scheduler.date.date_to_str("%Y-%m-%d"),n=scheduler._get_url_nav().event||null;scheduler.attachEvent("onAfterEventDisplay",function(e){return n=null,
-!0}),scheduler.attachEvent("onBeforeViewChange",function(i,l,d,s){if(t){t=!1;var o=scheduler._get_url_nav();if(o.event)try{if(scheduler.getEvent(o.event))return e(o.event),!1;var _=scheduler.attachEvent("onXLE",function(){e(o.event),scheduler.detachEvent(_)})}catch(c){}if(o.date||o.mode){try{this.setCurrentView(o.date?a(o.date):null,o.mode||null)}catch(c){this.setCurrentView(o.date?a(o.date):null,d)}return!1}}var h=["date="+r(s||l),"mode="+(d||i)];n&&h.push("event="+n);var u="#"+h.join(",");return document.location.hash=u,
+scheduler._get_url_nav=function(){for(var e={},t=(document.location.hash||"").replace("#","").split(","),r=0;r<t.length;r++){var a=t[r].split("=");2==a.length&&(e[a[0]]=a[1])}return e},scheduler.attachEvent("onTemplatesReady",function(){function e(e){i=e,scheduler.getEvent(e)&&scheduler.showEvent(e)}var t=!0,r=scheduler.date.str_to_date("%Y-%m-%d"),a=scheduler.date.date_to_str("%Y-%m-%d"),i=scheduler._get_url_nav().event||null;scheduler.attachEvent("onAfterEventDisplay",function(e){return i=null,
+!0}),scheduler.attachEvent("onBeforeViewChange",function(n,s,d,l){if(t){t=!1;var o=scheduler._get_url_nav();if(o.event)try{if(scheduler.getEvent(o.event))return e(o.event),!1;var _=scheduler.attachEvent("onXLE",function(){e(o.event),scheduler.detachEvent(_)})}catch(c){}if(o.date||o.mode){try{this.setCurrentView(o.date?r(o.date):null,o.mode||null)}catch(c){this.setCurrentView(o.date?r(o.date):null,d)}return!1}}var h=["date="+a(l||s),"mode="+(d||n)];i&&h.push("event="+i);var u="#"+h.join(",");return document.location.hash=u,
!0})});
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_url.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_wp.js b/codebase/ext/dhtmlxscheduler_wp.js
index ed109a2..58072e8 100644
--- a/codebase/ext/dhtmlxscheduler_wp.js
+++ b/codebase/ext/dhtmlxscheduler_wp.js
@@ -1,10 +1,10 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.attachEvent("onLightBox",function(){if(this._cover)try{this._cover.style.height=this.expanded?"100%":(document.body.parentNode||document.body).scrollHeight+"px"}catch(e){}}),scheduler.form_blocks.select.set_value=function(e,t,a){("undefined"==typeof t||""===t)&&(t=(e.firstChild.options[0]||{}).value),e.firstChild.value=t||""};
+scheduler.attachEvent("onLightBox",function(){if(this._cover)try{this._cover.style.height=this.expanded?"100%":(document.body.parentNode||document.body).scrollHeight+"px"}catch(e){}}),scheduler.form_blocks.select.set_value=function(e,t,r){("undefined"==typeof t||""===t)&&(t=(e.firstChild.options[0]||{}).value),e.firstChild.value=t||""};
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_wp.js.map \ No newline at end of file
diff --git a/codebase/ext/dhtmlxscheduler_year_view.js b/codebase/ext/dhtmlxscheduler_year_view.js
index e5b1b99..7d711d6 100644
--- a/codebase/ext/dhtmlxscheduler_year_view.js
+++ b/codebase/ext/dhtmlxscheduler_year_view.js
@@ -1,31 +1,27 @@
/*
@license
-dhtmlxScheduler v.4.3.1
+dhtmlxScheduler v.4.4.0 Stardard
This software is covered by GPL license. You also can obtain Commercial or Enterprise license to use it in non-GPL project - please contact sales@dhtmlx.com. Usage without proper license is prohibited.
(c) Dinamenta, UAB.
*/
-scheduler.config.year_x=4,scheduler.config.year_y=3,scheduler.xy.year_top=0,scheduler.templates.year_date=function(e){return scheduler.date.date_to_str(scheduler.locale.labels.year_tab+" %Y")(e)},scheduler.templates.year_month=scheduler.date.date_to_str("%F"),scheduler.templates.year_scale_date=scheduler.date.date_to_str("%D"),scheduler.templates.year_tooltip=function(e,t,a){return a.text},function(){var e=function(){return"year"==scheduler._mode};scheduler.dblclick_dhx_month_head=function(t){if(e()){
-var a=t.target||t.srcElement;if(-1!=a.parentNode.className.indexOf("dhx_before")||-1!=a.parentNode.className.indexOf("dhx_after"))return!1;var r=this.templates.xml_date(a.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.getAttribute("date"));r.setDate(parseInt(a.innerHTML,10));var n=this.date.add(r,1,"day");!this.config.readonly&&this.config.dblclick_create&&this.addEventNow(r.valueOf(),n.valueOf(),t)}};var t=scheduler.changeEventId;scheduler.changeEventId=function(){t.apply(this,arguments),
-e()&&this.year_view(!0)};var a=scheduler.render_data,r=scheduler.date.date_to_str("%Y/%m/%d"),n=scheduler.date.str_to_date("%Y/%m/%d");scheduler.render_data=function(t){if(!e())return a.apply(this,arguments);for(var r=0;r<t.length;r++)this._year_render_event(t[r])};var d=scheduler.clear_view;scheduler.clear_view=function(){if(!e())return d.apply(this,arguments);var t=scheduler._year_marked_cells,a=null;for(var r in t)t.hasOwnProperty(r)&&(a=t[r],a.className="dhx_month_head",a.setAttribute("date",""));
-
-scheduler._year_marked_cells={}},scheduler._hideToolTip=function(){this._tooltip&&(this._tooltip.style.display="none",this._tooltip.date=new Date(9999,1,1))},scheduler._showToolTip=function(e,t,a,r){if(this._tooltip){if(this._tooltip.date.valueOf()==e.valueOf())return;this._tooltip.innerHTML=""}else{var n=this._tooltip=document.createElement("DIV");n.className="dhx_year_tooltip",document.body.appendChild(n),n.onclick=scheduler._click.dhx_cal_data}for(var d=this.getEvents(e,this.date.add(e,1,"day")),l="",i=0;i<d.length;i++){
-var s=d[i];if(this.filter_event(s.id,s)){var o=s.color?"background:"+s.color+";":"",_=s.textColor?"color:"+s.textColor+";":"";l+="<div class='dhx_tooltip_line' style='"+o+_+"' event_id='"+d[i].id+"'>",l+="<div class='dhx_tooltip_date' style='"+o+_+"'>"+(d[i]._timed?this.templates.event_date(d[i].start_date):"")+"</div>",l+="<div class='dhx_event_icon icon_details'>&nbsp;</div>",l+=this.templates.year_tooltip(d[i].start_date,d[i].end_date,d[i])+"</div>"}}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+r.offsetWidth+"px",this._tooltip.date=e,this._tooltip.innerHTML=l,document.body.offsetHeight-t.top-this._tooltip.offsetHeight<0?this._tooltip.style.top=t.top-this._tooltip.offsetHeight+r.offsetHeight+"px":this._tooltip.style.top=t.top+"px"},scheduler._year_view_tooltip_handler=function(t){if(e()){var t=t||event,a=t.target||t.srcElement;"a"==a.tagName.toLowerCase()&&(a=a.parentNode),
--1!=(a.className||"").indexOf("dhx_year_event")?scheduler._showToolTip(n(a.getAttribute("date")),getOffset(a),t,a):scheduler._hideToolTip()}},scheduler._init_year_tooltip=function(){scheduler._detachDomEvent(scheduler._els.dhx_cal_data[0],"mouseover",scheduler._year_view_tooltip_handler),dhtmlxEvent(scheduler._els.dhx_cal_data[0],"mouseover",scheduler._year_view_tooltip_handler)},scheduler.attachEvent("onSchedulerResize",function(){return e()?(this.year_view(!0),!1):!0}),scheduler._get_year_cell=function(e){
-var t=e.getMonth()+12*(e.getFullYear()-this._min_date.getFullYear())-this.week_starts._month,a=this._els.dhx_cal_data[0].childNodes[t],e=this.week_starts[t]+e.getDate()-1;return a.childNodes[2].firstChild.rows[Math.floor(e/7)].cells[e%7].firstChild},scheduler._year_marked_cells={},scheduler._mark_year_date=function(e,t){var a=r(e),n=this._get_year_cell(e),d=this.templates.event_class(t.start_date,t.end_date,t);scheduler._year_marked_cells[a]||(n.className="dhx_month_head dhx_year_event",n.setAttribute("date",a),
-scheduler._year_marked_cells[a]=n),n.className+=d?" "+d:""},scheduler._unmark_year_date=function(e){this._get_year_cell(e).className="dhx_month_head"},scheduler._year_render_event=function(e){var t=e.start_date;for(t=t.valueOf()<this._min_date.valueOf()?this._min_date:this.date.date_part(new Date(t));t<e.end_date;)if(this._mark_year_date(t,e),t=this.date.add(t,1,"day"),t.valueOf()>=this._max_date.valueOf())return},scheduler.year_view=function(e){var t;if(e&&(t=scheduler.xy.scale_height,scheduler.xy.scale_height=-1),
-scheduler._els.dhx_cal_header[0].style.display=e?"none":"",scheduler.set_sizes(),e&&(scheduler.xy.scale_height=t),scheduler._table_view=e,!this._load_mode||!this._load())if(e){if(scheduler._init_year_tooltip(),scheduler._reset_year_scale(),scheduler._load_mode&&scheduler._load())return void(scheduler._render_wait=!0);scheduler.render_view_data()}else scheduler._hideToolTip()},scheduler._reset_year_scale=function(){this._cols=[],this._colsS={};var e=[],t=this._els.dhx_cal_data[0],a=this.config;t.scrollTop=0,
-t.innerHTML="";var r=Math.floor(parseInt(t.style.width)/a.year_x),n=Math.floor((parseInt(t.style.height)-scheduler.xy.year_top)/a.year_y);190>n&&(n=190,r=Math.floor((parseInt(t.style.width)-scheduler.xy.scroll_width)/a.year_x));for(var d=r-11,l=0,i=document.createElement("div"),s=this.date.week_start(scheduler._currentDate()),o=0;7>o;o++)this._cols[o]=Math.floor(d/(7-o)),this._render_x_header(o,l,s,i),s=this.date.add(s,1,"day"),d-=this._cols[o],l+=this._cols[o];i.lastChild.className+=" dhx_scale_bar_last";
-
-for(var _=this.date[this._mode+"_start"](this.date.copy(this._date)),c=_,h=null,o=0;o<a.year_y;o++)for(var u=0;u<a.year_x;u++){h=document.createElement("DIV"),h.style.cssText="position:absolute;",h.setAttribute("date",this.templates.xml_format(_)),h.innerHTML="<div class='dhx_year_month'></div><div class='dhx_year_week'>"+i.innerHTML+"</div><div class='dhx_year_body'></div>",h.childNodes[0].innerHTML=this.templates.year_month(_);for(var p=this.date.week_start(_),v=this._reset_month_scale(h.childNodes[2],_,p),m=h.childNodes[2].firstChild.rows,g=m.length;6>g;g++){
-m[0].parentNode.appendChild(m[0].cloneNode(!0));for(var f=0,y=m[g].childNodes.length;y>f;f++)m[g].childNodes[f].className="dhx_after",m[g].childNodes[f].firstChild.innerHTML=scheduler.templates.month_day(v),v=scheduler.date.add(v,1,"day")}t.appendChild(h),h.childNodes[1].style.height=h.childNodes[1].childNodes[0].offsetHeight+"px";var b=Math.round((n-190)/2);h.style.marginTop=b+"px",this.set_xy(h,r-10,n-b-10,r*u+5,n*o+5+scheduler.xy.year_top),e[o*a.year_x+u]=(_.getDay()-(this.config.start_on_monday?1:0)+7)%7,
-_=this.date.add(_,1,"month")}this._els.dhx_cal_date[0].innerHTML=this.templates[this._mode+"_date"](c,_,this._mode),this.week_starts=e,e._month=c.getMonth(),this._min_date=c,this._max_date=_};var l=scheduler.getActionData;scheduler.getActionData=function(t){if(!e())return l.apply(scheduler,arguments);var a=t?t.target:event.srcElement,r=scheduler._get_year_month_date(a),n=scheduler._get_year_month_cell(a),d=scheduler._get_year_day_indexes(n);return d&&r?(r=scheduler.date.add(r,d.week,"week"),r=scheduler.date.add(r,d.day,"day")):r=null,
-{date:r,section:null}},scheduler._get_year_day_indexes=function(e){var t=scheduler._get_year_el_node(e,this._locate_year_month_table);if(!t)return null;for(var a=0,r=0,a=0,n=t.rows.length;n>a;a++){for(var d=t.rows[a].getElementsByTagName("td"),r=0,l=d.length;l>r&&d[r]!=e;r++);if(l>r)break}return n>a?{day:r,week:a}:null},scheduler._get_year_month_date=function(e){var e=scheduler._get_year_el_node(e,scheduler._locate_year_month_root);if(!e)return null;var t=e.getAttribute("date");return t?scheduler.date.week_start(scheduler.templates.xml_date(t)):null;
-
-},scheduler._locate_year_month_day=function(e){return e.className&&-1!=e.className.indexOf("dhx_year_event")&&e.hasAttribute&&e.hasAttribute("date")};var i=scheduler._locate_event;scheduler._locate_event=function(e){var t=i.apply(scheduler,arguments);if(!t){var a=scheduler._get_year_el_node(e,scheduler._locate_year_month_day);if(!a||!a.hasAttribute("date"))return null;var r=scheduler.templates.xml_date(a.getAttribute("date")),n=scheduler.getEvents(r,scheduler.date.add(r,1,"day"));if(!n.length)return null;
-
-t=n[0].id}return t},scheduler._locate_year_month_cell=function(e){return"td"==e.nodeName.toLowerCase()},scheduler._locate_year_month_table=function(e){return"table"==e.nodeName.toLowerCase()},scheduler._locate_year_month_root=function(e){return e.hasAttribute&&e.hasAttribute("date")},scheduler._get_year_month_cell=function(e){return this._get_year_el_node(e,this._locate_year_month_cell)},scheduler._get_year_month_table=function(e){return this._get_year_el_node(e,this._locate_year_month_table)},scheduler._get_year_month_root=function(e){
-return this._get_year_el_node(this._get_year_month_table(e),this._locate_year_month_root)},scheduler._get_year_el_node=function(e,t){for(;e&&!t(e);)e=e.parentNode;return e}}();
+scheduler.config.year_x=4,scheduler.config.year_y=3,scheduler.xy.year_top=0,scheduler.templates.year_date=function(e){return scheduler.date.date_to_str(scheduler.locale.labels.year_tab+" %Y")(e)},scheduler.templates.year_month=scheduler.date.date_to_str("%F"),scheduler.templates.year_scale_date=scheduler.date.date_to_str("%D"),scheduler.templates.year_tooltip=function(e,t,r){return r.text},function(){var e=function(){return"year"==scheduler._mode};scheduler.dblclick_dhx_month_head=function(t){if(e()){
+var r=t.target||t.srcElement,a=scheduler._getClassName(r.parentNode);if(-1!=a.indexOf("dhx_before")||-1!=a.indexOf("dhx_after"))return!1;var i=this.templates.xml_date(r.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.getAttribute("date"));i.setDate(parseInt(r.innerHTML,10));var n=this.date.add(i,1,"day");!this.config.readonly&&this.config.dblclick_create&&this.addEventNow(i.valueOf(),n.valueOf(),t)}};var t=scheduler.changeEventId;scheduler.changeEventId=function(){t.apply(this,arguments),
+e()&&this.year_view(!0)};var r=scheduler.render_data,a=scheduler.date.date_to_str("%Y/%m/%d"),i=scheduler.date.str_to_date("%Y/%m/%d");scheduler.render_data=function(t){if(!e())return r.apply(this,arguments);for(var a=0;a<t.length;a++)this._year_render_event(t[a])};var n=scheduler.clear_view;scheduler.clear_view=function(){if(!e())return n.apply(this,arguments);var t=scheduler._year_marked_cells,r=null;for(var a in t)t.hasOwnProperty(a)&&(r=t[a],r.className="dhx_month_head",r.setAttribute("date",""));
+scheduler._year_marked_cells={}},scheduler._hideToolTip=function(){this._tooltip&&(this._tooltip.style.display="none",this._tooltip.date=new Date(9999,1,1))},scheduler._showToolTip=function(e,t,r,a){if(this._tooltip){if(this._tooltip.date.valueOf()==e.valueOf())return;this._tooltip.innerHTML=""}else{var i=this._tooltip=document.createElement("DIV");i.className="dhx_year_tooltip",document.body.appendChild(i),i.onclick=scheduler._click.dhx_cal_data}for(var n=this.getEvents(e,this.date.add(e,1,"day")),s="",d=0;d<n.length;d++){
+var l=n[d];if(this.filter_event(l.id,l)){var o=l.color?"background:"+l.color+";":"",_=l.textColor?"color:"+l.textColor+";":"";s+="<div class='dhx_tooltip_line' style='"+o+_+"' event_id='"+n[d].id+"'>",s+="<div class='dhx_tooltip_date' style='"+o+_+"'>"+(n[d]._timed?this.templates.event_date(n[d].start_date):"")+"</div>",s+="<div class='dhx_event_icon icon_details'>&nbsp;</div>",s+=this.templates.year_tooltip(n[d].start_date,n[d].end_date,n[d])+"</div>"}}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+a.offsetWidth+"px",this._tooltip.date=e,this._tooltip.innerHTML=s,document.body.offsetHeight-t.top-this._tooltip.offsetHeight<0?this._tooltip.style.top=t.top-this._tooltip.offsetHeight+a.offsetHeight+"px":this._tooltip.style.top=t.top+"px"},scheduler._year_view_tooltip_handler=function(t){if(e()){var t=t||event,r=t.target||t.srcElement;"a"==r.tagName.toLowerCase()&&(r=r.parentNode),
+-1!=scheduler._getClassName(r).indexOf("dhx_year_event")?scheduler._showToolTip(i(r.getAttribute("date")),getOffset(r),t,r):scheduler._hideToolTip()}},scheduler._init_year_tooltip=function(){scheduler._detachDomEvent(scheduler._els.dhx_cal_data[0],"mouseover",scheduler._year_view_tooltip_handler),dhtmlxEvent(scheduler._els.dhx_cal_data[0],"mouseover",scheduler._year_view_tooltip_handler)},scheduler.attachEvent("onSchedulerResize",function(){return e()?(this.year_view(!0),!1):!0}),scheduler._get_year_cell=function(e){
+var t=e.getMonth()+12*(e.getFullYear()-this._min_date.getFullYear())-this.week_starts._month,r=this._els.dhx_cal_data[0].childNodes[t],e=this.week_starts[t]+e.getDate()-1;return r.querySelector(".dhx_year_body").firstChild.rows[Math.floor(e/7)].cells[e%7].firstChild},scheduler._year_marked_cells={},scheduler._mark_year_date=function(e,t){var r=a(e),i=this._get_year_cell(e),n=this.templates.event_class(t.start_date,t.end_date,t);scheduler._year_marked_cells[r]||(i.className="dhx_month_head dhx_year_event",
+i.setAttribute("date",r),scheduler._year_marked_cells[r]=i),i.className+=n?" "+n:""},scheduler._unmark_year_date=function(e){this._get_year_cell(e).className="dhx_month_head"},scheduler._year_render_event=function(e){var t=e.start_date;for(t=t.valueOf()<this._min_date.valueOf()?this._min_date:this.date.date_part(new Date(t));t<e.end_date;)if(this._mark_year_date(t,e),t=this.date.add(t,1,"day"),t.valueOf()>=this._max_date.valueOf())return},scheduler.year_view=function(e){var t;if(e&&(t=scheduler.xy.scale_height,
+scheduler.xy.scale_height=-1),scheduler._els.dhx_cal_header[0].style.display=e?"none":"",scheduler.set_sizes(),e&&(scheduler.xy.scale_height=t),scheduler._table_view=e,!this._load_mode||!this._load())if(e){if(scheduler._init_year_tooltip(),scheduler._reset_year_scale(),scheduler._load_mode&&scheduler._load())return void(scheduler._render_wait=!0);scheduler.render_view_data()}else scheduler._hideToolTip()},scheduler._reset_year_scale=function(){this._cols=[],this._colsS={};var e=[],t=this._els.dhx_cal_data[0],r=this.config;
+t.scrollTop=0,t.innerHTML="";var a=Math.floor(parseInt(t.style.width)/r.year_x),i=Math.floor((parseInt(t.style.height)-scheduler.xy.year_top)/r.year_y);190>i&&(i=190,a=Math.floor((parseInt(t.style.width)-scheduler.xy.scroll_width)/r.year_x));var n=a-11,s=0,d=document.createElement("div"),l=this.date.week_start(scheduler._currentDate());this._process_ignores(l,7,"day",1);for(var o=7-(this._ignores_detected||0),_=0,c=0;7>c;c++)this._ignores&&this._ignores[c]||(this._cols[c]=Math.floor(n/(o-_)),this._render_x_header(c,s,l,d),
+n-=this._cols[c],s+=this._cols[c],_++),l=this.date.add(l,1,"day");d.lastChild.className+=" dhx_scale_bar_last";for(var c=0;c<d.childNodes.length;c++)this._waiAria.yearHeadCell(d.childNodes[c]);for(var h=this.date[this._mode+"_start"](this.date.copy(this._date)),u=h,v=null,c=0;c<r.year_y;c++)for(var f=0;f<r.year_x;f++){v=document.createElement("DIV"),v.style.cssText="position:absolute;",v.setAttribute("date",this.templates.xml_format(h)),v.innerHTML="<div class='dhx_year_month'></div><div class='dhx_year_grid'><div class='dhx_year_week'>"+d.innerHTML+"</div><div class='dhx_year_body'></div></div>";
+var g=v.querySelector(".dhx_year_month"),p=v.querySelector(".dhx_year_grid"),m=v.querySelector(".dhx_year_week"),y=v.querySelector(".dhx_year_body"),x=scheduler.uid();this._waiAria.yearHeader(g,x),this._waiAria.yearGrid(p,x),g.innerHTML=this.templates.year_month(h);for(var b=this.date.week_start(h),w=(this._reset_month_scale(y,h,b,6),y.querySelectorAll("td")),k=0;k<w.length;k++)this._waiAria.yearDayCell(w[k]);t.appendChild(v),m.style.height=m.childNodes[0].offsetHeight+"px";var E=Math.round((i-190)/2);
+v.style.marginTop=E+"px",this.set_xy(v,a-10,i-E-10,a*f+5,i*c+5+scheduler.xy.year_top),e[c*r.year_x+f]=(h.getDay()-(this.config.start_on_monday?1:0)+7)%7,h=this.date.add(h,1,"month")}this._els.dhx_cal_date[0].innerHTML=this.templates[this._mode+"_date"](u,h,this._mode),this.week_starts=e,e._month=u.getMonth(),this._min_date=u,this._max_date=h};var s=scheduler.getActionData;scheduler.getActionData=function(t){if(!e())return s.apply(scheduler,arguments);var r=t?t.target:event.srcElement,a=scheduler._get_year_month_date(r),i=scheduler._get_year_month_cell(r),n=scheduler._get_year_day_indexes(i);
+return n&&a?(a=scheduler.date.add(a,n.week,"week"),a=scheduler.date.add(a,n.day,"day")):a=null,{date:a,section:null}},scheduler._get_year_day_indexes=function(e){var t=scheduler._get_year_el_node(e,this._locate_year_month_table);if(!t)return null;for(var r=0,a=0,r=0,i=t.rows.length;i>r;r++){for(var n=t.rows[r].getElementsByTagName("td"),a=0,s=n.length;s>a&&n[a]!=e;a++);if(s>a)break}return i>r?{day:a,week:r}:null},scheduler._get_year_month_date=function(e){var e=scheduler._get_year_el_node(e,scheduler._locate_year_month_root);
+if(!e)return null;var t=e.getAttribute("date");return t?scheduler.date.week_start(scheduler.date.month_start(i(t))):null},scheduler._locate_year_month_day=function(e){return-1!=scheduler._getClassName(e).indexOf("dhx_year_event")&&e.hasAttribute&&e.hasAttribute("date")};var d=scheduler._locate_event;scheduler._locate_event=function(e){var t=d.apply(scheduler,arguments);if(!t){var r=scheduler._get_year_el_node(e,scheduler._locate_year_month_day);if(!r||!r.hasAttribute("date"))return null;var a=i(r.getAttribute("date")),n=scheduler.getEvents(a,scheduler.date.add(a,1,"day"));
+if(!n.length)return null;t=n[0].id}return t},scheduler._locate_year_month_cell=function(e){return"td"==e.nodeName.toLowerCase()},scheduler._locate_year_month_table=function(e){return"table"==e.nodeName.toLowerCase()},scheduler._locate_year_month_root=function(e){return e.hasAttribute&&e.hasAttribute("date")},scheduler._get_year_month_cell=function(e){return this._get_year_el_node(e,this._locate_year_month_cell)},scheduler._get_year_month_table=function(e){return this._get_year_el_node(e,this._locate_year_month_table);
+},scheduler._get_year_month_root=function(e){return this._get_year_el_node(this._get_year_month_table(e),this._locate_year_month_root)},scheduler._get_year_el_node=function(e,t){for(;e&&!t(e);)e=e.parentNode;return e}}();
//# sourceMappingURL=../sources/ext/dhtmlxscheduler_year_view.js.map \ No newline at end of file