openprovider / openprovider-whmcs-domains Goto Github PK
View Code? Open in Web Editor NEWOpenprovider WHMCS Domain Module
Openprovider WHMCS Domain Module
Hi.
There is a bug with domainSync. In some cases, $this->update_domain_data won't be resetted and will go to the next iteration. If there is nothing to update on the next iteration it will still be updated with old data from $this->update_domain_data.
Fix: move $this->update_domain_data = null; to the begin of the loop.
`
$this->OpenProvider = new OpenProvider;
foreach($this->domains as $domain)
{
$this->update_domain_data = null;
try
...........
`
Every time a user visits "Domain Registrations" page the module calls searchTemplateDnsRequest.
Not only this translates in slow page loading, but depending on the amount of reseller's domains/calls it might result in user's API block.
After upgrading to the latest version of the WHMCS module we are (still) receiving empty activity emails.
I saw another mentioned issue which was resolved by the issuer because of ID protection settings on one of his domains. We have not enabled ID protection on the domains we sell and records in tbldomains
have not been changed. I will enable the module debug log hoping to pinpoint what triggers the blank activity e-mail.
openprovider.php, function openprovider_RenewDomain
exit('DOING NORMAL RENEWAL');
.......
exit('RESTORING DOMAIN');
In production code... Seriously guys ? :)
Renew is not working because of this.
I do an order to transfer a domain .es
then the transfer was rejected. And domain in client area is always in "Pending" state.
When talking to the EPP service of DK-Hostmaster, DK-Hostmaster allows specifying the registrant and admin handle where the domain should be registered to (e.g. if customers want to use their existing DK-Hostmaster account for their newly registered domains).
It would be great if the OpenProvider WHMCS module could support supplying this registrant and admin handle (two individual fields in the DK Hostmaster EPP service).
This is especially important now where DK-Hostmaster charges 50 DKK (6.70 euro) for doing an ownership transfer.
Nevermind.
When trying to access the addon in WHMCS, it results in a 500 internal server error:
ReflectionException: Class \OpenProvider\WhmcsDomainAddon\Controllers\Admin\Supportcontroller does not exist in /path/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Core/Launcher.php:40
Stack trace:
#0 /path/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Core/Launcher.php(40): ReflectionClass->__construct('\\OpenProvider\\W...')
#1 /path/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/helpers.php(20): WeDevelopCoffee\wPower\Core\Launcher->launchClass('\\OpenProvider\\W...')
#2 /path/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/wPower.php(88): wLaunch('\\OpenProvider\\W...')
#3 /path/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/Dispatcher.php(99): WeDevelopCoffee\wPower\wPower->launch('\\OpenProvider\\W...')
#4 /path/modules/addons/openprovider/openprovider.php(75): WeDevelopCoffee\wPower\Controllers\Dispatcher->dispatch('index', Array)
#5 /path/admin/addonmodules.php(0): openprovider_output(Array)
#6 {main}
I updated the plugin, and I still receive empty Domain Sync reports.
Now I also receive an email saying "Error: action required before enabling Whois Privacy Protection".
The contract is signed since 2016...
Error: Call to undefined method WeDevelopCoffee\wPower\Domain\AdditionalFields::setRegistrarAdditionalFields() in /var/www/vhosts/iontics.com/httpdocs/panel/modules/registrars/openprovider/Library/AdditionalFields.php:90 Stack trace: #0 /var/www/vhosts/iontics.com/httpdocs/panel/modules/registrars/openprovider/helpers.php(21): OpenProvider\WhmcsRegistrar\Library\AdditionalFields->get() #1 /var/www/vhosts/iontics.com/httpdocs/panel/resources/domains/additionalfields.php(6): openprovider_additional_fields() #2 /var/www/vhosts/iontics.com/httpdocs/panel/vendor/whmcs/whmcs-foundation/lib/Domains/AdditionalFields.php(0): unknown() #3 /var/www/vhosts/iontics.com/httpdocs/panel/vendor/whmcs/whmcs-foundation/lib/Domains/AdditionalFields.php(0): WHMCS\Domains\AdditionalFields->fetch('additionalfield...') #4 /var/www/vhosts/iontics.com/httpdocs/panel/vendor/whmcs/whmcs-foundation/lib/Domains/AdditionalFields.php(0): WHMCS\Domains\AdditionalFields->loadFieldsData() #5 /var/www/vhosts/iontics.com/httpdocs/panel/vendor/whmcs/whmcs-foundation/lib/Domains/AdditionalFields.php(0): WHMCS\Domains\AdditionalFields->setTLD('.com') #6 /var/www/vhosts/iontics.com/httpdocs/panel/admin/clientsdomains.php(0): WHMCS\Domains\AdditionalFields->setDomain('menjadorscollec...') #7 {main}
We are receiving messages from the WHMCS update with the list of domains and the following message:
Sync Not Supported by Registrar Module
Any way to fix it?
expiry date not sync with 2.2.5 however works fine with 2.2.4
When activating the OpenProvider domain addon I get the following error:
TypeError: Argument 1 passed to {closure}() must be an instance of Blueprint, instance of Illuminate\Database\Schema\Blueprint given, called in /home/nginx/domains/OURDOMAIN.COM/public/billing/vendor/illuminate/database/Schema/Blueprint.php on line 69 and defined in /home/nginx/domains/OURDOMAIN.COM/public/billing/modules/addons/openprovider/openprovider.php:64
Stack trace:
#0 /home/nginx/domains/OURDOMAIN.COM/public/billing/vendor/illuminate/database/Schema/Blueprint.php(69): {closure}(Object(Illuminate\Database\Schema\Blueprint))
#1 /home/nginx/domains/OURDOMAIN.COM/public/billing/vendor/illuminate/database/Schema/Builder.php(245): Illuminate\Database\Schema\Blueprint->__construct('tblinvoiceitems', Object(Closure))
#2 /home/nginx/domains/OURDOMAIN.COM/public/billing/vendor/illuminate/database/Schema/Builder.php(130): Illuminate\Database\Schema\Builder->createBlueprint('tblinvoiceitems', Object(Closure))
#3 /home/nginx/domains/OURDOMAIN.COM/public/billing/modules/addons/openprovider/openprovider.php(66): Illuminate\Database\Schema\Builder->table('tblinvoiceitems', Object(Closure))
#4 /home/nginx/domains/OURDOMAIN.COM/public/billing/whmcsadmin/configaddonmods.php(0): openprovider_activate()
#5 {main}
We found a small problem registering .IT domains, seems that the plugin pass to the registrar more data than expected.
In our specific case, because in Italy for individual is compulsory the "codice fiscale" (like the BSN in Nederland or Social Security Number in other countries), but not other data, if the plugin is passing by the Passport Number, the Registrar do not permit to the user to complete the registration, complaining about missing data.
So in the code (in openprovider.php from row 156):
if($fields['ownerType'] == 'Individual')
{
$additionalData->set('socialSecurityNumber', $fields['socialSecurityNumber']);
$additionalData->set('passportNumber', $fields['passportNumber']);
} elseif($fields['ownerType'] == 'Company')
{
$additionalData->set('companyRegistrationNumber', $fields['companyRegistrationNumber']);
$additionalData->set('VATNumber', $fields['VATNumber']);
}
We simply add a check if we are registering a .IT and exclude the "passportNumber" parameter.
Also, even if it's not depending directly from the plugin, but from the user behavior, when the user doesn't specify "Individual", but leave "Company" (in alphabetical order in the dropdown is the first option) even if he don't specify a VAT number, seems that the plugin, in that code, consider the request as a Company, so the first part of the IF clause is false and trying to add VATNumber and companyRegistrationNumber that in that case are probably empty fields, instead of the socialSecurityNumber really needed in this case.
We found a workaround, adding the socialSecurityNumber also in the company part of the IF clause, in case of .IT tld.
It's not elegant, we know, but seems it's working.
So here is the modified part:
if($fields['ownerType'] == 'Individual')
{
$additionalData->set('socialSecurityNumber', $fields['socialSecurityNumber']);
if($params['tld'] != 'it')
{
$additionalData->set('passportNumber', $fields['passportNumber']);
}
} elseif($fields['ownerType'] == 'Company')
{
$additionalData->set('companyRegistrationNumber', $fields['companyRegistrationNumber']);
$additionalData->set('VATNumber', $fields['VATNumber']);
if($params['tld'] == 'it')
{
$additionalData->set('socialSecurityNumber', $fields['socialSecurityNumber']);
}
}
Probably there's a better way to achieve the result, let us know.
In spite of doing everything they ask for in the installation, .es domains still give problems to register:
Ha habido problemas al aceptar el pedido
An unknown domain error has occurred; for more details, please refer to the registry message below:
Passport number or social security number cannot be blank
PD: I open it again because you've closed the other subject without being fixed.
Hi,
Trying to change domain contact info will pop up this error:
ArgumentCountError: Too few arguments to function OpenProvider\WhmcsRegistrar\Library\Handle::update(), 0 passed in /whmcs/modules/registrars/openprovider/Library/Handle.php on line 147 and exactly 1 expected in /whmcs/modules/registrars/openprovider/Library/Handle.php:270
Stack trace:
/whmcs/modules/registrars/openprovider/Library/Handle.php(147): OpenProvider\WhmcsRegistrar\Library\Handle->update()
/whmcs/modules/registrars/openprovider/openprovider.php(652): OpenProvider\WhmcsRegistrar\Library\Handle->updateOrCreate(Array, 'admin')
[internal function]: openprovider_SaveContactDetails(Array)
/whmcs/vendor/whmcs/whmcs-foundation/lib/Module/AbstractModule.php(0): call_user_func('openprovider_Sa...', Array)
/whmcs/vendor/whmcs/whmcs-foundation/lib/Module/Registrar.php(0): WHMCS\Module\AbstractModule->call('SaveContactDeta...', Array)
/whmcs/vendor/whmcs/whmcs-foundation/lib/Domains.php(0): WHMCS\Module\Registrar->call('SaveContactDeta...', Array)
/whmcs/vendor/whmcs/whmcs-foundation/lib/Domains.php(0): WHMCS\Domains->moduleCall('SaveContactDeta...', Array)
/whmcs/clientarea.php(0): WHMCS\Domains->saveContactDetails(Object(WHMCS\Client), Array, Array, Array)
{main}
When trying to access the openprovider addons module from the WHMCS backend it results in a 500 error with the following error log message:
[domain] references full_path and domain name.
mod_fcgid: stderr: [WHMCS Application] ERROR: Error: Function name must be a string in [domain]/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/Dispatcher.php:91
Stack trace:
#0 [domain]/modules/addons/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/AdminDispatcher.php(26): WeDevelopCoffee\\wPower\\Controllers\\Dispatcher->dispatch('index', Array)
#1 [domain]/modules/addons/openprovider/openprovider.php(48): WeDevelopCoffee\\wPower\\Controllers\\AdminDispatcher->dispatch('', Array)
#2 [domain]/boss/addonmodules.php(0): openprovider_output(Array)
#3 {main} {"exception":"[object] (Error(code: 0): Function name must be a string at [domain]/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/Dispatcher.php:91)"} [], referer: [domain]/addonmodules.php
ArgumentCountError: Too few arguments to function OpenProvider\WhmcsRegistrar\Library\Handle::update(), 0 passed in public_html/modules/registrars/openprovider/Library/Handle.php on line 134 and exactly 1 expected
fix ?
if($action == 'create')
$this->findOrCreate($params, $type);
else
$this->update($params);
return $this->model->handle;
When entering the module it shows an error:
URL: ******/addonmodules.php?module=openprovider
Error:
Oops!
Something went wrong and we couldn't process your request.
Please go back to the previous page and try again.
If the problem persists, please contact us.
« Back to Homepage
For additional assistance, please reference the WHMCS TroubleShooting Guide »
Exception: NOT FOUND in *****/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/Dispatcher.php:131
Stack trace:
#0 *****/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/Dispatcher.php(85): WeDevelopCoffee\wPower\Controllers\Dispatcher->getControllerNameAndFunction()
#1 *****/modules/addons/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/AdminDispatcher.php(26): WeDevelopCoffee\wPower\Controllers\Dispatcher->dispatch('index', Array)
#2 *****/modules/addons/openprovider/openprovider.php(72): WeDevelopCoffee\wPower\Controllers\AdminDispatcher->dispatch('', Array)
#3 *****/addonmodules.php(0): openprovider_output(Array)
#4 {main}
When i accept an domainorder in WHMCS i get the following page.
Oops!
Something went wrong and we couldn't process your request.
Please go back to the previous page and try again.
TypeError: Argument 1 passed to OpenProvider\WhmcsRegistrar\Library\Handle::checkIfHandleStillExists() must be an instance of WeDevelopCoffee\wPower\Models\Handle, boolean given, called in /var/www/vhosts/......................................./modules/registrars/openprovider/Library/Handle.php on line 66 and defined in /var/www/vhosts/......................................./modules/registrars/openprovider/Library/Handle.php:191
Stack trace:
#0 /var/www/vhosts/......................................./modules/registrars/openprovider/Library/Handle.php(66): OpenProvider\WhmcsRegistrar\Library\Handle->checkIfHandleStillExists(false)
#1 /var/www/vhosts/......................................./modules/registrars/openprovider/Controllers/Registrar/DomainController.php(69): OpenProvider\WhmcsRegistrar\Library\Handle->findOrCreate(Array)
#2 /var/www/vhosts/......................................./modules/registrars/openprovider/openprovider.php(182): OpenProvider\WhmcsRegistrar\Controllers\Registrar\DomainController->register(Array)
#3 [internal function]: openprovider_RegisterDomain(Array)
#4 /var/www/vhosts/......................................./vendor/whmcs/whmcs-foundation/lib/Module/AbstractModule.php(0): call_user_func('openprovider_Re...', Array)
#5 /var/www/vhosts/......................................./vendor/whmcs/whmcs-foundation/lib/Module/Registrar.php(0): WHMCS\Module\AbstractModule->call('RegisterDomain', Array)
#6 /var/www/vhosts/......................................./includes/registrarfunctions.php(0): WHMCS\Module\Registrar->call('RegisterDomain', Array)
#7 /var/www/vhosts/......................................./includes/registrarfunctions.php(0): RegCallFunction(Array, 'RegisterDomain')
#8 /var/www/vhosts/......................................./includes/orderfunctions.php(0): RegRegisterDomain(Array)
#9 /var/www/vhosts/......................................./admin/orders.php(0): acceptOrder(2, Array)
#10 {main}
I recive a lot of times a day an email with the Subject
WHMCS Domain Synchronisation Cron Report
And content:
Active Domain Syncs
The problem is that the domains are ever the same.
i check for the expiry date for domain in whmcs and is the same that the cron email report to me.
Whats happens?
Thanks
Luis.
The module ignores the options created in whmcs on the domain contacts.
I have since the administrative and technical contact is us and the owner is the customer.
He ignores it, it's all the customer.
Attached is the catch:
Will this be implemented? It's becoming a core feature of domain management.
The OpenProvider cron sets the status of domains that are in the process of being transferred from "Pending Transfer" to "Pending". I assume this is from when WHMCS didn't have the "Pending Transfer" status but perhaps this could be fixed now. Thanks
We have detected some bug's in domain sync:
WhmcsHelpers/DomainSync.php , function get_unprocessed_domains is not using ORDER BY but using limit what can cause a random ordering in MySQL. As a result some of the domains are not being processed.
DomainSync.php, function process_domains. Type in catch (line 146) the word prohibited is spelled wrong.
DomainSync.php, function process_domains. Catch exception 'The domain is not in your account; please transfer it to your account first.' , I think this one should be interpreted as "Transferred away".
When the module calls the API to create contacts (createcustomerrequest
as an example), it seems to be converting characters to ascii, but it converts it incorrectly.
Let's say we create the customer:
Name: Jørgen Ågard
Address: Tøtmosen 3a
City: København
Postcode: 9800
State: Sønderjylland
It seems when you're actually doing the API call createcustomerrequest
the data submitted will be in ASCII:
Name: Jorgen Agard
Address: Totmosen 3a
City: Kobenhavn
Postcode: 9800
State: Sonderjylland
The module shouldn't convert the characters, and if it's required because OpenProvider doesn't support UTF-8, then they should be converted into the correct international representation:
æ = ae
ø = oe
å = aa
Æ = Ae
Ø = Oe
Å = Aa
Currently it will cause address validation to fail for the DK-registry because Kobenhavn
isn't equal København
- this failure in the DK-registry results in the domain eventually being canceled because it won't be validated within the 3 days period required by the registry.
When updating contact information on certain domains the following error is generated:
ArgumentCountError: Too few arguments to function OpenProvider\WhmcsRegistrar\Library\Handle::update(), 0 passed in /home/nginx/domains/DOMAIN.com/public/billing/modules/registrars/openprovider/Library/Handle.php on line 147 and exactly 1 expected in /home/nginx/domains/DOMAIN.com/public/billing/modules/registrars/openprovider/Library/Handle.php:270
Stack trace:
#0 /home/nginx/domains/DOMAIN.com/public/billing/modules/registrars/openprovider/Library/Handle.php(147): OpenProvider\WhmcsRegistrar\Library\Handle->update()
#1 /home/nginx/domains/DOMAIN.com/public/billing/modules/registrars/openprovider/openprovider.php(651): OpenProvider\WhmcsRegistrar\Library\Handle->updateOrCreate(Array, 'registrant')
#2 /home/nginx/domains/DOMAIN.com/public/billing/vendor/whmcs/whmcs-foundation/lib/Module/AbstractModule.php(0): openprovider_SaveContactDetails(Array)
#3 /home/nginx/domains/DOMAIN.com/public/billing/vendor/whmcs/whmcs-foundation/lib/Module/Registrar.php(0): WHMCS\Module\AbstractModule->call('SaveContactDeta...', Array)
#4 /home/nginx/domains/DOMAIN.com/public/billing/vendor/whmcs/whmcs-foundation/lib/Domains.php(0): WHMCS\Module\Registrar->call('SaveContactDeta...', Array)
#5 /home/nginx/domains/DOMAIN.com/public/billing/vendor/whmcs/whmcs-foundation/lib/Domains.php(0): WHMCS\Domains->moduleCall('SaveContactDeta...', Array)
#6 /home/nginx/domains/DOMAIN.com/public/billing/whmcsadmin/clientsdomaincontacts.php(0): WHMCS\Domains->saveContactDetails(Object(WHMCS\Client), Array, Array, Array)
#7 {main}
I'm not sure under what conditions this occurs but I can provide a list of domains in private that this occurs with if that helps. This could be related to issue #23.
Having got bitten by the WHOIS privacy logic bug I stayed on an old release until I thought everything was fixed. But I thought I'd give it another go recently and it seems that there's still some issues. The one I'm highlighting here related to enabling WHOIS protection on domains that are pending transfer. I just got the following email notification for a domain that hasn't yet transferred over to OpenProvider but it is pending. WHOIS privacy was enabled in WHMCS for the domain.
Dear Administrator,
We send you this e-mail as a client or an administrator tried to enable identity protection for multiple domains. You did not sign the Whois Privacy Protection contract which is why the system was unable to process the request.
The domains:
DOMAINBEINGTRANSFERRED.com
How to resolve this?Navigate to the OpenProvider control panel.
Click on Account -> Contracts
Select "Whois Privacy Protection".
When you agree, sign the contract.
Navigate to WHMCS and search for every listed domain. When you are on a domain management page. Repeast step 6 and 7 for every domain. If the domain synchronisation is setup, this can be done automatically.
If checked*, uncheck "ID Protection" and click on save.
Check "ID Protection" and click on save.
- WHMCS only sends the command to enable ID Protection when the checkbox was saved unchecked. Otherwise WHMCS will not send the command to enable identity protection.
When you have setup up domain synchronisation for OpenProvider the identity protection will also get enabled. However, depending on how you configured the synchronisation it may take up to a few days.
Regards,
WHMCS powered by OpenProvider
By default, customers are able to change the reseller information.
This should never be possible from the client panel, it should be optional in the admin panel.
Please fix this.
Temp Fix:
Edit: site/modules/registrars/openprovider/openprovider.php
Go to line: 777
Add the following line on line 778: unset($values["Reseller"]);
Preview:
function openprovider_GetContactDetails($params)
{
try
{
$domain = new \OpenProvider\API\Domain(array(
'name' => array_key_exists('original',$params) ? $params['original']['sld'] : $params['sld'],
'extension' => $params['tld']
));
$api = new \OpenProvider\API\API($params);
$values = $api->getContactDetails($domain);
unset($values["Reseller"]);
}
catch (\Exception $e)
{
$values["error"] = $e->getMessage();
}
return $values;
}
When trying to register a premium domain the following error is returned.
You are about to register the premium domain. If you accept this registration fee, re-send the createDomainRequest and add the parameters "acceptPremiumFee" with the value of a premium fee, which can be found in the
data
block of this command output.:
42
It would be great if instead of just throwing an error, there could be a prompt to proceed. Or if that's not technically possible, perhaps adding another checkbox to accept the premium fee. At the moment we just have to register these domains manually.
Now that WHMCS and the module support premium domain look prices (which is working) I think this also needs addressing.
Thanks
I've raised a support ticket (#412308) regarding this as it's a fairly important and urgent issue but probably appropriate to post this here too.
I believe the new WHMCS module is attempting to enable WHOIS privacy on domains that shouldn't have it enabled and vice versa. Having updated the module, I've noticed hundreds of domains with privacy enabled in our OP account that shouldn't have it enabled and domains that were previously protected that now aren't.
Having checked all the "OpenProvider Activity E-mail" notifications from overnight, I can see all the domains that have had the status toggled. I think this logic is incorrect in the new file modules/registrars/openprovider/Library/OpenProvider.php
public function toggle_whois_protection($w_domain, \OpenProvider\API\Domain $domain, $opInfo)
{
// Check if we should auto renew or use the default settings
// Note: the settings are in reverse since WHMCS updates the table after this hoo.
if($w_domain->idprotection == 0)
$idprotection = 1; // OP sends the null value when no protection is set.
else
$idprotection = '0';
Compared to the previously used modules/registrars/openprovider/OpenProvider/OpenProvider.php
public function toggle_whois_protection($domain, $opInfo)
{
// Check if we should auto renew or use the default settings
if($domain->idprotection == 0)
$idprotection = null; // OP sends the null value when no protection is set.
else
$idprotection = '1';
Furthermore I'm getting lots of notification emails with the subject "Error: action required before enabling Whois Privacy Protection". This error message is incorrect as we have already signed the contract and ID protection has been working fine. I think it's triggering an error because it's attempting to enable privacy on domains that shouldn't or even can't have it enabled. For example, expired domains or extensions that don't support it. The error handling needs to be a bit more thorough I think although fixing the above error should mean it doesn't get triggered so often in the first place.
When we try to register a .es domain from WHMCS we get this error:
Ha habido problemas al aceptar el pedido
An unknown domain error has occurred; for more details, please refer to the registry message below:
Passport number or social security number cannot be blank
What can be done to solve this and to register domains from WHMCS?
I have installed the module, but when try to run, is show the below errors:
Error: Function name must be a string in /modules/addons/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/Dispatcher.php:91
Stack trace:
#0modules/addons/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/AdminDispatcher.php(26): WeDevelopCoffee\wPower\Controllers\Dispatcher->dispatch('index', Array)
#1 /modules/addons/openprovider/openprovider.php(48): WeDevelopCoffee\wPower\Controllers\AdminDispatcher->dispatch('', Array)
#2 /addonmodules.php(0): openprovider_output(Array)
#3 {main}
When activating the OpenProvider domain addon, I got a 500 error and the addon failed to activate. When trying to activate again I get:
SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'op_correctioninvoices' (SQL: alter table
tbldomainsadd
op_correctioninvoices double(10, 4) not null)
Can the activation routine gracefully handle situations where it partially activated? I'm just trying to see what the original error was that caused it to fail during activation.
Since WHMCS 7.1 their is a Transferred Away Status for Domains
Maybe it can be implemented ?
Hello!
When updating the WHMCS version to the new 7.8 it won't let me access anything, I get this error:
Oops!
Something went wrong and we couldn't process your request.
Please go back to the previous page and try again.
Whoops\Exception\ErrorException: require(): Failed opening required '/modules/addons/openprovider/vendor/composer/../wedevelopcoffee/wpower/src/helpers.php' (include_path='.') in //modules/addons/openprovider/vendor/composer/autoload_real.php:66
Stack trace:
#0 //vendor/whmcs/whmcs-foundation/lib/Utility/Error/Run.php(0): WHMCS\Utility\Error\Run->handleError(64, 'require(): Fail...', '//...', 66)
#1 [internal function]: WHMCS\Utility\Error\Run->handleShutdown()
#2 {main}
Hello,
It would be nice to have the ability to import pricing from openprovider.
I have made a script myself to do this but would like to see it in openprovider's own module and it will probably work even better :)
https://github.com/thomashoeky/opsync
You can use any code you want, if needed
Correct the automation of the cron, for the grace periods and the redemption period.
He's currently changing it to canceled.
Hi,
I still got the same error using the newest files when trying activate the addon
Addon Module Activated
SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'op_correctioninvoices' (SQL: alter table tbldomains add op_correctioninvoices double(10, 4) not null)
uri : /addonmodules.php?module=openprovider
Oops!
Something went wrong and we couldn't process your request.
Please go back to the previous page and try again.
Exception: NOT FOUND in /var/www/html/billing/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/Dispatcher.php:130
Stack trace:
#0 /var/www/html/billing/modules/registrars/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/Dispatcher.php(85): WeDevelopCoffee\wPower\Controllers\Dispatcher->getControllerNameAndFunction()
#1 /var/www/html/billing/modules/addons/openprovider/vendor/wedevelopcoffee/wpower/src/Controllers/AdminDispatcher.php(26): WeDevelopCoffee\wPower\Controllers\Dispatcher->dispatch('index', Array)
#2 /var/www/html/billing/modules/addons/openprovider/openprovider.php(48): WeDevelopCoffee\wPower\Controllers\AdminDispatcher->dispatch('', Array)
#3 /var/www/html/billing/WH/addonmodules.php(0): openprovider_output(Array)
#4 {main}
When trying to register a .tv domain we received the following error complaining about the information in the "Address 1" field.
Address 'Little Mollington Hall ' could not be splitted into street name and house number.
Not all addresses have a house number in the UK. I was able to register the domain manually fine with the correct address.
Dear OpenProvider,
There is an issue in your module that causes additional domain fields to not show in admin panel.
The problem is in the file named Path.php in modules\registrars\openprovider\vendor\wedevelopcoffee\wpower\src\Core
When loading from the admin panel, there is /admin in the document root.
I applied the fix by checking the last directory and if it's admin stripped it.
Here is the fixed code:
public function getDocRoot()
{
global $customadminpath;
if ($this->core->isCli()) {
// DOC_ROOT does not work with cli
// WARNING: This part of the code is not tested!
$currentDir = __DIR__;
$currentDirExploded = explode('modules', $currentDir);
return $currentDirExploded[0];
}
$parts = explode(DIRECTORY_SEPARATOR, getcwd());
if ($parts[sizeof($parts) - 1] == $customadminpath) {
unset($parts[sizeof($parts) - 1]);
}
return implode(DIRECTORY_SEPARATOR, $parts);
}
TypeError: Argument 1 passed to OpenProvider\WhmcsRegistrar\Library\Handle::checkIfHandleStillExists() must be an instance of WeDevelopCoffee\wPower\Models\Handle, boolean given, called in /modules/registrars/openprovider/Library/Handle.php on line 66 and defined in /modules/registrars/openprovider/Library/Handle.php:191
Hello guys,
actually the DNS Manager (through WHMCS client area /clientarea.php?action=domaindns&domainid=1234) allows management of records of type: A, AAAA, MXE, MX, CNAME, TXT, URL, FRAME.
It would be nice to see also records like: CAA, SRV, TLSA, SSHFP, TSDNS. The most important is for sure SRV record !
Some Others did that already, example here: https://github.com/inwx/WHMCS/blob/master/modules/registrars/internetworx/hooks.php
Would it be possible to do it in OP also ?
Thx for your feedback
In the backend "get EPP code" button.
error: EPP Request Failed EPP code is not set
Error 500:
Oops!
Something went wrong and we couldn't process your request.
Please go back to the previous page and try again.
Whoops\Exception\ErrorException: Declaration of DI\Definition\EntryReference::getDefinition($entryName) must be compatible with DI\Definition\Helper\DefinitionHelper::getDefinition(string $entryName): DI\Definition\Definition in *****/modules/addons/openprovider/vendor/php-di/php-di/src/DI/Definition/EntryReference.php:14
Stack trace:
#0 *****/vendor/whmcs/whmcs-foundation/lib/Utility/Error/Run.php(0): WHMCS\Utility\Error\Run->handleError(64, 'Declaration of ...', '/home/coriaweb/...', 14)
#1 [internal function]: WHMCS\Utility\Error\Run->handleShutdown()
#2 {main}
Al pinchar en renovar desde WHMCS muestra el siguiente error:
Domain not in soft quarantine period. Needs to be manually restored
¿Cómo puede solucionarse?
El caso es que me he dado cuenta que en openprovider si se ha cobrado cada vez que he pinchado, a pesar del error.
Saludos!
Hello,
I would like to be able to exclude domains from the openprovider domainsync because I want to invoice customers once a month, so I have to edit the due date of the domains. I would like to keep the DNS of WHMCS working for the domains
Is this possible?
Solve the problem with .es at once.
We have been having problems registering .es domains for a long time, we always have to end up doing things manually.
.es domains require the DNI or CIF field if it is a company. We need once and for all that the module solves this problem.
The best option is that the module selects that data from one of the custom fields that we have already created, because for billing in Spain is mandatory the DNI, as an example, we have created this custom field:
https://i.gyazo.com/63a095f10fb11b637ca3238bc0a40c07.png
Actually, when you are going to buy a .es it shows this:
https://i.gyazo.com/d949426980e2d0765fdacfb55a0b70ff.png
This is making us lose sales or even get many customers to contact us because they do not know what to do, it is not viable to show 4 fields, should only show 1, you should also have the option of translating it so that everyone can put it in our language.
You should take this seriously.
Translated with www.DeepL.com/Translator
Adapt module to new whmcs options 7.6.
I would like to see the module adapted to the new options.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.