Configured Product Image

Build Your Coolaroo Coolhaven Shade Sail: 15' x 12' x 9' Right Triangle

{{ selection = model.getActiveOption(section.TypeId);"" }} {{ ::sectIndex = $index;"" }}

{{ ::model.sectionNumber2($index) }} Select a room

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
(9 characters max)

{{ ::model.sectionNumber2($index) }} Select a {{::section.TypeId == 'trt.swc.alt' ? 'secondary ' : ''}}product color

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
Click to zoom, {{ selection.Caption }}

{{ selection.Properties.StyleName }} {{ selection.Properties.StyleName ? ' ' : '' }} {{ selection.Properties.Name }} {{ selection.Properties.Code }}

(add {{ selection.SalePrice | currency: '$' }})
(not available in this size)

{{::items[0].Properties.StyleName}}

{{ ::swatchOptions = (items | orderBy: ['SortOrder', 'Caption']);"" }}
{{::swatchboxOption.Caption}}
{{::swatchboxOption.Caption}}{{(swatchboxOption.SalePrice > 0) ? ' - ' : ''}}{{ model.subOptionPriceUseCoupon(swatchboxOption, '$', true) }}
{{ model.formatSwatchSnipeCopy(swatchboxOption.Properties['Snipe']) }}
PAINT COLOR

{{ ::model.sectionNumber($index) }} True Paint Match

{{ selection = selection || section.Options[0];"" }} {{ paintColorName = selection.Properties.Brand + ' ' + selection.Properties.ColorName;""}}
{{ selection.Caption }}

Your match is

{{paintColorName}}

or match to another paint color

Blindsgalore stands behind their True Paint Matchmaking skills. If you are not 100% satisfied with the color of the shade(s) you receive we will replace it with any other colored True Paint Matchmaker Shade. *

learn more

{{ ::model.sectionNumber2($index) }} Select a {{::section.TypeId == 'trt.swc.alt' ? 'secondary ' : ''}}product color

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
Click to zoom, {{ selection.Caption }}

{{ selection.Properties.StyleName }} {{ selection.Properties.StyleName ? ' ' : '' }} {{ selection.Properties.Name }} {{ selection.Properties.Code }}

(add {{ selection.SalePrice | currency: '$' }})
(not available in this size)

{{::items[0].Properties.StyleName}}

{{ ::swatchOptions = (items | orderBy: ['SortOrder', 'Caption']);"" }}
{{::swatchboxOption.Caption}}
{{::swatchboxOption.Caption}}{{(swatchboxOption.SalePrice > 0) ? ' - ' : ''}}{{ model.subOptionPriceUseCoupon(swatchboxOption, '$', true) }}
{{ model.formatSwatchSnipeCopy(swatchboxOption.Properties['Snipe']) }}

{{ ::model.sectionNumber2($index) }} Select a {{::section.TypeName.toLowerCase()}} option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ ::inputName = !section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ ::dataKey = section.AllowMultiple ? option.Properties.TypeId : section.TypeId;""}} {{ ::checkedVal = section.AllowMultiple ? true : option.Id;"" }}
What happened to free-hanging cords? To prioritize child safe window coverings, free-hanging operating cords have been discontinued in the United States. learn more

{{ ::model.sectionNumber2($index) }} Select a {{::section.TypeName.toLowerCase()}} option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ ::inputName = !section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ ::dataKey = section.AllowMultiple ? option.Properties.TypeId : section.TypeId;""}} {{ ::checkedVal = section.AllowMultiple ? true : option.Id;"" }}
What happened to free-hanging cords? To prioritize child safe window coverings, free-hanging operating cords have been discontinued in the United States. learn more
{{ ::accentColors = model.getDeepOptions(section.TypeId, 'trt.acc.clr');"" }}

