Jump to content


Blesta Developers
  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by Abdy

  1. We've already created a task for that CORE-3791
  2. I just tried it and indeed it's a MySQL error. SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xF0\x9F\xA4\xA0' for column 'details' at row 1
  3. Abdy

    Custom Smart Search

    You can change Smart Search to another one, clicking on the magnifying glass icon.
  4. Abdy

    Custom Smart Search

    I think the best way to implement your own custom search is by using events and not a route. To implement it using events you need to register the event in the *_plugin.php file as in the following example: In this example we register the search() function from the AdminMain controller. class SearchPlugin extends Plugin { // ... public function customSearch($event) { $params = $event->getParams(); if (isset($params['options'])) { $params['options'] += [ $params['base_uri'] . 'plugin/search/admin_main/search/' => 'Custo
  5. Abdy


    You can add custom css and js files in both header and footer by adding them in the /app/views/client/bootstrap/structure.pdt file.
  6. I don't understand what is exactly the issue, could you please elaborate a little more on what the problem is?
  7. I think it is not necessary to use events for what you are looking for, from the addService() function you can add a condition that if the configurable option exists, a support ticket is created. The addService() function is automatically executed by the cron task when the invoice related to the service has been paid in full. Here's a quick example, assuming that the configurable option for the extra service is named "migration_service": public function addService( $package, array $vars = null, $parent_package = null, $parent_service = null, $status = 'pending' ) {
  8. Try using Loader::loadModels($this, ['SupportManager.SupportManagerTickets']); This is due to $this->uses() is not accessible from a module.
  9. Abdy


    You can use add-ons instead of configurable options. Add-ons can have different terms than the main package. Here's a quick example, I created an add-on package for a one time cost of $200. This package belongs to a package group of the Add-on type named Additional Services. I assigned the Hosting package group as a parent of the Additional Services package group. At the moment of adding a new service, regardless of the term of the parent package, the add-on "Migration Service" can be added, even though the parent package is monthly and the add-on is one time.
  10. You can change the price of a service for each user individually, modifying the service and overriding the price with the new price for that user in specific.
  11. The "Log In" definition can be located on /language/xx_xx/app_controller.php
  12. This usually happens when some definitions are missing from the language pack in use, Blesta does not come by default with a dropdown called "Billing" in the navigation bar. Maybe this one is being added by a third party plugin? If you are using a third party plugin, you may need to update the language files of that plugin. However, you can find the language definitions from the navigation bar on the /language/xx_xx/navigation.php file, where xx_xx is the language pack you are using.
  13. Abdy

    too many email sending

    All these emails are being sent duplicate to the same email address?
  14. Check if the automation tasks are enabled for the Mass Mailer plugin on Settings > Company > Automation in the Plugin tab.
  15. The navigation menu can be found on /app/views/client/bootstrap/structure.pdt, in this file is available the $logged_in variable, which allows you to know if a user has logged in or not. <?php if ($this->Html->ifSet($logged_in)) { ?> <!-- The user is logged in: navmenu1 --> <?php } else { ?> <!-- The user is not logged in: navmenu2 --> <?php } ?>
  16. No, the API is able to return the results in a JSON object if desired, but not receive a JSON object as a request body.
  17. Are the packages also priced in USD? You also need to check the USD option on your order forms settings (Packages > Order Forms > Edit) after adding a new currency.
  18. First of all you need to add a user to the API, which can be done at Settings > System > API Access, once the user is added the key will be shown along with the user. Keep in mind that API users differ from staff users.
  19. Apparently this bug has already been reported in the CyberPanel GitHub repository as the problem occurs even in the official WHMCS module. https://github.com/usmannasir/cyberpanel/issues/47 I am surprised that they introduce non backward compatible changes to API in a minor update. Apparently they're not using semantic versioning.
  20. You can modify the module to trim the word "test" in the username, or generate a random username if the word "test" is detected in the domain. This way the module can create the account.
  21. This is not a limitation of Blesta, it is a limitation of cPanel itself. You cannot create an account in cPanel that starts with "test".
  22. I think the logo image could be encoded in Base64 and saved as a company setting in the database. Probably a very large image could affect performance, so before encoding, it should be resized and perhaps compressed. Although I don't know if it can affect performance in a real-life scenario.
  23. Everyone who requested a refund received it within 24 hours. I'm really sorry about what happened and promise to reward the people involved as an apology. Everyone who received a refund, will still receive the license (perk) they originally purchased when the module gets released for free. I don't want to make the same mistake again, so this time I'd rather not give a release date. I take responsibility for the mistake I made and I hope to be able to amend my mistake soon and make my best effort to never repeat it again. I don't want to use this as an excuse, I take full responsibili
  • Create New...