How to Apply Sherwin Williams Duration® (2024)

Sherwin Williams Duration® Home Interior Acrylic Latex is a two-in-one paint and primer that needs fewer coats than other paints to provide excellent coverage. It’s a great choice for high-traffic indoor areas due to its anti-microbial agents and stain-blocking technology. Sherwin Williams Duration® Exterior Acrylic Latex paint is also self-priming and mildew-resistant, in addition to needing just one coat for repaints and two coats for new work.

Here’s a handy guide on how to apply and use Sherwin Williams Duration®.

Sherwin Williams Duration® Interior Latex Flat

Characteristics:

  • Quick return to service
  • Durability in moist environments, like bathrooms
  • Washability
  • Cleanability
  • Stain, scuff, and burnishing-resistant
  • Very easy application
  • Anti-microbial

Drying time (depending on temperature, humidity, and film thickness):

Touch – 1 hour

Recoat – 4 hours

Application

  • The paint should be applied at temperatures above 50F, and there is no reduction needed.
  • Brush: use a nylon-polyester brush should be used for this paint.
  • Roller: use a high-quality nylon polyester roller cover.
  • Finishing off painting in one direction will give the best final appearance, especially for dark colors.
  • Sherwin Williams Duration® interior latex can also be applied with an airless sprayer. To Spray Duration® you want to use an airless sprayer that can support at least a 15 thousand’s tip. The airless sprayer would be used at around 2000 PSI or higher. Common tips would include a 515 or 517 airless tip. Recommended sprayers for applying Duration® can be found at the end of the guide.

Application tips

  • For touching-up, the product should be reduced by one pint per gallon.
  • To assure maximum washability and durability, wait at least 14 days before washing Duration Home Coating.
  • When removing stains, dirt, and marks, use a soft cloth or sponge with water. Stubborn stains may require the use of a general-purpose household cleaner for total removal.
  • Do not use an abrasive cleaner or scrub brush to remove stains.
  • Duration Home with Moisture Resistant Technology has excellent resistance to surfactant leaching when applied on new or existing substrates. However, surfactants can remain on existing painted surfaces if not removed prior to coating. Existing painted surfaces must be thoroughly washed clean and allowed to dry prior to applying any finish.

Specifications

Sherwin Williams Duration® can be used directly on existing coatings, bare drywall, or plaster (that’s been cured with a pH of less than 9).

Block: 1 coat Loxon Acrylic Block Surfacer + 2 coats Duration Home Interior Latex

Drywall: Self-prime use 2 coats of Duration Home Interior Latex

or

Masonry: 1 coat Loxon Concrete and Masonry Primer + 2 coats Duration Home Interior Latex

Plaster: Self-prime use 2 coats of Duration Home Interior Latex
or
1 coat Loxon Concrete and Masonry Primer + 2 coats Duration Home Interior Latex

Wood: 1 coat Premium Wall and Wood Primer + 2 coats Duration Home Interior Latex

If the wood has bleeding (such as tannin or knot-holes), prime with Multi-Purpose Primer.

Other primers may be appropriate. When repainting involves a drastic color change, a coat of primer will improve the hiding performance of the topcoat color.

Surface preparation

Remove all surface contamination by washing with an appropriate cleaner, rinse thoroughly and allow to dry. Existing peeled or checked paint should be scraped and sanded to a sound surface. Glossy surfaces should be sanded dull. Stains from water, smoke, ink, pencil, grease, etc. should be sealed with the appropriate primer-sealer. Recognize that any surface preparation short of total removal of the old coating may compromise the service length of the system.

Caulking: Gaps between walls, ceilings, crown moldings, and other interior trim can be filled with the appropriate caulk after priming the surface.

Drywall: Fill cracks and holes with patching paste/spackle and sand smooth. Joint compounds must be cured and sanded smooth. Remove all sanding dust.

Masonry, Concrete, Cement, Block: All new surfaces must be cured according to the supplier’s recommendations—usually about 30 days. Remove all form release and curing agents. Rough surfaces can be filled to provide a smooth surface. If painting cannot wait 30 days, allow the surface to cure 7 days and prime the surface with Loxon Concrete & Masonry Primer.

Mildew: Prior to attempting to remove mildew, it is always recommended to test any cleaner on a small, inconspicuous area prior to use. Bleach and bleaching type cleaners may damage or discolor existing paint films. Bleach alternative cleaning solutions may be advised. Mildew may be removed before painting by washing with a solution of 1 part liquid bleach and 3 parts water. Apply the solution and scrub the mildewed area. Allow the solution to remain on the surface for 10 minutes. Rinse thoroughly with water and allow the surface to dry before painting. Wear protective eyewear, waterproof gloves, and protective clothing. Quickly wash off any of the mixture that comes in contact with your skin. Do not add detergents or ammonia to the bleach-water solution.

Plaster: Must be cured, usually 30 days, and hard. If painting cannot wait, allow the surface to dry 7 days and prime with Loxon Concrete and Masonry Primer. Soft, porous, or powdery plaster should be treated with a solution of 1 pint household vinegar to 1 gallon of water. Repeat until the surface is hard, rinse with water and allow to dry before painting.

Wood: Sand any exposed wood to a fresh surface. Patch all holes and imperfections with a wood filler or putty and sand smooth.

CAUTIONS:

For interior use only.

Protect from freezing.

Non-photochemically reactive.

Sherwin Williams Duration® Exterior Acrylic Flat

Characteristics:

  • Self-priming one coat protection
  • Low temperature application (down to 35F)
  • Easy application
  • Excellent durability and hiding
  • Resists blistering and peeling

Drying time (depending on temperature, humidity, and film thickness):

Touch: 2 hours at 35-45 F, 1 hour at 45F+

Recoat: 24-48 hours at 25-45F, 4 hours at 45F+

