Changelog:WHMCS V8.1
Contents
Version 8.1.0 Beta 1
Implemented
FEATURE-1805 - New Client Area Theme with Bootstrap 4
FEATURE-2465 - Add support for more social/service accounts
ADDON-6130 - Add support for Google Analytics v4
CORE-15144 - Add Google and Oauth settings for ticket department mail configuration
CORE-15257 - Implement User Deletion for Data Retention Automation
CORE-15507 - Implement Security Question disablement in admin's user management modal
Maintenance
CORE-10578 - Correct CC value for merged tickets
CORE-12475 - Ensure domain pricing shows free on order form
CORE-12798 - Improve link for domain renewal email generated by misconfigured cron invocations
CORE-14101 - Ensure one time promo for domain renewal only affects registration price
CORE-14254 - Ignore login requests from unsupported authentication methods
CORE-14396 - Remove AutoAuth functionality
CORE-14556 - Allow admin to delete transactions for deleted client
CORE-14618 - Improve error feedback for unaccessible Metric Statistics
CORE-14773 - Use non-linear calculation for multi-year TLD pricing with ResellerClub
CORE-14885 - Correct currency change on mobile
CORE-14935 - Add auto recalculate on save option to service addons
CORE-15058 - Align admin ticket access with assigned departments
CORE-15094 - Persist language select across all admin pre-authentication screens
CORE-15133 - Set IP banned expiry to 3 year
CORE-15156 - Update WHOIS server for .th TLD
CORE-15159 - Improve integration of custom countries with phone auto-formatting
CORE-15214 - Ensure Domain Sale Groups are translatable
CORE-15300 - Provide return link to parent product for addon
CORE-15417 - Add Kosovo to country selection
CORE-15425 - Correct measurement units shown on Database Status page
CORE-15436 - Provide graceful error when custom admin directory conflicts with routing
CORE-15470 - Create an activity log entry when upgrades are performed
CORE-15479 - Prevent last login update when authentication is the result of an admin masquerade
CORE-15493 - Correct filtering of styling for plain text email message
CORE-15526 - Correct render of CC recipients on ticket view in admin area
CORE-15534 - Remove erroneous documentation of ticketnum for AddTicketReply API
CORE-15536 - Provide translation string for Sitelock landing page
CORE-15557 - Ensure Ticket Merge Fields represent requestor
CORE-15558 - Ensure client can manage domains when admin has registration and transer disabled
CORE-15572 - Ensure client group color is present on ticket view
CORE-15575 - Improve rounding on upgrade order with non-fractional currency
CORE-15584 - Correct Order Summary view of promo applied addon
CORE-15598 - Ensure EPP Code is populated on Transfer page
CORE-15599 - Correct repeatable toggle state on client's Domin tab
CORE-15600 - Allow non-domain values in domain field when creating an order as an admin
CORE-15601 - Correct 2FA disabling for admins
CORE-15612 - Ensure custom invoice number is used in admin order confirmation notification
CORE-15625 - Correct currency prefix shown for affiliate commission
CORE-15634 - Ensure MarketConnect buy prices are shown in USD prior to activation
CORE-15635 - Include Canary Islands as country
CORE-15638 - Correct loose signature for table rending helper
CORE-15645 - Provide option to delete a user in the manage user modal
CORE-15646 - Ensure Enom Getdomaininfo API requests for IDN domains are properly formatted
CORE-15647 - Ensure cart summary displays level 2 tax rule only if configured
CORE-15651 - Rectify spurious warning on domainregister.tpl
CORE-15652 - Improve error detection of APOP messages
CORE-15661 - Correct error messaage for blocked existing domain
CORE-15667 - Improve error message for DomainUpdateLockingStatus API
CORE-15672 - Prevent fatal error when using bulk tools on addons
CORE-15675 - Provide ability to disable outgoing email
CORE-15687 - Correct Remember Me cookie date
CORE-15700 - Correct path of assets for Duo 2FA
CORE-15701 - Correct SSL manage template item display logic
CORE-15712 - Improve detection of concurrent gateway transactions within same session
Also known as: MODULE-7530
CORE-15757 - Correct IDN domain data for GetRegistrarLock
MODULE-7477 - Prevent subscriptions for multi-year domain registrations
Modules
MODULE-6400 - Update list of TLDs that require TNC
MODULE-6522 - Correct indexing for Plesk accounts
Also known as: CORE-11428
MODULE-7438 - Correct arguments require for ID Protection with GoDaddy
MODULE-7439 - Correct IP data sent when configuring NameCheap
MODULE-7484 - Correct command for upgrades using Configurable Package Addon with DirectAdmin
MODULE-7490 - Correct domain fields required for .dev with ResellerClub
MODULE-7507 - Ensure retired and hidden addons are not offered related to cPanel Product Details
MODULE-7511 - Update Plaid integration for "link tokens"
MODULE-7518 - Update SenderModuleInterface to include getName and getDisplayName
MODULE-7522 - Discontinue distribution of Realtime Registrar
MODULE-7524 - Correct require citizenship field for .eu registration with Enom
MODULE-7529 - Correct applink authorization override
MODULE-7535 - Prevent superfluous re-registration for admin Duo accounts
Project Management Addon
PMA-186 - Correct display of associated ticket when using custom ticket mask
API
CORE-15458 - Allow Addon and Fraud module activation vi ActivateModule API
Also known as: CORE-15463
Languages
CORE-15622 - Improvements for French translation
Version 8.1.0 Release Candidate 1
Maintenance
CORE-12269 - Correct display of products with HTML description in Cloud Slider
CORE-12743 - Incorporate and inspect auto-responder headers for Support messaging
CORE-14789 - Improve logging of server change
CORE-14963 - Correct log description of sent admin order notification
CORE-14965 - Provide warning when attempting to place admin upgrade order if unpaid invoice exists
CORE-14970 - Optimize indexing for cron log data
CORE-15138 - Ensure ClientEdit hook fired when toggling tax status
CORE-15245 - Create translation string for Admin Authentication Confirmation
CORE-15352 - Prevent invoice creation email for downgrade orders with no invoice
CORE-15496 - Implement UserEdit hook point
CORE-15550 - Show quantity of Service/Addon on Details pages
Also known as: CORE-15877
CORE-15556 - Prevent addition of uninvoiced items to new order invoice
CORE-15570 - Introduce Marketing Opt-In and Opt-Out link merge fields
CORE-15583 - Improve display of error for invalid domain search
Also known as: CORE-15851
CORE-15607 - Correct display of promotion code on Domains tab
Also known as: CORE-15688
CORE-15610 - Correct Order Details in order emails for One Time products
CORE-15666 - Suppress admin error for previously configured invalid TLD
CORE-15668 - Provide warning when editing a product and system order form is missing
CORE-15670 - Optimize Client Log Tab Query
CORE-15671 - Show all entries on the calendar by default
CORE-15673 - Provide health check to notify when memory setting for cron is less than recommendation
CORE-15678 - Ensure Loading Saved Message keeps filters for Email Campaigns
CORE-15682 - New Invoice link doesn't work on the Billing > Invoices page
CORE-15686 - Suppress Invalid Domain warning for admin orders with a wildcard expression
CORE-15690 - Correct Product Addon selection Validation for Product Bundles
CORE-15716 - Correct webmail portal link in OX App Suite welcome email
CORE-15763 - Reject non-compliant email address for UpdateClient API
CORE-15773 - Correct markdown formatting inspection for non-latin characters
CORE-15775 - Ensure 2FA challenge is provided for password reset
CORE-15776 - Prevent error when removing quote items for new client
CORE-15832 - Correct free setup promo for mutliple quantity orders
CORE-15850 - Use correct hover cursor for admin search icon
CORE-15855 - Correct template variable of county name for SSL configuration in Twenty-One
CORE-15856 - Improve domain checker field in mobile view on Twenty-One theme
CORE-15859 - Correct styling of Checkout button for domain availability check
CORE-15860 - Correct input-group-* class for domainregister template
CORE-15861 - Ensure ticket primary sidebar text is translatable
CORE-15883 - Ensure mail_auth_config field is correctly populated on update to 8.1.0
Modules
MODULE-6646 - Ensure Stripe module converts fees to payment currency before applying
MODULE-6656 - Pass CPR details when updating whois contact details on .ca domain via ResellerClub
MODULE-7478 - Prevent Stripe PaymentIntent creation when TOS and captcha validation fail
MODULE-7527 - Add FrContact Support for .fr in ResellerClub
MODULE-7528 - Correct transfer API call to GoDaddy with additional domain fields
MODULE-7531 - Ensure GoDaddy module can verify Privacy Protection eligibility for all TLDs
API
CORE-14322 - Correct trigger for InvoiceCancelled hook via UpdateInvoice API
CORE-15567 - Ensure localAPI can generate valid tokens via createssotoken
CORE-15615 - Allow validation for select fields to be skipped for AddClient
CORE-15674 - Correct support of IDN domains for SaveRegistrarLock and DomainUpdateLockingStatus API
CORE-15788 - Allow Client Status filtering in GetClients API
CORE-15829 - Correct relative path for unauthenticated OAuth authorization
CORE-15840 - Clarify documentation that WhmcsDetails API is available as of v8.0
Languages
CORE-15825 - Hungarian language improvements
CORE-15847 - French language improvements