== Changelog == = 1.7.2 = * New: added a new hidden field to store the transaction id. = 1.7.1 = * Fixed: starting a subscription with the previous edition always triggered a physical resending of the previous edition, even if the edition was digital. = 1.7.0 = * Fixed: currency symbol not showing correctly in some places. * Update: changed Requires PHP from 8.1 to 8.2. PHP 8.1 will no longer receive security updates as of December 2025. = 1.6.9 = * Update: tested up to WordPress 6.9. * Update: fixed string translations. = 1.6.8 = * Update: added german confirmation email template. = 1.6.7 = * Fixed: certain strings were not translated. * New: added support for the French and German language. = 1.6.6 = * Fixed: deleting cache from settings page now works correctly. * Update: minor improvements. * Update: replaced wp_redirect with wp_safe_redirect for better security. = 1.6.5 = * Update: added enumerations for different getInfo functions to improve code readability. = 1.6.4 = * Fixed: minor bug fixes and improvements. * Update: error and spam message are now their own separate item in order to improve clarity. * Update: handling of some session variables improved. * Update: function that creates subscriptions broken out into smaller functions for better readability and maintainability. * New: added extra capabilities to allow user with limited rights to manage certain settings. = 1.6.3 = * Fixed: initials did not always have . at the end. = 1.6.2 = * Fixed: using jQuery directly to keep things simpler and prevent issues with other parts of the site (instead of using jQuery.noConflict). = 1.6.1 = * Fixed: cache name for payment links could be built with a wrong value, resulting in an exception that would prevent the payment link from being generated. = 1.6.0 = * Fixed: form could not be submitted with a review page enabled. = 1.5.9 = * Update: nonces are now also stored in the sessionStorage of the browser to prevent issues with nonces being cached by a caching plugin. = 1.5.8 = * Update: nonce cookies now use '/' as path to prevent issues with multiple pages. = 1.5.7 = * New: forms used by gravity forms will now always show error messages. * Update: nonce cookies now use samesite lax to prevent issues with some browsers. = 1.5.6 = * Fixed: password and JWT secret can now be saved with an empty string (api and jwt functions will not work with an empty string). * Fixed: nonces values were sometimes being cached by a cache plugin, causing the nonce to be invalid. Nonces are now also stored in cookies to prevent this issue. * New: added a new field that shows all actions in the form of a dropdown. * Update: ajax calls also send error messages in order to debug certain issues better. = 1.5.5 = * Update: refactoring grafity forms settings. * New: added a setting that can be used to preselect an action in a form. = 1.5.4 = * Update: added conditional logic to the extra charge field. = 1.5.3 = * Fixed: ajax requests did not determine the new locale correct. = 1.5.2 = * Fixed: ajax requests now take into account both language and locale. = 1.5.1 = * Fixed: new field for extra charge was not always shown correctly in the orbital form theme. = 1.5.0 = * Update: the review page hides the subscription price if the subscription is free. * Update: the review page hides the edition row if the chosen edition is the next edition. * Update: the review page hides the submit button if something is wrong. * New: added a new field that allows users to fill in an extra charge. = 1.4.9 = * Fixed: address was not always validated correctly. = 1.4.8 = * Fixed: the note field could not be mapped correctly if the leading address was set to payer. * Fixed: JS, CSS and image files are now loaded more dynamically. * Fixed: if the price for shipping abroad is the same as the price for shipping to the default country, the adjusted price is not shown anymore (because the prices are the same). * Update: field content is now loaded immediately when the form is loaded (if possible). * Update: default values for certain fields are loaded differently. * Update: the welcome gift is now loaded differently to optimize performance. * Update: rates are loaded differently to exclude publisher rates. * Update: the review page is now loaded differently to optimize performance. * Update: translations have been updated. * Update: translating the welcome gift text is now handled by the api. * Update: code has been cleaned up. * Update: openssl_random_pseudo_bytes has been replaced with random_bytes. * Update: prefix has been updated from bsa to bsaPlg. * Update: sql queries have been updated to optimize performance. * New: added a new setting to hide the welcome gift field if there is only one choice. * New: added a new field that allows users to choose their start edition. * New: added extra address validation to prevent errors. * New: added session caching for retrieving addresses. * New: added a way to preffill the subscription form with the values of an old subscription. * New: added a way to generate a secret for a jwt token. * New: added a new setting to save the jwt secret. * New: added a new icon for the discount code field. * New: added a new button that can clear the api cache. = 1.4.7 = * Fixed: welcome gifts were loaded incorrectly. = 1.4.6 = * Update: small performance improvements thanks to the V2 version of the api. * New: new field added for customers to add a discount code. = 1.4.5 = * Update: plugin now uses version 2 of the bondis subscriptions api. = 1.4.4 = * Fixed: ajax calls were being blocked by the browser. = 1.4.3 = * Update: big refactor to prepare for the V2 of the bondis subscriptions API. = 1.4.2 = * Fixed: small styling changes to fix the styling of the review page. = 1.4.1 = * New: added iDEAL to possible payment methods for cheapest rate. = 1.4.0 = * Fixed: small bug fixes regarding visibility of classes. * Update: embed shortcode now supports max_width. * Update: plugin uses new Gravity forms javascript hooks. * Update: javascript files are formatted with new eslint. * Update: css class names have changed. * New: ecommerce purchase event is pushed to the datalayer. * New: added new hidden fields to store information about the chosen action and payment method. = 1.3.9 = * Fixed: big bugfixes regarding the review page. = 1.3.8 = * Fixed: small bugfixes regarding api calls. = 1.3.7 = * Fixed: country for the payer address is selected correctly. * Fixed: hidden nonce field is only added once. * Update: labels on the review page are wider for better readability. * Update: connection timeout for API calls is now 10 minutes. * New: added a shortcode to embed social media posts and web pages. * New: added new social media settings. = 1.3.6 = * Fixed: action type was not always set correctly. = 1.3.5 = * Fixed: bulk actions on registration page work correctly now. = 1.3.4 = * New: added actions to hook into. These actions occur after creating a registration and after updating a registration. = 1.3.3 = * Update: tested with WordPress 6.7. * Update: updated layout payment methods. = 1.3.2 = * Update: updated translations. * Update: translations are now loaded locally. * Update: cleaned up code according to new code style (KaR). * New: added a shortcode to show the release schedule for all editions from a specific magazine. * New: added a new tab to the settings to help with the shortcodes. * New: added icons to the payment methods. = 1.3.1 = * Update: updated translations. = 1.3.0 = * Update: javascript dependencies fixed for minified files. = 1.2.9 = * Update: cleaned up code for new field (give authorization for direct debit). = 1.2.8 = * Update: custom fields don't create their own html output anymore. Instead they use the method from the parent. * New: new field added for customers to give authorization for direct debit. = 1.2.7 = * Fixed: files are now included in a new more direct way. = 1.2.6 = * Fixed: form could not be submitted do to required nonce. = 1.2.5 = * Fixed: processing the whole input. * Update: used eslinter to change JS files. * Update: database calls now use wpdb->prepare in a different way. * Update: a gravity form-form will now always get a nonce value added. * Update: ajax calls now check for a nonce themselves, instead of relying on a different function for this. = 1.2.4 = * Fixed: processing the whole input. * Fixed: post and get values are now sanitized. = 1.2.3 = * Fixed: translation error. * New: added support for new language. The new language is: Belgian. = 1.2.2 = * Fixed: placeholder values are no longer affected by uppercase styling. = 1.2.1 = * Fixed: back button now also has a nonce (edit registration page). * Update: replaced Curl with WordPress http api. * Update: replaced bsa prefix with bsaPlg. * Update: added throwable to try catch. * Update: updated email content to have a simpler structure (but same look and feel). * Update: updated database functions. * Update: updated view url (see logs/registrations pages). * New: added extra field settings for custom gravity form fields. = 1.2.0 = * Fixed: custom gravity form fields now work with tabIndex when loading the form. * Fixed: stable tag was using the wrong value. * Update: changed Requires PHP from 8.2 to 8.1. = 1.1.9 = * Fixed: javaScript code also executed for other forms from Gravity Forms. * Fixed: invoice period shortened when saving to the database. * Fixed: sometimes the word "Belgium" was used instead of "Belgian". * Update: links changed to bondis.nl. * Update: updated translations. * New: added a Gravity Forms field for postal codes. = 1.1.8 = * Update: changes made to publish the plugin = 1.1.1 = * New: first version of the plugin == Upgrade Notice == = 1.7.2 = * Get this version to get the latest bug fixes and improvements. = 1.7.1 = * Get this version to get the latest bug fixes and improvements. = 1.7.0 = * Get this version to get the latest bug fixes and improvements. = 1.6.9 = * Get this version to get the latest bug fixes and improvements. = 1.6.8 = * Get this version to get the latest bug fixes and improvements. = 1.6.7 = * Get this version to get the latest bug fixes and improvements. = 1.6.6 = * Get this version to get the latest bug fixes and improvements. = 1.6.5 = * Get this version to get the latest bug fixes and improvements. = 1.6.4 = * Get this version to get the latest bug fixes and improvements. = 1.6.3 = * Get this version to get the latest bug fixes and improvements. = 1.6.2 = * Get this version to get the latest bug fixes and improvements. = 1.6.1 = * Get this version to get the latest bug fixes and improvements. = 1.6.0 = * Get this version to get the latest bug fixes and improvements. = 1.5.9 = * Get this version to get the latest bug fixes and improvements. = 1.5.8 = * Get this version to get the latest bug fixes and improvements. = 1.5.7 = * Get this version to get the latest bug fixes and improvements. = 1.5.6 = * Get this version to get the latest bug fixes and improvements and to be able to work with the new action field. = 1.5.5 = * Get this version to get the latest bug fixes and improvements. = 1.5.4 = * Get this version to get the latest bug fixes and improvements. = 1.5.3 = * Get this version to get the latest bug fixes and improvements. = 1.5.2 = * Get this version to get the latest bug fixes and improvements. = 1.5.1 = * Get this version to get the latest bug fixes and improvements. = 1.5.0 = * Get this version to get the latest features and improvements. = 1.4.9 = * Get this version to get the latest bug fixes and improvements. = 1.4.8 = * Get this version to be able to work with the latest version of the plugin and all the new features. = 1.4.7 = * Get this version to load welcome gifts correctly. = 1.4.6 = * Get this version to receive small performance improvements and to use the new discount code field. = 1.4.5 = * Get this version to be able to use the new version of the bondis subscriptions api. = 1.4.4 = * Get this version to fix the ajax calls not working in 1.4.3. = 1.4.3 = * Get this version to be able to work with the latest version of the plugin. = 1.4.2 = * Get this version to be able to work with the new styling of the review page. = 1.4.1 = * Get this version to be able to work with actions that only support iDEAL as payment method. = 1.4.0 = * Get this version to be able to work with the new purchase event and max_width support for the embed shortcode. = 1.3.9 = * Get this version to be able to receive the latest bug fixes regarding the review page. = 1.3.8 = * Get this version to be able to receive the latest bug fixes regarding api calls. = 1.3.7 = * Get this version to be able to work with the new social media shortcode and settings. = 1.3.6 = * Get this version to be able to set the action type correctly. = 1.3.5 = * Get this version to be able to sync all records again. = 1.3.4 = * Get this version to work with the new insert and update actions. = 1.3.3 = * Get this version to work with the new layout for payment methods. = 1.3.2 = * Get this version to work with a new shortcode, see icons for all payment methods and receive new translations. = 1.3.1 = * Get this version to receive new translations. = 1.3.0 = * Get this version to work with minified javascript files again. = 1.2.9 = * Get this version to receive small improvements. = 1.2.8 = * Get this version to use the new authorization field. = 1.2.7 = * Get this version to receive small improvements. = 1.2.6 = * Get this version to fix a bug from 1.2.5. = 1.2.5 = * Get this version to receive small improvements. = 1.2.4 = * Get this version to receive small performance improvements. = 1.2.3 = * Get this version to be able to work with the new language: Belgian. = 1.2.2 = * Get this version to fix the placeholder styling. = 1.2.1 = * Get this version to be able to work with placeholders, default values and size settings for custom gravity form fields. = 1.2.0 = * Get this version to be able to work with php8.1 (or higher) and to make sure tabIndex works. = 1.1.9 = * Get this version to fix two important bugs and get new functionality. = 1.1.8 = * This version changes multiple things in order to comply with the [guidelines](https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/) = 1.1.0 = * Get this version to use the first (released) version of the plugin.