Application

  • When the air temperature is at 35°F, substrates may be colder; prior to painting, check to be sure the air, surface, and material temperature are above 35°F and at least 5°F above the dew point. Avoid using if rain or snow is expected within 2-3 hours. Do not apply at air or surface temperatures below 35°F or when air or surface temperatures may drop below 35°F within 48 hours. No reduction necessary.
  • Brush: Use a nylon-polyester brush.
  • Roller: Use a high quality 3/8-3/4 inch nap synthetic roller cover.
  • Sherwin Williams Duration® Exterior Acrylic can also be applied with an airless sprayer. To Spray Duration® you want to use an airless sprayer that can support at least a 15 thousand’s tip. The airless sprayer would be used at around 2000 PSI or higher. Common tips would include a 515 or 517 airless tip. Recommended sprayers for applying Duration® can be found at the end of the guide.

Application tips

  • Make sure product is completely agitated (mechanically or manually) before use.
  • Thoroughly follow the recommended surface preparations.
  • On repaint work, apply one coat of Duration coating; on bare surfaces, apply two coats of Duration, allowing 4 hours drying between coats.
  • Do not paint in direct sun.
  • Apply at temperatures above 35°F.
  • During application at temperatures above 80°F, Duration sets up quickly. Some adjustment in your painting approach may be required.
  • Paint from a dry area into the adjoining wet coating area. Dries to touch in 1 hour and is ready for service overnight.
  • On large expanses of metal siding, the air, surface, and material temperatures must be 50°F or higher.

Specifications

Duration Exterior Acrylic Latex is self-priming on most surfaces. Apply 2 coats on new, bare substrates or 1 coat for repaint.

Use on these properly prepared surfaces:

Aluminium & Aluminium Siding*

Galvanized Steel*

Concrete Block

Split face Block

Cement Composition Siding/Panels

Stucco

Concrete

Plywood

Wood

*Vinyl Siding

Surfaces with a pH greater than 9 must be primed with a high pH-resistant coating such as Loxon Concrete & Masonry Primer.

Standard latex primers cannot be used below 50°F. See specific primer label for that product’s application limitations.

Concrete masonry units (CMU) - Surface should be thoroughly clean and dry. Air, material and surface temperatures must be at least 50°F (10°C) before filling. Use Loxon Acrylic Block Surfacer. The filler must be thoroughly dry before topcoating.

Knots and some woods, such as redwood and cedar, contain a high amount of tannin, a colored wood extract. If applied to these bare woods, the first coat of DURATION may show some staining, but it will be trapped in the first coat. A second coat will uniform the appearance. If staining persists, spot prime severe areas with 1 coat of Exterior Oil-Based Wood Primer prior to using DURATION.

*On large expanses of metal siding, the air, surface, and material temperatures must be 50°F or higher.

Surface preparation

  • Remove all surface contamination by washing with an appropriate cleaner, rinse thoroughly and allow to dry.
  • Existing peeled or checked paint should be scraped and sanded to a sound surface.
  • Glossy surfaces should be sanded dull.
  • Stains from water, smoke, ink, pencil, grease, etc. should be sealed with the appropriate primer-sealer.
  • Recognize that any surface preparation short of total removal of the old coating may compromise the service length of the system.

Aluminum and Galvanized Steel: Wash to remove any oil, grease, or other surface contamination. All corrosion must be removed with sandpaper, wire brush, or other abrading method.

Cement Composition Siding/Panels: Remove all dirt, dust, grease, oil, loose particles, laitance, foreign material, and peeling or defective coatings. Allow the surface to dry thoroughly. If the surface is new, test it for pH, if the pH is higher than 9, prime with Loxon Concrete & Masonry Primer. After power washing, previously painted masonry may still have a powdery surface that should be sealed with Loxon Conditioner and then apply 1 coat of Duration.

Caulking: Gaps between windows, doors, trim, and other through-wall openings can be filled with the appropriate caulk after priming the surface. Allow proper drying time before application of the finish.

Concrete, Masonry,Cement, Block: All new surfaces must be cured according to the supplier’s recommendations—usually about 30 days. Remove all form release and curing agents. Rough surfaces should be filled to provide a smooth surface. If painting cannot wait 30 days, allow the surface to cure 7 days and prime the surface with Loxon Concrete & Masonry Primer. Cracks, voids, and other holes should be repaired with an elastomeric patch or sealant. Concrete masonry units (CMU) - Surface should be thoroughly clean and dry. Air, material and surface temperatures must be at least 50°F (10°C) before filling. Use Loxon Acrylic Block Surfacer. The filler must be thoroughly dry before topcoating.

Composition Board/Hardboard: Because of the potential for wax bleeding out of the substrate, apply 1 coat of Exterior Oil-Based Wood Primer and then topcoat. Stucco: Remove any loose stucco, efflorescence, or laitance. Allow new stucco to cure at least 30 days before painting. If painting cannot wait 30 days, allow the surface to dry 7 days and prime with Loxon Concrete & Masonry Primer. Repair cracks, voids, and other holes with an elastomeric patch or sealant.

Mildew: Prior to attempting to remove mildew, it is always recommended to test any cleaner on a small, inconspicuous area prior to use. Bleach and bleaching type cleaners may damage or discolor existing paint films. Bleach alternative cleaning solutions may be advised. Mildew may be removed before painting by washing with a solution of 1 part liquid bleach and 3 parts water. Apply the solution and scrub the mildewed area. Allow the solution to remain on the surface for 10 minutes. Rinse thoroughly with water and allow the surface to dry before painting. Wear protective eyewear, waterproof gloves, and protective clothing. Quickly wash off any of the mixture that comes in contact with your skin. Do not add detergents or ammonia to the bleachwater solution.

Previously Painted Surfaces: Spot prime bare areas with Duration, wait 4 hours, and paint the entire surface. Some specific surfaces require specialized treatment.

Steel: Rust and mill scale must be removed using sandpaper, wire brush, or other abrading method. Bare steel must be primed the same day as cleaned.

Unpainted Surfaces: Duration can be used as a self-priming coating on many bare surfaces. When used this way, the first coat of Duration acts like a coat of primer and the second coat provides the final appearance and performance.

