{"version":3,"sources":["carousels.js"],"names":["define","CarouselSettings","totalItems","maxShownItems","lazyLoad","loopCarousel","this","itemsPerScreenSize","tiny","small","medium","large","showDots","$carousels","$carousel","c","settings","eachIterator","$","key","value","length","eq","parseInt","attr","each","window","innerWidth","tns","container","loop","nav","navPosition","controls","edgePadding","controlsText","responsive","0","items","768","992","1440","off"],"mappings":"YAGAA,SAAQ,yBAA0B,WAE9B,QAASC,GAAiBC,EAAYC,EAAeC,EAAUC,GAC3DC,KAAKC,oBACDC,KAAM,EACNC,MAAO,EACPC,OAAQ,EACRC,MAAO,GAEXL,KAAKM,UAAW,EAChBN,KAAKJ,WAAaA,EAClBI,KAAKH,cAAgBA,EACrBG,KAAKF,SAAWA,EAChBE,KAAKD,aAAeA,EAIxB,GAAIQ,GACAC,EACAC,EACAC,EACJC,CAYA,KAVIJ,EAAaK,EAAE,iBACnBD,EAAe,SAAUE,EAAKC,GACtBA,EAAQJ,EAASd,YAAcc,EAASd,WAAac,EAASb,cAC9Da,EAAST,mBAAmBY,GAAOH,EAASd,WAEvCkB,EAAQJ,EAASb,gBACtBa,EAAST,mBAAmBY,GAAOH,EAASb,gBAI/CY,EAAI,EAAGA,EAAIF,EAAWQ,OAAQN,IAAK,CACpCD,EAAYD,EAAWS,GAAGP,GAG1BC,EAAW,GAAIf,GACXsB,SAAST,EAAUU,KAAK,mBAAoB,IAC5CD,SAAST,EAAUU,KAAK,sBAAuB,IACX,SAApCV,EAAUU,KAAK,iBACyB,SAAxCV,EAAUU,KAAK,sBAInBN,EAAEO,KAAKT,EAAST,mBAAoBU,EAGlBC,GAAEQ,QAAQC,aACL,KACeX,EAASd,YAAcc,EAASb,gBAClEa,EAASJ,UAAW,GAIxBgB,KACIC,UAAWf,EAAU,GACrBgB,KAAMd,EAASX,aACf0B,KAAK,EACLC,YAAa,SACbC,UAAU,EACVC,YAAa,GACbC,cAAe,4CAA4C,6CAC3DC,YACIC,GACIC,MAAOtB,EAAST,mBAAmBC,KACnCuB,IAAMf,EAASd,WAAac,EAAST,mBAAmBC,KAAQ,EAChEyB,SAAWjB,EAASd,WAAac,EAAST,mBAAmBC,MAAS,GAE1E+B,KACID,MAAOtB,EAAST,mBAAmBE,MACnCsB,IAAMf,EAASd,WAAac,EAAST,mBAAmBC,KAAQ,EAChEyB,SAAWjB,EAASd,WAAac,EAAST,mBAAmBC,MAAS,GAE1EgC,KACIF,MAAOtB,EAAST,mBAAmBG,OACnCqB,KAAK,EACLE,UAAU,GAEdQ,MACIH,MAAOtB,EAAST,mBAAmBI,MACnCoB,KAAK,EACLE,UAAU,MAO1Bf,EAAEQ,QAAQgB,IAAI","file":"carousels.js","sourcesContent":["/*global define, tns */\r\n/* CAROUSELS */\r\n\r\ndefine([\"libraries/tiny-slider\"], function () {\r\n /* Default values for all carousels */\r\n function CarouselSettings(totalItems, maxShownItems, lazyLoad, loopCarousel) {\r\n this.itemsPerScreenSize = {\r\n tiny: 1,\r\n small: 2,\r\n medium: 4,\r\n large: 5\r\n };\r\n this.showDots = true;\r\n this.totalItems = totalItems;\r\n this.maxShownItems = maxShownItems;\r\n this.lazyLoad = lazyLoad;\r\n this.loopCarousel = loopCarousel;\r\n }\r\n\r\n /* Activate each carousel based on its individual settings */\r\n var $carousels,\r\n $carousel,\r\n c,\r\n settings,\r\n eachIterator;\r\n\r\n $carousels = $(\".owl-carousel\");\r\n eachIterator = function (key, value) {\r\n if (value > settings.totalItems && settings.totalItems < settings.maxShownItems) {\r\n settings.itemsPerScreenSize[key] = settings.totalItems;\r\n }\r\n else if (value > settings.maxShownItems) {\r\n settings.itemsPerScreenSize[key] = settings.maxShownItems;\r\n }\r\n };\r\n \r\n for (c = 0; c < $carousels.length; c++) {\r\n $carousel = $carousels.eq(c);\r\n\r\n /* Create settings object for this carousel */\r\n settings = new CarouselSettings(\r\n parseInt($carousel.attr(\"data-totalitems\"), 10),\r\n parseInt($carousel.attr(\"data-maxshownitems\"), 10),\r\n $carousel.attr(\"data-lazyload\") === \"true\",\r\n $carousel.attr(\"data-loopcarousel\") === \"true\"\r\n );\r\n\r\n /* Set the responsive settings for this carousel */\r\n $.each(settings.itemsPerScreenSize, eachIterator);\r\n\r\n /* Only show carousel dots when required */\r\n var screenWidth = $(window).innerWidth();\r\n var smallScreenWidth = 768;\r\n if (screenWidth > smallScreenWidth && settings.totalItems <= settings.maxShownItems) {\r\n settings.showDots = false;\r\n }\r\n \r\n /* Activate each carousel with its individual settings */\r\n tns({\r\n container: $carousel[0],\r\n loop: settings.loopCarousel,\r\n nav: true,\r\n navPosition: \"bottom\",\r\n controls: false,\r\n edgePadding: 35,\r\n controlsText: ['',''],\r\n responsive: {\r\n 0: {\r\n items: settings.itemsPerScreenSize.tiny,\r\n nav: (settings.totalItems / settings.itemsPerScreenSize.tiny) < 5,\r\n controls: (settings.totalItems / settings.itemsPerScreenSize.tiny) >= 5\r\n },\r\n 768: {\r\n items: settings.itemsPerScreenSize.small,\r\n nav: (settings.totalItems / settings.itemsPerScreenSize.tiny) < 5,\r\n controls: (settings.totalItems / settings.itemsPerScreenSize.tiny) >= 5\r\n },\r\n 992: {\r\n items: settings.itemsPerScreenSize.medium,\r\n nav: false,\r\n controls: true\r\n },\r\n 1440: {\r\n items: settings.itemsPerScreenSize.large,\r\n nav: false,\r\n controls: true\r\n }\r\n }\r\n });\r\n }\r\n\r\n /* Prevent hashchange events from resetting carousel positions */\r\n $(window).off(\"hashchange.owl.navigation\");\r\n\r\n\r\n});"]}