Changelog:WHMCS V7.7.0 Beta 1
Implemented
FEATURE-1550 - Add native Tax ID/VAT Number field to Clients and Contacts
FEATURE-1635 - Provide drag and drop support for admin dashboard widgets
FEATURE-1789 - Add ability to hide inactive clients by default with toggle functionality to reveal them
FEATURE-1792 - Group inactive clients at the bottom of client dropdown menus
FEATURE-1990 - Implement new Apps and Integrations module discovery center
FEATURE-2007 - Add payment gateway module for BitPay
FEATURE-2011 - Implement Invisible reCAPTCHA support to more areas of the product
FEATURE-2016 - Add support for Amazon S3 and S3 compatible storage providers for file uploads
FEATURE-2035 - Provide support for sessions to be stored in the database
FEATURE-2043 - Update and improve usability of Tax Configuration within admin area
FEATURE-2052 - Implement fraud module for FraudLabs Pro
FEATURE-2062 - Implement new design and functionality to Intelligent Search
FEATURE-2066 - Improve functionality available to developers in Intelligent Search hook
FEATURE-2067 - Allow retrieval of more than 10 results in Intelligent Search
FEATURE-2070 - Implement CodeGuard Website Backup provisioning via MarketConnect
FEATURE-2075 - Add payment gateway module for GoCardless
FEATURE-2079 - Store country at time of invoice generation for use in VAT MOSS reporting
FEATURE-2085 - Implement SSL Status Monitoring for domains within the client area
FEATURE-2086 - Implement SSL Status Monitoring for admin users
FEATURE-2104 - Provide option to hide inactive clients in intelligent search
Maintenance
CORE-6110 (#2765) - Update tables to have primary keys
CORE-8446 - Inspect for concurrent payment during Cron suspension
CORE-10559 - Clarify PayPal configuration description noting that a Notification URL must be set
Also known as: MODULE-6565
CORE-10794 - Display appropriate domain search error message for domains already in the system
Also known as: CORE-12017
CORE-10899 - Detect and notify when pop cron is failing to complete
CORE-11301 - Observe variable param changes returned by PreModuleCreate hook
CORE-11858 - Prevent erroneous automated cancellation notifications for upgrade orders cancelled prior to payment
CORE-11874 - Ensure correct appropriate user IDs are referenced in Activity Log
CORE-11926 - Add space to "Setup Fee" string used for Product Addons
CORE-11927 - Normalize link value in merge field $quote_link
CORE-11956 - Ensure ClientDetailsValidation hook is triggered when adding client via Admin area
CORE-12055 - Prevent Auto Data Retention deletion of affiliates and free product only clients
CORE-12266 - Correct Pre/AfterRegistrar hook parameters
CORE-12298 - Correct "Manage SSL Certificates" button link
CORE-12372 - Correct Google reCAPTCHA on homepage domain checker
CORE-12440 - Update Plesk for MarketConnect automatic SSL provisioning
CORE-12445 - Ensure parent product is suspended according to suspended addon's settings
CORE-12564 - Prevent intelligent search rendering login page when session has expired
CORE-12572 - Provide indicator when viewing an order where fraud check was skipped due to existing active order
CORE-12576 - Correct syntax for SpamExperts Welcome Email
Also known as: CORE-11571
CORE-12577 - Ensure additional data is provided on resend of MarketConnect emails
CORE-12585 - Correct addon relation following merge of clients records
CORE-12598 - Update MDE editor to use FontAwesome 5 icons
Also known as: CORE-12605
CORE-12610 - Implement 'pop_cron_debug' configuration setting to allow cron output via web invocation
CORE-12611 - Improve scheme detection on /dologin.php
CORE-12623 - Display domain renewal link notification only if Domain Renewals are enabled.
CORE-12636 - Inspect menu item's 'btn-icon' for Font Awesome & prepend style appropriately
CORE-12646 - Correct credit transaction attribution for merged invoices
CORE-12663 - Ensure "Forgot password" in login.tpl is an absolute path
CORE-12664 - Update admin email notification footer to include ALT tag for logo
CORE-12666 - Refine subdomain detection for "Existing Domain" option in cart
Also known as: CORE-10825, CORE-12733
CORE-12674 - Correct itemized minimum MySQL version within Installer
CORE-12679 - Correct evaluation of domain sync cron schedule setting
CORE-12680 - Allow premium domain configuration when using Whmcs Namespinning lookup provider
CORE-12683 - Provide translation strings for MarketConnect promos and upsells
CORE-12685 - Clarify documentation about when PreCronJob hook point is triggered
CORE-12693 - Correct various Font Awesome icon references
CORE-12694 - Update ECB Exchange Rates URL
CORE-12702 - Correct typo in OrderDomainPricingOverride documentation
CORE-12712 - Improve error handling of invalid domain name search when using WHMCS Namespinner
CORE-12713 - Restore phone fields to formatted values on form reset
CORE-12720 - Correct ClientLogout Hook Description
CORE-12722 - Ensure contact details are supplied for Enom transfers
Also known as: CORE-12130
CORE-12724 - Ensure correct domain renewal invoice is cancelled after the domain has expired
CORE-12726 - Update requirement of .vote|.voto additional domain fields for registration
CORE-12729 - Update legal address in EULA
CORE-12734 - Prevent duplicate invocations of AddonActivation when accepting order
CORE-12735 - Ensure AdminAreaViewTicktPageSidebar hook outputs to sidebar
CORE-12736 - Extend OrderDomainPricingOverride hook to allow overriding both first payment and recurring values
CORE-12738 - Improve UX of admin selectize client dropdown when no clients exist
CORE-12741 - Display "Auto-Terminate End of Cycle" option as checked to admins when viewing clients' immediate cancellation requests
CORE-12756 - Require "Manage Domains" contact permission for domain auto renewal setting
CORE-12757 - Correct evaluation of tax calculation method for domain renewals
CORE-12762 - Update WHOIS server for .ws
CORE-12766 - Correct display of quantities less than 1 whole item on printable quote
CORE-12768 - Ensure TinyMCE theme is available for mobile browsers
Also known as: CORE-12820
CORE-12789 - Improve styling of Add Server UI
CORE-12790 - Improve styling of Admin Area Terminate Account modal
CORE-12791 - Ensure Ticket Mail Import Log associates attachments to respective ticket
CORE-12797 - Prevent spurious MySQL errors when aggregating Support widget recent ticket count
CORE-12808 - Correct upgrade calculation for billing cycle changes
CORE-12809 - Update MarketConnect DigiCert logo
CORE-12810 - Update jQuery UI to v1.12.1
CORE-12816 - Ensure renewal notices are sent for domains in grace and grace redemption status
CORE-12822 - Show indication in shopping cart when promo is limited to a set number of recurring cycles
CORE-12824 - Disallow next due date changes for one-time addons
CORE-12827 - Prevent fatal error when updating domain contact details from admin area
Also known as: MODULE-6913
CORE-12834 - Update .mx WHOIS server
CORE-12836 - Add note to upgrade order when Credit On Downgrade is disabled
CORE-12848 - Correct evaluation of disabled captcha for domain transfers in cart
CORE-12850 - Update .ac WHOIS server
CORE-12858 - Correct example for OverrideOrderNumberGeneration hook
CORE-12860 - Correct Smarty template syntax in clientregister.tpl
CORE-12866 - Prevent spurious error when filtering billable items
CORE-12867 - Set "MAIL FROM" to System From Email on contact form emails for SMTP setting interoperability
CORE-12871 - Correct SQL for addon suspending via the module queue
CORE-12872 - Only render "Create Add Funds Invoice" option if admin has "Create Invoices" role
CORE-12882 - Improve suggested binary for crontab entry
CORE-12886 - Correct announcement translation timestamp
CORE-12887 - Disregard Deduct Tax Amount settings if tax system is disabled
DEV-560 - Implement support for MySQL v8
Also known as: CORE-12589
Addons
ADDON-6026 - Correct caching for Project Management widget
Modules
MODULE-6379 - [Plesk] More accurate reporting of errors in server connection tester
MODULE-6456 - Remove transaction fee calculation for Standard 2Checkout
MODULE-6544 - [ResellerClub] Transferred Away status not updating in _Sync function of RC module
Also known as: MODULE-6919
MODULE-6670 - HTML entities in Title value are not decoded before being sent to Slack
MODULE-6677 - PayPal Subscriptions created using Upgrade Order result in unpaid invoices
MODULE-6710 - ResellerClub SSL module configuration does not load on addon configuration
MODULE-6784 - Improve normalization of domain names for wildcard SSL configuration
Also known as: MODULE-6931
MODULE-6803 - Update Hexonet Registrar Module
MODULE-6815 - LogicBoxes Modules return "Telephone Country Code/Telephone No. is invalid" for Trinidad and Tobago calling code (1868)
MODULE-6816 - Enom: All transfers fail with Enom if "Extended Attributes" / Additional Fields are required
Also known as: CORE-6958, CORE-10800, CORE-7745
MODULE-6826 - Slack: Add support for private channel notifications
MODULE-6835 - ResellerClub not showing domains as having the registrar lock enabled
MODULE-6837 - Update Symantec about text in MarketConnect admin area
MODULE-6838 - Update Symantec logo to include powered by DigiCert
MODULE-6849 - DirectAdmin: Prevent SSL installation altering other domain settings
MODULE-6857 - Unable to cancel Subscriptions with the 2Checkout Module
MODULE-6858 - 2Checkout Partial Payment Handling (Inline checkout bug)
MODULE-6860 - ResellerClub: Enable/Disable ID Protection "Operation Not Permitted"
MODULE-6862 - vePortal Discontinued
MODULE-6863 - LxAdmin/Kloxo Discontinued
MODULE-6865 - xPanel Discontinued
MODULE-6871 - 2CO callback file throwing Invalid invoice id provided exception when subscription callback
MODULE-6873 - Ensure 2CO "Inline" is passing line item data correctly when a product is a "one-time" billing cycle
MODULE-6876 - DirectAdmin Reseller Usage Stats are Imported Backwards
MODULE-6879 - Ensure licensing addon returns the corresponding customfields data
MODULE-6884 - Correct evaluation of merchant_order_id value for 2CO callbacks
MODULE-6890 - MaxMind not sending all datapoints in previous versions
MODULE-6893 - Correct PSIGate to support recurring payments
MODULE-6896 - MarketConnect: Always send Company Name and Company URL in configure calls
MODULE-6897 - Ensure PayPal callback fails if no "custom" variable is found in the IPN and no Subscription ID is found in WHMCS.
MODULE-6899 - Handle Automatically Converted PayPal Subscriptions
MODULE-6900 - Authorize.net eCheck not logging the Gateway in the Gateway Log
MODULE-6910 - Align Skip 2CO Fraud Check behaviour in Inline and Standard Checkout Modes
MODULE-6911 - CustomerSuppliedPrice price not passed when renewing domain with Enom
MODULE-6917 - Remove gateway module eeecurrency
MODULE-6918 - Update SpamExperts Email with Appropriate Outgoing and Archiving Info
MODULE-6920 - 2CO does not use invoice Total to determine payment amount
MODULE-6930 - CodeGuard Welcome Email
CORE-12290 - Ensure pre-defined addons can be added for non-monthly cycles
CORE-12439 - Ensure proper population of card type during checkout
CORE-12721 - Pass same domainObj to all registrar module functions
API
CORE-12079 - Ensure invoice status is provided to InvoiceCreation hook when invoking UpdateInvoice API
CORE-12137 - Implement sorting functionality for GetInvoices API
CORE-12686 - Correct logic for server password changes via ModuleChangePw API
CORE-12688 - Implement GetAdminUsers API
CORE-12703 - Updated description for customfield returned with GetProducts API
CORE-12728 - Disallow publish action if status is not Draft for UpdateInvoice API
CORE-12732 - Correct erroneous variable usage in ModuleChangePackage API
CORE-12777 - Prevent spurious error when refunding transactions created via AddTransaction
CORE-12841 - Correct documented input for AddTicketReply API
CORE-12863 - Allow ordering domains in Grace and Redemption status via AddOrder API
CORE-12864 - Implement UpdateTicketReply API
CORE-12865 - Provide timeline data argument for GetStats API
Languages
CORE-12669 - Improvements for client area French translation
CORE-12687 - Improvements for client area Turkish translation
CORE-12695 - Improvements for Portuguese-pt translations
CORE-12716 - Improvements for Spanish translations