{"version":3,"sources":["ts/dbs.franchise.ts"],"names":["TimeForYou","Franchise","targetWidth","slideMargin","let","sliders","sliderParents","gallerySliderLoad","$","colorbox","maxWidth","maxHeight","photo","current","generateOptions","wrap","currentSlide","minSlides","maxSlides","moveSlides","slideWidth","count","Math","round","clientWidth","floor","auto","autoStart","pause","pager","startSlide","nextText","prevText","onSliderLoad","resizeSlider","i","length","getCurrentSlide","destroySlider","bxSlider","Initialise","each","_","elem","url","data","location","toString","fbUrl","shareOptions","push","option","shareUrl","jsSocials","showCount","showLabel","shares","appendTo","parent","parentsUntil","window","addEventListener","click","btnEv","preventDefault","this","find","collapse","on","readMore","text","removeClass","addClass","modal","scrollTop","offset","top","outerHeight","passive","featureFlag","document","body","classList","add"],"mappings":"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","file":"dbs.franchise.js","sourcesContent":["/// \r\n/// \r\n/// \r\n/// \r\n\r\n// ReSharper disable once InconsistentNaming\r\ndeclare var featureFlag: string;\r\n\r\nmodule TimeForYou.Franchise\r\n{\r\n const targetWidth = 275;\r\n const slideMargin = 20;\r\n\r\n let sliders: Array = [];\r\n let sliderParents: Array = [];\r\n\r\n function gallerySliderLoad()\r\n {\r\n $(\".gallery-slider a[rel=thumbs]\").colorbox({\r\n maxWidth: \"80%\",\r\n maxHeight: \"80%\",\r\n photo: true,\r\n current: \"\"\r\n });\r\n }\r\n\r\n function determineSlideWidth(wrap: HTMLElement): number\r\n {\r\n if (wrap == null)\r\n {\r\n return 0;\r\n }\r\n\r\n const count = Math.round(wrap.clientWidth / targetWidth);\r\n const width = Math.floor((wrap.clientWidth - (slideMargin * (count + 0.5))) / count);\r\n return width;\r\n }\r\n\r\n function generateOptions(wrap: HTMLElement, currentSlide = 0): bxSliderOptions\r\n {\r\n return {\r\n slideMargin: slideMargin,\r\n minSlides: 1,\r\n maxSlides: 4,\r\n moveSlides: 1,\r\n slideWidth: determineSlideWidth(wrap),\r\n auto: true,\r\n autoStart: true,\r\n pause: 4000,\r\n pager: false,\r\n startSlide: currentSlide,\r\n nextText: \"\",\r\n prevText: \"\",\r\n onSliderLoad: gallerySliderLoad\r\n };\r\n }\r\n\r\n function resizeSlider()\r\n {\r\n for (let i = 0; i < sliders.length; i++)\r\n {\r\n const currentSlide = sliders[i].getCurrentSlide();\r\n sliders[i].destroySlider();\r\n\r\n sliders[i] = $(sliders[i]).bxSlider(generateOptions(sliderParents[i], currentSlide));\r\n }\r\n }\r\n\r\n export function Initialise()\r\n {\r\n $(\".franchise-social\").each((_, elem) =>\r\n {\r\n let url: string = $(elem).data(\"url\");\r\n if (url === \"\")\r\n {\r\n url = location.toString();\r\n }\r\n\r\n const shareOptions: Array = [];\r\n\r\n if ($(elem).data(\"twitter\") === \"True\")\r\n {\r\n shareOptions.push(\"twitter\");\r\n }\r\n\r\n if ($(elem).data(\"facebook\") === \"True\")\r\n {\r\n shareOptions.push(\"facebook\");\r\n }\r\n\r\n if ($(elem).data(\"googleplus\") === \"True\")\r\n {\r\n shareOptions.push(\"googleplus\");\r\n }\r\n\r\n if (shareOptions.length === 0)\r\n {\r\n return;\r\n }\r\n\r\n for (let option of shareOptions)\r\n {\r\n let shareUrl = url;\r\n if (option === \"facebook\")\r\n {\r\n const fbUrl = $(elem).data(\"facebook-url\");\r\n if (fbUrl !== null && fbUrl !== \"\")\r\n {\r\n shareUrl = fbUrl;\r\n }\r\n }\r\n\r\n\r\n const share = $(\"
\").jsSocials({\r\n showCount: false,\r\n showLabel: true,\r\n url: shareUrl,\r\n shares: [option]\r\n });\r\n\r\n share.appendTo(elem);\r\n }\r\n });\r\n\r\n $(\".gallery-slider\").each((_, elem) =>\r\n {\r\n const parent = $(elem).parentsUntil(\"section\", \".container\")[0];\r\n\r\n sliderParents.push(parent);\r\n sliders.push($(elem).bxSlider(generateOptions(parent)));\r\n });\r\n window.addEventListener(\"resize\", resizeSlider);\r\n\r\n $(\".franchise-content .content-read-more\").click(function(this: JQuery, btnEv)\r\n {\r\n btnEv.preventDefault();\r\n\r\n $(this).parentsUntil(\".franchise-content\", \".container\").find(\".collapse\").collapse(\"toggle\");\r\n });\r\n\r\n $(\".franchise-content .collapse\").on(\"hidden.bs.collapse\", function(this: JQuery)\r\n {\r\n const readMore = $(this).parentsUntil(\".franchise-content\", \".container\").find(\".content-read-more\");\r\n\r\n readMore.find(\"span\").text(\"Read more\");\r\n readMore.find(\"i\").removeClass(\"fa-angle-double-up\");\r\n readMore.find(\"i\").addClass(\"fa-angle-double-down\");\r\n });\r\n\r\n $(\".franchise-content .collapse\").on(\"shown.bs.collapse\", function(this: JQuery)\r\n {\r\n const readMore = $(this).parentsUntil(\".franchise-content\", \".container\").find(\".content-read-more\");\r\n\r\n readMore.find(\"span\").text(\"Read less\");\r\n readMore.find(\"i\").removeClass(\"fa-angle-double-down\");\r\n readMore.find(\"i\").addClass(\"fa-angle-double-up\");\r\n });\r\n\r\n $(\"a[href='#testimonial-dialog']\").click(btnEv =>\r\n {\r\n btnEv.preventDefault();\r\n $(\"#testimonial-dialog\").modal(\"show\");\r\n });\r\n\r\n $(\".cover-read-more\").click(btnEv =>\r\n {\r\n btnEv.preventDefault();\r\n $(\"#areas-covered-dialog\").modal(\"show\");\r\n });\r\n\r\n window.addEventListener(\"scroll\", () =>\r\n {\r\n const wndPos = $(window).scrollTop();\r\n const blockBottom = $(\".contact-block\").offset().top + $(\".contact-block\").outerHeight();\r\n\r\n if (blockBottom > wndPos)\r\n {\r\n $(\".contact-link\").removeClass(\"fixed-link\");\r\n }\r\n else\r\n {\r\n $(\".contact-link\").addClass(\"fixed-link\");\r\n }\r\n }, { passive: true });\r\n\r\n if (featureFlag)\r\n {\r\n document.body.classList.add(\"feature-flag-on\");\r\n }\r\n }\r\n}\r\n\r\nwindow.addEventListener(\"load\", TimeForYou.Franchise.Initialise);"]}