-
Posts
3,638 -
Joined
-
Last visited
-
Days Won
242
Everything posted by Tyson
-
If Client Has Credit New Services Will Not Have Credit Applied
Tyson replied to StrangeWill's topic in Feature Requests
I don't see this as a bug, although that may be a nice feature. The cron applies any available credits to open invoices, but if a client makes a payment on an order, it's made immediately for the full amount due on the service. -
Is there any information in the gateway logs, in Blesta, under [Tools] -> [Logs] related to those transactions?
-
So a department-level setting to disable emails from being sent would suffice? I'm not sure how popular this feature would be, though. Perhaps a feature request poll?
-
Could you elaborate on why you'd like to disable ticket emails? Maybe this would be a good feature request. But currently, no, there is not a way to disable ticket reply emails.
-
$this->Form->create($this->base_uri . "login/", array('class' => "form-signin"));
-
The 3.0.0a4 upgrade script may be executing multiple queries at once. If you're familiar with php, you can update /components/upgrades/tasks/upgrade3_0_0_a4.php to run each query separately. Then clear your database and try installing again.
-
It depends where you want to place the value in the PDF, but consider this example which places it below the "Due Date" field: Update /components/invoice_templates/default_invoice/default_invoice_pdf.php (line 402): private function drawInvoiceInfo() { $data = array( array( 'name'=>Language::_("DefaultInvoice.invoice_id_code", true), 'space'=>null, 'value'=>$this->invoice->id_code ), array( 'name'=>Language::_("DefaultInvoice.client_id_code", true), 'space'=>null, 'value'=>$this->invoice->client->id_code ), array( 'name'=>Language::_("DefaultInvoice.date_billed", true), 'space'=>null, 'value'=>date($this->invoice->client->settings['date_format'], strtotime($this->invoice->date_billed)) ), array( 'name'=>Language::_("DefaultInvoice.date_due", true), 'space'=>null, 'value'=>date($this->invoice->client->settings['date_format'], strtotime($this->invoice->date_due)) ) ); to private function drawInvoiceInfo() { $cf_data = array(); if (property_exists($this->invoice->client, "id")) { Loader::loadModels($this, array("Clients")); $field_id = 6; $values = $this->Clients->getCustomFieldValues($this->invoice->client->id); foreach ($values as $value) { if ($value->id == $field_id) { $cf_data = array( 'name' => $value->name . ":", 'space' => null, 'value' => $value->value ); break; } } unset($values, $value); } $data = array( array( 'name'=>Language::_("DefaultInvoice.invoice_id_code", true), 'space'=>null, 'value'=>$this->invoice->id_code ), array( 'name'=>Language::_("DefaultInvoice.client_id_code", true), 'space'=>null, 'value'=>$this->invoice->client->id_code ), array( 'name'=>Language::_("DefaultInvoice.date_billed", true), 'space'=>null, 'value'=>date($this->invoice->client->settings['date_format'], strtotime($this->invoice->date_billed)) ), array( 'name'=>Language::_("DefaultInvoice.date_due", true), 'space'=>null, 'value'=>date($this->invoice->client->settings['date_format'], strtotime($this->invoice->date_due)) ) ); if (!empty($cf_data)) $data[] = $cf_data; You need to update line 407 to set the integer to the correct custom field ID for your custom field. For example, if you go to edit the custom field in Blesta, the integer value will you're looking for appears at the end of the URL. Note that this is a core file in Blesta, and future patches/updates from us may overwrite this file, and you will need to merge these changes with any subsequent update accordingly.
-
Alternatively, you could have gone to [settings] -> [system] -> [staff] -> [staff Groups], clicked to edit your staff group, and re-saved the settings in order to clear the cache.
-
If you have no backups configured, then it did nothing, and success is the default response. If a backup was configured, and had failed, then you would have seen a message regarding the failure as opposed to "The backup completed successfully." Perhaps the default response shouldn't be a success message, but rather more along the lines of "Nothing to do".
-
You would set the email tags in the package welcome email. Let's say you have a universal module product that you're creating. Under the "Package Options" section of your product, you can set a label, name, type, values, whether the field is required, and whether to encrypt the values. e.g. Label: My Package Option Name: my_package_option Type: Text Required: No Encrypted: No Values: Similarly, under the "Service Options" section of the product, you have the same fields available. e.g. Label: My Service Option Name: my_service_option Type: Text Required: Yes Encrypted: No Values: Now when you add/edit a package where you have selected this universal module product, the Welcome Email has tag support for your fields based on their "Name" value as set in the universal module. Based on my example Package and Service options above, you would have these tags available to the package welcome email: {package.my_package_option} {service.my_service_option}
-
The cPanel Extended module is available in my other thread.
-
ModulesGarden had recently released their cPanel Extended module to us, and now after fixing some sanitization issues, we're recently the module unencoded for free (see attached). Since we've made a few changes, it's possible we've introduced new issues, so we're considering this a beta version. Let us know if you find anything. Based on our initial once-over of the module, it's evident that there are some bugs; which we did not attempt to fix. For example, attempting to unsuspend a service does not actually unsuspend the service. You can upload the contents of the attached zip to your Blesta installation directory, and then head into Blesta's admin interface to install the module under [settings] -> [Modules] -> [Available]. NOTE: Version 2.0.0+ of this module requires Blesta v3.2.0+. Changes: ## Version 1.0.2 ### Bug * [CORE-957] - cPanel Extended: Add Order drop-down missing language when setting server group * [CORE-958] - cPanel Extended: Special FTP Accounts can have their passwords changed * [CORE-959] - cPanel Extended: Cannot unsuspend an account * [CORE-960] - cPanel Extended: Client service expandable row shows no content ## Version 1.1.0 ### Requirements - For use with Blesta version 3.1.x. ### Improvement * [CORE-981] - cPanel Extended: Remove the action to fetch module options when changing module row/group ## Version 2.0.0 ### Requirements - For use with Blesta version 3.2.0 or greater. ### Bug * [CORE-1089] - cPanel Extended: Cron may fail to provision services due to "headers already sent" error via session ### Improvement * [CORE-1057] - cPanel Extended: Add service row info sections ### Sub-task * [CORE-1052] - cPanel Extended: Add support for bootstrap in client interface cpanelextended.zip cpanelextended_v1.0.2.zip cpanelextended_v1.1.0.zip cpanelextended_v2.0.0.zip
-
Strange.. glad you got it working though.
-
Interesting... I wonder what response Blesta is receiving. The last check would be to update /components/modules/namecheap/namecheap.php (line 1168): $result = $domains->check(array('DomainList' => $domain)); if ($result->status() != "OK") return false; to $result = $domains->check(array('DomainList' => $domain)); var_dump($result); if ($result->status() != "OK") return false; Surely something must appear after you attempt to check a domain's availability.
-
Then it sounds like an OK response was not received from the API, or was not handled. You can update /components/modules/namecheap/apis/namecheap_api.php (line 99): $response = curl_exec($ch); to: $response = curl_exec($ch); if ($response === false) echo "ERROR: " . curl_error($ch); And try checking the availability of a domain again. If you receive an error regarding a hostname unable to resolve, this is likely a DNS configuration issue with your server related to cURL requests.
-
Can you attempt to debug this on your system? Change /components/modules/namecheap/namecheap.php (line 1173): $response = $result->response(); return strtolower($response->DomainCheckResult->{"@attributes"}->Available) == "true"; to: $response = $result->response(); var_dump($response); die; return strtolower($response->DomainCheckResult->{"@attributes"}->Available) == "true"; Then test it again, and let us know the output. And of course, remove these code changes afterward if you're in a live environment.
-
The id_value is not meant to be changed explicitly since it is a function of several company settings and previous values. The company settings that affect this are not fully implemented, but include clients_start, clients_increment, clients_pad_size, and clients_pad_str. If you wanted to change the start value from 1500 to 2000, you could try the following (warning: I have not tested this): <?php ... $api = new BlestaApi($url, $user, $key); $response = $api->put("companies", "setsetting", array('company_id' => 1, 'key' => "clients_start", 'value' => 2000)); ... ?>
-
Are you using an HTTP redirect to HTTPS in your .htaccess? If so, can you show us what your rule looks like? The URL may be re-encoded, changing it such that the sid can no longer be decrypted, causing the sid to be determined invalid, and thus redirecting back to the login page.
-
$sys_userid is undefined. I can't tell if that function is intended to be a part of the ISPConfig API you're writing or not, but assuming that $remote_api is an object reference to the ISPConfig API, which contains the client_get_id method that accepts the parameter for $sys_userid--and indeed the API performs the necessary remote request upon calling this method--then yes, you could make that API request to perform the action. That is a lot of assumptions, and you still haven't gotten to the point of integrating that functionality through Blesta. Usually when I begin writing a module, I start with the module itself in Blesta by building the required module methods and then integrate the API (if one is already available) to perform the actions on the module. But like I mentioned, you should look online for an API integration that already exists. That will save you 5-20 hours of time from writing your own. Then it comes down to creating the module in Blesta and simply calling the API to perform actions. I would suggest looking over the code in existing modules to get a better idea of how the modules in Blesta work, but when it comes to the API, they are all different, and it's up to you to determine how best to integrate it with the module.
-
What URL is sent in the password reset email?
-
The module file structure should be a minimum of: /modules/ /ispconfig/ /language/ /en_us/ /ispconfig.php /views/ /default/ /manage.pdt ispconfig.php You should look online for a copy of the ISPConfig API in PHP that you can integrate with, and not attempt to use the cPanel API with some tweaks. It looks like you have some sample code, which might help create some API functionality if you were going to do write the API for the module yourself, but that is definitely a time-consuming process. The Module documentation may help you better understand how modules in Blesta work and what is necessary to develop your own.
-
WidgetClient::setTabs() is not a valid method, and that's probably why you receive a blank page. You'll need to use WidgetClient::setLinks().
-
Try using POST. The discount amount also needs to be in an array: $id = $api->post("coupons", "add", array('code' => $coupon, 'company_id' => "1", 'max_qty' => "1", 'end_date' => "2013-11-17 03:59:59",'recurring' => "0", 'limit_recurring' => "0", 'packages' => array("10"), array(array('currency' => "USD", 'amount' => "100.0000"))))->response();
-
I don't see anything since beta that may have affected this. Very little has changed, and I'm not able to duplicate the issue on our servers. If you can provide very detailed steps on setting up the module row settings, creating the package, package group, and how you attempted to create the service using that package which leads to the 'No host defined' error, then we may find something that is being overlooked. And if anyone else experiencing this issue can do the same, that would be helpful.
-
The calendar styling hasn't changed since before v3 was released. The calendar looks the same in your screenshot as it does in older patch versions.