Openprovider-WHMCS-domains icon indicating copy to clipboard operation
Openprovider-WHMCS-domains copied to clipboard

[BUG] DEVELOP MORE COFFEE - OpenProvider + PHP8 = broken

Open maverick85 opened this issue 2 years ago • 10 comments

Describe the bug The 'wedevelopcoffee' module used by OpenProvider is completely killing OpenProvider WHMCS. It is unbelievable that so long after the PHP8.1 support has been released, OP isn't already prepared for this. Whenever a customer tries to register a domain, we get this error.

To Reproduce Steps to reproduce the behavior:

  1. Have WHMCS with PHP8.1;
  2. Be using OpenProvider;
  3. Have someone try to register a domain with you;
  4. Try to accept the order
TypeError: Cannot access offset of type string on string in /var/www/sites/proj1ty4/public_html/prod/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Domain/AdditionalFields.php:97
Stack trace:
#0 /var/www/sites/proj1ty4/public_html/prod/modules/registrars/openprovider/src/AdditionalFields.php(93): WeDevelopCoffee\wPower\Domain\AdditionalFields->getFilteredAdditionalFields()
#1 /var/www/sites/proj1ty4/public_html/prod/modules/registrars/openprovider/src/AdditionalFields.php(106): OpenProvider\WhmcsRegistrar\src\AdditionalFields->get()
#2 /var/www/sites/proj1ty4/public_html/prod/modules/registrars/openprovider/Controllers/System/DomainController.php(112): OpenProvider\WhmcsRegistrar\src\AdditionalFields->processAdditionalFields()
#3 /var/www/sites/proj1ty4/public_html/prod/modules/addons/openprovider/vendor/wedevelopcoffee/wpower/src/Core/Instance.php(47): OpenProvider\WhmcsRegistrar\Controllers\System\DomainController->register()
#4 /var/www/sites/proj1ty4/public_html/prod/modules/addons/openprovider/vendor/wedevelopcoffee/wpower/src/Core/Launch.php(54): WeDevelopCoffee\wPower\Core\Instance->execute()
#5 /var/www/sites/proj1ty4/public_html/prod/modules/registrars/openprovider/openprovider.php(351): WeDevelopCoffee\wPower\Core\Launch->output()
#6 /var/www/sites/proj1ty4/public_html/prod/modules/registrars/openprovider/openprovider.php(52): openprovider_registrar_launch_decorator()
#7 [internal function]: openprovider_RegisterDomain()
#8 /var/www/sites/proj1ty4/public_html/prod/vendor/whmcs/whmcs-foundation/lib/Module/AbstractModule.php(0): call_user_func()
#9 /var/www/sites/proj1ty4/public_html/prod/vendor/whmcs/whmcs-foundation/lib/Module/Registrar.php(0): WHMCS\Module\AbstractModule->call()
#10 /var/www/sites/proj1ty4/public_html/prod/includes/registrarfunctions.php(0): WHMCS\Module\Registrar->call()
#11 /var/www/sites/proj1ty4/public_html/prod/includes/orderfunctions.php(0): RegRegisterDomain()
#12 /var/www/sites/proj1ty4/public_html/prod/op/orders.php(0): acceptOrder()
#13 {main}

Expected behavior Order successfully accepted.

Screenshots If applicable, add screenshots to help explain your problem.

Server info:

  • Distro: AlmaLinux 9
  • PHP: 8.1
  • Web server: httpd

Additional context This is another issue related to this: https://github.com/openprovider/Openprovider-WHMCS-domains/issues/252

The above mentioned issue has been reported in the 12th of December. I AM SORRY BUT IT'S ABSOLUTELY INADMISSIBLE THAT THIS HASN'T BEEN FIXED YET. Waiting for a USER CONTRIBUTION is no excuse for it not having been solved yet.

It is not the first time we've had issues on our business because of outdated code and 3rd party libraries OpenProvider uses. I have incoming new year customers trying to register domains AND I CANNOT ACCEPT THE ORDERS. DOES OPENPROVIDER HAVE DEVELOPERS??? ARE WE WAITING FOR ONE 'WHMCS GUY' WHO APPARENTLY IS NEVER THERE?

maverick85 avatar Jan 09 '23 20:01 maverick85

Initial errors reported via direct ticket to OpenProvider support. Received an email yesterday saying my ticket was marked as "solved".

Waiting for resolution, got none. Apparently there isn't even enough honesty to keep a ticket open while the situation is being treated. Just close the tickets and take a ... on the customer.

maverick85 avatar Jan 12 '23 13:01 maverick85

So yesterday I got an email from "OpenProvider support" with the following:

I just wanted to give you a quick update on this, after copying the module files you shared, I tried to reproduce the issue again by registering a couple of domains (.info and also .es - which require additional fields), but I couldn't recreate the issues mentioned in https://github.com/openprovider/Openprovider-WHMCS-domains/issues/252 and https://github.com/openprovider/Openprovider-WHMCS-domains/issues/258.  Both domain orders were accepted successfully and I can access domain pages.
 
