1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 2<html lang="en" xmlns="http://www.w3.org/1999/xhtml"> 3<head id="head"> 4 <!-- OneTrust consent script must load before GTM and any tracking/analytics tag (TFS 2965948). --> 5 <!-- OneTrust Cookies Consent Notice start for liveathsr.com -->
6<script type="text/javascript" src="https://cdn.cookielaw.org/consent/6ad0f6f3-82b2-4b2b-be87-e43b7bdf8d7e/OtAutoBlock.js"></script>
vendor: 1 bytes, line 6
6
7<script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" data-document-language="true" type="text/javascript" charset="UTF-8" data-domain-script="6ad0f6f3-82b2-4b2b-be87-e43b7bdf8d7e"></script>
vendor: 1 bytes, line 7
7
8<script type="text/javascript"> 9function OptanonWrapper() { } 10</script>
10 11<!-- OneTrust Cookies Consent Notice end for liveathsr.com --><meta name="viewport" content="width=device-width, initial-scale=1" /><title> 12 Apartment Rental Amenities in Honolulu, HI | Halewai'olu Senior Residences Amenities 13</title><meta name="description" content="Find Apartments for Rent in Honolulu, HI. Halewai'olu Senior Residences has many of the amenities you are looking for. Take a look today! (808) 808-1331" /> 14<meta http-equiv="content-type" content="text/html; charset=UTF-8" /> 15<meta http-equiv="pragma" content="no-cache" /> 16<meta http-equiv="content-style-type" content="text/css" /> 17<meta http-equiv="content-script-type" content="text/javascript" /> 18<meta name="keywords" content="HI Apartment Amenities, Amenities for apartments in Honolulu, HI, Halewai'olu Senior Residences Apartment amenities HI" /> 19<link href="/CMSPages/GetResource.ashx?stylesheetname=RPcssMaster_S0088-Haute" type="text/css" rel="stylesheet" /> 20<!-- MasterPageIncludes --><link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/themes/ui-lightness/jquery-ui.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" integrity="sha256-YUNa6t/JONQ+iBynZFpRTKfiPdqfpMKCPOQEFmtF70Q=" crossorigin="anonymous"></link>
20<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js" type="text/javascript" integrity="sha256-9VTS8JJyxvcUR+v+RTLTsd0ZWbzmafmlzMmeZO9RFyk=" crossorigin="anonymous"></script>
20<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.0/jquery-ui.min.js" type="text/javascript" integrity="sha256-KcG2ZvBcPZjk4GfR49kpfXemCzwSulQxLRvBus92Vv4=" crossorigin="anonymous"></script>
20<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/global.min.js" type="text/javascript" integrity="" crossorigin="anonymous"></script>
20<script src="https://cs-cdn.realpage.com/CWS/2623272/Accessibe/Accessibe.js" type="text/javascript" integrity="" crossorigin="anonymous"></script>
20<!-- /MasterPageIncludes --><meta name="viewport" content="width=device-width,initial-scale=1" /> 21<meta name="geo.position" content="21.3156269;-157.859682" /> 22<meta name="geo.placename" content="Honolulu" /> 23<meta name="geo.region" content="US-HI" /> 24<meta name="ICBM" content="21.3156269, -157.859682" /> 25 26<link type="text/css" href="https://cs-cdn.realpage.com/CWS/2623272/TemplateResources/Global/Icons/font-awesome.min.css" rel="stylesheet" /> 27<link type="text/css" href="https://cs-cdn.realpage.com/CWS/2623272/TemplateResources/Global/Icons/fontello.css" rel="stylesheet" /> 28<link type="text/css" href="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/Bootstrap/css/bootstrap.min.css" rel="stylesheet" /> 29
30<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/global.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 30
30
31<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 31
31
32<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.js" type="text/javascript"></script>
vendor: 1 bytes, line 32
32
33<script src="https://code.jquery.com/jquery-migrate-1.4.1.js" type="text/javascript"></script>
vendor: 1 bytes, line 33
33
34<script src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/Bootstrap/js/bootstrap.min.js" type="text/javascript"></script>
34 35
36<script type="text/javascript"> 37var adHoc1Header = true; 38 39$(document).ready(function () { 40 41 $(".sps-mobile-toggle-contain, .menuElem li > a, #menuElem li > a").on("click", function(){ 42 if($(window).width() < 1025) { 43 $(".header-menu").toggle("slow"); 44 45 if($(".sps-mobile-toggle i").hasClass('fa-bars')){ 46 $(".sps-mobile-toggle i").removeClass('fa-bars') 47 } 48 else{ 49 $(".sps-mobile-toggle i").addClass('fa-bars') 50 } 51 } 52 }); 53 54 var bannerHeight = $(".head-wrap").height() 55 $("#wrapper").css("padding-top", bannerHeight); 56 $(".collapse").on('show.bs.collapse', function (){ 57 $("#wrapper").animate({"padding-top": bannerHeight}, "500ms"); 58 $("#specials-banner-toggle").html('<span>specials <i class="fa fa-angle-up" aria-hidden="true"></i></span>'); 59 }); 60 $(".collapse").on('shown.bs.collapse', function (){ 61 bannerHeight = $(".head-wrap").height(); 62 $("#wrapper").animate({"padding-top": bannerHeight}, "500ms"); 63 }); 64 $(".collapse").on('hide.bs.collapse', function (){ 65 var bannerHeight = $(".head-wrap").height() - $("#specials-banner").height(); 66 $("#wrapper").animate({"padding-top": bannerHeight}, "fast"); 67 $("#specials-banner-toggle").html('<span>specials <i class="fa fa-angle-down" aria-hidden="true"></i></span>'); 68 }); 69 70}); 71</script>
71 72 73
74<script type="module"> 75 import MEChat from 'https://cdn.eliseai.com/@meetelise/chat'; 76 MEChat.start({ 77 organization: "e5d2564e-a1b1-45b5-a650-151de0fface7", 78building: "69fd3762-9e2d-11f0-8b3c-071fdadb77b6" 79 }); 80 </script>
80<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/2.1.2/TweenLite.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 80
80
81<script src="https://cdnjs.cloudflare.com/ajax/libs/ScrollMagic/2.0.5/ScrollMagic.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 81
81
82<script src="https://cdnjs.cloudflare.com/ajax/libs/ScrollMagic/2.0.5/plugins/animation.gsap.js" type="text/javascript"></script>
vendor: 1 bytes, line 82
82
83<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/1.17.0/plugins/ScrollToPlugin.min.js" type="text/javascript"></script>
vendor: 1 bytes, line 83
83
84<script src="https://cs-cdn.realpage.com/CWS/2623272/SPS/sps-v3.js" type="text/javascript"></script>
vendor: 1 bytes, line 84
84
85<script type="text/javascript"> 86 // Seo Values 87 var seohome = {title: "Apartments for Rent in Honolulu, HI | Halewai'olu Senior Residences - Home", keywords: "Senior apartments, affordable housing, HI Apartments Great Honolulu, HI, Apartments for rent in HI, (808) 808-1331 Apartments HI", description: "Halewaiolu Senior Apartments in Honolulu. Call (808) 808-1331 today!"}; 88 var seofloorplans = {title: "Honolulu, HI Halewai'olu Senior Residences Floor Plans | Apartments in Honolulu, HI - Floor Plans", keywords: "HI Apartment Floor Plans, Floor plans for apartments in Honolulu, HI, Halewai'olu Senior Residences Apartment Floor plans HI", description: "See our spacious floor plans at our apartments in Honolulu, HI. We have many floor plans available with multiple features."}; 89 var seoamenities = {title: "Apartment Rental Amenities in Honolulu, HI | Halewai'olu Senior Residences Amenities", keywords: "HI Apartment Amenities, Amenities for apartments in Honolulu, HI, Halewai'olu Senior Residences Apartment amenities HI", description: "Find Apartments for Rent in Honolulu, HI. Halewai'olu Senior Residences has many of the amenities you are looking for. Take a look today! (808) 808-1331 "}; 90 var seogallery = {title: "Honolulu Apartments | Halewai'olu Senior Residences | Gallery", keywords: "", description: "Click to view our gallery of Halewai'olu Senior Residences!"}; 91 var seoneighborhood = {title: "Honolulu, HI Neighborhood | Halewai'olu Senior Residences Honolulu, HI Neighborhood", keywords: "HI Apartment Neighborhood, Neighborhood for apartments in Honolulu, HI, Halewai'olu Senior Residences Apartment Neighborhood HI", description: "Located in Honolulu, HI. Halewai'olu Senior Residences has all the features you need in the Honolulu area. Find out why so many call us home."}; 92 var seocontact = {title: "Contact Us Halewai'olu Senior Residences | Halewai'olu Senior Residences Honolulu, HI - Contact Us", keywords: "HI Apartments, Apartments for rent in HI, Halewai'olu Senior Residences, Contact Halewai'olu Senior Residences ", description: "Contact us today at Halewai'olu Senior Residences and make Honolulu your new home today. You will be happy you did! Call us (808) 808-1331"}; 93 var seostudents = {title: "", keywords: "", description: ""}; 94 var seoparents = {title: "", keywords: "", description: ""}; 95 var seoseniors = {title: "", keywords: "", description: ""}; 96 var seoresidents = {title: "Honolulu, HI Apartments | Halewai'olu Senior Residences | Residents", keywords: "", description: "Halewai'olu Senior Residences apartments for rent in Honolulu, HI offers easy online payment options. Give us a call for more information!"}; 97 var seoreviews = {title: "", keywords: "", description: ""}; 98 99 100 var RP_SPS = new SPS_CONSTRUCTOR({ 101 add_pages: [], 102 remove_pages: [], 103 add_non_SPS_links: [], 104 header: '#header', 105 scene_container_class: 'block-area', 106 offset_header: true, 107 offset_mobile: false, 108 mobile_offset_end: 1024 109 }); 110 $(window).ready(function () { 111 //Init SPS 112 RP_SPS.init(); 113 }); 114</script>
114 115<link href="https://capi.myleasestar.com/v2/dimg/147629746/75x75/147629746.png" type="image/png" rel="shortcut icon" /> 116<link href="https://capi.myleasestar.com/v2/dimg/147629746/75x75/147629746.png" type="image/png" rel="icon" /> 117<link href="/CmsPages/GetResource.ashx?stylesheetname=rpWebpartCss_MediaViewer;RpWebpartCss_PopUp;rpWebPartCSS_SocialMedia;rpWebpartCss_BackgroundGallery;rpWebpartCss_BackgroundGallery;rpWebpartCss_AmenitiesTabbedStandard;rpWebpartCss_GallerySquareTiles;rpWebpartCss_MediaViewer;rpWebpartCss_NeighborhoodFullWidth;rpWebpartCss_ContactUsFloating;rpWebpartCss_TimeOut;rpWebpartCss_CookiesConsent;rpWebpartCss_RealPageLogo;rpWebpartCss_AdaHudicons;rpWebPartCSS_SocialMedia;rpWebpartCss_CCPA" type="text/css" rel="stylesheet" /> 118 119
119<script type="text/javascript">var firstTouchEnabled=true</script>
119 120 121 122 <style> 123 :root { 124 --RPcolor1: #ffffff !important; 125 --RPcolor2: #000000 !important; 126 --RPcolor3: #e0212f !important; 127 --RPcolor4: #d7d7d7 !important; 128 --RPcolor5: #7d7d7d !important; 129 --RPcolor6: #999999 !important; 130 --RPcolor7: #f1f1f1 !important; 131 --RPcolor8: #ffffff !important; 132 --RPcolor9: #ffffff !important; 133 134 --RPHeaderFont: '', Helvetica, Arial, sans-serif; 135 --RPBodyFont: '', Helvetica, Arial, sans-serif; 136 137 --FPCardImageHeight: 200px; 138 --FPCardImageHeight-Medium: 200px; 139 --FPCardImageHeight-Large: 200px; 140 --FPModalImageHeight: 500px; 141 --FPModalImageHeightMedium: 500px; 142 --FPModalImageHeightLarge: 500px; 143 --FPCardCarouselPadding: 15px; 144 --FPCardCarouselPadding-Large: 30px; 145 } 146 147 /* WCAG 2.4.11 â footer content not obscured by the OneTrust cookie banner. All 3 rules gated on the banner being visible so nothing applies when OneTrust is dismissed / absent. */ 148 html:has(#onetrust-banner-sdk:not([style*="display: none"])) { 149 scroll-padding-bottom: 220px; 150 } 151 body:has(#onetrust-banner-sdk:not([style*="display: none"])) { 152 padding-bottom: 220px; 153 } 154 html:has(#onetrust-banner-sdk:not([style*="display: none"])) :focus-visible { 155 scroll-margin-bottom: 220px; 156 } 157 158 /* WCAG 1.4.10 (TFS 3041085) â OneTrust's own responsive CSS for the banner 159 (and its "Cookies Settings" button) can render briefly at desktop width 160 before its breakpoint styles finish applying, pushing the page into 161 horizontal scroll on mobile. This stylesheet is inline in <head>, so it 162 applies to #onetrust-banner-sdk the instant OneTrust injects it â no 163 dependency on OneTrust's own script/CSS load order. */ 164 @media (max-width: 767px) { 165 #onetrust-banner-sdk { 166 max-width: 100vw !important; 167 box-sizing: border-box !important; 168 overflow-x: hidden; 169 } 170 } 171 </head></style> 172 173
173<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@1" type="text/javascript"></script>
173 174
174<script src="/RPWebParts/General/CommonData.js" type="text/javascript"></script>
174 175
175<script type="text/javascript"> 176 cssVars(); 177 </script>
177 178 179
179<script type="text/javascript"> 180 var sourcesList = JSON.parse('[{"DisplayName":"Apartment Guide","PmSourceId":"S000000036"},{"DisplayName":"ApartmentFinder.com","PmSourceId":"S000000041"},{"DisplayName":"ApartmentGuide.com","PmSourceId":"S000000003"},{"DisplayName":"ApartmentMatching.com","PmSourceId":"S000000004"},{"DisplayName":"ApartmentRatings.com","PmSourceId":"S000000042"},{"DisplayName":"Apartments.com","PmSourceId":"S000000005"},{"DisplayName":"Billboard","PmSourceId":"S000000019"},{"DisplayName":"Brochure/Flyer","PmSourceId":"S000000020"},{"DisplayName":"CraigsList.com","PmSourceId":"S000000044"},{"DisplayName":"Current Resident","PmSourceId":"S000000027"},{"DisplayName":"Drive by","PmSourceId":"S000000021"},{"DisplayName":"ForRent.com","PmSourceId":"S000000008"},{"DisplayName":"Google.com","PmSourceId":"S000000040"},{"DisplayName":"LivingChoices.com","PmSourceId":"S000000002"},{"DisplayName":"Locator Service","PmSourceId":"S000000015"},{"DisplayName":"Move.com","PmSourceId":"S000000049"},{"DisplayName":"MoveForFree.com","PmSourceId":"S000000045"},{"DisplayName":"MyNewPlace.com","PmSourceId":"S000000039"},{"DisplayName":"Other","PmSourceId":"S000000026"},{"DisplayName":"Prior resident","PmSourceId":"S000000029"},{"DisplayName":"Property web site","PmSourceId":"S000000001"},{"DisplayName":"Radio Advertising","PmSourceId":"S000000025"},{"DisplayName":"Referral companies/merchants","PmSourceId":"S000000030"},{"DisplayName":"Rent.com","PmSourceId":"S000000012"},{"DisplayName":"Rentals.com","PmSourceId":"S000000010"},{"DisplayName":"Sign","PmSourceId":"S000000023"},{"DisplayName":"Yahoo.com","PmSourceId":"S000000048"},{"DisplayName":"Yellow pages","PmSourceId":"S000000022"}]'); 181 var propertyKey = '2G8797917510'; 182 var propertyId = '8979750'; 183 var leadList = [ 184 { hcLeadChannelName: "Apartment Finder", Domain: "ApartmentFinder.com"}, 185 { hcLeadChannelName: "Apartment Home Living Export", Domain: "ApartmentHomeLiving.com"}, 186 { hcLeadChannelName: "ApartmentGuide.com", Domain: "ApartmentGuide.com"}, 187 { hcLeadChannelName: "Apartments.com Network", Domain: "Apartments.com" }, 188 { hcLeadChannelName: "Rent.com", Domain: "Rent.com" }, 189 { hcLeadChannelName: "ForRent.com", Domain: "ForRent.com" }, 190 { hcLeadChannelName: "Move.com", Domain: "Move.com" }, 191 { hcLeadChannelName: "ApartmentFinder.com", Domain: "ApartmentFinder.com" }, 192 { hcLeadChannelName: "ApartmentShowcase.com", Domain: "ApartmentShowcase.com" }, 193 { hcLeadChannelName: "ApartmentList.com", Domain: "ApartmentList.com" }, 194 { hcLeadChannelName: "Zillow Rental Network", Domain: "zillow.com" }, 195 { hcLeadChannelName: "LiveLovely.com", Domain: "LiveLovely.com" }, 196 { hcLeadChannelName: "Google.com", Domain: "Google.com" }, 197 { hcLeadChannelName: "MyLeasestar", Domain: "myleasestar.com" }, 198 { hcLeadChannelName: "Greystar", Domain: "greystar.com" } 199 ]; 200 201 //Defined in CommonData 202 //matchedSource = f_getSessionStorage('matchedSource'); 203 //matchedSourceId = f_getSessionStorage('matchedSourceId'); 204 205 tryMatchingSourceFromReferrerUrl(window.document, sourcesList); 206 </script>
206 207 208
208<script type="text/javascript"> 209 var utmConfigInfo = ''; 210 211 $(document).ready(function () { 212 commonDataOnReady(document, sourcesList); 213 }); 214 215 216 function setSEONumber(phoneNumber) { 217 $('.seo-number').each(function() { 218 if ($(this).find('span').length) { 219 $(this).find('span').html(phoneNumber); 220 } else { 221 $(this).html(phoneNumber); 222 } 223 224 if ($(this).attr('href') && $(this).attr('href').indexOf('tel:') > -1) 225 $(this).attr('href', 'tel: ' + phoneNumber); 226 if ($(this).attr('onclick') && $(this).attr('onclick').indexOf('f_analyticsSendEvent(') > -1) { 227 $(this).attr('onclick', "f_analyticsSendEvent('general', 'click-phone-number', '" + phoneNumber + '\')'); 228 } 229 }); 230 231 232 } 233 234 </script>
234 235 236
236<script type="text/javascript"> 237 try { 238 let myAccessibe = new RpAcsb() 239 myAccessibe.config = { 240 positionX: 'left', 241 positionY: 'bottom', 242 offsetX: 50, 243 offsetY: 50, 244 hideTrigger: false, 245 statementLink: 'https://www.realpage.com/accessibility-statement/' 246 } 247 myAccessibe.init() 248 } 249 catch (err) { 250 console.log("Accessibe Script not available"); 251 } 252 </script>
252 253 254 <!-- OG Image Information --> 255 <meta property="og:image" content="https://capi.myleasestar.com/v2/dimg-crop/147629075/1200x1200/147629075.png" /> 256 <!-- END OG Image Information -->
256<script type="text/javascript">var propertyId='8979750';var lsApi='https://c-leasestar-api.realpage.com';var cacheUrl='';</script>
256<script type="text/javascript">var leadObj=[{"PhoneNumber":"(877) 361-9094","LeadChannelName":"Website"}];var googleCallTrackingEnabled = false;</script>
256 257<link rel="canonical" href="https://www.liveathsr.com/Amenities.aspx" /> 258 <!-- ExternalResources_Header --> 259 <link href="https://cs-cdn.realpage.com/CWS/2623272/TemplateResources/Greystar/WCAG/wcag-s0088-haute.css" type="text/css" rel="stylesheet" integrity="" crossorigin="anonymous"></link> 260 <!-- /ExternalResources_Header --> 261 <style> 262 /* WCAG 2.4.1 Bypass Blocks ââ¬â visible-on-focus skip-to-content link (TFS 2850320). */ 263 .skip-link { 264 position: absolute; 265 left: -10000px; 266 top: auto; 267 width: 1px; 268 height: 1px; 269 overflow: hidden; 270 } 271 .skip-link:focus { 272 position: fixed; 273 top: 0; 274 left: 0; 275 width: auto; 276 height: auto; 277 padding: 0.5rem 1rem; 278 background: #000; 279 color: #fff; 280 text-decoration: underline; 281 z-index: 10000; 282 outline: 3px solid #fff; 283 outline-offset: -3px; 284 } 285 286 /* WCAG 3.2.5/2.4.4 ââ¬â screen-reader-only utility (TFS 2991863). 287 RealPage-owned definition; the class is currently only reachable via vendor CSS 288 (Bootstrap / Font Awesome) on several templates. Mirrors header.css:1481. */ 289 .sr-only { 290 position: absolute; width: 1px; height: 1px; 291 padding: 0; margin: -1px; overflow: hidden; 292 clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; 293 } 294 .sr-only-focusable:active, .sr-only-focusable:focus { 295 position: static; width: auto; height: auto; 296 margin: 0; overflow: visible; clip: auto; white-space: normal; 297 } 298 </style>
299<script type="application/ld+json">{"@context":"http://schema.org","@type":"Apartment","name":"Halewaiolu Senior Residences - 8305","image":"https://capi.myleasestar.com/v2/dimg/147629075/400x400/147629075.png","url":"https://liveathsr.com/","telephone":"(877) 361-9094","address":{"@type":"PostalAddress","streetAddress":"1331 River Street","addressLocality":"Honolulu","addressRegion":"HI","postalCode":"96817","addressCountry":"USA"},"geo":{"@type":"GeoCoordinates","latitude":21.3156269,"longitude":-157.859682},"openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"Monday","opens":"9:00AM","closes":"4:30PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Tuesday","opens":"9:00AM","closes":"4:30PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Wednesday","opens":"9:00AM","closes":"4:30PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Thursday","opens":"9:00AM","closes":"4:30PM"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Friday","opens":"9:00AM","closes":"4:30PM"}]}</script>
299<link href="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
300<script type="text/javascript">var mvTourText = ''; var mvColor = 'e0212f'; mvBtnAnimation = 'spin'</script>
300<script type="text/javascript">var mvTours = null</script>
300<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.js" type="text/javascript" defer="defer"></script>
300<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/media-viewer.js" type="text/javascript" defer="defer"></script>
300<link href="https://cs-cdn.realpage.com/CWS/2623272/TemplateResources/Global/Icons/font-awesome.min.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
301<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/jquery.mobile.toucheventsonly.min.js" type="text/javascript" defer="defer"></script>
301<link href="/CMSPages/GetResource.ashx?stylesheetfile=/Assets/common/wcag/css/pause-control.min.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" /> 302<link href="/CMSPages/GetResource.ashx?stylesheetfile=/Assets/common/wcag/css/pause-control.min.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" /> 303<link href="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
304<script type="text/javascript">var floorPlanTemplate = 'floorplan4';</script>
304<link href="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
305<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/masonry/masonry.pkgd.min.js" type="text/javascript" defer="defer"></script>
305<script type="text/javascript">var p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_ctl00_GalleryContainer= {galleryId:'120441',hideColumnSelector:'false',defaultView:'3',openCloseEffect:'elastic',openCloseSpeed:'normal',nextPrefEffect:'fade',nextPrevSpeed:'normal',playSpeed:'3000'};</script>
305<script type="text/javascript">var latitude='21.3156269',longitude='-157.859682',name='Halewaiolu Senior Residences - 8305',addressLine1='1331 River Street',city='Honolulu',addressState='HI',addressPostalCode='96817',phonesNumber='(877) 361-9094',website='',walkScore='97',searchRadius='1609.34';</script>
305<link href="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/datepicker.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
306<script src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/datepicker.js" type="text/javascript" defer="defer"></script>
306<link href="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/fancybox3/jquery.fancybox.css" type="text/css" rel="preload" as="style" onload="this.rel='stylesheet'" />
307<script src="https://cs-cdn.realpage.com/CWS/2623272/CMSScripts/Custom/RPWebParts/cookies-consent.js" type="text/javascript" defer="defer"></script>
307<script type="text/javascript"> 308(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
vendor: 323 bytes, line 308
308(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','
308GTM-PGXC6VC
vendor: 3 bytes, line 308
308');
308var RpUniqueUserId = f_getAnalyticsUserValueFromCookie('RP_LSWS_USER');let customDimensions = {}; customDimensions.dimension4 = '8979750'; customDimensions.dimension5 = '5892'; customDimensions.dimension9 = RpUniqueUserId; customDimensions.dimension10 = 's0088-haute'; customDimensions.dimension11 = new Date().getTime(); customDimensions.dimension18 = '0'; customDimensions.dimension19 = '69079'; dataLayer.push({customDimensions});ga('set', { 'dimension4': 8979750, 'dimension5': 5892, 'dimension9': RpUniqueUserId, 'dimension10': 's0088-haute', 'dimension11': new Date().getTime(), 'dimension18':'0', 'dimension19': 69079 });ga('send', 'pageview'); 309</script>
vendor: 1 bytes, line 309
309
310<script>(window.BOOMR_mq=window.BOOMR_mq||[]).push(["addVar",{"rua.upush":"false","rua.cpush":"false","rua.upre":"false","rua.cpre":"false","rua.uprl":"false","rua.cprl":"false","rua.cprf":"false","rua.trans":"","rua.cook":"false","rua.ims":"false","rua.ufprl":"false","rua.cfprl":"false","rua.isuxp":"false","rua.texp":"norulematch","rua.ceh":"false","rua.ueh":"false","rua.ieh.st":"0"}]);</script>
310 311
311<script>!function(e){var n="https://s.go-mpulse.net/boomerang/";if("False"=="True")e.BOOMR_config=e.BOOMR_config||{},e.BOOMR_config.PageParams=e.BOOMR_config.PageParams||{},e.BOOMR_config.PageParams.pci=!0,n="https://s2.go-mpulse.net/boomerang/";if(window.BOOMR_API_key="Y2PYZ-3WZ5U-9VEDC-WUEHY-8N7AV",function(){function e(){if(!i){var e=document.createElement("script");e.id="boomr-scr-as",e.src=window.BOOMR.url,e.async=!0,o.parentNode.appendChild(e),i=!0}}function t(e){i=!0;var n,t,a,r,d=document,O=window;if(window.BOOMR.snippetMethod=e?"if":"i",t=function(e,n){var t=d.createElement("script");t.id=n||"boomr-if-as",t.src=window.BOOMR.url,BOOMR_lstart=(new Date).getTime(),e=e||d.body,e.appendChild(t)},!window.addEventListener&&window.attachEvent&&navigator.userAgent.match(/MSIE [67]\./))return window.BOOMR.snippetMethod="s",void t(o.parentNode,"boomr-async");a=document.createElement("IFRAME"),a.src="about:blank",a.title="",a.role="presentation",a.loading="eager",r=(a.frameElement||a).style,r.width=0,r.height=0,r.border=0,r.display="none",o.parentNode.appendChild(a);try{O=a.contentWindow,d=O.document.open()}catch(_){n=document.domain,a.src="javascript:var d=document.open();d.domain='"+n+"';void(0);",O=a.contentWindow,d=O.document.open()}if(n)d._boomrl=function(){this.domain=n,t()},d.write("<bo"+"dy onload='document._boomrl();'>");else if(O._boomrl=function(){t()},O.addEventListener)O.addEventListener("load",O._boomrl,!1);else if(O.attachEvent)O.attachEvent("onload",O._boomrl);d.close()}function a(e){window.BOOMR_onload=e&&e.timeStamp||(new Date).getTime()}if(!window.BOOMR||!window.BOOMR.version&&!window.BOOMR.snippetExecuted){window.BOOMR=window.BOOMR||{},window.BOOMR.snippetStart=(new Date).getTime(),window.BOOMR.snippetExecuted=!0,window.BOOMR.snippetVersion=12,window.BOOMR.url=n+"Y2PYZ-3WZ5U-9VEDC-WUEHY-8N7AV";var o=document.currentScript||document.getElementsByTagName("script")[0],i=!1,r=document.createElement("link");if(r.relList&&"function"==typeof r.relList.supports&&r.relList.supports("preload")&&"as"in r)window.BOOMR.snippetMethod="p",r.href=window.BOOMR.url,r.rel="preload",r.as="script",r.addEventListener("load",e),r.addEventListener("error",function(){t(!0)}),setTimeout(function(){if(!i)t(!0)},3e3),BOOMR_lstart=(new Date).getTime(),o.parentNode.appendChild(r);else t(!1);if(window.addEventListener)window.addEventListener("load",a,!1);else if(window.attachEvent)window.attachEvent("onload",a)}}(),"".length>0)if(e&&"performance"in e&&e.performance&&"function"==typeof e.performance.setResourceTimingBufferSize)e.performance.setResourceTimingBufferSize();!function(){if(BOOMR=e.BOOMR||{},BOOMR.plugins=BOOMR.plugins||{},!BOOMR.plugins.AK){var n=""=="true"?1:0,t="",a="z54ccjax2t4uq2wc3tva-f-818145993-clientnsv4-s.akamaihd.net",o="false"=="true"?2:1,i={"ak.v":"41","ak.cp":"1592120","ak.ai":parseInt("1022256",10),"ak.ol":"0","ak.cr":1,"ak.ipv":4,"ak.proto":"http/1.1","ak.rid":"38e6f1d8","ak.r":41746,"ak.a2":n,"ak.m":"","ak.n":"essl","ak.cport":20531,"ak.gh":"23.220.105.81","ak.quicv":"","ak.tlsv":"tls1.2","ak.0rtt":"","ak.0rtt.ed":"","ak.csrc":"-","ak.acc":"bbr","ak.t":"1791155434","ak.ak":"hOBiQwZUYzCg5VSAfCLimQ==BfN0SEgNad7rkjscIX8V2p6fXXhNy+TMHrpm/FeOgMmjOFPug9X8GcnofXbPcEDz1uYfzbQniLxp2IyMkHKgPCtthfD6z8r3lx1J+mi6xNTIsCtSlMElhkEhoDfT5i2p7H93mb5ReX6ceMaFBUwjZkK+ugzWgxtEaZI30FW6d+tgnqBdoOjIdWFJFDKG9tciRpEPu+E6rJzmBiCCkxRGvmQboqYSO850mn+/WNWuxztOBRkUUL3BuMq+buVdP8z5F6XYdfgMCDV30REQJQPxeSD/Ee7gvpwIrQZWByav/fXAcp6aPAhgwe86Sf+L9p4sjH60yrcy7TC6L4OJ9ugAEiOJj9bJZWFhUEjUrEQTB6j0vAwYSkiX1lV0mkF1o06uWXSlYNUrncGjdN5RLgf9CXYfDtpIN4H3Jkc68KYr+qI=","ak.pv":"8","ak.dpoabenc":"","ak.tf":o};if(""!==t)i["ak.ruds"]=t;var r={i:!1,av:function(n){var t="http.initiator";if(n&&(!n[t]||"spa_hard"===n[t]))i["ak.feo"]=void 0!==e.aFeoApplied?1:0,BOOMR.addVar(i)},rv:function(){var e=["ak.cport","ak.cr","ak.csrc","ak.gh","ak.ipv","ak.m","ak.n","ak.ol","ak.proto","ak.quicv","ak.tlsv","ak.0rtt","ak.0rtt.ed","ak.r","ak.acc","ak.t","ak.tf"];BOOMR.removeVar(e)}};BOOMR.plugins.AK={akVars:i,akDNSPreFetchDomain:a,init:function(){if(!r.i){var e=BOOMR.subscribe;e("before_beacon",r.av,null,null),e("onbeacon",r.rv,null,null),r.i=!0}return this},is_complete:function(){return!0}}}}()}(window);</script>
311</head> 312<body class="LTR Chrome ENUS ContentBody"> 313 <a class="skip-link" href="#main-content">Skip to main content</a> 314 315 316 317 318 319
320<script type="text/javascript"> 321 var displayModal = false; 322 if(navigator.userAgent.indexOf('MSIE')!==-1 || navigator.appVersion.indexOf('Trident/') > -1){ 323 displayModal = true; 324 } 325 326 327 // POLYFILLS 328 if (typeof IntersectionObserver == 'undefined') { 329 var intersectionObserverScript = document.createElement("script"); 330 intersectionObserverScript.type = "text/javascript"; 331 intersectionObserverScript.setAttribute("src", '/CMSScripts/Custom/Polyfill/intersection-observer.js'); 332 document.documentElement.firstChild.appendChild(intersectionObserverScript); 333 } 334 if (navigator.userAgent.toLocaleLowerCase().indexOf('chrome') == -1) { 335 var preloadCssScript = document.createElement("script"); 336 preloadCssScript.type = "text/javascript"; 337 preloadCssScript.setAttribute("src", '/CMSScripts/Custom/Polyfill/cssrelpreload.js'); 338 document.documentElement.firstChild.appendChild(preloadCssScript); 339 } 340 341 // END POLYFILLS 342 //For TESTING 343 //displayModal = true; 344 $(document).ready(function () { 345 var cookie = f_getBrowserSessionCookie('showBrowserVersionOnPageLoad'); 346 //For TESTING 347 //var cookie = null; 348 349 if (displayModal && cookie == null) { 350 $('.oB-overlay').show(); 351 $('#oldBrowserModal').show(); 352 var html = htmlStringBuilder(); 353 $('#oldBrowserModal').append(html); 354 f_setBrowserSessionCookie('showBrowserVersionOnPageLoad', false); 355 } 356 $('#closeBrowserModalButton').on('click', function() { 357 $('.oB-overlay').hide(); 358 $('#oldBrowserModal').hide(); 359 }); 360 }); 361 362 function f_setBrowserSessionCookie(cookieName, value) { 363 document.cookie = cookieName + "=" + value; 364 } 365 366 function f_getBrowserSessionCookie(cookieName) { 367 var cookieValue = document.cookie; 368 var cookieStart = cookieValue.indexOf(" " + cookieName + "="); 369 if (cookieStart == -1) { 370 cookieStart = cookieValue.indexOf(cookieName + "="); 371 } 372 if (cookieStart == -1) { 373 cookieValue = null; 374 } 375 else { 376 cookieStart = cookieValue.indexOf("=", cookieStart) + 1; 377 var cookieEnd = cookieValue.indexOf(";", cookieStart); 378 if (cookieEnd == -1) { 379 cookieEnd = cookieValue.length; 380 } 381 cookieValue = unescape(cookieValue.substring(cookieStart, cookieEnd)); 382 } 383 return cookieValue; 384 } 385 386 function htmlStringBuilder() { 387 var buildHtml = '<div class="oB-dialog">'+ 388 '<div class="oB-content">'+ 389 '<div class="oB-header">'+ 390 '<h4>For the best website experience, please update your browser</h4>'+ 391 '</div>'+ 392 '<div class="oB-body">'+ 393 '<p>Just click on the icons to get to the download page</p>'+ 394 '<div class="browserSelect">'+ 395 '<div class="browserIconContainer" id="firefoxTab">'+ 396 '<div class="browserColumn">'+ 397 '<a class="browserLink" href="https://www.mozilla.org/en-US/firefox/new/?v=1" target="_blank" rel="noopener noreferrer" aria-label="Firefox Download (opens in a new tab)" tabindex="0">'+ 398 '<div class="browserImage"><img src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/BrowserIcons/firefoxLogo.png" aria-hidden="true" alt="Firefox" /></div>'+ 399 '<div class="browserName">Firefox</div>'+ 400 '</a>'+ 401 '</div>'+ 402 '</div>'+ 403 '<div class="browserIconContainer" id="chromeTab">'+ 404 '<div class="browserColumn">'+ 405 '<a class="browserLink" href="https://www.google.com/chrome/browser/desktop/" target="_blank" rel="noopener noreferrer" aria-label="Chrome Download (opens in a new tab)" tabindex="0">'+ 406 '<div class="browserImage"><img src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/BrowserIcons/chromeLogo.png" aria-hidden="true" alt="Chrome" /></div>'+ 407 '<div class="browserName">Chrome</div>'+ 408 '</a>'+ 409 '</div>'+ 410 '</div>'+ 411 '<div class="browserIconContainer" id="safariTab">'+ 412 '<div class="browserColumn">'+ 413 '<a class="browserLink" href="https://support.apple.com/downloads/safari" target="_blank" rel="noopener noreferrer" aria-label="Safari Download (opens in a new tab)" tabindex="0">'+ 414 '<div class="browserImage"><img src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/BrowserIcons/safariLogo.png" aria-hidden="true" alt="Safari"/></div>'+ 415 '<div class="browserName">Safari</div>'+ 416 '</a>'+ 417 '</div>'+ 418 '</div>'+ 419 ' <div class="browserIconContainer" id="edgeTab">'+ 420 '<div class="browserColumn">'+ 421 '<a class="browserLink" href="https://www.microsoft.com/en-us
421/windows/microsoft-edge#0QiY0Omq3i5Z0krF.97" target="_blank" rel="noopener noreferrer" aria-label="Edge Download (opens in a new tab)" tabindex="0">'+ 422 '<div class="browserImage"><img src="https://cs-cdn.realpage.com/CWS/2623272/GlobalResources/BrowserIcons/edgeLogo.png" aria-hidden="true" alt="Edge"/></div>'+ 423 '<div class="browserName">Edge</div>'+ 424 '</a>'+ 425 '</div>'+ 426 '</div>'+ 427 '</div>'+ 428 '</div>'+ 429 '<button id="closeBrowserModalButton" type="button" aria-label="close" tabindex="0">Close Window</button>'+ 430 '<div class="oB-footer">'+ 431 '</p>By closing this window you acknowledge that your experience on this website may be degraded</p>'+ 432 '</div>'+ 433 '</div>'; 434 console.log(buildHtml); 435 return buildHtml; 436 } 437</script>
437 438 <style> 439 #oldBrowserModal { 440 font-family: 'Arial', sans-serif; 441 } 442 #oldBrowserModal .oB-header h4, #oldBrowserModal .oB-body p { 443 color: #666; 444 font-weight: bold; 445 } 446 #oldBrowserModal .oB-header h4 {font-size: 20px;} 447 #oldBrowserModal .oB-body p { 448 font-size: 16px; 449 padding: 0 15px 15px; 450 } 451 #oldBrowserModal .browserIconContainer { 452 width: 90px; 453 display: inline-block; 454 text-align: center; 455 margin-bottom: 15px; 456 } 457 #oldBrowserModal .browserSelect {font-size: 14px;} 458 #oldBrowserModal #explorerTab {width: 140px;} 459 #oldBrowserModal .browserImage img { 460 height: 60px; 461 width: 60px; 462 margin-bottom:10px; 463 border: none !important; 464 } 465 #oldBrowserModal a.browserLink { 466 color: #666; 467 text-decoration: none; 468 } 469 #oldBrowserModal #closeBrowserModalButton { 470 background: #42a5f5; 471 color: #fff; 472 border: none; 473 padding: 15px 45px; 474 border-radius: 500px; 475 font-size: 16px; 476 cursor: pointer; 477 } 478 #oldBrowserModal .oB-content {text-align:center;} 479 #oldBrowserModal :focus { 480 outline: -webkit-focus-ring-color auto 0px; 481 } 482 #oldBrowserModal .oB-content {border-radius: 0;} 483 .oB-overlay { 484 position: fixed; 485 z-index: 2000; 486 height: 100%; 487 width: 100%; 488 top: 0; 489 left: 0; 490 background: rgba(0,0,0,0.5); 491 } 492 #oldBrowserModal .oB-header { 493 border-bottom: 1px solid rgba(0,0,0,.1); 494 padding: 15px; 495 } 496 #oldBrowserModal .oB-body { 497 padding: 15px; 498 } 499 #oldBrowserModal .oB-footer { 500 font-size: 12px; 501 padding: 15px; 502 text-align: center; 503 border: none; 504 color: #666; 505 } 506 @media (min-width: 768px) { 507 #oldBrowserModal .oB-dialog {width: 690px;} 508 #oldBrowserModal { 509 position: absolute; 510 z-index: 2001; 511 top: 10%; 512 left: 50%; 513 background: #fff; 514 transform: translate(-50%, 0); 515 -ms-transform: translate(-50%, 0); 516 } 517 } 518 @media (max-width: 767px) { 519 #oldBrowserModal { 520 position: relative; 521 z-index: 2001; 522 margin: 5% auto 5%; 523 background: #fff; 524 width: 95%; 525 } 526 } 527</style> 528 529<div class="oB-overlay" style="display: none;"></div> <div id="oldBrowserModal" style="display: none;"></div> 530 <form method="post" action="/Amenities.aspx" id="form"> 531<div class="aspNetHidden"> 532<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> 533<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> 534<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="F6/zIDmVm7TtXGwQPm3apnjbWOjUS96W/jyteNI59D28+fAAoeA7MkPYKbvRwVrawYA9ceVMZm5+lzNiTcC6falbhzmUTiFvPjJuFm/q4M0eFvIYnV2WsOa2Jg2O1WAY9jda/p36zGKZPbv+kVHqGEiwu7NGp3XsHM2bFE5UqBFixiyqMlWAGIg4EBAoMqKq4piLb0vQKvdG2s9cnDFu8ZCrSCBfSUX3i1oDitj4Kif1p/3Th8AEg5hebHFGUbNNBU3L4jDboLP40HKR5G/io+mGqvLacA3ieOQ1Xt4ro5ZmMFJCny5RXpm5R1/vyZrrLXHlVHlUJO/umBxtglGk87ep+YRMV1iR9lMQb7V4BAetgm5SrpqQQ8OgI5t4LODXDtTx1PVf+SpaW6E1RswJUyoMCbVYQrxI9JlMjwvvEVgIuddBFXss1jP7PPiQxGOD4f/pdzNc7OTa8jTxJNtBQkA0MPevjo6EV6oFZ0V4cdgynbAJtjExWWWsyj1WuEDfzyIcW0RX7VaytEfsrJIhgtletWkKSjVx2///eBnj8pYyJBYlxniaIC4pTs18R9z7rroHXWC2Sd0Y86FNrKc/nQ==" /> 535</div> 536
537<script type="text/javascript"> 538//<![CDATA[ 539var theForm = document.forms['form']; 540if (!theForm) { 541 theForm = document.form; 542} 543function __doPostBack(eventTarget, eventArgument) { 544 if (!theForm.onsubmit || (theForm.onsubmit() != false)) { 545 theForm.__EVENTTARGET.value = eventTarget; 546 theForm.__EVENTARGUMENT.value = eventArgument; 547 theForm.submit(); 548 } 549} 550//]]> 551</script>
551 552 553
554<script src="/WebResource.axd?d=pynGkmcFUV13He1Qd6_TZLJliYB8TA_FIF9xlHcKd7ag0Vv3EWtMdA4IBxcPvyX2M5F_ORIargEI2RFqew7B_g2&t=639191793026372022" type="text/javascript"></script>
554 555 556
557<script src="/Assets/common/wcag/js/pause-control.js" type="text/javascript"></script>
557<input type="hidden" name="lng" id="lng" value="en-US" />
558<script type="text/javascript"> 559 //<![CDATA[ 560 561function PM_Postback(param) { if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080); } if(window.CMSContentManager) { CMSContentManager.allowSubmit = true; }; __doPostBack('m$am',param); } 562function PM_Callback(param, callback, ctx) { if (window.top.HideScreenLockWarningAndSync) { window.top.HideScreenLockWarningAndSync(1080); }if (window.CMSContentManager) { CMSContentManager.storeContentChangedStatus(); };WebForm_DoCallback('m$am',param,callback,ctx,null,true); } 563//]]> 564</script>
vendor: 2 bytes, line 564
564
565<script src="/ScriptResource.axd?d=NJmAwtEo3Ipnlaxl6CMhvgm388C7z57L5COL7njlfxHabVp02JjeGBqhojV0DvhOls37naEdTKvtve-DZGAUfkLhXnkKZ0JM5n8W_iT84YozJbVtHk6XR7HfTxh00jaQbIJ5RlBvWf7fnz-N3zpSVKNk_Hm4b82dGd4p6rDl7rs1&t=fffffffff7f39b88" type="text/javascript"></script>
vendor: 2 bytes, line 565
565
566<script src="/ScriptResource.axd?d=dwY9oWetJoJoVpgL6Zq8OBLhaBrqwBdVAb8vaEtP5p0RwE8U2clwoyTHecbvHf4xQfmyrJ2iJaF8M22aUIdHdYyU7qY-2hjISrIPPxmhFqA408i6Y0GxT1-SnCjYV3lgC3TXr_eJ0QD4CYVGcu8j6ZFo_C_b-R4EfAA4qAquMMk1&t=fffffffff7f39b88" type="text/javascript"></script>
vendor: 2 bytes, line 566
566
567<script type="text/javascript"> 568 //<![CDATA[ 569 570var CMS = CMS || {}; 571CMS.Application = { 572 "language": "en", 573 "imagesUrl": "/CMSPages/GetResource.ashx?image=%5bImages.zip%5d%2f", 574 "isDebuggingEnabled": false, 575 "applicationUrl": "/", 576 "isDialog": false, 577 "isRTL": "false" 578}; 579 580//]]> 581</script>
581 582<div class="aspNetHidden"> 583 584 <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="A5343185" /> 585 <input type="hidden" name="__SCROLLPOSITIONX" id="__SCROLLPOSITIONX" value="0" /> 586 <input type="hidden" name="__SCROLLPOSITIONY" id="__SCROLLPOSITIONY" value="0" /> 587</div> 588
588<script type="text/javascript"> 589//<![CDATA[ 590Sys.WebForms.PageRequestManager._initialize('manScript', 'form', ['tctxM',''], [], [], 90, ''); 591//]]> 592</script>
592 593 594 <div id="ctxM"> 595 596</div> 597 598 599 600 601 602 603 604 605 606<!-- MediaViewer Added -->
607<script type="text/javascript"> 608(function () { 609 610 // Per-instance suffix â matches the id suffix the code-behind (Initialize()) applies to 611 // popup-overlay/popUpWindowDialog/popUpWindowHeader/divCloseButton/popBtnClose/popUpWindowText, 612 // so two PopUp instances on one page never collide in DOM ids OR in this closure's JS scope. 613 var suffix = 'p_lt_zoneAnalytics_PopUp_PopUpWindow'; 614 var dialogSelector = '#popUpWindowDialog_' + suffix; 615 var overlaySelector = '#popup-overlay_' + suffix; 616 var containerSelector = '#' + suffix; // the PopUpWindow panel itself (.popUpWindowLightBox) 617 618 // Remembers the element focused before the dialog opened so focus can be restored on close (WCAG 2.4.3). 619 var f_lastFocusedBeforeDialog = null; 620 621 // Returns the currently focusable, visible elements inside the open dialog. 622 // Null-guarded: returns an empty jQuery set when the dialog markup is absent/empty. 623 function f_getDialogFocusables() { 624 var $dialog = $(dialogSelector); 625 if ($dialog.length === 0) { return $(); } 626 return $dialog 627 .find('a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])') 628 .filter(':visible'); 629 } 630 631 function f_dialogIsOpen() { 632 var $dialog = $(dialogSelector); 633 return $dialog.length > 0 && $dialog.is(':visible'); 634 } 635 636 // WCAG 2.4.11 â while the dialog is open, mark every non-dialog sibling `inert` + `aria-hidden` so focu
636s/AT can't escape behind it. 637 function f_inertBackground() { 638 var dialog = document.querySelector(containerSelector); 639 var overlay = document.querySelector(overlaySelector); 640 if (!dialog) { return; } 641 var ancestor = dialog; 642 while (ancestor && ancestor.parentElement) { 643 var parent = ancestor.parentElement; 644 Array.prototype.forEach.call(parent.children, function (sibling) { 645 if (sibling === ancestor || sibling === overlay) { return; } 646 if (sibling.tagName === 'SCRIPT' || sibling.tagName === 'STYLE' || sibling.tagName === 'LINK') { return; } 647 if (sibling.hasAttribute('data-popup-was-inert')) { return; } 648 sibling.setAttribute('data-popup-was-inert', sibling.hasAttribute('inert') ? '1' : '0'); 649 sibling.setAttribute('data-popup-was-aria-hidden', sibling.getAttribute('aria-hidden') || ''); 650 sibling.setAttribute('inert', ''); 651 sibling.setAttribute('aria-hidden', 'true'); 652 }); 653 if (parent === document.body) { break; } 654 ancestor = parent; 655 } 656 } 657
658 function f_restoreBackground() { 659 var marked = document.querySelectorAll('[data-popup-was-inert]'); 660 Array.prototype.forEach.call(marked, function (el) { 661 if (el.getAttribute('data-popup-was-inert') === '0') { el.removeAttribute('inert'); } 662 var prev = el.getAttribute('data-popup-was-aria-hidden'); 663 if (prev) { el.setAttribute('aria-hidden', prev); } else { el.removeAttribute('aria-hidden'); } 664 el.removeAttribute('data-popup-was-inert'); 665 el.removeAttribute('data-popup-was-aria-hidden'); 666 }); 667 } 668 669 function f_showDialog(modal) { 670 if ($(dialogSelector).length > 0) { 671 // Remember where focus was so it can be restored on close (WCAG 2.4.3). 672 f_lastFocusedBeforeDialog = document.activeElement; 673 $(overlaySelector).show(); 674 $(containerSelector).fadeIn(300, function () { 675 f_inertBackground(); 676 // Move focus into the dialog once it is visible (focusing a hidden element silently fails). 677 var $focusables = f_getDialogFocusables(); 678 if ($focusables.length) { 679 $focusables.first().focus(); 680 } else { 681 $(dialogSelector).attr('tabindex', '-1').focus(); 682 } 683 }); 684 if (modal) { 685 $(overlaySelector).unbind('click'); 686 } else { 687 $(overlaySelector).click(function () { 688 f_hideDialog(); 689 }); 690 } 691 } 692 } 693 694 function f_hideDialog() { 695 $(overlaySelector).hide(); 696 $(containerSelector).fadeOut(300);
697 f_restoreBackground(); 698 // Return focus to the element that was focused before the dialog opened (WCAG 2.4.3). 699 if (f_lastFocusedBeforeDialog && typeof f_lastFocusedBeforeDialog.focus === 'function') { 700 f_lastFocusedBeforeDialog.focus(); 701 } 702 f_lastFocusedBeforeDialog = null; 703 } 704 705 function f_setSessionCookie(cookieName, value) { 706 document.cookie = cookieName + "=" + value; 707 } 708 709 function f_getSessionCookie(cookieName) { 710 var cookieValue = document.cookie; 711 var cookieStart = cookieValue.indexOf(" " + cookieName + "="); 712 if (cookieStart == -1) { 713 cookieStart = cookieValue.indexOf(cookieName + "="); 714 } 715 if (cookieStart == -1) { 716 cookieValue = null; 717 } 718 else { 719 cookieStart = cookieValue.indexOf("=", cookieStart) + 1; 720 var cookieEnd = cookieValue.indexOf(";", cookieStart); 721 if (cookieEnd == -1) { 722 cookieEnd = cookieValue.length; 723 } 724 cookieValue = unescape(cookieValue.substring(cookieStart, cookieEnd)); 725 } 726 return cookieValue; 727 } 728 729 // Registered per instance (keyed by suffix) so the inline onclick="RpPopUp['<suffix>'].hideDialog()" 730 // built in Initialize() always targets this instance's own closure, never a sibling PopUp's. 731 window.RpPopUp = window.RpPopUp || {}; 732 window.RpPopUp[suffix] = { 733 showDialog: f_showDialog, 734 hideDialog: f_hideDialog 735 }; 736 737 $(document).ready(function () { 738 var disableOnMobile = 'False'; 739 var isSmallScreenDevice = $(window).width() <= 500; 740 741 var cookie = f_getSessionCookie('showOnPageLoad'); 742 var endDate = ''; 743 var convertedEndDate = new Date(endDate + " 23:59:59"); 744 var today = new Date(); 745 746 var page = '~/Amenities.aspx'; 747 //should only popup for the home page 748 if (page == "~/" && (!endDate || convertedEndDate > today)) { 749 if (!cookie || 'False'.toLowerCase() == 'true') { 750 if (('False'.toLowerCase() == 'true' || 'False'.toLowerCase() == 'true') && ((disableOnMobile.toLowerCase() == 'false' || !isSmallScreenDevice))) { 751 f_showDialog(true); 752 } 753 f_setSessionCookie('showOnPageLoad', false); 754 } 755 } 756 757 $(document).keydown(function (event) { 758 // Only act while the dialog is actually open so Esc/Tab never affect a hidden dialog. 759 if (!f_dialogIsOpen()) { return; } 760 761 if (event.keyCode == 27) { // Esc â preserve existing close behavior (avoids a 2.1.2 keyboard trap) 762 f_hideDialog(); 763 return; 764 } 765 766 if (event.keyCode == 9) { // Tab / Shift+Tab â confine focus to the dialog (WCAG 2.4.11 / 2.4.3) 767 var $focusables = f_getDialogFocusables(); 768 if ($focusables.length === 0) { 769 // No focusable content inside the dialog: keep focus on the container. 770 event.preventDefault(); 771 $(dialogSelector).attr('tabindex', '-1').focus(); 772 return; 773 } 774 var first = $focusables.first()[0]; 775 var last = $focusables.last()[0]; 776 var active = document.activeElement; 777 if (event.shiftKey && active === first) { 778 event.preventDefault(); 779 $(last).focus(); 780 } else if (!event.shiftKey && active === last) { 781 event.preventDefault(); 782 $(first).focus(); 783 } else if ($focusables.index(active) === -1) { 784 // Focus is currently outside the dialog (e.g. on <body> after an auto-open) â pull it in. 785 event.preventDefault(); 786 $(first).focus(); 787 } 788 } 789 }); 790 }); 791 792})(); 793</script>
793 794 795<div id="popup-overlay_p_lt_zoneAnalytics_PopUp_PopUpWindow" class="popup-overlay"></div> 796<div id="p_lt_zoneAnalytics_PopUp_PopUpWindow" class="popUpWindowLightBox"> 797 <div id="popUpWindowDialog_p_lt_zoneAnalytics_PopUp_PopUpWindow" class="popUpWindowDialog" role="dialog" aria-modal="true" aria-label="Promotion"><div id="divCloseButton_p_lt_zoneAnalytics_PopUp_PopUpWindow" class="divCloseButton"><button id="popBtnClose_p_lt_zoneAnalytics_PopUp_PopUpWindow" class="popBtnClose" onclick="RpPopUp['p_lt_zoneAnalytics_PopUp_PopUpWindow'].hideDialog()" aria-label="Close Window" tabindex="0" type="button">Close</button></div><div id="popUpWindowText_p_lt_zoneAnalytics_PopUp_PopUpWindow" class="popUpWindowText"></div></div> 798</div> 799 800 801 802 803<header class="head-wrap pattern" id="header"> 804 805 <div id="" class="header-container"><div id="menu-screen-overlay"></div><div id="" class="toolbar"><div id="" class="header-phone"> 806<a class="seo-number" href="tel:(877) 361-9094" onclick="f_analyticsSendEvent('general', 'click-phone-number', '(877) 361-9094')">(877) 361-9094</a></div><div id="" class="header-social"><div id="p_lt_zoneHeader_WebPartZone8_WebPartZone8_zone_SocialMedia1_pnlSocialNetworks" class="social_media"> 807 <ul class="social-list" style="list-style:none;margin:0;padding:0;"><li style="display:inline-block;"><a href="https://www.facebook.com/people/Halewai%CA%BBolu-Senior-Residences/100092001421887/" class="facebook" title="HSR Facebook" target="_blank" rel="noopener noreferrer" onclick="f_analyticsSendEvent('social', 'click-facebook-icon', 'https://www.facebook.com/people/Halewai%CA%BBolu-Senior-Residences/100092001421887/')" role="button" aria-label="facebook (opens in a new tab)"> 808 <em class="sicon-facebook" aria-hidden="true"></em></a></li></ul> 809</div></div></div><div id="" class="main-head"><div class="header-left"> 810<a class="logo scroll-notice" href="/home" title="Home"><img id="p_lt_zoneHeader_WebPartZone7_WebPartZone7_zone_EditableImage_ucEditableImage_imgImage" src="https://capi.myleasestar.com/v2/dimg/147629075/300x200/147629075.png" alt="" /> 811 812</a> 813</div><div class="header-right"><div class="header-ctas"> 814 <a href="https://8979750aff.onlineleasing.realpage.com/#k=51889" target="_blank" class="button cta1">APPLY NOW</a> 815 816 <a href="https://drive.google.com/file/d/1ChvV-hl3oeJ4ACzu53jzTWAFpRHR75Vf/view?usp=sharing" target="_blank" class="button cta2">VIRTUAL TOUR </a> 817</div><div id="" class="header-menu"> 818 <ul id="menuElem"> 819 <li class="homeNav"> 820 <a href="/">Home</a> 821 </li> 822 <li class="amenitiesNav"> 823 <a href="/Amenities.aspx">Amenities</a> 824 </li> 825 <li class="floor-plansNav"> 826 <a href="/Floor-Plans.aspx">Floor Plans</a> 827 </li> 828 <li class="galleryNav"> 829 <a href="/Gallery.aspx">Gallery</a> 830 </li> 831 <li class="neighborhoodNav"> 832 <a href="/Neighborhood.aspx">Location</a> 833 </li> 834 <li class="residentsNav"> 835 <a href="/Residents.aspx">Residents</a> 836 </li> 837 <li class="contactNav"> 838 <a href="/Contact.aspx">Contact</a> 839 </li> 840 <li> 841 <a href="/Specials.aspx">FAQs</a> 842 </li> 843 844 </ul> 845 846 847<ul class="menuElem"> 848 <li><a href="https://8979750aff.onlineleasing.realpage.com/#k=51889" target="_blank" class="button cta1">APPLY NOW</a></li> 849 850 <li><a href="https://drive.google.com/file/d/1ChvV-hl3oeJ4ACzu53jzTWAFpRHR75Vf/view?usp=sharing" target="_blank" class="button cta2">VIRTUAL TOUR </a></li><li> 851<a class="seo-number" href="tel:(877) 361-9094" onclick="f_analyticsSendEvent('general', 'click-phone-number', '(877) 361-9094')">(877) 361-9094</a></li> 852</ul></div></div></div><div class="sps-mobile-toggle-contain"> 853 <button class="sps-mobile-toggle" href="#" title="Open Menu" role="button" type="button"> 854 <i class="fa fa-bars fa-fw fa-remove"></i> 855 </button> 856</div></div> 857</header> 858 859<main id="main-content" tabindex="-1"> 860 <div id="wrapper" class="content-wrap"> 861 862 863 864 865 866<section id="home" class="block-area container-fluid"><div id="" class="content-home content-row row"><div id="" class="hero-container pattern black-border"><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartZone3_WebPartZone3_zone_WebPartLoader5_pnlContainer"> 867 868
869<script type="text/javascript"> 870 $(function () { 871 872 var target; 873 var animType = 'slide'; 874 var slideshowSpeed = 3000; 875 var overlayOpacity = 75; 876 var timingRun = setInterval(function () { f_rightClick(animType); }, slideshowSpeed); 877 // TFS 2987210 (WCAG 2.2.2 Pause, Stop, Hide -- Level A). Sticky user-pause flag. 878 // This gallery already had a clearInterval, but ONLY inside resetTiming(), which 879 // immediately re-arms the timer -- a debounce, not a stop. Every arrow click, bullet 880 // click and auto-advance funnels through resetTiming(), so a plain clearInterval from 881 // a pause button would be silently undone by the user's very next interaction. This 882 // flag is what makes the stop a real stop; resetTiming() below honours it. 883 var bgUserPaused = false; 884 var bgImageHeight; 885 var numBgImages; 886 var rpbgId = '#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartZone3_WebPartZone3_zone_WebPartLoader5_ctl00_background_gallery'; 887 var backgroundGalleryLazyLoad = 'False'; 888 var backgroundGalleryImageSize = '1920x1080'; 889 var backgroundGalleryObserver; 890 891 $(document).ready(function () { 892 893 $(window).on( "menuStateChangeEvent", function( event, params ) { 894 f_bgResize(); 895 }); 896 if (backgroundGalleryLazyLoad.toLowerCase() == 'true' && navigator.userAgent.toLocaleLowerCase().indexOf('safari') == -1) { 897 try { 898 backgroundGalleryObserver = new IntersectionObserver(bgIntersectCallback, intersectOptions); 899 backgroundGalleryObserver.observe(document.querySelector(rpbgId)); 900 if ($('#head').length > 0) { 901 backgroundGalleryObserver.observe(document.querySelector('#head')); 902 } 903 } catch (err) { 904 console.warn(err); 905 } 906 } else { 907 f_convertBgImages(); 908 } 909 }); 910 911 var bgIntersectCallback = function (entries, observer) { 912 if (entries && entries[0].isIntersecting) { 913 f_convertBgImages(); 914 backgroundGalleryObserver.unobserve(document.querySelector(rpbgId)); 915 } 916 } 917 918 function f_convertBgImages() { 919 $('.bg-images li').each(function (i, v) { 920 var url = $(v).find('meta[itemprop="contentUrl"]').attr('content'); 921 var newImageWidth = $(window).width() * window.devicePixelRatio; 922 newImageWidth = Math.round(newImageWidth) + 'x0'; 923 url = url.replace('dimg', 'dimg-crop').replace(backgroundGalleryImageSize, newImageWidth); 924 925 $(v).css("background-image", 'url("' + url + '")'); 926 }); 927 if ('True'.toLowerCase() == 'true' && screen.width < 500) 928 $(rpbgId + ' .dbg').remove(); 929 else 930 $(rpbgId + ' .mbg').remove(); 931 932 if ('False'.toLowerCase() == 'true' || $(rpbgId + ' .background-gallery .bg-images li').length < 2 || animType == 'none') 933 $(rpbgId + ' .bg-bullets').hide(); 934 935 if ($(rpbgId + ' .background-gallery .bg-images li').length < 2 || animType == 'none') { 936 $(rpbgId + ' .bg-arrow-left').hide(); 937 $(rpbgId + ' .bg-arrow-right').hide(); 938 } 939 940 $(rpbgId + ' .background-gallery .li-image').addClass('overlay-opacity-' + overlayOpacity); 941 942 if (animType == 'none') { 943 $(rpbgId + ' .bg-images li').hide(); 944 $(rpbgId + ' .bg-images li').first().show(); 945 } 946 947 if (animType == 'slide' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) { 948 var firstImage = $(rpbgId + ' .bg-images li').first(); 949 var lastImage = $(rpbgId + ' .background-gallery .bg-images li').last(); 950 firstImage.clone().appendTo(rpbgId + ' .bg-images'); 951 lastImage.clone().prependTo(rpbgId + ' .bg-images'); 952 } else 953 $(rpbgId + ' .bg-images li').first().css('opacity', 1); 954 955 bgImageHeight = $(rpbgId + '.background-gallery-container').parent().parent().height(); 956 $(rpbgId + ' .background-gallery .bg-images').height(bgImageHeight); 957 window.addEventListener('resize', function () { 958 f_bgResize(); 959 }); 960 $(window).resize(function () { 961 f_bgResize(); 962 }); 963 numBgImages = $(rpbgId + ' .bg-images li').length; 964 965 f_bgResize(); 966 967 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) { 968 $(rpbgId + ' .background-gallery .bg-images').css('left', '-' + $(rpbgId + '.background-gallery-container').width() + 'px'); 969 } 970 971 $(rpbgId + ' .bg-bullets li').first().addClass('bg-selected'); 972 973 $(rpbgId + ' .bg-bullets li').click(function () { 974 if (!$(this).hasClass('bg-selected')) { 975 target = $(this).index(); 976 f_sliderResponse(target, animType); 977 resetTiming(animType); 978 } 979 }); 980 $(rpbgId + ' .bg-arrow-right').click(function () { 981 f_rightClick(animType); 982 }); 983 $(rpbgId + ' .bg-arrow-left').click(function () { 984 f_leftClick(animType); 985 }); 986 987 $(rpbgId + ' .bg-images li').on('swipeleft', function () { 988 f_rightClick('slide'); 989 }).on('swiperight', function () { 990 f_leftClick('slide'); 991 }); 992 993 // TFS 2987210 (WCAG 2.2.2 Pause, Stop, Hide -- Level A). Attached here, at the 994 // end of f_convertBgImages, because that is the point at which the slide count 995 // is finally known: the 'slide' branch above clones the first and last images, 996 // so an earlier count would be wrong. Gated on the same tw
996o conditions the 997 // arrows and bullets use, since when either fails nothing is rotating and a 998 // pause control would be a lie. 999 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1 && window.RPPauseControl) { 1000 window.RPPauseControl.attach({ 1001 container: rpbgId, 1002 overlay: true, 1003 key: 'background-gallery', 1004 onPause: function () { 1005 bgUserPaused = true; 1006 clearInterval(timingRun); 1007 }, 1008 onPlay: function () { 1009 bgUserPaused = false; 1010 resetTiming(animType); 1011 } 1012 }); 1013 } 1014 } 1015 1016 function f_sliderResponse(target, animType) { 1017 $(rpbgId + ' .bg-images').stop(true, true); 1018 var imageWidth = $(rpbgId + '.background-gallery-container').width(); 1019 if (animType != 'fade') 1020 $(rpbgId + ' .bg-images').animate({ 'left': '-' + (imageWidth * (target + 1)) + 'px' }, function () { });
1021 else { 1022 $($(rpbgId + ' .bg-images li')[target]).animate({ opacity: 1 }, function () { }); 1023 $(rpbgId + ' .bg-images li').each(function (i, v) { 1024 if (i != target) 1025 $(v).animate({ opacity: 0 }); 1026 }); 1027 } 1028 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1029 } 1030 function f_rightClick(animType) { 1031 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) { 1032 $(rpbgId + ' .bg-images').stop(true, true); 1033 var imageWidth = $(rpbgId + '.background-gallery-container').width(); 1034 var newPosition; 1035 1036 if (animType == 'slide') { 1037 if ($(rpbgId + ' .bg-images').position().left % 1 != 0) 1038 f_bgResize(); 1039 newPosition = Math.round($(rpbgId + ' .bg-images').position().left) - imageWidth; 1040 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1041 target === $(rpbgId + ' .background-gallery .bg-images li').length - 2 ? target = 0 : target = target + 1; 1042 $(rpbgId + ' .bg-images').animate({ 'left': newPosition + 'px' }, function () { 1043 if (Math.abs(newPosition) == ($(rpbgId + ' .background-gallery .bg-images li').length - 1) * imageWidth) { 1044 $(rpbgId + ' .bg-images').css({ 'left': '-' + imageWidth + 'px' }); 1045 target = 0; 1046 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1047 } 1048 }); 1049 } else if (animType == 'fade') { 1050 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1051 target === $(rpbgId + ' .background-gallery .bg-images li').length - 1 ? target = 0 : target = target + 1; 1052 1053 $($(rpbgId + ' .bg-images li')[target]).animate({ opacity: 1 }, function () { });
1054 $(rpbgId + ' .bg-images li').each(function (i, v) { 1055 if (i != target) 1056 $(v).css('opacity', 0); 1057 }); 1058 if (target == 0) 1059 $(rpbgId + ' .bg-images li').last().animate({ opacity: 0 }, function () { }); 1060 } 1061 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1062 resetTiming(animType); 1063 } 1064 } 1065 function f_leftClick(animType) { 1066 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) { 1067 $(rpbgId + ' .bg-images').stop(true, true); 1068 var imageWidth = $(rpbgId + '.background-gallery-container').width(); 1069 var newPosition; 1070 if (animType != 'fade') { 1071 if ($(rpbgId + ' .bg-images').position().left % 1 != 0) 1072 f_bgResize(); 1073 newPosition = Math.round($(rpbgId + ' .bg-images').position().left + imageWidth); 1074 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1075 target === 0 ? target = $(rpbgId + ' .background-gallery .bg-images li').length - 3 : target = target - 1; 1076 1077 $(rpbgId + ' .bg-images').animate({ 'left': newPosition + 'px' }, function () { 1078 if (newPosition == 0) { 1079 $(rpbgId + ' .bg-images').css({ 'left': '-' + (($(rpbgId + ' .background-gallery .bg-images li').length - 2) * imageWidth) + 'px' }); 1080 target = ($(rpbgId + ' .background-gallery .bg-images li').length - 3); 1081 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1082 } 1083 }); 1084 } else if (animType == 'fade') { 1085 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1086 target === 0 ? target = $(rpbgId + ' .background-gallery .bg-images li').length - 1 : target = target - 1; 1087 1088 $($(rpbgId + ' .bg-images li')[target]).animate({ opacity: 1 }, function () { });
1089 $(rpbgId + ' .bg-images li').each(function (i, v) { 1090 if (i != target) 1091 $(v).css('opacity', 0); 1092 }); 1093 } 1094 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1095 resetTiming(animType); 1096 } 1097 } 1098 function resetTiming(animType) { 1099 clearInterval(timingRun); 1100 // TFS 2987210: do not re-arm while the user has explicitly paused. Returning 1101 // here (rather than guarding each caller) covers all three call sites -- 1102 // f_rightClick, f_leftClick and the bullet click handler -- and means manual 1103 // navigation still works while paused without secretly restarting rotation. 1104 if (bgUserPaused) { 1105 return; 1106 } 1107 timingRun = setInterval(function () { f_rightClick(animType); }, slideshowSpeed); 1108 } 1109 function f_bgResize() { 1110 $(rpbgId + ' .bg-images').stop(true, true); 1111 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1112 var newWidth = $(rpbgId + '.background-gallery-container').width() * (target + 1); 1113 bgImageHeight = $(rpbgId + '.background-gallery-container').parent().parent().height(); 1114 $(rpbgId + ' .background-gallery .bg-images').height(bgImageHeight); 1115 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) 1116 $(rpbgId + ' .background-gallery .bg-images').css('left', '-' + newWidth + 'px'); 1117 $(rpbgId + ' .background-gallery .li-image').css('width', $(rpbgId + '.background-gallery-container').width() + 'px'); 1118 $(rpbgId + ' .background-gallery').css('width', $(rpbgId + '.background-gallery-container').width() + 'px'); 1119 $(rpbgId + ' .background-gallery ul.bg-images').css('width', ($(rpbgId + '.background-gallery-container').width() * numBgImages) + 'px'); 1120 } 1121 }); 1122</script>
1122 1123 1124<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartZone3_WebPartZone3_zone_WebPartLoader5_ctl00_background_gallery" class="background-gallery-container"> 1125 <div id="rpbg-p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneHomeSection_WebPartZone3_WebPartZone3_zone_WebPartLoader5_ctl00_background_gallery" class="background-gallery bg-slide"><ul class="bg-images mbg"><li class="li-image li-image-0"> 1126 <div class="img_wrapper mbg" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1127 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154696928/800x0/154696928.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 1128 <div class="bg-caption-container"> 1129 <div class="bg-caption"></div> 1130 <div class="bg-description"></div> 1131 </div> 1132 </li><li class="li-image li-image-1"> 1133 <div class="img_wrapper mbg" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1134 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/151775047/800x0/151775047.jpg" /><meta itemprop="name" content="Drone" /></div> 1135 <div class="bg-caption-container"> 1136 <div class="bg-caption"></div> 1137 <div class="bg-description"></div> 1138 </div> 1139 </li><li class="li-image li-image-2"> 1140 <div class="img_wrapper mbg" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1141 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154697715/800x0/154697715.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 1142 <div class="bg-caption-container"> 1143 <div class="bg-caption"></div> 1144 <div class="bg-description"></div> 1145 </div> 1146 </li></ul><button type="button" class="bg-arrow-left mbg" aria-label="Previous slide"> </button> 1147 <button type="button" class="bg-arrow-right mbg" aria-label="Next slide"> </button><ul class="bg-bullets mbg"><li class="bg-bullet-0">â</li><li class="bg-bullet-1">â</li><li class="bg-bullet-2">â</li></ul><ul class="bg-images dbg"><li class="li-image li-image-0"> 1148 <div class="img_wrapper dbg" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1149 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154696928/1920x1080/154696928.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 1150 <div class="bg-caption-container"> 1151 <div class="bg-caption"></div> 1152 <div class="bg-description"></div> 1153 </div> 1154 </li><li class="li-image li-image-1"> 1155 <div class="img_wrapper dbg" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1156 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/151775047/1920x1080/151775047.jpg" /><meta itemprop="name" content="Drone" /></div> 1157 <div class="bg-caption-container"> 1158 <div class="bg-caption"></div> 1159 <div class="bg-description"></div> 1160 </div> 1161 </li><li class="li-image li-image-2"> 1162 <div class="img_wrapper dbg" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1163 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154697715/1920x1080/154697715.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 1164 <div class="bg-caption-container"> 1165 <div class="bg-caption"></div> 1166 <div class="bg-description"></div> 1167 </div> 1168 </li></ul><button type="button" class="bg-arrow-left dbg" aria-label="Previous slide"> </button> 1169 <button type="button" class="bg-arrow-right dbg" aria-label="Next slide"> </button><ul class="bg-bullets dbg"><li class="bg-bullet-0">â</li><li class="bg-bullet-1">â</li><li class="bg-bullet-2">â</li></ul></div> 1170 </div> 1171</div> 1172<div id="" class="hero-content"><p><em></em></p> 1173<p><strong></strong></p> 1174<p><u></u></p> 1175<div class="scroll-button">
1176 <a href="#homeContent" class="rp-scroll" style="color:white;"><i class="fa fa-angle-down" aria-hidden="true"></i></a> 1177</div></div></div><div id="homeContent" class="home-main-content-wrapper row"><div class="clearfix col-lg-6 col-sm-12 col-xs-12 column-wrapper home-right-image"> 1178 <div class="content-right home-column"> 1179 <p>A Michaels Community</p> 1180 <p><strong></strong></p> 1181 </div> 1182</div><div id="" class="clearfix col-lg-6 col-md-8 col-sm-10 col-xs-12 column-wrapper"><div class="content-left home-column clearfix"> 1183<div class="wrapper col-lg-12"> 1184<h1>Halewai'olu Senior Residences - Now 55 and Older!</h1> 1185<div><p><span style="font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; vertical-align: baseline; font-size: 16px;">Situated in the heart of downtown Honolulu with </span><span style="font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; vertical-align: baseline; font-size: 16px;">proximity to Foster Botanical Garden and Chinatown,</span><span style="font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; vertical-align: baseline; font-size: 16px;"> this brand-new senior community offers affordable housing to individuals aged 55 and above. </span><span style="font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; vertical-align: baseline; font-size: 16px;">HalewaiÊ»olu</span><span style="font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; vertical-align: baseline; font-size: 16px;"> consists of one and two-bedroom apartments with breathtaking </span><span style="font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; vertical-align: baseline; font-size: 16px;">views of mountains and the ocean</span><span style="font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; vertical-align: baseline; font-size: 16px;">. </span><span style="font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; vertical-align: baseline;"><span style="font-size: 16px;">Included in rent are water, sewer, and trash and every apartment includes air conditioning!</span></span><br /></p><p><span style="font-size: 16px;"><b>We are now leasing with immediate move-ins. Donât miss your chance,</b></span><span style="font-family: "open sans", sans-serif; font-size: 16px; font-weight: 700;"> <br /></span><a href="https://8979750aff.onlineleasing.realpage.com/#k=51889" target="_blank" style="background-color: rgb(255, 255, 255); font-family: "open sans", sans-serif; font-size: 16px; font-weight: 700;"><span style="font-size: 16px;">Apply Today</span></a><span style="font-family: "open sans", sans-serif; font-size: 16px; font-weight: 700;">!</span></p><p style="text-align: left;"><span style="font-size: 16px;">*Halewai'olu Senior Residences is an affordable property meaning each applicant must meet </span><a href="https://www.liveathsr.com/Specials.aspx?preview=1" target="_blank"><span style="font-size: 16px;">Income Requirements</span></a></p><p style="text-align: left;"><br /></p></div> 1186</div> 1187</div></div></div></div></section> 1188<section id="amenities" class="block-area container-fluid"><div id="" class="home-banner amenities-banner black-border row"><div class="banner-overlay"></div><div class="banner-content"> 1189<h2></h2> 1190</div></div><div id="" class="amenities-content"><div class="col-lg-2 col-md-1 col-sm-1 hidden-xs"></div> 1191<div class="clearfix col-lg-8 col-md-10 col-sm-10 col-xs-12 column-wrapper home-content-sub-content"> 1192 <div class="home-column"> 1193 <div class="wrapper"> 1194 <h1>AMENITIES</h1> 1195 <div class="main-content"> 1196 <br /> 1197 </div> 1198 </div> 1199 </div> 1200</div> 1201<div class="col-lg-2 col-md-1 col-sm-1 hidden-xs"></div> 1202</div><div class="container-fluid amenities-container"> 1203<div class="row amenities-row amenities-row-gallery"> 1204<div class="col-sm-1 hidden-lg hidden-md hidden-xs"></div> 1205 1206<div class="col-lg-12 col-sm-10 col-xs-12 amenities-gallery"><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneAmenities_WebPartZone2_WebPartZone2_zone_WebPartLoader4_pnlContainer"> 1207 1208
1209<script type="text/javascript"> 1210 $(function () { 1211 1212 var target; 1213 var animType = 'slide'; 1214 var slideshowSpeed = 3000; 1215 var overlayOpacity = 0; 1216 var timingRun = setInterval(function () { f_rightClick(animType); }, slideshowSpeed); 1217 // TFS 2987210 (WCAG 2.2.2 Pause, Stop, Hide -- Level A). Sticky user-pause flag. 1218 // This gallery already had a clearInterval, but ONLY inside resetTiming(), which 1219 // immediately re-arms the timer -- a debounce, not a stop. Every arrow click, bullet 1220 // click and auto-advance funnels through resetTiming(), so a plain clearInterval from 1221 // a pause button would be silently undone by the user's very next interaction. This 1222 // flag is what makes the stop a real stop; resetTiming() below honours it. 1223 var bgUserPaused = false; 1224 var bgImageHeight; 1225 var numBgImages; 1226 var rpbgId = '#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneAmenities_WebPartZone2_WebPartZone2_zone_WebPartLoader4_ctl00_background_gallery'; 1227 var backgroundGalleryLazyLoad = 'False'; 1228 var backgroundGalleryImageSize = '1920x1080'; 1229 var backgroundGalleryObserver; 1230 1231 $(document).ready(function () { 1232 1233 $(window).on( "menuStateChangeEvent", function( event, params ) { 1234 f_bgResize(); 1235 }); 1236 if (backgroundGalleryLazyLoad.toLowerCase() == 'true' && navigator.userAgent.toLocaleLowerCase().indexOf('safari') == -1) { 1237 try { 1238 backgroundGalleryObserver = new IntersectionObserver(bgIntersectCallback, intersectOptions); 1239 backgroundGalleryObserver.observe(document.querySelector(rpbgId)); 1240 if ($('#head').length > 0) { 1241 backgroundGalleryObserver.observe(document.querySelector('#head')); 1242 } 1243 } catch (err) { 1244 console.warn(err); 1245 } 1246 } else { 1247 f_convertBgImages(); 1248 } 1249 }); 1250 1251 var bgIntersectCallback = function (entries, observer) { 1252 if (entries && entries[0].isIntersecting) { 1253 f_convertBgImages(); 1254 backgroundGalleryObserver.unobserve(document.querySelector(rpbgId)); 1255 } 1256 } 1257 1258 function f_convertBgImages() { 1259 $('.bg-images li').each(function (i, v) { 1260 var url = $(v).find('meta[itemprop="contentUrl"]').attr('content'); 1261 var newImageWidth = $(window).width() * window.devicePixelRatio; 1262 newImageWidth = Math.round(newImageWidth) + 'x0'; 1263 url = url.replace('dimg', 'dimg-crop').replace(backgroundGalleryImageSize, newImageWidth); 1264 1265 $(v).css("background-image", 'url("' + url + '")'); 1266 }); 1267 if ('False'.toLowerCase() == 'true' && screen.width < 500) 1268 $(rpbgId + ' .dbg').remove(); 1269 else 1270 $(rpbgId + ' .mbg').remove(); 1271 1272 if ('False'.toLowerCase() == 'true' || $(rpbgId + ' .background-gallery .bg-images li').length < 2 || animType == 'none') 1273 $(rpbgId + ' .bg-bullets').hide(); 1274 1275 if ($(rpbgId + ' .background-gallery .bg-images li').length < 2 || animType == 'none') { 1276 $(rpbgId + ' .bg-arrow-left').hide(); 1277 $(rpbgId + ' .bg-arrow-right').hide(); 1278 } 1279 1280 $(rpbgId + ' .background-gallery .li-image').addClass('overlay-opacity-' + overlayOpacity); 1281 1282 if (animType == 'none') { 1283 $(rpbgId + ' .bg-images li').hide(); 1284 $(rpbgId + ' .bg-images li').first().show(); 1285 } 1286 1287 if (animType == 'slide' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) { 1288 var firstImage = $(rpbgId + ' .bg-images li').first(); 1289 var lastImage = $(rpbgId + ' .background-gallery .bg-images li').last(); 1290 firstImage.clone().appendTo(rpbgId + ' .bg-images'); 1291 lastImage.clone().prependTo(rpbgId + ' .bg-images'); 1292 } else 1293 $(rpbgId + ' .bg-images li').first().css('opacity', 1); 1294 1295 bgImageHeight = $(rpbgId + '.background-gallery-container').parent().parent().height(); 1296 $(rpbgId + ' .background-gallery .bg-images').height(bgImageHeight); 1297 window.addEventListener('resize', function () { 1298 f_bgResize(); 1299 }); 1300 $(window).resize(function () { 1301 f_bgResize(); 1302 }); 1303 numBgImages = $(rpbgId + ' .bg-images li').length; 1304 1305 f_bgResize(); 1306 1307 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) { 1308 $(rpbgId + ' .background-gallery .bg-images').css('left', '-' + $(rpbgId + '.background-gallery-container').width() + 'px'); 1309 } 1310 1311 $(rpbgId + ' .bg-bullets li').first().addClass('bg-selected'); 1312 1313 $(rpbgId + ' .bg-bullets li').click(function () { 1314 if (!$(this).hasClass('bg-selected')) { 1315 target = $(this).index(); 1316 f_sliderResponse(target, animType); 1317 resetTiming(animType); 1318 } 1319 }); 1320 $(rpbgId + ' .bg-arrow-right').click(function () { 1321 f_rightClick(animType); 1322 }); 1323 $(rpbgId + ' .bg-arrow-left').click(function () { 1324 f_leftClick(animType); 1325 }); 1326 1327 $(rpbgId + ' .bg-images li').on('swipeleft', function () { 1328 f_rightClick('slide'); 1329 }).on('swiperight', function () { 1330 f_leftClick('slide'); 1331 }); 1332 1333 // TFS 2987210 (WCAG 2.2.2 Pause, Stop, Hide -- Level A). Attached here, at the 1334 // end of f_convertBgImages, because that is the point at which the slide count 1335 // is finally known: the 'slide' branch above clones the first and last images, 1336 // so an earlier count would be wrong. Gated on the same tw
1336o conditions the 1337 // arrows and bullets use, since when either fails nothing is rotating and a 1338 // pause control would be a lie. 1339 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1 && window.RPPauseControl) { 1340 window.RPPauseControl.attach({ 1341 container: rpbgId, 1342 overlay: true, 1343 key: 'background-gallery', 1344 onPause: function () { 1345 bgUserPaused = true; 1346 clearInterval(timingRun); 1347 }, 1348 onPlay: function () { 1349 bgUserPaused = false; 1350 resetTiming(animType); 1351 } 1352 }); 1353 } 1354 } 1355 1356 function f_sliderResponse(target, animType) { 1357 $(rpbgId + ' .bg-images').stop(true, true); 1358 var imageWidth = $(rpbgId + '.background-gallery-container').width(); 1359 if (animType != 'fade') 1360 $(rpbgId + ' .bg-images').animate({ 'left': '-' + (imageWidth * (target + 1)) + 'px' }, function () { });
1361 else { 1362 $($(rpbgId + ' .bg-images li')[target]).animate({ opacity: 1 }, function () { }); 1363 $(rpbgId + ' .bg-images li').each(function (i, v) { 1364 if (i != target) 1365 $(v).animate({ opacity: 0 }); 1366 }); 1367 } 1368 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1369 } 1370 function f_rightClick(animType) { 1371 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) { 1372 $(rpbgId + ' .bg-images').stop(true, true); 1373 var imageWidth = $(rpbgId + '.background-gallery-container').width(); 1374 var newPosition; 1375 1376 if (animType == 'slide') { 1377 if ($(rpbgId + ' .bg-images').position().left % 1 != 0) 1378 f_bgResize(); 1379 newPosition = Math.round($(rpbgId + ' .bg-images').position().left) - imageWidth; 1380 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1381 target === $(rpbgId + ' .background-gallery .bg-images li').length - 2 ? target = 0 : target = target + 1; 1382 $(rpbgId + ' .bg-images').animate({ 'left': newPosition + 'px' }, function () { 1383 if (Math.abs(newPosition) == ($(rpbgId + ' .background-gallery .bg-images li').length - 1) * imageWidth) { 1384 $(rpbgId + ' .bg-images').css({ 'left': '-' + imageWidth + 'px' }); 1385 target = 0; 1386 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1387 } 1388 }); 1389 } else if (animType == 'fade') { 1390 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1391 target === $(rpbgId + ' .background-gallery .bg-images li').length - 1 ? target = 0 : target = target + 1; 1392 1393 $($(rpbgId + ' .bg-images li')[target]).animate({ opacity: 1 }, function () { });
1394 $(rpbgId + ' .bg-images li').each(function (i, v) { 1395 if (i != target) 1396 $(v).css('opacity', 0); 1397 }); 1398 if (target == 0) 1399 $(rpbgId + ' .bg-images li').last().animate({ opacity: 0 }, function () { }); 1400 } 1401 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1402 resetTiming(animType); 1403 } 1404 } 1405 function f_leftClick(animType) { 1406 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) { 1407 $(rpbgId + ' .bg-images').stop(true, true); 1408 var imageWidth = $(rpbgId + '.background-gallery-container').width(); 1409 var newPosition; 1410 if (animType != 'fade') { 1411 if ($(rpbgId + ' .bg-images').position().left % 1 != 0) 1412 f_bgResize(); 1413 newPosition = Math.round($(rpbgId + ' .bg-images').position().left + imageWidth); 1414 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1415 target === 0 ? target = $(rpbgId + ' .background-gallery .bg-images li').length - 3 : target = target - 1; 1416 1417 $(rpbgId + ' .bg-images').animate({ 'left': newPosition + 'px' }, function () { 1418 if (newPosition == 0) { 1419 $(rpbgId + ' .bg-images').css({ 'left': '-' + (($(rpbgId + ' .background-gallery .bg-images li').length - 2) * imageWidth) + 'px' }); 1420 target = ($(rpbgId + ' .background-gallery .bg-images li').length - 3); 1421 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1422 } 1423 }); 1424 } else if (animType == 'fade') { 1425 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1426 target === 0 ? target = $(rpbgId + ' .background-gallery .bg-images li').length - 1 : target = target - 1; 1427 1428 $($(rpbgId + ' .bg-images li')[target]).animate({ opacity: 1 }, function () { });
1429 $(rpbgId + ' .bg-images li').each(function (i, v) { 1430 if (i != target) 1431 $(v).css('opacity', 0); 1432 }); 1433 } 1434 $(rpbgId + ' .bg-bullets li').removeClass('bg-selected').eq(target).addClass('bg-selected'); 1435 resetTiming(animType); 1436 } 1437 } 1438 function resetTiming(animType) { 1439 clearInterval(timingRun); 1440 // TFS 2987210: do not re-arm while the user has explicitly paused. Returning 1441 // here (rather than guarding each caller) covers all three call sites -- 1442 // f_rightClick, f_leftClick and the bullet click handler -- and means manual 1443 // navigation still works while paused without secretly restarting rotation. 1444 if (bgUserPaused) { 1445 return; 1446 } 1447 timingRun = setInterval(function () { f_rightClick(animType); }, slideshowSpeed); 1448 } 1449 function f_bgResize() { 1450 $(rpbgId + ' .bg-images').stop(true, true); 1451 target = $(rpbgId + ' .bg-bullets li.bg-selected').index(); 1452 var newWidth = $(rpbgId + '.background-gallery-container').width() * (target + 1); 1453 bgImageHeight = $(rpbgId + '.background-gallery-container').parent().parent().height(); 1454 $(rpbgId + ' .background-gallery .bg-images').height(bgImageHeight); 1455 if (animType != 'none' && $(rpbgId + ' .background-gallery .bg-images li').length > 1) 1456 $(rpbgId + ' .background-gallery .bg-images').css('left', '-' + newWidth + 'px'); 1457 $(rpbgId + ' .background-gallery .li-image').css('width', $(rpbgId + '.background-gallery-container').width() + 'px'); 1458 $(rpbgId + ' .background-gallery').css('width', $(rpbgId + '.background-gallery-container').width() + 'px'); 1459 $(rpbgId + ' .background-gallery ul.bg-images').css('width', ($(rpbgId + '.background-gallery-container').width() * numBgImages) + 'px'); 1460 } 1461 }); 1462</script>
1462 1463 1464<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneAmenities_WebPartZone2_WebPartZone2_zone_WebPartLoader4_ctl00_background_gallery" class="background-gallery-container"> 1465 <div id="rpbg-p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneAmenities_WebPartZone2_WebPartZone2_zone_WebPartLoader4_ctl00_background_gallery" class="background-gallery bg-slide"><ul class="bg-images dbg"><li class="li-image li-image-0"> 1466 <div class="img_wrapper dbg" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1467 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/152598332/1920x1080/152598332.jpg" /><meta itemprop="name" content="bike rack" /></div> 1468 <div class="bg-caption-container"> 1469 <div class="bg-caption"></div> 1470 <div class="bg-description"></div> 1471 </div> 1472 </li><li class="li-image li-image-1"> 1473 <div class="img_wrapper dbg" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject"> 1474 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/152599073/1920x1080/152599073.jpg" /><meta itemprop="name" content="seating area" /></div> 1475 <div class="bg-caption-container"> 1476 <div class="bg-caption"></div> 1477 <div class="bg-description"></div> 1478 </div> 1479 </li></ul><button type="button" class="bg-arrow-left dbg" aria-label="Previous slide"> </button> 1480 <button type="button" class="bg-arrow-right dbg" aria-label="Next slide"> </button><ul class="bg-bullets dbg"><li class="bg-bullet-0">â</li><li class="bg-bullet-1">â</li></ul></div> 1481 </div> 1482</div> 1483</div> 1484<div class="col-sm-1 hidden-lg hidden-md hidden-xs"></div> 1485</div><div class="row amenities-row amenities-row-widget"> 1486<div class="col-sm-1 hidden-lg hidden-md hidden-xs"> 1487</div> 1488<div class="col-lg-12 col-sm-10 col-xs-12 amenities-container"><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneAmenities_WebPartZone2_WebPartZone2_zone_WebPartLoader1_pnlContainer"> 1489
1490<script type="text/javascript"> 1491 var unitAmenityExists = 'False'; 1492 var inSelectUnitsText = '<span>*</span> In select units'; 1493 var hideUnitAmenities = 'False'; 1494 1495 $(document).ready(function() { 1496 if ($('.view-more-community').length > 0) { 1497 $('.view-more-community').click(function() { 1498 $('.amenities-tabbed-dialog').show(); 1499 $('.amenities-tabbed-overlay').show(); 1500 $('body').addClass('modal-open'); 1501 $('.amenities-list-modal-div').show(); 1502 $('.apartment-amenities-list-modal-div').hide(); 1503 }); 1504 } 1505 if ($('.view-more-apartment').length > 0) { 1506 $('.view-more-apartment').click(function () { 1507 $('.amenities-tabbed-dialog').show(); 1508 $('.amenities-tabbed-overlay').show(); 1509 $('body').addClass('modal-open'); 1510 $('.apartment-amenities-list-modal-div').show(); 1511 $('.amenities-list-modal-div').hide(); 1512 }); 1513 } 1514 1515 if (unitAmenityExists.toLowerCase() == 'true' && hideUnitAmenities.toLowerCase() != 'true') { 1516 if ($('.apt-amenities-view-more').length > 0) { 1517 $('.apt-amenities-view-more').append('<div class="select-units-only">' + inSelectUnitsText + '</div>'); 1518 $('.apartment-amenities-list-modal-div').append('<div class="apt-amenities-modal-isu">' + inSelectUnitsText + '</div > '); 1519 } 1520 else 1521 $('#client-panel-1').append('<div class="no-view-more-select-units-only">' + inSelectUnitsText + '</div>'); 1522 f_unitLabelShowHide(); 1523 } 1524 1525 $('.amenities-tabbed-overlay').click(function() { 1526 f_hideAmenitiesModal(); 1527 }); 1528 1529 var maxTabHeight = 0; 1530 1531 if (screen.width > 500) { 1532 $('.tabs-panel').each(function(i, v) { 1533 if ($(v).height() > maxTabHeight) 1534 maxTabHeight = $(v).height(); 1535 }); 1536 $('.tabs-panel').css('min-height', maxTabHeight); 1537 } 1538 1539 $('.tabs-title .tabs-link').click(function () { 1540 $('#example-tabs .tabs-title').removeClass('is-active'); 1541 $('.tabs-content .tabs-panel').removeClass('is-active'); 1542 $(this).parent().addClass('is-active'); 1543 var checkId = $(this).attr('data'); 1544 $(checkId).addClass('is-active'); 1545 }); 1546 1547 var pixelRatio = ((window.devicePixelRatio) ? window.devicePixelRatio : 1); 1548 var windowWidth = Math.floor(window.innerWidth * 0.80 * pixelRatio); 1549 var windowHeight = Math.floor(window.innerHeight * 0.80 * pixelRatio); 1550 var fullImageSizeString = windowWidth + 'x' + windowHeight; 1551 1552 $('.amenity-image-link').each(function (i, e) { 1553 var selectedAmenityImageUrl = $(e).data('amenityimage'); 1554 selectedAmenityImageUrl = selectedAmenityImageUrl.replace('%s', fullImageSizeString); 1555 $(e).attr('href', selectedAmenityImageUrl).attr('data-caption', $(e).html()); 1556 var groupName = 'amenity-image-gallery'; 1557 if ($(e).hasClass('amenity-image-modal-link')) 1558 groupName = 'amenity-image-modal-gallery'; 1559 $(e).attr('data-fancybox', groupName); 1560 }); 1561 1562 $('.amenity-image-link').fancybox({ 1563 fullScreen: { 1564 autoStart: false 1565 }, 1566 thumbs: { 1567 autoStart: false, 1568 hideOnClose: true 1569 }, 1570 smallBtn: "auto", 1571 afterLoad : function(instance, current) { 1572 var pixelRatio = window.devicePixelRatio || 1; 1573 1574 if ( pixelRatio > 1.5 ) { 1575 current.width = current.width / pixelRatio; 1576 current.height = current.height / pixelRatio; 1577 } 1578 } 1579 }); 1580 }); 1581 function f_hideAmenitiesModal() { 1582 $('.amenities-tabbed-dialog').hide(); 1583 $('.amenities-tabbed-overlay').hide(); 1584 $('body').removeClass('modal-open'); 1585 } 1586 1587 function f_unitLabelShowHide() { 1588 $('.select-units-only').hide(); 1589 $('#client-panel-1 ul li').each(function () { 1590 if ($(this).text().indexOf('*') > -1) { 1591 $('.select-units-only').show(); 1592 return false; 1593 } 1594 }); 1595 } 1596 </script>
1596 1597<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneAmenities_WebPartZone2_WebPartZone2_zone_WebPartLoader1_ctl00_pnlAmenitiesTabbed" class="amenities-tabbed-container columns"> 1598 1599 <div id="client-tabs-1" class="row p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneAmenities_WebPartZone2_WebPartZone2_zone_WebPartLoader1_ctl00_pnlAmenitiesTabbed"> 1600 <div class="columns at-container"> 1601 <ul data-tabs="data-tabs" id="example-tabs" class="tabs" role="tablist"><li class="tabs-title is-active" tab-community-amenities="tab-community-amenities" role="presentation"> 1602 <button tabindex="0" class="tabs-link" data="#client-panel-0" role="tab" aria-controls="client-panel-0" aria-selected="false" id="client-panel-0-label" type="button">Community Features</button> 1603 </li><li class="tabs-title" tab-apartment-amenities="tab-apartment-amenities" role="presentation"> 1604 <button class="tabs-link" tabindex="0" data="#client-panel-1" role="tab" aria-controls="client-panel-1" aria-selected="false" id="client-panel-1-label" type="button">Apartment Features</button> 1605 </li><li class="tabs-title" tab-pet-policy="tab-pet-policy" role="presentation"> 1606 <button class="tabs-link" tabindex="0" data="#client-panel-2" role="tab" aria-controls="client-panel-2" aria-selected="false" id="client-panel-2-label" type="button">PET POLICY</button> 1607 </li><li class="tabs-title" tab-parking-details="tab-parking-details" role="presentation"> 1608 <button tabindex="0" class="tabs-link" data="#client-panel-3" role="tab" aria-controls="client-panel-3" aria-selected="false" id="client-panel-3-label" type="button">Parking Details</button> 1609 </li></ul><div data-tabs-content="example-tabs" class="tabs-content"><div id="client-panel-0" class="tabs-panel is-active"><div class="row"> 1610 <div class="large-12 columns"><h1>Community Features</h1></div> 1611 </div> 1612 <div class="row"><div class="large-4 columns"> 1613 <ul class="at-comm-amenities"><li class="tabbed-amenity ta-col-1"><span>Activity Rooms</span></li><li class="tabbed-amenity ta-col-1"><span>Bike Rack</span></li><li class="tabbed-amenity ta-col-1"><span>Business Center</span></li><li class="tabbed-amenity ta-col-1"><span>Community Garden</span></li><li class="tabbed-amenity ta-col-1"><span>Controlled Access Building</span></li></ul> 1614 </div><div class="large-4 columns"> 1615 <ul class="at-comm-amenities"><li class="tabbed-amenity ta-col-2"><span>Courtyard</span></li><li class="tabbed-amenity ta-col-2"><span>Fitness Loop</span></li><li class="tabbed-amenity ta-col-2"><span>Full Time Resident Services Coordinator</span></li><li class="tabbed-amenity ta-col-2"><span>Multipurpose Room with Warm Kitchen</span></li><li class="tabbed-amenity ta-col-2"><span>On-Site Laundry Facility</span></li></ul> 1616 </div><div class="large-4 columns"> 1617 <ul class="at-comm-amenities"><li class="tabbed-amenity ta-col-3"><span>4th-Floor Private Outdoor Dog Park</span></li></ul> 1618 </div> 1619 </div> 1620 </div><div id="client-panel-1" class="tabs-panel"><div class="row"> 1621 <div class="large-12 columns"><h1>Apartment Features</h1></div> 1622 </div> 1623 <div class="row"><div class="large-4 columns"> 1624 <ul class="at-comm-amenities"><li class="tabbed-amenity ta-col-1"><span>Air Conditioning</span></li><li class="tabbed-amenity ta-col-1"><span>Refrigerator</span></li><li class="tabbed-amenity ta-col-1"><span>Stove</span></li><li class="tabbed-amenity ta-col-1"><span>Some Utilities Included: Water, Sewer, Trash</span></li><li class="tabbed-amenity ta-col-1"><span>Views of O'ahu South Shore</span></li></ul> 1625 </div> 1626 </div> 1627 </div><div id="client-panel-2" class="tabs-panel"><div class="row"> 1628 <div class="large-12 columns"><h1>PET POLICY</h1></div> 1629 </div> 1630 <div class="row"><div class="large-6 columns"> 1631 <ul class="at-comm-amenities"><li class="pet-item">Pet Policy Type: Cat, Dogs</li><li class="pet-item">Pet Fee: $350</li></ul> 1632 </div><div class="large-6 columns"> 1633 <ul class="at-comm-amenities"><li class="pet-item">Max Number of Pets: 1</li><li class="pet-item">Max Weight of Pets: 30</li></ul> 1634 </div> 1635 </div> 1636 </div><div id="client-panel-3" class="tabs-panel"><div class="row"> 1637 <div class="large-12 columns"><h1>PARKING</h1></div> 1638 </div> 1639 <div class="row"><div class="large-12 columns parking-panel-details"> 1640 <ul class="at-comm-amenities"><li class="parking-item parking-comment">Parking Comment: Free, unassigned garage parking (currently waitlisted)</li><li class="parking-container-item"><div class="parking-container"><div class="parking-group"><ul class="parking-group-items"><li class="parking-item">Parking Type: Garage Lot</li><li class="parking-item">Parking Allocation: some</li><li class="parking-item">Assigned Parking: No</li></ul></div></div></li></ul> 1641 </div> 1642 </div> 1643 </div></div></div></div> 1644 <div class="amenities-tabbed-overlay" style="display: none"></div><div class="amenities-tabbed-dialog" style="display: none"><div class="amenities-list-modal-div"><div class="amenities-tabbed-header"><h3>Amenities</h3><button onclick="f_hideAmenitiesModal()" aria-label="Close" type="button"><span aria-hidden="true" class="amenities-tabbed-standard-modal-close">×</span></button></div><div class="list-wrapper"><ul class="amenities-list-modal"><li class="amenity-item-modal"><span>Activity Rooms</span></li><li class="amenity-item-modal"><span>Bike Rack</span></li><li class="amenity-item-modal"><span>Business Center</span></li><li class="amenity-item-modal"><span>Community Garden</span></li><li class="amenity-item-modal"><span>Controlled Access Building</span></li><li class="amenity-item-modal"><span>Courtyard</span></li><li class="amenity-item-modal"><span>Fitness Loop</span></li><li class="amenity-item-modal"><span>Full Time Resident Services Coordinator</span></li><li class="amenity-item-modal"><span>Multipurpose Room with Warm Kitchen</span></li><li class="amenity-item-modal"><span>On-Site Laundry Facility</span></li><li class="amenity-item-modal"><span>4th-Floor Private Outdoor Dog Park</span></li></ul></div></div><div class="apartment-amenities-list-modal-div"><div class="amenities-tabbed-header"><h3>Apartment Amenities</h3><button onclick="f_hideAmenitiesModal()" aria-label="Close" type="button"><span aria-hidden="true" class="amenities-tabbed-standard-modal-close">×</span></button></div><div class="list-wrapper"><ul class="apartment-amenities-list-modal"><li class="apartment-amenity-item"><span>Air Conditioning</span></li><li class="apartment-amenity-item"><span>Refrigerator</span></li><li class="apartment-amenity-item"><span>Stove</span></li><li class="apartment-amenity-item"><span>Some Utilities Included: Water, Sewer, Trash</span></li><li class="apartment-amenity-item"><span>Views of O'ahu South Shore</span></li></ul></div></div></div> 1645 1646 </div> 1647</div> 1648</div> 1649<div class="col-sm-1 hidden-lg hidden-md hidden-xs"> 1650</div> 1651</div> 1652</div></section> 1653<section id="floor-plans" class="block-area container-fluid"><div id="" class="home-banner floor-plans-banner black-border row"><div class="banner-overlay"></div><div class="banner-content"> 1654<h2></h2> 1655</div></div><div id="" class="clearfix"><div class="col-lg-2 col-md-1 col-sm-1"></div> 1656<div class="clearfix col-lg-8 col-md-10 col-sm-10 col-xs-12 column-wrapper home-content-sub-content"> 1657 <div class="home-column"> 1658 <div class="wrapper"> 1659 <h1>Floor Plans</h1> 1660 <div class="main-content"> 1661 1662 </div> 1663 </div> 1664 </div> 1665</div> 1666<div class="col-lg-2 col-md-1 col-sm-1"></div> 1667</div><div id="floor-plan-widget" class=""><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneFloorPlans_WebPartLoader_pnlContainer"> 1668 1669<!--FLOORPLANLOADER BEGIN--> 1670 1671 1672 1673<div id="rpfloorplans"></div> 1674
1674<script type="text/javascript"> 1675 var templateId; 1676 if ('floorplan4' === 'floorplan1') 1677 templateId = 1; 1678 else if ('floorplan4' === 'floorplan2') 1679 templateId = 2; 1680 else if ('floorplan4' === 'floorplan3') 1681 templateId = 3; 1682 else if ('floorplan4' === 'floorplan4') 1683 templateId = 4; 1684 else if ('floorplan4' === 'floorplan5') 1685 templateId = 5; 1686 else if ('floorplan4' === 'floorplan6') 1687 templateId = 6; 1688 1689 var enablePT = false; 1690 var enableDRR = false; 1691 var valueDRR = (enablePT) ? true : enableDRR; 1692 1693 var RPFP_config = { 1694 target: '#rpfloorplans', 1695 template: templateId, 1696 templateColors: ['#ffffff', '#000000', 1697 '#e0212f', '#d7d7d7', 1698 '#7d7d7d', '#999999', 1699 '#f1f1f1', '#ffffff', 1700 '#ffffff'], 1701 propertyId: propertyId, 1702 pKey: propertyKey, 1703 ismApiUrl: 'https://ism.realpage.com', 1704 apiUrl: 'https://c-leasestar-api.realpage.com', 1705 useCarousel: false, 1706 carouselItems: 3, 1707 defaultLeaseTerm: 'bestprice', 1708 disclaimerText: '', 1709 floorplansPerPage: 0, 1710 maxMoveInDateDays: 0, 1711 showBuildingFilter: false, 1712 hidePricingFilter: false, 1713 defaultSortOption: 0, 1714 defaultMediaOrder: 0, 1715 skipStepsEnabled: true, 1716 studentProperty: false, 1717 showAvailableFloorplansOnly: false, 1718 showBuildingName: false, 1719 fitThumbnail: true, 1720 hideAvailability: false, 1721 hideFloorplansPricing: false, 1722 hideUnitsPricing: false, 1723 hideSquareFeet: false, 1724 overrideNoUnitsText: '', 1725 overrideContactUsText: 'Join our Pre-Waitlist', 1726 thirdPartyContactUrl: 'https://8979750aff.onlineleasing.realpage.com', 1727 overrideLeaseNowText: 'Join Our Pre-Waitlist', 1728 thirdPartyLeasingUrl: 'https://8979750aff.onlineleasing.realpage.com', 1729 onlineLeasingUrls: [{"SiteId":"8979750","Url":"https://8979750aff.onlineleasing.realpage.com","IsSelectedSite":false,"PartnerPropertyId":"5119067"}], 1730 internationalProperty: false, 1731 matchedSource: matchedSource, 1732 aholDisplay: false, 1733 aholContent: 'Looking for Affordable Homes?', 1734 aholText: 'Click Here', 1735 aholLink: 'https://oll-leasing.loftliving.com/affordable/?siteid=5119067', 1736 ismEnabled: false, 1737 ismId: '', 1738 ismDefault: false, 1739 apiKey: '0934afc9-8b56-4a10-bd67-6f3e67f185bc', 1740 availableUnitColor: '#133d22', 1741 availableUnitHighlightColor: '#37623e', 1742 pinColor: '#031f4b', 1743 pinHighlightColor: '#035891', 1744 engrainSitemapId: '', 1745 engrainedText: 'Interactive Map', 1746 engrainedUrl: '', 1747 hideUnitSiteMapDetails: false, 1748 hideEngrainSiteMaponMobile: false, 1749 hideBrochure: false, 1750 bmRedirect: false, 1751 bmCreditCards: '', 1752 bmEmail: '', 1753 bmApplicationFee: '', 1754 bmSerialNumber: '', 1755 leaseTermDetails: ('{"leaseTerms":[12]}' ? JSON.parse('{"leaseTerms":[12]}') : ''), 1756 templateVars: { 1757 cta1image: "", 1758 cta1title: "", 1759 cta1text: "" 1760 }, 1761 dynamicRentRange: valueDRR, 1762 enablePricingTransparency: 'false', 1763 ufWidgetEnabled: false ? false : false, 1764 hideFeeCalculator: 'false', 1765 ufWidgetDisclaimer: 'This price estimate does not include optional fees. Use our cost calculator to customize.', 1766 rollUpPricing: 'false', 1767 feesToDisplay: 'all', 1768 pricingDisclaimer: 'Estimated price does not include additional fees', 1769 pricingLink: 'Show additional pricing information', 1770 excludedFeeCodes: '[]', 1771 rentDisplayOption: '0', 1772 feeTransparencyWidgetVersion: '0', 1773 additionalinfo1:'', 1774 additionalinfo2:'', 1775 additionalscript: ``, 1776 disableOnMobile: 'false', 1777 enablePopUp:'false', 1778 popupWindowHeader:'', 1779 popupWindowText: ``, 1780 imageHeight:480, 1781 imageWidth:640, 1782 imageOverride: '', 1783 } 1784 </script>
1784 1785 1786 1787
1788<script src="https://cs-cdn.realpage.com/RFP/v1.0/loader.js" type="text/javascript"></script>
1788 1789 1790 1791<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneFloorPlans_WebPartLoader_ctl00_ctl00_pnlFormInputs"> 1792 1793 </div> 1794 1795<!--FLOORPLANLOADER END--> 1796</div> 1797</div> 1798 1799<div class="sp-container"> 1800 1801 1802</div></section> 1803<section id="gallery" class="block-area container-fluid"><div id="" class="home-banner gallery-banner black-border row"><div class="banner-overlay"></div><div class="banner-content"> 1804<h2></h2> 1805</div></div><div id="" class="clearfix"><div class="col-lg-2 col-md-1 col-sm-1"></div> 1806<div class="clearfix col-lg-8 col-md-10 col-sm-10 column-wrapper home-content-sub-content"> 1807 <div class="home-column"> 1808 <div class="wrapper"> 1809 <h1>Gallery</h1> 1810 <div class="main-content"> 1811 <br /> 1812 </div> 1813 </div> 1814 </div> 1815</div> 1816<div class="col-lg-2 col-md-1 col-sm-1"></div> 1817</div><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_pnlContainer"> 1818 1819
1820<script type="text/javascript"> 1821 var nestedGalleryLocation = 'top'; 1822 var facebookBtnName = 'Facebook'; 1823 var instagramBtnName = 'Instagram'; 1824 var gallerySquareTilesLazyLoad = 'False'; 1825 var imageSize = '1920x1080'; 1826 var squareTilesObserver; 1827 1828 var defaultColumnCount= '3'; 1829 var itemsPerPageGallery = 'false'; 1830 1831 $(document).ready(function () { 1832 if (gallerySquareTilesLazyLoad.toLowerCase() == 'true' && navigator.userAgent.toLocaleLowerCase().indexOf('safari') == -1) { 1833 try { 1834 squareTilesObserver = new IntersectionObserver(gstIntersectCallback, intersectOptions); 1835 squareTilesObserver.observe(document.querySelector('#gstIntersect')); 1836 squareTilesObserver.observe(document.querySelector('#photosContainer')); 1837 squareTilesObserver.observe(document.querySelector('#gstFooterIntersect')); 1838 if ($('#head').length > 0) { 1839 squareTilesObserver.observe(document.querySelector('#head')); 1840 } 1841 } catch (err) { 1842 console.warn(err); 1843 } 1844 } else { 1845 f_buildGallery(); 1846 } 1847 1848 1849 if($(window).width() < 768) 1850 f_resize(); 1851 1852 $(window).resize(function() { 1853 f_resize(); 1854 }); 1855 }); 1856 1857 var gstIntersectCallback = function (entries, observer) { 1858 if (entries && entries[0].isIntersecting) { 1859 f_buildGallery(); 1860 squareTilesObserver.unobserve(document.querySelector('#gstIntersect')); 1861 squareTilesObserver.unobserve(document.querySelector('#photosContainer')); 1862 squareTilesObserver.unobserve(document.querySelector('#gstFooterIntersect')); 1863 } 1864 } 1865 1866 function f_buildGallery() { 1867 var playSlideShow = false; 1868 var galleryIndex = 0; 1869 1870 if ($('.side-container li').length <= 1) { 1871 $('.photolist').removeClass('nested-side'); 1872 $('.photolist').addClass('nested-top'); 1873 } else 1874 $('.side-container').removeClass('hide-side-cont'); 1875 1876 if ($('.top-container li').length > 1) { 1877 $('.top-container').removeClass('hide-top-cont'); 1878 } 1879 if (nestedGalleryLocation == 'dropdown' && $('.top-dropdown option').length > 1 || $(window).width() < 1025 && $('.top-dropdown option').length > 1) 1880 $('.top-dropdown').removeClass('hide-dropdown'); 1881 1882 var pixelRatio = ((window.devicePixelRatio) ? window.devicePixelRatio : 1); 1883 var windowWidth = Math.floor(window.innerWidth * 0.80 * pixelRatio); 1884 var windowHeight = Math.floor(window.innerHeight * 0.80 * pixelRatio); 1885 1886 var fullImageSizeString = windowWidth + 'x' + windowHeight; 1887 var defaultImageWidth = Math.floor($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_ctl00_GalleryContainer').width() * pixelRatio / 3); 1888 var thumbImageSizeString = defaultImageWidth.toString() + 'x' + defaultImageWidth.toString(); 1889 1890 $('#widget_header_buttons .columnSelector').click(function() { 1891 $('#widget_header_buttons .columnSelector').removeClass('selected'); 1892 $('#widget_header_buttons .mosaic').removeClass('selected'); 1893 $(this).addClass('selected'); 1894 var columnCount = $(this).data('columns'); 1895 $('#photosContainer').removeAttr('class'); 1896 $('#photosContainer').addClass('columns' + columnCount); 1897 $('.photolist').hide(); 1898 1899 f_convertImages(fullImageSizeString, thumbImageSizeString, columnCount); 1900 1901 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 1902 galleryIndex = $('.nested-gst.selected').attr('data-index'); 1903 else 1904 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 1905 1906 $('#photoList' + galleryIndex).show(); 1907 1908 1909 1910 $('.grid').hide(); 1911 1912 var minHeight = 0; 1913 $('.photolist img:visible').each(function() { 1914 if ($(this).height() > minHeight) 1915 minHeight = $(this).height(); 1916 }); 1917 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 1918 1919 }); 1920 1921 $('#widget_header_buttons #btnMosaic').on('click', function() { 1922 $('#widget_header_buttons .columnSelector').removeClass('selected'); 1923 $(this).addClass('selected'); 1924 $('#photosContainer').removeAttr('class'); 1925 $('.photolist').hide(); 1926 $('.grid').hide(); 1927 1928 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 1929 galleryIndex = $('.nested-gst.selected').attr('data-index'); 1930 else 1931 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 1932 1933 $('#grid' + galleryIndex).show(); 1934 1935 f_convertMosaicImages(fullImageSizeString, thumbImageSizeString); 1936 1937 if ($('.side-container li').length > 0 && $('.nested-gst').length > 1 && $(window).width() > 1024) { 1938 $('.grid').css('width', '80%'); 1939 } else 1940 $('.grid').css('width', '100%'); 1941 1942 $('.grid').masonry({ 1943 itemSelector: '.grid-item', 1944 columnWidth: '.grid-sizer', 1945 percentPosition: true 1946 }); 1947 1948 }); 1949 1950 $('#widget_header_buttons #btnPlaySlideshow').on('click', function(){ 1951 playSlideShow = true; 1952 1953 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 1954 galleryIndex = $('.nested-gst.selected').attr('data-index'); 1955 else 1956 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 1957 1958 if ($('.headerButton.selected').attr('data-columns') == 'mosaic') 1959 $('#grid' + galleryIndex + ' a').first().trigger('click', [true]); 1960 else 1961 $('#photoList' + galleryIndex + ' a').first().trigger('click', [true]); 1962 }); 1963 1964 $('.nested-gst').click(function() { 1965 $('.nested-gst').removeClass('selected'); 1966 $(this).addClass('selected'); 1967 $('.top-dropdown option[data-index="' + $(this).attr('data-index') + '"]').prop('selected', true); 1968 1969 $('.grid').hide(); 1970 $('.photolist').hide(); 1971 1972 if ($('.headerButton.selected').attr('data-columns') == 'mosaic') { 1973 f_convertMosaicImages(fullImageSizeString, thumbImageSizeString); 1974 1975 $('#grid' + $(this).attr('data-index')).show(); 1976 1977 $('#grid' + $(this).attr('data-index')).masonry({ 1978 itemSelector: '.grid-item', 1979 columnWidth: '.grid-sizer', 1980 percentPosition: true 1981 }); 1982 } else { 1983 var column_count = $('.headerButton.selected').attr('data-columns'); 1984 f_convertImages(fullImageSizeString, thumbImageSizeString, column_count); 1985 1986 $('#photoList' + $(this).attr('data-index')).show(); 1987 1988 var minHeight = 0; 1989 $('.photolist img:visible').each(function() { 1990 if ($(this).height() > minHeight) 1991 minHeight = $(this).height(); 1992 }); 1993 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 1994 } 1995 }); 1996 1997 $('.top-dropdown').change(function() { 1998 $('.grid').hide(); 1999 $('.photolist').hide(); 2000 2001 if ($('.headerButton.selected').attr('data-columns') == 'mosaic') { 2002 f_convertMosaicImages(fullImageSizeString, thumbImageSizeString); 2003 2004 $('#grid' + $('.top-dropdown option:selected').attr('data-index')).show(); 2005 2006 $('#grid' + $('.top-dropdown option:selected').attr('data-index')).masonry({ 2007 itemSelector: '.grid-item', 2008 columnWidth: '.grid-sizer', 2009 percentPosition: true 2010 }); 2011 } else { 2012 var column_count = $('.headerButton.selected').attr('data-columns'); 2013 f_convertImages(fullImageSizeString, thumbImageSizeString, column_count); 2014 $('#photoList' + $('.top-dropdown option:selected').attr('data-index')).show(); 2015 2016 var minHeight = 0; 2017 $('.photolist img:visible').each(function() { 2018 if ($(this).height() > minHeight) 2019 minHeight = $(this).height(); 2020 }); 2021 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 2022 } 2023 }); 2024 2025 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_ctl00_GalleryContainer.defaultView.toLowerCase() == 'mosaic') { 2026 $('#widget_header_buttons #btnMosaic').click(); 2027 } else 2028 $('.headerButton.column' + p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_ctl00_GalleryContainer.defaultView).click(); 2029 2030 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_ctl00_GalleryContainer.hideColumnSelector.toUpperCase() == "TRUE") { 2031 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_ctl00_GalleryContainer .columnSelector').hide(); 2032 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_ctl00_GalleryContainer #widget_header_buttons #btnMosaic').hide(); 2033 } 2034 2035 $(".headerButton").tooltip({ 2036 position: { 2037 my: "center bottom-20", 2038 at: "center top", 2039 using: function( position, feedback ) { 2040 $( this ).css( position ); 2041 $( "<div>" ) 2042 .addClass( "arrow" ) 2043 .addClass( feedback.vertical ) 2044 .addClass( feedback.horizontal ) 2045 .appendTo( this ); 2046 } 2047 } 2048 }); 2049 2050 f_convertImages(fullImageSizeString, thumbImageSizeString, defaultColumnCount); 2051 2052 if ($(window).width() < 1025) { 2053 $('.photolist').removeClass('nested-side'); 2054 $('.photolist').addClass('nested-top'); 2055 } 2056 2057 $('.fancybox3').fancybox({ 2058 fullScreen: { 2059 autoStart: false 2060 }, 2061 thumbs: { 2062 autoStart: false, 2063 hideOnClose: true 2064 }, 2065 smallBtn: "auto", 2066 afterLoad: function (instance, current) { 2067 if (current.$image) { 2068 current.$image.attr('alt', current.opts.$orig.find('meta[itemprop="name"]').attr('content')); 2069 } 2070 var pixelRatio = window.devicePixelRatio || 1; 2071 2072 if ( pixelRatio > 1.5 ) { 2073 current.width = current.width / pixelRatio; 2074 current.height = current.height / pixelRatio; 2075 } 2076 } 2077 }); 2078 } 2079 2080 function f_convertImages(fullImageSizeString, thumbImageSizeString, defaultColumnCount) { 2081 var galleryIndex = 0; 2082 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 2083 galleryIndex = $('.nested-gst.selected').attr('data-index'); 2084 else 2085 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 2086 2087 $('#photoList' + galleryIndex + ' a.fancybox3').each(function(index, imageContainer) { 2088 var imageSrc = $(imageContainer).attr('href'); 2089 var imageThumbSrc; 2090 2091 if ($('.top-dropdown option:selected').html() == instagramBtnName || $('.top-dropdown option:selected').html() == facebookBtnName) { 2092 imageThumbSrc = $(imageContainer).find('.img_wrapper').data('thumbnail-url'); 2093 } else if ($(window).width() > 1025 && $('.nested-gst.selected').length > 0 && $('.nested-gst.selected').html() == instagramBtnName || $('.nested-gst.selected').html() == facebookBtnName) { 2094 imageThumbSrc = $(imageContainer).find('.img_wrapper').data('thumbnail-url'); 2095 } else { 2096 $(imageContainer).attr('href', imageSrc.replace(imageSize, fullImageSizeString)); 2097 imageThumbSrc = imageSrc.replace('dimg', 'dimg-crop').replace(fullImageSizeString, thumbImageSizeString).replace(imageSize, thumbImageSizeString); 2098 var imageThumbAltText = $(imageContainer).find('.img_wrapper meta[itemprop="name"]').attr('content'); 2099 } 2100 $(imageContainer).find('.img_wrapper').css('background-image', 'url(' + imageThumbSrc.replace(imageSize, $(window).width() + 'x' + $(window).height()) + ')'); 2101 2102 $(imageContainer).addClass('fancybox3'); 2103 $(imageContainer).click(function(e, isFromPlayButton){ 2104 if (!isFromPlayButton){ 2105 var imageId = $(this).data('mediaid'); 2106 f_analyticsSendEvent('gallery', 'click-gallery-image', imageId.toString()); 2107 } 2108 }); 2109 }); 2110 2111 var minHeight = 0; 2112 $('.photolist img:visible').each(function() { 2113 if ($(this).height() > minHeight) 2114 minHeight = $(this).height(); 2115 }); 2116 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 2117 2118 var gallery_tab = $('#photoList' + galleryIndex); 2119 f_createPaginationGallerySquares(gallery_tab, defaultColumnCount); 2120 } 2121 2122 function f_convertMosaicImages(fullImageSizeString, thumbImageSizeString) { 2123 var galleryIndex = 0; 2124 if ($('.nested-gst').length > 0 && $('.nested-gst:visible').length > 0) 2125 galleryIndex = $('.nested-gst.selected').attr('data-index'); 2126 else 2127 galleryIndex = $('.top-dropdown option:selected').attr('data-index'); 2128 2129 $('#grid' + galleryIndex + ' .mosaic-img').each(function() { 2130 var url = $(this).find('meta[itemprop="contentUrl"]').attr('content'); 2131 $(this).css('background-image', 'url(' + url.replace(imageSize, $(window).width() + 'x' + $(window).height()) + ')'); 2132 }); 2133 2134 $('#grid' + galleryIndex + ' a.fancybox3').each(function(index, imageContainer) { 2135 var imageSrc = $(imageContainer).attr('href'); 2136 var imageThumbSrc; 2137 2138 if ($('.top-dropdown option:selected').html() == instagramBtnName || $('.top-dropdown option:selected').html() == facebookBtnName) { 2139 imageThumbSrc = $(imageContainer).find('.img_wrapper').data('thumbnail-url'); 2140 } else if ($('.nested-gst.selected').length > 0 && $('.nested-gst.selected').html() == instagramBtnName || $('.nested-gst.selected').html() == facebookBtnName) { 2141 imageThumbSrc = $(imageContainer).find('.img_wrapper').data('thumbnail-url'); 2142 } else { 2143 $(imageContainer).attr('href', imageSrc.replace(imageSize, fullImageSizeString)); 2144 imageThumbSrc = imageSrc.replace('dimg', 'dimg-crop').replace(fullImageSizeString, thumbImageSizeString).replace(imageSize, thumbImageSizeString); 2145 var imageThumbAltText = $(imageContainer).find('.img_wrapper meta[itemprop="name"]').attr('content'); 2146 } 2147 $(imageContainer).find('.img_wrapper').html('<img src="' + imageThumbSrc + '" ' + (imageThumbAltText ? 'alt="' + imageThumbAltText + '"' : '') + ' />'); 2148 $(imageContainer).addClass('fancybox3'); 2149 $(imageContainer).click(function(e, isFromPlayButton){ 2150 if (!isFromPlayButton){ 2151 var imageId = $(this).data('mediaid'); 2152 f_analyticsSendEvent('gallery', 'click-gallery-image', imageId.toString()); 2153 } 2154 }); 2155 }); 2156 var gallery_tab = $('#grid' + galleryIndex); 2157 2158 f_createPaginationGallerySquares(gallery_tab, 'mosaic'); 2159 2160 } 2161 2162 2163 function f_createPaginationGallerySquares(gallery_tab, defaultColumnCount) { 2164 var gallery_tab_selector = '#' + gallery_tab.attr('id'); 2165 var galleryCount = 0; 2166 $(gallery_tab_selector + ' .pagination-item').each(function () { 2167
2167 galleryCount++; 2168 }); 2169 2170 2171 // If there is no need for the pagination don't create pagination 2172 if (itemsPerPageGallery == 'false' || itemsPerPageGallery >= galleryCount) { 2173 return; 2174 } 2175 // Create Pagination 2176 else { 2177 $(gallery_tab).attr('data-page', ''); 2178 $(gallery_tab_selector + ' .div-list-pagination-bot-gallery').remove(); 2179 2180 2181 var pageNum = (itemsPerPageGallery == '1' ? 0 : 1); 2182 if (itemsPerPageGallery == '0') 2183 return; 2184 else { 2185 $(gallery_tab_selector + ' .pagination-item').each(function (i, v) { 2186 // Increment page number whenever in a new page 2187 if (itemsPerPageGallery == '1' || (i + 1 > itemsPerPageGallery && (i + 1) % itemsPerPageGallery == 1)) 2188 pageNum++; 2189 $(v).attr('data-page', pageNum); 2190 }); 2191 if (pageNum > 1) { 2192 // TFS 3046412 WCAG 4.1.1: gallery_tab is a <ul>; wrap the pagination <div> in an <li> so it stays a valid list child. 2193 var botPaginationHtml = '<li class="div-list-pagination-wrapper"><div class="div-list-pagination-bot-gallery div-list-pagination-gallery"><ul class="list-pagination-bot list-pagination-gallery"><li><a aria-label="Previous" id="previous-page" onclick="f_previousPageGallerySquares(this);"><span aria-hidden="true">« Prev</span></a></li>'; 2194 for (var i = 1; i <= pageNum; i++) { 2195 botPaginationHtml += '<li class="page-numbers" data-page="' + i + '"><a onclick="f_loadPageGallerySquares(' + i + ', this)">' + i + '</a></li>'; 2196 } 2197 botPaginationHtml += '<li><a aria-label="Next" id="next-page" onclick="f_nextPageGallerySquares(this);"><span aria-hidden=""true"">Next » </span></a></li></ul></div></li>'; 2198 $(gallery_tab).append(botPaginationHtml); 2199 f_loadPageGallerySquares('1', gallery_tab); 2200 } 2201 } 2202 } 2203 2204 } 2205 2206 function f_loadPageGallerySquares(pageNum, elm) { 2207 if ($(elm).hasClass('pagination-parent')) { 2208 elmId = $(elm).attr('id'); 2209 } 2210 else { 2211 elmId = $(elm).parents('.pagination-parent').attr('id'); 2212 } 2213 var gallery_tab_selector = '#' + elmId; 2214 $(gallery_tab_selector + ' .pagination-item').hide(); 2215 $(gallery_tab_selector + ' .pagination-item[data-page="' + pageNum + '"]').show(); 2216 2217 if ($(gallery_tab_selector).hasClass('grid')) { 2218 var $grid = $(gallery_tab_selector).masonry({ 2219 initLayout: true, 2220 itemSelector: '.grid-item', 2221 columnWidth: '.grid-sizer', 2222 percentPosition: true 2223 }); 2224 // bind event 2225 $grid.masonry( 'on', 'layoutComplete', function() { 2226 console.log('layout is complete'); 2227 }); 2228 // trigger initial layout 2229 $grid.masonry(); 2230 } 2231 2232 $(gallery_tab_selector + ' .list-pagination-gallery li').removeClass('active-page'); 2233 $(gallery_tab_selector + ' .list-pagination-gallery li[data-page="' + pageNum + '"]').addClass('active-page'); 2234 2235 $(gallery_tab_selector + ' .list-pagination-gallery li').show(); 2236 $(gallery_tab_selector + ' .list-pagination-gallery li').each(function (i, v) { 2237 if (parseInt($(v).attr('data-page')) > (parseInt(pageNum) + 3) || parseInt($(v).attr('data-page')) < (parseInt(pageNum) - 3)) 2238 $(v).hide(); 2239 }); 2240 2241 if ($(gallery_tab_selector + ' .pagination-item[data-page="' + (parseInt(pageNum) + 1) + '"]').length == 0) 2242 $(gallery_tab_selector + ' .list-pagination-gallery li:last-child').hide(); 2243 if ($(gallery_tab_selector + ' .pagination-item[data-page="' + (parseInt(pageNum) - 1) + '"]').length == 0) 2244 $(gallery_tab_selector + ' .list-pagination-gallery li:first-child').hide(); 2245 2246 } 2247 2248 2249 2250 function f_nextPageGallerySquares(elm) { 2251 var gallery_tab_selector = '#' + $(elm).parents('.pagination-parent').attr('id'); 2252 2253 var currentPage = $(gallery_tab_selector + ' .pagination-item:visible').first().attr('data-page'); 2254 2255 if ($(gallery_tab_selector + ' .pagination-item[data-page="' + (parseInt(currentPage) + 1) + '"]').length > 0) 2256 f_loadPageGallerySquares(parseInt(currentPage) + 1, gallery_tab_selector); 2257 } 2258 2259 function f_previousPageGallerySquares(elm) { 2260 var gallery_tab_selector = '#' + $(elm).parents('.pagination-parent').attr('id'); 2261 2262 var currentPage = $(gallery_tab_selector + ' .pagination-item:visible').first().attr('data-page'); 2263 2264 if ($(gallery_tab_selector + ' .pagination-item[data-page="' + (parseInt(currentPage) - 1) + '"]').length > 0) 2265 f_loadPageGallerySquares(parseInt(currentPage) - 1, gallery_tab_selector); 2266 } 2267 2268 2269 function f_resize() { 2270 $('.gallerySquareContainer .img_wrapper img').css('min-height', 0); 2271 2272 if (nestedGalleryLocation == 'side' && $(window).width() < 1025) { 2273 $('.photolist').removeClass('nested-side'); 2274 $('.photolist').addClass('nested-top'); 2275 } else if(nestedGalleryLocation == 'side') { 2276 $('.photolist').addClass('nested-side'); 2277 $('.photolist').removeClass('nested-top'); 2278 } 2279 2280 if ($(window).width() < 1025 && $('.top-dropdown option').length > 1) 2281 $('.top-dropdown').removeClass('hide-dropdown'); 2282 if ($(window).width() > 1025 && nestedGalleryLocation != 'dropdown') 2283 $('.top-dropdown').addClass('hide-dropdown'); 2284 2285 if ($(window).width() < 768 && $('.headerButton.selected').attr('data-columns') == 'mosaic') { 2286 if (p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_ctl00_GalleryContainer.defaultView.toLowerCase() == '4') 2287 $('.headerButton.column4').click(); 2288 else 2289 $('.headerButton.column3').click(); 2290 } 2291 2292 var minHeight = 0; 2293 $('.photolist img:visible').each(function() { 2294 if ($(this).height() > minHeight) 2295 minHeight = $(this).height(); 2296 }); 2297 $('.gallerySquareContainer .img_wrapper img').css('min-height', minHeight); 2298 } 2299</script>
2299 2300 2301<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneGallery_WebPartLoader2_ctl00_GalleryContainer" class="gallerySquareContainer"> 2302 2303 <div id="gstIntersect" class="widget_head"> 2304 <div id="widget_header_buttons" aria-label="Photo Gallery Layout Selection Buttons"> 2305 <!--googleoff: all--> 2306 <button type="button" class="headerButton" id="btnPlaySlideshow" title="Play Slideshow" aria-label="Play Slideshow">Play Slideshow</button> 2307 <button type="button" class="headerButton columnSelector column3" data-columns="3" title="3 Columns" aria-label="3 Column Photo Gallery">3 Columns</button> 2308 <button type="button" class="headerButton columnSelector column4" data-columns="4" title="4 Columns" aria-label="4 Column Photo Gallery">4 Columns</button> 2309 <button type="button" class="headerButton mosaic" id="btnMosaic" data-columns="mosaic" title="Mosaic" aria-label="Mosaic Photo Gallery">Mosaic</button> 2310 <!--googleon: all--> 2311 </div> 2312 <ul class="top-container hide-top-cont"><li class="gallery-nav gallery-nav-top"><button type="button" class="nested-gst nested-gst-top selected" data-index="0" aria-label="Gallery">Gallery</button></li></ul> 2313 <select class="top-dropdown hide-dropdown" aria-label="Photo Layout Selection Dropdown Menu"><option class="gst-drop-item" data-index="0" aria-label="Gallery">Gallery</option></select> 2314 </div> 2315 <div id="photosContainer"> 2316 2317 <ul id="photoList0" class="photolist pagination-parent nested-top"><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704239/1920x1080/154704239.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704239/1920x1080/154704239.jpg"> 2318 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704239/1920x1080/154704239.jpg" /> 2319 <div class="meta name"> 2320 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2321 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704239/950x950/154704239.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2322 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702354/1920x1080/154702354.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702354/1920x1080/154702354.jpg"> 2323 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702354/1920x1080/154702354.jpg" /> 2324 <div class="meta name"> 2325 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2326 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702354/950x950/154702354.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2327 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154703986/1920x1080/154703986.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154703986/1920x1080/154703986.jpg"> 2328 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154703986/1920x1080/154703986.jpg" /> 2329 <div class="meta name"> 2330 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2331 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154703986/950x950/154703986.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2332 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704185/1920x1080/154704185.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704185/1920x1080/154704185.jpg"> 2333 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704185/1920x1080/154704185.jpg" /> 2334 <div class="meta name"> 2335 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2336 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704185/950x950/154704185.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2337 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704181/1920x1080/154704181.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704181/1920x1080/154704181.jpg"> 2338 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704181/1920x1080/154704181.jpg" /> 2339 <div class="meta name"> 2340 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2341 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704181/950x950/154704181.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2342 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712575/1920x1080/154712575.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712575/1920x1080/154712575.jpg"> 2343 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712575/1920x1080/154712575.jpg" /> 2344 <div class="meta name"> 2345 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2346 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712575/950x950/154712575.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2347 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704179/1920x1080/154704179.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704179/1920x1080/154704179.jpg"> 2348 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704179/1920x1080/154704179.jpg" /> 2349 <div class="meta name"> 2350 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2351 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704179/950x950/154704179.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2352 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704216/1920x1080/154704216.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704216/1920x1080/154704216.jpg"> 2353 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704216/1920x1080/154704216.jpg" /> 2354 <div class="meta name"> 2355 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2356 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704216/950x950/154704216.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2357 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704212/1920x1080/154704212.
2357jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704212/1920x1080/154704212.jpg"> 2358 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704212/1920x1080/154704212.jpg" /> 2359 <div class="meta name"> 2360 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2361 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704212/950x950/154704212.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2362 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712586/1920x1080/154712586.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712586/1920x1080/154712586.jpg"> 2363 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712586/1920x1080/154712586.jpg" /> 2364 <div class="meta name"> 2365 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2366 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712586/950x950/154712586.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2367 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712587/1920x1080/154712587.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712587/1920x1080/154712587.jpg"> 2368 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712587/1920x1080/154712587.jpg" /> 2369 <div class="meta name"> 2370 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2371 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712587/950x950/154712587.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2372 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704227/1920x1080/154704227.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704227/1920x1080/154704227.jpg"> 2373 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704227/1920x1080/154704227.jpg" /> 2374 <div class="meta name"> 2375 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2376 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704227/950x950/154704227.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2377 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704221/1920x1080/154704221.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704221/1920x1080/154704221.jpg"> 2378 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704221/1920x1080/154704221.jpg" /> 2379 <div class="meta name"> 2380 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2381 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704221/950x950/154704221.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2382 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712589/1920x1080/154712589.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712589/1920x1080/154712589.jpg"> 2383 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712589/1920x1080/154712589.jpg" /> 2384 <div class="meta name"> 2385 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2386 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712589/950x950/154712589.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2387 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702353/1920x1080/154702353.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702353/1920x1080/154702353.jpg"> 2388 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702353/1920x1080/154702353.jpg" /> 2389 <div class="meta name"> 2390 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2391 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702353/950x950/154702353.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2392 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704192/1920x1080/154704192.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704192/1920x1080/154704192.jpg"> 2393 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704192/1920x1080/154704192.jpg" /> 2394 <div class="meta name"> 2395 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2396 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704192/950x950/154704192.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2397 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712588/1920x1080/154712588.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712588/1920x1080/154712588.jpg"> 2398 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712588/1920x1080/154712588.jpg" /> 2399 <div class="meta name"> 2400 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2401 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712588/950x950/154712588.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2402 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704233/1920x1080/154704233.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704233/1920x1080/154704233.jpg"> 2403 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704233/1920x1080/154704233.jpg" /> 2404 <div class="meta name"> 2405 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2406 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704233/950x950/154704233.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2407 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704184/1920x1080/154704184.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704184/1920x1080/154704184.jpg"> 2408 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704184/1920x1080/154704184.jpg" /> 2409 <div class="meta name"> 2410 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2411 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704184/950x950/154704184.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2412 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702351/1920x1080/154702351.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702351/1920x1080/154702351.jpg"> 2413 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702351/1920x1080/154702351.jpg" /> 2414 <div class="meta name"> 2415 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2416 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702351/950x950/154702351.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2417 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702352/1920x1080/154702352.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702352/1920x1080/154702352.jpg"> 2418 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702352/1920x1080/154702352.jpg" /> 2419 <div class="meta name"> 2420 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2421 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702352/950x950/154702352.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2422 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712583/1920x1080/154712583.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712583/1920x1080/154712583.jpg"> 2423 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712583/1920x1080/154712583.jpg" /> 2424 <div class="meta name"> 2425 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2426 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712583/950x950/154712583.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2427 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702348/1920x1080/154702348.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702348/1920x1080/154702348.jpg"> 2428 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702348/1920x1080/154702348.jpg" /> 2429 <div class="meta name"> 2430 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2431 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702348/950x950/154702348.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2432 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704176/1920x1080/154704176.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704176/1920x1080/154704176.jpg"> 2433 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704176/1920x1080/154704176.jpg" /> 2434 <div class="meta name"> 2435
2435 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2436 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704176/950x950/154704176.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2437 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712584/1920x1080/154712584.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712584/1920x1080/154712584.jpg"> 2438 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712584/1920x1080/154712584.jpg" /> 2439 <div class="meta name"> 2440 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2441 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712584/950x950/154712584.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2442 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712585/1920x1080/154712585.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712585/1920x1080/154712585.jpg"> 2443 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712585/1920x1080/154712585.jpg" /> 2444 <div class="meta name"> 2445 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2446 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712585/950x950/154712585.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2447 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712579/1920x1080/154712579.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712579/1920x1080/154712579.jpg"> 2448 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712579/1920x1080/154712579.jpg" /> 2449 <div class="meta name"> 2450 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2451 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712579/950x950/154712579.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2452 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712580/1920x1080/154712580.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712580/1920x1080/154712580.jpg"> 2453 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712580/1920x1080/154712580.jpg" /> 2454 <div class="meta name"> 2455 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2456 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712580/950x950/154712580.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2457 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702350/1920x1080/154702350.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702350/1920x1080/154702350.jpg"> 2458 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702350/1920x1080/154702350.jpg" /> 2459 <div class="meta name"> 2460 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2461 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702350/950x950/154702350.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2462 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702345/1920x1080/154702345.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702345/1920x1080/154702345.jpg"> 2463 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702345/1920x1080/154702345.jpg" /> 2464 <div class="meta name"> 2465 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2466 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702345/950x950/154702345.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2467 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702347/1920x1080/154702347.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702347/1920x1080/154702347.jpg"> 2468 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702347/1920x1080/154702347.jpg" /> 2469 <div class="meta name"> 2470 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2471 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702347/950x950/154702347.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2472 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712581/1920x1080/154712581.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712581/1920x1080/154712581.jpg"> 2473 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712581/1920x1080/154712581.jpg" /> 2474 <div class="meta name"> 2475 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2476 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712581/950x950/154712581.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2477 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712574/1920x1080/154712574.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712574/1920x1080/154712574.jpg"> 2478 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712574/1920x1080/154712574.jpg" /> 2479 <div class="meta name"> 2480 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2481 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712574/950x950/154712574.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2482 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702338/1920x1080/154702338.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702338/1920x1080/154702338.jpg"> 2483 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702338/1920x1080/154702338.jpg" /> 2484 <div class="meta name"> 2485 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2486 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702338/950x950/154702338.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2487 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712577/1920x1080/154712577.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712577/1920x1080/154712577.jpg"> 2488 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712577/1920x1080/154712577.jpg" /> 2489 <div class="meta name"> 2490 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2491 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712577/950x950/154712577.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2492 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702341/1920x1080/154702341.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702341/1920x1080/154702341.jpg"> 2493 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702341/1920x1080/154702341.jpg" /> 2494 <div class="meta name"> 2495 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2496 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702341/950x950/154702341.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2497 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702343/1920x1080/154702343.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702343/1920x1080/154702343.jpg"> 2498 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702343/1920x1080/154702343.jpg" /> 2499 <div class="meta name"> 2500 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2501 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702343/950x950/154702343.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2502 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712576/1920x1080/154712576.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712576/1920x1080/154712576.jpg"> 2503 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712576/1920x1080/154712576.jpg" /> 2504 <div class="meta name"> 2505 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2506 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712576/950x950/154712576.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2507 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702342/1920x1080/154702342.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702342/1920x1080/154702342.jpg"> 2508 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702342/1920x1080/154702342.jpg" /> 2509 <div class="meta name"> 2510 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2511 <meta itemprop="contentUrl" content="//capi.myleases
2511tar.com/v2/dimg-crop/154702342/950x950/154702342.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2512 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154702346/1920x1080/154702346.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702346/1920x1080/154702346.jpg"> 2513 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154702346/1920x1080/154702346.jpg" /> 2514 <div class="meta name"> 2515 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2516 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702346/950x950/154702346.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2517 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712578/1920x1080/154712578.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712578/1920x1080/154712578.jpg"> 2518 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712578/1920x1080/154712578.jpg" /> 2519 <div class="meta name"> 2520 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2521 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712578/950x950/154712578.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2522 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704228/1920x1080/154704228.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704228/1920x1080/154704228.jpg"> 2523 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704228/1920x1080/154704228.jpg" /> 2524 <div class="meta name"> 2525 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2526 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704228/950x950/154704228.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2527 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154704264/1920x1080/154704264.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704264/1920x1080/154704264.jpg"> 2528 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154704264/1920x1080/154704264.jpg" /> 2529 <div class="meta name"> 2530 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2531 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704264/950x950/154704264.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2532 </div></a></li><li class="mix"><a class="fancybox3 gallery-item pagination-item" itemscope="itemscope" itemtype="http://schema.org/ImageObject" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="gallery-0" href="//capi.myleasestar.com/v2/dimg/154712573/1920x1080/154712573.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712573/1920x1080/154712573.jpg"> 2533 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg/154712573/1920x1080/154712573.jpg" /> 2534 <div class="meta name"> 2535 <div class="img_wrapper" itemprop="thumbnail" itemscope="itemscope" itemtype="http://schema.org/ImageObject" role="img" aria-label="Halewai'olu Senior Residences"> 2536 <meta itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712573/950x950/154712573.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /></div> 2537 </div></a></li></ul> 2538 <div id="grid0" class="grid pagination-parent" style="display:none"> 2539 <div class="grid-sizer"></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704239/1920x1080/154704239.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704239/1920x1080/154704239.jpg"> 2540 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704239/0x640/154704239.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2541 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702354/1920x1080/154702354.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702354/1920x1080/154702354.jpg"> 2542 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702354/0x1200/154702354.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2543 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154703986/1920x1080/154703986.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154703986/1920x1080/154703986.jpg"> 2544 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154703986/0x1200/154703986.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2545 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704185/1920x1080/154704185.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704185/1920x1080/154704185.jpg"> 2546 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704185/0x1200/154704185.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2547 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704181/1920x1080/154704181.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704181/1920x1080/154704181.jpg"> 2548 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704181/0x1200/154704181.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2549 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712575/1920x1080/154712575.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712575/1920x1080/154712575.jpg"> 2550 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712575/0x1200/154712575.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2551 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704179/1920x1080/154704179.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704179/1920x1080/154704179.jpg"> 2552 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704179/0x1200/154704179.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2553 </a></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704216/1920x1080/154704216.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704216/1920x1080/154704216.jpg"> 2554 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704216/0x640/154704216.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2555 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704212/1920x1080/154704212.
2555jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704212/1920x1080/154704212.jpg"> 2556 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704212/0x1200/154704212.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2557 </a></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712586/1920x1080/154712586.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712586/1920x1080/154712586.jpg"> 2558 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712586/0x640/154712586.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2559 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712587/1920x1080/154712587.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712587/1920x1080/154712587.jpg"> 2560 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712587/0x1200/154712587.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2561 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704227/1920x1080/154704227.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704227/1920x1080/154704227.jpg"> 2562 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704227/0x1200/154704227.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2563 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704221/1920x1080/154704221.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704221/1920x1080/154704221.jpg"> 2564 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704221/0x1200/154704221.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2565 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712589/1920x1080/154712589.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712589/1920x1080/154712589.jpg"> 2566 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712589/0x1200/154712589.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2567 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702353/1920x1080/154702353.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702353/1920x1080/154702353.jpg"> 2568 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702353/0x1200/154702353.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2569 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704192/1920x1080/154704192.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704192/1920x1080/154704192.jpg"> 2570 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704192/0x1200/154704192.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2571 </a></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712588/1920x1080/154712588.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712588/1920x1080/154712588.jpg"> 2572 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712588/0x640/154712588.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2573 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704233/1920x1080/154704233.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704233/1920x1080/154704233.jpg"> 2574 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704233/0x1200/154704233.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2575 </a></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704184/1920x1080/154704184.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704184/1920x1080/154704184.jpg"> 2576 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704184/0x640/154704184.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2577 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702351/1920x1080/154702351.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702351/1920x1080/154702351.jpg"> 2578 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702351/0x1200/154702351.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2579 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702352/1920x1080/154702352.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702352/1920x1080/154702352.jpg"> 2580 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702352/0x1200/154702352.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2581 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712583/1920x1080/154712583.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712583/1920x1080/154712583.jpg"> 2582 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712583/0x1200/154712583.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2583 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702348/1920x1080/154702348.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702348/1920x1080/154702348.jpg"> 2584 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702348/0x1200/154702348.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2585 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704176/1920x1080/154704176.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704176/1920x1080/154704176.jpg"> 2586 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704176/0x1200/154704176.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2587 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712584/1920x1080/154712584.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712584/1920x1080/154712584.jpg"> 2588 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712584/0x1200/154712584.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2589 </a></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712585/1920x1080/154712585.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712585/1920x1080/154712585.jpg"> 2590 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712585/0x640
2590/154712585.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2591 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712579/1920x1080/154712579.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712579/1920x1080/154712579.jpg"> 2592 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712579/0x1200/154712579.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2593 </a></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712580/1920x1080/154712580.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712580/1920x1080/154712580.jpg"> 2594 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712580/0x640/154712580.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2595 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702350/1920x1080/154702350.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702350/1920x1080/154702350.jpg"> 2596 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702350/0x1200/154702350.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2597 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702345/1920x1080/154702345.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702345/1920x1080/154702345.jpg"> 2598 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702345/0x1200/154702345.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2599 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702347/1920x1080/154702347.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702347/1920x1080/154702347.jpg"> 2600 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702347/0x1200/154702347.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2601 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712581/1920x1080/154712581.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712581/1920x1080/154712581.jpg"> 2602 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712581/0x1200/154712581.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2603 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712574/1920x1080/154712574.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712574/1920x1080/154712574.jpg"> 2604 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712574/0x1200/154712574.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2605 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702338/1920x1080/154702338.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702338/1920x1080/154702338.jpg"> 2606 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702338/0x1200/154702338.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2607 </a></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712577/1920x1080/154712577.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712577/1920x1080/154712577.jpg"> 2608 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712577/0x640/154712577.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2609 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702341/1920x1080/154702341.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702341/1920x1080/154702341.jpg"> 2610 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702341/0x1200/154702341.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2611 </a></div><div class="grid-item pagination-item grid-item--width2 grid-item--height2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702343/1920x1080/154702343.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702343/1920x1080/154702343.jpg"> 2612 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702343/0x640/154702343.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2613 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712576/1920x1080/154712576.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712576/1920x1080/154712576.jpg"> 2614 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712576/0x1200/154712576.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2615 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702342/1920x1080/154702342.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702342/1920x1080/154702342.jpg"> 2616 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702342/0x1200/154702342.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2617 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154702346/1920x1080/154702346.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154702346/1920x1080/154702346.jpg"> 2618 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154702346/0x1200/154702346.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2619 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712578/1920x1080/154712578.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712578/1920x1080/154712578.jpg"> 2620 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712578/0x1200/154712578.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2621 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704228/1920x1080/154704228.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704228/1920x1080/154704228.jpg"> 2622 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704228/0x1200/154704228.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2623 </a></div><div class="grid-item pagination-item"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154704264/1920x1080/154704264.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154704264/1920x1080/154704264.jpg"> 2624 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154704264/0x1200/154704264.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2625 </a></div><div class="grid-item pagination-item grid-item--width2"><a class="mosaic-img fancybox3" aria-label="Expand Image of Halewai'olu Senior Residences" data-fancybox="mosaic-gallery-0" href="//capi.myleasestar.com/v2/dimg/154712573/1920x1080/154712573.jpg" data-mediaid="//capi.myleasestar.com/v2/dimg/154712573/1920x1080/154712573.jpg"> 2626 <meta data-u="image" itemprop="contentUrl" content="//capi.myleasestar.com/v2/dimg-crop/154712573/0x1200/154712573.jpg" /><meta itemprop="name" content="Halewai'olu Senior Residences" /> 2627 </a></div></div> 2628 </div> 2629 2630 </div> 2631<div id="gstFooterIntersect" class="clear"></div> 2632 2633</div> 2634</section> 2635<section id="neighborhood" class="block-area container-fluid"><div id="" class="home-banner neighborhood-banner black-border row"><div class="banner-overlay"></div><div class="banner-content"> 2636<h2></h2> 2637</div></div><div id="" class="map-plus-bar row"><div id="" class=""><div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneLocation_WebPartZone_WebPartZone_zone_WebPartLoader3_pnlContainer"> 2638 <div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneLocation_WebPartZone_WebPartZone_zone_WebPartLoader3_ctl00_pnlNeighborhoodFullWidth" class="widget neighborhood-widget"> 2639 2640 2641
2642<script src="/CMSScripts/Custom/RPWebParts/spiderfier/oms.min.js" type="text/javascript"></script>
2642 2643
2644<script type="text/javascript"> 2645// PME-507748 / WCAG 1.3.1 ââ¬â emit the marker-name <h4> only when the name has text. 2646// If name is blank, return '' so axe doesn't flag <h4><a></a></h4>. 2647function f_buildMarkerHeading(href, name) { 2648 var safeName = (name || '').toString().trim(); 2649 if (safeName.length === 0) { return ''; } 2650 return '<h4><a href="' + href + '" target="_blank" rel="noopener noreferrer">' + safeName + '<span class="sr-only"> (opens in a new tab)</span></a></h4>'; 2651} 2652var overrideGetDirections = 'https://www.google.com/maps/dir/Current+Location/1331 River Street HI'; 2653var overridePropertyLink = 'https://www.google.com/maps/place/Halewaiolu+Senior+Residences+-+8305/@21.3156269,-157.859682,16z/'; 2654var propertyMarker; 2655var mapFullWidth; 2656var mapService; 2657var markersArray = []; 2658var origin; 2659var infoWindow; 2660var zoomLevels = { 2661 '402.33': 16, 2662 '804.67': 15, 2663 '1609.34': 14, 2664 '4023.36': 13, 2665 '8046.72': 12, 2666 '16093.4': 11, 2667 '32186.9': 10, 2668 '48280.3': 9 2669}; 2670var defaultZoom = (typeof searchRadius !== 'undefined') ? zoomLevels[searchRadius] : 15; 2671var currentRadius = (typeof searchRadius !== 'undefined') ? searchRadius : 804.67; 2672var currentKeyword = ''; 2673var currentIcon = ''; 2674var overlays = []; 2675var clicked = false; 2676var customMapPinsObj = '[]' ? JSON.parse('[]') : ''; 2677var oms; 2678//Google Maps Lazyloading 2679let lazyLoaded = false; 2680 2681$(document).on("ready", function () { 2682 let script = document.createElement('script') 2683 2684 // Load the map script once the widget container is actually visible. 2685 // Previously this was gated on scroll/resize/load DOM events re-checking 2686 // getBoundingClientRect(); if none of those events fired after the container 2687 // was already in view (e.g. an automated page check, or a user landing via 2688 // an in-page anchor), the map script never loaded ââ¬â silently, with no 2689 // console error. IntersectionObserver fires on real visibility directly, 2690 // including the "already visible when observed" case, so it doesn't depend 2691 // on a scroll/resize event happening to occur afterward. 2692 function smLoadMapScript() { 2693 if (lazyLoaded) { return; } 2694 lazyLoaded = true; 2695 $('.neighborhood-widget__loader').show(); 2696 // adds the script tag to the document 2697 if (document.getElementsByTagName('body')[0]) { 2698 document.getElementsByTagName('body')[0].appendChild(script) 2699 } else { 2700 document.getElementsByTagName('html')[0].appendChild(script) 2701 } 2702 2703 // baseline config for script tag 2704 script.src = 'https://maps.googleapis.com/maps/api/js?key=AIzaSyDS1oKsJ_hSSZqIslqkR4EdK1VndKUOPYM&libraries=places,geometry' 2705 script.async = true 2706 script.defer = true 2707 2708 //after the google map script has loaded we can call the widget script 2709 script.onload = function () { 2710 loadMap(); 2711 $('.neighborhood-widget__loader').hide('slow'); 2712 } 2713 } 2714 2715 var mapContainerEl = document.getElementById("mapFullWidth"); 2716 if (mapContainerEl && window.IntersectionObserver) { 2717 var mapObserver = new IntersectionObserver(function (entries) { 2718 entries.forEach(function (entry) { 2719 if (entry.isIntersecting) { 2720 smLoadMapScript(); 2721 mapObserver.disconnect(); 2722 } 2723 }); 2724 }); 2725 mapObserver.observe(mapContainerEl); 2726 } else if (mapContainerEl) { 2727 smLoadMapScript(); 2728 } 2729 }); 2730 //End Google Maps Lazyloading 2731 2732 2733 function loadMap() { 2734 2735 $(function () { 2736 initMap(); 2737 }); 2738 2739 function initMap() { 2740 origin = new google.maps.LatLng(latitude, longitude); 2741 2742 var stylesObj = [{elementType: 'geometry', 2743 stylers: [{ color: '#f5f5f5' }] 2744 }, 2745 { 2746 elementType: 'labels.icon', 2747 stylers: [{ visibility: 'off' }] 2748 }, 2749 { 2750 elementType: 'labels.text.fill', 2751 stylers: [{ color: '#616161' }] 2752 }, 2753 { 2754 elementType: 'labels.text.stroke', 2755 stylers: [{ color: '#f5f5f5' }] 2756 }, 2757 { 2758 featureType: 'administrative.land_parcel', 2759 elementType: 'labels.text.fill', 2760 stylers: [{ color: '#bdbdbd' }
2760] 2761 }, 2762 { 2763 featureType: 'poi', 2764 elementType: 'geometry', 2765 stylers: [{ color: '#eeeeee' }] 2766 }, 2767 { 2768 featureType: 'poi', 2769 elementType: 'labels.text.fill', 2770 stylers: [{ color: '#757575' }] 2771 }, 2772 { 2773 featureType: 'poi.park', 2774 elementType: 'geometry', 2775 stylers: [{ color: '#e5e5e5' }] 2776 }, 2777 { 2778 featureType: 'poi.park', 2779 elementType: 'labels.text.fill', 2780 stylers: [{ color: '#9e9e9e' }] 2781 }, 2782 { 2783 featureType: 'road', 2784 elementType: 'geometry', 2785 stylers: [{ color: '#ffffff' }] 2786 }, 2787 { 2788 featureType: 'road.arterial', 2789 elementType: 'labels.text.fill', 2790 stylers: [{ color: '#757575' }] 2791 }, 2792 { 2793 featureType: 'road.highway', 2794 elementType: 'geometry', 2795 stylers: [{ color: '#dadada' }] 2796 }, 2797 { 2798 featureType: 'road.highway', 2799 elementType: 'labels.text.fill', 2800 stylers: [{ color: '#616161' }] 2801 }, 2802 { 2803 featureType: 'road.local', 2804 elementType: 'labels.text.fill', 2805 stylers: [{ color: '#9e9e9e' }] 2806 }, 2807 { 2808 featureType: 'transit.line', 2809 elementType: 'geometry', 2810 stylers: [{ color: '#e5e5e5' }] 2811 }, 2812 { 2813 featureType: 'transit.station', 2814 elementType: 'geometry', 2815 stylers: [{ color: '#eeeeee' }] 2816 }, 2817 { 2818 featureType: 'water', 2819 elementType: 'geometry', 2820 stylers: [{ color: '#c9c9c9' }] 2821 }, 2822 { 2823 featureType: 'water', 2824 elementType: 'labels.text.fill', 2825 stylers: [{ color: '#9e9e9e' }] 2826 } 2827 ]; 2828 2829 mapFullWidth = new google.maps.Map(document.getElementById('mapFullWidth'), { 2830 center: origin, 2831 zoom: defaultZoom, 2832 mapTypeControl: false, 2833 scrollwheel: false, 2834 minZoom: 10, 2835 keyboardShortcuts: false 2836 //gestureHandling: 'greedy' 2837 2838 }); 2839 2840 mapService = new google.maps.places.PlacesService(mapFullWidth);
2841 2842 oms = new OverlappingMarkerSpiderfier(mapFullWidth, { 2843 markersWontMove: true, 2844 markersWontHide: true, 2845 basicFormatEvents: false, 2846 keepSpiderfied: true, 2847 nearbyDistance: 22, 2848 spiralFootSeparation: 28, 2849 spiralLengthStart: 18, 2850 spiralLengthFactor: 5 2851 }); 2852 2853 mapFullWidth.setOptions({ styles: stylesObj }); 2854 2855 var markerIconNormal = { 2856 path: 'M54.549,17.947c-12.314,0-22.332,10.02-22.332,22.334c0,11.854,20.262,39.548,21.125,40.721l0.805,1.096,c0.094,0.129,0.244,0.204,0.402,0.204c0.16,0,0.309-0.075,0.404-0.204l0.805-1.096c0.863-1.173,21.125-28.867,21.125-40.721,C76.883,27.967,66.863,17.947,54.549,17.947z M54.549,32.281c4.412,0,8,3.588,8,8c0,4.41-3.588,8-8,8c-4.41,0-8-3.59-8-8,C46.549,35.869,50.139,32.281,54.549,32.281z', 2857 fillColor: '#e0212f', 2858 fillOpacity: 1, 2859 scale: .75, 2860 strokeWeight: 0, 2861 anchor: new google.maps.Point(55, 80) 2862 }; 2863 2864 var markerOptions = { 2865 position: origin, 2866 map: mapFullWidth, 2867 icon: markerIconNormal, 2868 geometry: { 2869 location: origin 2870 }, 2871 title: name, 2872 name: name, 2873 vicinity: addressLine1, 2874 addressState: addressState, 2875 addressPostalCode: addressPostalCode, 2876 phonesNumber: phonesNumber, 2877 website: website, 2878 city: city 2879 }; 2880 2881 propertyMarker = new google.maps.Marker(markerOptions); 2882 2883 google.maps.event.addListener(propertyMarker, 'spider_format', function (status) { 2884 if (status == OverlappingMarkerSpiderfier.markerStatus.SPIDERFIED) { 2885 propertyMarker.setIcon({ 2886 path: 'M54.549,17.947c-12.314,0-22.332,10.02-22.332,22.334c0,11.854,20.262,39.548,21.125,40.721l0.805,1.096,c0.094,0.129,0.244,0.204,0.402,0.204c0.16,0,0.309-0.075,0.404-0.204l0.805-1.096c0.863-1.173,21.125-28.867,21.125-40.721,C76.883,27.967,66.863,17.947,54.549,17.947z M54.549,32.281c4.412,0,8,3.588,8,8c0,4.41-3.588,8-8,8c-4.41,0-8-3.59-8-8,C46.549,35.869,50.139,32.281,54.549,32.281z', 2887 fillColor: '#e0212f', 2888 fillOpacity: 1, 2889 scale: .5, 2890 strokeWeight: 0, 2891 anchor: new google.maps.Point(55, 45) 2892 }); 2893 } 2894 else { 2895 propertyMarker.setIcon({ 2896 path: 'M54.549,17.947c-12.314,0-22.332,10.02-22.332,22.334c0,11.854,20.262,39.548,21.125,40.721l0.805,1.096,c0.094,0.129,0.244,0.204,0.402,0.204c0.16,0,0.309-0.075,0.404-0.204l0.805-1.096c0.863-1.173,21.125-28.867,21.125-40.721,C76.883,27.967,66.863,17.947,54.549,17.947z M54.549,32.281c4.412,0,8,3.588,8,8c0,4.41-3.588,8-8,8c-4.41,0-8-3.59-8-8,C46.549,35.869,50.139,32.281,54.549,32.281z', 2897 fillColor: '#e0212f', 2898 fillOpacity: 1, 2899 scale: .75, 2900 strokeWeight: 0, 2901 anchor: new google.maps.Point(55, 80) 2902 }); 2903 } 2904 }); 2905 oms.addMarker(propertyMarker); 2906 2907 var content = '<div class="neighborhood-widget__marker neighborhood-widget__marker-property">' + 2908 f_buildMarkerHeading(overridePropertyLink, name) + 2909 '<p>' + addressLine1.replace(/,/g, '<br />') + '<br />' + city + ', ' + addressState + ' ' + addressPostalCode + '</p>' + 2910 '<p><strong>' + phonesNumber + '</strong></p>' + 2911 '<p><a href=" ' + overrideGetDirections + ' " target ="_blank" rel="noopener noreferrer"><strong>Get Directions</strong><span class="sr-only"> (opens in a new tab)</span></a></p>'; 2912 2913 content += '</div>'; 2914 2915 google.maps.event.addListener(propertyMarker, 'spider_click', function () { 2916 if (infoWindow != undefined) { 2917 infoWindow.close(); 2918 } 2919 infoWindow = new google.maps.InfoWindow({ content: content }); 2920 infoWindow.open(mapFullWidth, propertyMarker); 2921 2922 $('.neighborhood-widget__marker').parent().parent().parent().prev().find('> div').eq(7).css('border-top', '3px solid #e0212f;'); 2923 }); 2924 2925 var center; 2926 2927 function calculateCenter() { 2928 center = mapFullWidth.getCenter(); 2929 } 2930 2931 google.maps.event.addDomListener(mapFullWidth, 'idle', function () { 2932 calculateCenter(); 2933 }); 2934 2935 google.maps.event.addListener(mapFullWidth, 'spider_click', function (event) { 2936 infoWindow.close(); 2937 clicked = false; 2938 if ($(window).width() < 543) { 2939 hideCategories(); 2940 } 2941 }); 2942 2943 google.maps.event.addDomListener(window, 'resize', function () { 2944 mapFullWidth.setCenter(center); 2945 }); 2946 2947 google.maps.event.addListener(mapFullWidth, 'zoom_changed', boundsUpdated); 2948 2949 $(customMapPinsObj).each(function (i, v) { 2950 if (v.Category == null) { 2951 var generalIcon = { 2952 url: '\CMSScripts\Custom\RPWebParts\spiderfier\general.png', //placeResult.icon, 2953 scaledSize: new google.maps.Size(26, 26),
2954 anchor: new google.maps.Point(13, 13), 2955 }; 2956 var customMarkerOptions = { 2957 position: new google.maps.LatLng(v.Latitude, v.Longitude), 2958 map: mapFullWidth, 2959 icon: generalIcon, 2960 geometry: { 2961 location: new google.maps.LatLng(v.Latitude, v.Longitude) 2962 }, 2963 title: v.Name, 2964 name: v.Name, 2965 vicinity: v.Address, 2966 addressState: v.State, 2967 addressPostalCode: v.Zip, 2968 website: v.Url, 2969 city: v.City 2970 }; 2971 var customMarker = new google.maps.Marker(customMarkerOptions); 2972 markersArray.push(customMarker); 2973 2974 var customPin = '<div class="neighborhood-widget__marker neighborhood-widget__marker-custom">' + 2975 f_buildMarkerHeading(v.Url, v.Name) + 2976 '<p>' + v.Address + '<br />' + v.City + ', ' + v.State + ' ' + v.Zip + '</p>' + 2977 '<p><a href="https://www.google.com/maps/dir/?api=1&destination=' + v.Address.replace(/ /g, '+') + ',' + v.City.replace(/ /g, '+') + ',' + 2978 v.State + '" target="_blank" rel="noopener noreferrer"><strong>Get Directions</strong><span class="sr-only"> (opens in a new tab)</span></a></p></div>'; 2979 2980 google.maps.event.addListener(customMarker, 'spider_click', function () { 2981 if (infoWindow != undefined) { 2982 infoWindow.close(); 2983 } 2984 infoWindow = new google.maps.InfoWindow({ content: customPin }); 2985 infoWindow.open(mapFullWidth, customMarker); 2986 2987 $('.neighborhood-widget__marker').parent().parent().parent().prev().find('> div').eq(7).css('border-top', '3px solid #e0212f;'); 2988 }); 2989 } 2990 }); 2991 } 2992 2993 function circleDrawHandler(radius) { 2994 while (overlays[0]) { 2995 overlays.pop().setMap(null); 2996 } 2997 var circle = new google.maps.Circle({ 2998 center: origin, 2999 clickable: true, 3000 draggable: false, 3001 editable: false, 3002 fillColor: '#004de8', 3003 fillOpacity: 0.27, 3004 map: mapFullWidth, 3005 radius: radius, 3006 strokeColor: '#004de8', 3007 strokeOpacity: 0.62, 3008 strokeWeight: 1 3009 }); 3010 overlays.push(circle); 3011 google.maps.event.addListener(circle, 'rightclick', polygonDestructionHandler); 3012 }; 3013 3014 polygonDestructionHandler = function () { 3015 return this.setMap(null); 3016 }; 3017 3018 function boundsUpdated(event) { 3019 var z = mapFullWidth.getZoom(); 3020 var bounds = mapFullWidth.getBounds(); 3021 var center = mapFullWidth.getCenter(); 3022 var ne = bounds.getNorthEast();
3023 var sw = bounds.getSouthWest(); 3024 var nw = new google.maps.LatLng(ne.lat(), sw.lng()); 3025 var se = new google.maps.LatLng(sw.lat(), ne.lng()); 3026 3027 if (bounds && center) { 3028 var b = google.maps.geometry.spherical.computeDistanceBetween(nw, ne) / 2; 3029 var h = google.maps.geometry.spherical.computeDistanceBetween(center, ne); 3030 var radius = ((h - b) / 400); 3031 } 3032 } 3033 3034 function createMarker(placeResult, icon) { 3035 var iconList = ["entertainment", "schools", "food", "nightlife", "recreation", "professional", "residences", "shopping", "travel"]; 3036 3037 if (iconList.indexOf(icon) < 0) { 3038 icon = 'general'; 3039 } 3040 var markerIconUrl = '/templateresources/global/icons/map-icons/' + icon + '.png'; 3041 var markerIcon = { 3042 url: markerIconUrl, 3043 scaledSize: new google.maps.Size(26, 26), 3044 anchor: new google.maps.Point(13, 13), 3045 }; 3046 3047 var markerOptions = { 3048 map: mapFullWidth, 3049 position: placeResult.geometry.location, 3050 title: placeResult.name, 3051 icon: markerIcon, 3052 zIndex: 1 3053 }; 3054 3055 var marker = new google.maps.Marker(markerOptions); 3056 google.maps.event.addListener(marker, 'spider_format', function (status) { 3057 if (status == OverlappingMarkerSpiderfier.markerStatus.SPIDERFIABLE) { 3058 marker.setIcon({ 3059 url: '/CMSScripts/Custom/RPWebParts/spiderfier/general-plus.png', 3060 scaledSize: new google.maps.Size(26, 26), 3061 anchor: new google.maps.Point(13, 13) 3062 }); 3063 } 3064 else { 3065 marker.setIcon({ 3066 url: markerIconUrl, 3067 scaledSize: new google.maps.Size(26, 26), 3068 anchor: new google.maps.Point(13, 13), 3069 }); 3070 } 3071 }); 3072 oms.addMarker(marker); 3073 markersArray.push(marker); 3074 3075 google.maps.event.addListener(marker, 'spider_click', function () { 3076 clicked = true; 3077 3078 getPlaceDetails(placeResult, marker); 3079 this.setOptions({ zIndex: 10 }); 3080 }); 3081 3082 google.maps.event.addListener(marker, 'closeclick', function () { 3083 clicked = false; 3084 }); 3085 } 3086 3087 function isValid(input1, input2) { 3088 if (input1 != undefined || input2 != undefined) { 3089 return true; 3090 } 3091 else { 3092 return false; 3093 } 3094 } 3095 3096 function getPlaceDetails(placeResult, marker){ 3097 if (infoWindow != undefined) { 3098 infoWindow.close(); 3099 } 3100 3101 var request = { 3102 reference: placeResult.reference 3103 }; 3104 3105 mapService.getDetails(request, function(details, status) { 3106 var priceRating = ''; 3107 if (details.price_level != undefined) { 3108 for (i = 1; i <= details.price_level; i++) { 3109 priceRating += '$'; 3110 } 3111 } 3112 3113 var photoUrl = ''; 3114 if (details.photos != undefined) { 3115 if (details.photos.length > 0) { 3116 photoUrl = details.photos[0].getUrl({ 'maxWidth': 300, 'maxHeight': 300 }); 3117 } 3118 } 3119 3120 var addr = details.address_components; 3121 var content = '<div class="neighborhood-widget__marker ' + ((photoUrl != '') ? 'has-photo' : '') + '">'; 3122 content += (photoUrl != '') ? '<div class="photo" style="background-image: url(' + photoUrl + ')"></div>' : ''; 3123 content += f_buildMarkerHeading(details.url, details.name); 3124 content += (details.rating != undefined) ? '<span class="rating">' + details.rating + '</span>' : ''; 3125 content += '<p>'; 3126 content += (getAddressComponent(addr, 'street_number') != undefined) ? getAddressComponent(addr, 'street_number') + ' ' : ''; 3127 content += (getAddressComponent(addr, 'route', 'short') != undefined) ? getAddressComponent(addr, 'route', 'short') : ''; 3128 content += (isValid(getAddressComponent(addr, 'street_number'), getAddressComponent(addr, 'route', 'short'))) ? '<br />' : ''; 3129 content += (getAddressComponent(addr, 'locality') != undefined) ? getAddressComponent(addr, 'locality') + ', ' : ''; 3130 content += (getAddressComponent(addr, 'administrative_area_level_1', 'short') != undefined) ? getAddressComponent(addr, 'administrative_area_level_1', 'short') + ' ' : ''; 3131 content += (getAddressComponent(addr, 'postal_code', 'short') != undefined) ? getAddressComponent(addr, 'postal_code', 'short') : ''; 3132 content += '</p>'; 3133 content += (details.formatted_phone_number != undefined) ? '<p><strong>' + details.formatted_phone_number + '</strong></p>' : ''; 3134 content += '<p><a href="https://www.google.com/maps/dir/?api=1&destination=' + details.formatted_address + '" target="_blank" rel="noopener noreferrer"><strong>Get Directions</strong><span class="sr-only"> (opens in a new tab)</span></a>' + ((priceRating != '') ? ' • <span class="price">' + priceRating + '</span>' : '') + '</p>'; 3135 content += '</div>'; 3136 3137 infoWindow = new google.maps.InfoWindow({ content: content }); 3138 3139 infoWindow.open(mapFullWidth, marker); 3140 }); 3141 } 3142 3143 function getAddressComponent(components, type, length){ 3144 var str; 3145 $(components).each(function(){
3146 if (this.types[0] == type){ 3147 str = (length == 'short') ? this.short_name : this.long_name; 3148 return; 3149 } 3150 }); 3151 return str; 3152 } 3153 3154 function findByKeyword(keyword, icon) { 3155 currentKeyword = keyword; 3156 currentIcon = icon; 3157 3158 var excludedKeywords = $.parseJSON('[]'); 3159 var excludedBusinesses = $.parseJSON('[]'); 3160 var filteredWords = "sex,strip club,adult entertainment,strip bar,XXX,porn,escort,adult video,gentlemen's club,adult bookstore,adult club"; 3161 if (excludedKeywords.length > 0) { 3162 filteredWords += ',' + excludedKeywords.join(','); 3163 } 3164 if (excludedBusinesses.length > 0) { 3165 filteredWords += ',' + excludedBusinesses.join(','); 3166 } 3167 var fwordsArray = filteredWords.split(","); 3168 var request = { 3169 keyword: keyword, 3170 location: origin, 3171 radius: currentRadius 3172 }; 3173 3174 $('.neighborhood-widget__loader').show(); 3175 3176 mapService.nearbySearch(request, function (results, status) { 3177 deleteOverlays(); 3178 var customPinExists = false; 3179 $(customMapPinsObj).each(function (i, v) { 3180 $(v.Category).each(function (j, w) { 3181 if (w == icon || (!icon && keyword && w == keyword.trim())) { 3182 customPinExists = true; 3183 3184 var markerIconUrl = '/templateresources/global/icons/map-icons/' + (icon ? icon : 'general') + '.png'; 3185 var markerIcon = { 3186 url: markerIconUrl, 3187 scaledSize: new google.maps.Size(26, 26), 3188 anchor: new google.maps.Point(13, 13) 3189 }; 3190 3191 var customMarkerOptions = { 3192 position: new google.maps.LatLng(v.Latitude, v.Longitude), 3193 map: mapFullWidth, 3194 icon: markerIcon, 3195 geometry: { 3196 location: new google.maps.LatLng(v.Latitude, v.Longitude) 3197 }, 3198 title: v.Name, 3199 name: v.Name, 3200 vicinity: v.Address, 3201 addressState: v.State, 3202 addressPostalCode: v.Zip, 3203 website: v.Url, 3204 city: v.City 3205 }; 3206 var customMarker = new google.maps.Marker(customMarkerOptions); 3207 google.maps.event.addListener(customMarker, 'spider_format', function (status) { 3208 if (status == OverlappingMarkerSpiderfier.markerStatus.SPIDERFIABLE) { 3209 customMarker.setIcon({ 3210 url: '/CMSScripts/Custom/RPWebParts/spiderfier/general-plus.png', 3211 scaledSize: new google.maps.Size(26, 26), 3212 anchor: new google.maps.Point(13, 13) 3213 }); 3214 } 3215 else { 3216 customMarker.setIcon({ 3217 url: markerIconUrl, 3218 scaledSize: new google.maps.Size(26, 26), 3219 anchor: new google.maps.Point(13,
321913), 3220 }); 3221 } 3222 }); 3223 3224 oms.addMarker(customMarker); 3225 markersArray.push(customMarker); 3226 3227 var customPin = '<div class="neighborhood-widget__marker neighborhood-widget__marker-custom">' + 3228 f_buildMarkerHeading(v.Url, v.Name) + 3229 '<p>' + v.Address + '<br />' + v.City + ', ' + v.State + ' ' + v.Zip + '</p>' + 3230 '<p><a href="https://www.google.com/maps/dir/?api=1&destination=' + v.Address.replace(/ /g, '+') + ',' + v.City.replace(/ /g, '+') + ',' + 3231 v.State + '" target="_blank" rel="noopener noreferrer"><strong>Get Directions</strong><span class="sr-only"> (opens in a new tab)</span></a></p></div>'; 3232 3233 google.maps.event.addListener(customMarker, 'spider_click', function () { 3234 if (infoWindow != undefined) { 3235 infoWindow.close(); 3236 } 3237 infoWindow = new google.maps.InfoWindow({ content: customPin }); 3238 infoWindow.open(mapFullWidth, customMarker); 3239 3240 $('.neighborhood-widget__marker').parent().parent().parent().prev().find('> div').eq(7).css('border-top', '3px solid #e0212f;'); 3241 }); 3242 } 3243 }); 3244 }); 3245 3246 if (status == google.maps.places.PlacesServiceStatus.OK) { 3247 $(results).each(function () { 3248 var temp = 0; 3249 for (var i = 0; i < fwordsArray.length; i++) { 3250 var re = new RegExp('(^|\\s+)' + fwordsArray[i] + '(\\s+|$)', 'gi'); 3251 if (this.name.match(re) != null) { 3252 temp += this.name.match(re); 3253 } 3254 } 3255 if (temp == 0 && ('false' == 'false')) { 3256 createMarker(this, currentIcon); 3257 } 3258 }); 3259 3260 if (markersArray.length > 0) { 3261 var bounds = new google.maps.LatLngBounds(); 3262 3263 for (var i = 0; i < markersArray.length; i++) { 3264 bounds.extend(markersArray[i].getPosition()); 3265 } 3266 3267 bounds.extend(origin); 3268 3269 mapFullWidth.fitBounds(bounds); 3270 } 3271 } 3272 3273 if ((status == "ZERO_RESULTS" && !customPinExists) || (markersArray.length == 0)) { 3274 $('.search-no-results').addClass('show-message'); 3275 } 3276 else { $('.search-no-results').removeClass('show-message'); } 3277 $('.neighborhood-widget__loader').hide('slow'); 3278 }); 3279 } 3280 3281 function deleteOverlays() { 3282 if (markersArray) { 3283 while (markersArray[0]) { 3284 markersArray.pop().setMap(null); 3285 } 3286 } 3287 } 3288 3289 var categoriesHidden = false; 3290 3291 $(function () { 3292 var mainKeywords = 'recreation|residences|travel'; 3293 $.each(mainKeywords.split('|'), function (idx, val) { 3294 if (val != '') { 3295 $('.neighborhood-widget__categories ul li[data-icon=' + val + ']').hide(); 3296 } 3297 }); 3298 3299 var customKeywords = $.parseJSON('["Transportation","Schools"]'); 3300 $.each(customKeywords, function (idx, val) { 3301 keywordItem = '<li role="button" aria-label="' + val + '" data-icon=""><span class="fa fa-circle-o"></span><div class="neighborhood-button-text"> ' + val + '</div></li>'; 3302 $('.neighborhood-widget__categories ul').append(keywordItem); 3303 }); 3304 3305 $('.neighborhood-widget__categories li').click(function () { 3306 $(this).addClass('active'); 3307 $(this).siblings().removeClass('active'); 3308 3309 findByKeyword($(this).text(), $(this).data('icon')); 3310 $('.neighborhood-widget__search input').val($(this).text()); 3311 3312 if ($(window).width() < 768) { 3313 hideCategories(); 3314 } 3315 }); 3316 3317 $('.neighborhood-widget__handle').click(function () { 3318 if (!categoriesHidden) { 3319 hideCategories(); 3320 } else { 3321 showCategories(); 3322 } 3323 }); 3324 3325 $('.neighborhood-widget__search input').click(function (e) { 3326 $('.search-no-results').removeClass('show-message'); 3327 showCategories(); 3328 if ($(window).width() < 768 && $('.neighborhood-widget__nav').hasClass('expanded')) { 3329 blur(); 3330 } 3331 }); 3332 3333 $('.neighborhood-widget__search input').keypress(function (e) { 3334 if (e.which == 13) { 3335 findByKeyword($(this).val(), 'general'); 3336 hideCategories(); 3337 $('.neighborhood-widget__categories li').removeClass('active'); 3338 $('.neighborhood-widget__search input').blur(); 3339 return false; 3340 } 3341 }); 3342 3343 $('.neighborhood-widget__search .fa-search').click(function () { 3344 findByKeyword($('.neighborhood-widget__search input').val(), 'general'); 3345 hideCategories(); 3346 $('.neighborhood-widget__categories li').removeClass('active'); 3347 }); 3348 3349 var navPosition = $('.neighborhood-widget__nav').position(); 3350 var walkScoreHeight = ($('.walk-score-container').length >
3350 0) ? $('.neighborhood-widget__walkscore').height() + 30 : 0; 3351 $('.neighborhood-widget__categories').css('max-height', $('.neighborhood-widget__categories').parent().parent().height() - (90 + navPosition.top) - walkScoreHeight); 3352 3353 function hideCategories() { 3354 $('.neighborhood-widget__categories').css({ 'margin-top': -$('.neighborhood-widget__categories').innerHeight(), 'opacity': 0 }) 3355 $('.neighborhood-widget__nav').removeClass('expanded'); 3356 categoriesHidden = true; 3357 } 3358 3359 function showCategories() { 3360 $('.neighborhood-widget__categories').css({ 'margin-top': 0, 'opacity': 1 }); 3361 $('.neighborhood-widget__nav').addClass('expanded'); 3362 categoriesHidden = false; 3363 } 3364 3365 $(window).resize(function () { 3366 var navPosition = $('.neighborhood-widget__nav').position(); 3367 var walkScoreHeight = ($('.walk-score-container').length > 0) ? $('.neighborhood-widget__walkscore').height() + 30 : 0; 3368 $('.neighborhood-widget__categories').css('max-height', $('.neighborhood-widget__categories').parent().parent().height() - (90 + navPosition.top) - walkScoreHeight); 3369 }); 3370 }); 3371 } 3372 </script>
3372 3373 3374 <div id="mapFullWidth"></div> 3375 3376 <div class="neighborhood-widget__loader"> 3377 <div class="loader"> 3378 <svg class="circular" viewbox="25 25 50 50"> 3379 <circle class="path" cx="50" cy="50" r="20" fill="none" stroke-width="2" stroke-miterlimit="10"></circle> 3380 </svg> 3381 </div> 3382 </div> 3383 3384 <div class="neighborhood-widget__nav expanded"> 3385 <div class="neighborhood-widget__search"> 3386 <div class="form-group"> 3387 <input type="text" class="form-control" placeholder="Search..." aria-label="search" tabindex="0" /> <span class="fa fa-search" aria-hidden="true"></span> 3388 </div> 3389 </div> 3390 3391 <div class="neighborhood-widget__categories"> 3392 <ul> 3393 <li data-icon="entertainment" role="button" aria-label="arts and entertainment"><span class="fa fa-paint-brush"></span><div class="neighborhood-button-text"> Arts & Entertainment</div></li> 3394 <li data-icon="schools" role="button" aria-label="colleges and universities"><span class="fa fa-graduation-cap"></span><div class="neighborhood-button-text"> Colleges & Universities</div></li> 3395 <li data-icon="food" role="button" aria-label="food"><span class="fa fa-cutlery"></span><div class="neighborhood-button-text"> Food</div></li> 3396 <li data-icon="nightlife" role="button" aria-label="nightlife spots"><span class="fa fa-beer"></span><div class="neighborhood-button-text"> Nightlife Spots</div></li> 3397 <li data-icon="recreation" role="button" aria-label="outdoors and recreation"><span class="fa fa-soccer-ball-o"></span><div class="neighborhood-button-text"> Outdoors & Recreation</div></li> 3398 <li data-icon="professional" role="button" aria-label="professional"><span class="fa fa-suitcase"></span><div class="neighborhood-button-text"> Professional</div></li> 3399 <li data-icon="residences" role="button" aria-label="residences"><span class="fa fa-building"></span><div class="neighborhood-button-text"> Residences</div></li> 3400 <li data-icon="shopping" role="button" aria-label="shops and services"><span class="fa fa-shopping-bag"></span><div class="neighborhood-button-text"> Shops & Services</div></li> 3401 <li data-icon="travel" role="button" aria-label="travel and transport"><span class="fa fa-bus"></span><div class="neighborhood-button-text"> Travel & Transport</div></li> 3402 </ul> 3403 </div> 3404 3405 <div class="neighborhood-widget__handle"> 3406 <span class="icon-bar"></span> 3407 <span class="icon-bar"></span> 3408 </div> 3409 </div> 3410 3411 <div class="neighborhood-widget__walkscore"></div> 3412 <div class="search-no-results">No Results Found</div> 3413 3414 </div> 3415 3416</div> 3417</div><div class="address-info-bar"> 3418 <div id="info-address" class="col-sm-8"><i class="fa fa-map-marker" aria-hidden="true"></i>1331 River Street, Honolulu, HI 96817 3419 </div> 3420 <a href="http://maps.google.com/?q=1331 River Street, Honolulu, HI 96817" target="_blank" id="directionsLink" role="button" class="col-sm-4">Get Directions</a> 3421 <div class="clearfix"></div> 3422</div><div id="" class="clearfix"><div class="col-lg-2 col-md-1 col-sm-1"></div> 3423<div class="clearfix col-lg-8 col-md-10 col-sm-10 column-wrapper home-content-sub-content"> 3424 <div class="home-column"> 3425 <div class="wrapper col-lg-12"> 3426 <h1>NEIGHBORHOOD</h1> 3427 <div class="main-content"> 3428 3429 </div> 3430 </div> 3431 </div> 3432</div></div></div></section> 3433 3434<section id="residents" class="block-area container-fluid"><div id="" class="home-banner residents-banner black-border row"><div class="banner-overlay"></div><div class="content"> 3435 <h2></h2> 3436 <ul class="resident-links resident-links-desktop"> 3437 3438 <li> 3439 <a id="resident-login" class="resident-link" href="https://property.onesite.realpage.com/welcomehome/home/login?siteId=5119067#url=%23login" target="_blank"> 3440 Log In 3441 </a> 3442 </li> 3443 3444 3445 <li> 3446 <a id="resident-login" class="resident-link" href="https://property.onesite.realpage.com/welcomehome/home/login?siteId=5119067#url=%23login" target="_blank"> 3447 Pay Rent 3448 </a> 3449 </li> 3450 3451 3452 <li> 3453 <a id="resident-login" class="resident-link" href="https://property.onesite.realpage.com/welcomehome/home/login?siteId=5119067#url=%23login" target="_blank"> 3454 Service Request 3455 </a> 3456 </li> 3457 3458 </ul> 3459</div></div><ul class="resident-links resident-links-mobile"> 3460 3461 <li> 3462 <a id="resident-login" class="resident-link" href="https://property.onesite.realpage.com/welcomehome/home/login?siteId=5119067#url=%23login" target="_blank"> 3463 Log In 3464 </a> 3465 </li> 3466 3467 3468 <li> 3469 <a id="resident-login" class="resident-link" href="https://property.onesite.realpage.com/welcomehome/home/login?siteId=5119067#url=%23login" target="_blank"> 3470 Pay Rent 3471 </a> 3472 </li> 3473 3474 3475 <li> 3476 <a id="resident-login" class="resident-link" href="https://property.onesite.realpage.com/welcomehome/home/login?siteId=5119067#url=%23login" target="_blank"> 3477 Service Request 3478 </a> 3479 </li> 3480 3481</ul><div id="" class="clearfix"><div class="row res-row"> 3482 <div class="col-lg-2 col-md-1 col-sm-1"></div> 3483 <div class="clearfix col-lg-8 col-md-10 col-sm-10 column-wrapper home-content-sub-content"> 3484 <div class="home-column"> 3485 <div class="wrapper col-lg-12"> 3486 <h1>RESIDENT PORTAL</h1> 3487 <div class="main-content"> 3488 <div style="text-align: center;"><span style="text-align: start; font-size: 16px;">We've set up a quick and easy way for you to pay rent or submit a service request online so you can focus on the more important and fun things in life!</span></div><div style="text-align: center;"><span style="text-align: start; font-size: 16px;"> Visit our Resident Portal and pay rent with a simple click of the button. Payments made with your bank account are free so please have your routing and account number handy. </span><br /></div> 3489 </div> 3490 3491 </div> 3492 </div> 3493 </div> 3494 <div class="col-lg-2 col-md-1 col-sm-1"></div> 3495</div> 3496</div></section> 3497<section id="contact" class="block-area container-fluid"><div class="col-lg-12"><hr class="floor-plans-divider" /></div><div class="contact-title-container"> 3498<h2 class="contact-title">CONTACT</h2> 3499</div><div id="" class="clearfix"><div class="col-lg-3 col-md-1 col-sm-1"></div> 3500<div class="clearfix col-lg-6 col-md-10 col-sm-10 column-wrapper home-content-sub-content"> 3501 <div class="home-column"> 3502 <div class="wrapper"> 3503 <h1></h1> 3504 <div class="main-content container-fluid"> 3505 <p style="text-align: center;"><span style="font-size: 16px;">If youâre interested in learning more about Halewai'olu Senior Residences, fill out the contact form below or stop by the leasing office today!</span></p><p style="text-align: center;"><span style="font-family: "open sans", sans-serif; font-size: 16px; font-weight: 700; text-align: left;">We are now leasing 1 and 2 bedroom apartment homes with immediate move-ins.<br /></span><span style="font-family: "open sans", sans-serif; font-size: 16px; font-weight: 700; text-align: left;">Donât miss your chance, </span><a href="https://8979750aff.onlineleasing.realpage.com/#k=51889" target="_blank" style="font-family: "open sans", sans-serif; font-size: 16px; font-weight: 700; text-align: left; background-color: rgb(255, 255, 255);">Apply Today</a><span style="font-family: "open sans", sans-serif; font-size: 16px; font-weight: 700; text-align: left;">!</span></p><p style="text-align: center;"><span style="font-size: 16px;">*Halewai'olu Senior Residences is an affordable property meaning each applicant must meet <a href="https://www.liveathsr.com/Specials.aspx?preview=1" target="_blank">Income Requirements</a></span><br /></p><p style="text-align: center;"><span style="font-size: 16px;"><br /></span></p> 3506 </div> 3507 </div> 3508 </div> 3509</div> 3510<div class="col-lg-3 col-md-1 col-sm-1"></div> 3511</div><div class="container-fluid"> 3512<div class="row"> 3513<div class="col-lg-1"></div><div id="" class="col-lg-6 contact-form-container">
3514<script type="text/javascript"> 3515 var rpData = null; 3516 var listofReasons = ''; 3517 var defaultSource = ''; 3518 var hideRefer = 'false'; 3519 var hideBed = 'false'; 3520 var pmcName = 'Michaels Management Services, LLC'; 3521 var overridePrivacy = 'href="/Privacy-Policy.aspx" target="_blank" rel="noopener noreferrer"'; 3522 var contactLeadSources = '<select tabindex="0" class="body-txt1" id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_usersource" name="usersource" aria-label="How did you find out about our rental community?"><option value="">-Select Source-</option><option value="S000000036">Apartment Guide</option><option value="S000000041">ApartmentFinder.com</option><option value="S000000003">ApartmentGuide.com</option><option value="S000000004">ApartmentMatching.com</option><option value="S000000042">ApartmentRatings.com</option><option value="S000000005">Apartments.com</option><option value="S000000019">Billboard</option><option value="S000000020">Brochure/Flyer</option><option value="S000000044">CraigsList.com</option><option value="S000000027">Current Resident</option><option value="S000000021">Drive by</option><option value="S000000008">ForRent.com</option><option value="S000000040">Google.com</option><option value="S000000002">LivingChoices.com</option><option value="S000000015">Locator Service</option><option value="S000000049">Move.com</option><option value="S000000045">MoveForFree.com</option><option value="S000000039">MyNewPlace.com</option><option value="S000000026">Other</option><option value="S000000029">Prior resident</option><option value="S000000001">Property web site</option><option value="S000000025">Radio Advertising</option><option value="S000000030">Referral companies/merchants</option><option value="S000000012">Rent.com</option><option value="S000000010">Rentals.com</option><option value="S000000023">Sign</option><option value="S000000048">Yahoo.com</option><option value="S000000022">Yellow pages</option></select>'; 3523 var internationalProperty = 'false'; //internationalProperty = 'true';//debug 3524 var disableReferralTracking = 'False'; 3525 var countryCode = 'USA'; 3526 var ipAddress = '63.141.58.252'; 3527 var enableRecaptcha = 'true'; 3528 var pageName = 'General'; 3529 var cmsSiteId = '69079'; 3530 var widgetName = 'rpWebpart_GoogleRecaptcha'; 3531 var timeoutValue = 120000; 3532 var googleAnalyticsId = ''; 3533 3534 var formSuccess = false; 3535 var captchaToken = ""; 3536 var o = {}; 3537 3538 var kpv = { 3539 "Studio+" : { "key" : 192, "bed" : 0, "bath" : 0 }, 3540 "S Bed /1 Bath" : { "key" : 192, "bed" : 5, "bath" : 1 }, 3541 "S Bed /1.5 Bath" : { "key" : 192, "bed" : 5, "bath" : 1.5 }, 3542 "1 Bed /1 Bath" : { "key" : 193, "bed" : 1, "bath" : 1 }, 3543 "1 Bed /1.5 Bath" : { "key" : 193, "bed" : 1, "bath" : 1.5 }, 3544 "1 Bed /2 Bath" : { "key" : 194, "bed" : 1, "bath" : 2 }, 3545 "1 Bed /2.5 Bath" : { "key" : 194, "bed" : 1, "bath" : 2.5 }, 3546 "2 Bed /1 Bath" : { "key" : 195, "bed" : 2, "bath" : 1 }, 3547 "2 Bed /1.5 Bath" : { "key" : 195, "bed" : 2, "bath" : 1.5 }, 3548 "2 Bed /2 Bath" : { "key" : 196, "bed" : 2, "bath" : 2 }, 3549 "2 Bed /2.5 Bath" : { "key" : 196, "bed" : 2, "bath" : 2.5 }, 3550 "3 Bed /1 Bath" : { "key" : 197, "bed" : 3, "bath" : 1 }, 3551 "3 Bed /1.5 Bath" : { "key" : 197, "bed" : 3, "bath" : 1.5 }, 3552 "3 Bed /2 Bath" : { "key" : 198, "bed" : 3, "bath" : 2 }, 3553 "3 Bed /2.5 Bath" : { "key" : 198, "bed" : 3, "bath" : 2.5 }, 3554 "3 Bed /3 Bath": { "key": 199, "bed": 3, "bath": 3 }, 3555 "3 Bed /3.5 Bath" : { "key" : 199, "bed" : 3, "bath" : 3.5 }, 3556 "4 Bed /1 Bath" : { "key" : 200, "bed" : 4, "bath" : 1 }, 3557 "4 Bed /1.5 Bath" : { "key" : 200, "bed" : 4, "bath" : 1.5 }, 3558 "4 Bed /2 Bath" : { "key" : 201, "bed" : 4, "bath" : 2 }, 3559 "4 Bed /2.5 Bath" : { "key" : 201, "bed" : 4, "bath" : 2.5 }, 3560 "4 Bed /3 Bath" : { "key" : 202, "bed" : 4, "bath" : 3 }, 3561 "4 Bed /3.5 Bath" : { "key" : 202, "bed" : 4, "bath" : 3.5 }, 3562 "4 Bed /4 Bath" : { "key" : 202, "bed" : 4, "bath" : 4 },
3563 "5 Bed /1 Bath": { "key": 202, "bed": 5, "bath": 1 }, 3564 "5 Bed /1.5 Bath": { "key": 202, "bed": 5, "bath": 1.5 }, 3565 "5 Bed /2 Bath": { "key": 202, "bed": 5, "bath": 2 }, 3566 "5 Bed /2.5 Bath": { "key": 202, "bed": 5, "bath": 2.5 }, 3567 "5 Bed /3 Bath": { "key": 202, "bed": 5, "bath": 3 }, 3568 "5 Bed /3.5 Bath": { "key": 202, "bed": 5, "bath": 3.5 } 3569 }; 3570 3571 $(document).ready(function () { 3572 var datePicker_dateFormat = (internationalProperty == 'true') ? "dd/mm/yy" : "mm/dd/yy"; 3573 $('#userIpAddress').val(ipAddress); 3574 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_movedate').datepicker({ 3575 startDate: new Date(), 3576 autoHide: true, 3577 dateFormat: datePicker_dateFormat, 3578 autoclose: true 3579 }); 3580 3581 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_movedate').on('pick.datepicker', function (e) { 3582 var postDate = $(this).datepicker('formatDate', e.date); 3583 $(this).val(postDate); 3584 isFieldValid($(this)); 3585 $(this).data('post-data', postDate); 3586 }); 3587 3588 // WCAG 2.4.11 â close the datepicker when focus lands on a real element outside it, 3589 // so an open calendar can't obscure the next focused field. React to focus LANDING 3590 // somewhere (document-level focusin), not to #movedate blurring: the plugin's 3591 // month/year nav <li> arrows aren't focusable, so clicking them blurs #movedate 3592 // without focus landing anywhere, and a focusout-only check never gets a second 3593 // chance to run once #movedate is already blurred. 3594 var $movedateFloat = $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_movedate'); 3595 $(document).on('focusin', function (e) { 3596 if (e.target === $movedateFloat[0]) return; 3597 if ($(e.target).closest('.datepicker-container').length) return; 3598 $movedateFloat.datepicker('hide'); 3599 }); 3600 3601 $.ajax({ 3602 type: 'GET', 3603 url: 'CmsSiteManager/callback.aspx?act=Proxy/GetFloorPlans', 3604 dataType: 'jsonp', 3605 timeout: timeoutValue, 3606 success: function (data) { 3607 rpData = data; 3608 buildBedRoomSelect(); 3609 }, 3610 error: function (response) { 3611 if (response.statusText === "timeout") { 3612 $('#pnlMobile').html("<div class='timeout-message'><div class='timeout-icon'><img src='/globalresources/widgets/images/TimeOutSessionIcon.png' alt='' /></div><div class='timeout-text-message'><b>Time Out Error</b>.<br> Refresh Page or Try Again Later</div></div>"); 3613 } 3614 } 3615 }); 3616 3617 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contactus-float-input-div.reason').append(contactLeadSources); 3618 if (hideBed.toLowerCase() == 'true') { 3619 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contactus-float-input-div.bed').hide(); 3620 } 3621 if (hideRefer.toLowerCase() == 'true') { 3622 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contactus-float-input-div.reason').hide(); 3623 } else 3624 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf #contact .contactus-float-input-div.comments-txt').css('height', '186px'); 3625 3626 if (defaultSource == 0) 3627 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_usersource').val(''); 3628 else if (defaultSource) 3629 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_usersource').val(defaultSource); 3630 else 3631 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_usersource').val(''); 3632 3633 if (disableReferralTracking.toLowerCase() != 'true' && matchedSourceId) { 3634 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_usersource').val(matchedSourceId); 3635 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form #contactusReason').hide(); 3636 } 3637 3638 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf #dayPhone1').on("keyup", function () { 3639 var value = $(this).val(); 3640 var regex1 = /[^[0-9 +]]*/gi; 3641 var regex2 = /[^[0-9]]*/gi; 3642 var newValue = value.substring(0, 1).replace(regex1, '') + value.substring(1).replace(regex2, ''); 3643 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf #dayPhone1').val(newValue); 3644 }); 3645 3646 }); 3647 3648 function buildBedRoomSelect() { 3649 var bathRooms = 0; 3650 var bedRooms = 0; 3651 3652 var countUnit = 1; 3653 3654 for (var i = 0; i < rpData.floorplans.length; i++) { 3655 var currentbathRooms = rpData.floorplans[i].bathRooms; 3656 var currentbedRooms = rpData.floorplans[i].bedRooms; 3657 if (bathRooms != currentbathRooms || bedRooms != currentbedRooms) { 3658 var str = currentbedRooms + ' Bed /' + currentbathRooms + ' Bath'; 3659
3660 try { 3661 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf #bedbathid').append('<option value="' + kpv[str]["key"] + '" class="text">' + str + '</option>'); 3662 } catch (err) { 3663 //This error typically happens when it cannot find the str and consaquently cannot find the key. 3664 } 3665 3666 bathRooms = currentbathRooms; 3667 bedRooms = currentbedRooms; 3668 countUnit++; 3669 } 3670 } 3671 } 3672 3673 function f_getCookie(cookieName) { 3674 var cookieValue = document.cookie; 3675 var cookieStart = cookieValue.indexOf(" " + cookieName + "="); 3676 if (cookieStart == -1) { 3677 cookieStart = cookieValue.indexOf(cookieName + "="); 3678 } 3679 if (cookieStart == -1) { 3680 cookieValue = null; 3681 } 3682 else { 3683 cookieStart = cookieValue.indexOf("=", cookieStart) + 1; 3684 var cookieEnd = cookieValue.indexOf(";", cookieStart); 3685 if (cookieEnd == -1) { 3686 cookieEnd = cookieValue.length; 3687 } 3688 cookieValue = unescape(cookieValue.substring(cookieStart, cookieEnd)); 3689 } 3690 return cookieValue; 3691 } 3692 3693 function floatValidPhone(b) { 3694 var a = window.event ? b.keyCode : b.which; 3695 3696 if (internationalProperty == 'true' && $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf #dayPhone1').val().length == 0 && b.shiftKey && b.keyCode == 43) 3697 return true; 3698 3699 if (a == 0 || a == 8) 3700 return true; 3701 if (a > 47 && a < 58) 3702 return true; 3703 else 3704 return false; 3705 } 3706 3707 3708</script>
3708 3709<style> 3710 .contact-mobile-form .reqErr { 3711 border: 1px solid red !important; 3712 } 3713 .contact-mobile-form .error-msg { 3714 display:inline-block; 3715 color:red; 3716 margin-top:10px; 3717 } 3718 .grecaptcha-badge{ 3719 bottom: 100px !important; 3720 } 3721 .contact-mobile-form input:focus-visible, 3722 .contact-mobile-form select:focus-visible, 3723 .contact-mobile-form textarea:focus-visible, 3724 .contact-mobile-form button:focus-visible, 3725 .contact-mobile-form input:focus, 3726 .contact-mobile-form select:focus, 3727 .contact-mobile-form textarea:focus, 3728 .contact-mobile-form button:focus { 3729 outline-offset: 2px; 3730 box-shadow: 0 0 0 2px #fff, 0 0 0 4px #000 !important; 3731 } 3732</style> 3733 3734<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf"> 3735 3736 <div id="pnlMobile" class="mobile cf-pnlMobile timeout-error-contact"> 3737 <div class="contact-mobile-form"> 3738 <input name="pid" type="hidden" id="pid" /> 3739 <input name="lcid" type="hidden" id="lcid" /> 3740 <input name="cid" type="hidden" id="cid" /> 3741 <input name="userip" type="hidden" id="userIpAddress" /> 3742 <div id="contactusFirstName" class="contactus-float-input-div"> 3743 <input id="firstname" name="firstname" type="text" placeholder="First name" maxlength="40" tabindex="0" class="body-txt1 required" title="First name" aria-label="first name" autocomplete="given-name" aria-describedby="firstname-error" data-error-message="First name is required" /> 3744 <span class="required-field">*</span> 3745 <span id="firstname-error" class="field-error" role="alert"></span> 3746 </div> 3747 <div id="contactusLastName" class="contactus-float-input-div"> 3748 <input id="lastname" name="lastname" type="text" placeholder="Last name" maxlength="40" tabindex="0" class="body-txt1 required" title="Last name" aria-label="last name" autocomplete="family-name" aria-describedby="lastname-error" data-error-message="Last name is required" /> 3749 <span class="required-field">*</span> 3750 <span id="lastname-error" class="field-error" role="alert"></span> 3751 </div> 3752 <div id="contactusEmail" class="contactus-float-input-div"> 3753 <input id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_email" name="email" type="text" placeholder="Email" maxlength="40" tabindex="0" class="body-txt1 required email" title="Email" aria-label="email" autocomplete="email" aria-describedby="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_email-error" data-error-message="Valid email address is required" /> 3754 <span class="required-field">*</span> 3755 <span id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_email-error" class="field-error" role="alert"></span> 3756 </div> 3757 <div id="contactusEmailCtrl" class="contactus-float-input-div"> 3758 <input tabindex="-1" id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_e-mail" type="text" class="hpInput" aria-hidden="true" style="display:none" autocomplete="off" /><p style="display:none">Do not fill out this input form, it is for bot control purposes only.</p> 3759 </div> 3760 <div id="contactusPhone" class="contactus-float-input-div"> 3761 <input id="dayPhone1" name="dayPhone1" type="text" placeholder="Phone number" maxlength="21" tabindex="0" class="body-txt1 required" title="Phone number" aria-label="phone number" autocomplete="tel" aria-describedby="dayPhone1-error" data-error-message="Valid phone number is required" onkeypress="return floatValidPhone(event);" /> 3762 <span class="required-field">*</span> 3763 <span id="dayPhone1-error" class="field-error" role="alert"></span> 3764 </div> 3765 <div id="contactusBedBath" class="contactus-float-input-div bed"> 3766 <select id="bedbathid" name="bedbathid" tabindex="0" class="body-txt1" aria-label="bedrooms"> 3767 <option value="">Select Bedrooms</option> 3768 </select> 3769 </div> 3770 <div id="contactusMoveDate" class="contactus-float-input-div move-in"> 3771 <input id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_movedate" name="movedate" tabindex="0" type="text" class="body-txt1 required" readonly="readonly" aria-label="move in date" title="Move In Date" placeholder="Move In Date" autocomplete="off" aria-describedby="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_movedate-error" data-error-message="Move-in date is required" />
3772 <span class="required-field">*</span> 3773 <span id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_movedate-error" class="field-error" role="alert"></span> 3774 </div> 3775 <div id="contactusReason" class="contactus-float-input-div reason"></div> 3776 <div id="contactusComments" class="contactus-float-input-div comments-txt"> 3777 <textarea id="msg" name="msg" rows="3" cols="20" tabindex="0" class="body-txt1" title="Comments" placeholder="Comments" aria-label="comments"></textarea> 3778 </div> 3779 <div id="contactusPrivacy" class="contactus-float-input-div privacy"> 3780 <input id="privacyid" name="privacyid" type="checkbox" class="privacy-check required" value="Agree" tabindex="0" aria-label="privacy policy agreement" aria-describedby="privacyid-error" data-error-message="Privacy policy agreement is required" /> 3781 <label for="privacyid" class="required">By submitting this form, you agree to the </label> <a href="/Privacy-Policy.aspx" target="_blank" rel="noopener noreferrer">privacy policy<span class="sr-only"> (opens in a new tab)</span></a> 3782 <span class="required-field">*</span> 3783 <span id="privacyid-error" class="field-error" role="alert"></span> 3784 </div> 3785 <div class="required-info"><span>*</span> Required Information</div> 3786 <div class="submitbutton"> 3787 <button type="button" id="btnSubmit" class="cf-submit" aria-label="Submit Form" name="button">Submit</button> 3788 </div> 3789 <p id="errorMessage" class="error-msg" role="alert" aria-live="assertive"></p> 3790 <div class="disclaimerText"></div> 3791
3791<script type="text/javascript"> 3792 3793 function setFormErrorMessage(message) { 3794 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf #errorMessage').html(message); 3795 } 3796 3797 function setInputValidity($input, isValid) { 3798 var $errorSpan = $('#' + $input.attr('id') + '-error'); 3799 if (isValid) { 3800 $input.removeAttr("aria-invalid"); 3801 $input.removeClass('reqErr'); 3802 $errorSpan.text(''); 3803 } else { 3804 $input.attr("aria-invalid", "true"); 3805 $input.addClass('reqErr'); 3806 $errorSpan.text($input.attr('data-error-message') || ''); 3807 } 3808 } 3809 3810 function isFieldValid($input) { 3811 var bIsValid = false; 3812 if ($input.hasClass("email")) { 3813 bIsValid = validateEmail($input); 3814 } else if ($input.attr("id") === "dayPhone1") { 3815 bIsValid = validatePhoneNumber($input); 3816 } else if ($input.hasClass("privacy-check")) { 3817 if ($input.is(":not(:checked)")) { 3818 bIsValid = false; 3819 $("label[for=" + $input.attr("id") + "]").addClass('reqErr'); 3820 } else { 3821 bIsValid = true; 3822 $("label[for=" + $input.attr("id") + "]").removeClass('reqErr'); 3823 } 3824 } 3825 else { 3826 //just do a required check... field must have content 3827 bIsValid = $input.val() != ""; 3828 } 3829 3830 setInputValidity($input, bIsValid); 3831 3832 //check to see we need to clear out the error message 3833 if ($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form input.required.reqErr').length == 0) { 3834 setFormErrorMessage(""); 3835 } 3836 3837 return bIsValid; 3838 } 3839 3840 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form input.required').blur(function () { 3841 isFieldValid($(this)); 3842 }); 3843 3844 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form select.required').blur(function () { 3845 isFieldValid($(this)); 3846 }); 3847 3848 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form input.requiredR').blur(function () { 3849 isFieldValid($(this)); 3850 }); 3851 3852 function validateEmail($input) { 3853 var email = $input.val(); 3854 3855 // Email regex pattern 3856 var reg = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; 3857 3858 return reg.test(email); 3859 } 3860 3861 function validatePhoneNumber($input) { 3862 var phoneNumber = $input.val(); 3863 3864 // Regex pattern to match the phone number formats 3865 var reg = /^(?:\(\d{3}\)|\d{3}[-.\s]?)\d{3}[-.\s]?\d{4}$/; 3866 3867 return reg.test(phoneNumber); 3868 } 3869 3870 $('.contact-us-enhanced .required-group input[type="checkbox"]').each(function () { 3871 if ($(this).is(":not(:checked)")) { 3872 var msg = $(this).attr("aria-label"); 3873 $(this).attr("aria-invalid", "true"); 3874 $(this).addClass('validate-field'); 3875 $("label[for=" + $(this).attr("id") + "]").addClass('validate-field'); 3876 } else { 3877 $(this).removeAttr("aria-invalid"); 3878 $(this).removeClass('validate-field'); 3879 $("label[for=" + $(this).attr("id") + "]").removeClass('validate-field'); 3880 } 3881 }); 3882 3883 function changeMessage() { 3884 alert("error loading"); 3885 } 3886 3887 function getSubmitTimeStamp() { 3888 let date = new Date();
3889 var formattedDate = String(date.getUTCFullYear() + "-" + date.getUTCDate() + "-" + date.getUTCDay() + " " + date.getUTCHours() + ":" + date.getUTCMinutes() + ":" + date.getUTCSeconds()); 3890 console.log("Get UTC date time/stamp: " + formattedDate) 3891 return formattedDate; 3892 } 3893 3894 function sendContactInfo() { 3895 if (enableRecaptcha == "true") { 3896 o['cmsSiteId'] = cmsSiteId; 3897 o['pageName'] = pageName; 3898 o['widgetName'] = widgetName; 3899 } 3900 3901 o['googleAnalyticsId'] = googleAnalyticsId; 3902 o['ipaddress'] = ipAddress; 3903 o['leadtime'] = getSubmitTimeStamp(); 3904 3905 $("#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form input").each(function () { 3906 var postData = $(this).data('post-data'); 3907 o[$(this).attr('name')] = (postData == null || postData == undefined) ? $(this).val() : postData; 3908 }); 3909 3910 $("#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form select").each(function () { 3911 if ($(this).attr('name') == 'usersource') 3912 o[$(this).attr('name')] = $('option:selected', this).text(); 3913 else 3914 o[$(this).attr('name')] = $(this).val(); 3915 }); 3916 3917 $("#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form textarea").each(function () { 3918 o[$(this).attr('name')] = escape($(this).val()); 3919 }); 3920 3921 if ($('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf_e-mail').val().length == 0) { 3922 var id = $("#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form #bedbathid option:selected").val(); 3923 3924 $.ajax({
3925 type: "POST", 3926 dataType: "json", 3927 cache: false, 3928 timeout: timeoutValue, 3929 url: "CMSSiteManager/Callback.aspx?act=set_contact", 3930 data: o, 3931 success: function (json) { 3932 if (json.ErrorNumber) { 3933 formSuccess = false; 3934 setFormErrorMessage("Failed to submit guest card."); 3935 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .cf-submit').prop('value', 'Submit'); 3936 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .cf-submit').prop('disabled', false); 3937 } else { 3938 try { 3939 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .cf-pnlMobile').hide(); 3940 let customDimensions = {} 3941 customDimensions.dimension15 = json.LeaseStarLeadId; 3942 if (json.Lead2LeaseLeadId != 0) 3943 customDimensions.dimension17 = json.Lead2LeaseLeadId; 3944 f_analyticsSendEvent('Contact', 'Information Request', 'Thank you', customDimensions); 3945 } catch (e) { 3946 } 3947 window.open('/Thank-You.aspx', '_self'); 3948 } 3949 }, 3950 beforeSend: function (json) { 3951 formSuccess = true; 3952 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .cf-submit').prop('value', 'Sending...'); 3953 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .cf-submit').prop('disabled', true); 3954 setFormErrorMessage(""); 3955 }, 3956 error: function (e) { 3957 formSuccess = false; 3958 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .cf-submit').prop('value', 'Submit'); 3959 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .cf-submit').prop('disabled', false); 3960 setFormErrorMessage("There was an error submitting your information."); 3961 } 3962 }); 3963 } 3964 } 3965 3966 $("#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form #btnSubmit").click(function () { 3967 3968 setFormErrorMessage(""); 3969 var bAllValid = true; 3970 3971 // Validate form 3972 $($("#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form input.required").get()).each(function () { 3973 if (!isFieldValid($(this))) { 3974 bAllValid = false; 3975 } 3976 }); 3977 3978 3979 3980 3981 if (bAllValid) { 3982 if (formSuccess == true) { 3983 return false; 3984 } 3985 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form #pid').val(propertyId); 3986 3987 var lcid = f_getCookie('RP_LSWS_LCID'); 3988 lcid = lcid ? lcid : "4"; 3989 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form #lcid').val(lcid); 3990 var cid = f_getCookie('RP_LSWS_SEM'); 3991 cid = cid ? cid : "Property Website"; 3992 if (cid != "Property Website") { 3993 $('#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form #cid').val(matchedSource); //The logic for setting the matchedSource based on the cid value in the commondata.ascx file 3994 } 3995 3996 googleAnalyticsId = f_getCookie('_ga'); 3997 3998 3999 4000 sendContactInfo(); 4001 4002 } else { 4003 $("#p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_ContactUs_Floating_rpcf .contact-mobile-form input.required.reqErr:last").focus(); 4004 setFormErrorMessage("Please enter all required information.") 4005 } 4006 }); 4007 </script>
4007 4008 </div> 4009 </div> 4010 4011</div></div><div class="col-lg-1"></div> 4012<div class="col-lg-4 col-sm-12 col-xs-12 contact-info-container"> 4013<div class="contact-info-wrapper"><div class="col-lg-12 col-sm-6 col-xs-12"> 4014<div class="contact-office-hours"><h3 class="home-contact-title">office hours</h3> 4015 4016<style> 4017 .contact-hours ul { 4018 margin: 0; 4019 padding: 0; 4020 list-style: none; 4021 } 4022</style> 4023 4024<div id="p_lt_zonePagePlaceholder_pageplaceholder_p_lt_zoneContact_WebPartZone4_WebPartZone4_zone_WebPartZone5_WebPartZone5_zone_ContactHours_pnlContactHours" class="widget"> 4025 4026 4027<div class="contact-hours"><ul class="contact-hours-list"><li><span class="contact-hours-day">Monday - Friday:</span><span class="contact-hours-time"> 9:00AM to 4:30PM</span></li><li><span class="contact-hours-day">Saturday:</span><span class="contact-hours-text"> Closed</span></li><li><span class="contact-hours-day">Sunday:</span><span class="contact-hours-text"> Closed</span></li></ul></div> 4028 4029 4030</div></div> 4031</div><div class="col-lg-12 col-sm-6 col-xs-12"> 4032<div class="contact-address"><h3 class="home-contact-title">address</h3><div class="prop-name">Halewaiolu Senior Residences - 8305</div> 4033<a href="http://maps.google.com/?q=1331 River Street, Honolulu, HI 96817" target="_blank" id="footerDirectionsLink"> 4034 <div>1331 River Street </div> 4035 <div>Honolulu, HI 96817</div> 4036</a></div> 4037</div><div class="col-lg-12 col-sm-6 col-xs-12"> 4038<a class="seo-number" href="tel:(877) 361-9094" onclick="f_analyticsSendEvent('general', 'click-phone-number', '(877) 361-9094')">(877) 361-9094</a></div></div> 4039</div><div class="col-lg-1"></div> 4040</div> 4041</div></section></div> 4042</main> 4043 4044<footer id="footer" class="container-fluid"> 4045 <div class="row footer-row-2"> 4046 <div id="" class="col-lg-4 col-sm-12 footer-content-left"><div class="rplogo" id="rplogo_p_lt_zoneFooterRow2_WebPartZone3_WebPartZone3_zone_RealPageLogo_plcRealPageLogo"><a href="https://www.realpage.com/apartment-marketing/" target="_blank" rel="noopener noreferrer"><img src="/TemplateResources/Global/images/rplogo-white.png" alt="RealPage, Inc." /><span class="sr-only"> (opens in a new tab)</span></a></div><div id="" class="footer-icons"><div id="ADA-HUD-Links"><a id="link-HUD" href="https://www.hud.gov/program_offices/fair_housing_equal_opp" title="HUD" target="_blank" rel="noopener noreferrer" aria-label="HUD (opens in a new tab)"><svg id="housingSVG" aria-hidden="true" data-name="housingSVG" xmlns="http://www.w3.org/2000/svg" width="539.2" height="515.23" viewbox="0 0 539.2 515.23"> 4047 <title>HUD</title> 4048 <g> 4049 <polygon points="61.89 421.07 40.79 421.07 40.79 429.43 60.17 429.43 60.17 436.48 40.79 436.48 40.79 446.74 62.82 446.74 62.82 453.79 32.66 453.79 32.66 414.04 61.89 414.04 61.89 421.07 61.89 421.07" fill-rule="evenodd"></polygon> 4050 <path d="M202.69,476.83l4,3.75a9.67,9.67,0,0,1-4.48,1.06c-4.49,0-10.8-2.76-10.8-13.89s6.32-13.89,10.8-13.89S213,456.64,213,467.76a17.78,17.78,0,0,1-1.82,8.54L207,472.37l-4.26,4.46ZM221.46,486l-4.33-4.07c2.44-3.1,4.16-7.64,4.16-14.18,0-18.65-13.84-20.92-19.1-20.92s-19.09,2.26-19.09,20.92,13.84,20.92,19.09,20.92A20.52,20.52,0,0,0,212.37,486l4.71,4.49,4.37-4.49Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4051 <path d="M260.37,473.75c0,10.44-6.32,14.94-16.34,14.94-3.65,0-9.07-.88-12.62-4.81-2.15-2.42-3-5.66-3.09-9.63V447.89h8.47v25.78c0,5.56,3.21,8,7.08,8,5.71,0,8-2.76,8-7.59V447.89h8.48v25.85Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4052 <path d="M282.61,456.86h.12l4.92,15.72H277.51l5.1-15.72Zm-7.32,22.56H290l2.55,8.21h9l-14-39.75H278l-14.17,39.75h8.75l2.76-8.21Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4053 <polygon points="202.19 446.59 221.95 446.59 221.95 453.79 193.88 453.79 193.88 414.04 202.19 414.04 202.19 446.59 202.19 446.59" fill-rule="evenodd"></polygon> 4054 <polygon points="253.44 435.95 253.44 453.79 245.15 453.79 245.15 414.04 253.44 414.04 253.44 429.09 268.94 429.09 268.94 414.04 277.23 414.04 277.23 453.79 268.94 453.79 268.94 435.95 253.44 435.95 253.44 435.95" fill-rule="evenodd"></polygon> 4055 <path d="M407.18,467.76c0-11.12,6.32-13.89,10.79-13.89s10.81,2.76,10.81,13.89-6.31,13.89-10.81,13.89-10.79-2.76-10.79-13.89Zm-8.29,0c0,18.66,13.85,20.92,19.08,20.92s19.12-2.26,19.12-20.92S423.25,446.85,418,446.85s-19.08,2.26-19.08,20.92Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4056 <path d="M476.72,473.75c0,10.44-6.32,14.94-16.34,14.94-3.65,0-9.06-.88-12.62-4.81-2.16-2.42-3-5.66-3.09-9.63V447.89h8.46v25.78c0,5.56,3.22,8,7.1,8,5.7,0,8-2.76,8-7.59V447.89h8.47v25.85Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4057 <path d="M491.92,475.4c.07,2.21,1.19,6.42,8.43,6.42,3.93,0,8.31-.94,8.31-5.17,0-3.08-3-3.92-7.19-4.92l-4.27-1c-6.44-1.49-12.64-2.91-12.64-11.66,0-4.43,2.39-12.24,15.29-12.24,12.18,0,15.45,8,15.51,12.84h-8c-.22-1.76-.88-6-8.13-6-3.15,0-6.92,1.16-6.92,4.76,0,3.12,2.55,3.75,4.2,4.14l9.69,2.38c5.43,1.33,10.4,3.55,10.4,10.68,0,12-12.17,13-15.66,13-14.49,0-17-8.36-17-13.28Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4058 <polygon points="417.6 453.79 409.32 453.79 409.32 414.04 417.6 414.04 417.6 453.79 417.6 453.79" fill-rule="evenodd"></polygon> 4059 <polygon points="450.76 414.04 458.5 414.04 458.5 453.79 450.21 453.79 434 425.44 433.86 425.44 433.86 453.79 426.13 453.79 426.13 414.04 434.87 414.04 450.63 441.72 450.76 441.72 450.76 414.04 450.76 414.04" fill-rule="evenodd"></polygon> 4060 <path d="M600.42,466.22H617v21.42h-5.53l-.83-5c-2.1,2.41-5.14,6-12.4,6-9.57,0-18.25-6.86-18.25-20.8,0-10.84,6-21.09,19.42-21,12.2,0,17,7.9,17.43,13.4h-8.29c0-1.56-2.83-6.54-8.69-6.54S588.46,457.8,588.46,468c0,10.86,5.93,13.67,11.57,13.67,1.82,0,7.93-.71,9.63-8.75h-9.24v-6.69Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4061 <path d="M153.32,528.15c0-11.12,6.31-13.9,10.79-13.9s10.79,2.77,10.79,13.9-6.31,13.9-10.79,13.9-10.79-2.79-10.79
4061-13.9Zm-8.3,0c0,18.65,13.84,20.94,19.09,20.94s19.09-2.29,19.09-20.94-13.84-20.92-19.09-20.92S145,509.49,145,528.15Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4062 <path d="M206,526.81V515.12h6.59c5.14,0,7.3,1.62,7.3,5.5,0,1.77,0,6.19-6.21,6.19Zm0,6.87h9.51c10.69,0,12.67-9.08,12.67-12.67,0-7.8-4.64-12.73-12.34-12.73H197.66V548H206V533.68Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4063 <path d="M250.67,526.81V515.12h6.58c5.15,0,7.31,1.62,7.31,5.5,0,1.77,0,6.19-6.19,6.19Zm0,6.87h9.52c10.68,0,12.68-9.08,12.68-12.67,0-7.8-4.64-12.73-12.34-12.73H242.37V548h8.31V533.68Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4064 <path d="M293.63,528.15c0-11.12,6.29-13.9,10.8-13.9s10.79,2.77,10.79,13.9-6.32,13.9-10.79,13.9-10.8-2.79-10.8-13.9Zm-8.3,0c0,18.65,13.83,20.94,19.1,20.94s19.08-2.29,19.08-20.94-13.84-20.92-19.08-20.92-19.1,2.26-19.1,20.92Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4065 <path d="M346.1,525.77V515.12h10.34c4.87,0,5.8,3.12,5.8,5.22,0,3.93-2.09,5.43-6.41,5.43ZM337.95,548h8.16V532.46h8.56c6.15,0,6.49,2.1,6.49,7.53a26.77,26.77,0,0,0,.87,8h9.2v-1.07c-1.77-.65-1.77-2.1-1.77-7.89,0-7.45-1.77-8.65-5-10.09,3.93-1.32,6.13-5.09,6.13-9.45,0-3.44-1.93-11.24-12.5-11.24H337.95V548Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4066 <polygon points="287.36 514.17 279.06 514.17 279.06 481.46 267.05 481.46 267.05 474.42 299.38 474.42 299.38 481.46 287.36 481.46 287.36 514.17 287.36 514.17" fill-rule="evenodd"></polygon> 4067 <path d="M458.06,534.11c0,10.46-6.31,15-16.33,15-3.64,0-9.06-.92-12.61-4.85-2.16-2.42-3-5.64-3.09-9.62V508.28h8.46v25.78c0,5.54,3.22,8,7.09,8,5.7,0,8-2.79,8-7.6V508.28h8.47v25.84Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4068 <polygon points="384.11 474.42 391.87 474.42 391.87 514.17 383.55 514.17 367.33 485.82 367.25 485.82 367.25 514.17 359.48 514.17 359.48 474.42 368.22 474.42 384.01 502.1 384.11 502.1 384.11 474.42 384.11 474.42" fill-rule="evenodd"></polygon> 4069 <polygon points="415.29 514.17 406.97 514.17 406.97 474.42 415.29 474.42 415.29 514.17 415.29 514.17" fill-rule="evenodd"></polygon> 4070 <polygon points="447.7 514.17 439.4 514.17 439.4 481.46 427.41 481.46 427.41 474.42 459.72 474.42 459.72 481.46 447.7 481.46 447.7 514.17 447.7 514.17" fill-rule="evenodd"></polygon> 4071 <polygon points="491.11 514.17 482.8 514.17 482.8 499.16 469.08 474.42 478.87 474.42 487.12 491.7 494.99 474.42 504.39 474.42 491.11 499.27 491.11 514.17 491.11 514.17" fill-rule="evenodd"></polygon> 4072 <path d="M381.73,33.85l-267.6,131.8v61.91h30V413.27H617.36V227.56h36V165.65L381.73,33.85ZM559.46,357.34H202V187.62L381.73,95.76l177.73,91.86V357.34Z" transform="translate(-114.13 -33.85)" fill-rule="evenodd"></path> 4073 <polygon points="349.46 213.66 183.73 213.66 183.73 153.77 349.46 153.77 349.46 213.66 349.46 213.66" fill-rule="evenodd"></polygon> 4074 <polygon points="349.46 299.57 183.73 299.57 183.73 239.63 349.46 239.63 349.46 299.57 349.46 299.57" fill-rule="evenodd"></polygon> 4075 </g></svg></a><a id="link-ADA" href="https://www.hud.gov/program_offices/fair_housing_equal_opp/disabilities/accessibilityR" title="ADA" target="_blank" rel="noopener noreferrer" aria-label="ADA (opens in a new tab)"><svg id="handicapSVG" aria-hidden="true" data-name="handicapSVG" xmlns="http://www.w3.org/2000/svg" width="483.22" height="551.43" viewbox="0 0 483.22 551.43"> 4076 <title>ADA</title> 4077 <path d="M-54,93.12c25-2.3,44.36-23.81,44.36-49A49.25,49.25,0,0,0-58.81-5,49.25,49.25,0,0,0-108,44.16,51.06,51.06,0,0,0-101.83,68l17.52,246.47,180.4,0,74,173.37,97.14-38.1-15-35.82-54.37,19.63L126.22,268.28-41.51,269.4l-2.3-31.21,121.42,0V192.06l-126.05,0ZM127.42,446.59C97,506.78,33.25,546.43-34.73,546.43-134.57,546.43-216,465-216,365.16c0-70.1,42.49-135.24,105.88-164.12l4.1,53.54c-37.5,23.63-60.61,66.26-60.61,111,0,72.43,59.07,131.5,131.5,131.5,66.26,0,122.76-50.85,130.47-116.09Z" transform="translate(216 5)"></path> 4078</svg></a></div><em class="icon-no-smoking" title="Non-Smoking" aria-label="non-smoking"></em><em class="fa fa-paw" title="Pet Friendly" aria-label="pet friendly"></em></div></div><div id="" class="col-lg-4 col-sm-12 footer-content-center"><div class="content footer-content-social"><div id="p_lt_zoneFooterRow2_WebPartZone4_WebPartZone4_zone_SocialMedia_pnlSocialNetworks" class="social_media"> 4079 <ul class="social-list" style="list-style:none;margin:0;padding:0;"><li style="display:inline-block;"><a href="https://www.facebook.com/people/Halewai%CA%BBolu-Senior-Residences/100092001421887/" class="facebook" title="HSR Facebook" target="_blank" rel="noopener noreferrer" onclick="f_analyticsSendEvent('social', 'click-facebook-icon', 'https://www.facebook.com/people/Halewai%CA%BBolu-Senior-Residences/100092001421887/')" role="button" aria-label="facebook (opens in a new tab)"> 4080 <em class="sicon-facebook" aria-hidden="true"></em></a></li></ul> 4081</div><a href="http://www.tmo.com" target="_blank"><img id="p_lt_zoneFooterRow2_WebPartZone4_WebPartZone4_zone_EditableImage1_ucEditableImage_imgImage" title="Michaels Management Services, LLC" src="https://capi.myleasestar.com/v2/dimg/147628763/235x125/147628763.png" alt="Michaels Management Services, LLC" /> 4082 4083</a></div></div><div id="" class="col-lg-4 col-sm-12 footer-content-right"><ul class="footer-links"><li><a class="privacy" href="/Privacy-policy.aspx" title="">Privacy Policy</a></li><li><span class="copyright-text">© 2026 Halewaiolu Senior Residences - 8305. All Rights Reserved. </span></li></ul></div> 4084 </div> 4085 <div class="row"> 4086 4087 </div> 4088</footer>
4089<script type="text/javascript"> 4090(function () { 4091 "use strict"; 4092 // TFS 3048913 - WCAG 1.1.1: an image that is the sole content of a link to 4093 // the site's home page must have a non-empty accessible name. Kentico's raw 4094 // "Editable Image" content region (used for the header logo on some pages) 4095 // renders alt="" whenever no alt text was entered, silently hiding a 4096 // meaningful logo from assistive tech - confirmed live on the Teracy 4097 // template (callenapartments.com). Mirrors the "Home" fallback already 4098 // shipped for the RPWebParts footer/header logo (TFS 2985968, 4099 // Footer.ascx.cs PropertyLogoAlt) - scoped narrowly to home links with no 4100 // existing accessible name, so genuinely decorative images are untouched. 4101 // 4102 // Inline (duplicated across all 10 template files in this ticket's scope) 4103 // rather than a shared external file: the shared-file approach requires 4104 // wiring via lsExternalResource, whose {StaticAssetsUrl} placeholder 4105 // resolves to a PER-SITE CDN path segment (confirmed: different sites of 4106 // the same template resolve to different /CWS/<id>/ paths) - so there is 4107 // no single hardcoded
4107<script src="src" type="text/javascript"> that works across every site of a 4108 // template, and the datafix needed to wire it per-site failed to actually 4109 // commit across multiple attempts. Inline code has no such dependency: it 4110 // deploys with the normal code release, no separate DB step required. 4111 function fixHomeLogoAlt() { 4112 var anchors = document.querySelectorAll("a[href]"); 4113 for (var i = 0; i < anchors.length; i++) { 4114 var a = anchors[i]; 4115 if (a.pathname !== "/" || a.host !== window.location.host) continue; 4116 if (a.getAttribute("aria-label") || a.getAttribute("aria-labelledby") || a.getAttribute("title")) continue; 4117 if (a.textContent && a.textContent.trim()) continue; 4118 var img = a.querySelector("img"); 4119 if (!img) continue; 4120 var alt = img.getAttribute("alt"); 4121 if (alt === null || alt.trim() === "") { 4122 img.setAttribute("alt", "Home"); 4123 } 4124 } 4125 } 4126 // TFS 3065125 - WCAG 4.1.1: a page must not contain duplicate id values. 4127 // Confirmed on all 17 S0088-Haute sites (Silktide check `duplicate-id`, OPEN on 4128 // every page scanned, cache-busted): the "Resident Services" block renders its 4129 // link list twice - once in ul.resident-links-desktop and once in 4130 // ul.resident-links-mobile - and BOTH copies hardcode id="resident-login". Two 4131 // Illustrator-exported inline SVGs contribute the rest (`Layer_1` x9, 4132 // `_x33_d_logo` x2). 4133 // 4134 // The widget emitting that markup is NOT in ws-Kentico - repo-wide and 4135 // sibling-repo searches find only the CSS for ul.resident-links, never the HTML - 4136 // so the source markup cannot be corrected from here; a DOM-level de-duplication 4137 // is the available code fix. 4138 // 4139 // Behaviour-neutral by construction: the FIRST occurrence always keeps its id and 4140 // only later duplicates are renamed. Nothing references these ids anyway (verified 4141 // against both the repo and the live scanned HTML: no `#id` CSS rules that apply to 4142 // this template, and zero url(#id) / xlink:href="#id" / getElementById hits), and 4143 // any reference that did exist already resolved to the first element and still does. 4144 function fixDuplicateIds() { 4145 var seen = {}; 4146 var nodes = document.querySelectorAll("[id]"); 4147 for (var i = 0; i < nodes.length; i++) { 4148 var el = nodes[i]; 4149 var id = el.getAttribute("id"); 4150 if (!id) continue; 4151 if (!Object.prototype.hasOwnProperty.call(seen, id)) { 4152 seen[id] = 1; 4153 continue; 4154 } 4155 seen[id] = seen[id] + 1; 4156 var candidate = id + "-" + seen[id]; 4157 while (document.getElementById(candidate)) { 4158 candidate += "x"; 4159 } 4160 el.setAttribute("id", candidate); 4161 } 4162 } 4163 4164 // Does this link already have an accessible name from any source that supplies one? 4165 // Deliberately boolean: the caller only needs to know whether to leave the link 4166 // alone, so resolving aria-labelledby to its referenced text would add DOM lookups 4167 // for no benefit - and returning a placeholder string instead would be a trap for 4168 // the next reader. 4169 function hasAccessibleName(a) { 4170 var label = a.getAttribute("aria-label"); 4171 if (label && label.trim()) return true; 4172 if (a.getAttribute("aria-labelledby")) return true; 4173 var title = a.getAttribute("title"); 4174 if (title && title.trim()) return true; 4175 if (a.textContent && a.textContent.trim()) return true; 4176 var imgs = a.querySelectorAll("img"); 4177 for (var i = 0; i < imgs.length; i++) { 4178 var alt = imgs[i].getAttribute("alt"); 4179 if (alt && alt.trim()) return true; 4180 } 4181 return false; 4182 } 4183 4184 // TFS 3065125 - WCAG 2.4.4: a link whose only content is an aria-hidden icon has 4185 // no accessible name at all. Confirmed on all 17 sites (Silktide check 4186 // `bad-anchor`, OPEN on every page scanned): the hero scroll cue renders as 4187 // <a href="#homeContent" class="rp-scroll"><i class="fa fa-angle-down" aria-hidden="true"></i></a> 4188 // That markup is authored editable content - it sits inside the hero-content 4189 // region and exists in no template or web part in this repo - so like the 4190 // duplicate ids above it is corrected at the DOM level. 4191 // 4192 // Strictly additive, and never invents wording: a name is only ADDED to a link 4193 // that has none, and only when it can be DERIVED from the element itself (a known 4194 // directional icon, or the number in a tel: href). A link we
4194cannot name honestly 4195 // - e.g. the third-party Canva embed link - is deliberately left untouched. 4196 function fixUnlabeledIconLinks() { 4197 var anchors = document.querySelectorAll("a"); 4198 for (var i = 0; i < anchors.length; i++) { 4199 var a = anchors[i]; 4200 if (hasAccessibleName(a)) continue; 4201 var name = ""; 4202 if (a.querySelector(".fa-angle-down, .fa-chevron-down, .fa-arrow-down, .fa-caret-down")) { 4203 name = "Scroll down to page content"; 4204 } else { 4205 var href = a.getAttribute("href") || ""; 4206 if (href.toLowerCase().indexOf("tel:") === 0) { 4207 var num = decodeURIComponent(href.slice(4)).trim(); 4208 if (num) name = "Call " + num; 4209 } 4210 } 4211 if (name) a.setAttribute("aria-label", name); 4212 } 4213 } 4214 4215 // TFS 3065303 - WCAG 1.1.1: the property logo is a meaningful image rendered 4216 // with alt="" (Silktide `img-marked-as-ignored`, "Check images have been 4217 // correctly defined as decorative" - 17/17 S0088-Haute sites, template defect). 4218 // 4219 // Confirmed by inspecting the live DOM on three sites: the element is the 4220 // property LOGO, not a decorative graphic and not a gallery image - 4221 // <a class="logo scroll-notice" href="/home" title="Home"> 4222 // <img id="..._EditableImage_ucEditableImage_imgImage" src="...300x60..." alt=""> 4223 // </a> 4224 // Natural sizes are logo-shaped (300x60, 300x53, 250x200) and it sits in the 4225 // header, inside the home link. 4226 // 4227 // fixHomeLogoAlt() above (TFS 3048913) does NOT reach it, for two reasons: 4228 // it requires a.pathname === "/" (this link is "/home"), and it bails when the 4229 // anchor already has a title (this one has title="Home"). Rather than widen that 4230 // function - which would change behaviour for the sites it was written for - 4231 // this handles the logo case specifically. 4232 // 4233 // The alt text is NOT invented: it is the CMS property name, the same value and 4234 // the same "Home" fallback that Footer.ascx.cs PropertyLogoAlt has used since 4235 // TFS 2985968. Injected server-side and JS-string-encoded so a name containing 4236 // quotes or apostrophes cannot break the script. 4237 var RP_PROPERTY_NAME = "Halewaiolu Senior Residences - 8305"; 4238 4239 function fixPropertyLogoAlt() { 4240 var name = (RP_PROPERTY_NAME || "").replace(/^\s+|\s+$/g, ""); 4241 if (!name) name = "Home"; 4242 var imgs = document.querySelectorAll("a.logo img, a.header-logo img"); 4243 for (var i = 0; i < imgs.length; i++) { 4244 var img = imgs[i]; 4245 var alt = img.getAttribute("alt"); 4246 if (alt === null || alt.replace(/^\s+|\s+$/g, "") === "") { 4247 img.setAttribute("alt", name); 4248 } 4249 } 4250 } 4251 function runFixes() { 4252 fixHomeLogoAlt(); 4253 fixPropertyLogoAlt(); 4254 fixDuplicateIds(); 4255 fixUnlabeledIconLinks(); 4256 } 4257 function boot() { 4258 runFixes(); 4259 [800, 2000, 4500].forEach(function (d) { 4260 setTimeout(runFixes, d); 4261 }); 4262 } 4263 if (document.readyState === "loading") { 4264 document.addEventListener("DOMContentLoaded", boot); 4265 } else { 4266 boot(); 4267 } 4268})(); 4269</script>
4269 4270 4271 <button type="submit" tabindex="-1" aria-hidden="true" style="position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden">Submit</button> 4272 4273
4274<script type="text/javascript"> 4275//<![CDATA[ 4276 4277WebForm_InitCallback(); 4278theForm.oldSubmit = theForm.submit; 4279theForm.submit = WebForm_SaveScrollPositionSubmit; 4280 4281theForm.oldOnSubmit = theForm.onsubmit; 4282theForm.onsubmit = WebForm_SaveScrollPositionOnSubmit; 4283//]]> 4284</script>
4284 4285</script>
4285</form> 4286 4287 4288 4289 4290
4290<script type="text/javascript"> 4291 try { 4292 $(document).foundation(); 4293 } 4294 catch(err) {} 4295 </script>
4295 4296 <!-- ExternalResources_Footer --> 4297 <span id="cookie-preferences" hidden="hidden"></span> 4298 4299 <!-- /ExternalResources_Footer --> 4300</body> 4301</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.