YetiForceCompany/YetiForceCRM

View on GitHub
public_html/layouts/basic/modules/Vtiger/resources/DashBoard.min.js.map

Summary

Maintainability
Test Coverage
{"version":3,"file":"DashBoard.min.js","sources":["DashBoard.js"],"sourcesContent":["/*+**********************************************************************************\n * The contents of this file are subject to the vtiger CRM Public License Version 1.1\n * (\"License\"); You may not use this file except in compliance with the License\n * The Original Code is:  vtiger CRM Open Source\n * The Initial Developer of the Original Code is vtiger.\n * Portions created by vtiger are Copyright (C) vtiger.\n * All Rights Reserved.\n * Contributor(s): YetiForce S.A.\n ************************************************************************************/\n'use strict';\n\n$.Class(\n\t'Vtiger_DashBoard_Js',\n\t{\n\t\tgrid: false,\n\t\t//static property which will store the instance of dashboard\n\t\tcurrentInstance: false,\n\t\tscrollContainer: false,\n\t\trestrictContentDrag: function (container) {\n\t\t\tcontainer.on('mousedown.draggable', function (e) {\n\t\t\t\tlet element = $(e.target);\n\t\t\t\tlet isHeaderElement = element.closest('.dashboardWidgetHeader').length > 0 ? true : false;\n\t\t\t\tif (isHeaderElement) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t//Stop the event propagation so that drag will not start for contents\n\t\t\t\te.stopPropagation();\n\t\t\t});\n\t\t}\n\t},\n\t{\n\t\tcontainer: false,\n\t\tnoCache: false,\n\t\tinstancesCache: {},\n\t\tinit: function () {\n\t\t\tVtiger_DashBoard_Js.currentInstance = this;\n\t\t},\n\t\t/**\n\t\t * Get container\n\t\t * @returns JQuery\n\t\t */\n\t\tgetContainer: function () {\n\t\t\tif (this.noCache == true || this.container == false) {\n\t\t\t\tthis.container = $('.grid-stack');\n\t\t\t}\n\t\t\treturn this.container;\n\t\t},\n\t\tgetCurrentDashboard: function () {\n\t\t\tlet dashboardId = $('.selectDashboard li a.active').closest('li').data('id');\n\t\t\tif (!dashboardId) {\n\t\t\t\tdashboardId = 1;\n\t\t\t}\n\t\t\treturn dashboardId;\n\t\t},\n\t\tgetWidgetInstance: function (widgetContainer) {\n\t\t\tlet id = widgetContainer.attr('id');\n\t\t\tif (this.noCache || !(id in this.instancesCache)) {\n\t\t\t\tlet widgetName = widgetContainer.data('name');\n\t\t\t\tthis.instancesCache[id] = Vtiger_Widget_Js.getInstance(widgetContainer, widgetName);\n\t\t\t}\n\t\t\treturn this.instancesCache[id];\n\t\t},\n\t\tregisterGrid: function () {\n\t\t\tconst self = this;\n\t\t\tVtiger_DashBoard_Js.grid = GridStack.init(\n\t\t\t\t{\n\t\t\t\t\tmargin: '5px',\n\t\t\t\t\tcellHeight: '70px',\n\t\t\t\t\talwaysShowResizeHandle: /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(\n\t\t\t\t\t\tnavigator.userAgent\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t\t'.grid-stack'\n\t\t\t);\n\t\t\tVtiger_DashBoard_Js.grid.on('change', function (event, ui) {\n\t\t\t\tself.savePositions(self.getContainer().find('.grid-stack-item'));\n\t\t\t});\n\t\t\t// load widgets after grid initialization to prevent too early lazy loading - visible viewport changes\n\t\t\tthis.loadWidgets();\n\t\t\t// recalculate positions with scrollbars\n\t\t\tif (this.getContainer().width() !== this.getContainer().parent().width()) {\n\t\t\t\tconst parentWidth = self.getContainer().parent().width();\n\t\t\t\tthis.getContainer().css('width', parentWidth + 'px');\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Save widgets positions\n\t\t * @param {JQuery} widgets\n\t\t */\n\t\tsavePositions: function (widgets) {\n\t\t\tlet widgetRowColPositions = {},\n\t\t\t\twidgetSizes = {};\n\t\t\twidgets.each((_index, element) => {\n\t\t\t\tlet widget = $(element);\n\t\t\t\tlet widgetId = widget.find('.grid-stack-item-content').attr('id');\n\t\t\t\twidgetRowColPositions[widgetId] = {\n\t\t\t\t\trow: widget.attr('gs-y'),\n\t\t\t\t\tcol: widget.attr('gs-x')\n\t\t\t\t};\n\t\t\t\twidgetSizes[widgetId] = {\n\t\t\t\t\twidth: widget.attr('gs-w'),\n\t\t\t\t\theight: widget.attr('gs-h')\n\t\t\t\t};\n\t\t\t\tthis.getWidgetInstance(widget.find('.dashboardWidget')).loadScrollbar();\n\t\t\t});\n\t\t\tthis.updateLazyWidget();\n\t\t\tAppConnector.request({\n\t\t\t\tmodule: app.getModuleName(),\n\t\t\t\taction: 'Widget',\n\t\t\t\tmode: 'positions',\n\t\t\t\tposition: widgetRowColPositions,\n\t\t\t\tsize: widgetSizes\n\t\t\t});\n\t\t},\n\t\tupdateLazyWidget() {\n\t\t\tconst scrollTop = this.scrollContainer.scrollTop();\n\t\t\tthis.scrollContainer.scrollTop(scrollTop + 1).scrollTop(scrollTop);\n\t\t},\n\t\tloadWidgets: function () {\n\t\t\tconst thisInstance = this;\n\t\t\tthis.scrollContainer = App.Components.Scrollbar.page.element;\n\t\t\tif (!Quasar.plugins.Platform.is.desktop) {\n\t\t\t\tthis.scrollContainer = $('.bodyContent');\n\t\t\t\tapp.showNewScrollbar(this.scrollContainer);\n\t\t\t}\n\t\t\tthisInstance\n\t\t\t\t.getContainer()\n\t\t\t\t.find('.dashboardWidget')\n\t\t\t\t.Lazy({\n\t\t\t\t\tthreshold: 0,\n\t\t\t\t\tappendScroll: this.scrollContainer,\n\t\t\t\t\twidgetLoader(element) {\n\t\t\t\t\t\tthisInstance.loadWidget(element);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\tthis.updateLazyWidget();\n\t\t},\n\t\tloadWidget: function (widgetContainer) {\n\t\t\tconst self = this;\n\t\t\tlet urlParams = widgetContainer.data('url');\n\t\t\tlet mode = widgetContainer.data('mode');\n\t\t\tlet moduleName = app.getModuleName();\n\t\t\tlet sourceModule = $('a.active', 'ul.selectDashboradView').parent().data('module');\n\t\t\twidgetContainer.progressIndicator();\n\t\t\tif (mode === 'open') {\n\t\t\t\tlet name = widgetContainer.attr('id');\n\t\t\t\tlet userId = CONFIG.userId;\n\t\t\t\tif (widgetContainer.data('cache') === 1) {\n\t\t\t\t\tlet cacheUrl = app.cacheGet(name + '_' + userId, false);\n\t\t\t\t\turlParams = cacheUrl ? cacheUrl : urlParams;\n\t\t\t\t}\n\t\t\t\tAppConnector.request(urlParams)\n\t\t\t\t\t.done((data) => {\n\t\t\t\t\t\twidgetContainer.html(data);\n\t\t\t\t\t\tApp.Fields.Picklist.showSelect2ElementView(widgetContainer.find('.select2'));\n\t\t\t\t\t\tApp.Fields.Tree.register(widgetContainer);\n\t\t\t\t\t\tself.getWidgetInstance(widgetContainer);\n\t\t\t\t\t\twidgetContainer.trigger(Vtiger_Widget_Js.widgetPostLoadEvent);\n\t\t\t\t\t\tself.adjustHeightWidget(widgetContainer);\n\t\t\t\t\t\tif (sourceModule && moduleName != sourceModule) {\n\t\t\t\t\t\t\t$('.js-widget-remove', widgetContainer).remove();\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t\t.fail(function (textStatus, errorThrown, errorObj) {\n\t\t\t\t\t\twidgetContainer.progressIndicator({ mode: 'hide' });\n\t\t\t\t\t\tif (CONFIG.debug) {\n\t\t\t\t\t\t\twidgetContainer.html(errorObj.responseText);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlet url = app.convertUrlToObject(urlParams);\n\t\t\t\t\t\tdelete url.view, url.name;\n\t\t\t\t\t\turl.action = 'Widget';\n\t\t\t\t\t\turl.mode = 'remove';\n\t\t\t\t\t\turl = app.convertObjectToUrl(url);\n\t\t\t\t\t\twidgetContainer.prepend(\n\t\t\t\t\t\t\t`<span style=\"float: right;\"><button class=\"btn btn-sm btn-light js-widget-remove\" data-url=\"${url}\" data-js=\"click\"><span class=\"fas fa-times\"></span></button></span>`\n\t\t\t\t\t\t);\n\t\t\t\t\t\tapp.showNotify({\n\t\t\t\t\t\t\ttitle: app.vtranslate('JS_ERROR'),\n\t\t\t\t\t\t\ttype: 'error'\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\t/**\n\t\t * Adjust the height of the widget.\n\t\t * @param {jQuery} widgetContainer\n\t\t */\n\t\tadjustHeightWidget(widgetContainer) {\n\t\t\tconst headerHeight = widgetContainer.find('.dashboardWidgetHeader').outerHeight();\n\t\t\tlet adjustedHeight = widgetContainer.height() - headerHeight;\n\t\t\tif (widgetContainer.find('.dashboardWidgetFooter').length) {\n\t\t\t\tadjustedHeight -= widgetContainer.find('.dashboardWidgetFooter').outerHeight();\n\t\t\t}\n\t\t\tconst widgetContent = widgetContainer.find('.dashboardWidgetContent');\n\t\t\twidgetContent.css('max-height', adjustedHeight + 'px');\n\t\t\tapp.showNewScrollbar(widgetContent, { wheelPropagation: true });\n\t\t},\n\t\tregisterRefreshWidget: function () {\n\t\t\tlet thisInstance = this;\n\t\t\tthis.getContainer().on('click', '.js-widget-refresh', function (e) {\n\t\t\t\tlet element = $(e.currentTarget);\n\t\t\t\tthisInstance.getWidgetInstance(element.closest('.dashboardWidget')).refreshWidget();\n\t\t\t\treturn;\n\t\t\t});\n\t\t},\n\t\tremoveWidget: function () {\n\t\t\tconst self = this;\n\t\t\tthis.getContainer().on('click', '.js-widget-remove', function (e) {\n\t\t\t\tlet element = $(e.currentTarget),\n\t\t\t\t\tlistItem = $(element).parents('.grid-stack-item'),\n\t\t\t\t\twidth = listItem.attr('gs-w'),\n\t\t\t\t\theight = listItem.attr('gs-h'),\n\t\t\t\t\turl = element.data('url'),\n\t\t\t\t\tparent = element.closest('.dashboardWidgetHeader').parent(),\n\t\t\t\t\twidgetTitle = parent.find('.js-widget__header__title').text().trim();\n\t\t\t\tapp.showConfirmModal({\n\t\t\t\t\ttitle: `${app.vtranslate('JS_ARE_YOU_SURE_TO_DELETE_WIDGET')} (${widgetTitle})<br>${app.vtranslate(\n\t\t\t\t\t\t'JS_ARE_YOU_SURE_TO_DELETE_WIDGET_INFO'\n\t\t\t\t\t)}`,\n\t\t\t\t\tconfirmedCallback: () => {\n\t\t\t\t\t\tAppConnector.request(url).done(function (response) {\n\t\t\t\t\t\t\tif (response.success) {\n\t\t\t\t\t\t\t\tparent.fadeOut('slow', function () {\n\t\t\t\t\t\t\t\t\tparent.remove();\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\tVtiger_DashBoard_Js.grid.removeWidget(listItem.get(0));\n\t\t\t\t\t\t\t\t$('.js-widget-list').prev('.js-widget-predefined').removeClass('d-none');\n\t\t\t\t\t\t\t\tlet data = `<a class=\"js-widget-list__item dropdown-item d-flex\" href=\"#\"\n\t\t\t\t\t\t\t\t\t\tdata-widget-url=\"${response.result.url}\" data-linkid=\"${response.result.linkid}\"\n\t\t\t\t\t\t\t\t\t\tdata-name=\"${response.result.name}\" data-width=\"${width}\" data-height=\"${height}\"\n\t\t\t\t\t\t\t\t\t\tdata-js=\"remove | click\">${response.result.title}`;\n\t\t\t\t\t\t\t\tif (response.result.deleteFromList) {\n\t\t\t\t\t\t\t\t\tdata += `<span class=\"text-danger pl-5 ml-auto\"><span class=\"fas fa-trash-alt removeWidgetFromList u-hover-opacity\" data-widget-id=\"${response.result.id}\" data-js=\"click\"></span></span>`;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdata += '</a>';\n\t\t\t\t\t\t\t\tlet divider = $('.js-widget-list .dropdown-divider');\n\t\t\t\t\t\t\t\tif (divider.length) {\n\t\t\t\t\t\t\t\t\t$(data).insertBefore(divider);\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$('.js-widget-list').append(data);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tself.updateLazyWidget();\n\t\t\t\t\t\t\t\tself.showAndHideAlert(false);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\t\tregisterSelectDashboard: function () {\n\t\t\tlet thisInstance = this;\n\t\t\t$('.selectDashboard li').on('click', function (e) {\n\t\t\t\tlet progressIndicatorElement = $.progressIndicator({\n\t\t\t\t\tposition: 'html',\n\t\t\t\t\tblockInfo: {\n\t\t\t\t\t\tenabled: true\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tlet currentTarget = $(e.currentTarget);\n\t\t\t\tlet dashboardId = currentTarget.data('id');\n\t\t\t\tlet params = {\n\t\t\t\t\tmodule: app.getModuleName(),\n\t\t\t\t\tview: app.getViewName(),\n\t\t\t\t\tdashboardId: dashboardId\n\t\t\t\t};\n\t\t\t\tAppConnector.request(params).done(function (data) {\n\t\t\t\t\tprogressIndicatorElement.progressIndicator({ mode: 'hide' });\n\t\t\t\t\t$('.dashboardViewContainer').html(data);\n\t\t\t\t\tthisInstance.noCache = true;\n\t\t\t\t\tthisInstance.registerEvents();\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\t\tregisterDatePickerHideInitiater: function () {\n\t\t\tlet container = this.getContainer();\n\t\t\tcontainer.on('click', 'input.dateRange', function (e) {\n\t\t\t\tlet widgetContainer = $(e.currentTarget).closest('.dashboardWidget');\n\t\t\t\tlet dashboardWidgetHeader = $('.dashboardWidgetHeader', widgetContainer);\n\n\t\t\t\tlet callbackFunction = function () {\n\t\t\t\t\tlet date = $('.dateRange');\n\t\t\t\t\tdate.DatePickerHide();\n\t\t\t\t\tdate.blur();\n\t\t\t\t};\n\t\t\t\t//adding clickoutside event on the dashboardWidgetHeader\n\t\t\t\tVtiger_Helper_Js.addClickOutSideEvent(dashboardWidgetHeader.find('.dateRange'), callbackFunction);\n\t\t\t\treturn false;\n\t\t\t});\n\t\t},\n\t\tregisterShowMailBody: function () {\n\t\t\tlet container = this.getContainer();\n\t\t\tcontainer.on('click', '.showMailBody', function (e) {\n\t\t\t\tlet widgetContainer = $(e.currentTarget).closest('.mailRow');\n\t\t\t\tlet mailBody = widgetContainer.find('.mailBody');\n\t\t\t\tlet bodyIcon = $(e.currentTarget).find('.body-icon');\n\t\t\t\tif (mailBody.css('display') == 'none') {\n\t\t\t\t\tmailBody.show();\n\t\t\t\t\tbodyIcon.removeClass('fa-chevron-down').addClass('fa-chevron-up');\n\t\t\t\t} else {\n\t\t\t\t\tmailBody.hide();\n\t\t\t\t\tbodyIcon.removeClass('fa-chevron-up').addClass('fa-chevron-down');\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tregisterMiniListWidget: function () {\n\t\t\tconst thisInstance = this;\n\t\t\t$('.dashboardHeading')\n\t\t\t\t.off('click', '.js-add-filter')\n\t\t\t\t.on('click', '.js-add-filter', function (e) {\n\t\t\t\t\tconst element = $(e.currentTarget);\n\t\t\t\t\tapp.showModalWindow(null, 'index.php?module=Home&view=MiniListWizard&step=step1', function (wizardContainer) {\n\t\t\t\t\t\tconst form = $('form', wizardContainer);\n\t\t\t\t\t\tform.on('keypress', function (event) {\n\t\t\t\t\t\t\treturn event.keyCode != 13;\n\t\t\t\t\t\t});\n\t\t\t\t\t\tconst moduleNameSelectDOM = $('select[name=\"module\"]', wizardContainer);\n\t\t\t\t\t\tconst filteridSelectDOM = $('select[name=\"filterid\"]', wizardContainer);\n\t\t\t\t\t\tconst fieldHrefDOM = $('select[name=\"field_href\"]', wizardContainer);\n\t\t\t\t\t\tconst fieldsSelectDOM = $('select[name=\"fields\"]', wizardContainer);\n\t\t\t\t\t\tconst filterFieldsSelectDOM = $('select[name=\"filter_fields\"]', wizardContainer);\n\t\t\t\t\t\tconst moduleNameSelect2 = App.Fields.Picklist.showSelect2ElementView(moduleNameSelectDOM, {\n\t\t\t\t\t\t\tplaceholder: app.vtranslate('JS_SELECT_MODULE')\n\t\t\t\t\t\t});\n\t\t\t\t\t\tconst filteridSelect2 = App.Fields.Picklist.showSelect2ElementView(filteridSelectDOM, {\n\t\t\t\t\t\t\tplaceholder: app.vtranslate('JS_PLEASE_SELECT_ATLEAST_ONE_OPTION'),\n\t\t\t\t\t\t\tdropdownParent: wizardContainer\n\t\t\t\t\t\t});\n\t\t\t\t\t\tconst fieldHrefSelect2 = App.Fields.Picklist.showSelect2ElementView(fieldHrefDOM, {\n\t\t\t\t\t\t\tallowClear: true\n\t\t\t\t\t\t});\n\t\t\t\t\t\tconst fieldsSelect2 = App.Fields.Picklist.showSelect2ElementView(fieldsSelectDOM, {\n\t\t\t\t\t\t\tplaceholder: app.vtranslate('JS_PLEASE_SELECT_ATLEAST_ONE_OPTION'),\n\t\t\t\t\t\t\tcloseOnSelect: true,\n\t\t\t\t\t\t\tmaximumSelectionLength: 6\n\t\t\t\t\t\t});\n\t\t\t\t\t\tconst filterFieldsSelect2 = App.Fields.Picklist.showSelect2ElementView(filterFieldsSelectDOM, {\n\t\t\t\t\t\t\tplaceholder: app.vtranslate('JS_PLEASE_SELECT_ATLEAST_ONE_OPTION')\n\t\t\t\t\t\t});\n\t\t\t\t\t\tconst footer = $('.modal-footer', wizardContainer);\n\t\t\t\t\t\tfilteridSelectDOM.closest('tr').hide();\n\t\t\t\t\t\tfieldsSelectDOM.closest('tr').hide();\n\t\t\t\t\t\tfieldHrefDOM.closest('tr').hide();\n\t\t\t\t\t\tfooter.hide();\n\t\t\t\t\t\tmoduleNameSelect2.on('change', function () {\n\t\t\t\t\t\t\tif (!moduleNameSelect2.val()) {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tfooter.hide();\n\t\t\t\t\t\t\tfieldsSelectDOM.closest('tr').hide();\n\t\t\t\t\t\t\tAppConnector.request({\n\t\t\t\t\t\t\t\tmodule: 'Home',\n\t\t\t\t\t\t\t\tview: 'MiniListWizard',\n\t\t\t\t\t\t\t\tstep: 'step2',\n\t\t\t\t\t\t\t\tselectedModule: moduleNameSelect2.val()\n\t\t\t\t\t\t\t}).done(function (res) {\n\t\t\t\t\t\t\t\tfilteridSelectDOM.empty().html(res).trigger('change');\n\t\t\t\t\t\t\t\tfilteridSelect2.closest('tr').show();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t\tfilteridSelect2.on('change', function () {\n\t\t\t\t\t\t\tif (!filteridSelect2.val()) {\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tAppConnector.request({\n\t\t\t\t\t\t\t\tmodule: 'Home',\n\t\t\t\t\t\t\t\tview: 'MiniListWizard',\n\t\t\t\t\t\t\t\tstep: 'step3',\n\t\t\t\t\t\t\t\tselectedModule: moduleNameSelect2.val(),\n\t\t\t\t\t\t\t\tfilterid: filteridSelect2.val()\n\t\t\t\t\t\t\t}).done(function (res) {\n\t\t\t\t\t\t\t\tconst responseHTML = $(res);\n\t\t\t\t\t\t\t\tconst fieldsHTML = responseHTML.find('select[name=\"fields\"]').html();\n\t\t\t\t\t\t\t\tconst filterFieldsHTML = responseHTML.find('select[name=\"filter_fields\"]').html();\n\t\t\t\t\t\t\t\tfieldsSelectDOM.empty().html(fieldsHTML).trigger('change');\n\t\t\t\t\t\t\t\tfieldsSelect2.closest('tr').show();\n\t\t\t\t\t\t\t\tfieldsSelect2.data('select2').$selection.find('.select2-search__field').parent().css('width', '100%');\n\t\t\t\t\t\t\t\tfilterFieldsSelectDOM.empty().html(filterFieldsHTML).trigger('change');\n\t\t\t\t\t\t\t\tfilterFieldsSelect2.closest('tr').show();\n\t\t\t\t\t\t\t\tfilterFieldsSelect2\n\t\t\t\t\t\t\t\t\t.data('select2')\n\t\t\t\t\t\t\t\t\t.$selection.find('.select2-search__field')\n\t\t\t\t\t\t\t\t\t.parent()\n\t\t\t\t\t\t\t\t\t.css('width', '100%');\n\t\t\t\t\t\t\t\tfieldHrefSelect2.closest('tr').show();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t\tfieldsSelect2.on('change', function () {\n\t\t\t\t\t\t\tfieldHrefDOM.find('option:not([value=\"\"]').remove();\n\t\t\t\t\t\t\t$(this)\n\t\t\t\t\t\t\t\t.find('option:checked')\n\t\t\t\t\t\t\t\t.each(function (index, element) {\n\t\t\t\t\t\t\t\t\tlet option = $(element);\n\t\t\t\t\t\t\t\t\tlet newOption = new Option(option.text(), option.val(), true, true);\n\t\t\t\t\t\t\t\t\tfieldHrefSelect2.append(newOption);\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tfieldHrefSelect2.val('').trigger('change');\n\t\t\t\t\t\t\tif (!fieldsSelect2.val()) {\n\t\t\t\t\t\t\t\tfooter.hide();\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tfooter.show();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tform.validationEngine(app.validationEngineOptions);\n\t\t\t\t\t\tform.on('submit', (e) => {\n\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\tif (form.validationEngine('validate') === true) {\n\t\t\t\t\t\t\t\tlet selectedFields = [];\n\t\t\t\t\t\t\t\tfieldsSelect2.select2('data').map((obj) => {\n\t\t\t\t\t\t\t\t\tselectedFields.push(obj.id);\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\tthisInstance.saveMiniListWidget(\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tmodule: moduleNameSelect2.val(),\n\t\t\t\t\t\t\t\t\t\tfields: selectedFields,\n\t\t\t\t\t\t\t\t\t\tfilterFields: filterFieldsSelect2.val(),\n\t\t\t\t\t\t\t\t\t\tfieldHref: fieldHrefSelect2.val()\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\telement,\n\t\t\t\t\t\t\t\t\tmoduleNameSelect2.find(':selected').text(),\n\t\t\t\t\t\t\t\t\tfilteridSelect2.val(),\n\t\t\t\t\t\t\t\t\tfilteridSelect2.find(':selected').text(),\n\t\t\t\t\t\t\t\t\tform\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t},\n\t\tsaveMiniListWidget: function (data, element, moduleNameLabel, filterid, filterLabel, form) {\n\t\t\tconst thisInstance = this,\n\t\t\t\tparamsForm = {\n\t\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\t\tblockid: element.data('block-id'),\n\t\t\t\t\tlinkid: element.data('linkid'),\n\t\t\t\t\tlabel: moduleNameLabel + ' - ' + filterLabel,\n\t\t\t\t\ttitle: form.find('[name=\"widgetTitle\"]').val(),\n\t\t\t\t\tname: 'Mini List',\n\t\t\t\t\tfilterid: filterid,\n\t\t\t\t\tisdefault: 0,\n\t\t\t\t\theight: 4,\n\t\t\t\t\twidth: 4,\n\t\t\t\t\towners_all: ['mine', 'all', 'users', 'groups'],\n\t\t\t\t\tdefault_owner: 'mine',\n\t\t\t\t\tdashboardId: thisInstance.getCurrentDashboard()\n\t\t\t\t},\n\t\t\t\tsourceModule = $('[name=\"selectedModuleName\"]').val();\n\t\t\tthisInstance.saveWidget(paramsForm, 'add', sourceModule, paramsForm.linkid, 'MiniList').done(function (data) {\n\t\t\t\tlet result = data['result'],\n\t\t\t\t\tparams = {};\n\t\t\t\tif (data['success']) {\n\t\t\t\t\tapp.hideModalWindow();\n\t\t\t\t\tparamsForm['id'] = result['id'];\n\t\t\t\t\tparamsForm['status'] = result['status'];\n\t\t\t\t\tparams['text'] = result['text'];\n\t\t\t\t\tparams['type'] = 'success';\n\t\t\t\t\tlet linkElement = element.clone();\n\t\t\t\t\tlinkElement.data('name', 'MiniList');\n\t\t\t\t\tlinkElement.data('id', result['wid']);\n\t\t\t\t\tthisInstance.addWidget(\n\t\t\t\t\t\tlinkElement,\n\t\t\t\t\t\t'index.php?module=Home&view=ShowWidget&name=MiniList&linkid=' +\n\t\t\t\t\t\t\telement.data('linkid') +\n\t\t\t\t\t\t\t'&widgetid=' +\n\t\t\t\t\t\t\tresult['wid'] +\n\t\t\t\t\t\t\t'&active=0'\n\t\t\t\t\t);\n\t\t\t\t\tVtiger_Helper_Js.showMessage(params);\n\t\t\t\t} else {\n\t\t\t\t\tlet message = data['error']['message'],\n\t\t\t\t\t\terrorField;\n\t\t\t\t\tif (data['error']['code'] != 513) {\n\t\t\t\t\t\terrorField = form.find('[name=\"fieldName\"]');\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorField = form.find('[name=\"fieldLabel\"]');\n\t\t\t\t\t}\n\t\t\t\t\terrorField.validationEngine('showPrompt', message, 'error', 'topLeft', true);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tsaveWidget: function (form, mode, sourceModule, linkid, type) {\n\t\t\tlet aDeferred = $.Deferred();\n\t\t\tlet progressIndicatorElement = $.progressIndicator({\n\t\t\t\tposition: 'html',\n\t\t\t\tblockInfo: {\n\t\t\t\t\tenabled: true\n\t\t\t\t}\n\t\t\t});\n\t\t\tif (typeof sourceModule === 'undefined') {\n\t\t\t\tsourceModule = app.getModuleName();\n\t\t\t}\n\t\t\tlet params = {\n\t\t\t\tform: form,\n\t\t\t\tmodule: app.getModuleName(),\n\t\t\t\tsourceModule: sourceModule,\n\t\t\t\taction: 'Widget',\n\t\t\t\tmode: mode,\n\t\t\t\taddToUser: true,\n\t\t\t\tlinkid: linkid,\n\t\t\t\tname: type\n\t\t\t};\n\t\t\tAppConnector.request(params)\n\t\t\t\t.done(function (data) {\n\t\t\t\t\tprogressIndicatorElement.progressIndicator({ mode: 'hide' });\n\t\t\t\t\taDeferred.resolve(data);\n\t\t\t\t})\n\t\t\t\t.fail(function (error) {\n\t\t\t\t\tprogressIndicatorElement.progressIndicator({ mode: 'hide' });\n\t\t\t\t\taDeferred.reject(error);\n\t\t\t\t});\n\t\t\treturn aDeferred.promise();\n\t\t},\n\t\tregisterTabModules: function () {\n\t\t\tlet thisInstance = this;\n\t\t\t$('.selectDashboradView li').on('click', function (e) {\n\t\t\t\tlet currentTarget = $(e.currentTarget);\n\t\t\t\t$('.selectDashboradView li').removeClass('active');\n\t\t\t\tcurrentTarget.addClass('active');\n\t\t\t\tlet params = {\n\t\t\t\t\tmodule: currentTarget.data('module'),\n\t\t\t\t\tview: app.getViewName(),\n\t\t\t\t\tsourceModule: app.getModuleName(),\n\t\t\t\t\tdashboardId: thisInstance.getCurrentDashboard()\n\t\t\t\t};\n\t\t\t\tAppConnector.request(params).done(function (data) {\n\t\t\t\t\t$('.dashboardViewContainer').html(data);\n\t\t\t\t\tthisInstance.noCache = true;\n\t\t\t\t\tthisInstance.registerEvents();\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\t\t/**\n\t\t * Remove widget from list\n\t\t */\n\t\tremoveWidgetFromList: function () {\n\t\t\tconst thisInstance = this;\n\t\t\t$('.dashboardHeading').on('click', '.removeWidgetFromList', function (e) {\n\t\t\t\tlet currentTarget = $(e.currentTarget);\n\t\t\t\tlet id = currentTarget.data('widget-id');\n\t\t\t\tlet params = {\n\t\t\t\t\tmodule: app.getModuleName(),\n\t\t\t\t\taction: 'Widget',\n\t\t\t\t\tmode: 'removeWidgetFromList',\n\t\t\t\t\twidgetid: id\n\t\t\t\t};\n\t\t\t\tAppConnector.request(params).done(function (data) {\n\t\t\t\t\tlet params = {\n\t\t\t\t\t\ttext: app.vtranslate('JS_WIDGET_DELETED'),\n\t\t\t\t\t\ttype: 'success'\n\t\t\t\t\t};\n\t\t\t\t\tVtiger_Helper_Js.showMessage(params);\n\t\t\t\t\tcurrentTarget.closest('.js-widget-list__item').remove();\n\t\t\t\t\tif ($('.js-widget-list .js-widget-list__item').length < 1) {\n\t\t\t\t\t\t$('.js-widget-list').prev('.js-widget-predefined').addClass('d-none');\n\t\t\t\t\t}\n\t\t\t\t\tthisInstance.updateLazyWidget();\n\t\t\t\t});\n\t\t\t});\n\t\t},\n\t\t/**\n\t\t * Updates tablet scroll top position\n\t\t */\n\t\tregisterTabletScrollEvent() {\n\t\t\tif (!app.touchDevice || !Quasar.plugins.Platform.is.desktop) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet scollbarContainer = $('.js-tablet-scroll');\n\t\t\tscollbarContainer.parent().removeClass('d-none');\n\n\t\t\tlet scollbarContainerH = scollbarContainer.outerHeight(),\n\t\t\t\tscollbarOffsetTop = scollbarContainer.offset().top,\n\t\t\t\tmaxOffset = $('.js-header').outerHeight() + 8;\n\n\t\t\tthis.scrollContainer.on('scroll', () => {\n\t\t\t\tif (this.scrollContainer.scrollTop() + maxOffset >= scollbarOffsetTop) {\n\t\t\t\t\tscollbarContainer.css({ top: maxOffset });\n\t\t\t\t} else {\n\t\t\t\t\tscollbarContainer.css({\n\t\t\t\t\t\ttop: scollbarOffsetTop - this.scrollContainer.scrollTop(),\n\t\t\t\t\t\theight: scollbarContainerH + this.scrollContainer.scrollTop()\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\t/**\n\t\t * Updates list of predefined widgets after changed dashboard\n\t\t */\n\t\tregisterUpdatePredefinedWidgets: function () {\n\t\t\tlet container = $('.js-predefined-widgets');\n\t\t\tcontainer.off('click', '.js-widget-list__item');\n\t\t\tcontainer.on('click', '.js-widget-list__item', (e) => {\n\t\t\t\tif (!$(e.target).hasClass('removeWidgetFromList')) {\n\t\t\t\t\tthis.addWidget($(e.currentTarget), $(e.currentTarget).data('widgetUrl'));\n\t\t\t\t}\n\t\t\t});\n\t\t\tAppConnector.request({\n\t\t\t\tview: 'BasicAjax',\n\t\t\t\tmode: 'getDashBoardPredefinedWidgets',\n\t\t\t\tmodule: app.getModuleName(),\n\t\t\t\tdashboardId: this.getCurrentDashboard()\n\t\t\t}).done((data) => {\n\t\t\t\tcontainer.html(data);\n\t\t\t});\n\t\t},\n\t\taddWidget(element, url) {\n\t\t\telement = $(element);\n\t\t\tlet linkId = element.data('linkid');\n\t\t\tlet name = element.data('name');\n\t\t\tlet widgetId = element.data('id');\n\t\t\telement.remove();\n\t\t\tif ($('.js-widget-list .js-widget-list__item').length < 1) {\n\t\t\t\t$('.js-widget-list').prev('.js-widget-predefined').addClass('d-none');\n\t\t\t}\n\t\t\tlet widget = Vtiger_DashBoard_Js.grid.addWidget(\n\t\t\t\t`<div class=\"grid-stack-item js-css-element-queries\" data-js=\"css-element-queries\"><div id=\"${linkId}-${widgetId}\" data-name=\"${name}\" data-mode=\"open\" class=\"grid-stack-item-content dashboardWidget new\" data-url=\"${url}\"></div></div>`,\n\t\t\t\t{\n\t\t\t\t\tw: element.data('width'),\n\t\t\t\t\th: element.data('height'),\n\t\t\t\t\tauto_position: true\n\t\t\t\t}\n\t\t\t);\n\t\t\tVtiger_DashBoard_Js.currentInstance.loadWidget($(widget).find('.grid-stack-item-content'));\n\t\t\tthis.showAndHideAlert('addWidget');\n\t\t},\n\n\t\t/**\n\t\t * Show or hide the alert for a dashboard.\n\t\t * @param {string} widgetAction\n\t\t */\n\t\tshowAndHideAlert(widgetAction) {\n\t\t\tlet container = this.getContainer();\n\t\t\tlet alertContainer = container.find('.js-dashboards-alert');\n\t\t\tif (widgetAction === 'addWidget') {\n\t\t\t\talertContainer.addClass('d-none');\n\t\t\t} else if (container.find('.js-css-element-queries').length == 0) {\n\t\t\t\talertContainer.removeClass('d-none');\n\t\t\t}\n\t\t},\n\n\t\tregisterEvents: function () {\n\t\t\tthis.registerGrid();\n\t\t\tthis.registerRefreshWidget();\n\t\t\tthis.removeWidget();\n\t\t\tthis.registerDatePickerHideInitiater();\n\t\t\tthis.registerShowMailBody();\n\t\t\tthis.registerMiniListWidget();\n\t\t\tthis.registerTabModules();\n\t\t\tthis.removeWidgetFromList();\n\t\t\tthis.registerSelectDashboard();\n\t\t\tthis.registerTabletScrollEvent();\n\t\t\tthis.registerUpdatePredefinedWidgets();\n\t\t\tElementQueries.listen();\n\t\t}\n\t}\n);\n"],"names":["$","Class","grid","currentInstance","scrollContainer","restrictContentDrag","container","on","e","element","target","isHeaderElement","closest","length","stopPropagation","noCache","instancesCache","init","Vtiger_DashBoard_Js","getContainer","getCurrentDashboard","dashboardId","data","getWidgetInstance","widgetContainer","id","attr","widgetName","Vtiger_Widget_Js","getInstance","registerGrid","self","GridStack","margin","cellHeight","alwaysShowResizeHandle","test","navigator","userAgent","savePositions","find","loadWidgets","width","parent","parentWidth","css","widgets","_this","widgetRowColPositions","widgetSizes","each","_index","widget","widgetId","row","col","height","loadScrollbar","updateLazyWidget","AppConnector","request","module","app","getModuleName","action","mode","position","size","scrollTop","thisInstance","App","Components","Scrollbar","page","Quasar","plugins","Platform","is","desktop","showNewScrollbar","Lazy","threshold","appendScroll","widgetLoader","loadWidget","urlParams","moduleName","sourceModule","progressIndicator","name","userId","CONFIG","cacheUrl","cacheGet","done","html","Fields","Picklist","showSelect2ElementView","Tree","register","trigger","widgetPostLoadEvent","adjustHeightWidget","remove","fail","textStatus","errorThrown","errorObj","debug","responseText","url","convertUrlToObject","view","convertObjectToUrl","prepend","concat","showNotify","title","vtranslate","type","headerHeight","outerHeight","adjustedHeight","widgetContent","wheelPropagation","registerRefreshWidget","currentTarget","refreshWidget","removeWidget","listItem","parents","widgetTitle","text","trim","showConfirmModal","confirmedCallback","response","success","fadeOut","get","prev","removeClass","result","linkid","deleteFromList","divider","insertBefore","append","showAndHideAlert","registerSelectDashboard","progressIndicatorElement","blockInfo","enabled","params","getViewName","registerEvents","registerDatePickerHideInitiater","dashboardWidgetHeader","Vtiger_Helper_Js","addClickOutSideEvent","callbackFunction","date","DatePickerHide","blur","registerShowMailBody","mailBody","bodyIcon","show","addClass","hide","registerMiniListWidget","off","showModalWindow","wizardContainer","form","event","keyCode","moduleNameSelectDOM","filteridSelectDOM","fieldHrefDOM","fieldsSelectDOM","filterFieldsSelectDOM","moduleNameSelect2","placeholder","filteridSelect2","dropdownParent","fieldHrefSelect2","allowClear","fieldsSelect2","closeOnSelect","maximumSelectionLength","filterFieldsSelect2","footer","val","step","selectedModule","res","empty","filterid","responseHTML","fieldsHTML","filterFieldsHTML","$selection","index","option","newOption","Option","validationEngine","validationEngineOptions","preventDefault","selectedFields","select2","map","obj","push","saveMiniListWidget","fields","filterFields","fieldHref","moduleNameLabel","filterLabel","paramsForm","JSON","stringify","blockid","label","isdefault","owners_all","default_owner","saveWidget","hideModalWindow","status","linkElement","clone","wid","addWidget","showMessage","errorField","message","error","code","aDeferred","Deferred","addToUser","resolve","reject","promise","registerTabModules","removeWidgetFromList","widgetid","registerTabletScrollEvent","_this2","touchDevice","scollbarContainer","scollbarContainerH","scollbarOffsetTop","offset","top","maxOffset","registerUpdatePredefinedWidgets","_this3","hasClass","linkId","w","h","auto_position","widgetAction","alertContainer","ElementQueries","listen"],"mappings":"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"}