Hello,
Hope the WHMCS Community is fine.
I am working on improving many things through updating from WHMCS 7 to 8, to make things easier for customers. And now, I am working on this…
Customizing Single Sign-On Shortcuts from WHMCS => to cPanel Account, to add more shortcut icons :
https://docs.whmcs.com/CPanel_Single_Sign-On
I want to add few more icons in the clientareaproductdetails.tpl (working on /modules/servers/cpanel/templates/overview.tpl), for example in my case :
- FTP Accounts
- Select PHP Version (LVE live)
- WordPress Toolkit
- Imunify360
- Security Policy
...
By inspecting the implements JSON parameter in the cPanel user homepage public code, I was already able to successfully find somethings cool :
- app=SSL_TLS_Status
- app=Softaculous_Home
(yeah I need these one! it's better than nothing)
You can also find things with these command lines on your cPanel server :
> whmapi1 get_users_links user=USER
This will show all available apps for an user, example of output :
data:
API_Tokens_Manager: frontend/paper_lantern/api_tokens/index.html
Backups_Home: frontend/paper_lantern/backup/index.html
Calendar_Configure: frontend/paper_lantern/mail/calendars_and_contacts/index.html
ContactInfo_Change: frontend/paper_lantern/contact/index.html
Cron_Home: frontend/paper_lantern/cron/index.html
Database_MySQL: frontend/paper_lantern/sql/index.html
Database_phpMyAdmin: frontend/paper_lantern/sql/PhpMyAdmin.html
Domains_AddonDomains: frontend/paper_lantern/addon/index.html
Domains_SubDomains: frontend/paper_lantern/subdomain/index.html
Email_AccountLevelFiltering: frontend/paper_lantern/mail/filters/userfilters.html
Email_Accounts: frontend/paper_lantern/email_accounts/index.html
Email_Archive: frontend/paper_lantern/mail/archive.html
Email_Authentication: frontend/paper_lantern/email_deliverability/
Email_AutoResponders: frontend/paper_lantern/mail/autores.html
Email_BoxTrapper: frontend/paper_lantern/mail/boxtrapper.html
Email_DefaultAddress: frontend/paper_lantern/mail/def.html
Email_DeliveryReport: frontend/paper_lantern/mail/route.html
Email_Disk_Usage: frontend/paper_lantern/mail/manage_disk_usage/
Email_Forwarders: frontend/paper_lantern/mail/fwds.html
Email_GreyListing: frontend/paper_lantern/mail/greylisting/index.html
Email_MailingLists: frontend/paper_lantern/mail/lists.html
Email_Routing: frontend/paper_lantern/mail/email_routing.html
Email_SpamFilter: frontend/paper_lantern/mail/spam/index.html
Email_UserLevelFiltering: frontend/paper_lantern/mail/filters/managefilters.html
FileManager_Home: frontend/paper_lantern/filemanager/index.html
Locale_Change: frontend/paper_lantern/setlang/index.html
Password_Change: frontend/paper_lantern/passwd/index.html
SSL_TLS_Manager: frontend/paper_lantern/ssl/index.html
SSL_TLS_Status: frontend/paper_lantern/security/tls_status/
SSL_TLS_Wizard: frontend/paper_lantern/security/tls_wizard/
Site_Software: frontend/paper_lantern/addoncgi/cpaddons.html
Softaculous_Home: frontend/paper_lantern/softaculous/index.live.php
Softaculous_WordPress: frontend/paper_lantern/softaculous/index.live.php?act=wordpress
Stats_AWStats: frontend/paper_lantern/stats/awstats_landing.html
WHMCS_clientarea_announcements: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_announcements
WHMCS_clientarea_billing_info: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_billing_info
WHMCS_clientarea_downloads: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_downloads
WHMCS_clientarea_emails: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_emails
WHMCS_clientarea_invoices: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_invoices
WHMCS_clientarea_knowledgebase: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_knowledgebase
WHMCS_clientarea_network_status: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_network_status
WHMCS_clientarea_profile: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_profile
WHMCS_clientarea_shopping_cart_domain_register: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_shopping_cart_domain_register
WHMCS_clientarea_shopping_cart_domain_transfer: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_shopping_cart_domain_transfer
WHMCS_clientarea_submit_ticket: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_submit_ticket
billing: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_product_details
support: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_tickets
upgrade: frontend/paper_lantern/integration/index.html?app=WHMCS_clientarea_upgrade
> uapi --user=USER Branding get_applications app_keys=FEATUREKEY
Example :
> uapi --user=username Branding get_applications app_keys=tls_status,ftp_accounts
Here is the output :
result:
data:
ftp_accounts:
acontent: ''
base64_png_image: ''
feature: ftpaccts
file: ftp_accounts
group: files
height: 48
if: $SERVICEPROVIDED{'ftp'}
imgtype: icon
itemdesc: Comptes FTP
itemorder: 6
key: ftp_accounts
onclick: ''
plainitemdesc: FTP Accounts
searchtext: Comptes FTP créer ftp
subtype: img
target: ''
touch: ftp
type: image
url: ftp/accounts.html
width: 48
tls_status:
acontent: ''
base64_png_image: ''
feature: sslinstall
file: tls_status
group: security
height: 48
if: $HASROLE{'UserSSL'}
imgtype: icon
implements: SSL_TLS_Status # HERE IS WHAT WE NEED
itemdesc: SSL/TLS Status
itemorder: 7
key: tls_status
onclick: ''
plainitemdesc: "[asis,SSL]/[asis,TLS] Status"
searchtext: SSL/TLS Status
subtype: img
target: ''
type: image
url: security/tls_status/
width: 48
We have to find implements parameter and value, like this :
implements: SSL_TLS_Status
implements: Softculous_Home
But these implements/appkeys parameters are missing for :
- FTP_Accounts,
- PHP_Selector,
- WordPress_Toolkit,
- Imunify360,
- Security_Policy…
and many other commons features.
…then I am not able to figure out :
How to redirect customers from WHMCS client area => to these cPanel specific Features ?
As you can see on my french screenshot, I already made the icon. It would be very nice for the user experience to be able to do that, do you think so ?
The question is :
How to add implements parameter to an existing cPanel plugin or feature ?
Thanks in advance for any help or any clue to help me to achieve my dream.
Thanks!