-
Posts
6,714 -
Joined
-
Last visited
-
Days Won
841
Everything posted by Paul
-
As Mike mentioned, you need a mapping file. All this does is map the whmcs fields to the blesta fields for Virtualizor. The mapping file would go in ~/plugins/import_manager/components/migrators/whmcs/5.2/config/. Point the Virtualizor folks to this directory and the existing mapping files (like cpanel.php, directadmin.php, etc) as an example. Once you have the mapping file and have uploaded it to that directory you'll need to run the importer again (from a fresh Blesta install).
-
4.0 was a major release, which included an upgrade to the framework minPHP, PHP 7 support, and a lot more. Major releases can have backwards incompatible changes. Any custom extensions should be tested with a major release in a dev environment before deploying live.
-
A new CentOS Web Panel (CWP) alpha module is available. To install, download the attached centoswebpanel.zip and unzip the file. Upload the centoswebpanel directory to ~/components/modules/ and go to Settings > Company > Modules to install it. Per http://wiki.centos-webpanel.com/cwp-account-api You must set an API Key on your CentOS Web Panel server in: /usr/local/cwp/.conf/api_key.conf You must add your Blesta server's IP address on your CentOS Web Panel server in: /usr/local/cwp/.conf/api_allowed.conf Any comments or suggestions, please post them below. centoswebpanel.zip
-
They are ordering a Directadmin hosting account for say sub.domain.com? It's difficult to distinguish between a domain and a subdomain with all of the multi-level TLDs out there. For example, a regular expression that prevented sub.domain.com may also prevent domain.co.uk
-
How do you distinguish between "public" and "visitors"?
-
Anyone that has a large number of invoices should run the upgrade via CLI. The data in the table is required to reliably process renewals through a module. Not many modules support renewals, so for some people it might not be a big deal to skip populating the table (would require a modification to the migrator). If the table isn't populated though, and you have say a domain name for an invoice that was generated before the upgrade, then paid after the upgrade, it would not be renewed through the module. Hopefully this doesn't turn into a big issue. It may have been better for the cron to handle initial population.
-
The table is to resolve CORE-2167. If you run into the issue again, try upgrading via CLI.
-
Version 4.1.1 is now available. Please see the announcement. This is a patch release that corrects issues with 4.1.0. Be sure to run /admin/upgrade after uploading the patch or full versions. NOTE! If you have a large number of invoices, it may be necessary to run the upgrade via CLI as the upgrade process can take some time while a new table is populated. To upgrade via CLI, from your Blesta directory run: php ./index.php admin/upgrade Patching Blesta See Patching Blesta in the User Manual for instructions. Release Notes See Blesta Core - Version 4.1.1. See all Change Logs.
-
Modify in what way? The offline payment module allows you to add information that the customer needs to make payment. It will work for a variety of cases.
-
How popular is the gateway, and what region/currency is it for? You could create a feature request here https://requests.blesta.com, though I've never heard of this one so demand may not be high enough right now. Contacting the developer would probably be a good idea, they may be willing to port it to Blesta.
-
It is most likely related to your enforcement of TLS 1.2, whether the issue is with Swiftmailer itself or your PHP & OpenSSL I don't know. I found this though https://github.com/swiftmailer/swiftmailer/issues/598 which seems to indicate (look at the comments) that Swiftmailer does not implement its own crypto but relies on your PHP.
-
I don't know which protocols & ciphers it is or isn't compatible with, I would have to look into it and Monday mornings are really busy. I threw that out as a possibility.
-
Blesta uses the Swiftmailer library for outgoing mail. None of that is encoded. The only thing I can think of is that if you have a strict set of CipherSuites and Protocols that Swiftmailer may not be able to communicate with them. For example, if you're running a web server that only allows TLS 1.2 with a specific set of CipherSuites, even a browser that's capable of communicating with TLS 1.2 may not find a cipher they have in common... or, the browser may only be able to communicate with TLS 1.0/1.1. The same rules would apply for mail servers.
-
It seems like WHT is dropping in overall visitors and some of the others are gaining. Here are a few I check regularly: lowendtalk.com vpsboard.com hostingdiscussion.com forumweb.hosting
-
Do you know if it's just a different API endpoint and/or currencies? Very odd.
-
Just FYI, PayUmoney was released in this thread and is now included with Blesta 4.1.
-
@Kronz An ISPConfig module is now available at Please test and let us know what you think.
-
A new early release ISPConfig module is available. To install, download the attached ispconfig.zip and unzip the file. Upload the ispconfig directory to ~/components/modules/ and go to Settings > Company > Modules to install it. Please give it a spin and give us your feedback! Here's a sample welcome email you can use for your Package:
-
public function unsuspendService($package, $service, $parent_package = null, $parent_service = null) { // unsuspendacct / unsuspendreseller ($package->meta->type == "reseller") if (($row = $this->getModuleRow())) { $api = $this->getApi($row->meta->host_name, $row->meta->user_name, $row->meta->key, $row->meta->use_ssl); $service_fields = $this->serviceFieldsToObject($service->fields); if ($package->meta->type == 'reseller') { $this->log( $row->meta->host_name . '|unsuspendreseller', serialize($service_fields->cpanel_username), 'input', true ); $this->parseResponse($api->unsuspendreseller($service_fields->cpanel_username)); } else { $this->log( $row->meta->host_name . '|unsuspendacct', serialize($service_fields->cpanel_username), 'input', true ); $to = 'nobody@example.com'; $subject = 'the subject'; $message = $service_fields->cpanel_username; $headers = 'From: webmaster@example.com' . "\r\n" . 'Reply-To: webmaster@example.com' . "\r\n"; mail($to, $subject, $message, $headers); return; } } return null; }
-
public function suspendService($package, $service, $parent_package = null, $parent_service = null) { // suspendacct / suspendreseller ($package->meta->type == "reseller") $row = $this->getModuleRow(); if ($row) { $api = $this->getApi($row->meta->host_name, $row->meta->user_name, $row->meta->key, $row->meta->use_ssl); $service_fields = $this->serviceFieldsToObject($service->fields); if ($package->meta->type == 'reseller') { $this->log( $row->meta->host_name . '|suspendreseller', serialize($service_fields->cpanel_username), 'input', true ); $this->parseResponse($api->suspendreseller($service_fields->cpanel_username)); } else { $this->log( $row->meta->host_name . '|suspendacct', serialize($service_fields->cpanel_username), 'input', true ); $to = 'nobody@example.com'; $subject = 'the subject'; $message = $service_fields->cpanel_username; $headers = 'From: webmaster@example.com' . "\r\n" . 'Reply-To: webmaster@example.com' . "\r\n"; mail($to, $subject, $message, $headers); return; } } return null; } maybe
-
In /components/modules/cpanel/cpanel.php look for the suspend method. It'll look like this: public function suspendService($package, $service, $parent_package = null, $parent_service = null) { // suspendacct / suspendreseller ($package->meta->type == "reseller") $row = $this->getModuleRow(); if ($row) { $api = $this->getApi($row->meta->host_name, $row->meta->user_name, $row->meta->key, $row->meta->use_ssl); $service_fields = $this->serviceFieldsToObject($service->fields); if ($package->meta->type == 'reseller') { $this->log( $row->meta->host_name . '|suspendreseller', serialize($service_fields->cpanel_username), 'input', true ); $this->parseResponse($api->suspendreseller($service_fields->cpanel_username)); } else { $this->log( $row->meta->host_name . '|suspendacct', serialize($service_fields->cpanel_username), 'input', true ); $this->parseResponse($api->suspendacct($service_fields->cpanel_username)); } } return null; } Change this so it doesn't try to suspend with cpanel public function suspendService($package, $service, $parent_package = null, $parent_service = null) { return; } Now, if you want to send an email to yourself, send the email before returning. Here's a very dirty way of doing it. I have not tested it. public function suspendService($package, $service, $parent_package = null, $parent_service = null) { $service_fields = $this->serviceFieldsToObject($service->fields); $to = 'nobody@example.com'; $subject = 'the subject'; $message = $service_fields->cpanel_username; $headers = 'From: webmaster@example.com' . "\r\n" . 'Reply-To: webmaster@example.com' . "\r\n"; mail($to, $subject, $message, $headers); return; }
-
Package/Product based revenue reporting is coming
-
Yes, the /config/blesta.php contains a System.key that MUST match the database. If you move the database, you MUST move the System.key with it that is contained in the config file.
-
Looking great!
-
Just a note.. if you have trouble importing and have quote escaped strings, try removing the quotes and any commas in the field. We'll be working on a fix for this.