# Dependencies
A list of dependencies Luminate administrators should be aware of and manage to ensure smooth operation of the site and to prevent breakages.
# E-Commerce
# Donation Products
Donation products need to have the word Donation listed in the amount. For Example: '$10 Donation', '$500 Donation' etc. It is case sensitive. The script src/js/ecommerce/library/donation-checkout.js relies upon this keyword to perform its logic for these specific products.
# Sponsorship Products
In order for scripts to work correctly, the monthly sponsorship product must exist in the store. Its name must contain Sponsorship keyword. Optionally, it can have an External Identifier set to sponsorship so it's can be accurately tracked in analytics.
The products must be the existing sponsorship products, as their ids are hardcoded in code and the values are sent to analytics.
- Gift Sponsorship Product (1221) (opens new window)
- Standard Sponsorship Product (1241) (opens new window)
# PageBuilder Pages
For sponsorship only checkout to work successfully the following three pages must exist, be publish and contain the valid code.
- ecommerce__gift_sponsorship_shipping
- ecommerce__sponsorship_checkout
- ecommerce__sponsorship_thank_you
# Images
All product images will be replaced on page load with JavaScript. If the product image is missing it will appear broken to users.
- The images should be uploaded into the following folder on FTP
/wrpr/images/gift-catalog/products/{storeId}/{productId}.jpgWhere{storeId}&{productId}are replaced by the Luminate Online store dd and Luminate Online product id accordingly. - Category banner images have been placed into the following folder on the FTP
/wrpr/images/gift-catalog/categories/{storeId}/image-name.jpgfor ease of maintenance and management long term. - E-card banner images live on FTP as well with the following naming pattern.
/wrpr/images/gift-catalog/products/{storeId}/{productId}-650w.jpgWhere{storeId}&{productId}are replaced by the Luminate Online store id and Luminate Online product id accordingly. - Generic images that appear on shipping and billing pages are set in the body content of the cart, checkout, single address entry, and billing information pages. This seems to be used in cart, shipping & at times billing steps (product not shippable ?) of the checkout. The requirement is that the content be placed in
<figure id="checkout__figure" class="checkout__figure" />element. For now the assumption that it will be just 1 image. - When a user has selected a multiple shipping option, product image will be rendered instead of the generic image. The image pulled on the shipping page will be the e-card image to ensure best rendering for the size.
# Downloadable Cards
The downloadable cards functionality has been removed from e-commerce at the end of 2019. However, the functionality still exists. Including the documentation for posterity.
The base URL for printable cards is http://files.savethechildren.org/pdf_lom/buildpdf.php. The builder takes 2 parameters as arguments product & event.
product is the product id of the product in Luminate Online and event is the occasion that will appear in the card.
The cards are made from 3 images:
- Product specific image, pulled up from path
/cards/Products_JPEG/{productId}.jpg - Event-based messaged, pulled up from path
/cards/EventMessage_JPEG/{event}_msg.jpg - Event-based image, pulled up from path
/cards/EventImages_JPEG/{event}.jpg
Sample Card (opens new window)
# Donation
# Tip-up Product
A PageBuilder page reus_donation__tip_up must be published and have valid content for the donation form to render it as a product.
# Exit-Intent/Rescue Pop-Up
A PageBuilder page reus_donation__popup must be published and have valid content for the donation form, and be configured to display on the existing donation form in order to render when a user tries to leave the donation page without donating.
# Braintree Payments
- To enable Braintree payments on the page
[[U0:paymentType=braintree]]must be specified in the donation form. - The Braintree JavaScript stc-braintree-donation.js must be loaded on the page. This should happen automatically if the tag above is added to the donation form.
- The server-side scripts residing at files.savethechildren.org must present and returning valid values.
# Sponsorship
# Azure ODS API
Azure API must be online and returning valid values for the sponsorship to work correctly.
# PageBuilder Pages
For sponsorship to work successfully the following three pages must exist, be publish and contain the valid code.
- sponsorship
- sponsorship__child
- sponsorship__children
# Supporter Center
# Azure ODS API
Azure API must be online and returning valid values to correctly display sponsorship data.
# BBIS Integration
BBIS API must be online and returning valid values to correctly display historical transaction data.
# PageBuilder Pages
For sponsorship to work successfully the following three pages must exist, be publish and contain the valid code.
- supporter_center
- supporter_center__child_email_thanks
- supporter_center__child_sponsorships
- supporter_center__child_survey
- supporter_center__dashboard
- supporter_center__manage__account
- supporter_center__manage__fundraising
- supporter_center__manage__giving
- supporter_center__partner_for_children