\")),\r\n pageContentText = pageParagraphContent.toString().replace(/(<([^>]+)>)/ig, \"\");\r\n return pageContentText.split(/\\s+/).slice(0,21).join(\" \")+'... ';\r\n }\r\n // BUILD OUT PUB DATE\r\n //====================================================\r\n function buildPubDate(cmspage) {\r\n var pubDate = cmspage.OriginalPublicationDate;\r\n return convertDate(pubDate);\r\n }\r\n // REFORMATTING PUBLICATION DATE\r\n //====================================================\r\n function convertDate(date) {\r\n var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],\r\n splitDate = date.split('-');\r\n return months[parseInt(splitDate[1])-1] + \" \" + splitDate[2] + \", \" + splitDate[0];\r\n }\r\n // SETTING VARIABLES FOR HUB STORIES PANEL\r\n //====================================================\r\n var totalRecords = '',\r\n pageNum = 1,\r\n pageSizeValue = 10,\r\n hubPanelLoaded = 'no',\r\n items = [],\r\n itemCount = 0,\r\n currentPageId = $('meta[name=\"CmsPageId\"]').attr('content');\r\n if ((\"taxonomy\" in VitalSite) && VitalSite.taxonomy !== null) {\r\n var taxonomy = VitalSite.taxonomy;\r\n $(taxonomy).each(function (i, element) {\r\n $(element.Terms).each(function (j, elm) { //loop through all of the terms for the page\r\n if (element.FacetName === 'Service' || element.FacetName === 'Content Hub Topic') { //found 'Service Line' or 'Content Hub Topic'\r\n relatedTermIds.push( elm.TermId );\r\n }\r\n });\r\n });\r\n }\r\n\r\n // KICKING OFF PANELS FOR HUB STORIES\r\n //====================================================\r\n $('.cmspanel').each(function() {\r\n if ($(this).find('.Hub-Stories').length) {\r\n $(this).addClass('Hub');\r\n }\r\n });\r\n if ($('.Hub-Stories').length) {\r\n // running page API for: Content Hub Page term\r\n hubPanelLoaded = 'Yes';\r\n pageSizeValue = 10;\r\n void getHubPanelContent(hubPanelLoaded, relatedTermIds, pageSizeValue, pageNum, currentPageId);\r\n }\r\n\r\n // GETTING CONTENT FOR HUB STORIES PANEL\r\n //====================================================\r\n async function getHubPanelContent( hubPanelLoaded, relatedTermIds, pageSizeValue, pageNum, currentPageId ) {\r\n // Set variables.\r\n // Get environment.\r\n const url = window.location.href;\r\n const env = url.indexOf('.dev') > -1 ? 0 : url.indexOf('.stage') > -1 ? 1 : 2;\r\n\r\n // Taxonomy: Content Hub Page term id [dev / stage / live].\r\n const contentHubPageTermArray = [\r\n 'c0af9167-90f4-eb11-a840-000d3a611ea2',\r\n 'c0af9167-90f4-eb11-a840-000d3a611ea2',\r\n 'c0af9167-90f4-eb11-a840-000d3a611ea2'\r\n ];\r\n const contentHubTermId = contentHubPageTermArray[env];\r\n\r\n // Taxonomy: Featured Related Articles term id [dev / stage / live].\r\n const featuredArticleTermArray = [\r\n '4d122884-bf3a-ed11-a850-000d3a611ea2',\r\n '4d122884-bf3a-ed11-a850-000d3a611ea2',\r\n '4d122884-bf3a-ed11-a850-000d3a611ea2'\r\n ];\r\n const featuredArticleTermId = featuredArticleTermArray[env];\r\n\r\n const featuredNum = 3;\r\n const fields = 'PageId, Name, publichref, originalPublicationDate, HtmlContent, Images, Taxonomy';\r\n const fromPubDate = '01/01/2013';\r\n let isExempt = false;\r\n let finalArray = [];\r\n let totalRecords = 0;\r\n\r\n // Set options for returning Featured Articles (Featured Content Hub page).\r\n const featuredOptions = {\r\n pageSize: pageSizeValue,\r\n sort: 11,\r\n fields: fields,\r\n criteria: {\r\n originalpublicationbegindate: fromPubDate,\r\n relatedTermIds: featuredArticleTermId\r\n }\r\n }\r\n\r\n // Set options for returning Articles for page based on related term ids.\r\n const standardOptions = {\r\n pageNumber: pageNum,\r\n pageSize: pageSizeValue,\r\n sort: 11,\r\n fields: fields,\r\n criteria: {\r\n originalpublicationbegindate: fromPubDate,\r\n relatedTermIds: relatedTermIds\r\n }\r\n }\r\n\r\n // Call API.\r\n const call1 = await getData(featuredOptions);\r\n const call2 = await getData(standardOptions);\r\n\r\n async function getData(options) {\r\n return new Promise((resolve, reject) => {\r\n $.getCmsPages(options, (data) => {\r\n if (data) {\r\n resolve(data);\r\n } else {\r\n reject('Error getting related content.');\r\n }\r\n });\r\n });\r\n }\r\n\r\n // When both calls have returned data we can manipulate result sets.\r\n $.when(call1, call2).done((featured, standard) => {\r\n totalRecords = standard.TotalRecords;\r\n if (featured) {\r\n let featuredArray = featured.Values;\r\n let savedArray = [];\r\n featuredArray.forEach(item => {\r\n let hasRelated = false;\r\n item.Taxonomy.forEach(facet => {\r\n if (relatedTermIds.length > 1 || isExempt) {\r\n relatedTermIds.forEach(relatedTerm => {\r\n if (!hasRelated) {\r\n hasRelated = facet.Terms.some(obj => {\r\n // Ignore 'Content Hub Page' term id.\r\n if (obj.TermId !== contentHubTermId) {\r\n return obj.TermId === relatedTerm;\r\n } else {\r\n return false;\r\n }\r\n });\r\n if (hasRelated) {\r\n savedArray.push(item);\r\n }\r\n }\r\n });\r\n } else {\r\n isExempt = true;\r\n }\r\n });\r\n });\r\n\r\n // Use filtered (saved) array or full (featured) array.\r\n finalArray = isExempt ? featuredArray : savedArray;\r\n\r\n // Reduce array to maximum length. And reverse it.\r\n finalArray = finalArray.length > featuredNum ? finalArray.splice(0, featuredNum) : finalArray;\r\n finalArray.reverse();\r\n\r\n // For each featured item in array, remove it from article array if it exists else remove item from end -\r\n // if article array is longer than pageSizeValue. Add featured item to start of article array.\r\n // Tag featured articles.\r\n finalArray.forEach(savedItem => {\r\n savedItem['Featured'] = true;\r\n let index = standard.Values.findIndex(article => article.PageId === savedItem.PageId);\r\n if (index === 0) {\r\n standard.Values.shift();\r\n standard.Values = [savedItem, ...standard.Values];\r\n } else {\r\n index ? standard.Values.splice(index, 1)\r\n : standard.Values.length > pageSizeValue ? standard.Values.pop()\r\n : standard.Values;\r\n standard.Values = [savedItem, ...standard.Values];\r\n }\r\n });\r\n renderArticles(standard);\r\n } else {\r\n renderArticles(standard);\r\n }\r\n });\r\n\r\n function renderArticles(data) {\r\n for (var i in data.Values) {\r\n var cmspage = data.Values[i];\r\n var item = {\r\n title: cmspage.Name,\r\n pageid: cmspage.PageId,\r\n url: cmspage.PublicHRef.replace(/~/g, ''),\r\n newDateFormat: buildPubDate(cmspage),\r\n snippet: buildSnippet(cmspage),\r\n imageSrc: (typeof cmspage.Images[0] !== 'undefined') ? \"/app/files/public/\" + cmspage.Images[0].FileName : \"/imgs/beat/beat-default.jpg\",\r\n image: (typeof cmspage.Images[0] !== 'undefined') ? \"\" : \"
\",\r\n contentTopic: '',\r\n eachTopicTermWithNobr: '',\r\n contentTopicTag: '',\r\n serviceLines: '',\r\n contentAuthor: '',\r\n eachAuthorTermWithNobr: '',\r\n contentAuthorTag: '',\r\n topicTerms: [],\r\n serviceTerms: [],\r\n authorTerms: [],\r\n featured: cmspage.Featured ? cmspage.Featured : false\r\n };\r\n for (i in cmspage.Taxonomy) {\r\n //set variable to taxonomyy object\r\n var Taxonomy = cmspage.Taxonomy[i];\r\n //check for taxonomy = Content Hub Topic\r\n if (Taxonomy.FacetName === 'Content Hub Topic') {\r\n //loop through taxonomy for terms\r\n for (i in Taxonomy.Terms) {\r\n //set variable to terms object\r\n var topicTerm = Taxonomy.Terms[i];\r\n //add terms to array\r\n item.topicTerms.push(topicTerm.Name);\r\n }\r\n item.contentTopic = (item.topicTerms.toString().replace(/\\s+/g, '').replace(/,/g, ' ').replace(/[^a-zA-Z 0-9]+/g,''));\r\n //(this takes topics from taxonomy and if it's not undefined & it's not marked \"_No Topic\" then set any others to this variable), also add in comma between each Topic term\r\n item.eachTopicTermWithNobr = \"\" + (item.topicTerms.toString().replace(/,/g, ', ')) + \"\";\r\n item.contentTopicTag = (item.topicTerms.toString() !== 'undefined' && item.topicTerms.toString() !== '_No Topic') ? \"
- element within the current .SPItem\r\n var dlElement = item.querySelector('dl');\r\n if (dlElement) {\r\n // append the new
- element to the
- element\r\n dlElement.appendChild(ddElement);\r\n }\r\n }\r\n });\r\n});\r\n\r\n//slider functionality\r\nfunction sliders() {\r\n\r\n //$('#Home .Events-Upcoming-Calendar .SPList').addClass('HomeEventSlider');\r\n $('#Home .Events-Upcoming-Calendar .SPList').addClass('Slider-3up-Vertical');\r\n $('#Home #SmartPanelNewsRecent .SPList').addClass('Slider-3up-Vertical');\r\n $('#HomeMiddleTop .SmartPanel .SPList').addClass('Slider-Smart-3up-Wide');\r\n $('#HomeLeftRight #DrSmartPanel .DrList').addClass('Slider-Smart-3up');\r\n $('#HomeLeftRight #SmartPanelLocations .SPList').addClass('Slider-Smart-2up');\r\n $('.LandingRowWrap .LandingRow .SPList').addClass('Landing-Smart-4up-Wide');\r\n $('#BelowPageContent .Pages-Related-Images .SPList').addClass('Slider-Smart-2up');\r\n\r\n //Take the slider off of smartpanels for SmartNoSlide panels on landing pages\r\n if ($('.LandingRowWrap .LandingRow h2.SmartNoSlide').length) {\r\n $('.LandingRowWrap .LandingRow h2.SmartNoSlide').closest(\".cmspanel\").addClass(\"SmartList\");\r\n }\r\n if ($('.LandingRowWrap .LandingRow .SmartList .Landing-Smart-4up-Wide').length) {\r\n $('.LandingRowWrap .LandingRow .SmartList .Landing-Smart-4up-Wide .SPItem').closest(\".SPList\").removeClass('Landing-Smart-4up-Wide').addClass('Relocate');\r\n $('.LandingRowWrap .LandingRow .SmartList .Relocate .SPItem').closest(\".SmartPanel\").prependTo('.SmartList .SmartWrap');\r\n }\r\n\r\n $('.Slider').not('.slick-initialized').on('afterChange',function(){\r\n $('iframe').each(function(){ //on change slide = do action (pause iframe video)\r\n $(this)[0].contentWindow.postMessage('{\"event\":\"command\",\"func\":\"' + 'pauseVideo' + '\",\"args\":\"\"}', '*');\r\n });\r\n }).slick({\r\n dots: false,\r\n arrows: true,\r\n infinite: true,\r\n autoplay: false,\r\n autoplaySpeed: 8000,\r\n speed: 500,\r\n fade: true,\r\n cssEase: 'linear'\r\n // }).on('click', '.AccessPause', function(ele) {\r\n // ele.preventDefault();\r\n // $(this).closest('.Slider').slick('slickPause');\r\n // $(this).parent().html('');\r\n // $('button.AccessPlay').focus();\r\n // }).on('click', '.AccessPlay', function(ele) {\r\n // ele.preventDefault();\r\n // $(this).closest('.Slider').slick('slickPlay');\r\n // $(this).parent().html('');\r\n // $('button.AccessPause').focus();\r\n });\r\n $('.Slider-with-Dot-Nav').not('.slick-initialized').on('afterChange',function(){\r\n $('iframe').each(function(){ //on change slide = do action (pause iframe video)\r\n $(this)[0].contentWindow.postMessage('{\"event\":\"command\",\"func\":\"' + 'pauseVideo' + '\",\"args\":\"\"}', '*');\r\n });\r\n }).slick({\r\n dots: true,\r\n arrows: false,\r\n infinite: true,\r\n autoplay: false,\r\n autoplaySpeed: 8000,\r\n speed: 500,\r\n fade: true,\r\n cssEase: 'linear'\r\n });\r\n $('.Slider-with-Dot-Nav-Auto').not('.slick-initialized').on('afterChange',function(){\r\n $('iframe').each(function(){ //on change slide = do action (pause iframe video)\r\n $(this)[0].contentWindow.postMessage('{\"event\":\"command\",\"func\":\"' + 'pauseVideo' + '\",\"args\":\"\"}', '*');\r\n });\r\n }).slick({\r\n dots: true,\r\n arrows: false,\r\n infinite: true,\r\n autoplay: true,\r\n autoplaySpeed: 8000,\r\n speed: 500,\r\n fade: true,\r\n cssEase: 'linear'\r\n }).on('click', '.AccessPause', function(ele) {\r\n ele.preventDefault();\r\n $(this).closest('.Slider').slick('slickPause');\r\n $(this).parent().html('');\r\n $('button.AccessPlay').focus();\r\n }).on('click', '.AccessPlay', function(ele) {\r\n ele.preventDefault();\r\n $(this).closest('.Slider').slick('slickPlay');\r\n $(this).parent().html('');\r\n $('button.AccessPause').focus();\r\n });\r\n\r\n $('.Slider-Auto-Landing').not('.slick-initialized').on('afterChange',function(){\r\n $('iframe').each(function(){ //on change slide = do action (pause iframe video)\r\n $(this)[0].contentWindow.postMessage('{\"event\":\"command\",\"func\":\"' + 'pauseVideo' + '\",\"args\":\"\"}', '*');\r\n });\r\n }).slick({\r\n dots: true,\r\n arrows: false,\r\n infinite: true,\r\n autoplay: true,\r\n autoplaySpeed: 8000,\r\n speed: 500,\r\n fade: false,\r\n cssEase: 'cubic-bezier(.72,.01,.8,1)'\r\n }).on('click', '.AccessPause', function(ele) {\r\n ele.preventDefault();\r\n $(this).closest('.Slider').slick('slickPause');\r\n $(this).parent().html('');\r\n $('button.AccessPlay').focus();\r\n }).on('click', '.AccessPlay', function(ele) {\r\n ele.preventDefault();\r\n $(this).closest('.Slider').slick('slickPlay');\r\n $(this).parent().html('');\r\n $('button.AccessPause').focus();\r\n });\r\n if (!$('.AccessControls').length) {\r\n addAccessControls();\r\n }\r\n $('#HomeMiddleTop .cmspanel.Hub.ItemsLoaded .Hub-Stories').not('.slick-initialized').slick({\r\n dots: false,\r\n infinite: false,\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n responsive: [\r\n {\r\n breakpoint: 1279,\r\n settings: {\r\n slidesToShow: 2\r\n }\r\n },\r\n {\r\n breakpoint: 800,\r\n settings: {\r\n slidesToShow: 1\r\n }\r\n }\r\n ]\r\n });\r\n $('.ContentInterior .cmspanel.Hub.ItemsLoaded .Hub-Stories').not('.slick-initialized').slick({\r\n dots: false,\r\n infinite: false,\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n responsive: [\r\n {\r\n breakpoint: 1439,\r\n settings: {\r\n slidesToShow: 2\r\n }\r\n },\r\n {\r\n breakpoint: 800,\r\n settings: {\r\n slidesToShow: 1\r\n }\r\n }\r\n ]\r\n });\r\n $('.Slider-3up').not('.slick-initialized').slick({\r\n dots: true,\r\n infinite: false,\r\n slidesToShow: 3,\r\n slidesToScroll: 1\r\n });\r\n $('.Slider-3up-Vertical').not('.slick-initialized').slick({\r\n infinite: false,\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n responsive: [\r\n {\r\n breakpoint: 1280,\r\n settings: {\r\n slidesToShow: 3\r\n }\r\n },\r\n {\r\n breakpoint: 1024,\r\n settings: {\r\n slidesToShow: 1\r\n }\r\n }\r\n ]\r\n });\r\n $('.Slider-Smart-3up').not('.slick-initialized').slick({\r\n infinite: false,\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n responsive: [\r\n {\r\n breakpoint: 1280,\r\n settings: {\r\n slidesToShow: 3\r\n }\r\n },\r\n {\r\n breakpoint: 600,\r\n settings: {\r\n slidesToShow: 1\r\n }\r\n }\r\n ]\r\n });\r\n $('.Slider-Smart-2up').not('.slick-initialized').slick({\r\n infinite: false,\r\n slidesToShow: 2,\r\n slidesToScroll: 1,\r\n responsive: [\r\n {\r\n breakpoint: 1280,\r\n settings: {\r\n slidesToShow: 2\r\n }\r\n },\r\n {\r\n breakpoint: 600,\r\n settings: {\r\n slidesToShow: 1\r\n }\r\n }\r\n ]\r\n });\r\n $('.Slider-Smart-3up-Wide').not('.slick-initialized').slick({\r\n infinite: false,\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n responsive: [\r\n {\r\n breakpoint: 1280,\r\n settings: {\r\n slidesToShow: 3\r\n }\r\n },\r\n {\r\n breakpoint: 1024,\r\n settings: {\r\n slidesToShow: 1\r\n }\r\n }\r\n ]\r\n });\r\n $('.Landing-Smart-4up-Wide').not('.slick-initialized').slick({\r\n infinite: false,\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n responsive: [\r\n {\r\n breakpoint: 1280,\r\n settings: {\r\n slidesToShow: 3\r\n }\r\n },\r\n {\r\n breakpoint: 1040,\r\n settings: {\r\n slidesToShow: 2\r\n }\r\n },\r\n {\r\n breakpoint: 800,\r\n settings: {\r\n slidesToShow: 1\r\n }\r\n }\r\n ]\r\n });\r\n $('#ThreeColumn #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories, #LeftColumn #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories, #RightColumn #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories, #FoundationThreeColumn #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories, #MWCThreeColumn #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories, .LandingInterior #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories').not('#BelowMainLeftRight .Hub-Stories').not('#BelowPageContent.HubFeed .Hub-Stories').not('.slick-initialized').slick({\r\n dots: false,\r\n infinite: false,\r\n slidesToShow: 2,\r\n slidesToScroll: 1,\r\n responsive: [\r\n {\r\n breakpoint: 800,\r\n settings: {\r\n slidesToShow: 1\r\n }\r\n }\r\n ]\r\n });\r\n $('#NoColumns #Content *:not(#BelowMainLeftRight) .cmspanel.Hub.ItemsLoaded .Hub-Stories, #Home #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories, #FoundationLanding #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories, #MWCLanding #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories, .Landing #Content .cmspanel.Hub.ItemsLoaded .Hub-Stories').not('.slick-initialized').slick({\r\n dots: false,\r\n infinite: false,\r\n slidesToShow: 3,\r\n slidesToScroll: 1,\r\n responsive: [\r\n {\r\n breakpoint: 1023,\r\n settings: {\r\n slidesToShow: 2\r\n }\r\n },\r\n {\r\n breakpoint: 800,\r\n settings: {\r\n slidesToShow: 1\r\n }\r\n }\r\n ]\r\n });\r\n $('#ColumnOne .cmspanel.Hub.ItemsLoaded .Hub-Stories, #ColumnThree .cmspanel.Hub.ItemsLoaded .Hub-Stories, #BelowMainLeftRight .cmspanel.Hub.ItemsLoaded .Hub-Stories').not('.slick-initialized').slick({\r\n dots: false,\r\n infinite: false,\r\n slidesToShow: 1,\r\n slidesToScroll: 1\r\n });\r\n}\r\n\r\n/* Convert Accepting New Patients Taxonomy Dropdown to Checkbox */\r\nfunction ChangeNewPatientsToCheckbox() {\r\n \"use strict\";\r\n var termId = '';\r\n var facetId = '';\r\n if(window.location.href.indexOf('dev.geonetric') > 0 || window.location.href.indexOf('devs.geonetric') > 0) {\r\n termId = '31fc6dae-ab4e-eb11-a842-000d3a619f08';\r\n facetId = 'b897687c6765463d95f6a44b68cc688a';\r\n } else if (window.location.href.indexOf('stage.geonetric') > 0) {\r\n termId = '31fc6dae-ab4e-eb11-a842-000d3a619f08';\r\n facetId = 'b897687c6765463d95f6a44b68cc688a';\r\n } else {\r\n termId = '31fc6dae-ab4e-eb11-a842-000d3a619f08';\r\n facetId = 'b897687c6765463d95f6a44b68cc688a';\r\n }\r\n $('#ProviderAdvancedSearch #VsMasterPage_MainContent_AdvancedSearchFields_searchForm_radius').after('');\r\n\r\n //set element value to proper termId\r\n var selectMenuElem = $('#ProviderAdvancedSearch #'+ facetId +'_ddl');\r\n if (VitalSite.SearchData) {\r\n //get searchTermIds from vitalsite object on page load\r\n var searchTermIds = VitalSite.SearchData.Criteria.SearchTermIds;\r\n if (searchTermIds.indexOf(termId) >= 0) {\r\n $('#AcceptingNewPatients').attr('checked', true);\r\n selectMenuElem.val(termId);\r\n } else {\r\n $('#AcceptingNewPatients').attr('checked', false);\r\n selectMenuElem.val(\"00000000-0000-0000-0000-000000000000\");\r\n }\r\n }\r\n\r\n $('#AcceptingNewPatients').click(function () {\r\n if ($(this).is(':checked')) {\r\n selectMenuElem.val(termId);\r\n } else {\r\n selectMenuElem.val(\"00000000-0000-0000-0000-000000000000\");\r\n }\r\n });\r\n\r\n /* Hiding the original drop-down menu with jquery as Sass doesn't like class names that are facet ids*/\r\n $('#ProviderAdvancedSearch .DrSearch div.'+ facetId).css(\"display\", \"none\");\r\n}\r\n\r\n//Add Accepting New Patients text to Provider Smart Panels\r\nvar smartDrURL,\r\n smartDrID = [];\r\n\r\nif ($('#DrSmartPanel').length) {\r\n $('#DrSmartPanel .DrList > li').each(function (i, el) {\r\n smartDrURL = $(el).find('dl dt a').attr('href');\r\n smartDrID = smartDrURL.split('id=')[1];\r\n smartDrID = smartDrID.split('&s')[0];\r\n var thisDl = $(' dl', el);\r\n\r\n $.getProviderById({\r\n providerId: smartDrID,\r\n fields: 'Taxonomy'\r\n }, function (data) {\r\n var acceptingPatientsTaxonomy = data.Value.Taxonomy.filter((function (facet) {\r\n return facet.FacetPropertyName === \"AcceptingNewPatients\";\r\n }));\r\n\r\n if (acceptingPatientsTaxonomy.length > 0) {\r\n var filteredFacet = acceptingPatientsTaxonomy[0];\r\n\r\n if (filteredFacet) {\r\n var filteredTerm = filteredFacet.Terms.filter((function (term) {\r\n return term.Name === \"Yes\";\r\n }));\r\n if (filteredTerm) {\r\n thisDl.append('
- Accepting new patients ');\r\n }\r\n }\r\n }\r\n });\r\n });\r\n}\r\n// Hiding the third breadcrumb link and seperator on location child pages in the info directory\r\nfunction locationBreadcrumbs() {\r\n 'use strict';\r\n var url = window.location.href;\r\n if(url.indexOf('/locations/profile/info/') > 0) {\r\n $('body').addClass('alterBreadcrumbs');\r\n //$(\"#Breadcrumbs p a:nth-of-type(2)\").remove();\r\n //$(\"#Breadcrumbs p span:nth-of-type(2)\").remove();\r\n $(\"#Breadcrumbs p a:nth-of-type(3)\").remove();\r\n $(\"#Breadcrumbs p span:nth-of-type(3)\").remove();\r\n }\r\n}\r\n\r\n// is called on page load & resize\r\n// accepts custom client input through a global variable\r\nfunction makeEmptyPanelsTransparent() {\r\n let arrPanelSelectors = [\r\n '#EntityFooterWrap',\r\n '#ColumnThree'\r\n ];\r\n\r\n // \"customHiddenPanelSelectors\" is a structure in vs custom html so client can add panel classes at will\r\n if (typeof customHiddenPanelSelectors !== 'undefined' && customHiddenPanelSelectors.constructor.name === 'Array' && customHiddenPanelSelectors.length > 0) {\r\n arrPanelSelectors = arrPanelSelectors.concat(customHiddenPanelSelectors);\r\n }\r\n\r\n // if the client tries to pass something weird (anything that's not a selector), it should be automatically filtered out through querySelectorAll\r\n document.querySelectorAll(arrPanelSelectors.join(', ')).forEach((panel) => {\r\n if (panel.textContent.trim().length == 0 && panel.style.background != 'transparent') {\r\n panel.style.background = 'transparent';\r\n }\r\n });\r\n}\r\n\r\nfunction showBreadcrumbs() {\r\n let elBreadcrumbs = document.querySelector('#BreadcrumbsWrap');\r\n if (elBreadcrumbs) {\r\n elBreadcrumbs.style.display = 'block';\r\n }\r\n}\r\n\r\nfunction handleBreadcrumbs() {\r\n // to remove breadcrumbs, add a path and an array of breadcrumbs to remove\r\n const breadcrumbExceptions = [\r\n {\r\n pathname: '/about/medical-group/',\r\n removedBreadcrumbs: ['Home', 'About Us']\r\n },\r\n {\r\n pathname: '/care-treatment/mental-behavioral/ohana/',\r\n removedBreadcrumbs: ['Home', 'Mental and Behavioral Health', 'Care & Treatment']\r\n },\r\n {\r\n pathname: '/care-treatment/urgent/',\r\n removedBreadcrumbs: ['Home', 'Care & Treatment']\r\n },\r\n {\r\n pathname: '/about/wellness-center/',\r\n removedBreadcrumbs: ['Home', 'About Us']\r\n }\r\n ];\r\n\r\n let thisPagePath = window.location.pathname;\r\n\r\n // remove specific breadcrumb items\r\n function updateBreadcrumbs(pathname, exceptions) {\r\n // the value of removedBreadcrumbs for the matching pathname\r\n let strArr = exceptions.find(objException => pathname.startsWith(objException.pathname)).removedBreadcrumbs;\r\n strArr.forEach(str => {\r\n let collEls;\r\n let elBreadcrumbs = document.querySelector('#BreadcrumbsWrap #Breadcrumbs p');\r\n if (elBreadcrumbs) {\r\n collEls = document.querySelector('#BreadcrumbsWrap #Breadcrumbs p').children;\r\n }\r\n if (collEls) {\r\n let arrEls = Array.from(collEls);\r\n for (let i = 0; i < arrEls.length; i++) {\r\n if (arrEls[i].innerText == str) {\r\n collEls[i].remove();// remove first element, the str match\r\n collEls[i].remove();// remove new first element, the trailing \"/\"\r\n break;\r\n }\r\n }\r\n } else {\r\n console.error(`Error locating Breadcrumbs element, unable to format - please notify a Geonetric technician.`);\r\n }\r\n });\r\n\r\n showBreadcrumbs();\r\n }\r\n\r\n let arrPathnames = breadcrumbExceptions.map(o => o.pathname);\r\n\r\n // only update breadcrumbs if the window.location.pathname starts with a value in a breadcrumbExceptions.pathname object AND has a length that is larger\r\n // both conditional statements here are necessary, the first ensures the length property is not checked if it does not exist\r\n if (arrPathnames.some(path => thisPagePath.startsWith(path)) && arrPathnames.find(path => thisPagePath.startsWith(path)).length < thisPagePath.length) {\r\n updateBreadcrumbs(thisPagePath, breadcrumbExceptions);\r\n } else {\r\n showBreadcrumbs();\r\n }\r\n}\r\n\r\n/* Count up to number Script\r\n---------------------------------------------------------------------------- */\r\nfunction CountUpToNumber() {\r\n\t$('.StatsCounter .Stat').each(function(i) {\r\n\t\t$(this).find('.count-number-function').data('countToOptions', {\r\n\t\t\tformatter: function (value, options) {\r\n\t\t\t\treturn value.toFixed(options.decimals).replace(/\\B(?=(?:\\d{3})+(?!\\d))/g, ',');\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tfunction count(options) {\r\n\t\t\tvar $this = $(this);\r\n\t\t\toptions = $.extend({}, options || {}, $this.data('countToOptions') || {});\r\n\t\t\t$this.countTo(options);\r\n\t\t}\r\n\r\n\t\tvar counter = 0;\r\n\t\tvar coordinates = $(this).find('.count-number-function').offset();\r\n\t\tvar $timers = $(this).find('.count-number-function');\r\n\t\tvar timerInView = false;\r\n\r\n\t\tfunction onScroll() {\r\n\t\t\tvar myPosition = $(window).scrollTop() + $(window).height();\r\n\t\t\tif(coordinates) {\r\n\t\t\t\tif (myPosition >= coordinates.top) {\r\n\t\t\t\t\tif (counter === 0) {\r\n\t\t\t\t\t\t$timers.each(count);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tcounter = 1;\r\n\t\t\t\t\ttimerInView = true;\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttimerInView = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (timerInView) {\r\n\t\t\t\t$(window).off('scroll', onScroll);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t$timers.each(function() {\r\n\t\t\tvar timerCoordinates = $(this).offset();\r\n\t\t\tif (timerCoordinates) {\r\n\t\t\t\tif ($(window).scrollTop() + $(window).height() > timerCoordinates.top && $(window).scrollTop() < timerCoordinates.top + $(this).outerHeight()) {\r\n\t\t\t\t\tcount.call(this);\r\n\t\t\t\t\ttimerInView = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tif (timerInView) {\r\n\t\t\t$(window).off('scroll', onScroll);\r\n\t\t} else {\r\n\t\t\t$(window).on('scroll', onScroll);\r\n\t\t}\r\n\t});\r\n}\r\n\r\n// creates nav jumplinks in history timeline\r\n// function createHistoryJumplinks() {\r\n// let timeline = document.querySelector('#history-timeline-nav-wrap');\r\n// if (timeline) {\r\n// let jumpPoints = timeline.querySelectorAll('.timeline-header-wrap');\r\n// if (jumpPoints.length > 0) {\r\n// // create nav element\r\n// let jumplinkNav = document.createElement('ul');\r\n// jumplinkNav.id = 'history-timeline-nav';\r\n// timeline.prepend(jumplinkNav);\r\n\r\n// // loop through jumpPoints, assign each a unique ID\r\n// // and create matching link markup in the nav element\r\n// for (let i = 0; i < jumpPoints.length; i++) {\r\n// let uniqueId = `link${i}`;\r\n// jumpPoints[i].id = uniqueId;\r\n// // create list element\r\n// let newJumplink = document.createElement('li');\r\n// // create anchor element\r\n// let newJumplinkAnchor = document.createElement('a');\r\n// newJumplinkAnchor.href = `#${uniqueId}`;\r\n// newJumplinkAnchor.innerHTML = jumpPoints[i].querySelector('.timeline-header h3').innerHTML;\r\n// // add anchor to li\r\n// newJumplink.appendChild(newJumplinkAnchor);\r\n// // add li to ul\r\n// jumplinkNav.appendChild(newJumplink);\r\n// }\r\n// let hrBreak = document.createElement('hr');\r\n// jumplinkNav.insertAdjacentElement('afterEnd', hrBreak);\r\n// }\r\n// }\r\n// }\r\n\r\nfunction createHistoryJumplinks() {\r\n let timeline = document.querySelector('.TimelineSection');\r\n if (timeline) {\r\n let jumpPoints = timeline.querySelectorAll('.TimelineBanner');\r\n if (jumpPoints.length > 0) {\r\n // create nav element\r\n let jumplinkNav = document.createElement('ul');\r\n jumplinkNav.id = 'TimelineNav';\r\n timeline.prepend(jumplinkNav);\r\n\r\n // loop through jumpPoints, assign each a unique ID\r\n // and create matching link markup in the nav element\r\n for (let i = 0; i < jumpPoints.length; i++) {\r\n let uniqueId = `link${i}`;\r\n jumpPoints[i].id = uniqueId;\r\n // create list element\r\n let newJumplink = document.createElement('li');\r\n // create anchor element\r\n let newJumplinkAnchor = document.createElement('a');\r\n newJumplinkAnchor.classList.add('Button');\r\n newJumplinkAnchor.href = `#${uniqueId}`;\r\n newJumplinkAnchor.innerHTML = jumpPoints[i].querySelector('.BannerContentWrap h2').innerHTML;\r\n // add anchor to li\r\n newJumplink.appendChild(newJumplinkAnchor);\r\n // add li to ul\r\n jumplinkNav.appendChild(newJumplink);\r\n }\r\n }\r\n }\r\n}\r\n\r\n$window.on('load', function () {\r\n // Runs AFTER the entire page has loaded\r\n 'use strict';\r\n if (!$('#Blank').length) {\r\n stickyNavigation();\r\n //landingPageStickyNav();\r\n smoothScroll();\r\n }\r\n CountUpToNumber();\r\n});\r\n\r\n//bind to resize\r\n$window.resize(function () {\r\n // Runs as soon as the window is resized\r\n 'use strict';\r\n if (isAndroidDevice && $('input').is(':focus')) {\r\n //do nothing if input has focus\r\n } else {\r\n windowSize();\r\n \r\n moveElements();\r\n changeMobileMenuTabpanelMarkup();\r\n callCTAPlugin();\r\n flipCardHeight();\r\n $('body').tabAccordion();\r\n /* Accordion Breakpoint */\r\n if ($('.accordion').length > 0) {\r\n $('body').tabAccordion({\r\n breakpoint: 1024\r\n });\r\n }\r\n makeEmptyPanelsTransparent();\r\n }\r\n});\r\n\r\n//check for the orientation event and bind accordingly\r\n$window.on('orientationchange', function () {\r\n // Runs as soon as the screen orientation is changed\r\n 'use strict';\r\n windowSize();\r\n \r\n moveElements();\r\n changeMobileMenuTabpanelMarkup();\r\n callCTAPlugin();\r\n flipCardHeight();\r\n});\r\n\r\n// document.addEventListener('DOMContentLoaded', function() {\r\n// var stars = document.querySelectorAll('.stars');\r\n// stars.forEach(function(star) {\r\n// var originalWidth = star.style.width;\r\n// star.style.width = '0%'; // Set initial width to 0%\r\n// var animationName = 'animateWidth-' + Math.random().toString(36).substr(2, 5);\r\n\r\n// // Create a new keyframes rule\r\n// var styleSheet = document.styleSheets[0];\r\n// var keyframes = `@keyframes ${animationName} {\r\n// from {\r\n// width: 0%;\r\n// }\r\n// to {\r\n// width: ${originalWidth};\r\n// }\r\n// }`;\r\n// styleSheet.insertRule(keyframes, styleSheet.cssRules.length);\r\n\r\n// // Apply the animation to the element\r\n// star.style.animationName = animationName;\r\n// star.style.animationDuration = '1s';\r\n// star.style.animationFillMode = 'forwards';\r\n// });\r\n// });\r\n\r\n// document.addEventListener(\"DOMContentLoaded\", function() {\r\n// // Get all elements with the class 'SPItem'\r\n// var items = document.querySelectorAll('.SPItem');\r\n\r\n// items.forEach(function(item) {\r\n// // Find the .DrDistance div within the current .SPItem\r\n// var distanceDiv = item.querySelector('.DrDistance');\r\n// if (distanceDiv) {\r\n// // Create a new
- element with class 'DrDistanceWrap'\r\n// var ddElement = document.createElement('dd');\r\n// ddElement.classList.add('DrDistanceWrap');\r\n \r\n// // Append the .DrDistance div to the new
- element\r\n// ddElement.appendChild(distanceDiv);\r\n \r\n// // Find the
- element within the current .SPItem\r\n// var dlElement = item.querySelector('dl');\r\n// if (dlElement) {\r\n// // Append the new
- element to the
- element\r\n// dlElement.appendChild(ddElement);\r\n// }\r\n// }\r\n// });\r\n// });\r\n\r\n//934194 - Home video keeps pausing\r\nfunction updateIframeSrc(){\r\n if($('#Home .SectionInside .Carousel-3up .VideoContainer iframe')){\r\n setTimeout(() => {\r\n $('.VideoContainer iframe').each(function (i, item) {\r\n let src = item.getAttribute('src');\r\n if(src.includes('enablejsapi')){\r\n let splitSrc = src.split('&enablejsapi=1')\r\n item.setAttribute(\"src\",splitSrc[0]);\r\n }\r\n })\r\n }, 1000);\r\n }\r\n}\r\n\r\n$(document).ready(function () {\r\n // Runs as the page is loading\r\n 'use strict';\r\n ariaFixes();\r\n windowSize();\r\n moveElements();\r\n changeMobileMenuTabpanelMarkup();\r\n mobileMenuTabpanel();\r\n BasicSearch();\r\n GoogleTranslateIcon();\r\n BackToTop();\r\n MainNavDropDowns();\r\n callCTAPlugin();\r\n breadArrow();\r\n truncateBoxDay();\r\n setCurrentDay();\r\n swapSPSliderMarkup();\r\n relatedHubContent();\r\n sliders();\r\n addFocalPoint();\r\n addCaptionWidth();\r\n ChangeNewPatientsToCheckbox();\r\n locationBreadcrumbs();\r\n customDropdown();\r\n updateIframeSrc();\r\n\r\n if ($('body.Landing.Ohana2 #StaticPanelWrap').length && $('.Static-Button-Content-Section').length && $('#StaticPanel').length) {\r\n staticPanel();\r\n }\r\n\r\n /* Accordion Breakpoint */\r\n if ($('.accordion').length > 0) {\r\n $('body').tabAccordion({\r\n breakpoint: 1024\r\n });\r\n }\r\n\r\n // Load More reviews on Dr Profile\r\n if ($('.ReviewsWrap').length) {\r\n var showReviews = 9;\r\n var allReviews = $('.ReviewsWrap .ProviderReview');\r\n\r\n // remove load more button if there are 9 reviews or less shown\r\n if (showReviews >= allReviews.length) {\r\n $('.ReviewsWrap .LoadMore').hide();\r\n }\r\n\r\n // hide all of the reviews then slice them only showing the first 9\r\n allReviews.hide().addClass('hidden');\r\n allReviews.slice(0, 9).show();\r\n\r\n $('.ReviewsWrap .LoadMore').on('click', function (e) {\r\n e.preventDefault();\r\n // add 9 to the showReviews counter each time the load more button is clicked\r\n showReviews += 9;\r\n\r\n // show 9 more reviews when the load more button is clicked\r\n if (showReviews > 0) {\r\n $('.ReviewsWrap .ProviderReview').slice(0, showReviews).animate({ height: 'show', opacity: \"show\" }, { duration: 500, easing: \"swing\"});\r\n }\r\n\r\n // remove load more button if there are no longer any hidden reviews\r\n if (showReviews >= allReviews.length) {\r\n $('.ReviewsWrap .ButtonWrap').fadeOut(300);\r\n }\r\n });\r\n }\r\n\r\n /* Removing Userway icon inline styles for position override\r\n ----------------------------------------------------------------- */\r\n //$('.userway_buttons_wrapper').removeAttr('style');\r\n\r\n /* OHANA 2023: Hidden main menu on Ohana\r\n ----------------------------------------------------------------- */\r\n $('.Ohana2.Landing #HeaderTop').hide().removeClass('Header-Collapse');\r\n $('button.Expand-Collapse-Header').on('click', function () {\r\n $('#HeaderTop').slideToggle();\r\n var toggleTextSpan = $(this).find('.ToggleText');\r\n $(toggleTextSpan).text($(toggleTextSpan).text() == 'Expand Montage Health Menu' ? 'Collapse Montage Health Menu' : 'Expand Montage Health Menu');\r\n $('.OhanaHeaderWrap').toggleClass('main-menu-shown');\r\n });\r\n /* MOGO: Hidden main menu on MOGO\r\n ----------------------------------------------------------------- */\r\n $('.MoGo.Landing #HeaderTop').hide().removeClass('Header-Collapse');\r\n $('button.MoGo-Expand-Collapse-Header').on('click', function () {\r\n $('#HeaderTop').slideToggle();\r\n var toggleTextSpan = $(this).find('.ToggleText');\r\n $(toggleTextSpan).text($(toggleTextSpan).text() == 'Expand Montage Health Menu' ? 'Collapse Montage Health Menu' : 'Expand Montage Health Menu');\r\n $('.MoGoHeaderWrap').toggleClass('main-menu-shown');\r\n });\r\n /* MWC: Hidden main menu on MWC\r\n ----------------------------------------------------------------- */\r\n $('.MWC.Landing #HeaderTop').hide().removeClass('Header-Collapse');\r\n $('button.MWC-Expand-Collapse-Header').on('click', function () {\r\n $('#HeaderTop').slideToggle();\r\n var toggleTextSpan = $(this).find('.ToggleText');\r\n $(toggleTextSpan).text($(toggleTextSpan).text() == 'Expand Montage Health Menu' ? 'Collapse Montage Health Menu' : 'Expand Montage Health Menu');\r\n $('.MWCHeaderWrap').toggleClass('main-menu-shown');\r\n });\r\n /* MMG: Hidden main menu on MMG\r\n ----------------------------------------------------------------- */\r\n $('.MMG.Landing #HeaderTop').hide().removeClass('Header-Collapse');\r\n $('button.MMG-Expand-Collapse-Header').on('click', function () {\r\n $('#HeaderTop').slideToggle();\r\n var toggleTextSpan = $(this).find('.ToggleText');\r\n $(toggleTextSpan).text($(toggleTextSpan).text() == 'Expand Montage Health Menu' ? 'Collapse Montage Health Menu' : 'Expand Montage Health Menu');\r\n $('.MMGHeaderWrap').toggleClass('main-menu-shown');\r\n });\r\n /* Foundation: Hidden main menu on Foundation\r\n ----------------------------------------------------------------- */\r\n $('.Foundation.Landing #HeaderTop').hide().removeClass('Header-Collapse');\r\n \r\n /* Foundation: Hidden main menu on Foundation\r\n ----------------------------------------------------------------- */\r\n $('.Foundation.LandingInterior #HeaderTop').hide().removeClass('Header-Collapse');\r\n $('button.Foundation-Expand-Collapse-Header').on('click', function () {\r\n $('#HeaderTop').slideToggle();\r\n var toggleTextSpan = $(this).find('.ToggleText');\r\n $(toggleTextSpan).text($(toggleTextSpan).text() == 'Expand Montage Health Menu' ? 'Collapse Montage Health Menu' : 'Expand Montage Health Menu');\r\n $('.FoundationHeaderWrap').toggleClass('main-menu-shown');\r\n });\r\n\r\n\t/* removing size=small from thumbnail images\r\n\t----------------------------------------------------------------- */\r\n $('.SPList .Thumbnail img, .SPList .Picture img, .SPList .Thumbnail img').each(function() {\r\n\t\tvar src = $(this).attr('src');\r\n\t\t$(this).attr('src', src.replace('?size=small', ''));\r\n\t});\r\n\r\n $('#SmartPanelLocations .SPList .Picture img').each(function () {\r\n var src = $(this).attr('src');\r\n $(this).attr('src', src.replace('?size=locsmall', ''));\r\n })\r\n /* PAGES SMARTPANEL:\r\n\tswapping placeholder images on Ohana templates\r\n\t----------------------------------------------------------------- */\r\n $('body.Ohana2 .PageList .Thumbnail img').each(function() {\r\n var src = $(this).attr('src');\r\n\t\t$(this).attr('src', src.replace('page-placeholder.jpg', 'ohana-page-placeholder.jpg'));\r\n });\r\n\r\n /* EVENTS SMARTPANEL:\r\n updating link on Ohana events smartpanels to go to specific URL\r\n ----------------------------------------------------------------- */\r\n $('#PanelSmartPanelUpcomingEventswDateOhana, #PanelSmartPanelUpcomingEventswDateHomeOhana').each(function() {\r\n $(this).find('.MoreLink a').attr('href', '/classes-events/search-results/?TermId=3f5569c6-ff5c-eb11-a843-000d3a619f08');\r\n });\r\n\r\n //DESKTOP SITE SEARCH BUTTON\r\n $('.MobileMenuTabs .content.Search .InnerNavContent').append('');\r\n $('.MobileMenuTabs .content.Search .InnerNavContent').prepend('Search Montage Health');\r\n\r\n // CLICKING ON THE X ON THE SEARCH BOX WILL CLOSE THE SEARCH\r\n //====================================================\r\n $('.MobileMenuTabs .content.Search').on('click', '.NavContent button.CloseButton', function (ele) {\r\n ele.preventDefault();\r\n $('#MainNav li.Search button').removeClass('Open');\r\n $('.MobileMenuTabs .content.Search').removeClass('Open');\r\n $('.MobileMenuTabs .content.Search #SearchInput').blur();\r\n $('body').removeClass('NoScroll');\r\n $('#MainNav li.Search button').focus();\r\n });\r\n\r\n // ANY CLICK OUTSIDE OF THE FILTERS LIGHTBOX AREA WILL CLOSE AN ACTIVE FILTER OPTIONS BOX\r\n //====================================================\r\n $('.MobileMenuTabs .content.Search').on('click', function (e) {\r\n if ($('.NavContent').has(e.target).length === 0) {\r\n if ($('body.NoScroll').length) {\r\n $('.MobileMenuTabs .content.Search.Open .NavContent button.CloseButton').trigger('click');\r\n }\r\n }\r\n });\r\n\r\n //DESKTOP MAIN NAV SITE SEARCH BUTTON FUNCTIONALITY\r\n //====================================================\r\n $('#MainNav').on('click', 'li.Search button', function(elem) {\r\n elem.preventDefault();\r\n if($(this).find('li.Search button.Open').length) {\r\n $(this).find('li.Search button').removeClass('Open');\r\n $('.MobileMenuTabs .content.Search').removeClass('Open');\r\n $('.MobileMenuTabs .content.Search #SearchInput').blur();\r\n $('body').removeClass('NoScroll');\r\n } else {\r\n $('#MainNav li.Search button').addClass('Open');\r\n $('.MobileMenuTabs .content.Search').addClass('Open');\r\n $('.MobileMenuTabs .content.Search #SearchInput').focus();\r\n $('body').addClass('NoScroll');\r\n }\r\n });\r\n\r\n $(\"#Content h1\").first().addClass('headerFirst');\r\n\r\n if ($('body.ContentInterior').length) {\r\n if ($('#HubBanner').length) {\r\n $('#HubBanner').prependTo('#BannerWrap #Banner');\r\n //moving the actual h1 is done in the content-hub.js\r\n }\r\n } else {\r\n if ($('#Content h1.headerFirst').length) {\r\n\r\n if ($('#Content #DrDetail').length) {\r\n $('body').addClass('ProviderProfile');\r\n $('#Content h1.headerFirst').prependTo('#DrDetail .InfoLeft');\r\n\r\n } else {\r\n $('#Content h1.headerFirst').prependTo('#PageHeaderInner');\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n /*$('#MainNav li.Search button').click(function () {\r\n $('#HeaderTop .accordion.MobileMenuTabs').slideToggle('Active');\r\n $('#MainNav li.Search button').toggleClass('Active');\r\n //$('#mobileMenuPayload').css('display', '');\r\n //$('#mobileMenuButton').removeClass('Active');\r\n //$('#mobileMenuButton').attr('aria-expanded', 'false');\r\n //$('#mobileMenuPayload').attr('aria-hidden', 'true');\r\n\r\n if ($('#MainNav li.Search button.Active').length) {\r\n $('#MainNav li.Search button').attr('aria-expanded', 'true');\r\n $('#HeaderTop .accordion.MobileMenuTabs').attr('aria-hidden', 'false');\r\n //$('#Logo').css('margin-top', '140px');\r\n } else {\r\n $('#MainNav li.Search button').attr('aria-expanded', 'false');\r\n $('#HeaderTop .accordion.MobileMenuTabs').attr('aria-hidden', 'true');\r\n //$('#Logo').css('margin-top', '0');\r\n }\r\n\r\n return false;\r\n });*/\r\n\r\n //Forces the first \"Tab\" to be open on mobile sizes when the tabsToAccordions funciton is used\r\n //$('#DrDetail .TabContainer, #ServicesSearch .TabContainer, #DrSearch .TabContainer, #CalendarSearch .TabContainer').data('accordionClasses', 'StartOn1');\r\n tabsToAccordions();\r\n\r\n $('body').tabAccordion();\r\n $('.focuspoint').focusPoint();\r\n\r\n /* Click to Call */\r\n if (clickToCall.isAppleDevice() || clickToCall.isAndroidDevice()) {\r\n clickToCall.clickToCall();\r\n }\r\n\r\n /* HOME PAGE ONLY - if home page and no h1 exists wrap h1 around logo\r\n ----------------------------------------------------------------- */\r\n if (window.location.href.indexOf(\"/\") > -1 && !$('h1').length) {\r\n var $this = $('#HeaderTop #Logo a').parent('p');\r\n $this.replaceWith($(\"
\" + $this.html() + \"
\"));\r\n }\r\n\r\n /* HOME PAGE ONLY - remove anchor around logo\r\n ----------------------------------------------------------------- */\r\n if ( window.location.pathname == '/' ) {\r\n $('#HeaderTop #Logo a > img').unwrap();\r\n }\r\n // Large homepage background image - to avoid loading 3-4 very large image files when only one will be seen at desktop view\r\n // In a panel we have a ul with a list of 3-4 text links to images \r\n // These li's are hidden by default with css, this is randomly assigning a class of .Active to one of the li's\r\n var items = $(\"div.HomeBannerBack div\");\r\n var item = Math.floor(Math.random() * items.length);\r\n $(items[item]).addClass(\"Active\");\r\n\r\n // Next we are altering the mark-up of li.Active a to become img src, looking for the image that was initially linked - it needs to have a file extension listed below\r\n // in the css. li.Active gets a display:block at 1039px and higher\r\n homeImg();\r\n\r\n function homeImg() {\r\n $('.HomeBannerBack div.Active a').each(function () {\r\n var ext = getfileextension(this.href);\r\n switch (ext) {\r\n case '.gif':\r\n case '.png':\r\n case '.jpg':\r\n var img = $('', { src: this.href });\r\n $(this).replaceWith(img);\r\n break;\r\n }\r\n\r\n\r\n })\r\n function getfileextension(filename) {\r\n var dot = filename.lastIndexOf(\".\");\r\n if (dot == -1) return \"\";\r\n var extension = filename.substr(dot, filename.length);\r\n return extension;\r\n }\r\n // Now make it the background image for the banner area\r\n $('.HomeBannerBack .item.Active img').addClass('makeBkgd');\r\n $('.HomeBannerBack .item:not(.Active)').remove();\r\n\r\n $(\"#Banner .HomeBannerBack .Active .makeBkgd\").each(function() {\r\n // Grab the image\r\n var image_source = $(this).attr('src');\r\n\r\n // Set the background image\r\n $(\"#Banner\").css(\"background-image\",'url('+image_source+')');\r\n // Remove the image/extra html\r\n $(\"#Banner .cmspanel .item\").remove();\r\n });\r\n\r\n\r\n }\r\n landingImg()\r\n\r\n function landingImg() {\r\n $('body.Landing #Banner .BannerImg p img').addClass('makeBkgd');\r\n\r\n $(\"body.Landing #Banner .BannerImg p img.makeBkgd\").each(function() {\r\n // Grab the image\r\n var image_source = $(this).attr('src');\r\n\r\n // Set the background image\r\n $(\"body.Landing #Banner .BannerImg\").css(\"background-image\",'url('+image_source+')');\r\n // Remove the image/extra html\r\n $(\"body.Landing #Banner .BannerImg p\").remove();\r\n });\r\n //interior landing page banners\r\n $('body.LandingInterior #Banner .BannerImg p img').addClass('makeBkgd');\r\n\r\n $(\"body.LandingInterior #Banner .BannerImg p img.makeBkgd\").each(function() {\r\n // Grab the image\r\n var image_source = $(this).attr('src');\r\n\r\n // Set the background image\r\n $(\"body.LandingInterior #Banner .BannerImg\").css(\"background-image\",'url('+image_source+')');\r\n // Remove the image/extra html\r\n $(\"body.LandingInterior #Banner .BannerImg p\").remove();\r\n });\r\n //Ohana Landing Banner\r\n\r\n $(\"body#OhanaLanding #Banner .BannerImage img.makeBkgd\").each(function() {\r\n // Grab the image\r\n var image_source = $(this).attr('src');\r\n\r\n // Set the background image\r\n $(\"body#OhanaLanding #Banner .OhanaBanner\").css(\"background-image\",'url('+image_source+')');\r\n // Remove the image/extra html\r\n $(\"body#OhanaLanding #Banner .BannerImage\").remove();\r\n });\r\n }\r\n if ($('#HomeBottomLeft .cmspanel .SmartPanel').length) {\r\n $('#HomeBottomLeft .cmspanel .cmsPanelContent h2:first').addClass('First');\r\n $('#HomeBottomLeft .cmspanel .cmsPanelContent h2.First').prependTo('#HomeBottomLeft .cmspanel .Dec2');\r\n }\r\n\r\n $('#Home #Banner .PhotoText').append(' ');\r\n $('#Home #HomeTopRow #HomeTopLeft .cmspanel .Dec1').append(' ');\r\n /* Show Alert Panel if Cookie 'AlertPanel' does not exist yet\r\n ----------------------------------------------------------------- */\r\n if (!$.cookie('AlertPanel')) {\r\n $('#AlertPanel .cmspanel').show();\r\n }\r\n\r\n /* 'Add-Alert-Close-Button' Option for Alert Panel\r\n ----------------------------------------------------------------- */\r\n if ($('#AlertPanel .cmspanel .Add-Alert-Close-Button').length) {\r\n $('#AlertPanel .cmspanel .BasicPanel').append('');\r\n\r\n $('#AlertPanel .cmspanel').on('click', 'button.closebtn', function() {\r\n // Set the opacity of div to 0 (transparent)\r\n $('#AlertPanel .cmspanel').css('opacity','0');\r\n\r\n // Hide the div after 600ms (the same amount of milliseconds it takes to fade out)\r\n setTimeout(function(){ $('#AlertPanel .cmspanel').css('display','none'); }, 600);\r\n $.cookie(\"AlertPanel\", \"closed\", { path: '/' });\r\n });\r\n }\r\n\r\n $('#RightColumnPanels .cmspanel').prepend(' ');\r\n $('#LeftColumnPanels .cmspanel').prepend(' ');\r\n $('#BelowMainLeftRight .cmspanel').prepend(' ');\r\n $('#BelowPageContent .cmspanel').prepend(' ');\r\n $('.LandingRow .cmspanel.Hub').prepend(' ');\r\n\r\n /* Place Phone Link On Icon\r\n ----------------------------------------------------------------- */\r\n if($('ul.Payloads li.Call a.Place-Phone-Link-On-Icon').length) {\r\n var phoneHref = $('.CustomToggles ul.Payloads li.Call a.Place-Phone-Link-On-Icon').attr('href');\r\n $('.CustomToggles .Triggers .Call button').html('Call').contents().unwrap().parent().addClass('DontOpen');\r\n }\r\n\r\n /* Mobile Navigation\r\n ----------------------------------------------------------------- */\r\n $('.CustomToggles').each(function () {\r\n // create variables to use for the triggers and payloads\r\n var $CT = $(this),\r\n $triggers = $CT.find('.Triggers>li'),\r\n $payloads = $CT.find('.Payloads>li');\r\n\r\n // loop thru the triggers - using \"i\" as the counter, you can associate the tigger with the payload\r\n $triggers.each(function (i, trigger) {\r\n\r\n // clicking a trigger will slide up all payloads and will only slide down\r\n // if the associated payload wasn't the one you triggered\r\n $(trigger).not('.DontOpen').click(function () {\r\n $triggers.removeClass('Active');\r\n\r\n if ($payloads.eq(i).is(':hidden')) {\r\n $payloads.slideUp();\r\n // slide down the associated payload\r\n // .slideDown(1000) is 1 second\r\n // .slideDown(1000, function(){ do.something })\r\n // do.something happens after the slideDown command is finished.\r\n // zIndexTop is a class to make sure that the one you\r\n // clicked on is always sliding over the others.\r\n $payloads.eq(i).addClass('zIndexTop').slideDown(300, function () {\r\n $(this).removeClass('zIndexTop');\r\n $triggers.eq(i).addClass('Active');\r\n });\r\n } else {\r\n $payloads.slideUp();\r\n }\r\n });\r\n });\r\n });\r\n\r\n /* adding expand buttons via js so that it doesn't show if js is disabled.\r\n ----------------------------------------------------------------- */\r\n\r\n if($('body.Locations').length) {\r\n $('
At this Location
').insertBefore('#ProximityNavContent');\r\n $('').insertBefore('#ProximityNavContent');\r\n $('#ProximityNav h2 strong, #ProximityNav h2 a').unwrap().wrap('');\r\n } else {\r\n $('In this Section
').insertBefore('#ProximityNavContent');\r\n $('').insertBefore('#ProximityNavContent');\r\n $('#ProximityNav h2 strong, #ProximityNav h2 a').unwrap().wrap('');\r\n }\r\n\r\n if ($('.Locations #BelowPageContent .cmspanel .Events-Related').length) {\r\n $('.Locations #BelowPageContent .cmspanel .Events-Related').closest(\".cmspanel\").addClass(\"MovePanel\");\r\n $('.Locations .MovePanel.cmspanel').prepend(' ');\r\n $('.Locations .MovePanel').prependTo('.Locations .LocBottomRightBottom');\r\n }\r\n\r\n\r\n /* Drop Downs for Mobile (prox nav, related providers (location page), related services (location page), related events (location page))\r\n ----------------------------------------------------------------- */\r\n $('#ProximityNavWrap').on('click', '.ProxNavButton', function () {\r\n $('#ProximityNavContent').slideToggle();\r\n $(this).toggleClass('Active');\r\n if($('.ProxNavButton.Active').length) {\r\n $('#ProximityNavContent').attr('aria-hidden', 'false');\r\n $(this).attr('aria-expanded', 'true');\r\n } else {\r\n $('#ProximityNavContent').attr('aria-hidden', 'true');\r\n $(this).attr('aria-expanded', 'false');\r\n }\r\n return false;\r\n });\r\n\r\n /* Remove In This Section button if no proximity nav is present\r\n ------------------------------------------------------------------ */\r\n if ($('#ProximityNav ul a').length === 0) {\r\n $('.ProxNavButton').hide();\r\n }\r\n\r\n /* Remove margin-bottom from paragraphs with a button inside of them\r\n The p tag is automatically wrapped around anchors in TinyMCE\r\n ----------------------------------------------------------------- */\r\n $('.Button').each(function () {\r\n if ($(this).parent('p')) {\r\n $(this).parent('p').addClass('NoSpace');\r\n }\r\n });\r\n\r\n /* Background Image\r\n ------------------------------------------------------------------ */\r\n $('.ContentBanner > img').each(function() {\r\n var imgSrc = $(this).attr('src');\r\n $(this).parents('.ContentBanner').attr('style', 'background-image: url(' + imgSrc + ');');\r\n $(this).parents('.ContentBanner').prepend('');\r\n });\r\n /* Img-SemiWhite or Img-SemiBlack\r\n ------------------------------------------------------------------ */\r\n $('img.Img-SemiWhite').each(function() {\r\n if($(this).parent('.focuspoint').length) {\r\n $(this).parents('.focuspoint').addClass('Img-SemiWhite');\r\n } else {\r\n $(this).wrap('');\r\n }\r\n });\r\n $('img.Img-SemiBlack').each(function() {\r\n if($(this).parent('.focuspoint').length) {\r\n $(this).parents('.focuspoint').addClass('Img-SemiBlack');\r\n } else {\r\n $(this).wrap('');\r\n }\r\n });\r\n\r\n //Site Search\r\n //adding stripe to every 4th li (to account for hidden li's) start on 4\r\n $('.PageList ul li:nth-child(4n+4)').addClass(\"Stripe\");\r\n $('#SiteSearchContainer .ResultList ul li:nth-child(2n+2)').addClass(\"Stripe\");\r\n\r\n //adding stripe to every other\r\n $('#ClinicalTrialsSearch .Overflow dd:nth-child(2n+2)').addClass(\"Stripe\");\r\n $('#ClinicalTrialsSearch .Overflow dt:nth-child(2n+2)').addClass(\"Stripe\");\r\n $('#ClinicalTrialsResults .ResultsList ul li:nth-child(2n+2)').addClass(\"Stripe\");\r\n\r\n // Keeps accordions from jumping to the top of the page when accordion is really long\r\n // Reason for this hack: sticky nav was covering up the top of the accordion\r\n /*-----------------------------------------------------------------*/\r\n $('.Accordion .Trigger').each(function () {\r\n $(this).mouseup(function () {\r\n $('html, body').animate({ scrollTop: $window.scrollTop() });\r\n });\r\n });\r\n\r\n /* Adding auto-scroll to services links\r\n ---------------------------------------------------------------- */\r\n $(\"#BrowseTab .AlphabetLinks a\").each(function () {\r\n $(this).attr('href', function () {\r\n return this.href + '#ServicesSearch';\r\n });\r\n });\r\n\r\n /* Add TableContainer around tables to make scrollable on small screens\r\n ---------------------------------------------------------------- */\r\n $('.cmspage table, .cmspanel table').each(function() {\r\n $(this).wrap('');\r\n });\r\n\r\n /* Add VideoContainer around iframed YouTube videos\r\n ---------------------------------------------------------------- */\r\n $('iframe[src*=\"youtube.com\"], iframe[src*=\"youtube-nocookie.com\"], iframe[src*=\"vimeo.com\"]').each(function () { \r\n $(this).wrap('');\r\n $('.VideoContainer').closest('p').addClass('VideoP'); \r\n });\r\n\r\n /* Moving VideoContainer out of paragraph for templates */\r\n if($('body.MoGo, body.MWC, body.Foundation, body.MMG').length) {\r\n $('.VideoP .VideoContainer').each(function () { \r\n $(this).unwrap();\r\n });\r\n }\r\n\r\n /* Lightbox\r\n ----------------------------------------------------------------- */\r\n $(\"a.YouTubeVideo\").modaal({ type: 'video' }); // .YouTubeVideo also adds the video icon overtop of the image inside this link\r\n $(\"a.Lightbox-for-image\").modaal({ type: 'image' });\r\n $(\"a.Lightbox-for-img\").modaal({ type: 'image' });\r\n $(\"a.Lightbox-for-video\").modaal({ type: 'video' });\r\n $(\"a.Lightbox-for-iframe\").modaal({\r\n type: 'iframe',\r\n width: 1000\r\n });\r\n\r\n //---------- Buttons for Video Banner --------------//\r\n\r\n\t//Play/Pause button for video banner\r\n\tvar video = document.querySelector('.VideoBg video');\r\n\tvar btn = document.getElementById('playpause');\r\n\r\n\tfunction togglePlayPause() {\r\n\t\tif(video.paused){\r\n\t\t\tbtn.className = 'pause';\r\n\t\t\tvideo.play();\r\n\t\t}\r\n\t\telse {\r\n\t\t\tbtn.className = \"play\";\r\n\t\t\tvideo.pause()\r\n\t\t}\r\n\t}\r\n\tif($('#BannerVideo').length > 0){\r\n\t\tbtn.onclick = function() {\r\n\t\t\ttogglePlayPause();\r\n\t\t};\r\n\t}\r\n\r\n\t//Mute/Unmute button for video banner\r\n\tif ($(video).prop('muted', true)){\r\n\t\t$('#mute').css('background-image','url(/imgs/icons/sound.svg)');\r\n\t}\r\n\t$('#mute').click( function (){\r\n\t\tif( $(video).prop('muted') ) {\r\n\t\t\t$(video).prop('muted', false);\r\n\t\t\t$('#mute').css('background-image','url(/imgs/icons/nosound.svg)');\r\n\t\t} else {\r\n\t\t\t$(video).prop('muted', true);\r\n\t\t\t$('#mute').css('background-image','url(/imgs/icons/sound.svg)');\r\n\t\t}\r\n\t});\r\n\t//Mute banner video if mobile\r\n\t$(window).resize(function() {\r\n // This will fire each time the window is resized:\r\n if($(window).width() >= 800) {\r\n // if larger or equal\r\n\t\t\tif ($(video).prop('muted', true)){\r\n\t\t\t\t$('#mute').css('background-image','url(/imgs/icons/sound.svg)');\r\n\t\t\t}\r\n\r\n } else {\r\n // if smaller\r\n if ($(video).prop('muted', true)){\r\n\t\t\t\t$('#mute').css('background-image','url(/imgs/icons/sound.svg)');\r\n\t\t\t}\r\n }\r\n\t}).resize();\r\n\r\n /* CTA Color Bar\r\n ----------------------------------------------------------------- */\r\n $('#CallToAction .cmspanel h2:first').addClass('ColorBar');\r\n $('#CallToAction .cmspanel h3:first').addClass('ColorBar');\r\n\r\n /*$('#InlineCTA .cmspanel').each(function () {\r\n if($('#InlineCTA .cmspanel .CTAImg img').length) {\r\n $(this).addClass('hasImg');\r\n }\r\n });*/\r\n if($('.Move-Wide-CTA-Here').length) {\r\n $('#InlineCTA .cmspanel .CTAWide').prependTo('.Move-Wide-CTA-Here');\r\n $('#InlineCTA').remove();\r\n }\r\n\r\n /* SITE SEARCH: change Site Search tab to \"All\"\r\n ----------------------------------------------------------------- */\r\n $('#SiteSearchContainer .Tabnav li:contains(\"Site Search\") > *').text('All');\r\n\r\n /* ADDING ARROW STYLE ON \"Arrow-Link\" CLASS\r\n ----------------------------------------------------------------- */\r\n $('a.Arrow-Link').each(function () {\r\n //add nowrap span to last word so that last word and arrow don't wrap separately\r\n $(this).html(function(){\r\n // separate the text by spaces\r\n var text= $(this).text().split(' ');\r\n // drop the last word and store it in a variable\r\n var last = text.pop();\r\n // join the text back and if it has more than 1 word add the span tag to the last word\r\n return text.join(\" \") + (text.length >= 0 ? ' '+last+'' : last);\r\n });\r\n //add arrow button\r\n $(this).find('> span').append(' ');\r\n });\r\n\r\n /* ADDING ADDITIONAL PANEL BACKGROUND OPTIONS\r\n ----------------------------------------------------------------- */\r\n $('#AboveFooter .LightGreyPanel, #Home #AbovePageContent .LightGreyPanel, #Home #BelowPageContent .LightGreyPanel, #TaskNavigation .LightGreyPanel').parents('.cmspanel').addClass('LightGreyPanel');\r\n $('#AboveFooter .MidGreyPanel, #Home #AbovePageContent .MidGreyPanel, #Home #BelowPageContent .MidGreyPanel, #TaskNavigation .MidGreyPanel').parents('.cmspanel').addClass('MidGreyPanel');\r\n $('#AboveFooter .DarkGreyPanel, #Home #AbovePageContent .DarkGreyPanel, #Home #BelowPageContent .DarkGreyPanel, #TaskNavigation .DarkGreyPanel').parents('.cmspanel').addClass('DarkGreyPanel');\r\n \r\n $('.LandingRowWrap .Ohana-Bg1').parents('.LandingRowWrap').addClass('Ohana-Bg1');\r\n $('.LandingRowWrap .Ohana-Bg2').parents('.LandingRowWrap').addClass('Ohana-Bg2');\r\n\r\n $('.LandingRowWrap .Ohana-Element-Growth-Orange').parents('.LandingRow').prepend('');\r\n $('.LandingRowWrap .Ohana-Element-Growth-Purple').parents('.LandingRow').prepend('');\r\n\r\n $('.LandingRowWrap .Ohana-Element-Roots-Brightblue').parents('.LandingRow').prepend('');\r\n $('.LandingRowWrap .Ohana-Element-Roots-Limegreen').parents('.LandingRow').prepend('');\r\n $('.LandingRowWrap .Ohana-Element-Tree-Orange').parents('.LandingRow').prepend('');\r\n $('.LandingRowWrap .Ohana-Element-Twist-Green').parents('.LandingRow').prepend('');\r\n $('.LandingRowWrap .Ohana-Element-Circular-Limegreen').parents('.LandingRow').prepend('');\r\n\r\n /* Homepage background image scenery\r\n ----------------------------------------------------------------- */\r\n $(\"#Home #HomeMiddleRowWrap #ImgHolder .makeBkgd\").each(function() {\r\n // Grab the image\r\n var image_source = $(this).attr('src');\r\n\r\n // Set the background image\r\n $(\"#HomeMiddleRowWrap\").css(\"background-image\",'url('+image_source+')');\r\n // Remove the image/extra html\r\n $(\"#HomeMiddleRowWrap #ImgHolder .cmspanel\").remove();\r\n });\r\n if($(\"#HomeMiddleTop .cmspanel .Dec1\").length == 0) {\r\n $(\"#HomeMiddleRowWrap\").addClass('NoTop');\r\n }\r\n\r\n /* LOCATIONS MODULE:\r\n LOCATIONS SEARCH - ADD 'OR' BETWEEN SEARCH BOXES\r\n ----------------------------------------------------------------- */\r\n if ($('#LocationsSearch #LocationAdvancedSearch').length) {\r\n $('OR
').insertBefore('#LocationsSearch #LocationAdvancedSearch');\r\n }\r\n\r\n /* LOCATIONS MODULE:\r\n REMOVE SERVICES LINKS THAT DON'T RESOLVE TO A SERVICES PAGE\r\n ----------------------------------------------------------------- */\r\n if ($('#LocationsDetail .facetService li a').length) {\r\n $('#LocationsDetail .facetService li a').each(function (i, element) {\r\n\r\n var pageURL = $(element).attr('href'); // find the location\r\n\r\n $.ajax({\r\n url: pageURL,\r\n success: function (contents) { // go to that page\r\n if ($(contents).find('#ServicesSearch').length > 0) { // checking to see if resulting page has the services search (if so then remove link)\r\n $(element).contents().unwrap();\r\n }\r\n }\r\n });\r\n });\r\n }\r\n\r\n /* LOCATIONS MODULE:\r\n ADDING SEARCH ON RESULTS PAGE'\r\n ----------------------------------------------------------------- */\r\n $('#LocationsSearch .SearchBox, #LocationsSearch .divider:first, #LocationsSearch #LocationAdvancedSearch').wrapAll('');\r\n $('').insertBefore('#LocationsSearch .LocationSearchToggle');\r\n\r\n $('#LocationsSearch .LocationSearchWrapper .Toggle').click( function(e) {\r\n $('.LocationSearchToggle').slideToggle();\r\n $(this).attr('aria-expanded', $(this).attr('aria-expanded')=='false' ? 'true' : 'false');\r\n\r\n $('#LocationsSearch .LocationSearchWrapper .LocationSearchToggle').attr('aria-hidden', $('#LocationsSearch .LocationSearchWrapper .LocationSearchToggle').attr('aria-hidden')=='false' ? 'true' : 'false');\r\n e.preventDefault();\r\n });\r\n\r\n\r\n\r\n /* LOCATIONS SMARTPANEL\r\n ----------------------------------------------------------------- */\r\n if ($('.SmartPanel .LocationList').length) {\r\n $('.SmartPanel .LocationList dl').each(function () { $(this).find('dt, dd.Phone, dd.Address').wrapAll(''); });\r\n }\r\n $('#SmartPanelLocations li.SPItem dd.Picture img').each(function() {\r\n $(this).unwrap('a');\r\n });\r\n $('#SmartPanelLocations .MoreLink > a').text('View More Locations');\r\n\r\n $('#SmartPanelLocations li.SPItem dd.Picture img').each(function() {\r\n var src = $(this).attr('src');\r\n $(this).attr('src', src.replace('?size=locsmall', ''));\r\n $(this).unwrap('a');\r\n\r\n if (src.indexOf('silhouette_small') > 0) { //if the photo is the silhouette image, pull in svg version\r\n $(this).attr('src', src.replace('gif', 'svg'));\r\n }\r\n });\r\n\r\n\r\n /* Doctors Module: DOCTOR SEARCH\r\n ---------------------------------------------------------------- */\r\n $('.DrSearch .Gender').insertAfter('.DrSearch .PhysicianLast');\r\n\r\n /* DOCTORS SMARTPANEL:\r\n switch dr smartpanel photo to medium by removing size=small\r\n ----------------------------------------------------------------- */\r\n $('#DrSmartPanel li.SPItem dd.Picture img').each(function() {\r\n var src = $(this).attr('src');\r\n $(this).attr('src', src.replace('small', ''));\r\n $(this).unwrap('a');\r\n\r\n if (src.indexOf('silhouette') > 0) { //if the photo is the silhouette image, pull in svg version\r\n $(this).attr('src', src.replace('gif', 'svg'));\r\n }\r\n });\r\n $('#PanelSmartPanelRelatedPhysicians .MoreLink > a').text('View More Doctors');\r\n $('#HomeLeftRight #PanelSmartPanelRelatedDoctors .MoreLink > a').text('View More Doctors');\r\n\r\n\r\n\r\n\r\n /* SERVICES MODULE:\r\n moving h2 back out of tab container\r\n ----------------------------------------------------------------- */\r\n $('#ServicesSearch h2.TabHeader').insertBefore('#ServicesSearch .Tab').replaceWith(function() {\r\n return '' + $(this).text() + '
';\r\n });\r\n $('#ServicesSearch ul.Tabnav, #ServicesSearch input.ActiveTabFld').remove();\r\n\r\n /* CALENDAR MODULE:\r\n ----------------------------------------------------------------- */\r\n if ($('.CalendarDetailContent .EventStatus').length) {\r\n $('.CalendarDetailContent .EventStatus').insertAfter('.CalendarDetailContent fieldset');\r\n }\r\n\r\n if ($('.cmspage .CalendarDetail').length) { convertTable(); }\r\n\r\n // check to see how many inputs are in the searchbox and the apply a class so we can style accordingly\r\n if ($('#PageContent .cmspage .CalendarList .SearchBox .categoryDropDownDiv').length) {\r\n $('.CalendarList .SearchBox').addClass('WithDropdown');\r\n }\r\n\r\n //cal smartpanel\r\n var month,\r\n day,\r\n time,\r\n title,\r\n eventNum = 1;\r\n $('.Events-Upcoming-Calendar .SPItem').each(function () {\r\n month = $(this).find('.BoxMo').text().trim(),\r\n day = $(this).find('.BoxDate').text().trim(),\r\n time = $(this).find('.EventTime').text().trim(),\r\n title = $(this).find('.EventName').text().trim();\r\n if ($(this).find('.BoxMo').length) {\r\n $(this).find('.EventName a').attr('aria-label', 'Event ' + eventNum + ': ' + title + ' on ' + month + ' ' + day + ', ' + time);\r\n } else if ($(this).find('.Ongoing').length) {\r\n $(this).find('.EventName a').attr('aria-label', 'Event ' + eventNum + ': ' + title + ': Ongoing Event');\r\n }\r\n eventNum++;\r\n });\r\n\r\n /* if p.MoreLink is empty - remove it\r\n ----------------------------------------------------------------- */\r\n $('p.MoreLink').each(function () {\r\n if ($(this).html().trim().length <= 0) {\r\n $(this).remove();\r\n }\r\n });\r\n\r\n /* Clinical Trials\r\n ----------------------------------------------------------------- */\r\n // Switches the order of trial name and # of trails in the Clinical Trials tab container\r\n if ($('#ClinicalTrialsSearch .BrowseTabs').length) {\r\n // Tabs\r\n $('#ClinicalTrialsSearch .BrowseTabs .Tab dt span').each(function () {\r\n $(this).next('a').insertBefore(this);\r\n });\r\n // Tabs to accordions block\r\n $('#ClinicalTrialsSearch .BrowseTabs .TheTabContent dt span').each(function () {\r\n $(this).next('a').insertBefore(this);\r\n });\r\n }\r\n\r\n /* Forms & Documents\r\n ----------------------------------------------------------------- */\r\n // Switches the order of Department and # of documents in the Forms & Docs tab container\r\n if ($('#FormsAndDocuments .BrowseTabs').length) {\r\n // Tabs\r\n $('#FormsAndDocuments .BrowseTabs .Tab dt span').each(function () {\r\n $(this).next('a').insertBefore(this);\r\n });\r\n // Tabs to accordions block\r\n $('#FormsAndDocuments .BrowseTabs .TheTabContent dt span').each(function () {\r\n $(this).next('a').insertBefore(this);\r\n });\r\n }\r\n\r\n // If iframe has YouTube video, wrap with Video Container for flexability\r\n $('iframe.YouTubeVideoPlayer').wrap('');\r\n\r\n // Calendar Module -- if two date boxes appear add class Two to the second one\r\n $('.CalendarDetailContent .Table div.DateBox:eq(1)').addClass(\"Two\");\r\n\r\n /* Error App template\r\n ----------------------------------------------------------------- */\r\n // pulling in actual navigation from home page into app/error pages\r\n if ($('body.ErrorApp').length > 0) {\r\n $('#Logo a').each(function (i, el) {\r\n $.ajax({\r\n url: $(el).attr('href'),\r\n success: function (contents) {\r\n $('#MainNav').append($(contents).find('#MainNav').html());\r\n }\r\n });\r\n });\r\n }\r\n\r\n // In news results show the version with a featured image and hide the one without\r\n if ($('[id*=\"_PageListItem_ListItem\"]').length > 0) {\r\n $('[id*=\"_PageListItem_ListItem\"]').css('display','none');\r\n $('[id*=\"_PageListItem_ListItemImage\"]').css('display','block').addClass('ClearFix');\r\n\r\n $('[id*=\"_PageListItem_ListItemImage\"] img').each(function() {\r\n var src = $(this).attr('src');\r\n $(this).attr('src', src.replace('small', 'default'));\r\n });\r\n }\r\n\r\n /* Homepage Flip Cards\r\n ----------------------------------------------------------------- */\r\n // Set each FlipContainer to the min-height of the largest Card Back\r\n flipCardHeight();\r\n\r\n $('.FlipContainer').on(\"mouseenter mouseleave focus bind\", function (e) {\r\n $(this).toggleClass('Flip');\r\n });\r\n\r\n\r\n /* Landing Page Functionality\r\n --------------------------------------------------------------- */\r\n\r\n\r\n $.each($('.LandingRow'),function(){\r\n if($(this).children('.cmspanel').length == 1) {\r\n $(this).closest('.LandingRowWrap').addClass('OneUp');\r\n } else if ($(this).children('.cmspanel').length == 2) {\r\n $(this).closest('.LandingRowWrap').addClass('TwoUp');\r\n } else if ($(this).children('.cmspanel').length == 3) {\r\n $(this).closest('.LandingRowWrap').addClass('ThreeUp');\r\n }\r\n\r\n })\r\n\r\n $('.LandingRow .cmsPanelContent, .AboveContentPromo .cmsPanelContent').each(function () {\r\n if ($(this).children('.LandingWideTrigger').length) {\r\n $(this).closest('.LandingRowWrap').removeClass('OneUp').addClass('LandingWidePanel');\r\n } \r\n else if ($(this).children('.LandingWideSolidTrigger').length) {\r\n $(this).closest('.LandingRowWrap').removeClass('OneUp').addClass('LandingWideSolidPanel');\r\n } \r\n else if ($(this).children('.LandingWideHybridTrigger').length) {\r\n $(this).closest('.LandingRowWrap').removeClass('OneUp').addClass('LandingWideHybridPanel');\r\n } \r\n else if ($(this).children('.LandingWideHybridLeftTrigger').length) {\r\n $(this).closest('.LandingRowWrap').removeClass('OneUp').addClass('LandingWideHybridLeftPanel');\r\n } \r\n else if ($(this).children('.LandingWideHybridRightTrigger').length) {\r\n $(this).closest('.LandingRowWrap').removeClass('OneUp').addClass('LandingWideHybridRightPanel');\r\n } \r\n else if ($(this).children('.LandingWideSmartTrigger').length) {\r\n $(this).closest('.LandingRowWrap').removeClass('OneUp').addClass('LandingWideSmartPanel');\r\n } \r\n else if ($(this).children('.LandingWideMoGoTrigger').length) {\r\n $(this).closest('.LandingRowWrap').removeClass('OneUp').addClass('LandingWideMoGoBlueTexture');\r\n } \r\n else if ($(this).children('.LandingContent').length) {\r\n $(this).closest('.LandingRowWrap').removeClass('OneUp').addClass('LandingContentWrap');\r\n } \r\n });\r\n\r\n /*$('.LandingRow .cmsPanelContent .Col').each(function () {\r\n if ($(this).children('.UndoSmart').length) {\r\n $(this).closest('.LandingRowWrap').removeClass('GrayBack').addClass('MoveSmart');\r\n $('.LandingRowWrap.MoveSmart').removeClass('GrayBack');\r\n }\r\n });*/\r\n\r\n\r\n $(\".LandingRowWrap .makeBkgd\").each(function() {\r\n // Grab the image\r\n var image_source = $(this).attr('src');\r\n\r\n // Set the background image\r\n $(this).closest('.LandingRowWrap').css(\"background-image\",'url('+image_source+')');\r\n\r\n // Remove the image/extra html\r\n $(this).closest('p.bkgdWrap').remove();\r\n });\r\n\r\n $(\".LandingRowWrap .cmspanel .SmartPanel\").closest(\".cmspanel\").addClass(\"SmartPanelStyles\");\r\n $(\".LandingRowWrap .cmspanel .SmartPanel\").closest(\".LandingRowWrap\").removeClass(\"OneUp\").addClass(\"GrayBack\");\r\n $(\".LandingRowWrap.LandingWideSmartPanel\").closest(\".LandingRowWrap\").removeClass(\"GrayBack\");\r\n\r\n\r\n\r\n $(\".LandingRowWrap.LandingWideSmartPanel h2\").wrapInner(\"\");\r\n\r\n\r\n //FUNCTIONALITY OF THE OHANA BANNER LINKS - Both Scripts Below Needed\r\n $('.BannerWrap .accordion .listitem').on(\"mouseenter focus\", function() {\r\n //this allows us to hide the original Primary CTA for the moment\r\n $('.PrimaryCTA, .SecondaryCTA').addClass('ShowContent');\r\n //moves content to show in Primary CTA position\r\n $(this).children('.toggle').next('.content').addClass('Active');\r\n $(this).addClass('Active');\r\n\r\n var attr = $(this).find('a.heading').attr('data-img');\r\n // For some browsers, `attr` is undefined; for others, `attr` is false. Check for both.\r\n if (typeof attr !== typeof undefined && attr !== false) {\r\n var newImageSrc = $(this).find('a.heading').attr(\"data-img\");\r\n //$('.OhanaBanner').prepend('');\r\n //$('.OhanaBanner').prepend('
');\r\n //$('.OhanaBanner .MovedImageIE').attr('style', 'background-image: url(' + newImageSrc + ');');\r\n $('.OhanaBanner a.heading').closet('.toggle').prepend('');\r\n }\r\n }).on(\"mouseleave blur\", function() {\r\n $('.OhanaBanner .MovedImage').remove();\r\n $('.OhanaBanner .MovedImageIE').remove();\r\n //this allows us to show again the original Primary CTA\r\n $('.PrimaryCTA, .SecondaryCTA').removeClass('ShowContent');\r\n //moves content shown in Primary CTA position back to under the secondary cta anchor\r\n // $('.MovedContent').insertAfter($(this).parents('.toggle'));\r\n $(this).children('.toggle').next('.content').removeClass('Active');\r\n $(this).removeClass('Active');\r\n });\r\n\r\n $('.BannerWrap .OhanaBanner .accordion .listitem').attr('tabindex','0');\r\n\r\n if($('#OhanaLanding #accordion-tab-1 .moveSpan').length) {\r\n $('#accordion-tab-1 .moveSpan').prependTo('a#accordion-link-1');\r\n }\r\n if($('#OhanaLanding #accordion-tab-2 .moveSpan').length) {\r\n $('#accordion-tab-2 .moveSpan').prependTo('a#accordion-link-2');\r\n }\r\n if($('#OhanaLanding #accordion-tab-3 .moveSpan').length) {\r\n $('#accordion-tab-3 .moveSpan').prependTo('a#accordion-link-3');\r\n }\r\n if($('#OhanaLanding #accordion-tab-4 .moveSpan').length) {\r\n $('#accordion-tab-4 .moveSpan').prependTo('a#accordion-link-4');\r\n }\r\n if($('#OhanaLanding #accordion-tab-5 .moveSpan').length) {\r\n $('#accordion-tab-5 .moveSpan').prependTo('a#accordion-link-5');\r\n }\r\n if($('#OhanaLanding #accordion-tab-6 .moveSpan').length) {\r\n $('#accordion-tab-6 .moveSpan').prependTo('a#accordion-link-6');\r\n }\r\n\r\n\r\n if ($('.OhanaBanner').length) {\r\n $('.OhanaBanner .PrimaryCTA').append('');\r\n $('.OhanaBanner .PrimaryCTA').prepend('');\r\n\r\n $('.OhanaBanner .listitem .content').append('');\r\n $('.OhanaBanner .listitem .content').prepend('');\r\n }\r\n\r\n $('body.Landing .cmspage').each(function (i, el) {\r\n // Remove white space\r\n var html = $(el).html().replace(/\\s+/, '');\r\n // Check if element is :empty or length of html is zero\r\n if ($(el).is(':empty') || html.length === 0)\r\n $(el).remove();\r\n });\r\n\r\n $('#SmartPanelPagesRelated .PublicationDate').remove();\r\n\r\n /* make empty panels transparent */\r\n makeEmptyPanelsTransparent();\r\n \r\n handleBreadcrumbs();\r\n\r\n createHistoryJumplinks();\r\n});\r\n\r\n/* End of Doc Ready */"],"file":"montage.js"}
- element to the