Jump to content

lukasP

Members
  • Posts

    22
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by lukasP

  1. This is related to all modules I think.

     

    The best solution from my point of view is to validate in module the downgrade. So when client is doing downgrade process validation function in module. This function can return true by default and it is up to us if we want to do some validation or not.

     

    So for e.g. Plesk, OnApp, SolusVM, cPanel etc. we can check e.g. disk usage and in the validation fuction we can return false in case the disk usage is higher than the requested disk size. Then Blesta will print an error to client like "Your disk usage is higher than requested new disk size.".

  2. Yes, it is.

     

    See e.g.:

    https://docs.onapp.com/display/41AG/Edit+Virtual+Server+Disks

     

    It is not related to OnApp only. The VM can have higher disk usage than the new requested size.

     

    There are ways to do it. Important is that it should be done by contacting provider for example. Unfortunately Blesta simply accepts the service configuration changes without informing provider about the changes. So the VM can hang or whatever else.

     

    So as a workaround I disable descresing VM disk size in module and email provider to consult the situation with client when the module::editService() should process disk size decrease.

  3. Currently this would be done in 2 steps as an admin

     

    1. Manually create the invoice

    2. Manually bump the renew date

     

    In this case, the invoice is not physically linked to the service though, so the service would not be suspended if unpaid. The advantage of this method is that it allows the customer to pay however far in advance they want. It's not limited to a single additional term. The downside is that there's more work, and that it's not self-service for a client.

     

    How would you see such a feature being implemented, both as an admin, and as a client? What would this look like?

     

    Yes, this is absolutely fine if you have 10 clients, but if you have thousands of clients then it is not convenient.

     

    Implementation

     

    Admin area

    Clients > client > Service > Manage > add button to the Actions block: "Generate renewal invoice".

     

    Client area

    Dashboard > service > Manage > add button to the Actions block: "Generate renewal invoice".

  4. We would like to have the ability to disallow downgrade of specific Package option for active services.

     

    A checkbox should be added to the Package option configurator which disables the ability to downgrade the Package option.

     

    Clients will have just the ability to upgrade the Package option. This is very useful for services using virtualization modules. In some VM filesystems it is not possible to decrease the VM disk size, only upgrade is possible.

  5. Blesta: 3.4.3

     

    Client changes service term e.g. from 1 month into 3 months.

     

    The service price is changed to 3 months correctly, but service options pricing remains default (1 month price).

     

    When the renewal order is generated the service price is correct (for 3 months), but option prices remain monthly.

     

    It seems that when client changes service term the sql table DB.service_options :: options_pricing_id is not altered.

  6. I am developing OnApp module and it should be available during this summer.

     

    I am using OnApp PHP Wrapper External as API class.

     

    Planned features:

    - VM provisioning (create, suspend, destroy, change resources)

    - VM resources upgrades/downgrades invoiced (here I must wait for Blesta 3.5)

    - VM admin/client: turn on/off, reboot, console, reinstall (+ change template), change hostname, change root password, console (html5), statistics, firewall, backups

     

    In the future:

    - OnApp DNS

    - OnApp Load balancers

    - OnApp Smart servers

    - OnApp CDN

     

    I do not plan to develop mettered billing - charge customer per CPU usage etc.

  7. PauloV, thanks, I forgot that.

     

    The summary is now:

     

    1) Each proforma invoice must have unique and subsequent number.

    2) When proforma invoice is paid the invoice date must be equal to payment date.

    3) Client details have to be always saved on the invoice and cannot ever be changed once the final invoice is generated.

     

    Serge, that is okay. Employees do not have direct access to database to alter the database content.

  8. Blesta version: 3.4.0

     

     The email template "Invoice Delivery (Paid)" is not being sent when a proforma invoice is paid and the invoice is closed.

     

    Clients have invoice delivery method set to Email, the client group as well.

     

    We are using Blesta with 2 languages, the email template is properly translated to the second language.

     

     

     
  9. Hello Tyson,

     

    The goal is to get to know what value of package option has been selected by customer or by admin when adding service.

     

    If I take look at the array of config options I see:

    print_r($vars['configoptions']);
    
    Array ( [6] => 1024 [8] => 2 [5] => 1 [7] => 10 ) 
    

    I understand that the keys represent package_options.id in DB.

     

    I am not expecting to get ID, but the package option name e.g. myprefix_cpu.

     

    Is there some elegant way how to do this?

     

    My idea is to get array from DB package_options and do array_marge with $vars['configoptions'] to have new array like:

    Array ( [myprefix_ram] => 1024 [myprefix_ips] => 2 [myprefix_cpu] => 1 [myprefix_disk] => 10 )
    

    As mentioned the config options are used for provisioning the service.

     

    // Sorry for my English. I hope it is more clear now.

  10. Hello all,

     

    I have created package config option in:

    Blesta > Packages > Options > Create option

    - label: CPUs

    - name: myprefix_cpu

    - type quantity

     

    I have assigned the option to group and package.

     

    In the module file I need to get value of myprefix_cpu in the function getFieldsFromInput(). The value of myprefix_cpu is mandatory for provisioning. I can't figure out how to do this.

     

    What I have tried in the function getFieldsFromInput():

    $fields = array(
        // ... other keys
        'cpus' => $vars['configoptions']['myprefix_cpu']
    );
    return $fields;

    However it is incorrect.

     

    Thanks for any help in advance.

×
×
  • Create New...