We will continue our investigation to identify what is different and what could be causing the error. If you can provide any additional details that you think can be helpful in identifying the problem, we will greatly appreciate it.

So it appears that after over one month and a half, were finally able to test (???) - TO TEST :: ONE AND HALF MONTHS AFTER - and say they couldn't find errors.

It's funny because I just downloaded a clean full install from WHMCS site, copied the configuration.php file over, and installed the Openprovider modules (domains, SSL and DNS management).

Even with a brand new install with nothing else but the OpenProvider module, I can replicate the errors. But apparently after ONE AND A HALF MONTHS these amazing development team can't even find the errors.

I'm definitely considering ditching OP for good and I can't recommend this company to anyone. Other than the cheap domain prices, the whole service is one of the worst imaginable. The mediocrity and lack of professionalism in handling these issues should be criminalised.

maverick85 avatar Jan 26 '23 13:01 maverick85

I have a similar php-8.1 incompatibility with the domain sync. I use master branch.

Error: Call to a member function find() on null in /home/u174854315/domains/cdncli.com/public_html/modules/registrars/openprovider/Controllers/System/DomainSyncController.php:69 Stack trace: #0 /home/u174854315/domains/cdncli.com/public_html/modules/addons/openprovider/vendor/wedevelopcoffee/wpower/src/Core/Instance.php(47): OpenProvider\WhmcsRegistrar\Controllers\System\DomainSyncController->sync() #1 /home/u174854315/domains/cdncli.com/public_html/modules/addons/openprovider/vendor/wedevelopcoffee/wpower/src/Core/Launch.php(54): WeDevelopCoffee\wPower\Core\Instance->execute() #2 /home/u174854315/domains/cdncli.com/public_html/modules/registrars/openprovider/openprovider.php(354): WeDevelopCoffee\wPower\Core\Launch->output() #3 /home/u174854315/domains/cdncli.com/public_html/modules/registrars/openprovider/openprovider.php(273): openprovider_registrar_launch_decorator() #4 [internal function]: openprovider_Sync() #5 /home/u174854315/domains/cdncli.com/public_html/vendor/whmcs/whmcs-foundation/lib/Module/AbstractModule.php(0): call_user_func() #6 /home/u174854315/domains/cdncli.com/public_html/vendor/whmcs/whmcs-foundation/lib/Module/Registrar.php(0): WHMCS\Module\AbstractModule->call() #7 /home/u174854315/domains/cdncli.com/public_html/includes/registrarfunctions.php(0): WHMCS\Module\Registrar->call() #8 /home/u174854315/domains/cdncli.com/public_html/includes/registrarfunctions.php(0): RegCallFunction() #9 /home/u174854315/domains/cdncli.com/public_html/adminq/clientsdomains.php(0): RegCustomFunction() #10 {main}

lonyai avatar Feb 02 '23 08:02 lonyai

I'm having both of the issues here, can't register, can't sync, same logs. What is going on... Is downgrading PHP version the solution? I also can't download the support files from the addon section as it has the same coffee error...

spylex avatar Feb 04 '23 22:02 spylex

I'm having both of the issues here, can't register, can't sync, same logs. What is going on... Is downgrading PHP version the solution? I also can't download the support files from the addon section as it has the same coffee error...

After months long struggle seems like OP is finally getting somewhere. They've sent a couple of fixes to test. Maybe very soon this will be over.

Funny thing is I sent them a video downloading WHMCS full from WHMCS site, copied configuration.php over, installed the module, and the errors show immediately. However, they say they can't replicate. Figure that out.

But yeah, it's being worked on.

maverick85 avatar Feb 06 '23 10:02 maverick85

There's been a change, and i've copied over, but still...

spylex avatar Feb 09 '23 22:02 spylex

After copying in @wyler-m updates from 4 days ago, i am getting domain sync again. However, 2 renewals were missed completely so i had to manually restore them - frustrating...

The updates are still not great as it keeps doing this: Updated domain auto renewal at provider for domain domain.me from to default

I still can't generate error or activity reports.

spylex avatar Feb 10 '23 13:02 spylex

@spylex

If you are still having the error "Cannot access offset of type string on string" with AdditionalFields.php while registering domains, please try the fix mentioned here.

sapillai avatar Mar 01 '23 10:03 sapillai

I have tried that - errors are not appearing.

However, i am still getting domain renewals being missed. This is just not workable.

spylex avatar Mar 19 '23 11:03 spylex

@spylex

Please create a new issue if you are experiencing a different issue from the one reported in the initial post (domain registration error) and include problem description, steps to reproduce, server information and WHMCS details.

sapillai avatar Mar 20 '23 04:03 sapillai

Hi,

I'm glad to share that a proper official fix has been added for error "Cannot access offset of type string on string" with 'AdditionalFields.php' in the latest version of the module - version 5.8.0.

sapillai avatar Jun 03 '24 10:06 sapillai