*Vinyl or other PVC Building Products: Clean the surface thoroughly by scrubbing with warm, soapy water. Rinse thoroughly, if needed prime with appropriate white primer. Do not paint vinyl with any color darker than the original color or having a Light Reflective Value (LRV) of less than 56 unless VinylSafe® Colors are used. If VinylSafe colors are not used the vinyl may warp. Follow all painting guidelines of the vinyl manufacturer when painting. Only paint properly installed vinyl siding. Deviating from the manufacturer’s painting guidelines may cause the warranty to be voided.

Wood, Plywood, Composition Board: Sand any exposed wood to a fresh surface. Patch all holes and imperfections with a wood filler or putty and sand smooth. All patched areas must be primed. Knots and some woods, such as redwood and cedar, contain a high amount of tannin, a colored wood extract. If applied to these bare woods, the first coat of DURATION may show some staining, but it will be trapped in the first coat. A second coat will uniform the appearance. If staining persists, spot prime severe areas with 1 coat of Exterior Oil-Based Wood Primer prior to using DURATION.

Cautions:

  • For Exterior use only.
  • Protect from freezing
  • Non-photochemically reactive
  • Not for use on floors.
  • Before using, carefully read CAUTIONS on label

Our Favorite Sprayers for Sherwin Williams Duration®

Graco 390 PC 3300 PSI @ 0.47 GPM Electric Airless Sprayer - Stand

The ideal sprayer for residential jobs and the best value in small electric sprayers.

Titan Impact 440 3300 PSI @ 0.54 GPM Electric Airless Paint Sprayer - Skid

High performance electric airless sprayer will apply all standard architectural primer, paints and coatings efficiently.

Titan Impact 440 3300 PSI @ 0.54 GPM Electric Airless Paint Sprayer - Skid

Ideally suited for residential, property maintenance, and small commercial applications.

TriTech Industries T5 Complete 3300 PSI @ 0.67 GPM 1.3 HP Electric Airless Sprayer - Stand

Designed and manufactured at Tritech's state of the art machining facility in Union, New Jersey.

Titan Elite 3000 Airless Paint Sprayer

Perfect sprayer for contractors that need the versatility to switch between a high rider and low rider model.

Graco Ultra Max II 490 PC 3300 PSI @ .54 GPM Electric Airless Sprayer - Lo Boy

Best choice for professionals looking for superior performance and control for daily use on residential jobs.

`; console.log('bye ', offtype, '===================================================>==') if (offtype === "collection" || offtype === "tags") { let foundMatch = false; for (let i = 0; i < contentdata.selectedProducts.length; i++) { const handle = contentdata.selectedProducts[i]; const existSelector = (offtype === "collection") ? '#offerboxcoll span[handle="' + handle.value.handle + '"]' : '#offerboxtags li[tag="' + handle.label + '"]'; const exist = document.querySelector(existSelector); if (exist) { box.appendChild(paragraph.cloneNode(true)); foundMatch = true; break; // Exit the loop if a match is found } } if (!foundMatch) { box.appendChild(paragraph); } } else { box.appendChild(paragraph); } contentdata.variables.content.forEach((content, countblock) => { if(content.icon){ const binaryImageData = atob(content.icon.split(',')[1]); const arrayBuffer = new ArrayBuffer(binaryImageData.length); const view = new Uint8Array(arrayBuffer); for (let i = 0; i < binaryImageData.length; i++) { view[i] = binaryImageData.charCodeAt(i); } const blob = new Blob([arrayBuffer], { type: "image/png" }); const imageUrl = URL.createObjectURL(blob); const getparentdiv = document.getElementById("app_block_" + index + ""); const innerdata = document.createElement('div'); innerdata.style.display = 'flex'; innerdata.style.alignItems = 'start'; innerdata.style.marginBottom = '5px'; var cushtml = '' if(contentdata?.theme?.background?.Icon_border && contentdata?.theme?.background?.Icon_border.border_bottom){ innerdata.style.borderBottom = '1px solid rgba(15,53,103,.09)'; innerdata.style.paddingBottom = '10px'; } if(contentdata?.theme?.background?.Icon_border && contentdata?.theme?.background?.Icon_border.icon_border){ cushtml = `

` } else{ cushtml = `

` } } innerdata.innerHTML = `${cushtml} How to Apply Sherwin Williams Duration® (7)

