{"version":3,"sources":["mc.js"],"names":["max","fnProgresiveImageLoad","images","document","querySelectorAll","innerWidth","window","ajaxSetup","i","length","imgElm","imgWidth","$","width","getScript","url","options","breakpoints","xs","dataset","extend","iel","createElement","iWidth","sKey","mc","constants","bp","min","all","ajax","fnProgresiveImageReplace","sSrcHd","loadDependencies","e","src","replace","Math","onload","oDep","dependencies","promise","style","format","floor","height","noop","css","globals","windowDimensions","currentBreakpoint","name","sm","md","lg","xl","cache","dataType","ajaxAll","urls","Promise","map","o","waitFor","d","j","loadCSS","push","fnSaveCallback","on","f","c","events","iEvent","args","arguments","m","n","prototype","toFriendlyUrl","toLowerCase","html","tmp","innerHTML","textContent","innerText","s4","random","toString","substring","each","ready","when","apply","then","readyFired","load","loadFired","resize","resizeFired","fnSaveCallbackLoadDep","parseQueryString","sUrl","URL","key","value","oUrl","decodeURIComponent","split","queryString","getFriendlyUrl","str","asFriendlyUrl","hash","seperator","get","slice","call","aHashes","location","_merge","aArgs","oHash","set","Array","join","encode","aEncodedHashes","encodeURIComponent","decode","a","h","newTab","showPopup","filter","attr","test","hrefLead","charAt","trim","outgoingLinks","ignoreDomains","matchDomain","href","addTargetIconPopup","elm","preventDefault","popupAction","sTitle","addIcon","append","result","open","matchUrl","pattern","indexOf","isExternal","match","protocol","RegExp","host","checkLinks","getAttribute","template","plugins","Object","keys","pipe","fn","data","iterator","oRetVal","aList","isArray","forEach","tempTemplate","placeholder","p","oPipe","_parsePipe","err","setTimeout","dataLink","removeAttribute","setAttribute","addEventListener","pipeParts","addPlugin","toUpperCase","Number","loader","_tmplImage","_tmplBackdrop","oSel","show","_parseSelector","innerHeight","hide","remove","modal","sContent","sTemplate","uuid","templates","sId","platform","version","keyboard","showIframe","iHeight","sFrameId","moment","makeCarousel","selector","addClass","owlCarousel","items","nav","dots","createSelectOptions","sSel","aData","sVal","sText","bPlaceholder","sOptions","$sel","preloadImg","aImg","query","el","prefix","find","animate","scrollTop","offset","top","scrollChange","scrollTo","run","click","oModal","to","counter","duration","easing","init","text","start","end","parseInt","dir","oItem","watch","scroll","item","done","countNum","step","ceil","num","toLocaleString","func","wait","immediate","timeout","context","later","callNow","rect","getBoundingClientRect","left","bottom","documentElement","clientHeight","right","clientWidth","fnResize","deviceWidth","lazyLoad","loadingImg","allSelector","xsSelector","smSelector","bInitialLoad","Lazy","autoDestroy","chainable","bind","not","noLoadingSelector","lazy","sSelector","bIgnoreMobileCheck","oUl","sActiveClass","oLi","oChildUl","oA","add","oMoreLinks","oUlToHide","oUlHide","slideUp","queue","closest","removeClass","index","initAccordionNav","fitNavInViewport","oElm","leftPos","CId","CtId","CDetailId","CActive","CDeleted","CUnderConstruction","CTitle","CIntroText","CIntroPhoto","CIntroLink","CIntroLinkText","CCommentsEnabled","ChangeFrequency","CSeoTitle","CSeoUrl","CTesting","CIntroPhotoMode","contentBlock","CIdChild","CIdChildNavigation","CbFileText","CbHeadline","CbId","CbLink","CbLinkTarget","CbLinkText","CbPhotoAlign","CbPhotoAltText","CbPhotoCaption","CbPhotoMetadata","CbSortOrder","tagToContent","tag","content","CInNavigation","TId","TtcPageUrl","TPath","Date","oTbl","iTblWidth","outerWidth","IncludeInSitemap","outerHeight","iContentWidth","oWrap","wrap","parent","CHeadContent","iTblHeight","CSidebarMode","popup","hasClass","CbMetaData","sCookieVal","val","sRedirect","Cookies","expires","gtag","showEmergencyAlert","span","emergency","swal","title","button","opacity","videos","autohide","rel","showinfo","disablekb","enablejsapi","iv_load_policy","videoId","video","defaults","initialized","controls","vheight","vwidth","mute","ytLoadAPI","ytPlayerReady","autoplay","player","loadVideoById","rescale","prepend","YT","fTag","getElementsByTagName","parentNode","insertBefore","modestbranding","Player","w","vh","setSize","getId","ID","undefined","k","collapse","next","toggleClass","playerVars","elm2","keyCode","fnSizeCaptions","image","pool","available","used"],"mappings":"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","file":"mc.min.js","sourcesContent":["// load the bundle.js file. Bundle will automatically call mc.init(); when it has loaded\r\n(function () {\r\n mc.ajax = $.ajax;\r\n mc.noop = $.noop;\r\n\r\n /*********************************************************************************************\r\n * Dependencies - dictionary of external libraries\r\n *********************************************************************************************/\r\n mc.dependencies = {\r\n 'analytics': { src: 'https://resources.mojoactive.com/js/mc-gtag.1.0.js' }, // 5 KB\r\n 'angular': { src: '/dist/js/angular.min.js' }, // 165 KB \r\n 'bootstrap': { src: '/dist/js/bootstrap.min.js' }, // 14 KB\r\n 'center-carousel': { src: '/js/mojoJs/center-carousel.js' }, // 7 KB\r\n 'flatpickr': { src: '/dist/js/flatpickr.min.js', css: ['/dist/css/flatpickr.min.css'] }, // 44 KB \r\n 'fontawesome': { src: '/dist/js/fontawesome.js' }, // 34 KB \r\n 'google-search': { src: 'https://resources.mojoactive.com/google-search/google-search.1.1.js' }, // 5 KB\r\n 'jasmine': { src: '/data/compiled/js/jasmine-07072016125523.min.js' }, // 84 KB\r\n 'jasmine-tests': { src: '/js/mojoJs/jasmine-tests.js' }, // 20 KB\r\n 'kendo': {\r\n src: '/js/kendo/kendo.web.min.js',\r\n css: ['/style/third-party/kendo/kendo.common.min.css',\r\n '/style/third-party/kendo/kendo.default.min.css']\r\n }, // 1437 KB\r\n 'moment': { src: '/dist/js/moment.min.js' }, // 51 KB\r\n 'navadmin': { src: '/dist/js/nav-admin.min.js' },\r\n 'owl-carousel': { src: '/dist/js/owl.carousel.min.js', css: ['/dist/css/owl.carousel.min.css'] }, // 44 KB \r\n 'popper': { src: '/dist/js/popper.min.js' }, // 21 KB\r\n 'underscore': { src: '/dist/js/underscore-min.js' }, // 18 KB \r\n 'shopify': { src: '/dist/js/shopify.js' }, // 1 KB \r\n 'validator': { src: '/dist/js/validator.js' }, // 1 KB \r\n 'event-details': { src: '/custom-tools/events/event-details.js' }, // 1 KB \r\n 'popup': { src: '/js/showPopup.js' },\r\n 'lodash': { src: 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.min.js' },\r\n 'mustache': { src: 'https://cdnjs.cloudflare.com/ajax/libs/mustache.js/3.0.1/mustache.min.js' },\r\n 'translate': { src: 'https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit' },\r\n 'userway': { src: '/js/userway.js' },\r\n 'cookie': { src: '/dist/js/js.cookie.min.js' },\r\n 'recaptcha': { src: 'https://www.google.com/recaptcha/api.js' },\r\n 'parallax': { src: '/dist/js/parallax.min.js' },\r\n 'mousetrap': { src: 'https://cdnjs.cloudflare.com/ajax/libs/mousetrap/1.6.2/mousetrap.min.js' },\r\n 'tinycolor': { src: '/dist/js/tinycolor.min.js' },\r\n 'swal': { src: '/dist/js/sweetalert.min.js' },\r\n 'pagespeed': { src: '/dist/js/mc-pagespeed.min.js' },\r\n 'MoJoVideo': { src: '/js/mojojs/MojoVideo.js' },\r\n 'YouTube': { src: 'https://www.youtube.com/player_api' },\r\n 'Vimeo': { src: 'https://player.vimeo.com/api/player.js' }\r\n }\r\n\r\n /*********************************************************************************************\r\n * Add the remaining data to the mojo Variable. This section can be modified as needed.\r\n *********************************************************************************************/\r\n mc.globals = {\r\n windowDimensions: {\r\n width: 0,\r\n height: 0\r\n },\r\n currentBreakpoint: null\r\n };\r\n mc.constants = {\r\n breakpoints: {\r\n xs: { name: 'xs', min: 0, max: 576 },\r\n sm: { name: 'sm', min: 576, max: 767 },\r\n md: { name: 'md', min: 768, max: 991 },\r\n lg: { name: 'lg', min: 992, max: 1199 },\r\n xl: { name: 'xl', min: 1200, max: 9999 }\r\n }\r\n };\r\n\r\n /*********************************************************************************************\r\n * mojo Setup Code (DO NOT modify this section unless you know what you are doing)\r\n *********************************************************************************************/\r\n $.ajaxSetup({ cache: true });\r\n mc.getScript = function (url, options) {\r\n options = $.extend(options || {}, { dataType: \"script\", cache: true, url: url });\r\n return mc.ajax(options);\r\n };\r\n\r\n mc.ajaxAll = function (urls) { return Promise.all(urls.map(o => mc.ajax(o))); }\r\n\r\n // dependency based function execution.\r\n mc.loadDependencies = function (e) {\r\n e.waitFor = []; // keep a list of promises to wait for\r\n if (e.d != null) { // if dependencies\r\n for (var i = 0; i < e.d.length; i++) { // for every dependency\r\n var oDep = mc.dependencies[e.d[i]]; // get a handle to the dependency\r\n if (!oDep.promise) { // if it is not loaded\r\n if (oDep.css && oDep.css.length > 0) { // check for css dependecies \r\n for (var j = 0; j < oDep.css.length; j++) { // and load if found\r\n mc.loadCSS(oDep.css[j]);\r\n }\r\n }\r\n oDep.promise = mc.getScript(oDep.src); // ajax load js, save handle to promise\r\n }\r\n e.waitFor.push(oDep.promise); // push promise to the list to wait for\r\n }\r\n }\r\n };\r\n\r\n // overwrite the mc.on functionaliy to handle ready and load event registrations before mc.init has run\r\n // load dependencies, do not execute functions here (this happens below inside mc.init)\r\n var fnSaveCallback = mc.on;\r\n mc.on = function (e, d, f) {\r\n var c = fnSaveCallback(e, d, f);\r\n mc.loadDependencies(c);\r\n return c;\r\n };\r\n\r\n // load dependencies for anything that was declared before this file was loaded\r\n for (var sKey in mc.events) {\r\n for (var iEvent = 0; iEvent < mc.events[sKey].length; iEvent++) {\r\n mc.loadDependencies(mc.events[sKey][iEvent]);\r\n }\r\n }\r\n\r\n /*********************************************************************************************\r\n * Prototypes\r\n *********************************************************************************************/\r\n\r\n // add String.format to our JavaScript abilities\r\n // Usage: 'I am a {0} programmer'.format('great')\r\n String.prototype.format = function () {\r\n var args = arguments;\r\n return this.replace(/\\{(\\d+)\\}/g, function (m, n) { return args[n]; });\r\n };\r\n\r\n // Returns a formated string with any non numeric characters removed\r\n // along with any double dashes removed.\r\n // Health & Wellness (Centers) => health-wellness-centers\r\n String.prototype.toFriendlyUrl = function () {\r\n return this.toLowerCase().replace(/[^A-z0-9\\-]/g, \"-\") // Repalce any non alphanumeric and non dash character with a dash\r\n .replace(/^-|-$|-{2,}/g, \"-\") // Replace any dash at the beginning, end, or two consecutive dashes with one dash\r\n }\r\n\r\n // removes html from a string\r\n mc.stripHTML = function (html) {\r\n var tmp = document.createElement(\"DIV\");\r\n tmp.innerHTML = html;\r\n return tmp.textContent || tmp.innerText || \"\";\r\n }\r\n\r\n // generate a random unique id\r\n mc.uuid = function () {\r\n function s4() { return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1); }\r\n return s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4();\r\n }\r\n\r\n /*********************************************************************************************\r\n * Loads a small version of the intro photo (blury) which later fades in the larger version \r\n *********************************************************************************************/\r\n function fnProgresiveImageLoad() {\r\n var images = document.querySelectorAll('[data-src-hd]');\r\n var innerWidth = window.innerWidth;\r\n\r\n for (var i = 0; i < images.length; i++) {\r\n var imgElm = images[i];\r\n var imgWidth = $(imgElm).width();\r\n\r\n if (innerWidth > mc.constants.breakpoints.xs.max && imgElm && \"srcHd\" in imgElm.dataset && imgWidth > 1024) {\r\n var sSrcHd = imgElm.dataset['srcHd']; // js dataset camel-cases attributes (ex. src-hd is srcHd)\r\n var iel = document.createElement('img');\r\n var iWidth = window.innerWidth;\r\n\r\n for (var sKey in mc.constants.breakpoints) { // we want to round the iWidth var to the next breakpoint\r\n var bp = mc.constants.breakpoints[sKey];\r\n if (iWidth >= bp.min && iWidth <= bp.max) { // if the device is in between the breakpoint\r\n iWidth = bp.max; // set iWidth to the Max\r\n break;\r\n }\r\n }\r\n fnProgresiveImageReplace(imgElm, sSrcHd, iel, iWidth);\r\n }\r\n }\r\n }\r\n fnProgresiveImageLoad();\r\n function fnProgresiveImageReplace(imgElm, sSrcHd, iel, iWidth) {\r\n iel.src = sSrcHd.replace(/w=([0-9]+)/g, 'w=' + Math.min(1920, iWidth));\r\n iel.onload = function (e) {\r\n if (imgElm.tagName == 'IMG') {\r\n imgElm.src = sSrcHd; // if the element is an replace it's [src]\r\n } else { // eveything else gets background-image\r\n imgElm.style.backgroundImage = \"url({0})\".format(sSrcHd);\r\n }\r\n }\r\n };\r\n\r\n /*********************************************************************************************\r\n * mojo initialization\r\n *********************************************************************************************/\r\n // handles waiting for all dependency promises to load before executing not already ran functions \r\n $(function () {\r\n $.each(mc.events.ready, function (i, e) { $.when.apply($, e.waitFor).then(e.f); });\r\n mc.events.readyFired = true;\r\n });\r\n $(window).on('load', function () {\r\n $.each(mc.events.load, function (i, e) { $.when.apply($, e.waitFor).then(e.f); });\r\n mc.events.loadFired = true;\r\n });\r\n $(window).on('resize', function () {\r\n $.each(mc.events.resize, function (i, e) { $.when.apply($, e.waitFor).then(e.f); });\r\n mc.events.resizeFired = true;\r\n });\r\n\r\n // overwrite the mc.on functionaliy to handle event registrations after jQuery document[ready|load|resize] events\r\n var fnSaveCallbackLoadDep = mc.on;\r\n mc.on = function (e, d, f) {\r\n var c = fnSaveCallbackLoadDep(e, d, f); // call the previosuly overwritten function \r\n if (mc.events[e + 'Fired']) { // e: ready|load|resize jQuery on events\r\n $.when.apply($, c.waitFor).then(c.f); // wait for all promises to resolve and execute the function\r\n }\r\n return c;\r\n };\r\n\r\n /*********************************************************************************************\r\n * Parse out all name-value pairs from the current querystring\r\n * Usage: mc.queryString['name'] \r\n *********************************************************************************************/\r\n mc.parseQueryString = function (url) {\r\n // Use the current url if one wasnt provided\r\n var sUrl = url || document.URL;\r\n\r\n // make an object with the key/value pairs from the querystring\r\n var oUrl = {};\r\n sUrl.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (m, key, value) {\r\n oUrl[key] = decodeURIComponent(value.split('#')[0]);\r\n });\r\n\r\n return oUrl;\r\n };\r\n mc.queryString = mc.parseQueryString();\r\n\r\n // Function version which wraps the prototype call.\r\n mc.getFriendlyUrl = function (str) { return str.asFriendlyUrl(); };\r\n\r\n /*********************************************************************************************\r\n * Utility methods for the location.hash \r\n *********************************************************************************************/\r\n mc.hash = {\r\n seperator: ',',\r\n // returns an array of hashes or an object of argument to hash\r\n // ex: mc.hash.get() -> ['hash1','hash2']\r\n // ex: mc.hash.get('arg1', 'arg2') -> { arg1: 'hash1', arg2: 'hash2' } \r\n get: function () {\r\n var aArgs = Array.prototype.slice.call(arguments),\r\n aHashes = location.hash.slice(1).split(mc.hash.seperator),\r\n oHash = (aArgs.length > 0) ? mc.hash._merge(aArgs, aHashes) : null;\r\n return (oHash) ? oHash : aHashes;\r\n },\r\n // sets the location hash\r\n // ex: mc.hash.set('hash1', 'hash2', 'hash3');\r\n set: function () {\r\n location.hash = Array.prototype.slice.call(arguments).join(mc.hash.seperator);\r\n },\r\n // sets the location hash with url encoding\r\n // ex: mc.hash.set('I have spaces');\r\n encode: function () {\r\n var aArgs = Array.prototype.slice.call(arguments), aEncodedHashes = [];\r\n for (var i = 0; i < aArgs.length; i++) { aEncodedHashes[i] = encodeURIComponent(aArgs[i]); }\r\n location.hash = aEncodedHashes.join(mc.hash.seperator);\r\n },\r\n // returns an array of url decoded hash params\r\n // ex: mc.hash.decode() -> ['I%20have%20spaces'] -> ['I have spaces']\r\n decode: function () {\r\n var aHashes = location.hash.slice(1).split(mc.hash.seperator), aEncodedHashes = [];\r\n for (var j = 0; j < aHashes.length; j++) { aEncodedHashes[j] = decodeURIComponent(aHashes[j]); }\r\n return aEncodedHashes;\r\n },\r\n // private use only, returns an object of index based function arguments and hashes\r\n // ex: _merge(['arg1', 'arg2'], ['hash1', 'hash2']) -> { arg1: 'hash1', arg2: 'hash2' }\r\n _merge: function (a, h) {\r\n var o = null;\r\n if (a && h) for (var i = 0; i < a.length; i++) { o = o || {}; o[a[i]] = h[i]; }\r\n return o;\r\n }\r\n };\r\n\r\n /*********************************************************************************************\r\n * Outgoing Links\r\n * Automatically adds target=\"_blank\", external domain icon, or popup notice to outgoing links\r\n *********************************************************************************************/\r\n mc.outgoingLinks = {\r\n // an array of domains to ignore (opens the link same tab)\r\n // supports the following (TLDs, Wildcards, Page Specific):\r\n // mojoactive.com, *.mojoactive.com, mojoactive.com/page123\r\n ignoreDomains: [],\r\n newTab: false,\r\n addIcon: false,\r\n showPopup: false,\r\n checkLinks: function () {\r\n $('a:not([href*=\"' + document.domain + '\"])')\r\n // filter out anything without an href\r\n .filter(function () { return $(this).attr('href') })\r\n // filter out internal links and non-links (tel, javascript:void, #, etc...)\r\n .filter(function () {\r\n if (RegExp(/(tel|javascript:void|mailto)/).test($(this).attr('href'))) return false;\r\n var hrefLead = $(this).attr('href').charAt(0);\r\n return hrefLead != '.' && hrefLead != '#' && hrefLead != '/';\r\n })\r\n // filter out ignored domains\r\n .filter(function () {\r\n var href = $(this).attr('href').trim();\r\n for (var i = 0; i < mc.outgoingLinks.ignoreDomains.length; i++) {\r\n if (mc.outgoingLinks.matchDomain(mc.outgoingLinks.ignoreDomains[i], href)) return false;\r\n }\r\n return true;\r\n })\r\n // add the target blank and popup (if enabled)\r\n .each((i, elm) => { mc.outgoingLinks.addTargetIconPopup(elm) });\r\n\r\n // watch for popup click events (if enabled)\r\n if (mc.outgoingLinks.showPopup) {\r\n $(document).on('click', '[data-mc-prompt-leave=\"true\"]', function (e) {\r\n e.preventDefault();\r\n mc.outgoingLinks.popupAction($(this));\r\n })\r\n }\r\n },\r\n addTargetIconPopup: function (elm) {\r\n let sTitle = 'external site';\r\n if (mc.outgoingLinks.newTab || $(elm).attr('target') == '_blank') {\r\n $(elm).attr('target', '_blank');\r\n sTitle += ' - opens in new window';\r\n }\r\n if (mc.outgoingLinks.addIcon) $(elm).append(` (${sTitle})`);\r\n if (mc.outgoingLinks.showPopup) $(elm).attr('data-mc-prompt-leave', true);\r\n },\r\n popupAction: function (elm) {\r\n // customize this per site, please don't use window.confirm\r\n // this is used for testing purposes\r\n var href = elm.attr('href')\r\n var result = confirm('You are leaving our site. Are you sure you want to do this?');\r\n if (result) window.open(href);\r\n },\r\n matchDomain: function (pattern, url) {\r\n // helper function to match domains to regex/glob types\r\n var matchUrl;\r\n if (pattern[0] === '*') { matchUrl = pattern.substring(1); }\r\n if (pattern.length !== 0 && pattern[pattern.length - 1] === '*') { matchUrl = pattern.substring(0, matchUrl.length - 1); }\r\n if (pattern[0] != '*') { matchUrl = pattern; }\r\n return url.indexOf(matchUrl) !== -1;\r\n },\r\n isExternal: function (url) {\r\n // helper function to determine whether not a link is external to the domain\r\n var match = url.match(/^([^:\\/?#]+:)?(?:\\/\\/([^\\/?#]*))?([^?#]+)?(\\?[^#]*)?(#.*)?/);\r\n if (match != null && typeof match[1] === 'string' &&\r\n match[1].length > 0 && match[1].toLowerCase() !== location.protocol)\r\n return true;\r\n if (match != null && typeof match[2] === 'string' &&\r\n match[2].length > 0 &&\r\n match[2].replace(new RegExp(':(' + { 'http:': 80, 'https:': 443 }[location.protocol] + ')?$'), '')\r\n !== location.host) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n }\r\n }\r\n mc.outgoingLinks.checkLinks();\r\n\r\n /*********************************************************************************************\r\n * Pusdeo Links\r\n * Adds support for data-link on elements to act like a link but not require an anchor link\r\n *********************************************************************************************/\r\n mc.dataLink = () => {\r\n $('[data-link]').each((i, elm) => {\r\n var sUrl = elm.getAttribute('data-link');\r\n if (mc.outgoingLinks.isExternal(sUrl)) {\r\n mc.outgoingLinks.addTargetIconPopup(elm);\r\n }\r\n elm.removeAttribute('data-link');\r\n elm.setAttribute('data-linked', sUrl);\r\n elm.addEventListener('click', () => {\r\n if (!mc.outgoingLinks.isExternal(sUrl) || !mc.outgoingLinks.newTab) {\r\n window.location.href = sUrl;\r\n } else {\r\n window.open(sUrl)\r\n }\r\n });\r\n });\r\n }\r\n\r\n mc.ready(mc.dataLink)\r\n /*********************************************************************************************\r\n * Template Binder\r\n * Returns an html string by binding data to a template with built in plugins and iterators\r\n *\r\n * Example (Basic): mc.template.run($('#template'), [data...]);\r\n * Example (Advanced): mc.template.run($('#template'), [data...], function(key, value) { return value; });\r\n *\r\n * Run Params:\r\n * @param {string|jQuery} template the html template.\r\n * @param {array|object} data the data you wish to bind to the template\r\n * @param {function} irerator a callback function that returns a key and value of each iteration\r\n *\r\n * Plugins\r\n * You can add custom plugins to modify data before it renders to the template.\r\n *\r\n * Example: mc.template.addPlugin('moment', function(value, pattern) { return moment(value).format(pattern); })\r\n * Description: Adds a plugin with moment to format dates\r\n * @param {string} pipe the name of the pipe: { Date | PIPE_NAME <-- }\r\n * @param {function} fn the callback function to preform the modifications. Returns the following:\r\n * @param {any} value the data value { Date <-- | PIPE_NAME }\r\n * @param {any} pattern the item after the \":\" of the pipe: { Date | PIPE_NAME:PATTERN <-- }\r\n *********************************************************************************************/\r\n mc.template = {\r\n plugins: {},\r\n plugins: function () { return Object.keys(this.plugins) },\r\n addPlugin: function (pipe, fn) { this.plugins[pipe] = { pipe: pipe, fn: fn }; },\r\n run: function (template, data, iterator) {\r\n // saftey checks\r\n if (!template && !data) { console.warn('mc.template', 'missing template and data'); return false; }\r\n if (!template) { console.warn('mc.template', 'missing a template string or jquery selector'); return false; }\r\n if (!data) { console.warn('mc.template:', 'missing data'); return false; }\r\n\r\n // handle to data and the return value\r\n var oRetVal = '';\r\n var aList = (Array.isArray(data)) ? data : [data];\r\n\r\n // adds support for jquery selector or string\r\n template = (typeof (template) != 'string') ? $(template).html() : template;\r\n\r\n // bind data to the template\r\n // includes, plugins, iterators and template replacements\r\n try {\r\n aList.forEach(function (o) {\r\n var tempTemplate = template;\r\n tempTemplate.match(/{([^}]+)}/g).forEach(function (p) {\r\n var placeholder = p.replace(/{/g, '').replace(/}/g, '').trim();\r\n var value = o[placeholder];\r\n if (!value) value = '';\r\n var oPipe = mc.template._parsePipe(placeholder);\r\n if (oPipe && o[oPipe.name] && mc.template.plugins[oPipe.pipe]) { value = mc.template.plugins[oPipe.pipe].fn(o[oPipe.name], oPipe.pattern); }\r\n value = (iterator) ? iterator(placeholder, value) : value;\r\n tempTemplate = tempTemplate.replace(p, value);\r\n });\r\n oRetVal += tempTemplate;\r\n });\r\n } catch (err) {\r\n\r\n }\r\n\r\n setTimeout(() => { mc.dataLink(); }, 0);\r\n\r\n // return the html back\r\n return oRetVal;\r\n },\r\n _parsePipe: function (placeholder) {\r\n // helper function to parse pipes back to a usable form\r\n var oPipe = null;\r\n if (!placeholder || (typeof (placeholder) != 'string')) return null;\r\n if (placeholder.indexOf('|') > -1) {\r\n oPipe = {};\r\n oPipe.name = placeholder.split('|')[0].trim();\r\n oPipe.pipe = placeholder.split('|')[1].trim();\r\n if (placeholder.split('|')[1].indexOf(':') > -1) {\r\n var pipeParts = placeholder.split('|')[1].split(':');\r\n oPipe.pipe = pipeParts[0].trim();\r\n oPipe.pattern = pipeParts[1].trim().replace(/'/g, '');\r\n }\r\n }\r\n return oPipe;\r\n }\r\n }\r\n // Avaiable Template Plugins\r\n mc.template.addPlugin('debug', function (value, pattern) { console.log('value: ' + value, '\\npattern: ' + pattern); return value; });\r\n mc.template.addPlugin('moment', function (value, pattern) { return moment(value).format(pattern); });\r\n mc.template.addPlugin('uppercase', function (value, pattern) { return typeof value === 'string' ? value.toUpperCase() : value; });\r\n mc.template.addPlugin('lowercase', function (value, pattern) { return typeof value === 'string' ? value.toLowerCase() : value; });\r\n mc.template.addPlugin('capitalize', function (value, pattern) { return typeof value === 'string' ? value.charAt(0).toUpperCase() + value.slice(1) : value; });\r\n mc.template.addPlugin('truncate', function (value, pattern) { return typeof value == 'string' ? value.length <= pattern ? value : value.slice(0, pattern - 3) + '...' : value; });\r\n mc.template.addPlugin('truncateWords', function (value, pattern) { return typeof value == 'string' ? Number(pattern) < value.split(/[ \\t]/).length ? value.split(/[ \\t]/).slice(0, Number(pattern)).join(' ').trim() + '...' : value : value; });\r\n mc.template.addPlugin('trim', function (value, pattern) { return typeof value == 'string' ? value.trim() : value; });\r\n mc.template.addPlugin('join', function (value, pattern) { return Array.isArray(value) ? value.join(', ').trim() : value; });\r\n mc.template.addPlugin('wrapIf', function (value, pattern) { return (value) ? pattern.replace('~', value) : value });\r\n\r\n /*********************************************************************************************\r\n * Utility method for a loading image over a selector\r\n * Example 1: mc.loader.show() -> shows loading gif over the entire body \r\n * Example 2: mc.loader.show('.panel') -> shows loading gif over the passed in selector \r\n *********************************************************************************************/\r\n mc.loader = {\r\n _tmplImage: '
',\r\n _tmplBackdrop: '
',\r\n _parseSelector: function (oSel) {\r\n oSel = oSel || 'body';\r\n return (typeof (oSel) == 'string') ? $(oSel) : oSel;\r\n },\r\n show: function (oSel) {\r\n oSel = mc.loader._parseSelector(oSel);\r\n oSel.each(function (i, o) { $(o).append(mc.loader._tmplBackdrop.format($(o).innerHeight(), $(o).innerWidth())).append(mc.loader._tmplImage); });\r\n },\r\n hide: function (oSel) {\r\n oSel = mc.loader._parseSelector(oSel);\r\n oSel.find('.mojo-loader-backdrop, .mojo-loader-img').remove();\r\n }\r\n };\r\n\r\n /*********************************************************************************************\r\n * Bootstrap Modal utility\r\n *********************************************************************************************/\r\n mc.modal = {\r\n templates: {\r\n 'mc': `
\r\n
\r\n
\r\n
\r\n
MarketCarpenter {mc.platform.version}
\r\n Help & Training\r\n \r\n
\r\n
{sContent}
\r\n
\r\n
\r\n
`\r\n },\r\n show: function (sContent, sTemplate) {\r\n var sId = 'modal_' + mc.uuid();\r\n sTemplate = sTemplate || mc.modal.templates.mc;\r\n sTemplate = sTemplate.replace('{sId}', sId).replace('{mc.platform.version}', mc.platform.version).replace('{sContent}', sContent);\r\n $('body').append(sTemplate);\r\n\r\n var oModal = $(`#${sId}`);\r\n oModal.modal({ backdrop: 'static', keyboard: false, show: true }).on('hidden.bs.modal', function () {\r\n oModal.modal('dispose');\r\n oModal.remove();\r\n });\r\n },\r\n showIframe: function (sUrl) {\r\n var iHeight = mc.globals.windowDimensions.height - 60;\r\n var sFrameId = 'iFrame_' + mc.uuid();\r\n this.show(`
`);\r\n\r\n $(`#${sFrameId}`).on('load', function () {\r\n $('.mc-loading,.mc-no-click').remove();\r\n });\r\n }\r\n };\r\n\r\n /*********************************************************************************************\r\n * Convenience handle for creating simple carousels\r\n *********************************************************************************************/\r\n mc.makeCarousel = function (selector, options) { mc.ready(['owl-carousel'], function () { $(selector).addClass('owl-carousel').owlCarousel({ items: 1, nav: true, dots: false, ...options }); }) }\r\n mc.ready(function () { if ($('.mc-carousel').length) { mc.makeCarousel('.mc-carousel'); } });\r\n\r\n /*********************************************************************************************\r\n * Utility method for creating options for an HTML select element\r\n *********************************************************************************************/\r\n mc.createSelectOptions = function (sSel, aData, sVal, sText, bPlaceholder) {\r\n if (!sSel || !aData || !sVal || !sText) return 'Missing arguments... you must pass the following: sSel, aData, sVal, sText';\r\n var sOptions = '';\r\n var $sel = (typeof (sSel) == 'string') ? $(sSel) : sSel;\r\n if (bPlaceholder) $sel.append('');\r\n $.each(aData, function (i, o) { sOptions += ('').format(o[sVal], o[sText]); });\r\n $sel.append(sOptions);\r\n };\r\n\r\n /*********************************************************************************************\r\n * Utility method for preloading images (accepting a string or array of strings)\r\n *********************************************************************************************/\r\n mc.preloadImg = function (sUrl) {\r\n var aImg = (typeof sUrl === 'string') ? [sUrl] : sUrl;\r\n $(aImg).each(function () { $('')[0].src = this; });\r\n }\r\n\r\n /*********************************************************************************************\r\n * Scrolls to a section of the page, also reacts to on page load or hash change.\r\n *********************************************************************************************/\r\n mc.scrollTo = {\r\n prefix: 'sp-',\r\n run: function (query) {\r\n let el;\r\n if (query.indexOf(this.prefix) != -1) {\r\n el = $(query.replace(this.prefix, '#'))\r\n } else if ($(query).length) {\r\n el = $(query)\r\n }\r\n if (el) {\r\n $('html, body').animate({ scrollTop: el.offset().top }, 500)\r\n }\r\n },\r\n scrollChange: function () {\r\n mc.scrollTo.run(mc.hash.get()[0]);\r\n }\r\n };\r\n\r\n window.addEventListener('hashchange', mc.scrollTo.scrollChange);\r\n mc.scrollTo.scrollChange();\r\n\r\n /*********************************************************************************************\r\n * Scroll To functionality on element click\r\n *********************************************************************************************/\r\n mc.ready(function () {\r\n $('[data-scroll-to]').click(function () {\r\n const to = $(this).data('scroll-to');\r\n mc.scrollTo.run(to);\r\n });\r\n });\r\n\r\n /*********************************************************************************************\r\n * Number Counter\r\n *********************************************************************************************/\r\n mc.counter = {\r\n items: [],\r\n attr: 'data-counter',\r\n duration: 3000,\r\n easing: 'swing',\r\n init: function () {\r\n $('[' + this.attr + ']').each(function () {\r\n var elm = $(this);\r\n var oItem = { elm: elm, text: elm.text().replace(/[0-9,]/g, ''), top: elm.offset().top - window.innerHeight, start: 0, end: parseInt(elm.text().replace(/,/g, '')), dir: elm.attr(mc.counter.attr) }\r\n mc.counter.items.push(oItem);\r\n if (oItem.dir == 'up') { elm.text(0); }\r\n });\r\n setTimeout(mc.counter.watch, 3500);\r\n },\r\n watch: function () {\r\n $(window).scroll(function () {\r\n var scrollTop = $(window).scrollTop();\r\n try {\r\n mc.counter.items.forEach(function (item) {\r\n if ((scrollTop >= item.top && !item.done)) {\r\n mc.counter.animate(item);\r\n item.done = true;\r\n }\r\n });\r\n } catch (err) {\r\n\r\n }\r\n });\r\n },\r\n animate: function (item) {\r\n $({ countNum: (item.dir == 'up') ? item.start : item.end }).animate({ countNum: (item.dir == 'up') ? item.end : item.start }, {\r\n duration: mc.counter.duration,\r\n easing: mc.counter.easing,\r\n step: function () {\r\n var num = (item.dir == 'up') ? Math.ceil(this.countNum) : Math.floor(this.countNum);\r\n item.elm.text((num.toLocaleString()) + item.text);\r\n },\r\n done: function () {\r\n item.elm.text((item.end.toLocaleString()) + item.text);\r\n }\r\n })\r\n }\r\n }\r\n mc.counter.init();\r\n\r\n /*********************************************************************************************\r\n * Debounce - Useful for implementing behavior that should only happen after a repeated action has completed.\r\n *********************************************************************************************/\r\n mc.debounce = function (func, wait, immediate) {\r\n var timeout;\r\n return function () {\r\n var context = this, args = arguments;\r\n var later = function () {\r\n timeout = null;\r\n if (!immediate) func.apply(context, args);\r\n };\r\n var callNow = immediate && !timeout;\r\n clearTimeout(timeout);\r\n timeout = setTimeout(later, wait);\r\n if (callNow) func.apply(context, args);\r\n };\r\n };\r\n\r\n /*********************************************************************************************\r\n * Is Element In Viewport - tells you is an element is in the current viewport\r\n *********************************************************************************************/\r\n mc.isElementInViewport = function (el) {\r\n var rect = el.getBoundingClientRect();\r\n return (rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth));\r\n };\r\n\r\n /*********************************************************************************************\r\n * Window Resize - keep the mojo globals up to date. Add other code as needed for resize.\r\n *********************************************************************************************/\r\n // set the window dimension variables on window resize.\r\n var fnResize = function () {\r\n mc.globals.windowDimensions.width = window.innerWidth;\r\n mc.globals.windowDimensions.height = window.innerHeight;\r\n\r\n // set the current breakpoint\r\n var deviceWidth = mc.globals.windowDimensions.width; // get a convenice handle to the current width\r\n $.each(mc.constants.breakpoints, function (key, value) { // loop throuh all the breakpoints\r\n if (deviceWidth >= value.min && deviceWidth <= value.max) // if the device is in between the breakpoint\r\n mc.globals.currentBreakpoint = value; // set the current breakpoint global\r\n });\r\n };\r\n mc.resize(fnResize);\r\n fnResize();\r\n\r\n /*********************************************************************************************\r\n * Lazy Load - A system of classes to allow for lazy, and device specific image loadsing\r\n * All Images will load when they are scrolled to, deferring the load unless an\r\n * image is needed\r\n * To Use - Add one of the following classes and set the data-src attribute on the image tag\r\n * rather than setting the src attribute \r\n * .lazy - ALL DEVICES - use for General images\r\n * .lazy-xs - XS DEVICES ONLY - use for Mobile Only images\r\n * .lazy-sm - SM AND UP DEVICES - use for Desktop Only images\r\n * .no-loading-img - Use this class to prevent loading image from being added\r\n * Example - \"\"\r\n * Docs - http://jquery.eisbehr.de/lazy/\r\n *********************************************************************************************/\r\n\r\n // lazy load all general images and just create handles for xs and sm+ devices\r\n mc.lazyLoad = {\r\n loadingImg: '/images/loading.gif',\r\n all: null, allSelector: '.lazy',\r\n xs: null, xsSelector: '.lazy-xs',\r\n sm: null, smSelector: '.lazy-sm',\r\n noLoadingSelector: '.no-loading-img',\r\n fnResize: function (bInitialLoad) {\r\n if (mc.globals.windowDimensions.width <= mc.constants.breakpoints.xs.max) {\r\n if (mc.lazyLoad.xs == null) {\r\n mc.lazyLoad.xs = $(mc.lazyLoad.xsSelector).Lazy({ autoDestroy: false, chainable: false, bind: (bInitialLoad) ? 'load' : 'event' }); // bind to load event or fire immedialy if not initial load\r\n $(mc.lazyLoad.xsSelector).not(mc.lazyLoad.noLoadingSelector).attr('src', mc.lazyLoad.loadingImg);\r\n }\r\n } else {\r\n if (mc.lazyLoad.sm == null) {\r\n mc.lazyLoad.sm = $(mc.lazyLoad.smSelector).Lazy({ autoDestroy: false, chainable: false, bind: (bInitialLoad) ? 'load' : 'event' }); // bind to load event or fire immedialy if not initial load\r\n $(mc.lazyLoad.smSelector).not(mc.lazyLoad.noLoadingSelector).attr('src', mc.lazyLoad.loadingImg);\r\n }\r\n }\r\n }\r\n };\r\n // run the lazy load plugin for the \"all device\" case\r\n mc.lazyLoad.all = $(mc.lazyLoad.allSelector).Lazy({ autoDestroy: false, chainable: false });\r\n $(mc.lazyLoad.allSelector).not(mc.lazyLoad.noLoadingSelector).attr('src', mc.lazyLoad.loadingImg);\r\n\r\n // run the lazy load plugin for the device specific images in resize, and call initially\r\n mc.resize(mc.lazyLoad.fnResize);\r\n mc.lazyLoad.fnResize(true);\r\n $('iframe').lazy();\r\n\r\n /*********************************************************************************************\r\n * Navigation\r\n *********************************************************************************************/\r\n // navigation setup code\r\n mc.ready(function () {\r\n // sSelector: String selector or object to turn into an accordion nav\r\n // bIgnoreMobileCheck: true if click code to be fired small and larger devices\r\n var initAccordionNav = function (sSelector, bIgnoreMobileCheck) {\r\n // get a handle to the parent UL\r\n var oUl = $(sSelector),\r\n sActiveClass = 'active';\r\n\r\n // for each LI, at all depths of the nav tree\r\n $('li', oUl).each(function (i, oLi) {\r\n // get a handle to the child UL,\r\n var oChildUl = $('>ul, >.container>ul, >.container-fluid>ul', oLi);\r\n\r\n // if the UL exists, make the A tag function like an accordion\r\n if (oChildUl.length == 1) {\r\n // handle to the link\r\n var oA = $('>a', oLi),\r\n oMoreLinks = $('> a > span', oLi).add($('>a:not([href])', oLi));\r\n\r\n // open the sub UL on click\r\n oMoreLinks.click(function (e) {\r\n // this is for mobile nav only\r\n if (bIgnoreMobileCheck || mc.globals.windowDimensions.width <= mc.constants.breakpoints.md.max) {\r\n // get a handle to all visible child ULs in the current nav and loop through them\r\n var oUlToHide = $('ul:visible', oUl);\r\n\r\n oUlToHide.each(function (i, oUlHide) {\r\n // only hide the ul if it does not contain this A tag, and don't wait for the animation queue\r\n if ($(oUlHide).find(oA).length == 0) {\r\n $(oUlHide).slideUp({ queue: false });\r\n $(oUlHide).closest('li').removeClass(sActiveClass);\r\n }\r\n });\r\n\r\n // as long as the user didn't click on the parent li for the currently open list\r\n if (oUlToHide.index(oChildUl) == -1) {\r\n oChildUl.slideDown({ queue: false });\r\n $(oLi).addClass(sActiveClass);\r\n }\r\n }\r\n\r\n e.preventDefault();\r\n return false;\r\n });\r\n }\r\n });\r\n };\r\n\r\n // setup accordian for mobile and sidebar navigation\r\n initAccordionNav('#primaryNavBar nav');\r\n initAccordionNav('.nav-primaryCentered .left > ul, .nav-primaryCentered .right > ul');\r\n initAccordionNav('#secondaryNavBar > ul', true);\r\n\r\n // Fits the navigation in the viewport. Solves the problem when a nav's ul spans outside of the view port. \r\n var fitNavInViewport = function () {\r\n if (mc.globals.windowDimensions.width > mc.constants.breakpoints.xs.max) {\r\n $(\".navbar-nav li ul\").each(function () {\r\n var oElm = $(this);\r\n oElm.css({ \"opacity\": 0, \"display\": \"block\", \"visibility\": \"hidden\" });\r\n setTimeout(function () {\r\n var leftPos = oElm.offset().left + oElm.width();\r\n if (leftPos > mc.globals.windowDimensions.width) {\r\n oElm.addClass(\"dropdown-menu-right\");\r\n } else {\r\n oElm.removeClass(\"dropdown-menu-right\");\r\n }\r\n setTimeout(function () {\r\n oElm.css(\"opacity\", 1).css(\"display\", \"none\"); // change it back to hidden\r\n }, 200);\r\n }, 100);\r\n });\r\n }\r\n };\r\n mc.resize(fitNavInViewport)\r\n fitNavInViewport();\r\n\r\n });\r\n\r\n /*********************************************************************************************\r\n * Responsive Tables\r\n *********************************************************************************************/\r\n\r\n /*********************************************************************************************\r\n * API Helpers\r\n *********************************************************************************************/\r\n\r\n mc.api = {\r\n content: function () {\r\n this.CId = 0\r\n this.CtId = 0\r\n this.CDetailId = null\r\n this.CActive = true\r\n this.CDeleted = false\r\n this.CInNavigation = false\r\n this.CUnderConstruction = false\r\n this.CTitle = null\r\n this.CIntroText = null\r\n this.CIntroPhoto = null\r\n this.CIntroLink = null\r\n this.CIntroLinkText = null\r\n this.CMetaDesc = null\r\n this.CMetaKeywords = null\r\n this.CInternalNotes = null\r\n this.CCommentsEnabled = true\r\n this.CLastModified = new Date()\r\n this.CMetaData = {\r\n ChangeFrequency: 0,\r\n Priority: 0,\r\n IncludeInSitemap: true,\r\n }\r\n this.CSeoTitle = null\r\n this.CSeoUrl = null\r\n this.CTesting = null\r\n this.CHeadContent = null\r\n this.CSidebarMode = 0\r\n this.CIntroPhotoMode = 0\r\n },\r\n\r\n contentBlock: function (CId) {\r\n this.CId = CId\r\n this.CIdChild = null\r\n this.CIdChildNavigation = null\r\n this.CbCopy = \"\"\r\n this.CbFile = null\r\n this.CbFileText = null\r\n this.CbHeadline = \"\"\r\n this.CbId = 0\r\n this.CbLink = null\r\n this.CbLinkTarget = null\r\n this.CbLinkText = null\r\n this.CbMetaData = null\r\n this.CbPhoto = null\r\n this.CbPhotoAlign = null\r\n this.CbPhotoAltText = null\r\n this.CbPhotoCaption = null\r\n this.CbPhotoMetadata = null\r\n this.CbSortOrder = 0\r\n },\r\n\r\n tagToContent: function (tag, content, template) {\r\n this.TId = tag.TId;\r\n this.CId = content.CId;\r\n this.TtcPageUrl = tag.TPath;\r\n this.TemplateId = template;\r\n this.SortOrder = 99999\r\n }\r\n\r\n }\r\n\r\n // Description: Applies a bootstrap responsive class around all tables in content areas.\r\n mc.ready(function () {\r\n $('#content table').each(function (i, oTbl) {\r\n // get handles to the page widths\r\n var iContentWidth = $('#content').width(),\r\n iTblWidth = $(oTbl).outerWidth(true),\r\n iTblHeight = $(oTbl).outerHeight(true);\r\n\r\n // if the width of the table is greater than the content area\r\n if (iTblWidth > iContentWidth) {\r\n var oWrap = $(oTbl).wrap('
').parent();\r\n $(oWrap).height(iTblHeight);\r\n }\r\n });\r\n });\r\n\r\n\r\n \r\n /*********************************************************************************************\r\n * Homepage Popup\r\n *********************************************************************************************/\r\n mc.popup = function(){\r\n mc.ready(['cookie'], function () {\r\n setTimeout(function(){\r\n // console.log('HI')\r\n if (!Cookies.get('mc-homePopUp') && !$('body').hasClass('mc-emergency-open')) {\r\n $('body').addClass('mc-homePopUp-open mc-backdrop-show');\r\n $.get(\"/templates/includes/homepagePopup.htm\", function (data) {\r\n $('body').append(data);\r\n $('#mc-homePopUpSubmit, #mc-homePopUp .close').click(function(){\r\n var sCookieVal = $('#mc-homePopUpOptions').val().split(',')[0];\r\n var sRedirect = $('#mc-homePopUpOptions').val().split(',')[1];\r\n Cookies.set('mc-homePopUp', sCookieVal || true, { expires: 180});\r\n gtag('event', 'Homepage Popup', { 'event_category': 'Website Clicks', 'event_label': sCookieVal });\r\n if(sRedirect != '/'){\r\n window.location.href = sRedirect;\r\n }\r\n else{\r\n $('body').removeClass('mc-homePopUp-open mc-backdrop-show');\r\n }\r\n });\r\n });\r\n } \r\n }, 2000);\r\n });\r\n }\r\n\r\n /*********************************************************************************************\r\n * Emergency Alert\r\n *********************************************************************************************/\r\n if ($('.mc-emergency').length > 0) {\r\n mc.ready(['cookie', 'swal'], function () {\r\n function showEmergencyAlert() {\r\n var span = document.createElement(\"span\");\r\n span.innerHTML = mc.emergency.content;\r\n swal({ title: mc.emergency.title, content: span, button: \"Close\" }).then(function(){ $('body').removeClass('mc-backdrop-show'); })\r\n $('body').addClass('mc-backdrop-show');\r\n }\r\n\r\n if (!Cookies.get('mc-emergency')) {\r\n Cookies.set('mc-emergency', true);\r\n showEmergencyAlert();\r\n } else {\r\n $('.mc-emergency-toggle').css({ opacity: 1 });\r\n }\r\n \r\n $('.mc-emergency-toggle').click(function () {\r\n showEmergencyAlert()\r\n });\r\n });\r\n }\r\n\r\n /*********************************************************************************************\r\n * Background Video\r\n *********************************************************************************************/\r\n mc.video = {\r\n videos: {},\r\n defaults: { autohide: 1, modestbranding: 0, rel: 0, showinfo: 0, disablekb: 1, enablejsapi: 1, iv_load_policy: 3 },\r\n ready: false,\r\n init: (videoId, selector) => {\r\n const oWrap = $(selector).parent('#mc-video-wrapper-' + videoId);\r\n mc.video.videos[videoId] = $.extend({}, mc.video.defaults, {\r\n selector: selector,\r\n initialized: false,\r\n height: oWrap.data('height') || 0,\r\n controls: oWrap.data('controls') == true ? 1 : 0,\r\n vheight: oWrap.data('vheight'),\r\n vwidth: oWrap.data('vwidth'),\r\n autoplay: oWrap.data('autoplay') == true ? 1 : 0,\r\n mute: oWrap.data('controls') != true ? 1 : 0\r\n\r\n });\r\n if (videoId && selector) {\r\n mc.video.ytLoadAPI();\r\n }\r\n ;\r\n },\r\n ytPlayerReady: (videoId) => {\r\n if (mc.video.videos[videoId].autoplay) {\r\n mc.video.videos[videoId].player.loadVideoById(videoId);\r\n }\r\n mc.video.rescale(videoId);\r\n mc.resize(() => { mc.video.rescale(videoId); })\r\n $(mc.video.videos[videoId].selector).addClass('active');\r\n $(mc.video.videos[videoId].selector).parent().addClass('active');\r\n if (!mc.video.videos[videoId].controls) {\r\n $(mc.video.videos[videoId].selector).parent().prepend(`
`)\r\n }\r\n },\r\n ytLoadAPI: () => {\r\n if (!window.YT) {\r\n var tag = document.createElement('script');\r\n tag.src = 'https://www.youtube.com/player_api';\r\n var fTag = document.getElementsByTagName('script')[0];\r\n fTag.parentNode.insertBefore(tag, fTag);\r\n }\r\n },\r\n add: (videoId) => {\r\n mc.video.videos[videoId].controls = (mc.globals.currentBreakpoint.name == 'xs') ? 1 : mc.video.videos[videoId].controls;\r\n\r\n mc.video.videos[videoId].player = new YT.Player(mc.video.videos[videoId].selector.replace('#', ''), {\r\n events: {\r\n 'onReady': (e) => { mc.video.ytPlayerReady(videoId) },\r\n 'onStateChange': (e) => {\r\n if (e.data == 0 && mc.video.videos[videoId].autoplay) {\r\n mc.video.videos[videoId].player.loadVideoById(videoId);\r\n\r\n }\r\n }\r\n },\r\n playerVars: mc.video.videos[videoId]\r\n });\r\n },\r\n rescale: (videoId) => {\r\n var w = $(mc.video.videos[videoId].selector).parent('.mc-video-wrapper').width(), vh = w / mc.video.videos[videoId].vwidth * mc.video.videos[videoId].vheight;\r\n mc.video.videos[videoId].player.setSize(w, vh);\r\n if (vh > mc.video.videos[videoId].height && mc.video.videos[videoId].height > 0) {\r\n $(mc.video.videos[videoId].selector).parent('.mc-video-wrapper').css({ 'height': mc.video.videos[videoId].height + 'px' });\r\n }\r\n else {\r\n $(mc.video.videos[videoId].selector).parent('.mc-video-wrapper').css({ 'height': vh + 'px' });\r\n }\r\n },\r\n getId: (url) => {\r\n var ID = ''; url = url.replace(/(>|<)/gi, '').split(/(vi\\/|v=|\\/v\\/|youtu\\.be\\/|\\/embed\\/)/); if (url[2] !== undefined) { ID = url[2].split(/[^0-9a-z_\\-]/i); ID = ID[0]; } else { ID = url; } return ID;\r\n },\r\n\r\n }\r\n // global function the YouTube API will call when loaded\r\n window.onYouTubePlayerAPIReady = () => {\r\n try {\r\n Object.keys(mc.video.videos).forEach(k => { if (!mc.video.videos[k].initialized && (mc.video.videos[k].autoplay || mc.globals.currentBreakpoint.name == 'xs')) { mc.video.add(k); } });\r\n } catch (err) {\r\n\r\n }\r\n }\r\n\r\n mc.ready(['bootstrap'], function () { // Load Bootstrap, then\r\n $('[data-toggle=\"collapse\"]').collapse(); // Init Bootstrap collapse functionality \r\n\r\n $('.mc-accordion .card-header').each(function () { $(this).html($(this).html() + '') });\r\n $('.mc-accordion .card-header').on('click', function () { // Init MarketCarpenter Acordian functionality \r\n $(this).next().collapse('toggle');\r\n $(this).parent().toggleClass('show');\r\n });\r\n // var sModal = '
{0}
{1}
';\r\n // $('.mc-modal').on('click', function () {\r\n // console.log('modal click') // Init MarketCarpenter Modal functionality \r\n // var sHeader = $('.card-header', $(this)).html(),\r\n // sContent = $('.card-body', $(this)).html(),\r\n // oModal = $(sModal.format(sHeader, sContent));\r\n // $('body').append(oModal);\r\n // $(oModal).modal('show');\r\n // });\r\n });\r\n\r\n /*********************************************************************************************\r\n * Sticky Sidebar\r\n *********************************************************************************************/\r\n mc.ready(function () {\r\n $(document).on('scroll', function () {\r\n $('.mc-sticky-sidebar').removeClass('opened');\r\n });\r\n $('.mc-sticky-sidebar').on('mouseenter', function () {\r\n $('.mc-sticky-sidebar').addClass('opened');\r\n });\r\n });\r\n\r\n /*********************************************************************************************\r\n * Accessibility\r\n *********************************************************************************************/\r\n // Add aria labels to owl carousel pagination dots\r\n mc.load(function () {\r\n $('.owl-carousel, .owl-nav-below').each((i, elm) => { \r\n $(elm).find('.owl-dot').each((i, elm2) => { $(elm2).attr('aria-label', i + 1); });\r\n $(elm).find('.owl-prev').each((i, elm2) => { $(elm2).attr('role','button').attr('title', 'Previous'); });\r\n $(elm).find('.owl-next').each((i, elm2) => { $(elm2).attr('role','button').attr('title', 'Next'); });\r\n });\r\n });\r\n // show the outline focus effect only on keyboard press of tab\r\n // we don't want to show this on normal focus mouse click (see custom.scss for styling)\r\n mc.ready(function () {\r\n document.addEventListener('keydown', (e) => { if (e.keyCode === 9) $('body').addClass('show-focus-outlines'); });\r\n document.addEventListener('click', () => { $('body').removeClass('show-focus-outlines'); });\r\n });\r\n\r\n /*********************************************************************************************\r\n * Image Captions\r\n *********************************************************************************************/\r\n function fnSizeCaptions () { $('figure figcaption').each(function() { $(this).css({ width: $(this).parent().find('img').width() }) }) }\r\n mc.resize(fnSizeCaptions);\r\n\r\n /*********************************************************************************************\r\n * MarketCarpenter Analytics \r\n *********************************************************************************************/\r\n mc.ready(['analytics'], mc.noop); // add a callback here to handle specific tracking needs\r\n\r\n /*********************************************************************************************\r\n * Error Reporting Setup\r\n *********************************************************************************************/\r\n mc.getScript('https://resources.mojoactive.com/Scripts/error-reporting.2.0.min.js');\r\n\r\n /*********************************************************************************************\r\n * UserWay \r\n *********************************************************************************************/\r\n mc.ready(['userway'], mc.noop); // add a callback here to handle specific tracking needs\r\n\r\n /*********************************************************************************************\r\n * Google Translate\r\n *********************************************************************************************/\r\n // $('.navAction-translate').on('click',function() {\r\n // var elm = $(this);\r\n // var se = $(\".goog-te-combo\");\r\n // var obj = $('#google_translate_element');\r\n\r\n\r\n // if (mc.globals.currentBreakpoint.name == 'xs') {\r\n // se.show();\r\n // obj.toggle();\r\n // se[0].size = 1;\r\n\r\n // if (elm.hasClass('opened')) {\r\n // elm.html('Translate')\r\n // elm.removeClass('opened');\r\n // } else {\r\n // elm.html('Close')\r\n // elm.addClass('opened');\r\n // }\r\n\r\n // } else {\r\n\r\n // if (elm.hasClass('opened')) {\r\n // elm.html('Translate')\r\n // elm.removeClass('opened');\r\n // } else {\r\n // elm.html('Close')\r\n // elm.addClass('opened');\r\n // }\r\n\r\n // se.show();\r\n // obj.toggle();\r\n // se[0].size = 20;\r\n // }\r\n\r\n // });\r\n\r\n // $(\".goog-te-combo\").on(\"change\", function () {\r\n // var se = $(this);\r\n // se.hide();\r\n // });\r\n\r\n // window.googleTranslateElementInit = function () {\r\n // new google.translate.TranslateElement({ pageLanguage: 'en', autoDisplay: false }, 'google_translate_element');\r\n // }\r\n // mc.ready(['translate'],mc.noop);\r\n\r\n /*********************************************************************************************\r\n * Image Pooling Functionality\r\n *********************************************************************************************/\r\n mc.image = {\r\n pool: {\r\n available: {},\r\n used: {}\r\n }\r\n }\r\n\r\n})();"]}