AbleCommerce version 9.0.4 - build 6750 Date of Release: April 5th, 2021. ----------------------------------------------------------\ Upgrade from AbleCommerce 9.0.3 (build 6432) to 9.0.4 (build 6750) - Access to the server running AbleCommerce will be required. - This release will upgrade AbleCommerce 9.0.3.6432 only. - A valid subscription license is required; ends on or after 4/5/2021 ----------------------------------------------------------\ ### Installation Instructions ### TO VERIFY THE DOWNLOAD (optional): **********************************************************\ 1. Go to WinMD5.com or any other utility that can provide checksum validation. 2. Download the .zip file, and run the MD5 utility. 3. Select the downloaded for 'AbleCommerce Upgrade to 9.0.4' 4. In the field provided, copy the MD5 hash provided below, or displayed on the Upgrade page. 444f6a6ebbb660fe63b90804ab5e9d13 5. Click Verify and confirm the number is a match. 6. If the validation fails, do NOT install the patch. Instead, open a support ticket at our website. TO INSTALL THE UPGRADE: **********************************************************\ 7. Extract contents to a temporary location on the server. \Lib\ --> files in this location are provided to developers; do not install these to the server. \Website\ --> files and folders located here are installed to the website. 8. Backup the website and database to a separate location. 9. Stop the website using IIS. 10. Copy everything from \Website\ to the actual website root folder, matching folders and file locations. 11. Restart the website using IIS. 12. Login to the Merchant Admin so that any database changes will be automatically applied. Note: There are two database schema updates for this release: - A column ac_ProductsVariants.CostOfGoodsModeId of type TINYINT added. - Create Cookie Policy content page ----------------------------------------------------------\ ### Post-Upgrade Instructions ### 1. From the Merchant Admin Menu, expand the "Plugins" page confirm the installation process for each plugin, one by one. 2. After logging in to the admin, go to Configure > Store > Languages. A single localization string will need to be updated manually. This one is used on the My Account > Profile retail storefront page. - Use the ADD button to add the new localization string below: retail.mycredentials.username_policy_message A valid username must either use an email or any combination of letters, numbers, hyphen, or underscore characters. 3. Find the default "Sample" theme and locate the "default.css" file. The file is located at \Website\Themes\Sample\Content\default.css Copy this file to your custom store theme's \Content\ folder. You should not have merge any changes unless you've customized this file. The list of CSS style changes is given below as a reference. ----------------------------------------------------------\ ### Manual Update of CSS styles ### /*------------------------------ PRODUCT ITEM DISPLAY CONTROL ------------------------------*/ article.product-item h3 { height:auto; } /*------------------------------ FEATURED CATEGORIES WIDGET ------------------------------*/ .category-img-center { display: block; margin: auto; } /*------------------------------ ACCOUNT SECTION MY ADDRESS PAGE ------------------------------*/ .content .box h4.box-primary { background-color: #206BA8; color: #fff; } /*------------------------------ Links WIDGET ------------------------------*/ .link-img-center { display: block; margin: auto; } article.link-item { background-color: #FFFFFF; box-shadow: 0 1px 2px 0 rgba(0,0,0,0.1); } article.link-item { position:relative; overflow:hidden; margin-bottom:30px; } article.link-item .link-overlay { position:relative; display:block; } article.link-item .link-overlay .link-mask { position:absolute; width:100%; height:100%; left:0; top:0; opacity:0; filter:alpha(opacity=0); transition:all 0.2s ease-out; background-color:#999999; z-index:110; } article.link-item:hover .link-overlay .link-mask { opacity:0.3; filter:alpha(opacity=30); } article.link-item .link-permalink { display:block; width:100%; height:100%; position:absolute; z-index:120; } article.link-item h3 { font-weight:600; font-size:18px; line-height:24px; margin-top:15px; letter-spacing:0; height:44px; } article.link-item .link-labels { position:absolute; padding:15px; z-index:125; } article.link-item .link-labels .label { border-radius:50%; width:36px; height:36px; padding:10px 0 0; display:inline-block; font-size:12px; border:2px solid #FFFFFF; text-transform:uppercase; } article.link-item .link-labels .label.label-danger { background-color:#E87169; } article.link-item .link-labels .label.label-info { background-color:#39B3CA; } #links.grid article.link-item { text-align:center; } #links.grid article.link-item > .row > div { width:100%; float:none; position:static; } #links.grid article.link-item .link-body { padding:0 10px; } #links.grid article.link-item .link-labels { top:0; left:0; } @media (min-width:768px) and (max-width:991px) { #links.grid article.link-item .link-body { padding:0 5px; } }