Patch release notes for Workarea 3.1.23.
Bump Puma To Latest Minor Version
This helps fix local networking issues with Docker setups, but there are more features that might tickle your fancy.
Specify Product Image Path Options Explicitly
Rather than allow Rails to infer them, specify
options explicitly in its implementation, specifically the call to
mounted_core.dynamic_product_image_path. This helper can raise errors
at random times due to a difference in the attributes based on whether
Rails can or cannot infer their values, so it's less error-prone to
specify these parameters explicitly in the helper definition.
Discovered by Greg Harnly.
Keep Payment Profile Email Address and Order Email Address Consistent
Payment profile email addresses should always be the same value as the order email during the checkout process. However, in guest checkout it's possible to bring these values out-of-sync by changing your email when a payment profile has already been created for the order. This change ensures that Workarea finds payment profiles by reference number and email, and if not, creates a new record. This ensures that a new payment profile record is created for each change to the email on an order, and both fixes the issue for guests as well as prevents against profile takeover of registered users (or existing users in the system).
Protect "Contact Us", Email Signup, and Forgot Password Forms from Denial-of-Service Attacks
Forms on the
were open to Denial of Service attacks since they had no way of
throttling requests sent to those pages. Workarea now mitigates the
impact spammers might have on the resources of your application by
Rack::Attack rule for POST requests to the above routes,
based on IP and/or email address. This also prevents Workarea from
needing to depend on CAPTCHA even further to prevent automated clients
from using the form.
Fix Indicator of Selected Category in Secondary Navigation
Fragment cache keys for a menu of taxons did not originally include the ID of the selected taxon in the key, resulting in the page appearing like the link was never selected. Workarea now avoids this problem by including the selected taxon's ID in the fragment cache key for the menu.
Change Regions In Address Region Select Field, Regardless Of Dom Structure Changes
resetSelectUI() function in
to query for the region
<select> field in order to change its
contents. Previously, the order in which the order that DOM elements
were laid out on the page mattered, and a bug was discovered when the
two elements reversed position on the page layout. Now, the
from within the local
.address-fields element is selected, improving
reliability and robustness in the JS code.