${content.variable_name}`; getparentdiv.appendChild(innerdata); getparentdiv.classList.add("content-lines"); } else{ var imageUrl = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAS5SURBVHgB3ZZPbBR1FMe/v5npbnfptgO0giAyFWIEE9iCRsEDXTDRRBPKgYNc2srBGA+UmBiFA4sJR2Ivhnix3URBPFi4yYWuiVGJSAcPoMToIgik29ppt7T7Z+b3fL9Zuu7s0pZeecnu/GZ+7/c+7/3mvfcb4HEXsZjC5ffRDQ1JEDKL6bLO4AsnkVpIxcDiLvXoJXR09MNZSG2kD6anY4SHqYXN1Tp5yrSgaYdA1MW3mX/GZ8ynjhY6sIjQgGmOZUvDrc0hh62aIGGD5HHxrpOZF0ifmnFoYthfENCiw+Idp39B4CmzB0IMBNfxrriUEO85NmqBfmSCYYAVtCTYy3+T/rCns5Ojj/OqrSCNt1jehJS2GEynH9hIso1jdVBJHXORGlUTffPB6OAe3mIoaDlymvtjfzUd9PYeNkasezHJUASgpNZoPTxKBoFgr2tguLRlkA7qw7yoE80usG0S2DgDf6wkGwJG+ffjcgtTxgD1vnoIl9x9eMkOQgXtmhtWRSicsudlmH1hS/+zzRiJahz1jglgx/9Jmrs3C6/Irj/NN21F4PlphpoKzNvNDl6KdwSgRJNza7WKFY9S1dv4TAyfRA3dol3ZAExJ08owWp5sDDzzdV7LqhFnuT7A74xrl44/mD1Xiat6DX1mdnE2nrve9XJne0t0WNs0hoY3p1ErhVs5/xpeF6ubQ3oFcKWF88lLqGTid9rJ8HR9hIrOMHWNhvXusC5Q2n4XSxYVaViyMd3fzmpYHXBODGhdxXVZ6Ct0LFkU7Imi2rv4w6brgDf274xrGkx3eY5L7uGtdnK0ACdbxLyy4b76N+ng7vW1U5UspTNxiy/Wb2fZQ0OHbMpj+l6eM1plYxS5H+74eqWChDMq/XGzFUNkRahirJK94abyA0+2s9125GGLXtsJRihVgerdsQbNKUkJUTQQbTN8mJLYzjX+r+WVNdDbGNJiBGC+zupIWb9QMculJnrQaMTrIkSRj59GWKVSKOMaRYjxJuTzWYQbg5mohzRs2L0aC8poxZEMhLYeebfSSyuu+CFz07b2slNEabq5Et59l7PbxZLldkQlTZrLwqnYrgX64tF5Fb5HlBqbkmi8vg653CiWJKoGpwzVXVL05bYeFSUNxM06IJ3ZzieF5DqkY5u++Wmw4JGdG1kNGm3ANEOJ5KIscrRyiwNlxOcXB/mo41oUKUT0gTogWzzPt13cT6/S6W190qN9k9Nwit8+B/euwMTEbX6n5Q6jstH5e6ZqqUTpT3b361WcMNyTpUzQV9vVCcM25a6y7bIEW5uKUnqHIYxOceBy/439L8bJM4aaw4bVtHkM7uZbkG15rpoQdL2B7XjQ7sRg/L4SoT9WwZXkFIoy0XQ6bdMZ3k6p29C8IfHWlfY5Rs03jdcL3RjCrJtQd6mNe7vXGiU7ce3Cd7O/Lu+OXGtF8zKC1joD7nzQpyOQuTBmXA/jbiF9du2OTKF1zSFuqL0cWZpPiyG+JqoJ9d80vmfS/uDnLkRioZFly6Lsg2G98f0XokHX+iRoK78Hyyufv7YUdJVH6dTG1zOhhtBfSt/1qOOIdZrnpSUO/HIOjypHPjyePHHiZPJR9Y9+9HHfUvQfT/kPjPf3DfL6/W8AAAAASUVORK5CYII=" const getparentdiv = document.getElementById("app_block_" + index + ""); const innerdata = document.createElement('div'); innerdata.style.display = 'flex'; innerdata.style.alignItems = 'start'; innerdata.style.marginBottom = '5px'; var cushtml = '' if(contentdata?.theme?.background?.Icon_border && contentdata?.theme?.background?.Icon_border.border_bottom){ innerdata.style.borderBottom = '1px solid rgba(15,53,103,.09)'; innerdata.style.paddingBottom = '10px'; } if(contentdata?.theme?.background?.Icon_border && contentdata?.theme?.background?.Icon_border.icon_border){ cushtml = `

` } else{ cushtml = `

` } } innerdata.innerHTML = `${cushtml} How to Apply Sherwin Williams Duration® (8)

