Jump to content

WHMCS Quick Shortcuts Bug


Recommended Posts

WHMCS John
This post was recognized by WHMCS John!

Dragos Boroianu was awarded the badge 'Great Content' and 10 points.

WHMCS Quick Shortcuts are a great help, especially in the web hosting industry and for companies that want a smooth transition between the client area panel offered by WHMCS and the cPanel interface offered by the server. The synergy between different software solutions is pivotal for efficient and user-friendly experiences. Recently, a significant issue has emerged regarding the integration of WHMCS (Web Host Manager Complete Solution) and cPanel, particularly in the context of Quick Shortcuts feature. 

Understanding the Problem

The core of the issue lies in the Quick Shortcuts panel offered by WHMCS for cPanel servers. WHMCS, a popular web hosting management solution, offers these shortcuts to provide users with easy access to various cPanel features, like direct access to E-mail Accounts, Databases, phpMyAdmin, or even File Manager and Cron Jobs.

WHMCS Quick Shortcuts

However, a recent change in cPanel's interface, specifically in its Jupiter theme, has rendered some of these shortcuts obsolete. In January 2023, cPanel announced in its release notes that it had removed the Addon Domains, Subdomains, and Alias Domains interfaces from the Jupiter theme. Instead, these functions were consolidated under a single interface called "Domains". This change aims to streamline the domain management process in cPanel, making it more intuitive and less fragmented.

However, this update has inadvertently caused a discrepancy with WHMCS's Quick Shortcuts. The shortcuts for 'Subdomains' and 'Addon Domains' in WHMCS are no longer valid, as these options have been merged under the singular 'Domains' option in cPanel. When users click on these outdated shortcuts, they are redirected to the cPanel homepage instead of the intended section, causing confusion and inefficiency, especially for those not well-versed in technical nuances.

Technical Analysis

A deeper dive into WHMCS's code reveals the root of the problem. In WHMCS, the Quick Shortcuts are implemented in the /home/user/whmcs_public_html/modules/servers/cpanel/templates/overview.tpl file. This file contains HTML divs that define each shortcut, including its visual representation and hyperlink. The URLs for these shortcuts use a specific structure, with a crucial 'app=' parameter that dictates the redirection endpoint within cPanel. Here is an example of the URL for the let's say "Addon Domains" button:

clientarea.php?action=productdetails&id={$serviceid}&dosinglesignon=1&app=Domains_AddonDomains

As you can see, the WHMCS URL path ends with "app=Domains_AddonDomains" but cPanel doesn't know about this "App" anymore since Addon Domains were merged to "Domains". Given the changes in cPanel, the existing URLs for Subdomains and Addon Domains shortcuts are now incorrect. The question arises: what should be the new 'app=' parameter value to redirect users to the consolidated Domains interface correctly?

Solution and Implementation

To address this issue, a two-fold solution is required: updating the WHMCS template and modifying cPanel's configuration.

Step 1: Updating the WHMCS Template

  1. Locate the Template File: Navigate to /home/user/whmcs_public_html/modules/servers/cpanel/templates/overview.tpl.
  2. Modify the HTML Divs: Replace the existing divs for Subdomains and Addon Domains with a single div pointing to the new Domains interface. This requires updating the URL in the href attribute to redirect to the Domains page in cPanel correctly. In this solution, the App name should be "Domains_Home" so the correct URL will end with: &app=Domains_Home

Step 2: Configuring cPanel

  1. Identify the Configuration File: The relevant file is /usr/local/cpanel/base/frontend/jupiter/dynamicui.conf.
  2. Add the Necessary Line: Implement the line "implements": "Domains_Home", in the correct block of text within this file. This new line should be added just above this line "url": "domains/index.html", this way, you make sure that the Domains interface is correctly invoked.

In short, on the cPanel server, you must replace it in the dynamicui.conf file, these lines:

"url": "domains/index.html",
"type": "image",
"key": "domains"

With this (I hope you got the idea):

"url": "domains/index.html",
"implements": "Domains_Home",
"type": "image",
"key": "domains"

NOTE: You can use any name you want. Instead of "Domains_Home" you can use, let's say, "Awesome_Fix" as long in WHMCS the app=Awesome_Fix and in cPanel dynamicui. conf the implements line says "Awesome_Fix" it will work 🙂

Link to comment
Share on other sites

  • WHMCS Support Manager

Hi @Dragos Boroianu,

Thanks for providing these details and the workaround. We have case MODULE-7936 open on our side, so that we can coordinate with cPanel to affect a resolution.

It seems the Domains_SubDomains app parameter value in the create_user_session API command not redirecting users to the Domains page in Jupiter theme.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use & Guidelines and understand your posts will initially be pre-moderated