Workarea 3.3.18

Patch release notes for Workarea 3.3.18.

Optionally Find Order Item Details by Product ID

When merchants market the same SKU across multiple products, OrderItemDetails needs to know the product_id in order to find the correct details hash for the variant. Update OrderItemDetails.find to accept an optional :product_id keyword argument, which will be used in the query to find a product variant if provided.

Issues

Pull Requests

Commits

Fix ESLint Path Syntax in CI Scripts

In workarea-ci, the eslint task was not running against all JS files in the project, instead only picking the first match off the top of the wildcard list. This seems to be due to yarn run's way of interpreting the wildcard argument given to it. Use a different syntax, ., to have ESLint go through all files recursively in the current directory, and ignore the node_modules/ folder with the --ignore-paths flag to ESLint.

Issues

Pull Requests

Commits

Stop Admin Toolbar Session Refresh loop

When an admin's session expires, the toolbar can go into an infinite loop of refreshing the login page now that the client can no longer be authenticated. Prevent the admin toolbar from attempting to display when a user is not authenticated.

Issues

Pull Requests

Commits

Fix Time Zone Specification on Cron Jobs

config/initializers/05_scheduled_jobs.rb had duplicate jobs specified without timezone, and additional jobs that never had the timezone specified. This was caused by an upstream merge that Git applied incorrecctly. All cron jobs are now unique and specify the time zone.

Issues

Pull Requests

Commits

Support Callable URL Host In Dragonfly

Workarea automatically sets the Rails.configuration.asset_host to Dragonfly's url_host, which is useful in production to ensure all uploaded assets are going through the CDN, but caused problems for multi-site applications because their asset_host out-of-box is set to a lambda instead of a regular String. The maintainer of Dragonfly has been notified about this issue, but in the meantime, Dragonfly has been patched to allow this functionality and subsequently fix out-of-box multi-site installations.

This functionality has also been provided as an upstream patch to Dragonfly, but has not yet been merged.

Issues

Pull Requests

Commits

Truncate Taxon Names In Menu Builder

In the Taxonomy menu builder, long taxon names have the potential to overlap the "Primary Navigation" edit link text, available when the taxon is a primary menu. The taxon's name is now truncated if the "Primary Navigation" link is going to appear next to it, allowing for longer names to span the full width of the menu if the link isn't going to be rendered.

Issues

Pull Requests

Commits

Use Elasticsearch Scroll API for Exports

Exporting more than 10,000 records from any given Workarea collection previously threw an Elasticsearch error when the export began processing, with a note in the error to use the Scroll API to more efficiently find the necessary results. As a result, Workarea now has scroll API support in the Elasticsearch adapter libraries, accessible using Search::Query#scroll and AdminSearchQueryWrapper#scroll.

Issues

Pull Requests

Commits