commerce_wishlist
Categories
Component ID
Component name
Component type
Maintenance status
Development status
Component security advisory coverage
Component created
Component changed
Component body
Provides the ability for customers to add products to a list other than a cart.
Alpha 1 Scope
Architecturally, the third version of Commerce Wishlist for Drupal 7 was converted to using Orders as the entity that is called a "Wishlist." After discussion with Nick Vahalik and Matt Glaman, it was decided that the Drupal 8 port of the Wishlist module would make the same architectural decision: Wishlists will be orders.
A special order type will be used to store the line items that track product variationss on the list. The first iteration will closely model the Add-to-cart workflow with exceptions made to be able to co-exist with the add-to-cart button.
The architectural decision to use line items allows us the opportunity in the future to allow administrators to add any kind of customer-facing field to the wishlist item. This would allow for wishlist notes, links to external products, prioritization, anything you can imagine saving next to a desired product. Note: While fields may be added to line items, the ability for the customers to create/modify those fields is likely not available quite yet.
User Stories
As a (type of user), I can (some goal) so that (some reason).
Customers
As a customer, I can add a product to a wishlist.
As a customer, I can remove a product from a wishlist.
As a customer, I can change the quantity of a product on a wishlist.
As a customer, I can add one or many products to my real cart.
As a customer, I can move items from my cart to my wishlist.
As a customer, I can view my wishlist.
A wishlist MAY be accessed by clicking a link from the user's account page.
Administrators
As an administrator, I can choose which product types can be added to wishlists.
As an administrator, I can choose which line item type will be used when adding products to wishlists.
As an administrator, I can control the position of the "Add to wishlist" button.
As an administrator, I can choose to display the "Add to wishlist" as a button or an AJAX link.
The button MUST reload the page by default.
The AJAX link MUST accomplish the same task without a page reload.
Backlogged User Stories
Anonymous Users
As an anonymous user, I can add a product to a wishlist.
As an anonymous user, I can remove a product from a wishlist.
As an anonymous user, I can change the quantity of a product on a wishlist.
As an anonymous user, I can add one or many products to my real cart.
As an anonymous user, I can move items from my cart to my wishlist.
As an anonymous user, I can register and my wishlist will be saved to my account.
As an anonymous user, I can login and my wishlist will be saved to my account.
Customers
As a customer, I can add or delete information stored in line items on my wishlist.
As a customer, I can view a list of my wishlists by accessing a menu link.
As a customer, I can create, update, and delete wishlists.
A customer MUST have a "default" wishlist.
A wishlist MUST be created if none exists when adding the first product to a wishlist.
As a customer, I can view a list of wishlists on my account page.
As a customer, I can choose a wishlist before I click "Add to wishlist."
As a customer, I can choose to add a product to a new wishlist from an add to cart form.
As a customer, I can move products between lists.
As a customer, I can choose to share a wishlist publicly.
As a customer, I will see products from my wishlist(s) in a block underneath the cart.
Administrators
As an administrator, I can add editable line item fields to wishlist views.
As an administrator, I can choose which order types are treated as wishlists.
As an administrator, I can add a link to the menu system that links to a customer's wishlist.
The link MUST be used as a menu link token in the form of
The link MUST disappear if the user is not allowed to have a wishlist.