${content.variable_name}`; getparentdiv.appendChild(innerdata); getparentdiv.classList.add("content-lines"); } }); } } } } var custcountry = localStorage.getItem('usercountry'); var countryflag = `How to Apply Sherwin Williams Duration® (9)`; var tody = getFormattedDate(new Date()); var tommr = getFormattedDate(new Date(new Date().getTime() + 24 * 60 * 60 * 1000)); var yestr = getFormattedDate(new Date(new Date().getTime() - 24 * 60 * 60 * 1000)); updateElements('span[varname="Customer country"] .actinp', custcountry); updateElements('span[varname="Country flag"] .actinp', countryflag); updateElements('span[varname="Today"] .actinp', tody); updateElements('span[varname="Tomorrow"] .actinp', tommr); updateElements('span[varname="Yesterday"] .actinp', yestr); function updateElements(selector, value) { var elements = document.querySelectorAll(selector); for (var i = 0; i < elements.length; i++) { elements[i].innerHTML = value; } } function getFormattedDate(date) { var day = date.getDate(); var month = date.getMonth() + 1; var year = date.getFullYear(); return `${year}-${month < 10 ? '0' : ''}${month}-${day < 10 ? '0' : ''}${day}`; } } }) .catch(error => { console.error('Fetch error:', error); }); var carturl = `${appbaseurl}/api/product/offers-cart?storename=${shophost}&country=${localStorage.getItem('usercountry')}`; fetch(carturl, { method: "GET", mode: 'cors' }) .then(response => { if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); }) .then(data => { var cartfatch = data.alloffers; cartfatch.forEach(cartval => { if (cartval.status) { cartval.country.forEach((cname) => { var nwcont = cname.country_name; cname.countries.forEach((ncname) => { if ('' + localStorage.getItem('usercountry') + '' == '' + ncname.name + '') { cntry = 1; } }) if ('' + localStorage.getItem('usercountry') + '' == '' + nwcont + '') { cntry = 1; } }); if (cntry == 1) { let newline = cartval.variables.title; var cleanedTitle = cleanOfferText(newline); if (cartval.ApplyToAllProductsByCart) { var inp = document.querySelector('form[action="/cart/add"]'); var inputElement = document.createElement('input'); inputElement.setAttribute('type', 'hidden'); inputElement.setAttribute('value', cleanedTitle); inputElement.setAttribute('name', 'properties[Order Estimation]'); inp.appendChild(inputElement); } else { if (cartval.StoreSelectedTypeData == "collection") { let newline = cartval.variables.title; var cleanedTitle = cleanOfferText(newline); var files = cartval.tags; var processedValues = new Set(); files.forEach(function (file) { var matchingHandle = document.querySelector('#offerboxcartitm li[handle="' + file + '"]'); if (matchingHandle && !processedValues.has(file)) { appendInputToForm(cleanedTitle); processedValues.add(cleanedTitle); } }); function appendInputToForm(value) { var existingInput = document.querySelector('form[action="/cart/add"] input[name="properties[Order Estimation]"][value="' + value + '"]'); if (!existingInput) { var inp = document.querySelector('form[action="/cart/add"]'); var inputElement = document.createElement('input'); inputElement.setAttribute('type', 'hidden'); inputElement.setAttribute('value', value); inputElement.setAttribute('name', 'properties[Order Estimation]'); inp.appendChild(inputElement); } } } else if (cartval.StoreSelectedTypeData == "tags") { let newline = cartval.variables.title; var cleanedTitle = cleanOfferText(newline); var files = cartval.tags; var processedValues = new Set(); files.forEach(function (file) { var matchingTag = document.querySelector('#offerboxtags li[tag="' + file + '"]'); if (matchingTag && !processedValues.has(file)) { appendInputToForm(cleanedTitle); processedValues.add(cleanedTitle); } }); function appendInputToForm(value) { var existingInput = document.querySelector('form[action="/cart/add"] input[name="properties[Order Estimation]"][value="' + value + '"]'); if (!existingInput) { var inp = document.querySelector('form[action="/cart/add"]'); var inputElement = document.createElement('input'); inputElement.setAttribute('type', 'hidden'); inputElement.setAttribute('value', value); inputElement.setAttribute('name', 'properties[Order Estimation]'); inp.appendChild(inputElement); } } } else { let newline = cartval.variables.title; var cleanedTitle = cleanOfferText(newline); var files = cartval.selectedProducts; var processedValues = new Set(); var vidElements = document.querySelectorAll('.provarid .vid'); var vidSet = new Set(Array.from(vidElements).map(vidElement => vidElement.innerText)); files.forEach(function (file) { const variants = file.value.variants; variants.forEach(function (variant) { if (vidSet.has(variant.id.toString()) && !processedValues.has(variant.id)) { appendInputToForm(cleanedTitle); processedValues.add(variant.id); } }); }); function appendInputToForm(value) { var existingInput = document.querySelector('form[action="/cart/add"] input[name="properties[Order Estimation]"][value="' + value + '"]'); if (!existingInput) { var inp = document.querySelector('form[action="/cart/add"]'); var inputElement = document.createElement('input'); inputElement.setAttribute('type', 'hidden'); inputElement.setAttribute('value', value); inputElement.setAttribute('name', 'properties[Order Estimation]'); inp.appendChild(inputElement); } } } } } } }); }) .catch(error => { console.error('Error fetching cart data:', error); }); }, 200)}else{ $( document ).ready(function() { console.log("$('isp_add_to_cart_form .isp_add_to._cart_btn')") console.log($('.isp_add_to_cart_form .isp_add_to_cart_btn')) setTimeout(()=>{ makesubmittobutton() }, 1000) function makesubmittobutton(){ $('#isp_load_more').click(function(){ makesubmittobutton() }) var btns = $('.isp_add_to_cart_form .isp_add_to_cart_btn') if(btns && btns.length){ for(var x=0; x

{ if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); }) .then(data => { const DataAll = data.alloffers; console.log('DataAll', DataAll) if(DataAll && DataAll.length){ for (let i = 0; i < 1; i++) { const contentdata = DataAll[i]; const index = i; const offtype = contentdata.StoreSelectedTypeData; if (contentdata.status && contentdata.selectedProducts) { const selectedDataStore = contentdata.selectedProducts.filter(item => item.value.id); if (contentdata.offer_type === "by_product") { const contentmainContainer = document.getElementById("contentmainContainer"); const showBoxShadow = contentdata?.theme?.background?.background_style?.show_box_shadow; const themeset = contentdata?.theme; if (themeset == '') { var custcss = `.shopify_offercards { background: #000; } .shopify_offercards h3 { color: #0dffeb; } .shopify_offercards span { color: #fff; } .shopify_offercards span.actinp { color: #0dffeb; }`; } else { var custcss = ''; } let cntry = 0; contentdata.country.forEach((cname) => { const nwcont = cname.country_name; cname.countries.forEach((ncname) => { if ('' + localStorage.getItem('usercountry') + '' === '' + ncname.name + '') { cntry = 1; } }); if ('' + localStorage.getItem('usercountry') + '' === '' + nwcont + '') { cntry = 1; } }); if (cntry === 1) { const BoarderStyle = contentdata?.theme?.background?.show_border; const backborder = BoarderStyle?.show_box_shadow; const boxshadow = showBoxShadow ? '4px 2px 13px 5px rgba(70, 63, 63, 0.5)' : ''; const bodrstyl = backborder ? `${BoarderStyle.line_width} ${BoarderStyle.border_style} ${BoarderStyle.border_color}` : ''; // const box = contentmainContainer.querySelector("#contentContainer"); const paragraph = document.createElement('div'); paragraph.innerHTML = `${customstyle}

${contentdata?.variables?.title}

`; console.log('bye ', offtype, '===================================================>==') if (offtype === "collection" || offtype === "tags") { let foundMatch = false; for (let i = 0; i < contentdata.selectedProducts.length; i++) { const handle = contentdata.selectedProducts[i]; const existSelector = (offtype === "collection") ? '#offerboxcoll span[handle="' + handle.value.handle + '"]' : '#offerboxtags li[tag="' + handle.label + '"]'; const exist = document.querySelector(existSelector); if (exist) { box.appendChild(paragraph.cloneNode(true)); foundMatch = true; break; // Exit the loop if a match is found } } if (!foundMatch) { // box.appendChild(paragraph); } } else { // box.appendChild(paragraph); } contentdata.variables.content.forEach((content, countblock) => { if(content.icon){ const binaryImageData = atob(content.icon.split(',')[1]); const arrayBuffer = new ArrayBuffer(binaryImageData.length); const view = new Uint8Array(arrayBuffer); for (let i = 0; i < binaryImageData.length; i++) { view[i] = binaryImageData.charCodeAt(i); } const blob = new Blob([arrayBuffer], { type: "image/png" }); const imageUrl = URL.createObjectURL(blob); const getparentdiv = document.getElementById("app_block_" + index + ""); const innerdata = document.createElement('div'); innerdata.style.display = 'flex'; innerdata.style.alignItems = 'start'; innerdata.style.marginBottom = '5px'; var cushtml = '' if(contentdata?.theme?.background?.Icon_border && contentdata?.theme?.background?.Icon_border.border_bottom){ innerdata.style.borderBottom = '1px solid rgba(15,53,103,.09)'; innerdata.style.paddingBottom = '10px'; } if(contentdata?.theme?.background?.Icon_border && contentdata?.theme?.background?.Icon_border.icon_border){ cushtml = `

` } else{ cushtml = `

` } } innerdata.innerHTML = `${cushtml} How to Apply Sherwin Williams Duration® (10)

${content.variable_name}`; // getparentdiv.appendChild(innerdata); // getparentdiv.classList.add("content-lines"); } else{ var imageUrl = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAS5SURBVHgB3ZZPbBR1FMe/v5npbnfptgO0giAyFWIEE9iCRsEDXTDRRBPKgYNc2srBGA+UmBiFA4sJR2Ivhnix3URBPFi4yYWuiVGJSAcPoMToIgik29ppt7T7Z+b3fL9Zuu7s0pZeecnu/GZ+7/c+7/3mvfcb4HEXsZjC5ffRDQ1JEDKL6bLO4AsnkVpIxcDiLvXoJXR09MNZSG2kD6anY4SHqYXN1Tp5yrSgaYdA1MW3mX/GZ8ynjhY6sIjQgGmOZUvDrc0hh62aIGGD5HHxrpOZF0ifmnFoYthfENCiw+Idp39B4CmzB0IMBNfxrriUEO85NmqBfmSCYYAVtCTYy3+T/rCns5Ojj/OqrSCNt1jehJS2GEynH9hIso1jdVBJHXORGlUTffPB6OAe3mIoaDlymvtjfzUd9PYeNkasezHJUASgpNZoPTxKBoFgr2tguLRlkA7qw7yoE80usG0S2DgDf6wkGwJG+ffjcgtTxgD1vnoIl9x9eMkOQgXtmhtWRSicsudlmH1hS/+zzRiJahz1jglgx/9Jmrs3C6/Irj/NN21F4PlphpoKzNvNDl6KdwSgRJNza7WKFY9S1dv4TAyfRA3dol3ZAExJ08owWp5sDDzzdV7LqhFnuT7A74xrl44/mD1Xiat6DX1mdnE2nrve9XJne0t0WNs0hoY3p1ErhVs5/xpeF6ubQ3oFcKWF88lLqGTid9rJ8HR9hIrOMHWNhvXusC5Q2n4XSxYVaViyMd3fzmpYHXBODGhdxXVZ6Ct0LFkU7Imi2rv4w6brgDf274xrGkx3eY5L7uGtdnK0ACdbxLyy4b76N+ng7vW1U5UspTNxiy/Wb2fZQ0OHbMpj+l6eM1plYxS5H+74eqWChDMq/XGzFUNkRahirJK94abyA0+2s9125GGLXtsJRihVgerdsQbNKUkJUTQQbTN8mJLYzjX+r+WVNdDbGNJiBGC+zupIWb9QMculJnrQaMTrIkSRj59GWKVSKOMaRYjxJuTzWYQbg5mohzRs2L0aC8poxZEMhLYeebfSSyuu+CFz07b2slNEabq5Et59l7PbxZLldkQlTZrLwqnYrgX64tF5Fb5HlBqbkmi8vg653CiWJKoGpwzVXVL05bYeFSUNxM06IJ3ZzieF5DqkY5u++Wmw4JGdG1kNGm3ANEOJ5KIscrRyiwNlxOcXB/mo41oUKUT0gTogWzzPt13cT6/S6W190qN9k9Nwit8+B/euwMTEbX6n5Q6jstH5e6ZqqUTpT3b361WcMNyTpUzQV9vVCcM25a6y7bIEW5uKUnqHIYxOceBy/439L8bJM4aaw4bVtHkM7uZbkG15rpoQdL2B7XjQ7sRg/L4SoT9WwZXkFIoy0XQ6bdMZ3k6p29C8IfHWlfY5Rs03jdcL3RjCrJtQd6mNe7vXGiU7ce3Cd7O/Lu+OXGtF8zKC1joD7nzQpyOQuTBmXA/jbiF9du2OTKF1zSFuqL0cWZpPiyG+JqoJ9d80vmfS/uDnLkRioZFly6Lsg2G98f0XokHX+iRoK78Hyyufv7YUdJVH6dTG1zOhhtBfSt/1qOOIdZrnpSUO/HIOjypHPjyePHHiZPJR9Y9+9HHfUvQfT/kPjPf3DfL6/W8AAAAASUVORK5CYII=" // const getparentdiv = document.getElementById("app_block_" + index + ""); const innerdata = document.createElement('div'); innerdata.style.display = 'flex'; innerdata.style.alignItems = 'start'; innerdata.style.marginBottom = '5px'; var cushtml = '' if(contentdata?.theme?.background?.Icon_border && contentdata?.theme?.background?.Icon_border.border_bottom){ innerdata.style.borderBottom = '1px solid rgba(15,53,103,.09)'; innerdata.style.paddingBottom = '10px'; } if(contentdata?.theme?.background?.Icon_border && contentdata?.theme?.background?.Icon_border.icon_border){ cushtml = `

` } else{ cushtml = `

` } } innerdata.innerHTML = `${cushtml} How to Apply Sherwin Williams Duration® (11)

${content.variable_name}`; // getparentdiv.appendChild(innerdata); // getparentdiv.classList.add("content-lines"); } }); } } } } var custcountry = localStorage.getItem('usercountry'); var countryflag = `How to Apply Sherwin Williams Duration® (12)`; var tody = getFormattedDate(new Date()); var tommr = getFormattedDate(new Date(new Date().getTime() + 24 * 60 * 60 * 1000)); var yestr = getFormattedDate(new Date(new Date().getTime() - 24 * 60 * 60 * 1000)); updateElements('span[varname="Customer country"] .actinp', custcountry); updateElements('span[varname="Country flag"] .actinp', countryflag); updateElements('span[varname="Today"] .actinp', tody); updateElements('span[varname="Tomorrow"] .actinp', tommr); updateElements('span[varname="Yesterday"] .actinp', yestr); function updateElements(selector, value) { var elements = document.querySelectorAll(selector); for (var i = 0; i < elements.length; i++) { elements[i].innerHTML = value; } } function getFormattedDate(date) { var day = date.getDate(); var month = date.getMonth() + 1; var year = date.getFullYear(); return `${year}-${month < 10 ? '0' : ''}${month}-${day < 10 ? '0' : ''}${day}`; } } }) .catch(error => { console.error('Fetch error:', error); }); var carturl = `${appbaseurl}/api/product/offers-cart?storename=${shophost}&country=${localStorage.getItem('usercountry')}&product=${prodid}`; fetch(carturl, { method: "GET", mode: 'cors' }) .then(response => { if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); }) .then(data => { var cartfatch = data.alloffers; var productags = [] if(data.product && data.product.tags){ productags = data.product.tags; } if(cartfatch && cartfatch.length){ cartfatch.forEach(cartval => { if(calledadd){ return } if (cartval.status) { cartval.country.forEach((cname) => { var nwcont = cname.country_name; cname.countries.forEach((ncname) => { if ('' + localStorage.getItem('usercountry') + '' == '' + ncname.name + '') { cntry = 1; } }) if ('' + localStorage.getItem('usercountry') + '' == '' + nwcont + '') { cntry = 1; } }); if (cntry == 1) { let newline = cartval.variables.title; var cleanedTitle = cleanOfferText(newline); if (cartval.ApplyToAllProductsByCart) { var inp = document.querySelector('form[action="/cart/add"]'); var inputElement = document.createElement('input'); inputElement.setAttribute('type', 'hidden'); inputElement.setAttribute('value', cleanedTitle); inputElement.setAttribute('name', 'properties[Order Estimation]'); inp.appendChild(inputElement); calledadd = true var formdata = { 'items': [{ 'id': variantid, 'quantity': 1, 'properties': { 'Order Estimation': cleanedTitle } }] } addtocart(formdata) return } else { if (cartval.StoreSelectedTypeData == "collection") { let newline = cartval.variables.title; var cleanedTitle = cleanOfferText(newline); var files = cartval.tags; var processedValues = new Set(); files.forEach(function (file) { var matchingHandle = document.querySelector('#offerboxcartitm li[handle="' + file + '"]'); if (matchingHandle && !processedValues.has(file)) { // appendInputToForm(cleanedTitle); // processedValues.add(cleanedTitle); calledadd = true var formdata = { 'items': [{ 'id': variantid, 'quantity': 1, 'properties': { 'Order Estimation': cleanedTitle } }] } addtocart(formdata) return } }); function appendInputToForm(value) { var existingInput = document.querySelector('form[action="/cart/add"] input[name="properties[Order Estimation]"][value="' + value + '"]'); if (!existingInput) { var inp = document.querySelector('form[action="/cart/add"]'); var inputElement = document.createElement('input'); inputElement.setAttribute('type', 'hidden'); inputElement.setAttribute('value', value); inputElement.setAttribute('name', 'properties[Order Estimation]'); inp.appendChild(inputElement); } } } else if (cartval.StoreSelectedTypeData == "tags") { let newline = cartval.variables.title; var cleanedTitle = cleanOfferText(newline); var files = cartval.tags; var processedValues = new Set(); files.forEach(function (file) { // var matchingTag = document.querySelector('#offerboxtags li[tag="' + file + '"]'); var matchingTag = productags.includes(file) if (matchingTag && !processedValues.has(file)) { // appendInputToForm(cleanedTitle); // processedValues.add(cleanedTitle); calledadd = true var formdata = { 'items': [{ 'id': variantid, 'quantity': 1, 'properties': { 'Order Estimation': cleanedTitle } }] } addtocart(formdata) return } }); function appendInputToForm(value) { var existingInput = document.querySelector('form[action="/cart/add"] input[name="properties[Order Estimation]"][value="' + value + '"]'); if (!existingInput) { var inp = document.querySelector('form[action="/cart/add"]'); var inputElement = document.createElement('input'); inputElement.setAttribute('type', 'hidden'); inputElement.setAttribute('value', value); inputElement.setAttribute('name', 'properties[Order Estimation]'); inp.appendChild(inputElement); } } } else { let newline = cartval.variables.title; var cleanedTitle = cleanOfferText(newline); var files = cartval.selectedProducts; var processedValues = new Set(); var vidElements = document.querySelectorAll('.provarid .vid'); var vidSet = new Set(Array.from(vidElements).map(vidElement => vidElement.innerText)); files.forEach(function (file) { const variants = file.value.variants; variants.forEach(function (variant) { if (vidSet.has(variant.id.toString()) && !processedValues.has(variant.id)) { calledadd = true var formdata = { 'items': [{ 'id': variantid, 'quantity': 1, 'properties': { 'Order Estimation': cleanedTitle } }] } addtocart(formdata) return // appendInputToForm(cleanedTitle); // processedValues.add(variant.id); } }); }); function appendInputToForm(value) { var existingInput = document.querySelector('form[action="/cart/add"] input[name="properties[Order Estimation]"][value="' + value + '"]'); if (!existingInput) { var inp = document.querySelector('form[action="/cart/add"]'); var inputElement = document.createElement('input'); inputElement.setAttribute('type', 'hidden'); inputElement.setAttribute('value', value); inputElement.setAttribute('name', 'properties[Order Estimation]'); inp.appendChild(inputElement); } } } } } } }); if(calledadd == false){ var formdata = { 'items': [{ 'id': variantid, 'quantity': 1 }] } addtocart(formdata) } } else{ var formdata = { 'items': [{ 'id': variantid, 'quantity': 1 }] } addtocart(formdata) } }) .catch(error => { console.error('Error fetching cart data:', error); }); } // }); });}function isCountryValid(cartval) { var isPresent = cartval.country.some(el => el.country_name === localStorage.getItem('usercountry')); if (!isPresent) { cartval.country.forEach(cname => { var nwcont = cname.country_name; isPresent = cname.countries.some(ncname => localStorage.getItem('usercountry') === ncname.name || localStorage.getItem('usercountry') === nwcont); }); } return isPresent;}function cleanOfferText(text) { cleanedText = text.replace(//g, ''); cleanedText = cleanedText.replace(/<[^>]*>|[,🖋]|Calander|/g, ''); cleanedText = cleanedText.replace(/.*?<\/span>/g, ''); cleanedText = cleanedText.replace(/\s+/g, ' ').trim(); cleanedText = cleanedText.replace('nbsp', ''); return cleanedText;}function updateAllCartItems(newline) { $.ajax({ url: '/cart.js', method: 'GET', success: function (response) { const cartData = JSON.parse(response); var variantIds = cartData.items.map(item => item.key); var cleanedTitle = cleanOfferText(newline); if (localStorage.getItem('cart_rtrn') > 0) { localStorage.setItem('cart_length', variantIds.length); } else { isCartChecked(0, variantIds.length); } var updateCount = 1; variantIds.forEach(variantId => { $.ajax({ url: '/cart/change.js', method: 'POST', data: { id: variantId, properties: { 'Order Estimation': cleanedTitle, }, }, success: function (updatedCart) { if (localStorage.getItem('cart_rtrn') > 0) { return true; } updateCount++; if (updateCount === variantIds.length) { // Check if all items have been updated if (allItemsUpdated(cartData, cleanedTitle)) { isCartChecked(1, variantIds.length); // reload // window.location.reload(); } else { // window.location.reload(); console.log("Not all items updated yet"); } } else { console.log("each-loop--" + updateCount); } }, error: function (error) { console.error('Error updating cart:', error); } }); }); }, error: function (error) { console.error('Error fetching cart information:', error); } });}function allItemsUpdated(cartData, cleanedTitle) { // Check if all items have the 'Order Estimation' property set to cleanedTitle return cartData.items.every(item => item.properties && item.properties['Order Estimation'] === cleanedTitle);}function updateCartLineItems(newline, selectedProducts, key) { $.ajax({ url: 'cart.js', method: 'GET', success: function (response) { const cartData = JSON.parse(response); var variantIds = cartData.items.map(item => item[key]); var i = 1; function performCartUpdate(variantId, cleanedTitle) { $.ajax({ url: '/cart/change.js', method: 'POST', data: { id: variantId, properties: { 'Order Estimation': cleanedTitle, } }, success: function (updatedCart) { if (localStorage.getItem('cart_rtrn') > 0) { return true; } else { if (localStorage.getItem('cart_lenght') == i) { isCartChecked(1, localStorage.getItem('cart_lenght')); // reload window.location.reload(); } else { console.log("each-loop--" + i); } i++; } }, error: function (error) { console.error('Error updating cart:', error); } }); } var cleanedTitle = cleanOfferText(newline); if (localStorage.getItem('cart_rtrn') > 0) { localStorage.setItem('cart_lenght', variantIds.length); } else { isCartChecked(0, variantIds.length); } selectedProducts.forEach(itemid => { var matchingItem; if (key === 'handle') { matchingItem = cartData.items.find(item => item[key] == itemid.value[key]); } else { matchingItem = cartData.items.find(item => item['variant_id'] == key); } if (matchingItem) { performCartUpdate(matchingItem.key, cleanedTitle); } }); }, error: function (error) { console.error('Error fetching cart information:', error); } });}function isCartChecked(cart_rtrn = 0, cart_lenght = 0) { localStorage.setItem('cart_rtrn', cart_rtrn); localStorage.setItem('cart_lenght', cart_lenght);}$( document ).ready(function() { setTimeout(() => { const url = new URL(window.location.href); const addToCartButtons = document.getElementById('addToCartCopy'); if(addToCartButtons){ addToCartButtons.addEventListener('click', function (event) { event.preventDefault(); isCartChecked(); let shopifyPaymentTermsElement = document.querySelector('shopify-payment-terms'); let variantIdget = '' if (shopifyPaymentTermsElement) { variantIdget = shopifyPaymentTermsElement.getAttribute('variant-id'); } if (statusStore && Array.isArray(variantIds) && variantIds.length > 0) { let formData = { items: variantIds.map((id, index) => ({ id: id == variantIdget ? Number(variantIdget) : null, quantity: 1, properties: { 'data': titleArray[index] } })).filter(item => item.id !== null) }; fetch(window.Shopify.routes.root + 'cart/add.js', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(formData) }) .then(response => response.json()) .then(data => { console.log('Successfully added to cart:', data); }) .catch((error) => { console.error('Error:', error); }); } else { console.error('Error: Invalid statusStore or variantIds array is empty or not defined.'); } }); } }, 1000)})function addtocart(formData){ fetch(window.Shopify.routes.root + 'cart/add.js', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(formData) }) .then(response => response.json()) .then(data => { console.log('Successfully added to cart:', data); }) .catch((error) => { console.error('Error:', error); });}

How to Apply Sherwin Williams Duration® (2024)
Top Articles
Latest Posts
Article information

Author: Lidia Grady

Last Updated:

Views: 6227

Rating: 4.4 / 5 (65 voted)

Reviews: 80% of readers found this page helpful

Author information

Name: Lidia Grady

Birthday: 1992-01-22

Address: Suite 493 356 Dale Fall, New Wanda, RI 52485

Phone: +29914464387516

Job: Customer Engineer

Hobby: Cryptography, Writing, Dowsing, Stand-up comedy, Calligraphy, Web surfing, Ghost hunting

Introduction: My name is Lidia Grady, I am a thankful, fine, glamorous, lucky, lively, pleasant, shiny person who loves writing and wants to share my knowledge and understanding with you.