Dashlet Categories links unresponsive

Hi All,

I have a problem with Dashlets on a production system. This issue is affecting all users

I cannot navigate on the categories tabs (Charts, Tools, Web). They do nothing when clicked.
The dashlet for the Modules tab are displayed however clicking on the other tabs does not display the corresponding dashlets.

If you first add a dashlet from the Modules category, the other categories become clickable and will display the dashlets for these categories.

I have found a report of the same issue on the github forum related to v7.9.8. I tried the solution proposed in that thread but it didn’t work for me.

My environment is:
SuiteCRM v7.11.12
SuiteP
PHP 7.3
Apache

Hi @living1108 ,

Have you tried running a repair option yet?

Navigate to (Home > Admin Menu > Repair) and run the following:

  • Quick Repair and Rebuild

  • Rebuild JS Grouping Files

  • Rebuild Minified JS Files

There is a known issue with specific version so i would recommend upgrading to the latest 7.11 version which is known to not have this issue.

Let me know if any of this works!

Thanks for your response Mac-Rae.

I tried the repair/rebuild operations as you suggested but the issue is not fixed.
I’ll do an upgrade to 7.11.15 overnight and update this with the result tomorrow.

1 Like

Update…

The upgrade from v7.11.12 to v7.11.15 did not fix this issue.

Try from Admin / Repairs:

Quick Repair and Rebuild
Rebuild dashlets
rebuild Javascript

1 Like

The issue is still there after doing;

  1. Quick Repair and Rebuild
  2. Rebuild dashlets
  3. rebuild Javascript

The problem seems to be caused by code in “include/MySugar/javascript/MySugar.js->toggleDashletCategories()”.

https://github.com/salesagility/SuiteCRM/issues/4930 describes this issue exactly.

Inspecting the html of the Dashlets popup dialog shows two (2) elements <div id=“dashletsList” class=“modal-body” …> and <div id=“dashletsList” class=“bd” …>
Removing the <div id=“dashletsList” class=“bd” …> node (and it’s children!) from the tree allows the code in MySugar.js->toggleDashletCategories() to work properly.

I’ll attempt to change MySugar.js->toggleDashletCategories() based on the suggestions made by rebbieboi and update this thread when I know more.

1 Like

Problem with Dashlet tabs fixed after making the following changes to MySugar.js->toggleDashletCategories()
Code adapted from here: https://github.com/salesagility/SuiteCRM/issues/4930

/* 
// file: include/MySugar/javascript/MySugar.js
// Original code starts at about line 505
//
var moduleTab = document.getElementById('moduleCategory');
var moduleTabAnchor = document.getElementById('moduleCategoryAnchor');
var moduleListDiv = document.getElementById('moduleDashlets');

var chartTab = document.getElementById('chartCategory');
var chartTabAnchor = document.getElementById('chartCategoryAnchor');
var chartListDiv = document.getElementById('chartDashlets');

var toolsTab = document.getElementById('toolsCategory');
var toolsTabAnchor = document.getElementById('toolsCategoryAnchor');
var toolsListDiv = document.getElementById('toolsDashlets');

var webTab = document.getElementById('webCategory');
var webTabAnchor = document.getElementById('webCategoryAnchor');
var webListDiv = document.getElementById('webDashlets');
 */
		
// initialize vars (javascript objects) with Dashlet elements 
//... Note '.modal-body' in the jquery Selector
var moduleTab = $(".modal-body #moduleCategory").get(0);
var moduleTabAnchor = $(".modal-body #moduleCategoryAnchor").get(0);
var moduleListDiv = $(".modal-body #moduleDashlets").get(0);

var chartTab = $(".modal-body #chartCategory").get(0);
var chartTabAnchor = $(".modal-body #chartCategoryAnchor").get(0);
var chartListDiv = $(".modal-body #chartDashlets").get(0);

var toolsTab = $(".modal-body #toolsCategory").get(0);
var toolsTabAnchor = $(".modal-body #toolsCategoryAnchor").get(0);
 var toolsListDiv = $(".modal-body #toolsDashlets").get(0);

 var webTab = $(".modal-body #webCategory").get(0);
 var webTabAnchor = $(".modal-body #webCategoryAnchor").get(0);
 var webListDiv = $(".modal-body #webDashlets").get(0);
// End of  initialization

Can you please post on the GitHub issue saying it also happened to you on 7.11.12?

And do you have any custom add-ons, or custom dashlets defined by yourself? Or provide a “steps to reproduce” that works for everyone (you can try it on the live demo, for example).