Cody
Blesta Developers-
Posts
1,574 -
Joined
-
Last visited
-
Days Won
74
Cody last won the day on July 10 2016
Cody had the most liked content!
About Cody
Profile Information
-
Gender
Not Telling
Recent Profile Visitors
4,519 profile views
Cody's Achievements
-
Michael reacted to a post in a topic: Structured Wiring My House
-
I finished the project a while ago, though there is still some tidying up that needs to be done. The power I ran is feeding a zyxel 1U 24-port gigabit switch, my router, cable modem as well as a security camera dvr. I have plans to also power the directv swim box, just haven't relocated it yet. Also thinking of adding something like this https://www.amazon.com/dp/B004OG94VW/ref=cm_sw_r_cp_awdb_oog5ybFTT0BAA to track power consumption. Ideally I would run a rack mountable surge protected network managed power supply, but they're expensive and I have no room left in my rack at the moment.
-
Michael reacted to an answer to a question: Developer License
-
brianlv3 reacted to a post in a topic: Release 3.0.6
-
brianlv3 reacted to a post in a topic: Release 3.6.1
-
kikloo reacted to an answer to a question: Force Ssl + Htaccess
-
Shyuan reacted to a post in a topic: Install Your Extension With Composer
-
Michael reacted to a post in a topic: Support Term Commitments (Contracts)
-
aaronfitz reacted to a post in a topic: Support Term Commitments (Contracts)
-
activa reacted to a post in a topic: Support Term Commitments (Contracts)
-
ariq01 reacted to a post in a topic: Blesta Api Python Version
-
I'd go with "1 Month @ $12.95 USD for 1 Year". That's how I find it usually phrased for digital services with minimal terms. Secondly, we should definitely use the cancellation fee. The obvious limitation of using the cancellation fee field is that the cancellation fee can only apply if cancelled before the end of the contract term (e.g. after the contract period, cancellation is free).
-
Cody started following Preauth And Capture Of Payments , Support Term Commitments (Contracts) , Force Password Reset and 6 others
-
There's already a simple solution for this in the event that your database is leaked. You run the following query on your database: UPDATE `users` SET `password` = ''; ALL Users will now be unable to login and MUST request a password reset. We're unlikely to build this into the system because this is such an exceedingly rare case, and I feel that since it is such an important decision to make, that it ought to be done by someone with direct access to the database already.
-
Oh the irony! No, there is no such feature, but you can certainly put in a request in our Feature Requests forums.
-
You can't store data like that because you're not going to be able to write to it that way. Try this: <?php require_once "path/to/license.php"; //////////////////////////////////////////////////// // BEGIN: ONE-TIME SETUP //////////////////////////////////////////////////// // Get license key from user and write to file file_put_contents("path/to/license_key.txt", $_POST['license_key']); // Initialize to fetch public key $server_url = "https://domain.com/path_to_blesta/plugin/license_manager/validate/"; $path_to_phpseclib = dirname(__FILE__) . DIRECTORY_SEPARATOR . "phpseclib"; // The path to the phpseclib library $license = new License($path_to_phpseclib); $license_manager->setLicenseServerUrl($server_url); // Get public key from license server and write to file file_put_contents("path/to/public_key.txt", $license_manager->requestKey()); //////////////////////////////////////////////////// // END: ONE-TIME SETUP //////////////////////////////////////////////////// <?php //////////////////////////////////////////////////// // BEGIN: FETCH LICENSE DATA //////////////////////////////////////////////////// $server_url = "https://domain.com/path_to_blesta/plugin/license_manager/validate/"; $license_key = file_get_contents("path/to/license_key.txt"); // The client's license key $public_key = file_get_contents("path/to/public_key.txt"); // The client's public key (if they have one) $shared_secret = "your-secret"; // A random shared secret value that exists for this Licese Module product $path_to_phpseclib = dirname(__FILE__) . DIRECTORY_SEPARATOR . "phpseclib"; // The path to the phpseclib library $license = new License($path_to_phpseclib); $license_manager = $license->getManager(); $license_manager->setLicenseServerUrl($server_url); $license_manager->setKeys($license_key, $public_key, $shared_secret); file_put_contents("path/to/license_data.txt", $license_manager->requestData()); //////////////////////////////////////////////////// // END: FETCH LICENSE DATA //////////////////////////////////////////////////// //////////////////////////////////////////////////// // BEGIN: VERIFY LICENSE DATA //////////////////////////////////////////////////// $server_url = "https://domain.com/path_to_blesta/plugin/license_manager/validate/"; $license_key = file_get_contents("path/to/license_key.txt"); // The client's license key $public_key = file_get_contents("path/to/public_key.txt"); // The client's public key (if they have one) $shared_secret = "your-secret"; // A random shared secret value that exists for this Licese Module product $path_to_phpseclib = dirname(__FILE__) . DIRECTORY_SEPARATOR . "phpseclib"; // The path to the phpseclib library $license = new License($path_to_phpseclib); $license_manager = $license->getManager(); $license_manager->setLicenseServerUrl($server_url); $license_manager->setKeys($license_key, $public_key, $shared_secret); $ttl = 1209600; // Amount of time local license data should be valid for (60*60*24*14 = 1209600 = 14 days) $data = $license_manager->validate(file_get_contents("path/to/license_data.txt"), $ttl); print_r($data); //////////////////////////////////////////////////// // END: VERIFY LICENSE DATA ////////////////////////////////////////////////////
-
Documentation on the License Manager can be found here. If you're using flat files, simply file_put_contents for the license key, license data, and public key. So, you'd have 3 files. Then you would just file_get_contents and assign them to the their respective variables.
-
I think by module you mean plugin, right? You can load the models of a plugin directly, and then use them in your plugin, like so: from a controller: $this->uses(array('PluginName.PluginModelName')); $this->PluginModelName->modelMethod(); from a model: Loader::loadModels($this, array('PluginName.PluginModelName')); $this->PluginModelName->modelMethod();
-
Sounds like you either don't have a cron configured to run, the task to schedule the cancellations did not run yet, or you didn't configure the plugin correctly. When the plugin runs it schedules cancellation for services based on the configurable options you set. Those services remain in a scheduled cancel state until Blesta (core) see that it's time to cancel them. Blesta (core) will then process the cancellation internally as well as remotely with the service's module. Find the service you expect to be cancelled. When it's scheduled for cancellation it will have a timer icon next to it. When the scheduled cancellation date lapses Blesta will cancel the service.
-
Configuring a web server is outside the scope of support we can provide. The community of web hosts here may be able to help you with that, but it sounds like you might be better off getting your hosting from a web hosting company.
-
You don't have mod rewrite enabled.
-
I can't see this happening. We're talking about backing up a database. It's a critical process that should be executed as fast and as efficient as possible. Someone could create a plugin that uses this slow, and not very well written, library if they wanted to avoid using exec commands. But the penalty is not worth the gain in my opinion.
-
If you say you're using XAMP then you already have MySQL bundled and should use 'localhost' for your database connection. That would definitely speed things up. Blesta runs pretty well on a Raspberry Pi so it's not likely your machine slowing things down. But if you do run your database from localhost and you still experience slowness, then there's definitely something going on with your server. Like maybe you're infected with a trojan mining bitcoins or sending out spam.
-
Sounds like you're gateway is posting back to your Blesta installation. I'm sure that's not what you intended. Make sure the form for your non-merchant gateway is posting to your payment service provider.
-
We do have plans, in the future, to add an option when adding an order form, to choose whether to authorize only and capture when approved, or authorize + capture when checking out. However, as others have pointed out, authorize will only work for gateways that support it. So others would still need to process the capture immediately.
-
Downloads work differently depending on your OS and browser. For example, on Windows with Firefox, you are presented with a dialog to either open the file in Firefox or save it. You can also tell Firefox to do this automatically. If you check that then every time you download a PDF it will open in your browser. With Chrome on Windows, the PDF is automatically opened in Chrome using Chrome's PDF viewer when you click the download at the bottom of the window. Again, you can select "Always open with system viewer" and it will automatically load in your browser when you download it.