{{ ::model.sectionNumber2($index) }} Select a decorative accent

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::accentStyles = model.getDeepOptions(section.TypeId, 'trt.acc.stl');"" }}
{{ ::inputName = section.TypeId + '_' + $index;"" }}
{{ ::inputName = 'trt.acc.stl_' + $index;"" }} {{ ::hiddenAccTypeId = section.Options[0].Id;""}}
{{ ::accentSwatches = (accentColors | orderBy: 'SortOrder');"" }}
{{::swatchboxOption.Caption}}
{{::swatchboxOption.Caption}}{{(swatchboxOption.SalePrice > 0) ? ' - ' : ''}}{{ model.subOptionPriceUseCoupon(swatchboxOption, '$', true) }}
{{ model.formatSwatchSnipeCopy(swatchboxOption.Properties['Snipe']) }}

{{ ::model.sectionNumber2($index) }} Select a size

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ ::inputName = section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ ::dataKey = section.AllowMultiple ? (option.Properties.TypeId + '_' + option.Id) : section.TypeId;""}} {{ ::checkedVal = section.AllowMultiple ? true : option.Id;"" }}

{{ ::model.sectionNumber2($index) }} Select a headrailsize

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ ::inputName = section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ ::dataKey = section.AllowMultiple ? (option.Properties.TypeId + '_' + option.Id) : section.TypeId;""}} {{ ::checkedVal = section.AllowMultiple ? true : option.Id;"" }}

{{ ::model.sectionNumber2($index) }} Select a {{::section.TypeName.toLowerCase()}} option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help

To best configure your shutter, please tell us about your existing window.

{{ section.Options[0].Caption }}


FREE (not available in this size) (add {{option.Price | currency: '$'}}) (add {{option.Price | currency: '$'}} {{option.SalePrice | currency: '$'}})

{{ ::model.sectionNumber2($index) }} Select a hem option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputName = section.TypeId + '_' + $index;"" }}

{{ ::model.sectionNumber2($index) }} Select a pull option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputName = section.TypeId + '_' + $index;"" }}

{{ ::model.sectionNumber2($index) }} Select a {{::section.TypeName.toLowerCase()}} option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputName = section.TypeId + '_' + $index;"" }}

{{ ::model.sectionNumber2($index) }} Select a heading option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputName = section.TypeId + '_' + $index;"" }}

{{ ::model.sectionNumber2($index) }} Select a {{section.TypeName.toLowerCase()}} option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ ::inputName = section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ ::dataKey = section.AllowMultiple ? (option.Properties.TypeId + '_' + option.Id) : section.TypeId;""}} {{ ::checkedVal = section.AllowMultiple ? true : option.Id;"" }}
What happened to free-hanging cords? To prioritize child safe window coverings, free-hanging operating cords have been discontinued in the United States. learn more

{{ ::model.sectionNumber2($index) }} Select a {{::section.TypeName.toLowerCase()}} option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::endOptions = (option.Options | filter: { TypeId: 'val.end'}:true);"" }} {{ ::inputName = section.TypeId + '_' + $index;"" }}

{{ ::model.sectionNumber2($index) }} Select a {{section.TypeName.toLowerCase()}} option

{{ ::typeNameDisplay = (section.TypeName == "Swatch") ? "product color" : (section.TypeName == "Room") ? "room selection" : section.TypeName;"" }} help
{{ ::inputType = section.AllowMultiple ? 'checkbox' : 'radio';"" }} {{ ::inputName = section.AllowMultiple ? (section.SafeTypeId + '_' + $index) : option.Id;"" }} {{ ::dataKey = section.AllowMultiple ? (option.Properties.TypeId + '_' + option.Id) : section.TypeId;""}} {{ ::checkedVal = section.AllowMultiple ? true : option.Id;"" }}
What happened to free-hanging cords? To prioritize child safe window coverings, free-hanging operating cords have been discontinued in the United States. learn more
Please address the following errors to continue: You're Done!
check progress

Product Details

Coolaroo Coolhaven Shade Sail: 15' x 12' x 9' Right Triangle

  • Premium AF230 fabric from Coolaroo offers maximum resistance to mold
  • Items must be unopened and in original condition to qualify for return
  • Install kit included
  • Shade sails can be returned only in unopened and original condition