diff options
author | AlexKlimenkov <shurick.klimenkov@gmail.com> | 2017-01-31 18:38:36 +0300 |
---|---|---|
committer | AlexKlimenkov <shurick.klimenkov@gmail.com> | 2017-01-31 18:38:36 +0300 |
commit | ae92cf850550a9be965db867ba4bfb5651a18e5f (patch) | |
tree | bbf70ce45cc6e608def6e9a81570febe4528208b /codebase/sources/ext/dhtmlxscheduler_quick_info.js | |
parent | 2e509c1f562c4f471d766c9b3532370f847f0839 (diff) | |
download | scheduler-ae92cf850550a9be965db867ba4bfb5651a18e5f.zip scheduler-ae92cf850550a9be965db867ba4bfb5651a18e5f.tar.gz scheduler-ae92cf850550a9be965db867ba4bfb5651a18e5f.tar.bz2 |
[update] version 4.4.0
Diffstat (limited to 'codebase/sources/ext/dhtmlxscheduler_quick_info.js')
-rw-r--r-- | codebase/sources/ext/dhtmlxscheduler_quick_info.js | 40 |
1 files changed, 30 insertions, 10 deletions
diff --git a/codebase/sources/ext/dhtmlxscheduler_quick_info.js b/codebase/sources/ext/dhtmlxscheduler_quick_info.js index f54117c..ce80f55 100644 --- a/codebase/sources/ext/dhtmlxscheduler_quick_info.js +++ b/codebase/sources/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. @@ -45,6 +45,8 @@ scheduler.showQuickInfo = function(id){ this._quick_info_box = this._init_quick_info(pos); this._fill_quick_data(id); this._show_quick_info(pos); + + this.callEvent("onQuickInfo", [id]); } }; scheduler._hideQuickInfo = function(){ @@ -52,12 +54,15 @@ scheduler._hideQuickInfo = function(){ }; scheduler.hideQuickInfo = function(forced){ var qi = this._quick_info_box; + var eventId = this._quick_info_box_id; this._quick_info_box_id = 0; if (qi && qi.parentNode){ - var width = qi._offsetWidth; - if (scheduler.config.quick_info_detached) + var width = qi.offsetWidth; + if (scheduler.config.quick_info_detached) { + this.callEvent("onAfterQuickInfo", [eventId]); return qi.parentNode.removeChild(qi); + } if (qi.style.right == "auto") qi.style.left = -width + "px"; @@ -66,6 +71,8 @@ scheduler.hideQuickInfo = function(forced){ if (forced) qi.parentNode.removeChild(qi); + + this.callEvent("onAfterQuickInfo", [eventId]); } }; dhtmlxEvent(window, "keydown", function(e){ @@ -99,7 +106,7 @@ scheduler._show_quick_info = function(pos){ qi.style.right = "-10px"; },1); } - qi.className = qi.className.replace("dhx_qi_left","").replace("dhx_qi_right","")+" dhx_qi_"+(pos==1?"left":"right"); + qi.className = qi.className.replace(" dhx_qi_left","").replace(" dhx_qi_right","")+" dhx_qi_"+(pos.dx==1?"left":"right"); } }; scheduler.attachEvent("onTemplatesReady", function(){ @@ -120,11 +127,15 @@ scheduler._init_quick_info = function(){ var sizes = scheduler.xy; var qi = this._quick_info_box = document.createElement("div"); + + this._waiAria.quickInfoAttr(qi); + qi.className = "dhx_cal_quick_info"; if (scheduler.$testmode) qi.className += " dhx_no_animate"; //title - var html = "<div class=\"dhx_cal_qi_title\" style=\"height:"+sizes.quick_info_title+"px\">" + + var ariaAttr = this._waiAria.quickInfoHeaderAttrString(); + var html = "<div class=\"dhx_cal_qi_title\" style=\"height:"+sizes.quick_info_title+"px\" "+ariaAttr+">" + "<div class=\"dhx_cal_qi_tcontent\"></div><div class=\"dhx_cal_qi_tdate\"></div>" + "</div>" + "<div class=\"dhx_cal_qi_content\"></div>"; @@ -132,8 +143,10 @@ scheduler._init_quick_info = function(){ //buttons html += "<div class=\"dhx_cal_qi_controls\" style=\"height:"+sizes.quick_info_buttons+"px\">"; var buttons = scheduler.config.icons_select; - for (var i = 0; i < buttons.length; i++) - html += "<div class=\"dhx_qi_big_icon "+buttons[i]+"\" title=\""+scheduler.locale.labels[buttons[i]]+"\"><div class='dhx_menu_icon " + buttons[i] + "'></div><div>"+scheduler.locale.labels[buttons[i]]+"</div></div>"; + for (var i = 0; i < buttons.length; i++) { + var ariaAttr = this._waiAria.quickInfoButtonAttrString(this.locale.labels[buttons[i]]); + html += "<div "+ariaAttr+" class=\"dhx_qi_big_icon " + buttons[i] + "\" title=\"" + scheduler.locale.labels[buttons[i]] + "\"><div class='dhx_menu_icon " + buttons[i] + "'></div><div>" + scheduler.locale.labels[buttons[i]] + "</div></div>"; + } html += "</div>"; qi.innerHTML = html; @@ -154,7 +167,7 @@ scheduler._qi_button_click = function(node){ var box = scheduler._quick_info_box; if (!node || node == box) return; - var mask = node.className; + var mask = scheduler._getClassName(node); if (mask.indexOf("_icon")!=-1){ var id = scheduler._quick_info_box_id; scheduler._click.buttons[mask.split(" ")[1].replace("icon_","")](id); @@ -189,10 +202,17 @@ scheduler._fill_quick_data = function(id){ scheduler._quick_info_box_id = id; //title content + + var header = { + content: scheduler.templates.quick_info_title(ev.start_date, ev.end_date, ev), + date: scheduler.templates.quick_info_date(ev.start_date, ev.end_date, ev) + }; var titleContent = qi.firstChild.firstChild; - titleContent.innerHTML = scheduler.templates.quick_info_title(ev.start_date, ev.end_date, ev); + titleContent.innerHTML = header.content; var titleDate = titleContent.nextSibling; - titleDate.innerHTML = scheduler.templates.quick_info_date(ev.start_date, ev.end_date, ev); + titleDate.innerHTML = header.date; + + scheduler._waiAria.quickInfoHeader(qi, [header.content, header.date].join(" ")); //main content var main = qi.firstChild.nextSibling; |