99 Updates - ecellar/remote-widgets GitHub Wiki
Released 9/23/2024
You may now enable a full-featured Side Cart that will dynamically slide into view when General Store products are added to the cart. To do so, include this HTML element on your relevant SPA-enabled pages:
<div data-ecp-sidecart></div>
The functionality includes:
- Product Suggestions: a carousel displaying up to 4 suggested products, each with an Add To Cart button.
- Cart Item Info: product name, thumbnail image (if present), price, dynamically updatable quantity, subtotal and option to remove the product. Thumbnails are coerced to a desirable size via CSS.
- Zip-based Shipping/Tax Estimates: users may enter a US Zip Code to obtain estimated tax and shipping. For shipping, the default ship rate for the zip’s state is used.
- Summary Section: a detailed, dynamically updated section showing cart subtotal, discounts, ship rate, estimated taxes, any applicable bottle deposits or fees, and the current cart total, along with the name of applied discounts.
- Allocated Items Section: appears if any allocated items are in the cart (linked to the My Account > Allocation view).
Notes:
- The Product Suggestions carousel uses the same Auto-Suggest settings that the Side Kick does. Your client can enable suggestions for their site via the ACP.
- The Side Cart slides into view in a similar manner as the Side Kick (older feature). If your HTML includes BOTH the Side Kick element and the Side Cart element, the Side Cart will be used.
Example:
We have replaced the main Cart Editor with a new design. You do not have to do anything to enable the new functionality.
The new Cart Editor includes all of the features of the new Side Cart (except suggested items), plus:
- Coupon Code Entry: users may enter a coupon code to apply to their cart. Valid coupon codes will be persisted into the checkout workflow and will be shown in the Order Review step.
- Two-Column Design: when viewed in a desktop browser (or other wide-enough browser), cart items will be shown in a column on the left and the summary section will be shown in a column on the right. On mobile, the summary will appear below the cart items.
Note: the coupon code will be removed if the user continues shopping and adds more items to their cart.
Example:
We have added these templates:
Cart.html
Cart__AllocatedProduct.html
Cart__DiscountName.html
Cart__Product__Option.html
Cart__Product_A.html
Cart__Product_B.html
SideCart.html
SideCart__AllocatedProduct.html
SideCart__DiscountName.html
SideCart__Product__Option.html
SideCart__Product_A.html
SideCart__Product_B.html
SideCart__SuggestedProduct_A.html
SideCart__SuggestedProduct_B.html
We have removed these templates:
GeneralCart.html
GeneralCart__AllocatedProduct.html
GeneralCart__Product_Option.html
GeneralCart__Product_A.html
GeneralCart__Product_B.html
GeneralCartRemove.html
GeneralCartRemoveAllocated.html
We have made a minor addition to this template (used by Side Kick):
AddedToCart.html (new data-ecp-x-limit=“2” for suggestions)
New and Updated templates are marked with the 9/23/24 date in the 12 Template Directory.
New CSS classes have been added to our default theme. The new classes can be seen in multiple places in our source file, labeled with:
/* === CART UPDATES RELEASE === */
IMPORTANT: if you are not loading our default theme in your site, you will need the new classes to format the enhanced functionality.
Released 7/1/2024
We have made changes to how email consent is handled. Customers creating new accounts will be given the option to opt-in to email marketing messages.
For enterprise clients:
- a new customer’s opt-in decision will only apply to the site’s brand
- the opt-in/out setting in the customer’s profile in My Account will only affect the site’s brand
Login
CreateAccount.html
Signup
CreateCustomer.html
JoinClubCreateCustomer.html
IMPORTANT: Our default set of templates will automatically display the new enhancements. If you have forked any of the templates listed above, and you wish to display these enhancements, you will need to compare your forked templates to our updated templates and add all of the new enhancement-related HTML elements to your forked templates.
New Messages
New messages have been added to the Login and Signup message sets. Look for this message key:
OKToEmail
The order id is now included in the event data as ‘transaction_id’ which may need to be mapped as a user defined variable for a site using Google Tag Manager. Refer to Reporting Analytical Statistics documentation for additional details.
Released 5/13/24
We have introduced Club Tier slugs. They are now used instead of Public Tier Name
for deep links that bypass steps 1 and 2 of the Join Club workflow (thus pre-selecting the tier). Prior public tier names have been copied into the new club tier slug field, to prevent breakage for sites already using Public Tier Name. You and your client may now change the slugs as you see fit.
For example, if a club tier’s slug is Premier Reds
your client could change it to premier-red-wine-club
and you could use it in URLS like this:
https://<yoursite.com>/<spa-path>/?view=joinclub&club_tier_name=premier-red-wine-club
If you are using URL Rewrites, it would look like this:
https://<yoursite.com>/<spa-path>/joinclub/premier-red-wine-club/
Please note: the slug is case-sensitive.
More info about deep links is available here
CRV Support, View load notifications, Consumer login state notifications, Consumer profile notifications
Released 12/18/23
We have added new functionality:
1. CRV (bottle bill) support in club remix, web, allocation, reservation booking, push pay, and order detail.
2. Add epubOptions parameter to listen for view load notifications.
3. Add epubOptions parameter to listen for consumer login state notifications.
4. Add epubOptions parameter to listen for consumer profile notifications.
Documentation for new epubOptions available here: Initialization-Options#subscribetodata-object
Account
OrderDetail__Product.html
OrderDetail__Product__Requested.html
OrderPay__CartItem.html
RemixReview__CartItem.html
Checkout
OrderReview__CartItem.html
OrderReview__CartItem__Allocated.html
Reservation
ReservationBook__OptionalProduct.html
ReservationBook__OptionalProduct__Variant.html
ReservationBook__Product.html
ReservationBook__Product__Variant.html
ReservationBook__ReservationProduct.html
ReservationBook__ReservationProduct__Variant.html
IMPORTANT: Our default set of templates will automatically display the new enhancements. If you have forked any of the templates listed above, and you wish to display these enhancements, you will need to compare your forked templates to our updated templates and add all of the new enhancement-related HTML elements to your forked templates.
Released 10/10/23
We have added new functionality:
1. Better support for allocation events that do not allow requests; hide request quantity in cart and checkout review.
2. Add class to body element when “page” level DW content is loaded; example class: ecp-viewing-checkout
3. Club Remix product data now includes additional product data that can be used in custom templates.
4. Add new API endpoint to provide product meta data for improved SEO.
5. Send GA4 stats event (join_group) when existing customer joins club in “my account”.
Cart
GeneralCart__AllocatedProduct
Checkout
OrderReview__CartItem__Allocated
IMPORTANT: Our default set of templates will automatically display the new enhancements. If you have forked any of the templates listed above, and you wish to display these enhancements, you will need to compare your forked templates to our updated templates and add all of the new enhancement-related HTML elements to your forked templates.
Updated and New templates are marked with the 10/10/23 date in the 12 Template Directory.
Views that load with a view=parameter will update the body with a class ecp-viewing-parameter. The view parameter will be the default parameter, not the alias from a viewAliases customization. The body class will be removed and replaced with a new class when the view changes.
Added the following product data for club remix products:
- feature_text (note: this adheres to the feature dates in the product editor)
- description
- display_title
- product_type_id
- product_type
- technical_notes
- secondary_notes
- review_notes
- weight
- is_wine
This can be used in custom templates, documentation available here: 09 Custom Templates
A new end point has been added to the API: GET /products/{slug}/metadata that will return the following data:
- product_name
- SKU
- price
- header_image
- image_1
- image_2
- image_3
- thumbnail
- meta_title (will default to product name when meta title is blank)
- meta_description (will default to product description when meta description is blank)
- meta_keywords
When an existing customer joins a club in the “my account” page a GA4 join_group event is emitted with the group_id value set to the club tier public name. You may want to set this event as a conversion in Google Analytics 4. If you are using Google Tag Manager you will need to create the necessary variable, trigger and tag to pass this to GA4.
Refer to Reporting Analytical Statistics documentation for additional details.
Released 9/5/23
We have added new functionality to support:
1. Purchasing physical and virtual giftcards in the General Store.
2. Paying with a giftcard through the Main Checkout.
3. Creating an order when placing a Reservation.
The giftcard functionality requires your client to have the Gift Card module turned on by our support team.
The reservation order creation functionality requires your client to configure their reservations for placing orders.
Account
Dashboard.html
DeclinedOrders__Order.html
OrderDetail__Product.html
Checkout
CreateShippingAddress.html
OrderReview.html
OrderReview__CartItem.html
SelectShippingAddress.html
Reservation
ReservationBook.html
IMPORTANT: Our default set of templates will automatically display the new enhancements. If you have forked any of the templates listed above, and you wish to display these enhancements, you will need to compare your forked templates to our updated templates and add all of the new enhancement-related HTML elements to your forked templates.
Account
GiftCardSearch.html
GiftCardSearchResults.html
GiftCardSearchResults__LedgerEntry.html
OrderDetail__Product__VirtualGiftCardRecipient.html
Checkout
CustomizeVirtualGiftCards.html
CustomizeVirtualGiftCards__GiftCard.html
CustomizeVirtualGiftCards__GiftCard__Recipient.html
OrderReview__CartItem__VirtualGiftCardRecipient.html
Reservation
ReservationBook__DiscountName.html
ReservationBook__Fee.html
ReservationBook__OptionalProduct.html
ReservationBook__OptionalProduct__Variant.html
ReservationBook__Product.html
ReservationBook__Product__Option.html
ReservationBook__Product__Variant.html
ReservationBook__ReservationProduct.html
ReservationBook__ReservationProduct__Variant.html
ReservationBook__Summary.html
Updated and New templates are marked with the 9/5/23 date in the 12 Template Directory.
New CSS classes have been added to our default theme. The new classes can be seen in multiple places in our source file, labeled with:
/* === GIFT CARDS RELEASE === */
/* === RSVP UPDATES RELEASE === */
IMPORTANT: if you are not loading our default theme in your site, you will need the new classes to format the enhanced functionality.
Released 7/5/23
Implemented Google Analytics 4 recommended events directly (via gtag) and through Google Tag Manager.
These have been added to the “stats” within the Initialization Options
epubOptions = {
stats: {ga4gtag: true}
}
epubOptions = {
stats: {ga4gtm: true}
}
Documentation for configuring Google Analytics and Google Tag Manager have been updated: Reporting Analytical Statistics.
Released 1/23/23
We’ve added some enhancements for Product Variants:
1. Variant options are now shown in the “products” list view
2. Variant options are now shown in the “categorieslist” view
3. Sidekick now shows hint for variants in cart
In the list views, products that have variants will show a “Select Options” button instead of the Quantity dropdown and Add To Cart button. Clicking/tapping on the button reveals a div that shows:
- A list of the available variants for the product, with a quantity dropdown for each one
- “Cancel” and “Add To Cart” buttons
Users may select the quantity for any variant(s), then click “Add To Cart” to add their selection(s) to their cart. If enabled, the Sidekick will appear, showing information pertaining to the added variants. The options div will close automatically.
Products
CategoriesList__Variant.html
CategoryWithProducts__Variant.html
Cart
AddedToCart.html
Products
CategoriesList__Product.html
CategoryWithProducts__Product.html
ProductDetail.html
ProductDetail__Variant.html
The updated product templates also include a new “status_maxed_out” message element that will appear instead of the Quantity dropdown and “Add To Cart” button when the max quantity is already in the cart.
IMPORTANT: our default set of templates will automatically display the new enhancements. If you have forked any of the templates listed above, and you wish to display these enhancements, you will need to compare your forked templates to our updated templates and add all of the new enhancement-related HTML elements to your forked templates.
New CSS classes have been added to our default theme. The new classes can be seen in two places in our source file, labeled with:
/* === PRODUCT VARIANTS UPDATE === */
Note: if you are not loading our default theme in your site, you will need the new classes to format the enhanced functionality.
Released 10/19/2022
We have added support for charging additional fees, such as the Colorado Retail Delivery Fee, when orders are placed. If your client turns a fee on, and the fee applies to a customer’s cart, they will see the fee in the subtotals area of their order.
If you have forked any of the templates listed below, you must compare your forked version to the current default version and add any missing fee-related elements. Until you do so, customers will not see the fees, but will be charged for them when their order is submitted.
Account
OrderDetail.html
RemixReview.html
Checkout
OrderReview.html
These new templates have also been added:
Account
OrderDetail__Fee.html
RemixReview__Fee.html
Checkout
OrderReview__Fee.html
Updated and New templates are marked with the 10/19/22 date in the 12 Template Directory.
Released 9/12/2022
We have added support for product variants, which allows your client to create groups of products with variations like size, color, etc. and display them together in their web site.
For example, given this set of variants:
Product | Size |
---|---|
2019 Cabernet Sauvignon 750 | 750ml |
2019 Cabernet Sauvignon 375 | 375ml |
2019 Cabernet Sauvignon 1.5 | 1.5L |
The Product Detail, Remix and Allocation views on their site will group the 3 products together and show separate Quantity and “Add to Cart” buttons for each Size.
In product lists, the cart, checkout and other places where individual items are listed, the product’s variation name (Size, in this case) will be displayed, along with it’s value. For example:
2019 Cabernet Sauvignon
Size: 375ml
Up to 3 variation names are allowed for each variant group. For example, if your client has T-shirts to sell, they may setup something like this, with 2 variation names:
Product | Color | Size |
---|---|---|
Winery T-Shirt – Black S | Black | Small |
Winery T-Shirt – Black M | Black | Medium |
Winery T-Shirt – Black L | Black | Large |
Winery T-Shirt – Blue S | Blue | Small |
Winery T-Shirt – Blue M | Blue | Medium |
Winery T-Shirt – Blue L | Blue | Large |
IMPORTANT: our default set of templates will automatically display variants. If you have forked any of the templates listed below, and you wish to display variants, you will need to compare your forked templates to our updated templates and add all of the new variant-related HTML elements to your forked templates.
Account
AllocationCart__Product
RemixCart__EditableItem
RemixCart__ReadOnlyItem
RemixReview__CartItem
Cart
AddedToCart
AddedToCart__Suggestion
GeneralCart__AllocatedProduct
GeneralCart__Product_A
GeneralCart__Product_B
GeneralCartRemove
GeneralCartRemoveAllocated
Checkout
OrderAdjust__CartItem_A
OrderAdjust__CartItem_B
OrderAdjust__CartItem__Allocated
OrderReview__CartItem
OrderReview__CartItem__Allocated
Product
CategoriesList__Product
CategoryWithProducts__Product
ProductDetail
ProductSearch__Result
Account
AllocationCart__Product__Variant
RemixCart__EditableItem__Variant
RemixCart__ReadOnlyItem__Variant
Product
ProductDetail__Variant
We have also added these templates, which will appear if a user attempts to load a category or product using a slug that does not exist or that the user is not allowed to access:
CategoryNotFound
ProductNotFound
Updated and New templates are also marked with the 9/12/22 date in the 12 Template Directory.
New CSS classes have been added to our default theme. The new classes can be seen at the bottom of our source file, labeled with:
/* === PRODUCT VARIANTS RELEASE === */
Note: if you are not loading our default theme in your site, you will need the new classes to format the new product Variant functionality.
Released 8/1/2022
You may now add a Product Search control to any SPA page by adding this HTML:
<div data-ecp-product-search></div>
An input will appear. Users may type into the input to get a list of products that match their search. Selecting a product will load its detail view.
If you are into customizing templates, you can uncomment parts of the ProductSearch template to expose an optional product category dropdpown.
These templates have been added to the Products section of the 12 Template Directory:
ProductSearch
ProductSearch__Category_Option
ProductSearch__NoResult
ProductSearch__Result
New CSS classes have been added to our default theme. The new classes can be seen at the bottom of our source file, labeled with:
/* === PRODUCT SEARCH RELEASE === */
Note: if you are not loading our default theme in your site, you will need the new classes to format the new Product Search features.
New messages have been added to the Products message set:
"ProductSearch": { "RegionLabel": "Product Search controls", "ProductCategoryLabel": "Product category for search", "NoResults": "No Matching Products", "SearchInput": "Search Products", "SearchInputLabel": "Enter Product Search Text" }
Released 6/30/2022
When pressing an Add to Cart button via the keyboard’s Enter key, focus is now shifted to the first button in the Sidekick after it opens.
Additions have been made to the following templates. If you have forked any of these templates, please update your versions so that users will have the improved functionality.
These lines have changed:
<div class="ecp-component ecp_AddedToCart ecp-sidekick"> <button data-ecp-action="continue-shopping">{message:AddedToCart/ShopMoreButton}</button>
The updated lines are:
<div class="ecp-component ecp_AddedToCart ecp-sidekick" role="dialog"> <button data-ecp-action="continue-shopping" data-ecp-handle="continue_shopping">{message:AddedToCart/ShopMoreButton}</button>
These lines have changed:
<button data-ecp-action="add-to-cart" data-ecp-handle="add_to_cart" aria-label="{message:CategoriesList/AddToCartButtonLabel_template}">{message:CategoriesList/AddToCartButton}</button> <button data-ecp-action="add-to-cart" aria-label="{message:CategoriesList/AddMoreToCartButtonLabel_template}">{message:CategoriesList/AddMoreToCartButton}</button>
The updated lines are:
<button data-ecp-action="add-to-cart" data-ecp-handle="add_to_cart" aria-label="{message:CategoriesList/AddToCartButtonLabel_template}" aria-haspopup="dialog">{message:CategoriesList/AddToCartButton}</button> <button data-ecp-action="add-to-cart" aria-label="{message:CategoriesList/AddMoreToCartButtonLabel_template}" aria-haspopup="dialog">{message:CategoriesList/AddMoreToCartButton}</button>
These lines have changed:
<button data-ecp-action="add-to-cart" data-ecp-handle="add_to_cart" aria-label="{message:CategoryWithProducts/AddToCartButtonLabel_template}">{message:CategoryWithProducts/AddToCartButton}</button> <button data-ecp-action="add-to-cart" aria-label="{message:CategoryWithProducts/AddMoreToCartButtonLabel_template}">{message:CategoryWithProducts/AddMoreToCartButton}</button>
The updated lines are:
<button data-ecp-action="add-to-cart" data-ecp-handle="add_to_cart" aria-label="{message:CategoryWithProducts/AddToCartButtonLabel_template}" aria-haspopup="dialog">{message:CategoryWithProducts/AddToCartButton}</button> <button data-ecp-action="add-to-cart" aria-label="{message:CategoryWithProducts/AddMoreToCartButtonLabel_template}" aria-haspopup="dialog">{message:CategoryWithProducts/AddMoreToCartButton}</button>
These lines have changed:
<button data-ecp-action="add-to-cart" data-ecp-handle="add_to_cart" aria-label="{message:ProductDetail/AddToCartButtonLabel}">{message:ProductDetail/AddToCartButton}</button> <button data-ecp-action="add-to-cart" aria-label="{message:ProductDetail/AddMoreToCartButtonLabel}">{message:ProductDetail/AddMoreToCartButton}</button>
The updated lines are:
<button data-ecp-action="add-to-cart" data-ecp-handle="add_to_cart" aria-label="{message:ProductDetail/AddToCartButtonLabel}" aria-haspopup="dialog">{message:ProductDetail/AddToCartButton}</button> <button data-ecp-action="add-to-cart" aria-label="{message:ProductDetail/AddMoreToCartButtonLabel}" aria-haspopup="dialog">{message:ProductDetail/AddMoreToCartButton}</button>
Released 6/27/2022
We have made some improvements to how discounts are handled:
- Clients now have the option to use dynamically updated discounts in Remixes.
- All order review views will now show the names of applied discounts.
We have also made some additions for applying a custom css class to Remix products.
If you have forked any of the templates listed below, you will need to update your versions to support the new functionality.
These lines have changed:
<div class="ecp-list-item" data-ecp-handle="product" data-ecp-id="{message:cep_id}" role="listitem"> <span class="ecp-price-regular" aria-label="{message:RemixCart/RegularPriceLabel}">{currency:cep_price_each}</span> <span class="ecp-price-discounted" aria-label="{message:RemixCart/DiscountPriceLabel}">{currency:cep_discount_price_each}</span>
The updated lines are:
<div class="ecp-list-item {message:css_class}" data-ecp-handle="product" data-ecp-id="{message:cep_id}" role="listitem"> <span class="ecp-price-regular" aria-label="{message:RemixCart/RegularPriceLabel}" data-ecp-handle="price_each">{currency:cep_price_each}</span> <span class="ecp-price-discounted" aria-label="{message:RemixCart/DiscountPriceLabel}" data-ecp-handle="discount_price_each">{currency:cep_discount_price_each}</span>
This line has changed:
<div class="ecp-list-item" data-ecp-handle="product" data-ecp-id="{message:cep_id}" role="listitem">
The updated line is:
<div class="ecp-list-item {message:css_class}" data-ecp-handle="product" data-ecp-id="{message:cep_id}" role="listitem">
These lines have been added:
<ul data-ecp-handle="discount_names" role="list"> <!-- | RemixReview__DiscountName template | --> </ul>
<ul data-ecp-handle="free_ship_discount_name"> <li>{message:free_shipping_name}</li> </ul> <ul data-ecp-handle="flat_ship_discount_name"> <li>{message:flat_shipping_name}</li> </ul>
This line has been changed:
<div class="ecp-list-item" role="listitem">
The updated line is:
<div class="ecp-list-item {message:css_class}" role="listitem">
These lines have been added:
<ul data-ecp-handle="discount_names" role="list"> <!-- | OrderReview__DiscountName template | --> </ul>
<ul data-ecp-handle="free_ship_discount_name"> <li>{message:free_shipping_name}</li> </ul> <ul data-ecp-handle="flat_ship_discount_name"> <li>{message:flat_shipping_name}</li> </ul>
Released 6/7/2022
We have added a new “Change Email Address” link to the My Account dashboard template:
The addition is:
<li><a href="#" data-ecp-action="load-changeemail">{message:Dashboard/ChangeEmailLink}</a></li>
If you’ve forked this template, please add the new link to your template.
Released 3/31/2022
Issue: The phone field on step 2 (Account Info) of the Club Signup process was not being saved.
Fix: We have made changes to two templates: one to change the name of the form field and the other to allow the renamed form field’s value to be displayed in the Review step:
name="phone" changed to name="phone_1"
{message:phone} changed to {message:phone_1}
If you’ve customized either of these templates, please incorporate the changes in your templates.
Released 2/17/2022
We have added 5 new HTML elements to the AllocationCart__Product template, along with related messages, to improve how Sold Out items appear. Product shadow inventory is now taken into account.
The additions are:
<!-- buy-only messages ---> add: <span data-ecp-handle="sold_out">{message:AllocationCart/SoldOut}</span>
<!-- buy and limited request messages --> add: <span data-ecp-handle="sold_out_request_up_to_y">{message:AllocationCart/SoldOutRequestUpToY_template}</span> <span data-ecp-handle="sold_out_requested_n_request_z_more">{message:AllocationCart/SoldOutRequestedNRequestZMore_template}</span> <span data-ecp-handle="sold_out_requested_max">{message:AllocationCart/SoldOutMaxRequested_template}</span>
<!-- buy and unlimited request messages --> add: <span data-ecp-handle="sold_out_request_unlimited">{message:AllocationCart/SoldOutRequestUnlimited_template}</span>
If you have forked this template, add these new elements to display the new messaging.
Released 8/3/2021
Designer Widgets now include:
1. The ability for customers to cancel their own upcoming reservations.
2. Optional dietary and on-site assistance questions during the booking process.
3. Restricted reservations requiring specific customer types and/or club subscriptions.
New Templates:
Updated Templates:
- Account : Reservations__Reservation
- Reservation : ReservationBook
- Reservation : ReservationList__Item
- Reservation : ReservationSearch__Item
- Reservation : ReservationTimes
If you have forked any of these templates, you must add the new elements to your forked files to enable the new functionality.
New and modified templates are also itemized in the 12 Template Directory, marked with the date 8/3/21
.
New Messages have been added to these message sets:
New CSS classes have been added to our default theme. The new classes can be seen at the bottom of our source file, labeled with:
/* === RSVP UPDATES RELEASE === */
Note: if you are not loading our default theme in your site, you will need the new classes to format the new “Cancel Reservation” features.
Released 4/19/2021
Push Pay
The ACP now includes “Push Pay” functionality that allows clients to “push” unpaid orders to customers for payment at the client’s web site.
New Templates:
- Account : OrderPay
- Account : OrderPay__CartItem
- Account : OrderPay__PaymentMethodOption
- Account : OrderPayThankYou
Updated Template:
If you have forked this template, you must add the new elements to your forked file to enable the new functionality.
“Anywhere” Magic Links
The ACP now allows clients to create an “Anywhere” Magic Link that will load a valid relative URL on their web site. A new template has been added to support this functionality:
New and modified templates are also itemized in the 12 Template Directory, marked with the date 4/19/21
.
New Messages have been added to these message sets:
New CSS classes have been added to our default theme. The new classes can be seen at the bottom of our source file, labeled with:
/* === PUSH PAY RELEASE === */
Note: if you are not loading our default theme in your site, you will need the new classes to format the new features.
Released 3/24/2021
The ACP now allows clients to create “Ship State Groups” comprised of one or more US States (CA, NY, etc). The groups may then be assigned to products to limit the states that they can be shipped to.
Updated HTML Templates:
These templates have additional elements. If you have forked any of these templates, the additions must be added to your forked files to enable the new functionality:
- Cart : GeneralCart
- Cart : GeneralCart__Product_A
- Cart : GeneralCart__Product_B
- Checkout : SelectShippingAddress__Address
These templates have an additional status element that is not currently required in forked templates, but may be in the future. We recommend adding the additional element to your forked files.
- Products : CategoriesList__Product
- Products : CategoryWithProducts__Product
- Products : ProductDetail
Other Improvements:
1. The Checkout > Create Billing Address form now has an option to copy the customer’s shipping address, if one address exists. If you have forked this template, you will need to add the new elements to enable the new functionality:
2. Support for international addresses has been enhanced. The ACP’s “Allow International Shipping” Yes/No option is now fully supported. Some HTML elements have been removed from the following templates. If you have forked any of these templates, we recommend removing the eliminated elements, but it is not required.
- Account : CreateClubSubscription__Address
- Account : EditClubSubscription__Address
- Account : EditShippingAddress
- Checkout : EditShippingAddress
Modified templates are itemized in the 12 Template Directory, marked with the date 3/24/21
.
New Messages have been added to these message sets:
New CSS classes have been added to our default theme. The new classes can be seen at the bottom of our source file, labeled with:
/* === ADDRESS UPDATES RELEASE === */
Note: if you are not loading our default theme in your site, you will need the new classes to format the new features.
Released 4/27/2020
The My Account Dashboard now displays a message and related link to customers who have declined payments. Clicking the link displays order information and options for updating the payment method. If the orders are club orders, payment info is also updated on related subscriptions.
In the ACP, a new “Declined Orders” target for Magic and Deep links has been added, making it easy for clients to send email campaigns to notify customers of orders that need updating.
Technical Information:
The Declined Payment Updater uses these Account Widget HTML Templates:
New content has been added to this HTML Template:
New messages have been added to this message set:
New CSS classes have been added to our default theme. The new classes can be seen in our source file in two places, labeled with:
/* === CARD UPDATER RELEASE === */
Note: if you are not loading our default theme in your site, you will need the new classes to format the new features.
Other Improvements:
- Reservation searches are now faster.
- My Account > Order History > Order Detail now displays payment information more clearly. Modified templates are itemized in the 12 Template Directory, marked with the date
4/27/20
. - Fix: previous steps can now be navigated to from the “Add Payment Method” step of Checkout.
Released 3/24/2020
Express Checkout:
The Checkout workflow now automatically bypasses all steps leading up to the Review step, depending on information already in the customer’s account.
When available, these are used:
- The customer’s default shipping address (if the SPA considers it usable).
- The customer’s billing address (if it passes the SPA’s validation rules).
- The customer’s most recently added payment method.
If any items are not available, the workflow starts at the first unavailable item and then continues to the next unavailable item or proceeds to the Review step.
Note: the Review step has not changed: customers may use it to make changes to any of the above items prior to placing their order.
Sidekick:
Sidekick is a new, optional, feature that will display an “Added To Cart” view that slides out from the right edge of the browser viewport when a user adds an item to their cart.
The Sidekick shows information about the item that was added to the cart (product name, price, quantity in cart) and, depending on settings in the ACP, up to two suggested products. Users may close the view to continue shopping, click a button to view their cart or click on a suggested product to go to the product
view of the suggested product.
To add the Sidekick to your site, add this div to your SPA page:
<div data-ecp-sidekick></div>
Then go to one of the product views (products
, product
or categorieslist
) and add a product to your cart. You should see the Sidekick slide into view. If your browser viewport is wide (like a desktop browser), the Sidekick will cover a portion of the screen. On smaller devices (500px wide or less) the Sidekick will cover the full screen.
The Sidekick uses these new Cart Widget HTML Templates:
AddedToCart
AddedToCart__Suggestion
New CSS classes have been added to our default theme. The new class can be seen in our source file in three places, labeled with:
/* === CART SIDEKICK RELEASE
Note: if you are not loading our default theme in your site, you will need the new classes to format the new features and to provide the CSS transitions that are used to slide the Slidekick into view.
Payment Gateway improvements:
We have made some changes to how payment gateway transactions are handled.
1. Bug fix for error conditions that did not reload the payform, but should have.
2. Enhanced cross-origin capability, allowing “handler” file to be served from our SPA CDN. If you have run into any payform cross-origin issues, please contact us via the Designer Widgets Forum for additional information.
Released 3/16/2020
We have added new club-related functionality to the ACP and Designer Widgets.
- Club Tiers can now be set to allow signups by new customers via the
joinclub
view, existing customers via My Account or both.
- Club signups via My Account can now be restricted by Customer Type.
- Custom Club signups are now supported in My Account.
- Custom Club subscriptions may now be edited in My Account if enabled in the ACP.
- Custom Club Product Types can now be given a max allowed quantity, enforced in My Account custom club signups and subscription edits.
- Custom Club Tiers can be given a minimum annual spend and Custom Club Product Types can be given an estimated value. When both are set, they are used in combination in My Account custom club signups and subscription edits.
- The ACP’s “Deep Links” functionality now allows the creation of deep links for specific club tiers. The My Account club signup form now shows only the deep linked tier (not a set of all available club tiers).
The following pages have been updated with information about the new release:
- Added new messages to the Account message set.
New CSS classes have been added to our default theme. The new section can be seen in our source file in two places, labeled with:
/* === CUSTOM CLUB RELEASE === */
Note: if you are not loading our default theme in your site, you will need the new styles to format the new features.
Requirements
Your client must have the eCellar Club module and at least one club tier configured for Public or My Account signups.
Released 2/25/2020
NEW: Club Subscription Fee Confirmation
A recurring fee information section and confirmation checkbox has been added above the submit button in both subscription signup workflows:
1. The view=joinclub
wizard used by new customers.
2. The My Account > Join a Club form used by existing customers.
The ACP will show the fee confirmation date in the customer’s club subscription.
IMPROVED:
1. The joinlist and signup views have improved error handling when attempting to use an email address that is already in use by a registered customer.
2. The payform used for adding and replacing credit cards now handles additional error conditions.
3. Cart rehydration (which takes place when a customer logs in) now omits cart items that are no longer available for the customer’s customer type.
Note: updated HTML Templates are noted in the 12 Template Directory.
Released 2/10/2020
Accessibility Enhancements:
The eCellar Designer Widgets system has been updated with many accessibility improvements. The changes are primarily in our HTML Templates, via additions to the HTML. All sites will automatically load the updated versions of each template.
If you have customized a template and would like to include the enhancements in your custom version, compare your custom version to the updated version and copy the enhancements into the appropriate places in your custom version.
All updated templates are marked with an asterisk in the ADA column in our 12 Template Directory.
Magic Links:
The eCellar ACP now includes a variety of “Magic” and “Deep” links that can be sent to customers via email campaigns. To support the functionality in our Designer Widgets, we have added two new templates that appear briefly when a Magic or Deep link has been clicked in an email. They are:
In the Account Widget: DeepLink
In the Campaign Widget: MagicLink
Note: these new templates are also listed in our 12 Template Directory.
Form Field Improvements:
1. The most common field label and validation messages have now been centralized in the messages.json file.
For example, this input label in the messages.json file:
"FirstNameInput": "First name",
is now referenced in other message JSON files as:
"FirstNameInput": "__GENERIC__",
And the related validation message is in the messages.json file as:
"first_name_required": "First name is required.",
and referenced in other message JSON files as:
"first_name_required": "__GENERIC__VALIDATION__",
This provides a way to change one message and have it affect all places that are using the generic version of it.
If you want to customize these messages on a form-specific basis, you can still do that by replacing __GENERIC__
or __GENERIC__VALIDATION__
with your own wording.
2. Multiple validation conditions for the same input field no longer yield 2 validation messages. For example, when a birth date was blank the previous validations would show a message that it was required along with another message that it was not a valid date format. Now only one message is shown, conditionally.
3. Shipping address Add and Edit forms have been updated to require the recipient’s phone number.
4. The Checkout > Shipping Addresses list now shows a “Phone is required” message, instead of the selection button, if an address does not have a phone number. Note: users can click the (pre-existing) Edit link to add a phone number to a shipping address.
Released 12/9/2019
The eCellar Designer Widgets system now includes functionality to support customer allocations. The following pages have been updated with information about the new release:
- Added “Allocations” to the high-level functionality list.
- Added an allocation-related item to the Deep Linking section.
- Added new templates and comments about updated templates. Items related to this release are marked with the date
12/9/19
.
- Added allocation-related messages to these message sets: Account, Cart, Checkout.
- Added new CSS classes to our default theme. The new section can be seen in our source file near the bottom, starting with:
/* === ALLOCATION RELEASE
Note: if you are not loading our default theme in your site, you will need the new styles to format the new allocation features.
Requirements
Your client must have the eCellar Allocation module and at least one active allocation event.
Released 11/18/2019
The eCellar Designer Widgets system now includes functionality to support listing, searching and booking reservations. The following pages have been updated with information about the new release:
- Added “Reservations” to the high-level functionality list.
- Added reservation-related items to the Deep Linking section.
- Added new templates to the Account section.
- Added new Reservation section listing all new templates.
- Added Reservation message set to the JSON Data section.
Added new CSS classes to our default theme. The new section can be seen in our source file near the bottom, starting with:
/* === RESERVATIONS RELEASE === */
Note: if you are not loading our default theme in your site, you will need the new styles to format the new reservation features.
Requirements
Your client must have the eCellar Reservations module and at least one active Booking Agent.
Released 11/4/2019
Customers may now join a club from inside their My Account area. Existing customers are directed from the public Join Club workflow as needed.
- Added new messages to the Account message set.
New CSS classes have been added to our default theme. The new section can be seen in our source file near the bottom, starting with:
/* === MY ACCOUNT > CLUB SIGNUP RELEASE === */
Note: if you are not loading our default theme in your site, you will need the new styles to format the new features.
Requirements
Your client must have the eCellar Club module and at least one club tier configured for My Account signups.