Sheernox
New Member
Env: ClientExec 7.2.2 (ionCube), PHP 8.5.10, MariaDB 11.8.9. Source WHMCS 9. Registrar NetEarthOne (LogicBoxes).
Where:
Bug: Imported domains have no Expiration Date, keep auto-renew on where WHMCS had "do not renew", and have no Registrar Order Id. ClientExec's registrar plugins set that field only when they register or transfer a domain themselves (
Repro: Import a WHMCS install with an active domain marked "do not renew", then open the domain in the admin. Expiration Date and Registrar Order Id are empty and auto-renew is on.
Fix: Export
Where:
plugins/import/whmcs/whmcs2ce.php line 729, exportDomains(). The query selects registrationdate, domain, recurringamount, registrationperiod, status, nextduedate, registrar and paymentmethod, but not expirydate or donotrenew. WHMCS keeps no registrar order id, and the importer does not look one up.Bug: Imported domains have no Expiration Date, keep auto-renew on where WHMCS had "do not renew", and have no Registrar Order Id. ClientExec's registrar plugins set that field only when they register or transfer a domain themselves (
plugins/registrars/netearthone/PluginNetearthone.php lines 117 and 159).Repro: Import a WHMCS install with an active domain marked "do not renew", then open the domain in the admin. Expiration Date and Registrar Order Id are empty and auto-renew is on.
Fix: Export
expirydate (stored as a Unix timestamp, as the domain updater writes it) and donotrenew, and after import look up each active domain's order id at its registrar by name (LogicBoxes domains/orderid.json), storing it as <registrar>-<orderid>.