If you want to add gift registry functionality to an existing site, you need to understand how this functionality works within the SiteGenesis application, specifically with gift registry and wish list specific templates and pipelines.
Products are added to a wish list or gift registry on the product details page and the Quickview page (see the SiteGenesis Wireframes).
account-landing
content asset (or
your application's equivalent) to include an Add to Gift
Registry or Add to Wish list link.
Option | Description |
---|---|
Form definitions | |
cart.xml
|
Specifies action: addToGiftRegistry and
addToWishList.
|
product.xml
|
Specifies action: addtogiftregistry and
addtowishlist.
|
productlists.dita
|
Contains the form for the gift registry. |
profile.xml
|
Registers a customer. |
sendtofriend.xml
|
Contains the form for sending an email to a friend. |
Pipelines | |
Cart.xml
|
Handles
GiftRegistry-ReplaceProductListItem and
Wishlist-ReplaceProductListItem in the AddProduct
Start node (from gift registry or wish list page). This is used
only for the simple UI. |
GiftRegistry.xml
|
Contains workflows that enable customers to create and maintain one or more gift registries. |
GiftRegistryCustomer.xml
|
Renders a public gift registry, which can be accessed by people other than the owner. |
Wishlist.xml
|
Contains workflows that enable a customers to create and maintain a wish list. |
ProductList.xml
|
Provides utility workflows associated with product lists such as a wish list or a gift registry |
Script | |
productlist/GenerateShipmentName.ds
|
Generates a shipment name for a shipment representing a
product list. Generally, a product list of type Gift
Registry is given a name when the registry is created.
However, a product list of type Wish List is not
always given a name. Also, there might be more than one product list
with the same name, though they represent two different owners.
For example, you could have two different gift registries called
'My Wedding'. To generate a name, this script uses the list name
first, then the list name and the owner's name if there is already
a shipment using that name, and finally the owner's name and the
type of product list if the product list doesn't have a name.
This script also assigns the ID to the list as its name if the
list doesn't have a name. |
Static Files | path: static/default
|
css/style.css
|
Provides styling for gift registry and wish list search. |
css/style-responsive.css
|
Provides styling for gift registry and wish list search for responsive design. |
app.js
|
Binds handlers to AddtoCartDisabled, AddtoCartEnabled events for disabling/enabling wishlist/gift registry links (located in the SiteGenesis Storefront cartridge). |
Templates | |
checkout/cart/cart.isml
|
Processes a gift registry shipment. |
components/header/header.isml
|
Links to the gift registry and wish list from the header. |
product/compare/compareshow.isml
|
Provides Add products to the gift registry and Add products to the wish list buttons within product compare. |
product/components/displayliproduct.isml
|
Shows the gift registry or wish list customer if the list item is in the gift registry. |
product/product.isml
|
Provides an Add to Registry button to the product detail page. Performs a remote include of the Product-Detail, and must reside in that related template. |
Resource files | path: templates/resources
|
account.properties
|
Contains messages specific for ISML files in the templates/default/account directory. |
components.properties
|
Contains messages specific for ISML files in the templates/default/components directory. |
forms.properties
|
Contains messages specific for ISML files in the forms directory. |
product.properties
|
Contains messages specific for ISML files in the templates/default/product directory. |
Option | Description |
---|---|
Form definitions | |
forms/default/giftregistry.xml
|
Metadata for the gift registry form. |
Pipelines | |
GiftRegistry.xml
|
Contains a set of workflows that let you create and maintain one or more gift registries. |
GiftRegistryCustomer.xml
|
Renders a public gift registry, which can be accessed by people other than the owner. |
Scripts | path: scripts/account/giftregistry
|
AssignEventAddresses.ds
|
Assigns the addresses used for the gift registry event. There are two addresses:
the address to use before the event occurs and the address to use after the event
occurs. You can create new addresses. This script uses form object definitions and
form value definitions defined in the giftregistry.xml form. |
AssignPostEventShippingAddress.ds
|
Assigns the form values of the address before event to the address after event.
This script uses form object definitions and form value definitions defined in the
giftregistry.xml form. |
CopyAddressFormFields.ds
|
Copies the gift registry event address form fields, clears the form, and copies the values back to the form. This is done to maintain the state of the form when creating a new gift registry and the customer clicks the Previous button. |
InitializeAddressOptionsd.ds
|
Initializes the selected radio buttons for the addresses used for the event's before and after shipping addresses. |
UpdaterRegistryAddress.ds
|
Ensures that shipments representing gift registries have an address in place. Because a gift registry shipping address can change based on the date of the gift registry event, this ensures that the address that appears on the summary page is the up-to-date address. |
Templates | path: account/giftregistry
|
addresses.isml
|
Provides the second step of the gift registry creation logic: participant addresses, and provides address-related gift registry actions such as address changes. |
eventparticipation.isml
|
Provides the first step of the gift registry creation logic: event participants. |
giftregistryconfirmation.isml
|
Provides the third step of the gift registry creation logic: the final confirmation. |
giftregistrylanding.isml
|
Creates the gift registry landing page, which provides search and account create facilities. |
giftregistryresults.isml
|
Shows the results of the gift registry search. |
giftregistrysearch.isml
|
Shows the form to search the gift registry. |
navigation.isml
|
Shows the form navigation buttons for the gift registry. |
pt_giftregistry.isml
|
Provides the page type (decorator template) file for gift registry display. |
purchases.isml
|
Shows the gift registry purchases form. |
refreshregistry.isml
|
Intentionally empty. |
registry.isml
|
Renders the gift registry form and provides basic actions such as item updates and publishing. |
registrycustomer.isml
|
Renders a public gift registry, which can be accessed by people other than the owner. |
registrylist.isml
|
Shows the current gift registries and enables the creation of a new registry. |
registryselect.isml
|
Selects a gift registry from a list of gift registries, for example, found by the registry search. |
Option | Description |
---|---|
Form definitions | |
wishlist.xml
|
Metadata for the wish list form. |
Pipelines | |
Wishlist.xml
|
Contains a set of workflows that let you create and maintain a customer's wish list. |
Templates | path: account/wishlist
|
pt_wishlist.isml
|
Provides the page type (decorator template) file for the wish list display. |
refreshwishlist.isml
|
Empty file. |
wishlist.isml
|
Renders the wish list page. |
wishlistlanding.isml
|
Contains the login form specific for the wish list. |
wishlistresults.isml
|
Shows the wish list search results. |
wishlistsearch.isml
|
Shows the form to search the wish list. |
scripts/account/wishlist/SetShippingAdress.ds
.
ProductList
ProductListItem
ProductListItemPurchase
ProductListMgr
ProductListRegistrant