https://github.com/acromedia/commerce_wishlist
https://github.com/acromedia/commerce_wishlist
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/acromedia/commerce_wishlist
- Owner: AcroMedia
- Created: 2016-08-24T21:56:56.000Z (almost 10 years ago)
- Default Branch: 8.x-3.x
- Last Pushed: 2018-02-16T18:19:37.000Z (over 8 years ago)
- Last Synced: 2025-05-16T10:45:19.741Z (about 1 year ago)
- Language: PHP
- Size: 200 KB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Commerce Wishlist 8.x-3.x
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 order 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 order 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 order
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 a product to my cart from my wislist.
* As a **customer**, I can move a product 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 control the position of the "Add to wishlist" button.
* The wishlist settings page MUST have a configurable weight integer.
* The weight integer MUST be used _globally_ to position the button above or below other form elements.
* 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.
* As an **administrator**, I can add a "Move to wishlist" button to the cart view.
## 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 a product to my cart from my wislist.
* 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 order 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.
* A customer MAY provide a wishlist title.
* As a **customer**, I can view a list of wishlists on my account page.
* As a **customer**, I can select one of many wishlists before I click "Add to wishlist."
* As a **customer**, I can create a new wishlist while saving a product to it.
* As a **customer**, I can move products between wishlists.
* As a **customer**, I can share a wishlist.
* Sharing MAY be accessed with an unlisted url once a shared status has been set.
* Limited sharing with a passcode MAY be enabled.
* As a **customer**, I will see products from my wishlist(s) in a block underneath the cart.
* **Administrators**
* As an **administrator**, I can mark order item fields to be included as customer-editable on wishlists.
* 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.