var KretaTooltipHelper = (function () { var kretaTooltipHelper = function () {}; kretaTooltipHelper.setTooltip = function ( tooltipElement, tooltipTemplateSelector ) { tooltipElement.kendoTooltip({ content: kendo.template($(tooltipTemplateSelector).html()), position: 'top', show: function () { var that = this; var tooltips = $('[data-role=tooltip]'); tooltips.each(function () { var tooltip = $(this).data('kendoTooltip'); if (tooltip && tooltip !== that) { tooltip.hide(); } }); } }); }; kretaTooltipHelper.setGridCellTooltip = function ( tooltipElement, tooltipTemplateSelector ) { tooltipElement.kendoTooltip({ content: kendo.template($(tooltipTemplateSelector).html()), filter: 'span', position: 'bottom', show: function (e) { var rect = e.sender.element[0].getBoundingClientRect(); var left = rect.left; var top = rect.top; var height = rect.height; var animationContainer = e.sender.popup.element.parent()[0]; var width = window.innerWidth; var toolTipMaxWidth = 600; if (parseInt(left + toolTipMaxWidth, 10) > width) { toolTipMaxWidth = parseInt(width - left, 10); } animationContainer.style.top = parseInt(top + height, 10) + 'px'; animationContainer.style.left = parseInt(left, 10) + 'px'; animationContainer.style.maxWidth = toolTipMaxWidth + 'px'; var that = this; var tooltips = $('[data-role=tooltip]'); tooltips.each(function () { var tooltip = $(this).data('kendoTooltip'); if (tooltip && tooltip !== that) { tooltip.hide(); } }); }, showAfter: 300 }); }; kretaTooltipHelper.hidaAllTooltips = function () { var tooltips = $('[data-role=tooltip]'); tooltips.each(function () { var tooltip = $(this).data('kendoTooltip'); if (tooltip) { tooltip.hide(); } }); }; return kretaTooltipHelper; })();