{"version":3,"sources":["node_modules/browser-pack/_prelude.js","DragDropTouch.js","calculatePopupOffsets.js","carousel/owl.carousel.js","carousel/zepto.data.js","components/AMCharts-merges-acquisition.js","components/accordian-table.js","components/accordionStockChart.js","components/amGraphParam.js","components/analytics-asset-family.js","components/article-sidebar-component.js","components/ask-an-analyst.js","components/assetfamily-ul.js","components/bookmark-article-component.js","components/carousel-infographic.js","components/clientBrowserTimezoneOffset.js","components/contact-form.js","components/dropdown-download.js","components/dynamic-content-recomendation.js","components/externalurl-utm.js","components/free-trial.js","components/hero-banner.js","components/horizontal-menu.js","components/horizontal-sub-menu.js","components/id-comparechart.js","components/id-comparefinancialresults.js","components/id-financial-responsive-table.js","components/id-merge-acquistion.js","components/id-quarterly-responsive-table.js","components/id-responsive-table.js","components/latest-casuality.js","components/latest-ilaw-data.js","components/ll-casuality-detail.js","components/ll-casuality-listing.js","components/ll-cockett-bunker.js","components/ll-fisDryBulk.js","components/ll-howeRobinson.js","components/ll-market-data-dryCargo-bulkFixture.js","components/ll-market-data-dryCargo.js","components/ll-market-data.js","components/ll-marketdata-drycargo-ssyal.js","components/ll-ship-coal-export.js","components/ll-ship-container-ship.js","components/ll-ship-roro.js","components/ll-shipContainerShipFixtures.js","components/ll-tanker-fixtures.js","components/ll-tanker-pure-chem-page.js","components/long-read-template-component.js","components/mkt-form.js","components/myview-settings.js","components/pagination.js","components/personalisation.js","components/powerbi-embed-component.js","components/related-seasearcher.js","components/save-search-alert.js","components/save-search-component.js","components/scrollbar.js","components/searchcriteria.js","components/service-area-component.js","components/table_charts.js","components/tableau-embed-component.js","components/tabs-content.js","components/video-mini.js","controllers/analytics-controller.js","controllers/bookmark-controller.js","controllers/form-controller.js","controllers/lightbox-modal-controller.js","controllers/pop-out-controller.js","controllers/register-controller.js","controllers/reset-password-controller.js","controllers/sortable-table-controller.js","controllers/tooltip-controller.js","informaui.spinner.js","jscookie.js","maritimelaw.js","modal.js","newsletter-signup.js","search-page.js","selectivity-full.js","svg4everybody.js","toggle-icons.js","zepto.dragswap.js","zepto.min.js","zepto.suggest.js"],"names":[],"mappings":"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,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,IAAI,CACd,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE,GAAG,CACb,GAAQ,CAAE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","file":"maritimelaw.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;iHTML Drag and Drop API.\r\n *\r\n * This object is created automatically by the @see:DragDropTouch singleton and is\r\n * accessible through the @see:dataTransfer property of all drag events.\r\n */\r\n var DataTransfer = (function () {\r\n function DataTransfer() {\r\n this._dropEffect = 'move';\r\n this._effectAllowed = 'all';\r\n this._data = {};\r\n }\r\n Object.defineProperty(DataTransfer.prototype, \"dropEffect\", {\r\n /**\r\n * Gets or sets the type of drag-and-drop operation currently selected.\r\n * The value must be 'none', 'copy', 'link', or 'move'.\r\n */\r\n get: function () {\r\n return this._dropEffect;\r\n },\r\n set: function (value) {\r\n this._dropEffect = value;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(DataTransfer.prototype, \"effectAllowed\", {\r\n /**\r\n * Gets or sets the types of operations that are possible.\r\n * Must be one of 'none', 'copy', 'copyLink', 'copyMove', 'link',\r\n * 'linkMove', 'move', 'all' or 'uninitialized'.\r\n */\r\n get: function () {\r\n return this._effectAllowed;\r\n },\r\n set: function (value) {\r\n this._effectAllowed = value;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n Object.defineProperty(DataTransfer.prototype, \"types\", {\r\n /**\r\n * Gets an array of strings giving the formats that were set in the @see:dragstart event.\r\n */\r\n get: function () {\r\n return Object.keys(this._data);\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * Removes the data associated with a given type.\r\n *\r\n * The type argument is optional. If the type is empty or not specified, the data\r\n * associated with all types is removed. If data for the specified type does not exist,\r\n * or the data transfer contains no data, this method will have no effect.\r\n *\r\n * @param type Type of data to remove.\r\n */\r\n DataTransfer.prototype.clearData = function (type) {\r\n if (type != null) {\r\n delete this._data[type];\r\n }\r\n else {\r\n this._data = null;\r\n }\r\n };\r\n /**\r\n * Retrieves the data for a given type, or an empty string if data for that type does\r\n * not exist or the data transfer contains no data.\r\n *\r\n * @param type Type of data to retrieve.\r\n */\r\n DataTransfer.prototype.getData = function (type) {\r\n return this._data[type] || '';\r\n };\r\n /**\r\n * Set the data for a given type.\r\n *\r\n * For a list of recommended drag types, please see\r\n * https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Recommended_Drag_Types.\r\n *\r\n * @param type Type of data to add.\r\n * @param value Data to add.\r\n */\r\n DataTransfer.prototype.setData = function (type, value) {\r\n this._data[type] = value;\r\n };\r\n /**\r\n * Set the image to be used for dragging if a custom one is desired.\r\n *\r\n * @param img An image element to use as the drag feedback image.\r\n * @param offsetX The horizontal offset within the image.\r\n * @param offsetY The vertical offset within the image.\r\n */\r\n DataTransfer.prototype.setDragImage = function (img, offsetX, offsetY) {\r\n var ddt = DragDropTouch._instance;\r\n ddt._imgCustom = img;\r\n ddt._imgOffset = { x: offsetX, y: offsetY };\r\n };\r\n return DataTransfer;\r\n })();\r\n DragDropTouch_1.DataTransfer = DataTransfer;\r\n /**\r\n * Defines a class that adds support for touch-based HTML5 drag/drop operations.\r\n *\r\n * The @see:DragDropTouch class listens to touch events and raises the\r\n * appropriate HTML5 drag/drop events as if the events had been caused\r\n * by mouse actions.\r\n *\r\n * The purpose of this class is to enable using existing, standard HTML5\r\n * drag/drop code on mobile devices running IOS or Android.\r\n *\r\n * To use, include the DragDropTouch.js file on the page. The class will\r\n * automatically start monitoring touch events and will raise the HTML5\r\n * drag drop events (dragstart, dragenter, dragleave, drop, dragend) which\r\n * should be handled by the application.\r\n *\r\n * For details and examples on HTML drag and drop, see\r\n * https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Drag_operations.\r\n */\r\n var DragDropTouch = (function () {\r\n /**\r\n * Initializes the single instance of the @see:DragDropTouch class.\r\n */\r\n function DragDropTouch() {\r\n this._lastClick = 0;\r\n // enforce singleton pattern\r\n if (DragDropTouch._instance) {\r\n throw 'DragDropTouch instance already created.';\r\n }\r\n // listen to touch events\r\n if ('ontouchstart' in document) {\r\n var d = document, ts = this._touchstart.bind(this), tm = this._touchmove.bind(this), te = this._touchend.bind(this);\r\n d.addEventListener('touchstart', ts);\r\n d.addEventListener('touchmove', tm);\r\n d.addEventListener('touchend', te);\r\n d.addEventListener('touchcancel', te);\r\n }\r\n }\r\n /**\r\n * Gets a reference to the @see:DragDropTouch singleton.\r\n */\r\n DragDropTouch.getInstance = function () {\r\n return DragDropTouch._instance;\r\n };\r\n // ** event handlers\r\n DragDropTouch.prototype._touchstart = function (e) {\r\n var _this = this;\r\n if (this._shouldHandle(e)) {\r\n // raise double-click and prevent zooming\r\n if (Date.now() - this._lastClick < DragDropTouch._DBLCLICK) {\r\n if (this._dispatchEvent(e, 'dblclick', e.target)) {\r\n //e.preventDefault();\r\n this._reset();\r\n return;\r\n }\r\n }\r\n // clear all variables\r\n this._reset();\r\n // get nearest draggable element\r\n var src = this._closestDraggable(e.target);\r\n if (src) {\r\n // give caller a chance to handle the hover/move events\r\n if (!this._dispatchEvent(e, 'mousemove', e.target) &&\r\n !this._dispatchEvent(e, 'mousedown', e.target)) {\r\n // get ready to start dragging\r\n this._dragSource = src;\r\n this._ptDown = this._getPoint(e);\r\n this._lastTouch = e;\r\n\t\t\t\t\t\tif (e.target.className == 'pull-left' || e.target.className == 'wd-15' || e.target.className == 'accordionImg' || e.target.className == 'accordionImg' || e.target.className == 'mobileMode' || e.target.className == 'mobileMode expanded' || e.target.className == 'mv') {\r\n checkTouchType = true;\r\n e.preventDefault();\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tif(e.target.className == 'accordionImg' || e.target.className == 'mobileMode' || e.target.className == 'mobileMode expanded'){\r\n\t\t\t\t\t\t\t\tvar $this = $(this), allPublications = $('#allPublicationsPan'), pPan = $this.closest('.publicationPan'), thead = pPan.find('thead'), tbody = pPan.find('tbody'), trs = tbody.find('tr'), disabledtrs = tbody.find('tr.disabled'), followlbl = thead.find('.followlbl'), followinglbl = thead.find('.followinglbl'), accStatusflwLbl = thead.find('.accordionStatus.flwLbl'), accStatusflwBtn = thead.find('.accordionStatus.flwBtn'), allpubpans = allPublications.find('.publicationPan'), pickTxt = thead.find('.pickTxt'), setFlag = true;\r\n\t\t \r\n\t\t\t\t\t\t\t\t\tif($this.hasClass('expanded')){\r\n\t\t\t\t\t\t\t\t\t\tsetFlag = false;\r\n\t\t\t\t\t\t\t\t\t\ttbody.addClass('tbodyhidden');\r\n\t\t\t\t\t\t\t\t\t\t//pPan.find('.smfollowingBtn').hide(); \r\n\t\t\t\t\t\t\t\t\t\taccStatusflwLbl.removeClass('hideRow');\r\n\t\t\t\t\t\t\t\t\t\taccStatusflwBtn.addClass('hideRow');\r\n\t\t\t\t\t\t\t\t\t\tthead.find('.mtp').addClass('hideBtn');\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tfor(var i=0; i DragDropTouch._THRESHOLD) {\r\n\t\t\t\t\t\t\tthis._dispatchEvent(e, 'dragstart', this._dragSource);\r\n\t\t\t\t\t\t\tthis._createImage(e);\r\n\t\t\t\t\t\t\tthis._dispatchEvent(e, 'dragenter', target);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// continue dragging\r\n\t\t\t\t\tif (this._img) {\r\n\t\t\t\t\t\tthis._lastTouch = e;\r\n\t\t\t\t\t\te.preventDefault(); // prevent scrolling\r\n\t\t\t\t\t\tif (target != this._lastTarget) {\r\n\t\t\t\t\t\t\tthis._dispatchEvent(this._lastTouch, 'dragleave', this._lastTarget);\r\n\t\t\t\t\t\t\tthis._dispatchEvent(e, 'dragenter', target);\r\n\t\t\t\t\t\t\tthis._lastTarget = target;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis._moveImage(e);\r\n\t\t\t\t\t\tthis._dispatchEvent(e, 'dragover', target);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n };\r\n DragDropTouch.prototype._touchend = function (e) {\r\n\t\t\tif(checkTouchType){\r\n\t\t\t\tif (this._shouldHandle(e)) {\r\n\t\t\t\t\t// see if target wants to handle up\r\n\t\t\t\t\tif (this._dispatchEvent(this._lastTouch, 'mouseup', e.target)) {\r\n\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// user clicked the element but didn't drag, so clear the source and simulate a click\r\n\t\t\t\t\tif (!this._img) {\r\n\t\t\t\t\t\tthis._dragSource = null;\r\n\t\t\t\t\t\tthis._dispatchEvent(this._lastTouch, 'click', e.target);\r\n\t\t\t\t\t\tthis._lastClick = Date.now();\r\n\t\t\t\t\t}\r\n\t\t\t\t\t// finish dragging\r\n\t\t\t\t\tthis._destroyImage();\r\n\t\t\t\t\tif (this._dragSource) {\r\n\t\t\t\t\t\tif (e.type.indexOf('cancel') < 0) {\r\n\t\t\t\t\t\t\tthis._dispatchEvent(this._lastTouch, 'drop', this._lastTarget);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis._dispatchEvent(this._lastTouch, 'dragend', this._dragSource);\r\n\t\t\t\t\t\tthis._reset();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n };\r\n // ** utilities\r\n // ignore events that have been handled or that involve more than one touch\r\n DragDropTouch.prototype._shouldHandle = function (e) {\r\n return e &&\r\n !e.defaultPrevented &&\r\n e.touches && e.touches.length < 2;\r\n };\r\n // clear all members\r\n DragDropTouch.prototype._reset = function () {\r\n this._destroyImage();\r\n this._dragSource = null;\r\n this._lastTouch = null;\r\n this._lastTarget = null;\r\n this._ptDown = null;\r\n this._dataTransfer = new DataTransfer();\r\n };\r\n // get point for a touch event\r\n DragDropTouch.prototype._getPoint = function (e, page) {\r\n if (e && e.touches) {\r\n e = e.touches[0];\r\n }\r\n return { x: page ? e.pageX : e.clientX, y: page ? e.pageY : e.clientY };\r\n };\r\n // get distance between the current touch event and the first one\r\n DragDropTouch.prototype._getDelta = function (e) {\r\n var p = this._getPoint(e);\r\n return Math.abs(p.x - this._ptDown.x) + Math.abs(p.y - this._ptDown.y);\r\n };\r\n // get the element at a given touch event\r\n DragDropTouch.prototype._getTarget = function (e) {\r\n var pt = this._getPoint(e), el = document.elementFromPoint(pt.x, pt.y);\r\n while (el && getComputedStyle(el).pointerEvents == 'none') {\r\n el = el.parentElement;\r\n }\r\n return el;\r\n };\r\n // create drag image from source element\r\n DragDropTouch.prototype._createImage = function (e) {\r\n // just in case...\r\n if (this._img) {\r\n this._destroyImage();\r\n }\r\n // create drag image from custom element or drag source\r\n var src = this._imgCustom || this._dragSource;\r\n this._img = src.cloneNode(true);\r\n this._copyStyle(src, this._img);\r\n this._img.style.top = this._img.style.left = '-9999px';\r\n // if creating from drag source, apply offset and opacity\r\n if (!this._imgCustom) {\r\n var rc = src.getBoundingClientRect(), pt = this._getPoint(e);\r\n this._imgOffset = { x: pt.x - rc.left, y: pt.y - rc.top };\r\n this._img.style.opacity = DragDropTouch._OPACITY.toString();\r\n }\r\n // add image to document\r\n this._moveImage(e);\r\n document.body.appendChild(this._img);\r\n };\r\n // dispose of drag image element\r\n DragDropTouch.prototype._destroyImage = function () {\r\n if (this._img && this._img.parentElement) {\r\n this._img.parentElement.removeChild(this._img);\r\n }\r\n this._img = null;\r\n this._imgCustom = null;\r\n };\r\n // move the drag image element\r\n DragDropTouch.prototype._moveImage = function (e) {\r\n var _this = this;\r\n requestAnimationFrame(function () {\r\n var pt = _this._getPoint(e, true), s = _this._img.style;\r\n s.position = 'absolute';\r\n s.pointerEvents = 'none';\r\n s.zIndex = '999999';\r\n s.left = Math.round(pt.x - _this._imgOffset.x) + 'px';\r\n s.top = Math.round(pt.y - _this._imgOffset.y) + 'px';\r\n });\r\n };\r\n // copy properties from an object to another\r\n DragDropTouch.prototype._copyProps = function (dst, src, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var p = props[i];\r\n dst[p] = src[p];\r\n }\r\n };\r\n DragDropTouch.prototype._copyStyle = function (src, dst) {\r\n // remove potentially troublesome attributes\r\n DragDropTouch._rmvAtts.forEach(function (att) {\r\n dst.removeAttribute(att);\r\n });\r\n // copy canvas content\r\n if (src instanceof HTMLCanvasElement) {\r\n var cSrc = src, cDst = dst;\r\n cDst.width = cSrc.width;\r\n cDst.height = cSrc.height;\r\n cDst.getContext('2d').drawImage(cSrc, 0, 0);\r\n }\r\n // copy style\r\n var cs = getComputedStyle(src);\r\n for (var i = 0; i < cs.length; i++) {\r\n var key = cs[i];\r\n dst.style[key] = cs[key];\r\n }\r\n dst.style.pointerEvents = 'none';\r\n // and repeat for all children\r\n for (var i = 0; i < src.children.length; i++) {\r\n this._copyStyle(src.children[i], dst.children[i]);\r\n }\r\n };\r\n DragDropTouch.prototype._dispatchEvent = function (e, type, target) {\r\n if (e && target) {\r\n var evt = document.createEvent('Event'), t = e.touches ? e.touches[0] : e;\r\n evt.initEvent(type, true, true);\r\n evt.button = 0;\r\n evt.which = evt.buttons = 1;\r\n this._copyProps(evt, e, DragDropTouch._kbdProps);\r\n this._copyProps(evt, t, DragDropTouch._ptProps);\r\n evt.dataTransfer = this._dataTransfer;\r\n target.dispatchEvent(evt);\r\n return evt.defaultPrevented;\r\n }\r\n return false;\r\n };\r\n // gets an element's closest draggable ancestor\r\n DragDropTouch.prototype._closestDraggable = function (e) {\r\n for (; e; e = e.parentElement) {\r\n if (e.hasAttribute('draggable')) {\r\n return e;\r\n }\r\n }\r\n return null;\r\n };\r\n /*private*/ DragDropTouch._instance = new DragDropTouch(); // singleton\r\n // constants\r\n DragDropTouch._THRESHOLD = 5; // pixels to move before drag starts\r\n DragDropTouch._OPACITY = 0.5; // drag image opacity\r\n DragDropTouch._DBLCLICK = 500; // max ms between clicks in a double click\r\n DragDropTouch._CTXMENU = 900; // ms to hold before raising 'contextmenu' event\r\n // copy styles/attributes from drag source to drag image element\r\n DragDropTouch._rmvAtts = 'id,class,style,draggable'.split(',');\r\n // synthesize and dispatch an event\r\n // returns true if the event has been handled (e.preventDefault == true)\r\n DragDropTouch._kbdProps = 'altKey,ctrlKey,metaKey,shiftKey'.split(',');\r\n DragDropTouch._ptProps = 'pageX,pageY,clientX,clientY,screenX,screenY'.split(',');\r\n return DragDropTouch;\r\n })();\r\n DragDropTouch_1.DragDropTouch = DragDropTouch;\r\n})(DragDropTouch || (DragDropTouch = {}));\r\n//# sourceMappingURL=DragDropTouchNoWijmo.js.map\r\n","/**\r\n * if this popup is outside of it's parent, nudge it back in\r\n * @param {element} popup: DOM elmenet of the popup to be placed\r\n * @param {number} top: The top coordinate of where the popup should point\r\n * @param {number} left: The left coordinate of where the popup should point\r\n * @param {number} offset: an offet to be added to top/bottom or left/right\r\n * @param {string} triangle: \"top\", \"right\", \"bottom\", or \"left\"\r\n * @param {number} triangleSize: used to calculate the position\r\n * @param {boolean} flipToContain: will flip the popup if it goes outside the parent container\r\n * @return {object} {\r\n * realTop : with no offset adjustment, the popup should go here, based on triangleSide\r\n * realLeft : ^^\r\n * popupTop : with adjustment when the popup butts up agains the parent\r\n * popupLeft : ^^\r\n * overflow : \"top\", \"right\", \"bottom\", \"left\". Positive numbers are overflows\r\n * triangleOffset: Amount the triangle needs to move to be on the dot, relative from 50%\r\n * triangleSide : Will be the same as passed in triangle, unless it fliped via flipToContain\r\n * }\r\n * use popupTop, popupLeft, and triangleOffset to position the popup\r\n */\r\nfunction calculatePopupOffsets({popup, top, left, offset = 0, triangle = \"bottom\", triangleSize, flipToContain = false}){\r\n\r\n\r\n // make a copy of this\r\n let triangleSide = triangle;\r\n\r\n // get the width and height of this popup from the DOM\r\n const width = popup.offsetWidth;\r\n const height = popup.offsetHeight;\r\n\r\n // get the width/height of the parent container div\r\n const parent = popup.parentNode;\r\n const parentWidth = parent.clientWidth;\r\n const parentHeight = parent.offsetHeight; // client height of body will only be the viewport height\r\n\r\n // common calculations\r\n const popupOnTop = top - height - triangleSize + offset;\r\n const popupOnBottom = top + triangleSize - offset;\r\n const popupOnLeft = left - width - triangleSize + offset;\r\n const popupOnRight = left + triangleSize - offset;\r\n\r\n // calculate where the top of the popup should be based on top/left\r\n const realTop = (triangleSide === \"bottom\") ? popupOnTop\r\n : (triangleSide === \"top\") ? popupOnBottom\r\n : top - height/2; // left or right\r\n\r\n const realLeft = (triangleSide === \"right\") ? popupOnLeft\r\n : (triangleSide === \"left\") ? popupOnRight\r\n : left - (width/2); // center\r\n\r\n // the amounts that this popup is outside of it's parent.\r\n const overflow = {\r\n top: -realTop,\r\n right: -(parentWidth - (realLeft + width)),\r\n bottom: -(parentHeight - (realTop + height)),\r\n left: -realLeft\r\n };\r\n\r\n\r\n // calculate where the popup should go\r\n // start with popupLeft as realLeft before nudging\r\n let popupTop = realTop;\r\n let popupLeft = realLeft;\r\n let triangleOffset = 0;\r\n\r\n\r\n // if there is an overflow on the right, adjust the popup and triangle position\r\n if (overflow.right > 0){\r\n if (triangleSide === \"top\" || triangleSide === \"bottom\"){\r\n popupLeft = realLeft - overflow.right;\r\n triangleOffset = overflow.right;\r\n }\r\n\r\n // for left, flip the popup\r\n if (triangleSide === \"left\" && flipToContain){\r\n triangleSide = \"right\";\r\n popupLeft = popupOnLeft;\r\n }\r\n }\r\n\r\n // if there is an overflow on the left, adjust the popup and triangle position\r\n if (overflow.left > 0){\r\n if (triangleSide === \"top\" || triangleSide === \"bottom\"){\r\n popupLeft = realLeft + overflow.left;\r\n triangleOffset = -overflow.left;\r\n }\r\n\r\n // for right, flip the popup\r\n if (triangleSide === \"right\" && flipToContain){\r\n triangleSide = \"left\";\r\n popupLeft = popupOnRight;\r\n }\r\n }\r\n\r\n // if there is an overflow on the bottom\r\n if (overflow.bottom > 0){\r\n // for left/right, butt the popup against the bottom\r\n if (triangleSide === \"left\" || triangleSide === \"right\") {\r\n popupTop = realTop - overflow.bottom;\r\n triangleOffset = overflow.bottom;\r\n }\r\n // for top, flip the popup\r\n if (triangleSide === \"top\" && flipToContain){\r\n triangleSide = \"bottom\";\r\n popupTop = popupOnTop;\r\n }\r\n }\r\n\r\n // if there is an overflow on the top\r\n if (overflow.top > 0){\r\n\r\n if (triangleSide === \"left\" || triangleSide === \"right\") {\r\n popupTop = realTop + overflow.top;\r\n triangleOffset = -overflow.top;\r\n }\r\n\r\n // for bottom, flip the popup\r\n if (triangleSide === \"bottom\" && flipToContain){\r\n triangleSide = \"top\";\r\n popupTop = popupOnBottom;\r\n }\r\n }\r\n\r\n // return all the measurements\r\n return {\r\n realTop, realLeft, popupTop, popupLeft, overflow, triangleOffset, triangleSide\r\n };\r\n\r\n}\r\n\r\nexport default calculatePopupOffsets;\r\n","(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o this.options.items) {\r\n\t\t\tthis.options.slideBy = this.options.items;\r\n\t\t}\r\n\r\n\t\t// if items number is less than in body\r\n\t\tif (this.options.loop && this.num.oItems < this.options.items) {\r\n\t\t\tthis.options.loop = false;\r\n\t\t}\r\n\r\n\t\tif (this.num.oItems <= this.options.items) {\r\n\t\t\tthis.options.navRewind = false;\r\n\t\t}\r\n\r\n\t\tif (this.options.autoWidth) {\r\n\t\t\tthis.options.stagePadding = false;\r\n\t\t\tthis.options.dotsEach = 1;\r\n\t\t\tthis.options.merge = false;\r\n\t\t}\r\n\t\tif (this.state.lazyContent) {\r\n\t\t\tthis.options.loop = false;\r\n\t\t\tthis.options.merge = false;\r\n\t\t\tthis.options.dots = false;\r\n\t\t\tthis.options.freeDrag = false;\r\n\t\t\tthis.options.lazyContent = true;\r\n\t\t}\r\n\r\n\t\tif ((this.options.animateIn || this.options.animateOut) && this.options.items === 1 && this.support3d) {\r\n\t\t\tthis.state.animate = true;\r\n\t\t} else {\r\n\t\t\tthis.state.animate = false;\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * createStage\r\n * @desc Create stage and Outer-stage elements\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.createStage = function () {\r\n\t\tvar oStage = document.createElement('div');\r\n\t\tvar stage = document.createElement(this.options.stageElement);\r\n\r\n\t\toStage.className = 'owl-stage-outer';\r\n\t\tstage.className = 'owl-stage';\r\n\r\n\t\toStage.appendChild(stage);\r\n\t\tthis.dom.el.appendChild(oStage);\r\n\r\n\t\tthis.dom.oStage = oStage;\r\n\t\tthis.dom.$oStage = $(oStage);\r\n\t\tthis.dom.stage = stage;\r\n\t\tthis.dom.$stage = $(stage);\r\n\r\n\t\toStage = null;\r\n\t\tstage = null;\r\n\t};\r\n\r\n\t/**\r\n * createItem\r\n * @desc Create item container\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.createItem = function () {\r\n\t\tvar item = document.createElement(this.options.itemElement);\r\n\t\titem.className = this.options.itemClass;\r\n\t\treturn item;\r\n\t};\r\n\r\n\t/**\r\n * fetchContent\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.fetchContent = function (extContent) {\r\n\t\tif (extContent) {\r\n\t\t\tthis.dom.$content = extContent instanceof jQuery ? extContent : $(extContent);\r\n\t\t} else if (this.options.nestedItemSelector) {\r\n\t\t\tthis.dom.$content = this.dom.$el.find('.' + this.options.nestedItemSelector).not('.owl-stage-outer');\r\n\t\t} else {\r\n\t\t\tthis.dom.$content = this.dom.$el.children().not('.owl-stage-outer');\r\n\t\t}\r\n\t\t// content length\r\n\t\tthis.num.oItems = this.dom.$content.length;\r\n\r\n\t\t// init Structure\r\n\t\tif (this.num.oItems !== 0) {\r\n\t\t\tthis.initStructure();\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * initStructure\r\n * @param [refresh] - if refresh and not lazyContent then dont create normal structure\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.initStructure = function () {\r\n\r\n\t\t// lazyContent needs at least 3*items\r\n\r\n\t\tif (this.options.lazyContent && this.num.oItems >= this.options.items * 3) {\r\n\t\t\tthis.state.lazyContent = true;\r\n\t\t} else {\r\n\t\t\tthis.state.lazyContent = false;\r\n\t\t}\r\n\r\n\t\tif (this.state.lazyContent) {\r\n\r\n\t\t\t// start position\r\n\t\t\tthis.pos.currentAbs = this.options.items;\r\n\r\n\t\t\t//remove lazy content from DOM\r\n\t\t\tthis.dom.$content.remove();\r\n\t\t} else {\r\n\t\t\t// create normal structure\r\n\t\t\tthis.createNormalStructure();\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * createNormalStructure\r\n * @desc Create normal structure for small/mid weight content\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.createNormalStructure = function () {\r\n\t\tfor (var i = 0; i < this.num.oItems; i++) {\r\n\t\t\t// fill 'owl-item' with content\r\n\t\t\tvar item = this.fillItem(this.dom.$content, i);\r\n\t\t\t// append into stage\r\n\t\t\tthis.dom.$stage.append(item);\r\n\t\t}\r\n\t\tthis.dom.$content = null;\r\n\t};\r\n\r\n\t/**\r\n * createCustomStructure\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.createCustomStructure = function (howManyItems) {\r\n\t\tfor (var i = 0; i < howManyItems; i++) {\r\n\t\t\tvar emptyItem = this.createItem();\r\n\t\t\tvar item = $(emptyItem);\r\n\r\n\t\t\tthis.setData(item, false);\r\n\t\t\tthis.dom.$stage.append(item);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * createLazyContentStructure\r\n * @desc Create lazyContent structure for large content and better mobile experience\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.createLazyContentStructure = function (refresh) {\r\n\t\tif (!this.state.lazyContent) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\t// prevent recreate - to do\r\n\t\tif (refresh && this.dom.$stage.children().length === this.options.items * 3) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t// remove items from stage\r\n\t\tthis.dom.$stage.empty();\r\n\r\n\t\t// create custom structure\r\n\t\tthis.createCustomStructure(3 * this.options.items);\r\n\t};\r\n\r\n\t/**\r\n * fillItem\r\n * @desc Fill empty item container with provided content\r\n * @since 2.0.0\r\n * @param [content] - string/$dom - passed owl-item\r\n * @param [i] - index in jquery object\r\n * return $ new object\r\n */\r\n\r\n\tOwl.prototype.fillItem = function (content, i) {\r\n\t\tvar emptyItem = this.createItem();\r\n\t\tvar c = content[i] || content;\r\n\t\t// set item data\r\n\t\tvar traversed = this.traversContent(c);\r\n\t\tthis.setData(emptyItem, false, traversed);\r\n\t\treturn $(emptyItem).append(c);\r\n\t};\r\n\r\n\t/**\r\n * traversContent\r\n * @since 2.0.0\r\n * @param [c] - content\r\n * return object\r\n */\r\n\r\n\tOwl.prototype.traversContent = function (c) {\r\n\t\tvar $c = $(c),\r\n\t\t dotValue,\r\n\t\t hashValue;\r\n\t\tif (this.options.dotData) {\r\n\t\t\tdotValue = $c.find('[data-dot]').andSelf().data('dot');\r\n\t\t}\r\n\t\t// update URL hash\r\n\t\tif (this.options.URLhashListener) {\r\n\t\t\thashValue = $c.find('[data-hash]').andSelf().data('hash');\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tdot: dotValue || false,\r\n\t\t\thash: hashValue || false\r\n\t\t};\r\n\t};\r\n\r\n\t/**\r\n * setData\r\n * @desc Set item jQuery Data \r\n * @since 2.0.0\r\n * @param [item] - dom - passed owl-item\r\n * @param [cloneObj] - $dom - passed clone item\r\n */\r\n\r\n\tOwl.prototype.setData = function (item, cloneObj, traversed) {\r\n\t\tvar dot, hash;\r\n\t\tif (traversed) {\r\n\t\t\tdot = traversed.dot;\r\n\t\t\thash = traversed.hash;\r\n\t\t}\r\n\t\tvar itemData = {\r\n\t\t\tindex: false,\r\n\t\t\tindexAbs: false,\r\n\t\t\tposLeft: false,\r\n\t\t\tclone: false,\r\n\t\t\tactive: false,\r\n\t\t\tloaded: false,\r\n\t\t\tlazyLoad: false,\r\n\t\t\tcurrent: false,\r\n\t\t\twidth: false,\r\n\t\t\tcenter: false,\r\n\t\t\tpage: false,\r\n\t\t\thasVideo: false,\r\n\t\t\tplayVideo: false,\r\n\t\t\tdot: dot,\r\n\t\t\thash: hash\r\n\t\t};\r\n\r\n\t\t// copy itemData to cloned item\r\n\r\n\t\tif (cloneObj) {\r\n\t\t\titemData = $.extend({}, itemData, cloneObj.data('owl-item'));\r\n\t\t}\r\n\r\n\t\t$(item).data('owl-item', itemData);\r\n\t};\r\n\r\n\t/**\r\n * updateLocalContent\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateLocalContent = function () {\r\n\t\tthis.dom.$oItems = this.dom.$stage.find('.' + this.options.itemClass).filter(function () {\r\n\t\t\treturn $(this).data('owl-item').clone === false;\r\n\t\t});\r\n\r\n\t\tthis.num.oItems = this.dom.$oItems.length;\r\n\t\t//update index on original items\r\n\r\n\t\tfor (var k = 0; k < this.num.oItems; k++) {\r\n\t\t\tvar item = this.dom.$oItems.eq(k);\r\n\t\t\titem.data('owl-item').index = k;\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * checkVideoLinks\r\n * @desc Check if for any videos links\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.checkVideoLinks = function () {\r\n\t\tif (!this.options.video) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\tvar videoEl, item;\r\n\r\n\t\tfor (var i = 0; i < this.num.items; i++) {\r\n\r\n\t\t\titem = this.dom.$items.eq(i);\r\n\t\t\tif (item.data('owl-item').hasVideo) {\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\r\n\t\t\tvideoEl = item.find('.owl-video');\r\n\t\t\tif (videoEl.length) {\r\n\t\t\t\tthis.state.hasVideos = true;\r\n\t\t\t\tthis.dom.$items.eq(i).data('owl-item').hasVideo = true;\r\n\t\t\t\tvideoEl.css('display', 'none');\r\n\t\t\t\tthis.getVideoInfo(videoEl, item);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * getVideoInfo\r\n * @desc Get Video ID and Type (YouTube/Vimeo only)\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.getVideoInfo = function (videoEl, item) {\r\n\r\n\t\tvar info,\r\n\t\t type,\r\n\t\t id,\r\n\t\t vimeoId = videoEl.data('vimeo-id'),\r\n\t\t youTubeId = videoEl.data('youtube-id'),\r\n\t\t width = videoEl.data('width') || this.options.videoWidth,\r\n\t\t height = videoEl.data('height') || this.options.videoHeight,\r\n\t\t url = videoEl.attr('href');\r\n\r\n\t\tif (vimeoId) {\r\n\t\t\ttype = 'vimeo';\r\n\t\t\tid = vimeoId;\r\n\t\t} else if (youTubeId) {\r\n\t\t\ttype = 'youtube';\r\n\t\t\tid = youTubeId;\r\n\t\t} else if (url) {\r\n\t\t\tid = url.match(/(http:|https:|)\\/\\/(player.|www.)?(vimeo\\.com|youtu(be\\.com|\\.be|be\\.googleapis\\.com))\\/(video\\/|embed\\/|watch\\?v=|v\\/)?([A-Za-z0-9._%-]*)(\\&\\S+)?/);\r\n\r\n\t\t\tif (id[3].indexOf('youtu') > -1) {\r\n\t\t\t\ttype = 'youtube';\r\n\t\t\t} else if (id[3].indexOf('vimeo') > -1) {\r\n\t\t\t\ttype = 'vimeo';\r\n\t\t\t}\r\n\t\t\tid = id[6];\r\n\t\t} else {\r\n\t\t\tthrow new Error('Missing video link.');\r\n\t\t}\r\n\r\n\t\titem.data('owl-item').videoType = type;\r\n\t\titem.data('owl-item').videoId = id;\r\n\t\titem.data('owl-item').videoWidth = width;\r\n\t\titem.data('owl-item').videoHeight = height;\r\n\r\n\t\tinfo = {\r\n\t\t\ttype: type,\r\n\t\t\tid: id\r\n\t\t};\r\n\r\n\t\t// Check dimensions\r\n\t\tvar dimensions = width && height ? 'style=\"width:' + width + 'px;height:' + height + 'px;\"' : '';\r\n\r\n\t\t// wrap video content into owl-video-wrapper div\r\n\t\tvideoEl.wrap('
');\r\n\r\n\t\tthis.createVideoTn(videoEl, info);\r\n\t};\r\n\r\n\t/**\r\n * createVideoTn\r\n * @desc Create Video Thumbnail\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.createVideoTn = function (videoEl, info) {\r\n\r\n\t\tvar tnLink, icon, height;\r\n\t\tvar customTn = videoEl.find('img');\r\n\t\tvar srcType = 'src';\r\n\t\tvar lazyClass = '';\r\n\t\tvar that = this;\r\n\r\n\t\tif (this.options.lazyLoad) {\r\n\t\t\tsrcType = 'data-src';\r\n\t\t\tlazyClass = 'owl-lazy';\r\n\t\t}\r\n\r\n\t\t// Custom thumbnail\r\n\r\n\t\tif (customTn.length) {\r\n\t\t\taddThumbnail(customTn.attr(srcType));\r\n\t\t\tcustomTn.remove();\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tfunction addThumbnail(tnPath) {\r\n\t\t\ticon = '
';\r\n\r\n\t\t\tif (that.options.lazyLoad) {\r\n\t\t\t\ttnLink = '
';\r\n\t\t\t} else {\r\n\t\t\t\ttnLink = '
';\r\n\t\t\t}\r\n\t\t\tvideoEl.after(tnLink);\r\n\t\t\tvideoEl.after(icon);\r\n\t\t}\r\n\r\n\t\tif (info.type === 'youtube') {\r\n\t\t\tvar path = \"http://img.youtube.com/vi/\" + info.id + \"/hqdefault.jpg\";\r\n\t\t\taddThumbnail(path);\r\n\t\t} else if (info.type === 'vimeo') {\r\n\t\t\t$.ajax({\r\n\t\t\t\ttype: 'GET',\r\n\t\t\t\turl: 'http://vimeo.com/api/v2/video/' + info.id + '.json',\r\n\t\t\t\tjsonp: 'callback',\r\n\t\t\t\tdataType: 'jsonp',\r\n\t\t\t\tsuccess: function success(data) {\r\n\t\t\t\t\tvar path = data[0].thumbnail_large;\r\n\t\t\t\t\taddThumbnail(path);\r\n\t\t\t\t\tif (that.options.loop) {\r\n\t\t\t\t\t\tthat.updateItemState();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * stopVideo\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.stopVideo = function () {\r\n\t\tthis.fireCallback('onVideoStop');\r\n\t\tvar item = this.dom.$items.eq(this.state.videoPlayIndex);\r\n\t\titem.find('.owl-video-frame').remove();\r\n\t\titem.removeClass('owl-video-playing');\r\n\t\tthis.state.videoPlay = false;\r\n\t};\r\n\r\n\t/**\r\n * playVideo\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.playVideo = function (ev) {\r\n\t\tthis.fireCallback('onVideoPlay');\r\n\r\n\t\tif (this.state.videoPlay) {\r\n\t\t\tthis.stopVideo();\r\n\t\t}\r\n\t\tvar videoLink,\r\n\t\t videoWrap,\r\n\t\t target = $(ev.target || ev.srcElement),\r\n\t\t item = target.closest('.' + this.options.itemClass);\r\n\r\n\t\tvar videoType = item.data('owl-item').videoType,\r\n\t\t id = item.data('owl-item').videoId,\r\n\t\t width = item.data('owl-item').videoWidth || Math.floor(item.data('owl-item').width - this.options.margin),\r\n\t\t height = item.data('owl-item').videoHeight || this.dom.$stage.height();\r\n\r\n\t\tif (videoType === 'youtube') {\r\n\t\t\tvideoLink = \"\";\r\n\t\t} else if (videoType === 'vimeo') {\r\n\t\t\tvideoLink = '';\r\n\t\t}\r\n\r\n\t\titem.addClass('owl-video-playing');\r\n\t\tthis.state.videoPlay = true;\r\n\t\tthis.state.videoPlayIndex = item.data('owl-item').indexAbs;\r\n\r\n\t\tvideoWrap = $('
' + videoLink + '
');\r\n\t\ttarget.after(videoWrap);\r\n\t};\r\n\r\n\t/**\r\n * loopClone\r\n * @desc Make a clones for infinity loop\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.loopClone = function () {\r\n\t\tif (!this.options.loop || this.state.lazyContent || this.num.oItems < this.options.items) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tvar firstClone,\r\n\t\t lastClone,\r\n\t\t i,\r\n\t\t num = this.options.items,\r\n\t\t lastNum = this.num.oItems - 1;\r\n\r\n\t\t// if neighbour margin then add one more duplicat\r\n\t\tif (this.options.stagePadding && this.options.items === 1) {\r\n\t\t\tnum += 1;\r\n\t\t}\r\n\t\tthis.num.cItems = num * 2;\r\n\r\n\t\tfor (i = 0; i < num; i++) {\r\n\t\t\t// Clone item\r\n\t\t\tvar first = this.dom.$oItems.eq(i).clone(true, true);\r\n\t\t\tvar last = this.dom.$oItems.eq(lastNum - i).clone(true, true);\r\n\t\t\tfirstClone = $(first[0]).addClass('cloned');\r\n\t\t\tlastClone = $(last[0]).addClass('cloned');\r\n\r\n\t\t\t// set clone data\r\n\t\t\t// Somehow data has reference to same data id in cash\r\n\r\n\t\t\tthis.setData(firstClone[0], first);\r\n\t\t\tthis.setData(lastClone[0], last);\r\n\r\n\t\t\tfirstClone.data('owl-item').clone = true;\r\n\t\t\tlastClone.data('owl-item').clone = true;\r\n\r\n\t\t\tthis.dom.$stage.append(firstClone);\r\n\t\t\tthis.dom.$stage.prepend(lastClone);\r\n\r\n\t\t\tfirstClone = lastClone = null;\r\n\t\t}\r\n\r\n\t\tthis.dom.$cItems = this.dom.$stage.find('.' + this.options.itemClass).filter(function () {\r\n\t\t\treturn $(this).data('owl-item').clone === true;\r\n\t\t});\r\n\t};\r\n\r\n\t/**\r\n * reClone\r\n * @desc Update Cloned elements\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.reClone = function () {\r\n\t\t// remove cloned items\r\n\t\tif (this.dom.$cItems !== null) {\r\n\t\t\t// && (this.num.oItems !== 0 && this.num.oItems <= this.options.items)){\r\n\t\t\tthis.dom.$cItems.remove();\r\n\t\t\tthis.dom.$cItems = null;\r\n\t\t\tthis.num.cItems = 0;\r\n\t\t}\r\n\r\n\t\tif (!this.options.loop) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// generete new elements\r\n\t\tthis.loopClone();\r\n\t};\r\n\r\n\t/**\r\n * calculate\r\n * @desc Update item index data\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.calculate = function () {\r\n\r\n\t\tvar i,\r\n\t\t j,\r\n\t\t k,\r\n\t\t dist,\r\n\t\t posLeft = 0,\r\n\t\t fullWidth = 0;\r\n\r\n\t\t// element width minus neighbour\r\n\t\tthis.width.el = this.dom.$el.width() - this.options.stagePadding * 2;\r\n\r\n\t\t//to check\r\n\t\tthis.width.view = this.dom.$el.width();\r\n\r\n\t\t// calculate width minus addition margins\r\n\t\tvar elMinusMargin = this.width.el - this.options.margin * (this.options.items === 1 ? 0 : this.options.items - 1);\r\n\r\n\t\t// calculate element width and item width\r\n\t\tthis.width.el = this.width.el + this.options.margin;\r\n\t\tthis.width.item = (elMinusMargin / this.options.items + this.options.margin).toFixed(3);\r\n\r\n\t\tthis.dom.$items = this.dom.$stage.find('.owl-item');\r\n\t\tthis.num.items = this.dom.$items.length;\r\n\r\n\t\t//change to autoWidths\r\n\t\tif (this.options.autoWidth) {\r\n\t\t\tthis.dom.$items.css('width', '');\r\n\t\t}\r\n\r\n\t\t// Set grid array\r\n\t\tthis.pos.items = [];\r\n\t\tthis.num.merged = [];\r\n\t\tthis.num.nav = [];\r\n\r\n\t\t// item distances\r\n\t\tif (this.options.rtl) {\r\n\t\t\tdist = this.options.center ? -(this.width.el / 2) : 0;\r\n\t\t} else {\r\n\t\t\tdist = this.options.center ? this.width.el / 2 : 0;\r\n\t\t}\r\n\r\n\t\tthis.width.mergeStage = 0;\r\n\r\n\t\t// Calculate items positions\r\n\t\tfor (i = 0; i < this.num.items; i++) {\r\n\r\n\t\t\t// check merged items\r\n\r\n\t\t\tif (this.options.merge) {\r\n\t\t\t\tvar mergeNumber = this.dom.$items.eq(i).find('[data-merge]').attr('data-merge') || 1;\r\n\t\t\t\tif (this.options.mergeFit && mergeNumber > this.options.items) {\r\n\t\t\t\t\tmergeNumber = this.options.items;\r\n\t\t\t\t}\r\n\t\t\t\tthis.num.merged.push(parseInt(mergeNumber));\r\n\t\t\t\tthis.width.mergeStage += this.width.item * this.num.merged[i];\r\n\t\t\t} else {\r\n\t\t\t\tthis.num.merged.push(1);\r\n\t\t\t}\r\n\r\n\t\t\t// Array based on merged items used by dots and navigation\r\n\t\t\tif (this.options.loop) {\r\n\t\t\t\tif (i >= this.num.cItems / 2 && i < this.num.cItems / 2 + this.num.oItems) {\r\n\t\t\t\t\tthis.num.nav.push(this.num.merged[i]);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tthis.num.nav.push(this.num.merged[i]);\r\n\t\t\t}\r\n\r\n\t\t\tvar iWidth = this.width.item * this.num.merged[i];\r\n\r\n\t\t\t// autoWidth item size\r\n\t\t\tif (this.options.autoWidth) {\r\n\t\t\t\tiWidth = this.dom.$items.eq(i).width() + this.options.margin;\r\n\t\t\t\tif (this.options.rtl) {\r\n\t\t\t\t\tthis.dom.$items[i].style.marginLeft = this.options.margin + 'px';\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.dom.$items[i].style.marginRight = this.options.margin + 'px';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t// push item position into array\r\n\t\t\tthis.pos.items.push(dist);\r\n\r\n\t\t\t// update item data\r\n\t\t\tthis.dom.$items.eq(i).data('owl-item').posLeft = posLeft;\r\n\t\t\tthis.dom.$items.eq(i).data('owl-item').width = iWidth;\r\n\r\n\t\t\t// dist starts from middle of stage if center\r\n\t\t\t// posLeft always starts from 0\r\n\t\t\tif (this.options.rtl) {\r\n\t\t\t\tdist += iWidth;\r\n\t\t\t\tposLeft += iWidth;\r\n\t\t\t} else {\r\n\t\t\t\tdist -= iWidth;\r\n\t\t\t\tposLeft -= iWidth;\r\n\t\t\t}\r\n\r\n\t\t\tfullWidth -= Math.abs(iWidth);\r\n\r\n\t\t\t// update position if center\r\n\t\t\tif (this.options.center) {\r\n\t\t\t\tthis.pos.items[i] = !this.options.rtl ? this.pos.items[i] - iWidth / 2 : this.pos.items[i] + iWidth / 2;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (this.options.autoWidth) {\r\n\t\t\tthis.width.stage = this.options.center ? Math.abs(fullWidth) : Math.abs(dist);\r\n\t\t} else {\r\n\t\t\tthis.width.stage = Math.abs(fullWidth);\r\n\t\t}\r\n\r\n\t\t//update indexAbs on all items\r\n\t\tvar allItems = this.num.oItems + this.num.cItems;\r\n\r\n\t\tfor (j = 0; j < allItems; j++) {\r\n\t\t\tthis.dom.$items.eq(j).data('owl-item').indexAbs = j;\r\n\t\t}\r\n\r\n\t\t// Set Min and Max\r\n\t\tthis.setMinMax();\r\n\r\n\t\t// Recalculate grid\r\n\t\tthis.setSizes();\r\n\t};\r\n\r\n\t/**\r\n * setMinMax\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.setMinMax = function () {\r\n\r\n\t\t// set Min\r\n\t\tvar minimum = this.dom.$oItems.eq(0).data('owl-item').indexAbs;\r\n\t\tvar i;\r\n\t\tthis.pos.min = 0;\r\n\t\tthis.pos.minValue = this.pos.items[minimum];\r\n\r\n\t\t// set max position\r\n\t\tif (!this.options.loop) {\r\n\t\t\tthis.pos.max = this.num.oItems - 1;\r\n\t\t}\r\n\r\n\t\tif (this.options.loop) {\r\n\t\t\tthis.pos.max = this.num.oItems + this.options.items;\r\n\t\t}\r\n\r\n\t\tif (!this.options.loop && !this.options.center) {\r\n\t\t\tthis.pos.max = this.num.oItems - this.options.items;\r\n\t\t}\r\n\r\n\t\tif (this.options.loop && this.options.center) {\r\n\t\t\tthis.pos.max = this.num.oItems + this.options.items;\r\n\t\t}\r\n\r\n\t\t//set max value\r\n\t\tthis.pos.maxValue = this.pos.items[this.pos.max];\r\n\r\n\t\t//Max for autoWidth content\r\n\t\tif (!this.options.loop && !this.options.center && this.options.autoWidth || this.options.merge && !this.options.center) {\r\n\t\t\tvar revert = this.options.rtl ? 1 : -1;\r\n\t\t\tfor (i = 0; i < this.pos.items.length; i++) {\r\n\t\t\t\tif (this.pos.items[i] * revert < this.width.stage - this.width.el) {\r\n\t\t\t\t\tthis.pos.max = i + 1;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.pos.maxValue = this.options.rtl ? this.width.stage - this.width.el : -(this.width.stage - this.width.el);\r\n\t\t\tthis.pos.items[this.pos.max] = this.pos.maxValue;\r\n\t\t}\r\n\r\n\t\t// Set loop boundries\r\n\t\tif (this.options.center) {\r\n\t\t\tthis.pos.loop = this.pos.items[0] - this.pos.items[this.num.oItems];\r\n\t\t} else {\r\n\t\t\tthis.pos.loop = -this.pos.items[this.num.oItems];\r\n\t\t}\r\n\r\n\t\t//if is less items\r\n\t\tif (this.num.oItems < this.options.items && !this.options.center) {\r\n\t\t\tthis.pos.max = 0;\r\n\t\t\tthis.pos.maxValue = this.pos.items[0];\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * setSizes\r\n * @desc Set sizes on elements (from collectData function)\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.setSizes = function () {\r\n\r\n\t\t// show neighbours\r\n\t\tif (this.options.stagePadding !== false) {\r\n\t\t\tthis.dom.oStage.style.paddingLeft = this.options.stagePadding + 'px';\r\n\t\t\tthis.dom.oStage.style.paddingRight = this.options.stagePadding + 'px';\r\n\t\t}\r\n\r\n\t\t// CRAZY FIX!!! Doublecheck this!\r\n\t\t//if(this.width.stagePrev > this.width.stage){\r\n\t\tif (this.options.rtl) {\r\n\t\t\twindow.setTimeout((function () {\r\n\t\t\t\tthis.dom.stage.style.width = this.width.stage + 'px';\r\n\t\t\t}).bind(this), 0);\r\n\t\t} else {\r\n\t\t\tthis.dom.stage.style.width = this.width.stage + 'px';\r\n\t\t}\r\n\r\n\t\tfor (var i = 0; i < this.num.items; i++) {\r\n\r\n\t\t\t// Set items width\r\n\t\t\tif (!this.options.autoWidth) {\r\n\t\t\t\tthis.dom.$items[i].style.width = this.width.item - this.options.margin + 'px';\r\n\t\t\t}\r\n\t\t\t// add margin\r\n\t\t\tif (this.options.rtl) {\r\n\t\t\t\tthis.dom.$items[i].style.marginLeft = this.options.margin + 'px';\r\n\t\t\t} else {\r\n\t\t\t\tthis.dom.$items[i].style.marginRight = this.options.margin + 'px';\r\n\t\t\t}\r\n\r\n\t\t\tif (this.num.merged[i] !== 1 && !this.options.autoWidth) {\r\n\t\t\t\tthis.dom.$items[i].style.width = this.width.item * this.num.merged[i] - this.options.margin + 'px';\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// save prev stage size\r\n\t\tthis.width.stagePrev = this.width.stage;\r\n\t};\r\n\r\n\t/**\r\n * responsive\r\n * @desc Responsive function update all data by calling refresh() \r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.responsive = function () {\r\n\r\n\t\tif (!this.num.oItems) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t// If El width hasnt change then stop responsive\r\n\t\tvar elChanged = this.isElWidthChanged();\r\n\t\tif (!elChanged) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\t// if Vimeo Fullscreen mode\r\n\t\tvar fullscreenElement = document.fullscreenElement || document.mozFullScreenElement || document.webkitFullscreenElement;\r\n\t\tif (fullscreenElement) {\r\n\t\t\tif ($(fullscreenElement.parentNode).hasClass('owl-video-frame')) {\r\n\t\t\t\tthis.setSpeed(0);\r\n\t\t\t\tthis.state.isFullScreen = true;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (fullscreenElement && this.state.isFullScreen && this.state.videoPlay) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\t// Comming back from fullscreen\r\n\t\tif (this.state.isFullScreen) {\r\n\t\t\tthis.state.isFullScreen = false;\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\t// check full screen mode and window orientation\r\n\t\tif (this.state.videoPlay) {\r\n\t\t\tif (this.state.orientation !== window.orientation) {\r\n\t\t\t\tthis.state.orientation = window.orientation;\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.fireCallback('onResponsiveBefore');\r\n\t\tthis.state.responsive = true;\r\n\t\tthis.refresh();\r\n\t\tthis.state.responsive = false;\r\n\t\tthis.fireCallback('onResponsiveAfter');\r\n\t};\r\n\r\n\t/**\r\n * refresh\r\n * @desc Refresh method is basically collection of functions that are responsible for Owl responsive functionality\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.refresh = function (init) {\r\n\r\n\t\tif (this.state.videoPlay) {\r\n\t\t\tthis.stopVideo();\r\n\t\t}\r\n\r\n\t\t// Update Options for given width\r\n\t\tthis.setResponsiveOptions();\r\n\r\n\t\t//set lazy structure\r\n\t\tthis.createLazyContentStructure(true);\r\n\r\n\t\t// update info about local content\r\n\t\tthis.updateLocalContent();\r\n\r\n\t\t// udpate options\r\n\t\tthis.optionsLogic();\r\n\r\n\t\t// if no items then stop\r\n\t\tif (this.num.oItems === 0) {\r\n\t\t\tif (this.dom.$page !== null) {\r\n\t\t\t\tthis.dom.$page.hide();\r\n\t\t\t}\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\t// Hide and Show methods helps here to set a proper widths.\r\n\t\t// This prevents Scrollbar to be calculated in stage width\r\n\t\tthis.dom.$stage.addClass('owl-refresh');\r\n\r\n\t\t// Remove clones and generate new ones\r\n\t\tthis.reClone();\r\n\r\n\t\t// calculate\r\n\t\tthis.calculate();\r\n\r\n\t\t//aaaand show.\r\n\t\tthis.dom.$stage.removeClass('owl-refresh');\r\n\r\n\t\t// to do\r\n\t\t// lazyContent last position on refresh\r\n\t\tif (this.state.lazyContent) {\r\n\t\t\tthis.pos.currentAbs = this.options.items;\r\n\t\t}\r\n\r\n\t\tthis.initPosition(init);\r\n\r\n\t\t// jump to last position\r\n\t\tif (!this.state.lazyContent && !init) {\r\n\t\t\tthis.jumpTo(this.pos.current, false); // fix that\r\n\t\t}\r\n\r\n\t\t//Check for videos ( YouTube and Vimeo currently supported)\r\n\t\tthis.checkVideoLinks();\r\n\r\n\t\tthis.updateItemState();\r\n\r\n\t\t// Update controls\r\n\t\tthis.rebuildDots();\r\n\r\n\t\tthis.updateControls();\r\n\r\n\t\t// update drag events\r\n\t\t//this.updateEvents();\r\n\r\n\t\t// update autoplay\r\n\t\tthis.autoplay();\r\n\r\n\t\tthis.autoHeight();\r\n\r\n\t\tthis.state.orientation = window.orientation;\r\n\r\n\t\tthis.watchVisibility();\r\n\t};\r\n\r\n\t/**\r\n * updateItemState\r\n * @desc Update information about current state of items (visibile, hidden, active, etc.)\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateItemState = function (update) {\r\n\r\n\t\tif (!this.state.lazyContent) {\r\n\t\t\tthis.updateActiveItems();\r\n\t\t} else {\r\n\t\t\tthis.updateLazyContent(update);\r\n\t\t}\r\n\r\n\t\tif (this.options.center) {\r\n\t\t\tthis.dom.$items.eq(this.pos.currentAbs).addClass(this.options.centerClass).data('owl-item').center = true;\r\n\t\t}\r\n\r\n\t\tif (this.options.lazyLoad) {\r\n\t\t\tthis.lazyLoad();\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * updateActiveItems\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateActiveItems = function () {\r\n\t\tvar i, j, item, ipos, iwidth, wpos, stage, outsideView, foundCurrent, stageX, view;\r\n\t\t// clear states\r\n\t\tfor (i = 0; i < this.num.items; i++) {\r\n\t\t\tthis.dom.$items.eq(i).data('owl-item').active = false;\r\n\t\t\tthis.dom.$items.eq(i).data('owl-item').current = false;\r\n\t\t\tthis.dom.$items.eq(i).removeClass(this.options.activeClass).removeClass(this.options.centerClass);\r\n\t\t}\r\n\r\n\t\tthis.num.active = 0;\r\n\t\tstageX = this.pos.stage;\r\n\t\tview = this.options.rtl ? this.width.view : -this.width.view;\r\n\r\n\t\tfor (j = 0; j < this.num.items; j++) {\r\n\r\n\t\t\titem = this.dom.$items.eq(j);\r\n\t\t\tipos = item.data('owl-item').posLeft;\r\n\t\t\tiwidth = item.data('owl-item').width;\r\n\t\t\toutsideView = this.options.rtl ? ipos + iwidth : ipos - iwidth;\r\n\r\n\t\t\tif (this.op(ipos, '<=', stageX) && this.op(ipos, '>', stageX + view) || this.op(outsideView, '<', stageX) && this.op(outsideView, '>', stageX + view)) {\r\n\r\n\t\t\t\tthis.num.active++;\r\n\r\n\t\t\t\tif (this.options.freeDrag && !foundCurrent) {\r\n\t\t\t\t\tfoundCurrent = true;\r\n\t\t\t\t\tthis.pos.current = item.data('owl-item').index;\r\n\t\t\t\t\tthis.pos.currentAbs = item.data('owl-item').indexAbs;\r\n\t\t\t\t}\r\n\r\n\t\t\t\titem.data('owl-item').active = true;\r\n\t\t\t\titem.data('owl-item').current = true;\r\n\t\t\t\titem.addClass(this.options.activeClass);\r\n\r\n\t\t\t\tif (!this.options.lazyLoad) {\r\n\t\t\t\t\titem.data('owl-item').loaded = true;\r\n\t\t\t\t}\r\n\t\t\t\tif (this.options.loop && (this.options.lazyLoad || this.options.center)) {\r\n\t\t\t\t\tthis.updateClonedItemsState(item.data('owl-item').index);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * updateClonedItemsState\r\n * @desc Set current state on sibilings items for lazyLoad and center\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateClonedItemsState = function (activeIndex) {\r\n\r\n\t\t//find cloned center\r\n\t\tvar center, $el, i;\r\n\t\tif (this.options.center) {\r\n\t\t\tcenter = this.dom.$items.eq(this.pos.currentAbs).data('owl-item').index;\r\n\t\t}\r\n\r\n\t\tfor (i = 0; i < this.num.items; i++) {\r\n\t\t\t$el = this.dom.$items.eq(i);\r\n\t\t\tif ($el.data('owl-item').index === activeIndex) {\r\n\t\t\t\t$el.data('owl-item').current = true;\r\n\t\t\t\tif ($el.data('owl-item').index === center) {\r\n\t\t\t\t\t$el.addClass(this.options.centerClass);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * updateLazyPosition\r\n * @desc Set current state on sibilings items for lazyLoad and center\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateLazyPosition = function () {\r\n\t\tvar jumpTo = this.pos.goToLazyContent || 0;\r\n\r\n\t\tthis.pos.lcMovedBy = Math.abs(this.options.items - this.pos.currentAbs);\r\n\r\n\t\tif (this.options.items < this.pos.currentAbs) {\r\n\t\t\tthis.pos.lcCurrent += this.pos.currentAbs - this.options.items;\r\n\t\t\tthis.state.lcDirection = 'right';\r\n\t\t} else if (this.options.items > this.pos.currentAbs) {\r\n\t\t\tthis.pos.lcCurrent -= this.options.items - this.pos.currentAbs;\r\n\t\t\tthis.state.lcDirection = 'left';\r\n\t\t}\r\n\r\n\t\tthis.pos.lcCurrent = jumpTo !== 0 ? jumpTo : this.pos.lcCurrent;\r\n\r\n\t\tif (this.pos.lcCurrent >= this.dom.$content.length) {\r\n\t\t\tthis.pos.lcCurrent = this.pos.lcCurrent - this.dom.$content.length;\r\n\t\t} else if (this.pos.lcCurrent < -this.dom.$content.length + 1) {\r\n\t\t\tthis.pos.lcCurrent = this.pos.lcCurrent + this.dom.$content.length;\r\n\t\t}\r\n\r\n\t\tif (this.options.startPosition > 0) {\r\n\t\t\tthis.pos.lcCurrent = this.options.startPosition;\r\n\t\t\tthis._options.startPosition = this.options.startPosition = 0;\r\n\t\t}\r\n\r\n\t\tthis.pos.lcCurrentAbs = this.pos.lcCurrent < 0 ? this.pos.lcCurrent + this.dom.$content.length : this.pos.lcCurrent;\r\n\t};\r\n\r\n\t/**\r\n * updateLazyContent\r\n * @param [update] - boolean - update call by content manipulations\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateLazyContent = function (update) {\r\n\r\n\t\tif (this.pos.lcCurrent === undefined) {\r\n\t\t\tthis.pos.lcCurrent = 0;\r\n\t\t\tthis.pos.current = this.pos.currentAbs = this.options.items;\r\n\t\t}\r\n\r\n\t\tif (!update) {\r\n\t\t\tthis.updateLazyPosition();\r\n\t\t}\r\n\t\tvar i, j, item, contentPos, content, freshItem, freshData;\r\n\r\n\t\tif (this.state.lcDirection !== false) {\r\n\t\t\tfor (i = 0; i < this.pos.lcMovedBy; i++) {\r\n\r\n\t\t\t\tif (this.state.lcDirection === 'right') {\r\n\t\t\t\t\titem = this.dom.$stage.find('.owl-item').eq(0); //.appendTo(this.dom.$stage);\r\n\t\t\t\t\titem.appendTo(this.dom.$stage);\r\n\t\t\t\t}\r\n\t\t\t\tif (this.state.lcDirection === 'left') {\r\n\t\t\t\t\titem = this.dom.$stage.find('.owl-item').eq(-1);\r\n\t\t\t\t\titem.prependTo(this.dom.$stage);\r\n\t\t\t\t}\r\n\t\t\t\titem.data('owl-item').active = false;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// recollect\r\n\t\tthis.dom.$items = this.dom.$stage.find('.owl-item');\r\n\r\n\t\tfor (j = 0; j < this.num.items; j++) {\r\n\t\t\t// to do\r\n\t\t\tthis.dom.$items.eq(j).removeClass(this.options.centerClass);\r\n\r\n\t\t\t// get Content\r\n\t\t\tcontentPos = this.pos.lcCurrent + j - this.options.items; // + this.options.startPosition;\r\n\r\n\t\t\tif (contentPos >= this.dom.$content.length) {\r\n\t\t\t\tcontentPos = contentPos - this.dom.$content.length;\r\n\t\t\t}\r\n\t\t\tif (contentPos < -this.dom.$content.length) {\r\n\t\t\t\tcontentPos = contentPos + this.dom.$content.length;\r\n\t\t\t}\r\n\r\n\t\t\tcontent = this.dom.$content.eq(contentPos);\r\n\t\t\tfreshItem = this.dom.$items.eq(j);\r\n\t\t\tfreshData = freshItem.data('owl-item');\r\n\r\n\t\t\tif (freshData.active === false || this.pos.goToLazyContent !== 0 || update === true) {\r\n\r\n\t\t\t\tfreshItem.empty();\r\n\t\t\t\tfreshItem.append(content.clone(true, true));\r\n\t\t\t\tfreshData.active = true;\r\n\t\t\t\tfreshData.current = true;\r\n\t\t\t\tif (!this.options.lazyLoad) {\r\n\t\t\t\t\tfreshData.loaded = true;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tfreshData.loaded = false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.pos.goToLazyContent = 0;\r\n\t\tthis.pos.current = this.pos.currentAbs = this.options.items;\r\n\t\tthis.setSpeed(0);\r\n\t\tthis.animStage(this.pos.items[this.options.items]);\r\n\t};\r\n\r\n\t/**\r\n * eventsCall\r\n * @desc Save internal event references and add event based functions like transitionEnd,responsive etc.\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.eventsCall = function () {\r\n\t\t// Save events references\r\n\t\tthis.e._onDragStart = (function (e) {\r\n\t\t\tthis.onDragStart(e);\r\n\t\t}).bind(this);\r\n\t\tthis.e._onDragMove = (function (e) {\r\n\t\t\tthis.onDragMove(e);\r\n\t\t}).bind(this);\r\n\t\tthis.e._onDragEnd = (function (e) {\r\n\t\t\tthis.onDragEnd(e);\r\n\t\t}).bind(this);\r\n\t\tthis.e._transitionEnd = (function (e) {\r\n\t\t\tthis.transitionEnd(e);\r\n\t\t}).bind(this);\r\n\t\tthis.e._resizer = (function () {\r\n\t\t\tthis.responsiveTimer();\r\n\t\t}).bind(this);\r\n\t\tthis.e._responsiveCall = (function () {\r\n\t\t\tthis.responsive();\r\n\t\t}).bind(this);\r\n\t\tthis.e._preventClick = (function (e) {\r\n\t\t\tthis.preventClick(e);\r\n\t\t}).bind(this);\r\n\t\tthis.e._goToHash = (function () {\r\n\t\t\tthis.goToHash();\r\n\t\t}).bind(this);\r\n\t\tthis.e._goToPage = (function (e) {\r\n\t\t\tthis.goToPage(e);\r\n\t\t}).bind(this);\r\n\t\tthis.e._ap = (function () {\r\n\t\t\tthis.autoplay();\r\n\t\t}).bind(this);\r\n\t\tthis.e._play = (function () {\r\n\t\t\tthis.play();\r\n\t\t}).bind(this);\r\n\t\tthis.e._pause = (function () {\r\n\t\t\tthis.pause();\r\n\t\t}).bind(this);\r\n\t\tthis.e._playVideo = (function (e) {\r\n\t\t\tthis.playVideo(e);\r\n\t\t}).bind(this);\r\n\r\n\t\tthis.e._navNext = (function (e) {\r\n\t\t\tif ($(e.target).hasClass('disabled')) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\te.preventDefault();\r\n\t\t\tthis.next();\r\n\t\t}).bind(this);\r\n\r\n\t\tthis.e._navPrev = (function (e) {\r\n\t\t\tif ($(e.target).hasClass('disabled')) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t\te.preventDefault();\r\n\t\t\tthis.prev();\r\n\t\t}).bind(this);\r\n\t};\r\n\r\n\t/**\r\n * responsiveTimer\r\n * @desc Check Window resize event with 200ms delay / this.options.responsiveRefreshRate\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.responsiveTimer = function () {\r\n\t\tif (this.windowWidth() === this.width.prevWindow) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\twindow.clearInterval(this.e._autoplay);\r\n\t\twindow.clearTimeout(this.resizeTimer);\r\n\t\tthis.resizeTimer = window.setTimeout(this.e._responsiveCall, this.options.responsiveRefreshRate);\r\n\t\tthis.width.prevWindow = this.windowWidth();\r\n\t};\r\n\r\n\t/**\r\n * internalEvents\r\n * @desc Checks for touch/mouse drag options and add necessery event handlers.\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.internalEvents = function () {\r\n\t\tvar isTouch = isTouchSupport();\r\n\t\tvar isTouchIE = isTouchSupportIE();\r\n\r\n\t\tif (isTouch && !isTouchIE) {\r\n\t\t\tthis.dragType = ['touchstart', 'touchmove', 'touchend', 'touchcancel'];\r\n\t\t} else if (isTouch && isTouchIE) {\r\n\t\t\tthis.dragType = ['MSPointerDown', 'MSPointerMove', 'MSPointerUp', 'MSPointerCancel'];\r\n\t\t} else {\r\n\t\t\tthis.dragType = ['mousedown', 'mousemove', 'mouseup'];\r\n\t\t}\r\n\r\n\t\tif ((isTouch || isTouchIE) && this.options.touchDrag) {\r\n\t\t\t//touch cancel event\r\n\t\t\tthis.on(document, this.dragType[3], this.e._onDragEnd);\r\n\t\t} else {\r\n\t\t\t// firefox startdrag fix - addeventlistener doesnt work here :/\r\n\t\t\tthis.dom.$stage.on('dragstart', function () {\r\n\t\t\t\treturn false;\r\n\t\t\t});\r\n\r\n\t\t\tif (this.options.mouseDrag) {\r\n\t\t\t\t//disable text select\r\n\t\t\t\tthis.dom.stage.onselectstart = function () {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t};\r\n\t\t\t} else {\r\n\t\t\t\t// enable text select\r\n\t\t\t\tthis.dom.$el.addClass('owl-text-select-on');\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t// Video Play Button event delegation\r\n\t\tthis.dom.$stage.on(this.dragType[2], '.owl-video-play-icon', this.e._playVideo);\r\n\r\n\t\tif (this.options.URLhashListener) {\r\n\t\t\tthis.on(window, 'hashchange', this.e._goToHash, false);\r\n\t\t}\r\n\r\n\t\tif (this.options.autoplayHoverPause) {\r\n\t\t\tvar that = this;\r\n\t\t\tthis.dom.$stage.on('mouseover', this.e._pause);\r\n\t\t\tthis.dom.$stage.on('mouseleave', this.e._ap);\r\n\t\t}\r\n\r\n\t\t// Catch transitionEnd event\r\n\t\tif (this.transitionEndVendor) {\r\n\t\t\tthis.on(this.dom.stage, this.transitionEndVendor, this.e._transitionEnd, false);\r\n\t\t}\r\n\r\n\t\t// Responsive\r\n\t\tif (this.options.responsive !== false) {\r\n\t\t\tthis.on(window, 'resize', this.e._resizer, false);\r\n\t\t}\r\n\r\n\t\tthis.updateEvents();\r\n\t};\r\n\r\n\t/**\r\n * updateEvents\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateEvents = function () {\r\n\r\n\t\tif (this.options.touchDrag && (this.dragType[0] === 'touchstart' || this.dragType[0] === 'MSPointerDown')) {\r\n\t\t\tthis.on(this.dom.stage, this.dragType[0], this.e._onDragStart, false);\r\n\t\t} else if (this.options.mouseDrag && this.dragType[0] === 'mousedown') {\r\n\t\t\tthis.on(this.dom.stage, this.dragType[0], this.e._onDragStart, false);\r\n\t\t} else {\r\n\t\t\tthis.off(this.dom.stage, this.dragType[0], this.e._onDragStart);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * onDragStart\r\n * @desc touchstart/mousedown event\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.onDragStart = function (event) {\r\n\t\tvar ev = event.originalEvent || event || window.event;\r\n\t\t// prevent right click\r\n\t\tif (ev.which === 3) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tif (this.dragType[0] === 'mousedown') {\r\n\t\t\tthis.dom.$stage.addClass('owl-grab');\r\n\t\t}\r\n\r\n\t\tthis.fireCallback('onTouchStart');\r\n\t\tthis.drag.startTime = new Date().getTime();\r\n\t\tthis.setSpeed(0);\r\n\t\tthis.state.isTouch = true;\r\n\t\tthis.state.isScrolling = false;\r\n\t\tthis.state.isSwiping = false;\r\n\t\tthis.drag.distance = 0;\r\n\r\n\t\t// if is 'touchstart'\r\n\t\tvar isTouchEvent = ev.type === 'touchstart';\r\n\t\tvar pageX = isTouchEvent ? event.targetTouches[0].pageX : ev.pageX || ev.clientX;\r\n\t\tvar pageY = isTouchEvent ? event.targetTouches[0].pageY : ev.pageY || ev.clientY;\r\n\r\n\t\t//get stage position left\r\n\t\tthis.drag.offsetX = this.dom.$stage.position().left - this.options.stagePadding;\r\n\t\tthis.drag.offsetY = this.dom.$stage.position().top;\r\n\r\n\t\tif (this.options.rtl) {\r\n\t\t\tthis.drag.offsetX = this.dom.$stage.position().left + this.width.stage - this.width.el + this.options.margin;\r\n\t\t}\r\n\r\n\t\t//catch position // ie to fix\r\n\t\tif (this.state.inMotion && this.support3d) {\r\n\t\t\tvar animatedPos = this.getTransformProperty();\r\n\t\t\tthis.drag.offsetX = animatedPos;\r\n\t\t\tthis.animStage(animatedPos);\r\n\t\t} else if (this.state.inMotion && !this.support3d) {\r\n\t\t\tthis.state.inMotion = false;\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tthis.drag.startX = pageX - this.drag.offsetX;\r\n\t\tthis.drag.startY = pageY - this.drag.offsetY;\r\n\r\n\t\tthis.drag.start = pageX - this.drag.startX;\r\n\t\tthis.drag.targetEl = ev.target || ev.srcElement;\r\n\t\tthis.drag.updatedX = this.drag.start;\r\n\r\n\t\t// to do/check\r\n\t\t//prevent links and images dragging;\r\n\t\t//this.drag.targetEl.draggable = false;\r\n\r\n\t\tthis.on(document, this.dragType[1], this.e._onDragMove, false);\r\n\t\tthis.on(document, this.dragType[2], this.e._onDragEnd, false);\r\n\t};\r\n\r\n\t/**\r\n * onDragMove\r\n * @desc touchmove/mousemove event\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.onDragMove = function (event) {\r\n\t\tif (!this.state.isTouch) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (this.state.isScrolling) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar neighbourItemWidth = 0;\r\n\t\tvar ev = event.originalEvent || event || window.event;\r\n\r\n\t\t// if is 'touchstart'\r\n\t\tvar isTouchEvent = ev.type == 'touchmove';\r\n\t\tvar pageX = isTouchEvent ? ev.targetTouches[0].pageX : ev.pageX || ev.clientX;\r\n\t\tvar pageY = isTouchEvent ? ev.targetTouches[0].pageY : ev.pageY || ev.clientY;\r\n\r\n\t\t// Drag Direction\r\n\t\tthis.drag.currentX = pageX - this.drag.startX;\r\n\t\tthis.drag.currentY = pageY - this.drag.startY;\r\n\t\tthis.drag.distance = this.drag.currentX - this.drag.offsetX;\r\n\r\n\t\t// Check move direction\r\n\t\tif (this.drag.distance < 0) {\r\n\t\t\tthis.state.direction = this.options.rtl ? 'right' : 'left';\r\n\t\t} else if (this.drag.distance > 0) {\r\n\t\t\tthis.state.direction = this.options.rtl ? 'left' : 'right';\r\n\t\t}\r\n\t\t// Loop\r\n\t\tif (this.options.loop) {\r\n\t\t\tif (this.op(this.drag.currentX, '>', this.pos.minValue) && this.state.direction === 'right') {\r\n\t\t\t\tthis.drag.currentX -= this.pos.loop;\r\n\t\t\t} else if (this.op(this.drag.currentX, '<', this.pos.maxValue) && this.state.direction === 'left') {\r\n\t\t\t\tthis.drag.currentX += this.pos.loop;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\t// pull\r\n\t\t\tvar minValue = this.options.rtl ? this.pos.maxValue : this.pos.minValue;\r\n\t\t\tvar maxValue = this.options.rtl ? this.pos.minValue : this.pos.maxValue;\r\n\t\t\tvar pull = this.options.pullDrag ? this.drag.distance / 5 : 0;\r\n\t\t\tthis.drag.currentX = Math.max(Math.min(this.drag.currentX, minValue + pull), maxValue + pull);\r\n\t\t}\r\n\r\n\t\t// Lock browser if swiping horizontal\r\n\r\n\t\tif (this.drag.distance > 8 || this.drag.distance < -8) {\r\n\t\t\tif (ev.preventDefault !== undefined) {\r\n\t\t\t\tev.preventDefault();\r\n\t\t\t} else {\r\n\t\t\t\tev.returnValue = false;\r\n\t\t\t}\r\n\t\t\tthis.state.isSwiping = true;\r\n\t\t}\r\n\r\n\t\tthis.drag.updatedX = this.drag.currentX;\r\n\r\n\t\t// Lock Owl if scrolling\r\n\t\tif ((this.drag.currentY > 16 || this.drag.currentY < -16) && this.state.isSwiping === false) {\r\n\t\t\tthis.state.isScrolling = true;\r\n\t\t\tthis.drag.updatedX = this.drag.start;\r\n\t\t}\r\n\r\n\t\tthis.animStage(this.drag.updatedX);\r\n\t};\r\n\r\n\t/**\r\n * onDragEnd \r\n * @desc touchend/mouseup event\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.onDragEnd = function (event) {\r\n\t\tif (!this.state.isTouch) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.dragType[0] === 'mousedown') {\r\n\t\t\tthis.dom.$stage.removeClass('owl-grab');\r\n\t\t}\r\n\r\n\t\tthis.fireCallback('onTouchEnd');\r\n\r\n\t\t//prevent links and images dragging;\r\n\t\t//this.drag.targetEl.draggable = true;\r\n\r\n\t\t//remove drag event listeners\r\n\r\n\t\tthis.state.isTouch = false;\r\n\t\tthis.state.isScrolling = false;\r\n\t\tthis.state.isSwiping = false;\r\n\r\n\t\t//to check\r\n\t\tif (this.drag.distance === 0 && this.state.inMotion !== true) {\r\n\t\t\tthis.state.inMotion = false;\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\t// prevent clicks while scrolling\r\n\r\n\t\tthis.drag.endTime = new Date().getTime();\r\n\t\tvar compareTimes = this.drag.endTime - this.drag.startTime;\r\n\t\tvar distanceAbs = Math.abs(this.drag.distance);\r\n\r\n\t\t//to test\r\n\t\tif (distanceAbs > 3 || compareTimes > 300) {\r\n\t\t\tthis.removeClick(this.drag.targetEl);\r\n\t\t}\r\n\r\n\t\tvar closest = this.closest(this.drag.updatedX);\r\n\r\n\t\tthis.setSpeed(this.options.dragEndSpeed, false, true);\r\n\t\tthis.animStage(this.pos.items[closest]);\r\n\r\n\t\t//if pullDrag is off then fire transitionEnd event manually when stick to border\r\n\t\tif (!this.options.pullDrag && this.drag.updatedX === this.pos.items[closest]) {\r\n\t\t\tthis.transitionEnd();\r\n\t\t}\r\n\r\n\t\tthis.drag.distance = 0;\r\n\r\n\t\tthis.off(document, this.dragType[1], this.e._onDragMove);\r\n\t\tthis.off(document, this.dragType[2], this.e._onDragEnd);\r\n\t};\r\n\r\n\t/**\r\n * removeClick\r\n * @desc Attach preventClick function to disable link while swipping\r\n * @since 2.0.0\r\n * @param [target] - clicked dom element\r\n */\r\n\r\n\tOwl.prototype.removeClick = function (target) {\r\n\t\tthis.drag.targetEl = target;\r\n\t\tthis.on(target, 'click', this.e._preventClick, false);\r\n\t};\r\n\r\n\t/**\r\n * preventClick\r\n * @desc Add preventDefault for any link and then remove removeClick event hanlder\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.preventClick = function (ev) {\r\n\t\tif (ev.preventDefault) {\r\n\t\t\tev.preventDefault();\r\n\t\t} else {\r\n\t\t\tev.returnValue = false;\r\n\t\t}\r\n\t\tif (ev.stopPropagation) {\r\n\t\t\tev.stopPropagation();\r\n\t\t}\r\n\t\tthis.off(this.drag.targetEl, 'click', this.e._preventClick, false);\r\n\t};\r\n\r\n\t/**\r\n * getTransformProperty\r\n * @desc catch stage position while animate (only css3)\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.getTransformProperty = function () {\r\n\t\tvar transform = window.getComputedStyle(this.dom.stage, null).getPropertyValue(this.vendorName + 'transform');\r\n\t\t//var transform = this.dom.$stage.css(this.vendorName + 'transform')\r\n\t\ttransform = transform.replace(/matrix(3d)?\\(|\\)/g, '').split(',');\r\n\t\tvar matrix3d = transform.length === 16;\r\n\r\n\t\treturn matrix3d !== true ? transform[4] : transform[12];\r\n\t};\r\n\r\n\t/**\r\n * closest\r\n * @desc Get closest item after touchend/mouseup\r\n * @since 2.0.0\r\n * @param [x] - curent position in pixels\r\n * return position in pixels\r\n */\r\n\r\n\tOwl.prototype.closest = function (x) {\r\n\t\tvar newX = 0,\r\n\t\t pull = 30;\r\n\r\n\t\tif (!this.options.freeDrag) {\r\n\t\t\t// Check closest item\r\n\t\t\tfor (var i = 0; i < this.num.items; i++) {\r\n\t\t\t\tif (x > this.pos.items[i] - pull && x < this.pos.items[i] + pull) {\r\n\t\t\t\t\tnewX = i;\r\n\t\t\t\t} else if (this.op(x, '<', this.pos.items[i]) && this.op(x, '>', this.pos.items[i + 1 || this.pos.items[i] - this.width.el])) {\r\n\t\t\t\t\tnewX = this.state.direction === 'left' ? i + 1 : i;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\t//non loop boundries\r\n\t\tif (!this.options.loop) {\r\n\t\t\tif (this.op(x, '>', this.pos.minValue)) {\r\n\t\t\t\tnewX = x = this.pos.min;\r\n\t\t\t} else if (this.op(x, '<', this.pos.maxValue)) {\r\n\t\t\t\tnewX = x = this.pos.max;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (!this.options.freeDrag) {\r\n\t\t\t// set positions\r\n\t\t\tthis.pos.currentAbs = newX;\r\n\t\t\tthis.pos.current = this.dom.$items.eq(newX).data('owl-item').index;\r\n\t\t} else {\r\n\t\t\tthis.updateItemState();\r\n\t\t\treturn x;\r\n\t\t}\r\n\r\n\t\treturn newX;\r\n\t};\r\n\r\n\t/**\r\n * animStage\r\n * @desc animate stage position (both css3/css2) and perform onChange functions/events\r\n * @since 2.0.0\r\n * @param [x] - curent position in pixels\r\n */\r\n\r\n\tOwl.prototype.animStage = function (pos) {\r\n\r\n\t\t// if speed is 0 the set inMotion to false\r\n\t\tif (this.speed.current !== 0 && this.pos.currentAbs !== this.pos.min) {\r\n\t\t\tthis.fireCallback('onTransitionStart');\r\n\t\t\tthis.state.inMotion = true;\r\n\t\t}\r\n\r\n\t\tvar posX = this.pos.stage = pos,\r\n\t\t style = this.dom.stage.style;\r\n\r\n\t\tif (this.support3d) {\r\n\t\t\tvar translate = 'translate3d(' + posX + 'px' + ',0px, 0px)';\r\n\t\t\tstyle[this.transformVendor] = translate;\r\n\t\t} else if (this.state.isTouch) {\r\n\t\t\tstyle.left = posX + 'px';\r\n\t\t} else {\r\n\t\t\tthis.dom.$stage.animate({ left: posX }, this.speed.css2speed, this.options.fallbackEasing, (function () {\r\n\t\t\t\tif (this.state.inMotion) {\r\n\t\t\t\t\tthis.transitionEnd();\r\n\t\t\t\t}\r\n\t\t\t}).bind(this));\r\n\t\t}\r\n\r\n\t\tthis.onChange();\r\n\t};\r\n\r\n\t/**\r\n * updatePosition\r\n * @desc Update current positions\r\n * @since 2.0.0\r\n * @param [pos] - number - new position\r\n */\r\n\r\n\tOwl.prototype.updatePosition = function (pos) {\r\n\r\n\t\t// if no items then stop\r\n\t\tif (this.num.oItems === 0) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\t// to do\r\n\t\t//if(pos > this.num.items){pos = 0;}\r\n\t\tif (pos === undefined) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\t//pos - new current position\r\n\t\tvar nextPos = pos;\r\n\t\tthis.pos.prev = this.pos.currentAbs;\r\n\r\n\t\tif (this.state.revert) {\r\n\t\t\tthis.pos.current = this.dom.$items.eq(nextPos).data('owl-item').index;\r\n\t\t\tthis.pos.currentAbs = nextPos;\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (!this.options.loop) {\r\n\t\t\tif (this.options.navRewind) {\r\n\t\t\t\tnextPos = nextPos > this.pos.max ? this.pos.min : nextPos < 0 ? this.pos.max : nextPos;\r\n\t\t\t} else {\r\n\t\t\t\tnextPos = nextPos > this.pos.max ? this.pos.max : nextPos <= 0 ? 0 : nextPos;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tnextPos = nextPos >= this.num.oItems ? this.num.oItems - 1 : nextPos;\r\n\t\t}\r\n\r\n\t\tthis.pos.current = this.dom.$oItems.eq(nextPos).data('owl-item').index;\r\n\t\tthis.pos.currentAbs = this.dom.$oItems.eq(nextPos).data('owl-item').indexAbs;\r\n\t};\r\n\r\n\t/**\r\n * setSpeed\r\n * @since 2.0.0\r\n * @param [speed] - number\r\n * @param [pos] - number - next position - use this param to calculate smartSpeed\r\n * @param [drag] - boolean - if drag is true then smart speed is disabled\r\n * return speed\r\n */\r\n\r\n\tOwl.prototype.setSpeed = function (speed, pos, drag) {\r\n\t\tvar s = speed,\r\n\t\t nextPos = pos;\r\n\r\n\t\tif (s === false && s !== 0 && drag !== true || s === undefined) {\r\n\r\n\t\t\t//Double check this\r\n\t\t\t// var nextPx = this.pos.items[nextPos];\r\n\t\t\t// var currPx = this.pos.stage\r\n\t\t\t// var diff = Math.abs(nextPx-currPx);\r\n\t\t\t// var s = diff/1\r\n\t\t\t// if(s>1000){\r\n\t\t\t// \ts = 1000;\r\n\t\t\t// }\r\n\r\n\t\t\tvar diff = Math.abs(nextPos - this.pos.prev);\r\n\t\t\tdiff = diff === 0 ? 1 : diff;\r\n\t\t\tif (diff > 6) {\r\n\t\t\t\tdiff = 6;\r\n\t\t\t}\r\n\t\t\ts = diff * this.options.smartSpeed;\r\n\t\t}\r\n\r\n\t\tif (s === false && drag === true) {\r\n\t\t\ts = this.options.smartSpeed;\r\n\t\t}\r\n\r\n\t\tif (s === 0) {\r\n\t\t\ts = 0;\r\n\t\t}\r\n\r\n\t\tif (this.support3d) {\r\n\t\t\tvar style = this.dom.stage.style;\r\n\t\t\tstyle.webkitTransitionDuration = style.MsTransitionDuration = style.msTransitionDuration = style.MozTransitionDuration = style.OTransitionDuration = style.transitionDuration = s / 1000 + 's';\r\n\t\t} else {\r\n\t\t\tthis.speed.css2speed = s;\r\n\t\t}\r\n\t\tthis.speed.current = s;\r\n\t\treturn s;\r\n\t};\r\n\r\n\t/**\r\n * jumpTo\r\n * @since 2.0.0\r\n * @param [pos] - number - next position - use this param to calculate smartSpeed\r\n * @param [update] - boolean - if drag is true then smart speed is disabled\r\n */\r\n\r\n\tOwl.prototype.jumpTo = function (pos, update) {\r\n\t\tif (this.state.lazyContent) {\r\n\t\t\tthis.pos.goToLazyContent = pos;\r\n\t\t}\r\n\t\tthis.updatePosition(pos);\r\n\t\tthis.setSpeed(0);\r\n\t\tthis.animStage(this.pos.items[this.pos.currentAbs]);\r\n\t\tif (update !== true) {\r\n\t\t\tthis.updateItemState();\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * goTo\r\n * @since 2.0.0\r\n * @param [pos] - number\r\n * @param [speed] - speed in ms\r\n * @param [speed] - speed in ms\r\n */\r\n\r\n\tOwl.prototype.goTo = function (pos, speed) {\r\n\t\tif (this.state.lazyContent && this.state.inMotion) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tthis.updatePosition(pos);\r\n\r\n\t\tif (this.state.animate) {\r\n\t\t\tspeed = 0;\r\n\t\t}\r\n\t\tthis.setSpeed(speed, this.pos.currentAbs);\r\n\r\n\t\tif (this.state.animate) {\r\n\t\t\tthis.animate();\r\n\t\t}\r\n\t\tthis.animStage(this.pos.items[this.pos.currentAbs]);\r\n\t};\r\n\r\n\t/**\r\n * next\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.next = function (optionalSpeed) {\r\n\t\tvar s = optionalSpeed || this.options.navSpeed;\r\n\t\tif (this.options.loop && !this.state.lazyContent) {\r\n\t\t\tthis.goToLoop(this.options.slideBy, s);\r\n\t\t} else {\r\n\t\t\tthis.goTo(this.pos.current + this.options.slideBy, s);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * prev\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.prev = function (optionalSpeed) {\r\n\t\tvar s = optionalSpeed || this.options.navSpeed;\r\n\t\tif (this.options.loop && !this.state.lazyContent) {\r\n\t\t\tthis.goToLoop(-this.options.slideBy, s);\r\n\t\t} else {\r\n\t\t\tthis.goTo(this.pos.current - this.options.slideBy, s);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * goToLoop\r\n * @desc Go to given position if loop is enabled - used only internal\r\n * @since 2.0.0\r\n * @param [distance] - number -how far to go\r\n * @param [speed] - number - speed in ms\r\n */\r\n\r\n\tOwl.prototype.goToLoop = function (distance, speed) {\r\n\r\n\t\tvar revert = this.pos.currentAbs,\r\n\t\t prevPosition = this.pos.currentAbs,\r\n\t\t newPosition = this.pos.currentAbs + distance,\r\n\t\t direction = prevPosition - newPosition < 0 ? true : false;\r\n\r\n\t\tthis.state.revert = true;\r\n\r\n\t\tif (newPosition < 1 && direction === false) {\r\n\r\n\t\t\tthis.state.bypass = true;\r\n\t\t\trevert = this.num.items - (this.options.items - prevPosition) - this.options.items;\r\n\t\t\tthis.jumpTo(revert, true);\r\n\t\t} else if (newPosition >= this.num.items - this.options.items && direction === true) {\r\n\r\n\t\t\tthis.state.bypass = true;\r\n\t\t\trevert = prevPosition - this.num.oItems;\r\n\t\t\tthis.jumpTo(revert, true);\r\n\t\t}\r\n\t\twindow.clearTimeout(this.e._goToLoop);\r\n\t\tthis.e._goToLoop = window.setTimeout((function () {\r\n\t\t\tthis.state.bypass = false;\r\n\t\t\tthis.goTo(revert + distance, speed);\r\n\t\t\tthis.state.revert = false;\r\n\t\t}).bind(this), 30);\r\n\t};\r\n\r\n\t/**\r\n * initPosition\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.initPosition = function (init) {\r\n\r\n\t\tif (!this.dom.$oItems || !init || this.state.lazyContent) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\tvar pos = this.options.startPosition;\r\n\r\n\t\tif (this.options.startPosition === 'URLHash') {\r\n\t\t\tpos = this.options.startPosition = this.hashPosition();\r\n\t\t} else if (typeof this.options.startPosition !== Number && !this.options.center) {\r\n\t\t\tthis.options.startPosition = 0;\r\n\t\t}\r\n\t\tthis.dom.oStage.scrollLeft = 0;\r\n\t\tthis.jumpTo(pos, true);\r\n\t};\r\n\r\n\t/**\r\n * goToHash\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.goToHash = function () {\r\n\t\tvar pos = this.hashPosition();\r\n\t\tif (pos === false) {\r\n\t\t\tpos = 0;\r\n\t\t}\r\n\t\tthis.dom.oStage.scrollLeft = 0;\r\n\t\tthis.goTo(pos, this.options.navSpeed);\r\n\t};\r\n\r\n\t/**\r\n * hashPosition\r\n * @desc Find hash in URL then look into items to find contained ID\r\n * @since 2.0.0\r\n * return hashPos - number of item\r\n */\r\n\r\n\tOwl.prototype.hashPosition = function () {\r\n\t\tvar hash = window.location.hash.substring(1),\r\n\t\t hashPos;\r\n\t\tif (hash === \"\") {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tfor (var i = 0; i < this.num.oItems; i++) {\r\n\t\t\tif (hash === this.dom.$oItems.eq(i).data('owl-item').hash) {\r\n\t\t\t\thashPos = i;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn hashPos;\r\n\t};\r\n\r\n\t/**\r\n * Autoplay\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.autoplay = function () {\r\n\t\tif (this.options.autoplay && !this.state.videoPlay) {\r\n\t\t\twindow.clearInterval(this.e._autoplay);\r\n\t\t\tthis.e._autoplay = window.setInterval(this.e._play, this.options.autoplayTimeout);\r\n\t\t} else {\r\n\t\t\twindow.clearInterval(this.e._autoplay);\r\n\t\t\tthis.state.autoplay = false;\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * play\r\n * @param [timeout] - Integrer\r\n * @param [speed] - Integrer\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.play = function (timeout, speed) {\r\n\r\n\t\t// if tab is inactive - doesnt work in = this.pos.max) {\r\n\t\t\twindow.clearInterval(this.e._autoplay);\r\n\t\t\tthis.goTo(0);\r\n\t\t} else {\r\n\t\t\tthis.next(this.options.autoplaySpeed);\r\n\t\t}\r\n\t\tthis.state.autoplay = true;\r\n\t};\r\n\r\n\t/**\r\n * stop\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.stop = function () {\r\n\t\tthis._options.autoplay = this.options.autoplay = false;\r\n\t\tthis.state.autoplay = false;\r\n\t\twindow.clearInterval(this.e._autoplay);\r\n\t};\r\n\r\n\tOwl.prototype.pause = function () {\r\n\t\twindow.clearInterval(this.e._autoplay);\r\n\t};\r\n\r\n\t/**\r\n * transitionEnd\r\n * @desc event used by css3 animation end and $.animate callback like transitionEnd,responsive etc.\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.transitionEnd = function (event) {\r\n\r\n\t\t// if css2 animation then event object is undefined\r\n\t\tif (event !== undefined) {\r\n\t\t\tevent.stopPropagation();\r\n\r\n\t\t\t// Catch only owl-stage transitionEnd event\r\n\t\t\tvar eventTarget = event.target || event.srcElement || event.originalTarget;\r\n\t\t\tif (eventTarget !== this.dom.stage) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.state.inMotion = false;\r\n\t\tthis.updateItemState();\r\n\t\tthis.autoplay();\r\n\t\tthis.fireCallback('onTransitionEnd');\r\n\t};\r\n\r\n\t/**\r\n * isElWidthChanged\r\n * @desc Check if element width has changed\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.isElWidthChanged = function () {\r\n\t\tvar newElWidth = this.dom.$el.width() - this.options.stagePadding,\r\n\t\t //to check\r\n\t\tprevElWidth = this.width.el + this.options.margin;\r\n\t\treturn newElWidth !== prevElWidth;\r\n\t};\r\n\r\n\t/**\r\n * windowWidth\r\n * @desc Get Window/responsiveBaseElement width\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.windowWidth = function () {\r\n\t\tif (this.options.responsiveBaseElement !== window) {\r\n\t\t\tthis.width.window = $(this.options.responsiveBaseElement).width();\r\n\t\t} else if (window.innerWidth) {\r\n\t\t\tthis.width.window = window.innerWidth;\r\n\t\t} else if (document.documentElement && document.documentElement.clientWidth) {\r\n\t\t\tthis.width.window = document.documentElement.clientWidth;\r\n\t\t}\r\n\t\treturn this.width.window;\r\n\t};\r\n\r\n\t/**\r\n * Controls\r\n * @desc Calls controls container, navigation and dots creator\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.controls = function () {\r\n\t\tvar cc = document.createElement('div');\r\n\t\tcc.className = this.options.controlsClass;\r\n\t\tthis.dom.$el.append(cc);\r\n\t\tthis.dom.$cc = $(cc);\r\n\t};\r\n\r\n\t/**\r\n * updateControls \r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateControls = function () {\r\n\r\n\t\tif (this.dom.$cc === null && (this.options.nav || this.options.dots)) {\r\n\t\t\tthis.controls();\r\n\t\t}\r\n\r\n\t\tif (this.dom.$nav === null && this.options.nav) {\r\n\t\t\tthis.createNavigation(this.dom.$cc[0]);\r\n\t\t}\r\n\r\n\t\tif (this.dom.$page === null && this.options.dots) {\r\n\t\t\tthis.createDots(this.dom.$cc[0]);\r\n\t\t}\r\n\r\n\t\tif (this.dom.$nav !== null) {\r\n\t\t\tif (this.options.nav) {\r\n\t\t\t\tthis.dom.$nav.show();\r\n\t\t\t\tthis.updateNavigation();\r\n\t\t\t} else {\r\n\t\t\t\tthis.dom.$nav.hide();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (this.dom.$page !== null) {\r\n\t\t\tif (this.options.dots) {\r\n\t\t\t\tthis.dom.$page.show();\r\n\t\t\t\tthis.updateDots();\r\n\t\t\t} else {\r\n\t\t\t\tthis.dom.$page.hide();\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * createNavigation\r\n * @since 2.0.0\r\n * @param [cc] - dom element - Controls Container\r\n */\r\n\r\n\tOwl.prototype.createNavigation = function (cc) {\r\n\r\n\t\t// Create nav container\r\n\t\tvar nav = document.createElement('div');\r\n\t\tnav.className = this.options.navContainerClass;\r\n\t\tcc.appendChild(nav);\r\n\r\n\t\t// Create left and right buttons\r\n\t\tvar navPrev = document.createElement('div'),\r\n\t\t navNext = document.createElement('div');\r\n\r\n\t\tnavPrev.className = this.options.navClass[0];\r\n\t\tnavNext.className = this.options.navClass[1];\r\n\r\n\t\tnav.appendChild(navPrev);\r\n\t\tnav.appendChild(navNext);\r\n\r\n\t\tthis.dom.$nav = $(nav);\r\n\t\tthis.dom.$navPrev = $(navPrev).html(this.options.navText[0]);\r\n\t\tthis.dom.$navNext = $(navNext).html(this.options.navText[1]);\r\n\r\n\t\t// add events to do\r\n\t\t//this.on(navPrev, this.dragType[2], this.e._navPrev, false);\r\n\t\t//this.on(navNext, this.dragType[2], this.e._navNext, false);\r\n\r\n\t\t//FF fix?\r\n\t\tthis.dom.$nav.on(this.dragType[2], '.' + this.options.navClass[0], this.e._navPrev);\r\n\t\tthis.dom.$nav.on(this.dragType[2], '.' + this.options.navClass[1], this.e._navNext);\r\n\t};\r\n\r\n\t/**\r\n * createNavigation\r\n * @since 2.0.0\r\n * @param [cc] - dom element - Controls Container\r\n */\r\n\r\n\tOwl.prototype.createDots = function (cc) {\r\n\r\n\t\t// Create dots container\r\n\t\tvar page = document.createElement('div');\r\n\t\tpage.className = this.options.dotsClass;\r\n\t\tcc.appendChild(page);\r\n\r\n\t\t// save reference\r\n\t\tthis.dom.$page = $(page);\r\n\r\n\t\t// add events\r\n\t\t//this.on(page, this.dragType[2], this.e._goToPage, false);\r\n\r\n\t\t// FF fix? To test!\r\n\t\tvar that = this;\r\n\t\tthis.dom.$page.on(this.dragType[2], '.' + this.options.dotClass, goToPage);\r\n\r\n\t\tfunction goToPage(e) {\r\n\t\t\te.preventDefault();\r\n\t\t\tvar page = $(this).data('page');\r\n\t\t\tthat.goTo(page, that.options.dotsSpeed);\r\n\t\t}\r\n\t\t// build dots\r\n\t\tthis.rebuildDots();\r\n\t};\r\n\r\n\t/**\r\n * goToPage\r\n * @desc Event used by dots\r\n * @since 2.0.0\r\n */\r\n\r\n\t// Owl.prototype.goToPage = function(e){\r\n\t// \tconsole.log(e.taget);\r\n\t// \tvar page = $(e.currentTarget).data('page')\r\n\t// \tthis.goTo(page,this.options.dotsSpeed);\r\n\t// \treturn false;\r\n\t// };\r\n\r\n\t/**\r\n * rebuildDots\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.rebuildDots = function () {\r\n\t\tif (this.dom.$page === null) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\tvar each,\r\n\t\t dot,\r\n\t\t span,\r\n\t\t counter = 0,\r\n\t\t last = 0,\r\n\t\t i,\r\n\t\t page = 0,\r\n\t\t roundPages = 0;\r\n\r\n\t\teach = this.options.dotsEach || this.options.items;\r\n\r\n\t\t// display full dots if center\r\n\t\tif (this.options.center || this.options.dotData) {\r\n\t\t\teach = 1;\r\n\t\t}\r\n\r\n\t\t// clear dots\r\n\t\tthis.dom.$page.html('');\r\n\r\n\t\tfor (i = 0; i < this.num.nav.length; i++) {\r\n\r\n\t\t\tif (counter >= each || counter === 0) {\r\n\r\n\t\t\t\tdot = document.createElement('div');\r\n\t\t\t\tdot.className = this.options.dotClass;\r\n\t\t\t\tspan = document.createElement('span');\r\n\t\t\t\tdot.appendChild(span);\r\n\t\t\t\tvar $dot = $(dot);\r\n\r\n\t\t\t\tif (this.options.dotData) {\r\n\t\t\t\t\t$dot.html(this.dom.$oItems.eq(i).data('owl-item').dot);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$dot.data('page', page);\r\n\t\t\t\t$dot.data('goToPage', roundPages);\r\n\r\n\t\t\t\tthis.dom.$page.append(dot);\r\n\r\n\t\t\t\tcounter = 0;\r\n\t\t\t\troundPages++;\r\n\t\t\t}\r\n\r\n\t\t\tthis.dom.$oItems.eq(i).data('owl-item').page = roundPages - 1;\r\n\r\n\t\t\t//add merged items\r\n\t\t\tcounter += this.num.nav[i];\r\n\t\t\tpage++;\r\n\t\t}\r\n\t\t// find rest of dots\r\n\t\tif (!this.options.loop && !this.options.center) {\r\n\t\t\tfor (var j = this.num.nav.length - 1; j >= 0; j--) {\r\n\t\t\t\tlast += this.num.nav[j];\r\n\t\t\t\tthis.dom.$oItems.eq(j).data('owl-item').page = roundPages - 1;\r\n\t\t\t\tif (last >= each) {\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.num.allPages = roundPages - 1;\r\n\t};\r\n\r\n\t/**\r\n * updateDots\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateDots = function () {\r\n\t\tvar dots = this.dom.$page.children();\r\n\t\tvar itemIndex = this.dom.$oItems.eq(this.pos.current).data('owl-item').page;\r\n\r\n\t\tfor (var i = 0; i < dots.length; i++) {\r\n\t\t\tvar dotPage = dots.eq(i).data('goToPage');\r\n\r\n\t\t\tif (dotPage === itemIndex) {\r\n\t\t\t\tthis.pos.currentPage = i;\r\n\t\t\t\tdots.eq(i).addClass('active');\r\n\t\t\t} else {\r\n\t\t\t\tdots.eq(i).removeClass('active');\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * updateNavigation\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.updateNavigation = function () {\r\n\r\n\t\tvar isNav = this.options.nav;\r\n\r\n\t\tthis.dom.$navNext.toggleClass('disabled', !isNav);\r\n\t\tthis.dom.$navPrev.toggleClass('disabled', !isNav);\r\n\r\n\t\tif (!this.options.loop && isNav && !this.options.navRewind) {\r\n\r\n\t\t\tif (this.pos.current <= 0) {\r\n\t\t\t\tthis.dom.$navPrev.addClass('disabled');\r\n\t\t\t}\r\n\t\t\tif (this.pos.current >= this.pos.max) {\r\n\t\t\t\tthis.dom.$navNext.addClass('disabled');\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tOwl.prototype.insertContent = function (content) {\r\n\t\tthis.dom.$stage.empty();\r\n\t\tthis.fetchContent(content);\r\n\t\tthis.refresh();\r\n\t};\r\n\r\n\t/**\r\n * addItem - Add an item\r\n * @since 2.0.0\r\n * @param [content] - dom element / string '
content
'\r\n * @param [pos] - number - position\r\n */\r\n\r\n\tOwl.prototype.addItem = function (content, pos) {\r\n\t\tpos = pos || 0;\r\n\r\n\t\tif (this.state.lazyContent) {\r\n\t\t\tthis.dom.$content = this.dom.$content.add($(content));\r\n\t\t\tthis.updateItemState(true);\r\n\t\t} else {\r\n\t\t\t// wrap content\r\n\t\t\tvar item = this.fillItem(content);\r\n\t\t\t// if carousel is empty then append item\r\n\t\t\tif (this.dom.$oItems.length === 0) {\r\n\t\t\t\tthis.dom.$stage.append(item);\r\n\t\t\t} else {\r\n\t\t\t\t// append item\r\n\t\t\t\tvar it = this.dom.$oItems.eq(pos);\r\n\t\t\t\tif (pos !== -1) {\r\n\t\t\t\t\tit.before(item);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tit.after(item);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\t// update and calculate carousel\r\n\t\t\tthis.refresh();\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * removeItem - Remove an Item\r\n * @since 2.0.0\r\n * @param [pos] - number - position\r\n */\r\n\r\n\tOwl.prototype.removeItem = function (pos) {\r\n\t\tif (this.state.lazyContent) {\r\n\t\t\tthis.dom.$content.splice(pos, 1);\r\n\t\t\tthis.updateItemState(true);\r\n\t\t} else {\r\n\t\t\tthis.dom.$oItems.eq(pos).remove();\r\n\t\t\tthis.refresh();\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * addCustomEvents\r\n * @desc Add custom events by jQuery .on method\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.addCustomEvents = function () {\r\n\r\n\t\tthis.e.next = (function (e, s) {\r\n\t\t\tthis.next(s);\r\n\t\t}).bind(this);\r\n\t\tthis.e.prev = (function (e, s) {\r\n\t\t\tthis.prev(s);\r\n\t\t}).bind(this);\r\n\t\tthis.e.goTo = (function (e, p, s) {\r\n\t\t\tthis.goTo(p, s);\r\n\t\t}).bind(this);\r\n\t\tthis.e.jumpTo = (function (e, p) {\r\n\t\t\tthis.jumpTo(p);\r\n\t\t}).bind(this);\r\n\t\tthis.e.addItem = (function (e, c, p) {\r\n\t\t\tthis.addItem(c, p);\r\n\t\t}).bind(this);\r\n\t\tthis.e.removeItem = (function (e, p) {\r\n\t\t\tthis.removeItem(p);\r\n\t\t}).bind(this);\r\n\t\tthis.e.refresh = (function (e) {\r\n\t\t\tthis.refresh();\r\n\t\t}).bind(this);\r\n\t\tthis.e.destroy = (function (e) {\r\n\t\t\tthis.destroy();\r\n\t\t}).bind(this);\r\n\t\tthis.e.autoHeight = (function (e) {\r\n\t\t\tthis.autoHeight(true);\r\n\t\t}).bind(this);\r\n\t\tthis.e.stop = (function () {\r\n\t\t\tthis.stop();\r\n\t\t}).bind(this);\r\n\t\tthis.e.play = (function (e, t, s) {\r\n\t\t\tthis.play(t, s);\r\n\t\t}).bind(this);\r\n\t\tthis.e.insertContent = (function (e, d) {\r\n\t\t\tthis.insertContent(d);\r\n\t\t}).bind(this);\r\n\r\n\t\tthis.dom.$el.on('next.owl', this.e.next);\r\n\t\tthis.dom.$el.on('prev.owl', this.e.prev);\r\n\t\tthis.dom.$el.on('goTo.owl', this.e.goTo);\r\n\t\tthis.dom.$el.on('jumpTo.owl', this.e.jumpTo);\r\n\t\tthis.dom.$el.on('addItem.owl', this.e.addItem);\r\n\t\tthis.dom.$el.on('removeItem.owl', this.e.removeItem);\r\n\t\tthis.dom.$el.on('destroy.owl', this.e.destroy);\r\n\t\tthis.dom.$el.on('refresh.owl', this.e.refresh);\r\n\t\tthis.dom.$el.on('autoHeight.owl', this.e.autoHeight);\r\n\t\tthis.dom.$el.on('play.owl', this.e.play);\r\n\t\tthis.dom.$el.on('stop.owl', this.e.stop);\r\n\t\tthis.dom.$el.on('stopVideo.owl', this.e.stop);\r\n\t\tthis.dom.$el.on('insertContent.owl', this.e.insertContent);\r\n\t};\r\n\r\n\t/**\r\n * on\r\n * @desc On method for adding internal events\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.on = function (element, event, listener, capture) {\r\n\r\n\t\tif (element.addEventListener) {\r\n\t\t\telement.addEventListener(event, listener, capture);\r\n\t\t} else if (element.attachEvent) {\r\n\t\t\telement.attachEvent('on' + event, listener);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * off\r\n * @desc Off method for removing internal events\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.off = function (element, event, listener, capture) {\r\n\t\tif (element.removeEventListener) {\r\n\t\t\telement.removeEventListener(event, listener, capture);\r\n\t\t} else if (element.detachEvent) {\r\n\t\t\telement.detachEvent('on' + event, listener);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * fireCallback\r\n * @since 2.0.0\r\n * @param event - string - event name\r\n * @param data - object - additional options - to do\r\n */\r\n\r\n\tOwl.prototype.fireCallback = function (event, data) {\r\n\t\tif (!this.options.callbacks) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (this.dom.el.dispatchEvent) {\r\n\r\n\t\t\t// dispatch event\r\n\t\t\tvar evt = document.createEvent('CustomEvent');\r\n\r\n\t\t\t//evt.initEvent(event, false, true );\r\n\t\t\tevt.initCustomEvent(event, true, true, data);\r\n\t\t\treturn this.dom.el.dispatchEvent(evt);\r\n\t\t} else if (!this.dom.el.dispatchEvent) {\r\n\r\n\t\t\t//\tThere is no clean solution for custom events name in <=IE8\r\n\t\t\t//\tBut if you know better way, please let me know :)\r\n\t\t\treturn this.dom.$el.trigger(event);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * watchVisibility\r\n * @desc check if el is visible - handy if Owl is inside hidden content (tabs etc.)\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.watchVisibility = function () {\r\n\r\n\t\t// test on zepto\r\n\t\tif (!isElVisible(this.dom.el)) {\r\n\t\t\tthis.dom.$el.addClass('owl-hidden');\r\n\t\t\twindow.clearInterval(this.e._checkVisibile);\r\n\t\t\tthis.e._checkVisibile = window.setInterval(checkVisible.bind(this), 500);\r\n\t\t}\r\n\r\n\t\tfunction isElVisible(el) {\r\n\t\t\treturn el.offsetWidth > 0 && el.offsetHeight > 0;\r\n\t\t}\r\n\r\n\t\tfunction checkVisible() {\r\n\t\t\tif (isElVisible(this.dom.el)) {\r\n\t\t\t\tthis.dom.$el.removeClass('owl-hidden');\r\n\t\t\t\tthis.refresh();\r\n\t\t\t\twindow.clearInterval(this.e._checkVisibile);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * onChange\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.onChange = function () {\r\n\r\n\t\tif (!this.state.isTouch && !this.state.bypass && !this.state.responsive) {\r\n\r\n\t\t\tif (this.options.nav || this.options.dots) {\r\n\t\t\t\tthis.updateControls();\r\n\t\t\t}\r\n\t\t\tthis.autoHeight();\r\n\r\n\t\t\tthis.fireCallback('onChangeState');\r\n\t\t}\r\n\r\n\t\tif (!this.state.isTouch && !this.state.bypass) {\r\n\t\t\t// set Status to do\r\n\t\t\tthis.storeInfo();\r\n\r\n\t\t\t// stopVideo\r\n\t\t\tif (this.state.videoPlay) {\r\n\t\t\t\tthis.stopVideo();\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * storeInfo\r\n * store basic information about current states\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.storeInfo = function () {\r\n\t\tvar currentPosition = this.state.lazyContent ? this.pos.lcCurrentAbs || 0 : this.pos.current;\r\n\t\tvar allItems = this.state.lazyContent ? this.dom.$content.length - 1 : this.num.oItems;\r\n\r\n\t\tthis.info = {\r\n\t\t\titems: this.options.items,\r\n\t\t\tallItems: allItems,\r\n\t\t\tcurrentPosition: currentPosition,\r\n\t\t\tcurrentPage: this.pos.currentPage,\r\n\t\t\tallPages: this.num.allPages,\r\n\t\t\tautoplay: this.state.autoplay,\r\n\t\t\twindowWidth: this.width.window,\r\n\t\t\telWidth: this.width.el,\r\n\t\t\tbreakpoint: this.num.breakpoint\r\n\t\t};\r\n\r\n\t\tif (typeof this.options.info === 'function') {\r\n\t\t\tthis.options.info.apply(this, [this.info, this.dom.el]);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * autoHeight\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.autoHeight = function (callback) {\r\n\t\tif (this.options.autoHeight !== true && callback !== true) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\t\tif (!this.dom.$oStage.hasClass(this.options.autoHeightClass)) {\r\n\t\t\tthis.dom.$oStage.addClass(this.options.autoHeightClass);\r\n\t\t}\r\n\r\n\t\tvar loaded = this.dom.$items.eq(this.pos.currentAbs);\r\n\t\tvar stage = this.dom.$oStage;\r\n\t\tvar iterations = 0;\r\n\r\n\t\tvar isLoaded = window.setInterval(function () {\r\n\t\t\titerations += 1;\r\n\t\t\tif (loaded.data('owl-item').loaded) {\r\n\t\t\t\tstage.height(loaded.height() + 'px');\r\n\t\t\t\tclearInterval(isLoaded);\r\n\t\t\t} else if (iterations === 500) {\r\n\t\t\t\tclearInterval(isLoaded);\r\n\t\t\t}\r\n\t\t}, 100);\r\n\t};\r\n\r\n\t/**\r\n * preloadAutoWidthImages\r\n * @desc still to test\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.preloadAutoWidthImages = function (imgs) {\r\n\t\tvar loaded = 0;\r\n\t\tvar that = this;\r\n\t\timgs.each(function (i, el) {\r\n\t\t\tvar $el = $(el);\r\n\t\t\tvar img = new Image();\r\n\r\n\t\t\timg.onload = function () {\r\n\t\t\t\tloaded++;\r\n\t\t\t\t$el.attr('src', img.src);\r\n\t\t\t\t$el.css('opacity', 1);\r\n\t\t\t\tif (loaded >= imgs.length) {\r\n\t\t\t\t\tthat.state.imagesLoaded = true;\r\n\t\t\t\t\tthat.init();\r\n\t\t\t\t}\r\n\t\t\t};\r\n\r\n\t\t\timg.src = $el.attr('src') || $el.attr('data-src') || $el.attr('data-src-retina');;\r\n\t\t});\r\n\t};\r\n\r\n\t/**\r\n * lazyLoad\r\n * @desc lazyLoad images\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.lazyLoad = function () {\r\n\t\tvar attr = isRetina() ? 'data-src-retina' : 'data-src';\r\n\t\tvar src, img, i;\r\n\r\n\t\tfor (i = 0; i < this.num.items; i++) {\r\n\t\t\tvar $item = this.dom.$items.eq(i);\r\n\r\n\t\t\tif ($item.data('owl-item').current === true && $item.data('owl-item').loaded === false) {\r\n\t\t\t\timg = $item.find('.owl-lazy');\r\n\t\t\t\tsrc = img.attr(attr);\r\n\t\t\t\tsrc = src || img.attr('data-src');\r\n\t\t\t\tif (src) {\r\n\t\t\t\t\timg.css('opacity', '0');\r\n\t\t\t\t\tthis.preload(img, $item);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * preload\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.preload = function (images, $item) {\r\n\t\tvar that = this; // fix this later\r\n\r\n\t\timages.each(function (i, el) {\r\n\t\t\tvar $el = $(el);\r\n\t\t\tvar img = new Image();\r\n\r\n\t\t\timg.onload = function () {\r\n\r\n\t\t\t\t$item.data('owl-item').loaded = true;\r\n\t\t\t\tif ($el.is('img')) {\r\n\t\t\t\t\t$el.attr('src', img.src);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$el.css('background-image', 'url(' + img.src + ')');\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$el.css('opacity', 1);\r\n\t\t\t\tthat.fireCallback('onLazyLoaded');\r\n\t\t\t};\r\n\t\t\timg.src = $el.attr('data-src') || $el.attr('data-src-retina');\r\n\t\t});\r\n\t};\r\n\r\n\t/**\r\n * animate\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.animate = function () {\r\n\r\n\t\tvar prevItem = this.dom.$items.eq(this.pos.prev),\r\n\t\t prevPos = Math.abs(prevItem.data('owl-item').width) * this.pos.prev,\r\n\t\t currentItem = this.dom.$items.eq(this.pos.currentAbs),\r\n\t\t currentPos = Math.abs(currentItem.data('owl-item').width) * this.pos.currentAbs;\r\n\r\n\t\tif (this.pos.currentAbs === this.pos.prev) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tvar pos = currentPos - prevPos;\r\n\t\tvar tIn = this.options.animateIn;\r\n\t\tvar tOut = this.options.animateOut;\r\n\t\tvar that = this;\r\n\r\n\t\tremoveStyles = function () {\r\n\t\t\t$(this).css({\r\n\t\t\t\t\"left\": \"\"\r\n\t\t\t}).removeClass('animated owl-animated-out owl-animated-in').removeClass(tIn).removeClass(tOut);\r\n\r\n\t\t\tthat.transitionEnd();\r\n\t\t};\r\n\r\n\t\tif (tOut) {\r\n\t\t\tprevItem.css({\r\n\t\t\t\t\"left\": pos + \"px\"\r\n\t\t\t}).addClass('animated owl-animated-out ' + tOut).one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', removeStyles);\r\n\t\t}\r\n\r\n\t\tif (tIn) {\r\n\t\t\tcurrentItem.addClass('animated owl-animated-in ' + tIn).one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', removeStyles);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * destroy\r\n * @desc Remove Owl structure and events :(\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.destroy = function () {\r\n\r\n\t\twindow.clearInterval(this.e._autoplay);\r\n\r\n\t\tif (this.dom.$el.hasClass(this.options.themeClass)) {\r\n\t\t\tthis.dom.$el.removeClass(this.options.themeClass);\r\n\t\t}\r\n\r\n\t\tif (this.options.responsive !== false) {\r\n\t\t\tthis.off(window, 'resize', this.e._resizer);\r\n\t\t}\r\n\r\n\t\tif (this.transitionEndVendor) {\r\n\t\t\tthis.off(this.dom.stage, this.transitionEndVendor, this.e._transitionEnd);\r\n\t\t}\r\n\r\n\t\tif (this.options.mouseDrag || this.options.touchDrag) {\r\n\t\t\tthis.off(this.dom.stage, this.dragType[0], this.e._onDragStart);\r\n\t\t\tif (this.options.mouseDrag) {\r\n\t\t\t\tthis.off(document, this.dragType[3], this.e._onDragStart);\r\n\t\t\t}\r\n\t\t\tif (this.options.mouseDrag) {\r\n\t\t\t\tthis.dom.$stage.off('dragstart', function () {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t});\r\n\t\t\t\tthis.dom.stage.onselectstart = function () {};\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (this.options.URLhashListener) {\r\n\t\t\tthis.off(window, 'hashchange', this.e._goToHash);\r\n\t\t}\r\n\r\n\t\tthis.dom.$el.off('next.owl', this.e.next);\r\n\t\tthis.dom.$el.off('prev.owl', this.e.prev);\r\n\t\tthis.dom.$el.off('goTo.owl', this.e.goTo);\r\n\t\tthis.dom.$el.off('jumpTo.owl', this.e.jumpTo);\r\n\t\tthis.dom.$el.off('addItem.owl', this.e.addItem);\r\n\t\tthis.dom.$el.off('removeItem.owl', this.e.removeItem);\r\n\t\tthis.dom.$el.off('refresh.owl', this.e.refresh);\r\n\t\tthis.dom.$el.off('autoHeight.owl', this.e.autoHeight);\r\n\t\tthis.dom.$el.off('play.owl', this.e.play);\r\n\t\tthis.dom.$el.off('stop.owl', this.e.stop);\r\n\t\tthis.dom.$el.off('stopVideo.owl', this.e.stop);\r\n\t\tthis.dom.$stage.off('click', this.e._playVideo);\r\n\r\n\t\tif (this.dom.$cc !== null) {\r\n\t\t\tthis.dom.$cc.remove();\r\n\t\t}\r\n\t\tif (this.dom.$cItems !== null) {\r\n\t\t\tthis.dom.$cItems.remove();\r\n\t\t}\r\n\t\tthis.e = null;\r\n\t\tthis.dom.$el.data('owlCarousel', null);\r\n\t\tdelete this.dom.el.owlCarousel;\r\n\r\n\t\tthis.dom.$stage.unwrap();\r\n\t\tthis.dom.$items.unwrap();\r\n\t\tthis.dom.$items.contents().unwrap();\r\n\t\tthis.dom = null;\r\n\t};\r\n\r\n\t/**\r\n * Opertators \r\n * @desc Used to calculate RTL\r\n * @param [a] - Number - left side\r\n * @param [o] - String - operator \r\n * @param [b] - Number - right side\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.op = function (a, o, b) {\r\n\t\tvar rtl = this.options.rtl;\r\n\t\tswitch (o) {\r\n\t\t\tcase '<':\r\n\t\t\t\treturn rtl ? a > b : a < b;\r\n\t\t\tcase '>':\r\n\t\t\t\treturn rtl ? a < b : a > b;\r\n\t\t\tcase '>=':\r\n\t\t\t\treturn rtl ? a <= b : a >= b;\r\n\t\t\tcase '<=':\r\n\t\t\t\treturn rtl ? a >= b : a <= b;\r\n\t\t\tdefault:\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n * Opertators \r\n * @desc Used to calculate RTL\r\n * @since 2.0.0\r\n */\r\n\r\n\tOwl.prototype.browserSupport = function () {\r\n\t\tthis.support3d = isPerspective();\r\n\r\n\t\tif (this.support3d) {\r\n\t\t\tthis.transformVendor = isTransform();\r\n\r\n\t\t\t// take transitionend event name by detecting transition\r\n\t\t\tvar endVendors = ['transitionend', 'webkitTransitionEnd', 'transitionend', 'oTransitionEnd'];\r\n\t\t\tthis.transitionEndVendor = endVendors[isTransition()];\r\n\r\n\t\t\t// take vendor name from transform name\r\n\t\t\tthis.vendorName = this.transformVendor.replace(/Transform/i, '');\r\n\t\t\tthis.vendorName = this.vendorName !== '' ? '-' + this.vendorName.toLowerCase() + '-' : '';\r\n\t\t}\r\n\r\n\t\tthis.state.orientation = window.orientation;\r\n\t};\r\n\r\n\t// Pivate methods\r\n\r\n\t// CSS detection;\r\n\tfunction isStyleSupported(array) {\r\n\t\tvar p,\r\n\t\t s,\r\n\t\t fake = document.createElement('div'),\r\n\t\t list = array;\r\n\t\tfor (p in list) {\r\n\t\t\ts = list[p];\r\n\t\t\tif (typeof fake.style[s] !== 'undefined') {\r\n\t\t\t\tfake = null;\r\n\t\t\t\treturn [s, p];\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn [false];\r\n\t}\r\n\r\n\tfunction isTransition() {\r\n\t\treturn isStyleSupported(['transition', 'WebkitTransition', 'MozTransition', 'OTransition'])[1];\r\n\t}\r\n\r\n\tfunction isTransform() {\r\n\t\treturn isStyleSupported(['transform', 'WebkitTransform', 'MozTransform', 'OTransform', 'msTransform'])[0];\r\n\t}\r\n\r\n\tfunction isPerspective() {\r\n\t\treturn isStyleSupported(['perspective', 'webkitPerspective', 'MozPerspective', 'OPerspective', 'MsPerspective'])[0];\r\n\t}\r\n\r\n\tfunction isTouchSupport() {\r\n\t\treturn 'ontouchstart' in window || !!navigator.msMaxTouchPoints;\r\n\t}\r\n\r\n\tfunction isTouchSupportIE() {\r\n\t\treturn window.navigator.msPointerEnabled;\r\n\t}\r\n\r\n\tfunction isRetina() {\r\n\t\treturn window.devicePixelRatio > 1;\r\n\t}\r\n\r\n\t$.fn.owlCarousel = function (options) {\r\n\t\treturn this.each(function () {\r\n\t\t\tif (!$(this).data('owlCarousel')) {\r\n\t\t\t\t$(this).data('owlCarousel', new Owl(this, options));\r\n\t\t\t}\r\n\t\t});\r\n\t};\r\n})(window.Zepto || window.jQuery, window, document);\r\n\r\n//https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind\r\n//The bind() method creates a new function that, when called, has its this keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.\r\n\r\nif (!Function.prototype.bind) {\r\n\tFunction.prototype.bind = function (oThis) {\r\n\t\tif (typeof this !== 'function') {\r\n\t\t\t// closest thing possible to the ECMAScript 5 internal IsCallable function\r\n\t\t\tthrow new TypeError('Function.prototype.bind - what is trying to be bound is not callable');\r\n\t\t}\r\n\r\n\t\tvar aArgs = Array.prototype.slice.call(arguments, 1),\r\n\t\t fToBind = this,\r\n\t\t fNOP = function fNOP() {},\r\n\t\t fBound = function fBound() {\r\n\t\t\treturn fToBind.apply(this instanceof fNOP && oThis ? this : oThis, aArgs.concat(Array.prototype.slice.call(arguments)));\r\n\t\t};\r\n\t\tfNOP.prototype = this.prototype;\r\n\t\tfBound.prototype = new fNOP();\r\n\t\treturn fBound;\r\n\t};\r\n}\r\n\r\n},{}]},{},[1])\r\n","// Zepto.js\r\n// (c) 2010-2014 Thomas Fuchs\r\n// Zepto.js may be freely distributed under the MIT license.\r\n\r\n// The following code is heavily inspired by jQuery's $.fn.data()\r\n\r\n;(function($){\r\n var data = {}, dataAttr = $.fn.data, camelize = $.camelCase,\r\n exp = $.expando = 'Zepto' + (+new Date()), emptyArray = []\r\n\r\n // Get value from node:\r\n // 1. first try key as given,\r\n // 2. then try camelized key,\r\n // 3. fall back to reading \"data-*\" attribute.\r\n function getData(node, name) {\r\n var id = node[exp], store = id && data[id]\r\n if (name === undefined) return store || setData(node)\r\n else {\r\n if (store) {\r\n if (name in store) return store[name]\r\n var camelName = camelize(name)\r\n if (camelName in store) return store[camelName]\r\n }\r\n return dataAttr.call($(node), name)\r\n }\r\n }\r\n\r\n // Store value under camelized key on node\r\n function setData(node, name, value) {\r\n var id = node[exp] || (node[exp] = ++$.uuid),\r\n store = data[id] || (data[id] = attributeData(node))\r\n if (name !== undefined) store[camelize(name)] = value\r\n return store\r\n }\r\n\r\n // Read all \"data-*\" attributes from a node\r\n function attributeData(node) {\r\n var store = {}\r\n $.each(node.attributes || emptyArray, function(i, attr){\r\n if (attr.name.indexOf('data-') == 0)\r\n store[camelize(attr.name.replace('data-', ''))] =\r\n $.zepto.deserializeValue(attr.value)\r\n })\r\n return store\r\n }\r\n\r\n $.fn.data = function(name, value) {\r\n return value === undefined ?\r\n // set multiple values via object\r\n $.isPlainObject(name) ?\r\n this.each(function(i, node){\r\n $.each(name, function(key, value){ setData(node, key, value) })\r\n }) :\r\n // get value from first element\r\n this.length == 0 ? undefined : getData(this[0], name) :\r\n // set value on all elements\r\n this.each(function(){ setData(this, name, value) })\r\n }\r\n\r\n $.fn.removeData = function(names) {\r\n if (typeof names == 'string') names = names.split(/\\s+/)\r\n return this.each(function(){\r\n var id = this[exp], store = id && data[id]\r\n if (store) $.each(names || store, function(key){\r\n delete store[names ? camelize(this) : key]\r\n })\r\n })\r\n }\r\n\r\n // Generate extended `remove` and `empty` functions\r\n ;['remove', 'empty'].forEach(function(methodName){\r\n var origFn = $.fn[methodName]\r\n $.fn[methodName] = function() {\r\n var elements = this.find('*')\r\n if (methodName === 'remove') elements = elements.add(this)\r\n elements.removeData()\r\n return origFn.call(this)\r\n }\r\n })\r\n})(Zepto)","$(document).ready(function() {\r\n if($('.merge-acquistion').length > 0) {\r\n \tvar FirstChartType = $('#chartdiv-deals').attr('data-type'),\r\n \t\tFirstChartColor = $('#chartdiv-deals').attr('data-color'),\r\n \t\tSecondChartType = $('#chartdiv-region').attr('data-type'),\r\n \t\tSecondChartColor = $('#chartdiv-region').attr('data-color'),\r\n \t\tThirdChartType = $('#chartdiv-region2').attr('data-type'),\r\n \t\tThirdChartColor = $('#chartdiv-region2').attr('data-color'),\r\n \t\tFourthChartType = $('#chartdiv-type').attr('data-type'),\r\n \t\tFourthChartColor = $('#chartdiv-type').attr('data-color');\r\n AmCharts.ready(function() {\r\n var chart = new AmCharts.AmSerialChart();\r\n chart.dataProvider = generateChartDataSizeRange();\r\n chart.categoryField = \"range\";\r\n var valueAxis1 = new AmCharts.ValueAxis();\r\n valueAxis1.integersOnly = true;\r\n chart.addValueAxis(valueAxis1);\r\n var graph = new AmCharts.AmGraph();\r\n graph.valueField = \"count\";\r\n graph.type = FirstChartType;\r\n graph.fillAlphas = 0.7;FourthChartType\r\n graph.lineAlpha = 0.5;\r\n graph.balloonText = \"[[title]]: [[count]]\";\r\n graph.balloonColor = '#'+FirstChartColor;\r\n graph.fillColors = '#'+FirstChartColor;\r\n graph.lineColor = '#'+FirstChartColor;\r\n chart.addGraph(graph);\r\n chart.write('chartdiv-deals');\r\n var chart2 = new AmCharts.AmSerialChart();\r\n chart2.dataProvider = generateChartDataDealsByRegion();\r\n chart2.categoryField = \"region\";\r\n var valueAxis2 = new AmCharts.ValueAxis();\r\n valueAxis2.integersOnly = true;\r\n chart2.addValueAxis(valueAxis2);\r\n var graph2 = new AmCharts.AmGraph();\r\n graph2.valueField = \"tally\";\r\n graph2.type = SecondChartType;\r\n graph2.fillAlphas = 0.7;\r\n graph2.lineAlpha = 0.5;\r\n graph2.balloonText = \"[[title]]: [[value]]\";\r\n graph2.balloonColor = '#'+SecondChartColor;\r\n graph2.fillColors = '#'+SecondChartColor;\r\n graph2.lineColor = '#'+SecondChartColor;\r\n chart2.categoryAxis.labelRotation = 40;\r\n chart2.categoryAxis.autoGridCount = false;\r\n chart2.addGraph(graph2);\r\n chart2.write('chartdiv-region');\r\n var chart3 = new AmCharts.AmSerialChart();\r\n chart3.dataProvider = generateChartDataByRegion();\r\n chart3.categoryField = \"region\";\r\n var valueAxis3 = new AmCharts.ValueAxis();\r\n valueAxis3.integersOnly = true;\r\n chart3.addValueAxis(valueAxis3);\r\n var graph3 = new AmCharts.AmGraph();\r\n graph3.valueField = \"count\";\r\n graph3.type = ThirdChartType;\r\n graph3.fillAlphas = 0.7;\r\n graph3.lineAlpha = 0.5;\r\n graph3.balloonText = \"[[title]]: [[value]]\";\r\n graph3.balloonColor = '#'+ThirdChartColor;\r\n graph3.fillColors = '#'+ThirdChartColor;\r\n graph3.lineColor = '#'+ThirdChartColor;\r\n chart3.categoryAxis.labelRotation = 40;\r\n chart3.categoryAxis.autoGridCount = false;\r\n chart3.addGraph(graph3);\r\n chart3.write('chartdiv-region2');\r\n var chart4 = new AmCharts.AmSerialChart();\r\n chart4.dataProvider = generateChartData();\r\n chart4.validateData();\r\n chart4.categoryField = \"type\";\r\n var valueAxis4 = new AmCharts.ValueAxis();\r\n valueAxis4.integersOnly = true;\r\n chart4.addValueAxis(valueAxis4);\r\n var graph4 = new AmCharts.AmGraph();\r\n graph4.valueField = \"count\";\r\n graph4.type = FourthChartType;\r\n graph4.fillAlphas = 0.7;\r\n graph4.lineAlpha = 0.5;\r\n graph4.balloonText = \"[[title]]: [[value]]\";\r\n graph4.balloonColor = '#'+FourthChartColor;\r\n graph4.fillColors = '#'+FourthChartColor;\r\n graph4.lineColor = '#'+FourthChartColor;\r\n chart4.addGraph(graph4);\r\n chart4.write('chartdiv-type');\r\n var inputSet = $(\".merge-acquistion th input, .merge-form-items input\");\r\n inputSet.each(function() {\r\n \tif(!$(this).hasClass('range-field')) {\r\n \t $(this).keyup(function() {\r\n \t chart.dataProvider = generateChartDataSizeRange();\r\n \t chart.validateData();\r\n \t chart2.dataProvider = generateChartDataDealsByRegion();\r\n \t chart2.validateData();\r\n \t chart3.dataProvider = generateChartDataByRegion();\r\n \t chart3.validateData();\r\n \t chart4.dataProvider = generateChartData();\r\n \t chart4.validateData();\r\n \t });\r\n \t }\r\n });\r\n // $(\"#filterDropDown\").change(function() {\r\n // chart.dataProvider = generateChartDataSizeRange();\r\n // chart.validateData();\r\n // chart2.dataProvider = generateChartDataDealsByRegion();\r\n // chart2.validateData();\r\n // chart3.dataProvider = generateChartDataByRegion();\r\n // chart3.validateData();\r\n // chart4.dataProvider = generateChartData();\r\n // chart4.validateData();\r\n // });\r\n $(\".range-field.start\").keyup(function() {\r\n chart.dataProvider = generateChartDataSizeRange();\r\n chart.validateData();\r\n chart2.dataProvider = generateChartDataDealsByRegion();\r\n chart2.validateData();\r\n chart3.dataProvider = generateChartDataByRegion();\r\n chart3.validateData();\r\n chart4.dataProvider = generateChartData();\r\n chart4.validateData();\r\n });\r\n $(\".range-field.end\").keyup(function() {\r\n chart.dataProvider = generateChartDataSizeRange();\r\n chart.validateData();\r\n chart2.dataProvider = generateChartDataDealsByRegion();\r\n chart2.validateData();\r\n chart3.dataProvider = generateChartDataByRegion();\r\n chart3.validateData();\r\n chart4.dataProvider = generateChartData();\r\n chart4.validateData();\r\n });\r\n $(\".show-largest-btn\").click(function() {\r\n setTimeout(function () {\r\n chart.dataProvider = generateChartDataSizeRange();\r\n chart.validateData();\r\n chart2.dataProvider = generateChartDataDealsByRegion();\r\n chart2.validateData();\r\n chart3.dataProvider = generateChartDataByRegion();\r\n chart3.validateData();\r\n chart4.dataProvider = generateChartData();\r\n chart4.validateData();\r\n }, 1000);\r\n });\r\n var defaultRegions = [\"Africa\", \"Asia-Pacific\", \"Bermuda\", \"Europe\", \"Global\", \"Latin America\", \"London/UK\", \"North America\"];\r\n var defaultTypes = [\"non-life\", \"life\", \"international/reinsurance\", \"composite\"];\r\n\r\n function generateChartDataSizeRange() {\r\n var chartDataType = [];\r\n var price = [];\r\n var i;\r\n $(\".merge-acquistion td[deal='Price']\").each(function() {\r\n var tempPrice = $(this).text();\r\n price.push(tempPrice);\r\n });\r\n var range = {\r\n 100: 0,\r\n 250: 0,\r\n 1000: 0\r\n };\r\n for (i = 0; i < price.length; i++) {\r\n if (price[i] >= 100 && price[i] < 250) {\r\n range[100] = range[100] + 1;\r\n } else if (price[i] >= 250 && price[i] < 1000) {\r\n range[250] = range[250] + 1;\r\n } else if (price[i] >= 1000) {\r\n range[1000] = range[1000] + 1;\r\n }\r\n }\r\n var rangeAsArray = [];\r\n var rangeCountAsArray = [];\r\n for (var key in range) {\r\n rangeAsArray.push(key);\r\n rangeCountAsArray.push(range[key]);\r\n }\r\n for (i = 0; i < rangeAsArray.length; i++) {\r\n rangeAsArray[i] = rangeAsArray[i] + \"+\";\r\n var obj = {\r\n range: rangeAsArray[i],\r\n count: rangeCountAsArray[i],\r\n title: rangeAsArray[i]\r\n };\r\n chartDataType.push(obj);\r\n }\r\n return chartDataType;\r\n }\r\n\r\n function generateChartDataDealsByRegion() {\r\n var chartDataType = [];\r\n var regions = [];\r\n $(\".merge-acquistion td[deal='TargetLocation']\").each(function() {\r\n var tempRegion = $(this).text();\r\n regions.push(tempRegion);\r\n });\r\n var price = [];\r\n $(\".merge-acquistion td[deal='Price']\").each(function() {\r\n var tempPrice = $(this).text();\r\n price.push(tempPrice);\r\n });\r\n var regionWithTotalPrice = {};\r\n var regionName = {};\r\n for (i = 0; i < regions.length; ++i) {\r\n regionWithTotalPrice[regions[i]] = 0;\r\n regionName[regions[i]] = regions[i];\r\n }\r\n for (i = 0; i < regions.length; ++i) {\r\n if (price[i] !== \"-\" && price[i] >= 100) {\r\n regionWithTotalPrice[regions[i]] = regionWithTotalPrice[regions[i]] + parseFloat(price[i]);\r\n }\r\n }\r\n var regionNameAsArray = [];\r\n for (var key in regionName) {\r\n if (regionName.hasOwnProperty(key)) {\r\n regionNameAsArray.push(regionName[key]);\r\n }\r\n }\r\n regionNameAsArray.sort();\r\n var isNull = false;\r\n isNull = jQuery.isEmptyObject(price);\r\n if (!isNull) {\r\n for (var i = 0; i < regionNameAsArray.length; i++) {\r\n if (regionWithTotalPrice[regionNameAsArray[i]] !== 0) {\r\n var abbrRegionNameAsArray = abbreviate(regionNameAsArray[i]);\r\n var obj = {\r\n region: abbrRegionNameAsArray,\r\n tally: regionWithTotalPrice[regionNameAsArray[i]],\r\n title: regionNameAsArray[i]\r\n };\r\n chartDataType.push(obj);\r\n }\r\n }\r\n } else {\r\n if(defaultRegions !== undefined) {\r\n for (i = 0; i < defaultRegions.length; i++) {\r\n var abbrRegionNameAsArray1 = abbreviate(defaultRegions[i]);\r\n var obj1= {\r\n region: abbrRegionNameAsArray1,\r\n tally: 0,\r\n title: defaultRegions[i]\r\n };\r\n chartDataType.push(obj1);\r\n }\r\n }\r\n }\r\n if (chartDataType.length === 0) {\r\n if(defaultRegions !== undefined) {\r\n for (i = 0; i < defaultRegions.length; i++) {\r\n var abbrRegionNameAsArray2 = abbreviate(defaultRegions[i]);\r\n var obj2 = {\r\n region: abbrRegionNameAsArray2,\r\n tally: 0,\r\n title: defaultRegions[i]\r\n };\r\n chartDataType.push(obj2);\r\n }\r\n }\r\n }\r\n return chartDataType;\r\n }\r\n\r\n function generateChartDataByRegion() {\r\n var chartDataType = [];\r\n var regions = [];\r\n $(\".merge-acquistion td[deal='TargetLocation']\").each(function() {\r\n var tempRegion = $(this).text();\r\n regions.push(tempRegion);\r\n });\r\n var price = [];\r\n $(\".merge-acquistion td[deal='Price']\").each(function() {\r\n var tempPrice = $(this).text();\r\n price.push(tempPrice);\r\n });\r\n var regionOver100m = [];\r\n for (var i = 0; i < regions.length; i++) {\r\n if (price[i] !== \"-\" && price[i] >= 100) {\r\n regionOver100m.push(regions[i]);\r\n }\r\n }\r\n var uniqueRegions = new stringSet();\r\n if (regionOver100m.length !== 0) {\r\n for (i = 0; i < regionOver100m.length; i++) {\r\n uniqueRegions.add(regionOver100m[i]);\r\n }\r\n }\r\n var orderedValueRegions = uniqueRegions.values();\r\n orderedValueRegions.sort();\r\n var cR = uniqueRegions.count();\r\n var isNull = false;\r\n isNull = jQuery.isEmptyObject(uniqueRegions.count());\r\n if (!isNull) {\r\n for (i = 0; i < orderedValueRegions.length; i++) {\r\n var abbrUniqueValueType = abbreviate(orderedValueRegions[i]);\r\n var obj = {\r\n region: abbrUniqueValueType,\r\n count: cR[orderedValueRegions[i]],\r\n title: orderedValueRegions[i]\r\n };\r\n chartDataType.push(obj);\r\n }\r\n } else {\r\n if(defaultRegions !== undefined) {\r\n for (i = 0; i < defaultRegions.length; i++) {\r\n var abbrRegionNameAsArray = abbreviate(defaultRegions[i]);\r\n var obj1 = {\r\n region: abbrRegionNameAsArray,\r\n count: 0,\r\n title: defaultRegions[i]\r\n };\r\n chartDataType.push(obj1);\r\n }\r\n }\r\n }\r\n return chartDataType;\r\n }\r\n\r\n function generateChartData() {\r\n var chartDataType = [];\r\n var types = [];\r\n $(\".merge-acquistion td[deal='TargetSector']\").each(function() {\r\n var tempType = $(this).text();\r\n types.push(tempType);\r\n });\r\n var price = [];\r\n $(\".merge-acquistion td[deal='Price']\").each(function() {\r\n var tempPrice = $(this).text();\r\n price.push(tempPrice);\r\n });\r\n var typesOver100m = [];\r\n for (var i = 0; i < types.length; i++) {\r\n if (price[i] !== \"-\" && price[i] >= 100) {\r\n typesOver100m.push(types[i]);\r\n }\r\n }\r\n var uniqueTypes = new stringSet();\r\n if (typesOver100m.length !== 0) {\r\n for (i = 0; i < typesOver100m.length; i++) {\r\n uniqueTypes.add(typesOver100m[i]);\r\n }\r\n }\r\n var uniqueValueTypes = uniqueTypes.values();\r\n uniqueValueTypes.sort();\r\n uniqueValueTypes.reverse();\r\n var cT = uniqueTypes.count();\r\n var isNull = false;\r\n isNull = jQuery.isEmptyObject(uniqueTypes.count());\r\n if (!isNull) {\r\n for (i = 0; i < uniqueValueTypes.length; i++) {\r\n var abbrUniqueValueType = abbreviate(uniqueValueTypes[i]);\r\n var obj = {\r\n type: abbrUniqueValueType,\r\n count: cT[uniqueValueTypes[i]],\r\n title: uniqueValueTypes[i]\r\n };\r\n chartDataType.push(obj);\r\n }\r\n } else {\r\n if(defaultTypes !== undefined) {\r\n for (i = 0; i < defaultTypes.length; i++) {\r\n var abbrTypeNameAsArray = abbreviate(defaultTypes[i]);\r\n var obj1 = {\r\n type: abbrTypeNameAsArray,\r\n count: 0,\r\n title: defaultTypes[i]\r\n };\r\n chartDataType.push(obj1);\r\n }\r\n }\r\n }\r\n return chartDataType;\r\n }\r\n\r\n function abbreviate(str) {\r\n if (str === \"international/reinsurance\") {\r\n str = \"int/re\"\r\n }\r\n if (str === \"composite\") {\r\n str = \"com\"\r\n }\r\n if (str === \"Africa\") {\r\n str = \"AF\"\r\n }\r\n if (str === \"Asia-Pacific\") {\r\n str = \"APAC\"\r\n }\r\n if (str === \"Bermuda\") {\r\n str = \"BM\"\r\n }\r\n if (str === \"Europe\") {\r\n str = \"EU\"\r\n }\r\n if (str === \"Global\") {\r\n str = \"G\"\r\n }\r\n if (str === \"Latin America\") {\r\n str = \"LA\"\r\n }\r\n if (str === \"London/UK\") {\r\n str = \"UK\"\r\n }\r\n if (str === \"North America\") {\r\n str = \"NA\"\r\n }\r\n return str;\r\n }\r\n\r\n function stringSet() {\r\n var setObj = {},\r\n val = {};\r\n var objectCount = {};\r\n this.add = function(str) {\r\n setObj[str] = val;\r\n if (objectCount[str] == null || objectCount[str] === {}) {\r\n objectCount[str] = 1;\r\n } else {\r\n var count = objectCount[str];\r\n objectCount[str] = count + 1;\r\n }\r\n };\r\n this.count = function() {\r\n return objectCount;\r\n }\r\n this.contains = function(str) {\r\n return setObj[str] == val;\r\n };\r\n this.remove = function(str) {\r\n delete setObj[str];\r\n };\r\n this.values = function() {\r\n var values = [];\r\n for (var i in setObj) {\r\n if (setObj[i] == val) {\r\n values.push(i);\r\n }\r\n }\r\n return values;\r\n };\r\n }\r\n });\r\n }\r\n});","(function () {\r\n\t'use strict';\r\n function AccordianTable (elemId) {\r\n var that = this;\r\n \r\n // bind main element to this object\r\n this.accElem = $('#' + elemId);\r\n if (this.accElem.length === 0) {\r\n console.log('bound accordian element not found')\r\n return;\r\n }\r\n\r\n // set props for dependent elements\r\n this.parentForm = this.accElem.closest('form');\r\n this.accExpander = this.accElem.find('.js-accordian-expander');\r\n this.multicheckBtn = this.accExpander.find('.account-email-multicheck');\r\n this.accBody = this.accElem.find('.js-accordian-body');\r\n this.checks = this.accBody.find('input[type=checkbox]');\r\n \r\n // methods\r\n this.trackInitialChecks = function() {\r\n that.checks.each(function () {\r\n $(this).attr('data-was-checked', this.checked);\r\n });\r\n }\r\n\r\n this.haveChecksChanged = function() {\r\n var haveChanged = false;\r\n that.checks.each(function () {\r\n if ($(this).attr('data-was-checked') !== this.checked.toString()) {\r\n haveChanged = true;\r\n return false;\r\n }\r\n });\r\n return haveChanged;\r\n }\r\n\r\n this.triggerAllChangedCheck = function () {\r\n that.parentForm.trigger('allchangedcheck');\r\n }\r\n\r\n this.initClickListeners = function () {\r\n that.multicheckBtn.on('click', function (e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n \r\n // check / uncheck all checks\r\n that.toggleChecks();\r\n\r\n that.triggerAllChangedCheck();\r\n that.updateMulticheckBtnState();\r\n });\r\n\r\n that.checks.on('change', function () {\r\n that.triggerAllChangedCheck();\r\n that.updateMulticheckBtnState();\r\n });\r\n\r\n // toggle class to expand/collapse\r\n that.accExpander.on('click', function () {\r\n that.toggle();\r\n });\r\n }\r\n\r\n this.toggleChecks = function () {\r\n var isAllSelected = that.getIsAllSelected();\r\n that.checks.each(function () { this.checked = !isAllSelected });\r\n }\r\n\r\n this.updateMulticheckBtnState = function () {\r\n if (that.getIsAllSelected()) {\r\n that.multicheckBtn.children('.select-all').hide();\r\n that.multicheckBtn.children('.unselect-all').show();\r\n } else {\r\n that.multicheckBtn.children('.select-all').show();\r\n that.multicheckBtn.children('.unselect-all').hide();\r\n }\r\n }\r\n\r\n this.getIsAllSelected = function() {\r\n var isAllSelected = true;\r\n that.checks.each(function () {\r\n // if one isnt selected return false\r\n if (!this.checked) {\r\n isAllSelected = false;\r\n return false;\r\n }\r\n });\r\n return isAllSelected\r\n }\r\n\r\n this.setBodyHeight = function () {\r\n that.accElem.removeClass('ready');\r\n that.accBody.css('height', 'auto');\r\n that.accBody.css('height', that.accBody.height());\r\n that.accElem.addClass('ready');\r\n }\r\n\r\n this.toggle = function () {\r\n that.accElem.toggleClass('expanded');\r\n }\r\n\r\n // setup\r\n $(window).on('load', function () {\r\n that.initClickListeners();\r\n that.setBodyHeight();\r\n that.accElem.addClass('ready');\r\n });\r\n $(window).on('resize', function () {\r\n that.setBodyHeight();\r\n });\r\n this.updateMulticheckBtnState();\r\n this.trackInitialChecks();\r\n }\r\n\r\n var $accordians = $('.js-accordian'),\r\n $form,\r\n $submit,\r\n $notChangedModalOverlay = $('.modal-overlay'),\r\n $notChangedModalView = $('.modal-view'),\r\n setupNotChangedModal,\r\n showNotChangedModal,\r\n hideNotChangedModal,\r\n preventClicks;\r\n\r\n if ($accordians.length === 0) return;\r\n\r\n // define vars\r\n $form = $accordians.eq(0).closest('form');\r\n $submit = $form.find('button[type=submit]');\r\n\r\n // setup not changed modal\r\n setupNotChangedModal = function () {\r\n // click event for modal cross (X)\r\n $notChangedModalView.find('.close-modal').off('click').on('click', function () {\r\n hideNotChangedModal();\r\n });\r\n // click event for \"do not save\" (just nav away)\r\n $notChangedModalView.find('.cancel-modal').off('click').on('click', function (e) {\r\n window.location.href = $notChangedModalView.data('clickedurl');\r\n });\r\n // click event for \"confirm save\" (then navigate away)\r\n $notChangedModalView.find('.saveview').off('click').on('click', function () {\r\n $form.data('on-success', $notChangedModalView.data('clickedurl'));\r\n $submit.trigger('click');\r\n // removed the click blocker so if there's an error, the user isn't blocked but still see the feedback\r\n hideNotChangedModal();\r\n });\r\n }\r\n\r\n showNotChangedModal = function () {\r\n $notChangedModalOverlay.addClass('in');\r\n $notChangedModalView.show();\r\n }\r\n\r\n hideNotChangedModal = function () {\r\n $notChangedModalOverlay.removeClass('in');\r\n $notChangedModalView.hide();\r\n }\r\n\r\n // assign modal show to all anchors\r\n preventClicks = function (areChangesNotSaved) {\r\n if (areChangesNotSaved) {\r\n $('a').on('click.notchangedmodal', function (e) {\r\n e.preventDefault();\r\n // save url for reference after modal interaction\r\n $notChangedModalView.data('clickedurl', $(this).attr('href'));\r\n showNotChangedModal();\r\n });\r\n } else {\r\n $('a').off('click.notchangedmodal');\r\n }\r\n }\r\n\r\n // only enable submit if non of the accordion tables have changed\r\n $form.on('allchangedcheck', function () {\r\n var areAnyChecksChanged = false;\r\n // check each accordian\r\n $accordians.each(function () {\r\n var $accordian = $(this);\r\n if ($accordian.data('accobj').haveChecksChanged()) {\r\n areAnyChecksChanged = true;\r\n return false;\r\n }\r\n });\r\n // if any have changed enable sumbit btn\r\n if (areAnyChecksChanged) {\r\n $submit.removeAttr('disabled');\r\n } else {\r\n $submit.attr('disabled', 'disabled');\r\n }\r\n // enable not changed modal, preventing click away\r\n preventClicks(areAnyChecksChanged);\r\n });\r\n\r\n $submit.off('click.accordiantable').on('click.accordiantable', function () {\r\n preventClicks(false);\r\n $('.js-accordian').each(function () {\r\n var accobj = $(this).data('accobj');\r\n accobj.trackInitialChecks();\r\n })\r\n $form.trigger('allchangedcheck');\r\n })\r\n \r\n // init accordions\r\n $accordians.each(function (ind) {\r\n var $accordian = $(this),\r\n uniqueId = 'accordianTable' + (ind + 1);\r\n $accordian.attr('id', uniqueId);\r\n $accordian.data('accobj', new AccordianTable(uniqueId));\r\n });\r\n setupNotChangedModal();\r\n})();","$(function() {\r\n\tif($('#compareChartVal') && $('#compareChartVal').val() === \"true\"){\r\n\t\tvar GWPGraph = false;\r\n\t\t$(\"#GWP\").on('click', function() {\r\n\t\t\tvar $this = $(this), eachChartData = $this.closest('.eachChartData'), chartData = eachChartData.find('.chartData'), arrow = eachChartData.find('.chartexpand');\r\n\t\t\tif (chartData.is(':visible')) {\r\n\t\t\t\t$this.removeClass('act');\r\n\t\t\t\t$this.find('.title').removeClass('act');\r\n\t\t\t\tchartData.addClass('hide');\r\n\t\t\t\tarrow.removeClass('active');\r\n\t\t\t} else {\r\n\t\t\t\t$this.addClass('act');\r\n\t\t\t\t$this.find('.title').addClass('act');\r\n\t\t\t\tchartData.removeClass('hide');\r\n\t\t\t\tarrow.addClass('active');\r\n\t\t\t}\r\n\t\t\tif (GWPGraph === false) {\r\n\t\t\t\tGWPcreateStockChart();\r\n\t\t\t\tGWPGraph = true;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tvar NWPGraph = false;\r\n\t\t$(\"#NWP\").on('click', function () {\r\n\t\t\tvar $this = $(this), eachChartData = $this.closest('.eachChartData'), chartData = eachChartData.find('.chartData'), arrow = eachChartData.find('.chartexpand');\r\n\t\t\tif (chartData.is(':visible')) {\r\n\t\t\t\t$this.removeClass('act');\r\n\t\t\t\t$this.find('.title').removeClass('act');\r\n\t\t\t\tchartData.addClass('hide');\r\n\t\t\t\tarrow.removeClass('active');\r\n\t\t\t} else {\r\n\t\t\t\t$this.addClass('act');\r\n\t\t\t\t$this.find('.title').addClass('act');\r\n\t\t\t\tchartData.removeClass('hide');\r\n\t\t\t\tarrow.addClass('active');\r\n\t\t\t}\r\n\t\t\tif (NWPGraph === false) {\r\n\t\t\t\tNWPcreateStockChart();\r\n\t\t\t\tNWPGraph = true;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tvar URGraph = false;\r\n\t\t$(\"#UR\").on('click', function () {\r\n\t\t\tvar $this = $(this), eachChartData = $this.closest('.eachChartData'), chartData = eachChartData.find('.chartData'), arrow = eachChartData.find('.chartexpand');\r\n\t\t\tif (chartData.is(':visible')) {\r\n\t\t\t\t$this.removeClass('act');\r\n\t\t\t\t$this.find('.title').removeClass('act');\r\n\t\t\t\tchartData.addClass('hide');\r\n\t\t\t\tarrow.removeClass('active');\r\n\t\t\t} else {\r\n\t\t\t\t$this.addClass('act');\r\n\t\t\t\t$this.find('.title').addClass('act');\r\n\t\t\t\tchartData.removeClass('hide');\r\n\t\t\t\tarrow.addClass('active');\r\n\t\t\t}\r\n\t\t\tif (URGraph === false) {\r\n\t\t\t\tURcreateStockChart();\r\n\t\t\t\tURGraph = true;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tvar NPGraph = false;\r\n\t\t$(\"#NP\").on('click', function () {\r\n\t\t\tvar $this = $(this), eachChartData = $this.closest('.eachChartData'), chartData = eachChartData.find('.chartData'), arrow = eachChartData.find('.chartexpand');\r\n\t\t\tif (chartData.is(':visible')) {\r\n\t\t\t\t$this.removeClass('act');\r\n\t\t\t\t$this.find('.title').removeClass('act');\r\n\t\t\t\tchartData.addClass('hide');\r\n\t\t\t\tarrow.removeClass('active');\r\n\t\t\t} else {\r\n\t\t\t\t$this.addClass('act');\r\n\t\t\t\t$this.find('.title').addClass('act');\r\n\t\t\t\tchartData.removeClass('hide');\r\n\t\t\t\tarrow.addClass('active');\r\n\t\t\t}\r\n\t\t\tif (NPGraph === false) {\r\n\t\t\t\tNPcreateStockChart();\r\n\t\t\t\tNPGraph = true;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tvar SFGraph = false;\r\n\t\t$(\"#SF\").on('click', function () {\r\n\t\t\tvar $this = $(this), eachChartData = $this.closest('.eachChartData'), chartData = eachChartData.find('.chartData'), arrow = eachChartData.find('.chartexpand');\r\n\t\t\tif (chartData.is(':visible')) {\r\n\t\t\t\t$this.removeClass('act');\r\n\t\t\t\t$this.find('.title').removeClass('act');\r\n\t\t\t\tchartData.addClass('hide');\r\n\t\t\t\tarrow.removeClass('active');\r\n\t\t\t} else {\r\n\t\t\t\t$this.addClass('act');\r\n\t\t\t\t$this.find('.title').addClass('act');\r\n\t\t\t\tchartData.removeClass('hide');\r\n\t\t\t\tarrow.addClass('active');\r\n\t\t\t}\r\n\t\t\tif (SFGraph === false) {\r\n\t\t\t\tSFcreateStockChart();\r\n\t\t\t\tSFGraph = true;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tvar NWPNRGraph = false;\r\n\t\t$(\"#NWPNR\").on('click', function () {\r\n\t\t\tvar $this = $(this), eachChartData = $this.closest('.eachChartData'), chartData = eachChartData.find('.chartData'), arrow = eachChartData.find('.chartexpand');\r\n\t\t\tif (chartData.is(':visible')) {\r\n\t\t\t\t$this.removeClass('act');\r\n\t\t\t\t$this.find('.title').removeClass('act');\r\n\t\t\t\tchartData.addClass('hide');\r\n\t\t\t\tarrow.removeClass('active');\r\n\t\t\t} else {\r\n\t\t\t\t$this.addClass('act');\r\n\t\t\t\t$this.find('.title').addClass('act');\r\n\t\t\t\tchartData.removeClass('hide');\r\n\t\t\t\tarrow.addClass('active');\r\n\t\t\t}\r\n\t\t\tif (NWPNRGraph === false) {\r\n\t\t\t\tNWPNRcreateStockChart();\r\n\t\t\t\tNWPNRGraph = true;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tvar SFNRGraph = false;\r\n\t\t$(\"#SFNR\").on('click', function () {\r\n\t\t\tvar $this = $(this), eachChartData = $this.closest('.eachChartData'), chartData = eachChartData.find('.chartData'), arrow = eachChartData.find('.chartexpand');\r\n\t\t\tif (chartData.is(':visible')) {\r\n\t\t\t\t$this.removeClass('act');\r\n\t\t\t\t$this.find('.title').removeClass('act');\r\n\t\t\t\tchartData.addClass('hide');\r\n\t\t\t\tarrow.removeClass('active');\r\n\t\t\t} else {\r\n\t\t\t\t$this.addClass('act');\r\n\t\t\t\t$this.find('.title').addClass('act');\r\n\t\t\t\tchartData.removeClass('hide');\r\n\t\t\t\tarrow.addClass('active');\r\n\t\t\t}\r\n\t\t\tif (SFNRGraph === false) {\r\n\t\t\t\tSFNRcreateStockChart();\r\n\t\t\t\tSFNRGraph = true;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tvar NPSFRGraph = false;\r\n\t\t$(\"#NPSFR\").on('click', function () {\r\n\t\t\tvar $this = $(this), eachChartData = $this.closest('.eachChartData'), chartData = eachChartData.find('.chartData'), arrow = eachChartData.find('.chartexpand');\r\n\t\t\tif (chartData.is(':visible')) {\r\n\t\t\t\t$this.removeClass('act');\r\n\t\t\t\t$this.find('.title').removeClass('act');\r\n\t\t\t\tchartData.addClass('hide');\r\n\t\t\t\tarrow.removeClass('active');\r\n\t\t\t} else {\r\n\t\t\t\t$this.addClass('act');\r\n\t\t\t\t$this.find('.title').addClass('act');\r\n\t\t\t\tchartData.removeClass('hide');\r\n\t\t\t\tarrow.addClass('active');\r\n\t\t\t}\r\n\t\t\tif (NPSFRGraph === false) {\r\n\t\t\t\tNPSFRcreateStockChart();\r\n\t\t\t\tNPSFRGraph = true;\r\n\t\t\t}\r\n\t\t});\r\n\t\t\r\n\t\tvar geturl = window.location.href;\r\n\t\tif (geturl.indexOf('graphid=') !== -1) {\r\n\t\t\tvar getId = geturl.split('graphid=')[1];\r\n\t\t\t$(window).scrollTop($('#' + getId).offset().top);\r\n\t\t\t$('#' + getId).find('.chartexpand').trigger('click');\r\n\t\t}\r\n\t}\r\n});\r\n\r\n\r\n// GWP STOCK CHART\r\nfunction GWPcreateStockChart() {\r\n\tvar dataSet = new Array();\r\n\tvar dataSetList = new Array(), matches, d;\r\n\tvar chart = new AmCharts.AmStockChart();\r\n chart.startDuration = 0;\r\n chart.startRadius = \"100%\";\r\n chart.pathToImages = \"/skins/insurance-day/amcharts_2.7.6/images/\";\r\n\r\n\r\n\t// DATASETS //////////////////////////////////////////\r\n\t// create data sets first\r\n\r\n\tfor (var dataSetCtr=0; dataSetCtr0){\r\n\r\n /*if ($.browser.msie){\r\n\r\n var jsonObject = JSON.stringify(chartData);\r\n\r\n var csvData = ConvertToCSV(jsonObject);\r\n\r\n var chartColor = chartData[0].colour;\r\n\r\n var params =\r\n {\r\n bgcolor:\"#E7E7E7\",\r\n wmode:\"opaque\"\r\n };\r\n\r\n var chartSettings =\"csvE7E7E79\"+chartColor+\",\"+chartColor+\"5525202513113131120008323{category}:{value}Stock85018center\";\r\n\r\n var flashVars =\r\n {\r\n path: skinUrl + \"amcharts_2.7.6/flash/\",\r\n\r\n chart_data: csvData,\r\n\r\n chart_settings: chartSettings\r\n };\r\n\r\n swfobject.embedSWF(skinUrl + \"amcharts_2.7.6/flash/amcolumn.swf\", divId, \"220\", \"120\", \"8.0.0\", skinUrl + \"amcharts_2.7.6/flash/expressInstall.swf\", flashVars, params);*/\r\n \r\n //} else{\r\n var chart1 = new AmCharts.AmSerialChart();\r\n /*\r\n // Remove \" - Q1, - Q2\" from the year:\r\n $.each(chartData, function(i, item) {\r\n if(item.year){\r\n var posQ = item.year.indexOf(\" - \");\r\n if(posQ > 0){\r\n item.year = item.year.substring(0,posQ);\r\n }\r\n } // Year is defined.\r\n });\r\n */\r\n\r\n chart1.dataProvider = chartData;\r\n chart1.categoryField = \"year\";\r\n\r\n chart1.marginTop = 20;\r\n chart1.marginBottom = 25;\r\n chart1.marginLeft = 55;\r\n //chart1.marginLeft = 45;\r\n chart1.marginRight = 25;\r\n chart1.height = '100%';\r\n chart1.width = '100%';\r\n //chart1.fontSize = 8;\r\n\r\n chart1.startDuration = 0;\r\n chart1.startRadius = \"100%\";\r\n\r\n var graph1 = new AmCharts.AmGraph();\r\n graph1.valueField = \"value\";\r\n\r\n graph1.lineColor = \"#\" + chartData[0].colour;\r\n graph1.fillColor = \"#\" + chartData[0].colour;\r\n graph1.balloonText = \"[[category]]: [[value]]\";\r\n graph1.type = \"column\";\r\n graph1.lineAlpha = 0;\r\n graph1.fillAlphas = 0.8;\r\n //graph1.lineThickness = 2;\r\n chart1.addGraph(graph1);\r\n\r\n var catAxis = chart1.categoryAxis;\r\n\r\n catAxis.gridPosition = \"start\";\r\n catAxis.autoGridCount = true;\r\n\r\n //catAxis.autoGridCount = false;\r\n //catAxis.gridCount = 5;\r\n //catAxis.labelFrequency = 1;\r\n\r\n // chart1.addTitle(\"Millions $\", 8);\r\n\r\n chart1.write(divId);\r\n //}\r\n }\r\n}\r\n\r\n$(function(){\r\n\tif($('#mycarousel1') && $('#mycarousel1').length){\r\n\t\t$('#mycarousel1.owl-carousel').owlCarousel({\r\n\t\t\tloop:false,\r\n margin:0,\r\n merge:true,\r\n nav:true,\r\n touchDrag : false,\r\n mouseDrag : false,\r\n slideBy: 4, \r\n navText: [\r\n \"\",\r\n \"\"\r\n ], \r\n responsive:{\r\n 0:{\r\n items:1\r\n },\r\n 678:{\r\n items:1\r\n },\r\n 320:{\r\n items:1\r\n },\r\n 480:{\r\n items:1\r\n },\r\n 1000:{\r\n items:1\r\n }\r\n }\r\n\t\t}); \r\n\r\n\t}\r\n\r\n});","$(function() {\r\n var $themeOmdia = $('body.theme-omdia').length,\r\n $longReadSection = $('#longReadJumpToSection a'),\r\n $downloads = $(\"#main-well .download-btn\"),\r\n $dataInfo = {},\r\n assetTitle = $('.omd-banner h1').length > 0 ? $('.omd-banner h1').text() : $('.omd-banner h2').text();\r\n\r\n if ($themeOmdia) {\r\n $.each($longReadSection, function (prop, value) {\r\n $dataInfo.event_name = 'anchor_clicks';\r\n $dataInfo.click_through_source = $('#main-well').find(\"[id='\" + $(value)[0].hash.substring(1) + \"']\").text() || '';\r\n $dataInfo.click_destination = $(value).text() || '';\r\n $dataInfo.source_page_type = (window.analytics_data && window.analytics_data.page_type) || \"\";\r\n $(value).attr('data-info', JSON.stringify($dataInfo));\r\n });\r\n\r\n $.each($downloads, function (prop, value) {\r\n $dataInfo = {};\r\n var dnow = new Date().toISOString();\r\n $dataInfo.event_name = 'download_asset';\r\n $dataInfo.asset_file_type = $(value).text().split('|')[1] || '';\r\n $dataInfo.asset_name = $(value).text().split('-')[0] || '';\r\n $dataInfo.asset_category = $(value).attr('data-category') || '';\r\n $dataInfo.product_codes = $('input[name=user_entitled_product_codes]').val();\r\n $dataInfo.article_number = window.analytics_data.article_number;\r\n $dataInfo.asset_size = $(value).attr('data-size');\r\n $dataInfo.asset_url = $(value).attr('href');\r\n $dataInfo.asset_created = dnow;\r\n $dataInfo.asset_modified = dnow;\r\n $(value).attr('data-info', JSON.stringify($dataInfo));\r\n });\r\n try {\r\n Stream;\r\n utag;\r\n analytics_data;\r\n if (Stream && utag && analytics_data) {\r\n $('[data-videoid]').each(function () {\r\n var $videoContainer = $(this),\r\n videoid = $videoContainer.data('videoid'),\r\n videoAnalysticsData = {\r\n event_name: 'play_video',\r\n asset_family_name: assetTitle,\r\n video_id: videoid\r\n }\r\n \r\n Stream($videoContainer.children('iframe')[0]).addEventListener('play', function () {\r\n utag.link($.extend(analytics_data, videoAnalysticsData));\r\n });\r\n });\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n});\r\n","var articleSidebarAd,\r\n articleSidebarAdParent,\r\n lastActionFlagsBar,\r\n stickyFloor,\r\n sidebarIsTaller,\r\n rightRail;\r\n$(window).on('load', function () {\r\n if ($(\"img.limelightvideo-thumbnail-img\").length > 0) {\r\n $(\"img.limelightvideo-thumbnail-img\").forEach(v => {\r\n if ($(v).attr('data-mediaid') != null) {\r\n var mediaId = v.dataset.mediaid;\r\n var playerWidth = v.dataset.width;\r\n var playerHeight = v.dataset.height;\r\n var playerId = v.dataset.playerid;\r\n var videoPlayer = '
 
';\r\n videoPlayer = videoPlayer.replace(/{playerid}/g, playerId);\r\n videoPlayer = videoPlayer.replace(/{mediaid}/g, mediaId);\r\n videoPlayer = videoPlayer.replace(/{width}/g, playerWidth);\r\n videoPlayer = videoPlayer.replace(/{height}/g, playerHeight);\r\n $(v).parent().append(videoPlayer);\r\n $(v).remove();\r\n }\r\n });\r\n }\r\n\r\n if ($(\".body-master-iframe\").length > 0) {\r\n $(\".body-master-iframe\").forEach(function (v) {\r\n v.remove();\r\n });\r\n }\r\n \r\n if($('.article-right-rail section:last-child').find(\".article-preview__ad\").hasClass(\"hidden\")) {\r\n articleSidebarAdParent = $('.article-right-rail section:last-child').prev();\r\n } else {\r\n articleSidebarAdParent = $('.article-right-rail section:last-child');\r\n }\r\n articleSidebarAd = articleSidebarAdParent.find('.advertising');\r\n lastActionFlagsBar = $('.action-flags-bar:last-of-type');\r\n setTimeout(function(){\r\n\t\tsidebarIsTaller = $('.article-right-rail').height() > $('.article-left-rail').height();\r\n\t}, 1000);\r\n\tif($('.article-right-rail').length > 0) {\r\n rightRail = $('.article-right-rail').offset().left;\r\n }\r\n});\r\n$(window).on('scroll', function () {\r\n if (articleSidebarAdParent && articleSidebarAdParent.length && sidebarIsTaller === false) {\r\n // pageYOffset instead of scrollY for IE / pre-Edge compatibility\r\n stickyFloor = lastActionFlagsBar.offset().top - window.pageYOffset - articleSidebarAd.height();\r\n if (articleSidebarAdParent.offset().top - window.pageYOffset <= 16) {\r\n articleSidebarAdParent.addClass('advertising--sticky');\r\n\t\t\t// if($('.article-right-rail').length > 0) {\r\n // articleSidebarAdParent.find('.advertising').css('left', rightRail + 'px');\r\n // }\r\n } else {\r\n articleSidebarAdParent.removeClass('advertising--sticky');\r\n }\r\n if (stickyFloor <= 40) {\r\n articleSidebarAd.css('top', (stickyFloor - 40) + 'px');\r\n } else {\r\n articleSidebarAd.css('top', '');\r\n }\r\n if ($(\"body\").hasClass(\"theme-chemistanddruggist\")) {\r\n\t\t\tif (stickyFloor <= 200) {\r\n articleSidebarAd.css('top', stickyFloor - 200 + 'px');\r\n\t\t\t} else {\r\n\t\t\t\tarticleSidebarAd.css('top', '');\r\n\t\t\t}\r\n\t\t}\r\n }\r\n});","$(function() {\r\n var $body = $('body'),\r\n $overlay = \"
\";\r\n\r\n $body.append($overlay);\r\n \r\n $(\".action-flag.pop-out__trigger.js-pop-out-trigger[data-pop-out-type='ask-the-analyst'], .dismiss-button.js-dismiss-ask-the-analyst\").on('click', function (event) {\r\n event.preventDefault();\r\n event.stopImmediatePropagation();\r\n $('.ask-an-analyst, .pop-out.js-pop-out__ask-the-analyst').toggleClass('show').toggleClass('is-active');\r\n $('.analyst-overlay').removeClass('active');\r\n $('.js-ask-the-analyst-form-wrapper').show();\r\n $('.js-ask-the-analyst-success').hide();\r\n $('.button--filled.click-utag').attr('disabled', 'disabled');\r\n $('input[type=text]:not([readonly])').val('');\r\n $(\".pop-out__input.pop-out__textarea\").val('');\r\n window.controlPopOuts.closePopOuts();\r\n });\r\n});","$(function() {\r\n if( $(document.body).hasClass(\"theme-omdia\") && \r\n $('.omd-col-main') && $('.omd-col-main').length == 0){\r\n return; //Exit\r\n }\r\n //Execute only in case of Asset Family page in Omdia \r\n //Find UL elements - if UL element \r\n //IF UL element is first child of li then add class to LI\r\n //LI class will nullify the list icon style\r\n var parents = $('.article-list--ul').parents();\r\n for (var i=0; i< parents.length; i++) {\r\n if (parents[i].tagName == 'LI' &&\r\n parents[i].children[0].tagName == 'UL') {\r\n parents[i].classList.add(\"nested-ul\");\r\n }\r\n }\r\n});","import FormController from '../controllers/form-controller';\r\n\r\n$(document).ready(function () {\r\n var savedItems = document.getElementsByClassName(\"sortable-table__col--date\");\r\n if (savedItems != null && savedItems.length > 0) {\r\n var counter;\r\n for (counter = 0; counter < savedItems.length; counter++) {\r\n if (savedItems[counter] != null && savedItems[counter].dataset != null) {\r\n var savedOn = new Date(savedItems[counter].dataset.savedondate);\r\n var nodeSavedOn = document.createElement(\"div\");\r\n if (isNaN(savedOn.getTime()) || savedOn.getYear() <= 1) {\r\n nodeSavedOn.appendChild(document.createTextNode(\"\"));\r\n } else {\r\n var localDate = savedOn.setMinutes(savedOn.getMinutes() + savedOn.getTimezoneOffset());\r\n nodeSavedOn.appendChild(document.createTextNode(formatDate(localDate)));\r\n }\r\n savedItems[counter].appendChild(nodeSavedOn);\r\n }\r\n }\r\n }\r\n});\r\n\r\nfunction formatDate(localDate) {\r\n var formatDate = new Date(localDate);\r\n var monthNames = [\r\n \"Jan\", \"Feb\", \"Mar\",\r\n \"Apr\", \"May\", \"Jun\", \"Jul\",\r\n \"Aug\", \"Sept\", \"Oct\",\r\n \"Nov\", \"Dec\"\r\n ];\r\n\r\n var day = formatDate.getDate();\r\n var monthIndex = formatDate.getMonth();\r\n var year = formatDate.getFullYear();\r\n\r\n return day + ' ' + monthNames[monthIndex] + ' ' + year;\r\n}","(function () {\r\n var $carouselInfograph = $('.carousel-infographic'),\r\n init = function () {\r\n // page check\r\n if (!$carouselInfograph || $carouselInfograph.length === 0) return;\r\n $carouselInfograph.each(function () {\r\n var currCIG = $(this);\r\n currCIG.owlCarousel({\r\n items: 1,\r\n loop: true,\r\n nav: true,\r\n lazyLoad: true,\r\n navText: [\r\n \"\",\r\n \"\"\r\n ]\r\n });\r\n });\r\n }\r\n init();\r\n})();\r\n","import Cookies from '../jscookie';\r\n\r\n$(function () {\r\n setTimezoneCookie();\r\n});\r\n\r\nfunction setTimezoneCookie() {\r\n\r\n var timezoneCookie = \"ClientBrowser_TimezoneOffset\";\r\n\r\n var timezoneCookieValue = Cookies.get(timezoneCookie);\r\n\r\n if (!timezoneCookieValue) {\r\n // create a new cookie \r\n Cookies.set(timezoneCookie, new Date().getTimezoneOffset());\r\n }\r\n // if the current timezone and the one stored in cookie are different\r\n // then store the new timezone in the cookie and refresh the page.\r\n else {\r\n\r\n var storedOffset = parseInt(timezoneCookieValue);\r\n var currentOffset = new Date().getTimezoneOffset();\r\n\r\n // user may have changed the timezone\r\n if (storedOffset !== currentOffset) {\r\n Cookies.set(timezoneCookie, new Date().getTimezoneOffset());\r\n }\r\n }\r\n}","$(function() {\r\n var btnBottom = document.getElementById(\"contactInfo\"),\r\n $body = $('body'), \r\n $theamOmdia = $body.hasClass('theme-omdia');\r\n \r\n function syncClick(event) {\r\n event.preventDefault();\r\n if ($theamOmdia && btnBottom !== undefined) {\r\n btnBottom.click();\r\n }\r\n }\r\n \r\n });\r\n\r\n","$(function() {\r\n var $body = $('body'), \r\n $theamOmdia = $body.hasClass('theme-omdia');\r\n \r\n $(\".download-dropdown\").on('change', function (event) {\r\n if($theamOmdia) {\r\n var value = $(this).find('select').val();\r\n window.open(value, 'newwindow');\r\n }\r\n });\r\n});","(function () {\r\n var RecomendedContent = {\r\n AjaxData: function (url, type, data, SuccessCallback) {\r\n $.ajax({\r\n url: url,\r\n data: JSON.stringify(data),\r\n dataType: 'json',\r\n contentType: \"application/json\",\r\n type: type,\r\n cache: false,\r\n success: function (data) {\r\n //if (data.articles && typeof data.articles === \"object\" && data.articles.length >= 3) {\r\n SuccessCallback(data);\r\n //} \r\n }\r\n });\r\n },\r\n RecomendedTemplate: function (data) {\r\n var Template = '';\r\n var HeadingAnalytics = $('.ContentRecomm-ReadNext').find('h2').text(),\r\n articleId = $('#hdnCurrentArticleItemID').val(),\r\n items=0;\r\n\r\n for(var i=0; i 0) {\r\n for (var j = 0; j < 3; j++) {\r\n\t\t\t\t\t\tvar addCls = (data.articles[j].isSonsoredBy) ? 'sponsored_cont' : '';\r\n\t\t\t\t\t\t\tvar sponsoredByLogo = (data.articles[j].sponsoredLink && data.articles[j].sponsoredByLogo) ? '
  • ' : ((data.articles[j].sponsoredLink == null || data.articles[j].sponsoredLink === undefined) && data.articles[j].sponsoredByLogo) ? '' : '',\r\n\t\t\t\t\t\t\t\tsponsoredByTitle = (data.articles[j].sponsoredByTitle) ? '
  • ' : '',\r\n\t\t\t\t\t\t\t\tlistablePublication = (data.articles[j].listablePublication) ? '' : '',\r\n\t\t\t\t\t\t\t\tlistableImage = (data.articles[j].listableImage) ? '' : '',\r\n\t\t\t\t\t\t\t\tlistableDate = (data.articles[j].listableDate) ? '' : '',\r\n\t\t\t\t\t\t\t\tlistableTitle = (data.articles[j].listableTitle) ? '
    ' + data.articles[j].listableTitle + '
    ' : '',\r\n\t\t\t\t\t\t\t\tarticlemeta = (sponsoredByTitle === '' && sponsoredByLogo === '') ? '' : '
      '+ sponsoredByTitle + sponsoredByLogo +'
    ';\r\n\t\t\t\t\t\t\tif(data.articles[j].listableImage == null) { \r\n\t\t\t\t\t\t\t\tTemplate += '
    ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\tarticlemeta + listablePublication + listableTitle + listableDate +\r\n\t\t\t\t\t\t\t\t\t\t\t'
    ';\r\n } else {\r\n\t\t\t\t\t\t\t\tTemplate += '
    ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\tarticlemeta + listableImage + listablePublication + listableTitle + listableDate +\r\n\t\t\t\t\t\t\t\t\t\t\t'
    ';\r\n }\r\n }\r\n } else {\r\n $('.ContentRecomm-ReadNext').hide();\r\n }\r\n\r\n Template += '';\r\n\t\t\t\t\r\n $('.ContentRecomm-ReadNext').append(Template);\r\n\r\n },\r\n SuggestedTemplate: function (data) {\r\n var Template = '';\r\n var HeadingAnalytics = $('.suggested-article').find('h2').text(),\r\n articleId = $('#hdnCurrentArticleItemID').val(),\r\n items=0;\r\n\r\n for(var i=0; i 0) {\r\n for (var j = 0; j < 3; j++) {\r\n\t\t\t\t\t\tvar addCls = (data.articles[j].isSonsoredBy) ? 'sponsored_cont' : '',\r\n\t\t\t\t\t\t\tsponsoredByLogo = (data.articles[j].sponsoredLink && data.articles[j].sponsoredByLogo) ? '
  • ' : ((data.articles[j].sponsoredLink == null || data.articles[j].sponsoredLink === undefined) && data.articles[j].sponsoredByLogo) ? '' : '',\r\n\t\t\t\t\t\t\tsponsoredByTitle = (data.articles[j].sponsoredByTitle) ? '
  • ' : '',\r\n\t\t\t\t\t\t\tlistablePublication = (data.articles[j].listablePublication) ? '' : '',\r\n\t\t\t\t\t\t\tlistableImage = (data.articles[j].listableImage) ? '' : '',\r\n\t\t\t\t\t\t\tlistableDate = (data.articles[j].listableDate) ? '' : '',\r\n\t\t\t\t\t\t\tlistableTitle = (data.articles[j].listableTitle) ? '
    ' + data.articles[j].listableTitle + '
    ' : '',\r\n\t\t\t\t\t\t\tarticlemeta = (sponsoredByTitle === '' && sponsoredByLogo === '') ? '' : '
      '+ sponsoredByTitle + sponsoredByLogo+ '
    ';\r\n\t\t\t\t\t\t\t\r\n if(data.articles[j].listableImage == null) {\r\n\t\t\t\t\t\t\t//if(sponsoredByTitle && sponsoredByLogo && listablePublication && listableTitle && listableDate){\r\n Template += '
    ' +\r\n\t\t\t\t\t\t\t\t\t\t\tarticlemeta + listablePublication + listableTitle + listableDate +\r\n\t\t\t\t\t\t\t\t\t\t'
    ';\r\n\t\t\t\t\t\t\t//}\r\n } else {\r\n Template += '
    ' +\r\n\t\t\t\t\t\t\t\t\t\tarticlemeta + listableImage + listablePublication + listableTitle + listableDate +\r\n\t\t\t\t\t\t\t\t\t'
    ';\r\n\t\t\t\t\t\t} \r\n\t\t\t\t\t}\r\n } else {\r\n $('.suggested-article').hide();\r\n }\r\n\r\n Template += '';\r\n\r\n $('.suggested-article').append(Template);\r\n },\r\n init: function () {\r\n var self = this;\r\n if ($('.ContentRecomm-ReadNext').length > 0) {\r\n self.AjaxData('/api/articlesearch', 'POST', { 'TaxonomyIds': $('#hdnTaxonomyIds').val().split(\",\"), 'PageNo': 1, 'PageSize': 4 }, self.RecomendedTemplate);\r\n }\r\n if ($('#hdnPreferanceIds').val()) {\r\n self.AjaxData('/api/articlesearch', 'POST', { 'TaxonomyIds': $('#hdnPreferanceIds').val().split(\",\").slice(0, 100), 'PageNo': 1, 'PageSize': 4 }, self.SuggestedTemplate);\r\n }\r\n }\r\n }\r\n\r\n RecomendedContent.init();\r\n })();\r\n","(function () {\r\n \"use strict\";\r\n var updateLinkUTMTracking = function () {\r\n var utmQueryStr = $(document).data(\"utmQueryStr\");\r\n $(\"a[href^='http'], a[href^='//']\").each(function () {\r\n var href, hrefPartsArr, hrefQueryStr, newHrefQueryStr, appendHref;\r\n\r\n // run once check\r\n if ($(this).hasClass(\"link-utm-updated\")) return true;\r\n\r\n // set vars\r\n href = this.href.replace(/\\/$/, \"\").replace(/&/g, \"&\");\r\n hrefPartsArr = href.split(\"?\");\r\n hrefQueryStr = hrefPartsArr.length > 1 ? hrefPartsArr[1] : \"\";\r\n\r\n // loop url params and filter them out if they contain '_utm'\r\n if (hrefQueryStr.indexOf(\"utm_\") > -1) {\r\n newHrefQueryStr = hrefQueryStr\r\n .split(\"&\")\r\n .filter(function (urlParam) {\r\n var urlQueryParamKey = urlParam.split(\"=\")[0].toLowerCase();\r\n return urlQueryParamKey.indexOf(\"utm_\") === -1;\r\n })\r\n .join(\"&\");\r\n } else {\r\n newHrefQueryStr = hrefQueryStr;\r\n }\r\n\r\n // adds & if existing url already has queries, else ?\r\n appendHref =\r\n \"?\" +\r\n (newHrefQueryStr.length > 0 ? newHrefQueryStr + \"&\" : \"\") +\r\n utmQueryStr;\r\n\r\n this.href = hrefPartsArr[0] + appendHref;\r\n\r\n $(this).addClass(\"link-utm-updated\");\r\n });\r\n };\r\n\r\n var setUTMQueryString = function () {\r\n var hdnUtmSource = $(\"#UtmParameters\").val(),\r\n utm,\r\n utmQueryKeys;\r\n\r\n // sets utmQueryStr as empty so early returns will cancel\r\n $(document).data(\"utmQueryStr\", \"\");\r\n\r\n // early return where field isn't present\r\n if (!hdnUtmSource) {\r\n console.warn(\"UTM parameters field expected\");\r\n return;\r\n }\r\n\r\n // convert string to js object\r\n // utm = JSON.parse(hdnUtmSource);\r\n\r\n // early return where utm_source is not present or it's value = direct\r\n // if (!utm.utm_source) {\r\n // console.warn(\"utm_source not detected\");\r\n // return;\r\n // }\r\n // if (utm.utm_source.toLowerCase() === \"direct\") {\r\n // console.warn(\"utm_source=direct detected\");\r\n // return;\r\n // }\r\n\r\n // filter utm kv pairs and store\r\n // utmQueryKeys = Object.keys(utm).filter(function (key) {\r\n // var val = utm[key];\r\n // return key.indexOf(\"utm_\") > -1 && val;\r\n // });\r\n\r\n // early return where at least 1 UTM parameter is not present\r\n if (hdnUtmSource.length === 0) {\r\n console.warn(\"no valid UTM parameters detected\");\r\n return;\r\n }\r\n\r\n // construct query string from utm field vals\r\n $(document).data(\"utmQueryStr\", hdnUtmSource);\r\n };\r\n\r\n var startUTMObserver = function () {\r\n window.UTMObserver = new MutationObserver(updateLinkUTMTracking);\r\n window.UTMObserver.observe(document, {\r\n attributes: true,\r\n childList: true,\r\n subtree: true,\r\n });\r\n };\r\n\r\n var initLinkUTMTracking = function () {\r\n var utmQueryStr = $(document).data(\"utmQueryStr\");\r\n\r\n // set utm string first time and rerun func\r\n if (utmQueryStr === undefined) {\r\n setUTMQueryString();\r\n initLinkUTMTracking();\r\n return;\r\n }\r\n\r\n // continue if utm string is set\r\n if (!utmQueryStr || utmQueryStr.length === 0) return;\r\n startUTMObserver();\r\n updateLinkUTMTracking();\r\n };\r\n\r\n // run at start\r\n $(window).on('load', initLinkUTMTracking);\r\n})();\r\n","$(document).ready(function () {\r\n if ($('#GeneralRTEComponentForTrial').length != 0) {\r\n var etype = getFreeTrialParameterByName(\"eType\", window.location.href);\r\n if (etype && etype.trim().toLowerCase() === \"std\") {\r\n var returnUrl = getFreeTrialParameterByName(\"returnUrl\", window.location.href);\r\n returnUrl = returnUrl != \"null\" ? returnUrl : '/';\r\n window.location.href = returnUrl;\r\n } else {\r\n\t\t\tprocessFreeTrialRegistration(false);\r\n\t\t}\r\n }\r\n\r\n $('#complete-email-verification-for-trial').on(\"click\", function () {\r\n processFreeTrialRegistration(true);\r\n });\r\n\r\n if ($('#email-verification-refresh-interval').length > 0) {\r\n var interval = $('#email-verification-refresh-interval').val();\r\n if (interval != 0) {\r\n setTimeout(refreshUserEmailVerificationStatus, interval * 1000);\r\n }\r\n }\r\n displayNotification();\r\n});\r\n\r\nfunction displayNotification() {\r\n var $notificationMessage = $('.email-verification-error-message');\r\n if ($notificationMessage && $notificationMessage.length > 0) {\r\n $notificationMessage.hide();\r\n }\r\n var $nextCTAErrorMessage = $('.email-verification-next-cta-error-message');\r\n if ($nextCTAErrorMessage && $nextCTAErrorMessage.length > 0) {\r\n $nextCTAErrorMessage.hide();\r\n }\r\n var today = new Date();\r\n var expiresDate = new Date(today.getFullYear(), today.getMonth(), today.getDate() - 1).toUTCString();\r\n var cookie = document.cookie;\r\n var cookieArray = cookie.split(';');\r\n cookieArray.forEach(function (item) {\r\n item = item.trim();\r\n if (item.indexOf('notifiyuseraboutemailverification=') >= 0) {\r\n var value = item.split('=')[1];\r\n if (value.length > 0) {\r\n value = value.trim().toLowerCase();\r\n if (value == 'true' && $notificationMessage && $notificationMessage.length > 0) {\r\n $notificationMessage.show();\r\n }\r\n }\r\n document.cookie = 'notifiyuseraboutemailverification=False;path=/;secure;expires=' + expiresDate + ';domain=' + window.location.hostname + ';';\r\n }\r\n });\r\n}\r\n\r\n//Execute only if user is still on email verification page\r\nfunction refreshUserEmailVerificationStatus() {\r\n if ($('#email-verification-refresh-interval').length > 0) {\r\n var interval = $('#email-verification-refresh-interval').val();\r\n if (interval != 0) {\r\n var type = getFreeTrialParameterByName(\"type\", window.location.href);\r\n if (!(type && type == \"register\")) {\r\n processFreeTrialRegistration(false);\r\n }\r\n }\r\n }\r\n}\r\n\r\nfunction processFreeTrialRegistration(onclickhandler) {\r\n var returnUrl = getFreeTrialParameterByName(\"returnUrl\", window.location.href);\r\n returnUrl = returnUrl != \"null\" ? returnUrl : '/';\r\n\r\n if (IsTrialProcessingStarted()) {\r\n validateUserEntitlement(onclickhandler, returnUrl);\r\n } else {\r\n var type = getFreeTrialParameterByName(\"type\", window.location.href);\r\n // if user clicked on complete your trail button on email verification\r\n // page (means email verification is enabled) and it is the case of non trial registration.\r\n if (onclickhandler && type && type == \"register\") {\r\n window.location.href = returnUrl;\r\n } else {\r\n validateUserEntitlement(false, returnUrl);\r\n }\r\n }\r\n}\r\n\r\nfunction validateUserEntitlement(onclickhandler, returnUrl) {\r\n jQuery.ajax({\r\n url: \"account/api/RequestFreeTrialApi/CheckEntitlementStatus\",\r\n method: \"GET\",\r\n dataType: \"json\",\r\n success: function success(response) {\r\n if (response.success) {\r\n var reponseMessage = response.message.replace(\"{here}\", \"here\");\r\n $(\"#GeneralRTEComponentForTrial\").html(reponseMessage);\r\n setTimeout(function () {\r\n if (returnUrl != \"\" || returnUrl != \"undefined\") {\r\n DeleteIsFreeTrialCookie();\r\n var $RegisterOrEnrollmentLink = $('#RegisterOrEnrollmentLink');\r\n if ($RegisterOrEnrollmentLink) {\r\n var RegisterOrEnrollmenFullUrl = $RegisterOrEnrollmentLink.val().trim() + \"?returnUrl=\" + returnUrl;\r\n window.location.href = RegisterOrEnrollmenFullUrl;\r\n }\r\n }\r\n }, 5000);\r\n } else {\r\n checkContactinfo(onclickhandler, returnUrl);\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction checkContactinfo(onclickhandler, returnUrl) {\r\n jQuery.ajax({\r\n url: \"account/api/RequestFreeTrialApi/NeedToUpdateDetails\",\r\n method: \"GET\",\r\n dataType: \"json\",\r\n success: function success(response) {\r\n //if response is true then redirect user to account update with trial processing page as return url\r\n if (response.result) {\r\n var $MyAccountPageUrl = $('#MyAccountPageUrl');\r\n var $TrialProcessingPage = $('#trialProcessingPage');\r\n if ($MyAccountPageUrl && $TrialProcessingPage) {\r\n var MyAccountPageFullUrl = $MyAccountPageUrl.val().trim() + \"?istrial=true&onSuccess=\" + encodeURIComponent($TrialProcessingPage.val().trim() + \"?istrial=true&returnUrl=\" + returnUrl);\r\n window.location.href = MyAccountPageFullUrl;\r\n }\r\n } else {\r\n var status = getFreeTrialParameterByName(\"status\", window.location.href);\r\n if (status && status === \"completed\") {\r\n jQuery.ajax({\r\n url: \"account/api/PreferencesApi/IsUserPreferencesAvailable?returnUrl=\" + returnUrl,\r\n method: \"GET\",\r\n dataType: \"json\",\r\n success: function success(response) {\r\n if (response.success) {\r\n UpdateFreeTrialCookie(response.enrolmentLink);\r\n window.location.href = response.enrolmentLink;\r\n } else {\r\n if (IsTrialProcessingStarted() || WasFreeTrialRequest()) {\r\n requestFreeTrial();\r\n } else {\r\n window.location.href = '/';\r\n }\r\n }\r\n }\r\n });\r\n } else {\r\n VerifyUserEmail(onclickhandler, returnUrl);\r\n }\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction requestFreeTrial() {\r\n var pubCode = getFreeTrialParameterByName(\"PubCode\", window.location.href);\r\n jQuery.ajax({\r\n url: \"account/api/RequestFreeTrialApi/RequestFreeTrial?pubCode=\" + pubCode,\r\n method: \"GET\",\r\n dataType: \"json\",\r\n success: function success(response) {\r\n if (response.success) {\r\n var returnOrigin = getFreeTrialParameterByName(\"returnUrl\", window.location.href);\r\n var reponsemessage = response.message.replace(\"{here}\", \"here\");\r\n jQuery(\"#GeneralRTEComponentForTrial\").html(reponsemessage);\r\n setTimeout(function () {\r\n if (returnOrigin != \"\" || returnOrigin != \"undefined\") {\r\n DeleteIsFreeTrialCookie();\r\n window.location.href = returnOrigin;\r\n }\r\n }, 5000);\r\n } else {\r\n jQuery(\"#GeneralRTEComponentForTrial\").html(response.message);\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction DeleteIsFreeTrialCookie() {\r\n var cookies = document.cookie;\r\n var cookieArray = cookies.split(';');\r\n cookieArray.forEach(function (item) {\r\n item = item.trim();\r\n if (item.indexOf('isFreeTrial=') >= 0) {\r\n var today = new Date();\r\n var expiresDate = new Date(today.getFullYear(), today.getMonth() - 2, today.getDate()).toUTCString();\r\n document.cookie = 'isFreeTrial=False;path=/;secure;expires=' + expiresDate + ';domain=' + window.location.hostname + ';';\r\n }\r\n });\r\n}\r\n\r\nfunction UpdateFreeTrialCookie(url) {\r\n var today = new Date();\r\n var expiresDate = new Date(today.getFullYear(), today.getMonth() + 2, today.getDate()).toUTCString();\r\n var cookie = document.cookie;\r\n var cookieArray = cookie.split(';');\r\n cookieArray.forEach(function (item) {\r\n item = item.trim();\r\n if (item.indexOf('isFreeTrial=') >= 0) {\r\n var oldValue = item.split('=')[1];\r\n if (oldValue.length > 0) {\r\n if (oldValue.indexOf('|') >= 0) {\r\n document.cookie = 'isFreeTrial=' + oldValue.substring(0, oldValue.indexOf('|') + 1) + url + ';path=/;secure;expires=' + expiresDate + ';domain=' + window.location.hostname + ';';\r\n } else {\r\n document.cookie = 'isFreeTrial=' + oldValue + '|' + url + ';path=/;secure;expires=' + expiresDate + ';domain=' + window.location.hostname + ';';\r\n }\r\n }\r\n } else {\r\n document.cookie = 'isFreeTrial=True|' + url + ';path=/;secure;expires=' + expiresDate + ';domain=' + window.location.hostname + ';';\r\n }\r\n });\r\n}\r\n\r\nfunction IsTrialProcessingStarted() {\r\n var result = false;\r\n var istrial = getFreeTrialParameterByName(\"istrial\", window.location.href);\r\n if (istrial) {\r\n result = true;\r\n }\r\n if (result) {\r\n return result;\r\n }\r\n var cookie = document.cookie;\r\n var cookieArray = cookie.split(';');\r\n cookieArray.forEach(function (item) {\r\n item = item.trim();\r\n if (item.indexOf('isFreeTrial=') >= 0) {\r\n var oldValue = item.split('=')[1];\r\n if (oldValue.indexOf('|') >= 0) {\r\n var parts = oldValue.split('|');\r\n oldValue = parts[0];\r\n }\r\n if (oldValue == \"True\") {\r\n result = true;\r\n }\r\n }\r\n });\r\n return result;\r\n}\r\n\r\nfunction WasFreeTrialRequest() {\r\n var result = false;\r\n\r\n var cookie = document.cookie;\r\n var cookieArray = cookie.split(';');\r\n cookieArray.forEach(function (item) {\r\n item = item.trim();\r\n if (item.indexOf('isFreeTrial=') >= 0) {\r\n var oldValue = item.split('=')[1];\r\n if (oldValue.indexOf('|') >= 0) {\r\n var parts = oldValue.split('|');\r\n oldValue = parts[0];\r\n }\r\n if (oldValue.toLowerCase() == \"false\") {\r\n result = true;\r\n }\r\n }\r\n });\r\n return result;\r\n }\r\n\r\nfunction VerifyUserEmail(onclickhandler, returnUrl) {\r\n jQuery.ajax({\r\n url: \"account/api/RequestFreeTrialApi/IsEmailVerified\",\r\n method: \"GET\",\r\n dataType: \"json\",\r\n success: function success(response) {\r\n if (response) {\r\n if (!onclickhandler) {\r\n RedirectToEnrollmentPage(returnUrl);\r\n } else {\r\n RedirectToTrialProcessingPage(returnUrl);\r\n }\r\n } else {\r\n if (!onclickhandler) {\r\n RedirectToEmailVerificationPage(returnUrl);\r\n } else {\r\n ShowNextCtaErrorMessage();\r\n }\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction RedirectToEnrollmentPage(returnUrl) {\r\n var $RegisterOrEnrollmentLink = $('#RegisterOrEnrollmentLink');\r\n if ($RegisterOrEnrollmentLink) {\r\n var RegisterOrEnrollmenFullUrl = $RegisterOrEnrollmentLink.val().trim() + \"?returnUrl=\" + returnUrl + \"&istrial=true\";\r\n UpdateFreeTrialCookie(RegisterOrEnrollmenFullUrl);\r\n window.location.href = RegisterOrEnrollmenFullUrl;\r\n }\r\n}\r\n\r\nfunction RedirectToEmailVerificationPage(returnUrl) {\r\n var $idVerificationPageURL = $('#EmailVerificationPage');\r\n if ($idVerificationPageURL) {\r\n var idVerificationPageFullUrl = $idVerificationPageURL.val().trim() + \"?returnUrl=\" + returnUrl + \"&istrial=true\";\r\n UpdateFreeTrialCookie(idVerificationPageFullUrl);\r\n window.location.href = idVerificationPageFullUrl;\r\n }\r\n}\r\n\r\nfunction RedirectToTrialProcessingPage(returnUrl) {\r\n window.location.href = jQuery('#trialProcessingPage').val() + \"?returnUrl=\" + returnUrl + \"&istrial=true\";\r\n}\r\n\r\nfunction ShowNextCtaErrorMessage() {\r\n //Show error message specific to email verification if user clicked on next button and email is still not verified.\r\n var $notificationMessage = $('.email-verification-error-message');\r\n if ($notificationMessage && $notificationMessage.length > 0) {\r\n $notificationMessage.hide();\r\n }\r\n var $nextCTAErrorMessage = $('.email-verification-next-cta-error-message');\r\n if ($nextCTAErrorMessage && $nextCTAErrorMessage.length > 0) {\r\n $nextCTAErrorMessage.show();\r\n }\r\n}\r\n\r\nfunction getFreeTrialParameterByName(name, url) {\r\n if (!url) url = window.location.href;\r\n name = name.replace(/[\\[\\]]/g, \"\\\\$&\");\r\n var regex = new RegExp(\"[?&]\" + name + \"(=([^&#]*)|&|#|$)\", 'i'),\r\n results = regex.exec(url);\r\n if (!results) return null;\r\n if (!results[2]) return '';\r\n return decodeURIComponent(results[2].replace(/\\+/g, \" \"));\r\n}","$(document).ready(function () {\r\n $(\"#hero-banner\").each(function () {\r\n var bgColor = $(this).data(\"background-color\");\r\n if (bgColor) {\r\n $(this).css({\r\n \"background-color\": bgColor,\r\n });\r\n }\r\n });\r\n});","(function () {\r\n 'use strict';\r\n var horizontalMenu = {\r\n $mainMenu: null,\r\n $toggleMenuSections: null,\r\n $nonSubmenuBtns: null,\r\n $menuSectionWrappers: null,\r\n isHorizontalMenuDesktopSet: false,\r\n initHorizontalMenuDesktop: function () {\r\n // handlers\r\n horizontalMenu.$toggleMenuSections.off('mouseenter.hm').on('mouseenter.hm', function () {\r\n horizontalMenu.$toggleMenuSections.removeClass('active');\r\n $(this).addClass('active');\r\n });\r\n horizontalMenu.$nonSubmenuBtns.off('mouseenter.hm').on('mouseenter.hm', function () {\r\n horizontalMenu.$toggleMenuSections.removeClass('active');\r\n });\r\n horizontalMenu.$mainMenu.off('mouseleave.hm').on('mouseleave.hm', function () {\r\n horizontalMenu.$toggleMenuSections.removeClass('active');\r\n });\r\n horizontalMenu.$menuSectionWrappers.off('focusin.hm').on('focusin.hm', function () {\r\n horizontalMenu.$toggleMenuSections.removeClass('active');\r\n $(this).siblings('.js-toggle-menu-section').addClass('active');\r\n })\r\n horizontalMenu.$menuSectionWrappers.off('focusout.hm').on('focusout.hm', function () {\r\n horizontalMenu.$toggleMenuSections.removeClass('active');\r\n })\r\n },\r\n destroyHorizontalMenuDesktop: function () {\r\n // handlers\r\n horizontalMenu.$toggleMenuSections.off('mouseenter.hm');\r\n horizontalMenu.$nonSubmenuBtns.off('mouseenter.hm');\r\n horizontalMenu.$mainMenu.off('mouseleave.hm');\r\n horizontalMenu.$menuSectionWrappers.off('focusin.hm focusout.hm');\r\n },\r\n horizontalMenuResizeHandler: function () {\r\n var windowWidth = $(window).width(),\r\n isDesktop = windowWidth > 1024;\r\n\r\n // detect if submenu exceeds bounds and align right if it does\r\n horizontalMenu.$menuSectionWrappers.each(function () {\r\n var projectedRight = $(this).closest('.main-menu__section')[0].getBoundingClientRect().x + this.getBoundingClientRect().width;\r\n $(this).css('right', projectedRight > $(window).width() ? 0 : '');\r\n });\r\n\r\n if (!horizontalMenu.isHorizontalMenuDesktopSet && isDesktop) {\r\n horizontalMenu.initHorizontalMenuDesktop();\r\n horizontalMenu.isHorizontalMenuDesktopSet = true;\r\n }\r\n\r\n if (horizontalMenu.isHorizontalMenuDesktopSet && !isDesktop) {\r\n horizontalMenu.$menuSectionWrappers.css('right', '');\r\n horizontalMenu.destroyHorizontalMenuDesktop();\r\n horizontalMenu.isHorizontalMenuDesktopSet = false;\r\n }\r\n },\r\n init: function () {\r\n // set props\r\n horizontalMenu.$mainMenu = $('.main-menu');\r\n horizontalMenu.$toggleMenuSections = horizontalMenu.$mainMenu.find('.js-toggle-menu-section');\r\n horizontalMenu.$nonSubmenuBtns = horizontalMenu.$mainMenu.find('.main-menu__home, .myviewLink, .main-menu__section-title:not(.js-toggle-menu-section)');\r\n horizontalMenu.$menuSectionWrappers = horizontalMenu.$mainMenu.find('.main-menu__section-wrapper');\r\n\r\n // set handler and init\r\n $(window).on('resize', horizontalMenu.horizontalMenuResizeHandler);\r\n horizontalMenu.horizontalMenuResizeHandler();\r\n\r\n horizontalMenu.$mainMenu.find('a:not([href])').click(function(e) {\r\n e.preventDefault();\r\n });\r\n }\r\n }\r\n if ($('body').hasClass('horizontal-menu')) {\r\n horizontalMenu.init();\r\n }\r\n})();","$(document).ready(function () {\r\n $(\".sub-menu__wrapper\").each(function () {\r\n var bgColor = $(this).data(\"background-color\");\r\n if (bgColor) {\r\n $(this).css({\r\n \"background-color\": bgColor,\r\n });\r\n $(this).find(\".submenu\").css({\r\n \"background-color\": bgColor,\r\n });\r\n $(this).find(\".sub-menu__navigation\").css({\r\n \"background-color\": bgColor,\r\n });\r\n }\r\n });\r\n});","function removeLabel(){\r\n\tsetTimeout(function () {\r\n\t\t$(\"a[title='JavaScript charts']\").hide();\r\n\t\tvar allshow = $('rect[fill=\"#e5e5e5\"]');\r\n\t\tfor(var i=0; iCompany\";\r\n for(var key in CreateList) {\r\n Header+=\"
    \" + CreateList[key].Value + \"
    \";\r\n }\r\n\r\n\t\t\tParent.find('.table').append('
    ' + Header + '
    ');\r\n\t\t\tfor(var key1 in data) {\r\n\t\t\t\tvar Item = data[key1],\r\n\t\t\t\t\tTemplate = \"\";\r\n\t\t\t\tfor(var val in Item) {\r\n\t\t\t\t\tvar content = \"\";\r\n\t\t\t\t\tif(val !== \"ID\") {\r\n\t\t\t\t\t\tif(Array.isArray(Item[val])) {\r\n\t\t\t\t\t\t\tcontent = Item[val][0].value;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tcontent = Item[val];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tTemplate += \"
    \" + content + \"
    \";\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tParent.find('.table').append('
    ' + Template + '
    ');\r\n\t\t\t}\r\n\r\n\t\t},\r\n\t\tRenderCarousel: function(data, Parent) {\r\n\t\t\t\r\n\t\t\tParent.find('.owl-carousel').remove();\r\n\t\t\tParent.find('.states_heading').find('.RB16').remove();\r\n\t\t\tParent.find('.states_heading').after('
    ');\r\n\t\t\tvar CreateList = window.jsonMappingData;\r\n\r\n\t\t\tfor(var key in CreateList) {\r\n\t\t\t\tParent.find('.owl-carousel').append('
    ' + CreateList[key].Value + '
    ');\r\n\t\t\t}\r\n\t\t\tvar Items = Parent.find('.owl-carousel').find('.article');\r\n\r\n\t\t\tfor(var i = 0; i < data.length; i++) {\r\n\t\t\t\tvar Item = data[i], index = i;\r\n\t\t\t\tParent.find('.states_heading').append('');\r\n\t\t\t\tfor(var key1 in Item) {\r\n\t\t\t\t\tif(Array.isArray(Item[key1])) {\r\n\t\t\t\t\t\tParent.find('.article[data-head=\"' +key1+ '\"]').append('
    ' +Item[key1][0].value+ '
    ');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.InitiateCarousel(Parent);\r\n\t\t\tthis.HeightManagement(Parent);\r\n\t\t\t\r\n\t\t},\r\n\t\tHeightManagement: function(Parent) {\r\n\t\t\tvar HeadingItems = Parent.find('.year_heading'),\r\n\t\t\t\tMaxHeadingHeight = 0;\r\n\r\n\t\t\tParent.find('.states_heading .RB16').each(function(key){\r\n\t\t\t\tvar Height = $(this).height(),\r\n\t\t\t\t\tItem = [];\r\n\r\n\t\t\t\t\t$('.article').each(function() {\r\n\t\t\t\t\t\tvar CurrentItem = $(this).find('.R16')[key];\r\n\t\t\t\t\t\tItem.push(CurrentItem);\r\n\t\t\t\t\t});\r\n\r\n\r\n\t\t\t\tfor(var i = 0; i < Item.length; i++) {\r\n\t\t\t\t\t$(Item[i]).height(Height);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t// HeadingItems.height(0);\r\n\t\t\tHeadingItems.each(function() {\r\n\t\t\t\tvar thisHeight = $(this).height();\r\n\t\t\t\tif(thisHeight > MaxHeadingHeight) {\r\n\t\t\t\t\tMaxHeadingHeight = thisHeight;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t$(HeadingItems).find('span').height(MaxHeadingHeight);\r\n\t\t},\r\n\t\tInitiateCarousel: function(Parent) {\r\n\r\n\t\t\t\r\n\t\t\tParent.find('.owl-carousel').owlCarousel({\r\n loop:true,\r\n margin:0,\r\n merge:true,\r\n nav:false,\r\n\t\t\t slideBy: 4, \r\n responsive:{\r\n 0:{\r\n items:4\r\n },\r\n 678:{\r\n items:2\r\n },\r\n 320:{\r\n items:2\r\n },\r\n 480:{\r\n items:2\r\n },\r\n 768: {\r\n \titems:2\r\n },\r\n 1025:{\r\n items:4\r\n }\r\n }\r\n });\r\n },\r\n ModalEvents: function() {\r\n \t$(document).on('click', 'a[data-toggle=\"modal-comparefinancialresults\"]', function(e) {\r\n \t\te.preventDefault();\r\n \t\t$('#modal-comparefinancialresults').show();\r\n \t});\r\n \t$(document).on('click', '#modal-comparefinancialresults .table_close', function(e) {\r\n \t\te.preventDefault();\r\n \t\t$(this).parents('.ID-responsive-table-modal').hide();\r\n \t});\r\n \t$(document).on('click', '.ID-responsive-table-modal', function(e) {\r\n \t\t\tif($(e.target).parents('.container').length > 0 || $(e.target).hasClass('.container')) {\r\n \t\t\t\treturn false;\r\n \t\t\t} else {\r\n \t\t\t\t$(this).hide();\r\n \t\t\t}\r\n \t});\r\n },\r\n SortingModal: function(id) {\r\n \tvar self = this;\r\n\r\n \t$(document).on('click','.sort-modal', function(e) {\r\n \t\te.preventDefault();\r\n \t\tvar MainData = window.ResponsiveJSON,\r\n \t\t\tIndex = $(this).parents('.tableHead').index(),\r\n \t\t\tItems = [],\r\n \t\t\ttype = $(this).attr('type'),\r\n \t\t\tCategory = $(this).attr('category'),\r\n \t\t\tModalData = window.ResponsiveModalJSON,\r\n \t\t\tUpdatedJson = [],\r\n \t\t\tHeadingText = $(this).parents('.tableHead').attr('data-head');\r\n\r\n\r\n \t\t$('#modal-comparefinancialresults .tableRow').each(function() {\r\n \t\t\tif($(this).find('.tableCell').length > 0) {\r\n\t \t\t\tvar Text = $($(this).find('.tableCell')[Index]).text();\r\n\t \t\t\tif(HeadingText === 'Company') {\r\n\t\t \t\t\tItems.push(Text);\r\n\t\t \t\t} else {\r\n\t\t \t\t\tItems.push(parseFloat(Text));\r\n\t\t \t\t}\r\n\t \t\t\t\r\n\t \t\t}\r\n \t\t});\r\n\r\n \t\tif(HeadingText === 'Company') {\r\n\t\t\t\t\tif(type === \"descending\") {\r\n\t\t\t\t\t\tItems.sort().reverse();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tItems.sort();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tfor(var key in Items) {\r\n\t\t\t\t\t\tfor(var json in ModalData) {\r\n\t\t\t\t\t\t\tif(Items[key] == ModalData[json].Company) {\r\n\t\t\t\t\t\t\t\tUpdatedJson.push(ModalData[json]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif(type === \"descending\") {\r\n\t\t\t\t\t\tItems.sort(function(a, b){\r\n\t\t\t\t\t\t return b - a;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tItems.sort(function(a, b){\r\n\t\t\t\t\t\t return a - b;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tfor(var key1 in Items) {\r\n\t\t\t\t\t\tfor(var json1 in ModalData) {\r\n\t\t\t\t\t\t\tif(Items[key1] == ModalData[json1][HeadingText][0].value) {\r\n\t\t\t\t\t\t\t\tUpdatedJson.push(ModalData[json1]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\twindow.ResponsiveModalJSON = UpdatedJson;\r\n\r\n\t\t\t\tself.RenderModal(window.ResponsiveModalJSON, id);\r\n\t\t\t\t$('.sort-modal').removeClass('active');\r\n \t\t$($('#modal-comparefinancialresults .tableRow .tableHead')[Index]).find('.sort-modal[type='+ type +']').addClass('active');\r\n \t});\r\n },\r\n SortingFunctionality: function(id) {\r\n \t//Sorting Functionality\r\n \tvar self = this;\r\n\t\t\t$(document).on('click', '.year_heading .sort', function(e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tvar Parent = $(this).parents('.article'),\r\n\t\t\t\t\tValues = Parent.find('.R16'),\r\n\t\t\t\t\tContent = Parent.attr('data-head'),\r\n\t\t\t\t\ttype = $(this).attr('type'),\r\n\t\t\t\t\tcategory = $(this).attr('category'),\r\n\t\t\t\t\tItems = [],\r\n\t\t\t\t\tCarouselControl = $(this).parents('.ID-Responsive-Table').find('.owl-controls').find('.owl-dots'),\r\n\t\t\t\t\tControlIndex = CarouselControl.find('.active').index(),\r\n\t\t\t\t\tCarouselStyles = $('#comparefinancialresults .owl-stage').attr('style'),\r\n\t\t\t\t\tOwlItems = $('#comparefinancialresults .owl-stage').find('.owl-item'),\r\n\t\t\t\t\tClonedItems = [],\r\n\t\t\t\t\tActiveItems = [];\r\n\r\n\t\t\t\tOwlItems.each(function() {\r\n\t\t\t\t\tif($(this).hasClass('cloned')) {\r\n\t\t\t\t\t\tClonedItems.push($(this).index());\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif($(this).hasClass('active')) {\r\n\t\t\t\t\t\tActiveItems.push($(this).index());\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\t$('.year_heading .sort').removeClass('active');\r\n\t\t\t\t$(this).addClass('active');\r\n\r\n\t\t\t\tif(category === 'companies') {\r\n\t\t\t\t\tvar CompanyNames = $(this).parents('.states_heading').find('.RB16');\r\n\r\n\t\t\t\t\tCompanyNames.each(function() {\r\n\t\t\t\t\t\tItems.push($(this).text());\r\n\t\t\t\t\t});\r\n\t\t\t\t\tif(type === \"descending\") {\r\n\t\t\t\t\t\tItems.sort().reverse();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tItems.sort();\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tValues.each(function() {\r\n\t\t\t\t\t\tif($(this).length > 0) {\r\n\t\t\t\t\t\t\tItems.push(parseFloat($(this).text()));\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\tif(type === \"descending\") {\r\n\t\t\t\t\t\tItems.sort(function(a, b){\r\n\t\t\t\t\t\t return b - a;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tItems.sort(function(a, b){\r\n\t\t\t\t\t\t return a - b;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tself.RecreateObject(Content, Items, window.ResponsiveJSON, id, category);\r\n\t\t\t\t\r\n\t\t\t\t$('#comparefinancialresults .owl-stage').attr('style', CarouselStyles);\r\n\t\t\t\t$('#comparefinancialresults .owl-stage .owl-item').removeClass('cloned');\r\n\t\t\t\t$('#comparefinancialresults .owl-stage .owl-item').removeClass('active');\r\n\t\t\t\tfor(var key in ClonedItems) {\r\n\t\t\t\t\t$($('#comparefinancialresults .owl-stage .owl-item')[ClonedItems[key]]).addClass('cloned');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfor(var key1 in ActiveItems) {\r\n\t\t\t\t\t$($('#comparefinancialresults .owl-stage .owl-item')[ActiveItems[key1]]).addClass('active');\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$('#comparefinancialresults .owl-dot').removeClass('active');\r\n\t\t\t\t$($('#comparefinancialresults .owl-dot')[ControlIndex]).addClass('active');\r\n\t\t\t\t$('#comparefinancialresults .article[data-head=\"' + Content + '\"] .sort[type=\"' + type + '\"]').addClass('active');\r\n\t\t\t});\r\n },\r\n RecreateObject: function(Content, SortedItem, MainArray, id, category, modal) {\r\n \tvar self = this, RecreatedArray = [];\r\n \t// id.find('.RB16').remove();\r\n \tif(category === 'companies') {\r\n \t\tfor(var i = 0; i < SortedItem.length; i++) {\r\n\t \t\tfor(var key in MainArray) {\r\n\t \t\t\tvar Name = MainArray[key].Company;\r\n\t \t\t\tif(Name === SortedItem[i]) {\r\n\t \t\t\t\tRecreatedArray.push(MainArray[key]);\r\n\t \t\t\t}\r\n\t \t\t}\r\n\t \t}\r\n \t} else {\r\n\t \tfor(var j = 0; j < SortedItem.length; j++) {\r\n\t \t\tfor(var key1 in MainArray) {\r\n\t \t\t\tvar _Object = MainArray[key1];\r\n\t \t\t\tif(_Object[Content][0].value == SortedItem[j]) {\r\n\t \t\t\t\tRecreatedArray.push(_Object);\r\n\t \t\t\t}\r\n\t \t\t}\r\n\t \t}\r\n\t \tfor(var key2 in MainArray) {\r\n \t\t\tvar _Object = MainArray[key2];\r\n \t\t\tif(_Object[Content][0].value.length === 0) {\r\n \t\t\t\tRecreatedArray.push(_Object);\r\n \t\t\t}\r\n \t\t}\r\n\t }\r\n \t// $owl.trigger('destroy.owl.carousel');\r\n \t\r\n \tif(modal) {\r\n \t\twindow.ResponsiveModalJSON = RecreatedArray;\r\n \t\tself.RenderModal(window.ResponsiveModalJSON, id);\r\n \t} else {\r\n \t\twindow.ResponsiveJSON = RecreatedArray;\r\n\t \tself.RenderCarousel(window.ResponsiveJSON, id);\r\n\t }\r\n },\r\n\t\tinit: function(data, id) {\r\n\t\t\tvar self = this;\r\n\t\t\tself.GetAjaxData(data, id);\r\n\t\t\tself.ModalEvents();\r\n\t\t\tself.SortingFunctionality(id);\r\n\t\t\tself.SortingModal(id);\r\n\t\t\t$(window).resize(function() {\r\n\t\t\t\tself.HeightManagement(id);\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\tif($('#comparefinancialresults').length > 0) {\r\n\t\tif(window.jsonFinancialResultForCompare && Array.isArray(window.jsonFinancialResultForCompare) && window.jsonFinancialResultForCompare.length > 0) {\r\n\t\t\tResponsiveCompareTable.init(window.jsonFinancialResultForCompare, $('#comparefinancialresults'));\t\r\n\t\t} else {\r\n\t\t\tvar ErrorMessage = $('#hdnErrormessage').val();\r\n\t\t\tif(window.jsonFinancialResultForCompare.length === 0) {\r\n var ErrorMessage = $('#hdnInfomessage').val();\r\n }\r\n\t\t\t$('#comparefinancialresults').html('
    '+\r\n\t\t\t\t\t\t\t\t\t\t\t''+\r\n \t\t\t\t\t\t''+\r\n \t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\t\t\t''+\r\n \t\t\t\t\t\t'
    ')\r\n\t\t}\r\n\t}\r\n\t\r\n\r\n\t\r\n})();","(function () {\r\n\t// body...\r\n\t'use strict';\r\n\r\n\tvar ResponsiveFinancialTable = {\r\n\t\tLastItem: null,\r\n\t\tFirstItem: null,\r\n\t\tRenderCarousel: function(data, Parent) {\r\n\t\t\tParent.find('.owl-carousel').remove();\r\n\t\t\tParent.find('.states_heading').parent().append('
    ');\r\n\t\t\tvar self = this,\r\n\t\t\t\tHeader = data[0].Header,\r\n\t\t\t\tValues = data[0].Values,\r\n\t\t\t\tStatesHeading = Parent.find('.states_heading'),\r\n\t\t\t\tCarousel = Parent.find('.owl-carousel');\r\n\r\n\t\t\tself.FirstItem = data[0].Header[1];\r\n\t\t\tself.LastItem = data[0].Header[data[0].Header.length - 1];\r\n\t\t\tParent.find('.states_heading').empty();\r\n\t\t\tfor(var key in Header) {\r\n\t\t\t\tif(key === 0) {\r\n\t\t\t\t\tStatesHeading.append('
    ' + Header[key] + '
    ');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tCarousel.append('
    ' + Header[key] + '
    ');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tfor(var key1 in Values) {\r\n\t\t\t\tvar CurrentValue = Values[key1];\r\n\t\t\t\tfor(var item in CurrentValue) {\r\n\t\t\t\t\tif(item === 0) {\r\n\t\t\t\t\t\tStatesHeading.append('
    ' +CurrentValue[item]+ '
    ');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$(Parent.find('.article')[item-1]).append('
    ' +CurrentValue[item]+ '
    ');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tself.InitateCarousel(Parent);\r\n\t\t\tself.HeightManagement(Parent);\r\n\t\t\tself.ChangeStateEvents(Parent);\r\n\t\t},\r\n\t\tChangeStateEvents: function(Parent) {\r\n\t\t\tvar OwlNext = Parent.find('.owl-next'),\r\n\t\t\t\tOwlPrevious = Parent.find('.owl-previous'),\r\n\t\t\t\tself = this;\r\n\r\n\t\t\t$('.owl-prev').addClass('disabled');\r\n\t\t\t$(document).on('click','.owl-prev, .owl-next', function() {\r\n\t\t\t\tsetTimeout(function() {\r\n\t\t\t\t\tvar ActiveElements = Parent.find('.owl-item.active .year_heading'),\r\n\t\t\t\t\t\tActiveElementsTexts = [];\r\n\r\n\t\t\t\t\tActiveElements.each(function() {\r\n\t\t\t\t\t\tActiveElementsTexts.push($(this).text().trim());\r\n\t\t\t\t\t});\r\n\t\t\t\t\t$('.owl-prev, .owl-next').removeClass('disabled');\r\n\t\t\t\t\tif(self.FirstItem.trim() === ActiveElementsTexts[0]) {\r\n\t\t\t\t\t\t$('.owl-prev').addClass('disabled');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$('.owl-prev').removeClass('disabled');\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif(self.LastItem.trim() === ActiveElementsTexts[ActiveElementsTexts.length - 1]) {\r\n\t\t\t\t\t\t$('.owl-next').addClass('disabled');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$('.owl-next').removeClass('disabled');\r\n\t\t\t\t\t}\r\n\t\t\t\t}, 400);\r\n\t\t\t});\r\n \t\t},\r\n\t\tHeightManagement: function(Parent) {\r\n\t\t\tParent.find('.states_heading .RB16').each(function(key){\r\n\t\t\t\tvar Height = $(this).height(),\r\n\t\t\t\t\tItem = [];\r\n\r\n\t\t\t\t\t$('.article').each(function() {\r\n\t\t\t\t\t\tvar CurrentItem = $(this).find('.R16')[key];\r\n\t\t\t\t\t\tItem.push(CurrentItem);\r\n\t\t\t\t\t});\r\n\r\n\r\n\t\t\t\tfor(var i = 0; i < Item.length; i++) {\r\n\t\t\t\t\t$(Item[i]).height(Height);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t},\r\n\t\tRenderModal: function(data, Parent) {\r\n\t\t\tvar Header = data[0].Header,\r\n\t\t\t\tValues = data[0].Values,\r\n\t\t\t\tFinanceModal = $('#modal-financialresults'),\r\n\t\t\t\tModalTable = FinanceModal.find('.table');\r\n\r\n\t\t\tModalTable.append('
    ');\r\n\t\t\tfor(var key in Header) {\r\n\t\t\t\tModalTable.find('.tableRow').append('
    ' +Header[key]+ '
    ');\r\n\t\t\t}\r\n\r\n\t\t\tfor(var key1 in Values) {\r\n\t\t\t\tModalTable.append('
    ');\r\n\t\t\t\tvar CurrentValue = Values[key1];\r\n\t\t\t\tfor(var item in CurrentValue) {\r\n\t\t\t\t\tModalTable.find('.tableRow:last-child').append('
    ' +CurrentValue[item]+ '
    ');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t},\r\n\t\tInitateCarousel: function(Parent) {\r\n\t\t\tParent.find('.owl-carousel').owlCarousel({\r\n loop:true,\r\n merge:true,\r\n margin:0,\r\n nav:false,\r\n onDragged: function() {\r\n \t\tvar ActiveElements = Parent.find('.owl-item.active .year_heading'),\r\n\t\t\t\t\t\tActiveElementsTexts = [];\r\n\r\n\t\t\t\t\tActiveElements.each(function() {\r\n\t\t\t\t\t\tActiveElementsTexts.push($(this).text().trim());\r\n\t\t\t\t\t});\r\n\t\t\t\t\t$('.owl-prev, .owl-next').removeClass('disabled');\r\n\t\t\t\t\tif(self.FirstItem.trim() === ActiveElementsTexts[0]) {\r\n\t\t\t\t\t\t$('.owl-prev').addClass('disabled');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$('.owl-prev').removeClass('disabled');\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif(self.LastItem.trim() === ActiveElementsTexts[ActiveElementsTexts.length - 1]) {\r\n\t\t\t\t\t\t$('.owl-next').addClass('disabled');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$('.owl-next').removeClass('disabled');\r\n\t\t\t\t\t}\r\n },\r\n\t\t\t slideBy: 1, \r\n responsive:{\r\n 0:{\r\n items:3\r\n },\r\n 678:{\r\n items:3\r\n },\r\n 320:{\r\n items:2\r\n },\r\n 480:{\r\n items:2\r\n },\r\n 1000:{\r\n items:5\r\n }\r\n }\r\n });\r\n },\r\n ModalEvents: function() {\r\n \t$(document).on('click', 'a[data-toggle=\"modal-financialresults\"]', function(e) {\r\n \t\te.preventDefault();\r\n \t\t$('#modal-financialresults').show();\r\n \t});\r\n \t$(document).on('click', '#modal-financialresults .table_close', function(e) {\r\n \t\te.preventDefault();\r\n \t\t$(this).parents('.ID-responsive-table-modal').hide();\r\n \t});\r\n \t$(document).on('click', '.ID-responsive-table-modal', function(e) {\r\n \t\t\tif($(e.target).parents('.container').length > 0 || $(e.target).hasClass('.container')) {\r\n \t\t\t\treturn false;\r\n \t\t\t} else {\r\n \t\t\t\t$(this).hide();\r\n \t\t\t}\r\n \t});\r\n },\r\n RenderTable: function(data, Parent) {\r\n \t \tParent.find('.states_heading').parent().remove();\r\n\t\t \tParent.append('
    ');\r\n\t\t \tvar Wrapper = $('#financialresults .table'),\r\n\t\t \t\tHeader = data[0].Header,\r\n\t\t \t\tValues = data[0].Values;\r\n\r\n\t\t \tWrapper.append('
    ');\r\n\t\t\t\r\n\t\t\tfor(var key in Header) {\r\n\t\t\t\tWrapper.find('.tableRow:last-child').append('
    ' +Header[key]+ '
    ');\r\n\t\t\t}\r\n\r\n\t\t\tfor(var keyItem in Values) {\r\n\t\t\t\tvar Items = Values[keyItem];\r\n\t\t\t\tWrapper.append('
    ');\r\n\t\t\t\tfor(var item in Items) {\r\n\t\t\t\t\tWrapper.find('.tableRow:last-child').append('
    ' +Items[item]+ '
    ');\r\n\t\t\t\t}\r\n\t\t\t}\r\n },\r\n\t\tinit: function(data, Parent) {\r\n\t\t\tvar self = this,\r\n\t\t\t\twindowSize = $( document ).width();\r\n\r\n\t\t\tif(windowSize > 736) {\r\n\t\t\t\tself.RenderTable(data, Parent);\r\n\t\t\t} else {\r\n\t\t\t\tself.RenderCarousel(data, Parent);\r\n\t\t\t}\r\n\t\t\tself.RenderModal(data, Parent);\r\n\t\t\tself.ModalEvents();\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tif ($('#financialresults').length > 0) {\r\n if (window.jsonResultFinancial && Array.isArray(window.jsonResultFinancial)) {\r\n if (window.jsonResultFinancial.length > 0) {\r\n ResponsiveFinancialTable.init(window.jsonResultFinancial, $('#financialresults'));\r\n }\r\n } else {\r\n var ErrorMessage = $('#hdnErrormessage').val();\r\n if (Array.isArray(window.jsonResultFinancial)) {\r\n if (window.jsonResultFinancial.length === 0) {\r\n var ErrorMessage = $('#hdnInfomessage').val();\r\n }\r\n }\r\n $('#financialresults').html('
    ' +\r\n \t\t\t\t\t\t\t\t '' + \r\n \t\t\t\t\t\t\t\t \t'' + \r\n \t\t\t\t\t\t\t\t \t'' + \r\n \t\t\t\t\t\t\t\t \t'' + \r\n \t\t\t\t\t\t\t'
    ');\r\n $('.footnote').remove();\r\n }\r\n }\r\n\r\n})();","(function (argument) {\r\n\tvar MergeAcquistion = {\r\n\t\tCurrentArray: [],\r\n\t\tLargeValue: [],\r\n\t\tMonthNames: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\r\n\t\tHeadingNames: ['Month', 'Acquirer', 'Target', 'TargetSector', 'TargetLocation', 'Detail', 'Price'],\r\n\t\tRenderDesktopVersion: function(data, Parent) {\r\n\t\t\tParent.find('tbody.visible-lg').remove();\r\n\t\t\tParent.append('');\r\n\r\n\t\t\tvar Wrapper = Parent.find('tbody.visible-lg');\r\n\r\n\t\t\tfor(var key in data) {\r\n\t\t\t\tWrapper.append('');\t\t\t\t\r\n\t\t\t\tWrapper.find('tr:last-child').append('' +this.MonthNames[data[key].Month - 1]+ '');\r\n\t\t\t\tWrapper.find('tr:last-child').append(''+data[key].Acquirer+'');\r\n\t\t\t\tWrapper.find('tr:last-child').append(''+data[key].Target+'');\r\n\t\t\t\tWrapper.find('tr:last-child').append(''+data[key].TargetSector+'');\r\n\t\t\t\tWrapper.find('tr:last-child').append(''+data[key].TargetLocation+'');\r\n\t\t\t\tWrapper.find('tr:last-child').append(''+data[key].Detail+'');\r\n\t\t\t\tif(data[key].Price) {\r\n\t\t\t\t\tvar Price = data[key].Price;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tPrice = '-';\r\n\t\t\t\t}\r\n\t\t\t\tWrapper.find('tr:last-child').append(''+Price+'');\r\n\t\t\t}\r\n\r\n\t\t},\r\n\t\tRenderMobileVersion: function(data, Parent) {\r\n\t\t\tParent.find('tbody.visible-xs').remove();\r\n\t\t\tParent.append('');\r\n\r\n\t\t\tvar Wrapper = Parent.find('tbody.visible-xs'),\r\n\t\t\t\tHeadings = this.HeadingNames;\r\n\r\n\r\n\t\t\tfor(var key in data) {\r\n\t\t\t\tWrapper.append(''+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t'');\r\n\t\t\t\tfor(var j in Headings) {\r\n\t\t\t\t\tif(Headings[j] === 'Month') {\r\n\t\t\t\t\t\tWrapper.append(''+\r\n\t\t\t\t\t\t\t\t\t\t'' + Headings[j] + ''+\r\n\t\t\t\t\t\t\t\t\t\t'' + this.MonthNames[data[key][Headings[j]] - 1]+ ''+\r\n\t\t\t\t\t\t\t\t\t'');\r\n\t\t\t\t\t} else if (Headings[j] === 'Price') {\r\n\t\t\t\t\t\tvar Price = \"\";\r\n\t\t\t\t\t\tif(data[key][Headings[j]].length > 0) {\r\n\t\t\t\t\t\t\tPrice = data[key][Headings[j]];\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tPrice = '-';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tWrapper.append(''+\r\n\t\t\t\t\t\t\t\t\t\t'' + Headings[j] + ''+\r\n\t\t\t\t\t\t\t\t\t\t'' + Price + ''+\r\n\t\t\t\t\t\t\t\t\t'');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tWrapper.append(''+\r\n\t\t\t\t\t\t\t\t\t\t'' + Headings[j] + ''+\r\n\t\t\t\t\t\t\t\t\t\t'' + data[key][Headings[j]] + ''+\r\n\t\t\t\t\t\t\t\t\t'');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tWrapper.append(''+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t'');\r\n\t\t\t}\r\n\t\t},\r\n\t\tSortingEvent: function(data, Parent) {\r\n\t\t\tvar self = this;\r\n\t\t\t$(document).on('click','.sorting-buttons a', function(e){\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tvar Type = $(this).attr('type'),\r\n\t\t\t\t\tCategory = $(this).attr('category'),\r\n\t\t\t\t\tIndex = $(this).parents('th').index(),\r\n\t\t\t\t\tSortingArray = [],\r\n\t\t\t\t\tMyArray = self.CurrentArray,\r\n\t\t\t\t\tBody = Parent.find('tbody.visible-lg'),\r\n\t\t\t\t\tAppendToEndElements = [],\r\n\t\t\t\t\tSortedElements = [],\r\n\t\t\t\t\tSortingType = $(this).parents('.sorting-buttons').attr('deal');\r\n\t\t\t\t\r\n\t\t\t\t//Fetching Elements\r\n\t\t\t\tBody.find('tr').each(function(key) {\r\n\t\t\t\t\tvar Text = \"\";\r\n\t\t\t\t\tif(Category === 'month') {\r\n\t\t\t\t\t\tSortingArray.push(parseInt($($(this).find('td')[Index]).attr('month')));\r\n\t\t\t\t\t} else if (Category === 'number') {\r\n\t\t\t\t\t\tvar Num = $($(this).find('td')[Index]).text();\r\n\t\t\t\t\t\tif(Num !== '-') {\r\n\t\t\t\t\t\t\tSortingArray.push(parseFloat(Num));\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tAppendToEndElements.push(self.CurrentArray[key]);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} \r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tif($($(this).find('td')[Index]).text().includes(' 0) {\r\n\t\t\t\t\tvar NewArray = SortedElements.concat(AppendToEndElements);\r\n\t\t\t\t//}\r\n\t\t\t\t// var UniqueArray = [];\r\n\t\t\t\t// for(var k = 0; k < SortedElements.length; k++) {\r\n\t\t\t\t// \tif(!SortedElements.contains(SortedElements[k])) {\r\n\t\t\t\t// \t\tUniqueArray.push(SortedElements[k]);\r\n\t\t\t\t// \t}\r\n\t\t\t\t// }\r\n\t\t\t\tself.CurrentArray = [];\r\n\t\t\t\tself.CurrentArray = NewArray;\r\n\t\t\t\tself.RenderDesktopVersion(self.CurrentArray, $('.merge-acquistion'));\r\n\t\t\t\tself.RenderMobileVersion(self.CurrentArray, $('.merge-acquistion'));\r\n\t\t\t});\r\n\t\t},\r\n\t\tisSorted: function(arr) {\r\n\t\t var len = arr.length - 1;\r\n\t\t for(var i = 0; i < len; ++i) {\r\n\t\t if(arr[i] > arr[i+1]) {\r\n\t\t return false;\r\n\t\t }\r\n\t\t }\r\n\t\t return true;\r\n\t\t},\r\n\t\tisSortedReverse: function(arr) {\r\n\t\t var len = arr.length - 1;\r\n\t\t for(var i = 0; i < len; ++i) {\r\n\t\t if(arr[i] < arr[i+1]) {\r\n\t\t return false;\r\n\t\t }\r\n\t\t }\r\n\t\t return true;\r\n\t\t},\r\n\t\tFilterEvent: function(data, Parent) {\r\n\t\t\tvar InputValues = Parent.find('th').find('input'),\r\n\t\t\t\tself = this;\r\n\t\t\tif($(window).width() < 668) {\r\n\t\t\t\tInputValues = $('.merge-form-items input');\r\n\t\t\t}\r\n\t\t\tInputValues.on('keyup', function(e) {\r\n\t\t\t\tvar textFieldValue = $(this).val(),\r\n\t\t\t\t\tDealType = $(this).attr('deal'),\r\n\t\t\t\t\tIndex = $(this).parents('th').index(),\r\n\t\t\t\t\tBody = Parent.find('tbody.visible-lg'),\r\n\t\t\t\t\tregExp = new RegExp(textFieldValue, \"i\"),\r\n\t\t\t\t\tItemArray = [],\r\n\t\t\t\t\tFilteredArray = [],\r\n\t\t\t\t\tObj = {},\r\n\t\t\t\t\tStartField = Parent.find('.range-field')[0].value,\r\n\t\t\t\t\tEndField = Parent.find('.range-field')[1].value,\r\n\t\t\t\t\t$this = $(this);\r\n\r\n\r\n\t\t\t\tif($(window).width() < 668) {\r\n\t\t\t\t\tIndex = $(this).parents('.forms').index();\r\n\t\t\t\t\tStartField = $('.merge-form-items .range-field.start').val();\r\n\t\t\t\t\tEndField = $('.merge-form-items .range-field.end').val();\r\n\t\t\t\t}\r\n\t\t\t\tInputValues.each(function(key) {\r\n\t\t\t\t\tvar DealType = $(this).attr('deal');\r\n\t\t\t\t\tif($(this).val()) {\r\n\t\t\t\t\t\tif(DealType !== 'Price') {\r\n\t\t\t\t\t\t\tObj[DealType] = $(this).val();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tvar Start, End;\r\n\t\t\t\t\t\t\tif(StartField) {\r\n\t\t\t\t\t\t\t\tStart = parseFloat(StartField);\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tStart = 0;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif(EndField) {\r\n\t\t\t\t\t\t\t\tEnd = parseFloat(EndField);\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tEnd = null;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tObj[DealType] = {\r\n\t\t\t\t\t\t\t\tStart : Start,\r\n\t\t\t\t\t\t\t\tEnd : End\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t// Obj[DealType]['End'] = \r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\t// Body.find('tr').each(function(key) {\r\n\t\t\t\t// \tItemArray.push($($(this).find('td')[Index]).text());\r\n\t\t\t\t// });\r\n\r\n\t\t\t\t//for(var i in ItemArray) {\r\n\t\t\t\t\t// if(regExp.test(ItemArray[i])) {\r\n\t\t\t\t\t// \tfor(var j = 0; j < window.jsonMergeAcquistion.length; j++) {\r\n\t\t\t\t\t// \t\tif(ItemArray[i] == window.jsonMergeAcquistion[j][DealType]) {\r\n\t\t\t\t\t// \t\t\tFilteredArray.push(window.jsonMergeAcquistion[j]);\r\n\t\t\t\t\t// \t\t}\r\n\t\t\t\t\t// \t}\r\n\t\t\t\t\t// }\r\n\t\t\t\t//}\r\n\t\t\t\tif(Object.keys(Obj).length > 0) {\r\n\t\t\t\t\tfor(var i in window.jsonMergeAcquistion) {\r\n\t\t\t\t\t\tvar count = 0;\r\n\t\t\t\t\t\tfor(var j in Obj) {\r\n\t\t\t\t\t\t\tvar text = \"\";\r\n\t\t\t\t\t\t\tif(j === 'Price') {\r\n\t\t\t\t\t\t\t\tvar Price = parseFloat(window.jsonMergeAcquistion[i][j]);\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tif(Obj[j]['End'] != null) {\r\n\t\t\t\t\t\t\t\t\tif((Price >= Obj[j]['Start']) && (Price <= Obj[j]['End'])) {\r\n\t\t\t\t\t\t\t\t\t\tcount++;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\tif(Price >= Obj[j]['Start']) {\r\n\t\t\t\t\t\t\t\t\t\tcount++;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t} else if (j === 'Month') {\r\n\t\t\t\t\t\t\t\tvar MonthValue = window.jsonMergeAcquistion[i][j] - 1;\r\n\t\t\t\t\t\t\t\tif(self.MonthNames[MonthValue].toLowerCase().includes(Obj[j].toLowerCase())) {\r\n\t\t\t\t\t\t\t\t\tcount++;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tif(window.jsonMergeAcquistion[i][j].includes(' parseFloat(ThresholdValue)) {\r\n\t\t\t\t\t\t\t\tPriceItem.push(parseFloat(self.CurrentArray[i].Price));\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tPriceItem.sort(function(a, b){\r\n\t\t\t\t\t return b - a;\r\n\t\t\t\t\t});\r\n\t\t\t\t\tfor(var ii = 0; ii < PriceItem.length; ii++) {\r\n\t\t\t\t\t\tfor(var j= 0; j < self.CurrentArray.length; j++) {\r\n\t\t\t\t\t\t\tif(self.CurrentArray[j].Price == PriceItem[ii]) {\r\n\t\t\t\t\t\t\t\tItems.push(self.CurrentArray[j]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tself.RenderDesktopVersion(Items, $('.merge-acquistion'));\r\n\t\t\t\t\tself.RenderMobileVersion(Items, $('.merge-acquistion'));\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$(this).toggleClass('active');\r\n\t\t\t})\r\n\t\t},\r\n\t\tautoSuggest: function(data) {\r\n\t\t\tvar haystackMonth = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"];\r\n\r\n\t\t\t\t$('tr.visible-lg input[deal=\"Month\"]').suggest(this.MonthNames);\r\n\r\n\t\t\t\tvar haystackAcquirer = [], haystackTarget = [], haystackTargetSector = [], haystackTargetLocation = [];\r\n\t\t\t\tfor(var i = 0; i < data.length; i++) {\r\n\t\t\t\t\tvar item = data[i];\r\n\t\t\t\t\t\r\n\t\t\t\t\tfor(var key in item) {\r\n\t\t\t\t\t\tvar Text = \"\";\r\n\t\t\t\t\t\tif(item[key].indexOf(' 667) {\r\n\t\t\t\tthis.autoSuggest(data);\r\n\t\t\t\tthis.keyPressEvent();\r\n\t\t\t}\r\n\t\t\t\r\n\t\t}\r\n\t}\r\n\r\n\tif($('.merge-acquistion').length > 0) {\r\n\t\tif(window.jsonMergeAcquistion && Array.isArray(window.jsonMergeAcquistion) && window.jsonMergeAcquistion.length > 0) {\r\n\t\t\tMergeAcquistion.init(window.jsonMergeAcquistion, $('.merge-acquistion'));\r\n\t\t} else {\r\n\t\t\tvar ErrorMessage = $('#hdnErrormessage').val();\r\n\t\t\tif(window.jsonMergeAcquistion) {\r\n\t\t\t\tvar isQueryString = checkQueryString();\r\n\t\t\t\tif(window.jsonMergeAcquistion.length === 0) {\r\n\t\t\t\t\tif(isQueryString) {\r\n\t var ErrorMessage = $('#hdnInfomessage').val();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t }\r\n\t } else {\r\n\t \tvar ErrorMessage = $('#hdnErrormessage').val();\r\n\t }\r\n\t\t\t$('.id-merges-acquisition .graphs-container').prepend('
    '+\r\n\t\t\t\t\t\t\t\t\t\t\t''+\r\n \t\t\t\t\t\t''+\r\n \t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\t\t\t''+\r\n \t\t\t\t\t\t'
    ');\r\n\t\t}\r\n\t}\r\n})();\r\nif (!String.prototype.includes) {\r\n String.prototype.includes = function() {\r\n 'use strict';\r\n return String.prototype.indexOf.apply(this, arguments) !== -1;\r\n };\r\n }\r\n\r\n function checkQueryString() {\r\n \tvar url = window.location.href;\r\n\tif(url.indexOf('?year=') !== -1)\r\n\t return true;\r\n\telse if(url.indexOf('&year=') !== -1)\r\n\t return true;\r\n\treturn false\r\n }\r\n $(document).on('change', '.idYearSelect', function() {\r\n\tvar Href = $(this).attr('data-href'),\r\n\t\tvalue= $(this).find('.selectivity-single-selected-item').attr('data-item-id'),\r\n\t\tnewUrl = window.location.href.split('?')[0].concat(\"?year=\"+value);\r\n\r\n\r\n\twindow.location =newUrl;\t\t\t\r\n\r\n});","(function () {\r\n\t// body...\r\n\t'use strict';\r\n\r\n\tvar ResponsiveFinancialTable = {\r\n\t\tRenderTable:function(data, Parent) {\r\n\t\t\t var Tables = $('#quarterlyresults, #modal-quarterlyresults'),\r\n\t\t\t \tQuaterlyDataHeader = data[0].QuaterlyDataHeader,\r\n\t\t\t \tQuaterlyData = data[0].QuaterlyData,\r\n\t\t\t \tQuaterlyResultHeader = data[0].QuaterlyResultHeader,\r\n\t\t\t \tQuaterlyResult= data[0].QuaterlyResultData[0];\r\n\r\n\t\t\t \t$('#quarterlyresults').find('.states_heading').parent().remove();\r\n\t\t\t \t$('#quarterlyresults').append('
    ');\r\n\t\t\t \tvar Wrapper = $('#quarterlyresults .table, #modal-quarterlyresults .table');\r\n\r\n\t\t\t \tWrapper.append('
    ');\r\n\t\t\t\tfor(var key in QuaterlyDataHeader) {\r\n\t\t\t\t \tWrapper.find('.tableRow:last-child').append('
    ' +QuaterlyDataHeader[key]+ '
    ');\r\n\t\t\t \t}\r\n\t\t \t\t\r\n\t\t \t\t\r\n\t\t\t\tfor(var key1 in QuaterlyData) {\r\n\t\t\t\t\tWrapper.append('
    ');\r\n\t\t\t\t\tvar Content = QuaterlyData[key1];\r\n\t\t\t\t\tfor(var item in Content) {\r\n\t\t\t\t\t \tWrapper.find('.tableRow:last-child').append('
    ' +Content[item]+ '
    ');\r\n\t\t\t\t\t}\r\n\t\t\t \t}\r\n\r\n\t\t\t \tWrapper.append('
    ');\r\n\t\t\t\tfor(var key2 in QuaterlyResultHeader) {\r\n\t\t\t\t \tWrapper.find('.tableRow:last-child').append('
    ' +QuaterlyResultHeader[key2]+ '
    ');\r\n\t\t\t \t}\r\n\r\n\t\t\t \tWrapper.append('
    ');\r\n\t\t\t\tfor(var key3 in QuaterlyResult) {\r\n\t\t\t\t \tWrapper.find('.tableRow:last-child').append('
    ' +QuaterlyResult[key3]+ '
    ');\r\n\t\t\t \t}\r\n\t\t\t \r\n\t\t},\r\n ModalEvents: function() {\r\n \t$(document).on('click', 'a[data-toggle=\"modal-quarterlyresults\"]', function(e) {\r\n \t\te.preventDefault();\r\n \t\t$('#modal-quarterlyresults').show();\r\n \t});\r\n \t$(document).on('click', '#modal-quarterlyresults .table_close', function(e) {\r\n \t\te.preventDefault();\r\n \t\t$(this).parents('.ID-responsive-table-modal').hide();\r\n \t});\r\n \t$(document).on('click', '.ID-responsive-table-modal', function(e) {\r\n \t\t\tif($(e.target).parents('.container').length > 0 || $(e.target).hasClass('.container')) {\r\n \t\t\t\treturn false;\r\n \t\t\t} else {\r\n \t\t\t\t$(this).hide();\r\n \t\t\t}\r\n \t});\r\n },\r\n\t\tinit: function(data, Parent) {\r\n\t\t\tvar self = this;\r\n\t\t\tself.RenderTable(data, Parent);\r\n\t\t\tself.ModalEvents();\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tif($('#quarterlyresults').length > 0) {\r\n\t\tif(window.jsonResultQuarterly && Array.isArray(window.jsonResultQuarterly)) {\r\n\t\t\tif(window.jsonResultQuarterly.length > 0) {\r\n\t\t\t\tResponsiveFinancialTable.init(window.jsonResultQuarterly, $('#quarterlyresults'));\t\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tvar ErrorMessage = $('#hdnErrormessage').val();\r\n\t\t\tif(Array.isArray(window.jsonResultQuarterly)) {\r\n\t\t\t\tif(window.jsonResultQuarterly.length === 0) {\r\n\t var ErrorMessage = $('#hdnInfomessage').val();\r\n\t }\r\n\t }\r\n\t\t\t$('#quarterlyresults').html('
    '+\r\n\t\t\t\t\t\t\t\t\t\t\t''+\r\n \t\t\t\t\t\t''+\r\n \t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\t\t\t''+\r\n \t\t\t\t\t\t'
    ')\r\n\t\t}\r\n\t}\r\n})();","(function () {\r\n\t// body...\r\n\t'use strict';\r\n\r\n\tvar ResponsiveTable = {\r\n\t\tGetAjaxData: function(data, id) {\r\n\t\t\tvar self = this;\r\n\t\t\tif(data) {\r\n\t\t\t\twindow.ResponsiveJSON = data;\r\n\t\t\t\twindow.ResponsiveModalJSON = data;\r\n\t\t\t \tself.RenderCarousel(data, id);\r\n\t\t\t \tself.RenderModal(data, id);\r\n\t\t\t\t//} \r\n\t\t\t}\r\n\t\t},\r\n\t\tRenderModal: function(data, id) {\r\n\t\t\tvar ModalId = $(id).attr('data-modal'),\r\n\t\t\t\tParent = $('#' + ModalId),\r\n\t\t\t\tHeaderData = data[0],\r\n\t\t\t\tHeader = \"\",\r\n\t\t\t\tcategory = \"\",\r\n\t\t\t\tCreateList = window.jsonMappingData;\r\n\r\n\t\t\t\r\n\t\t\tParent.find('.table').empty();\r\n\t\t\tvar Header = \"
    \";\r\n\t\t\tfor(var key in CreateList) {\r\n\t\t\t\t\tHeader+=\"
    \" + CreateList[key].Value + \"
    \";\r\n\t\t\t}\r\n\t\t\tParent.find('.table').append('
    ' + Header + '
    ');\r\n\t\t\tfor(var key1 in data) {\r\n\t\t\t\tvar Item = data[key1],\r\n\t\t\t\t\tTemplate = \"\";\r\n\t\t\t\tfor(var val in Item) {\r\n\t\t\t\t\tvar content = \"\";\r\n\t\t\t\t\tif(val !== \"ID\") {\r\n\t\t\t\t\t\tif(val !== \"CompanyPageUrl\") {\r\n\t\t\t\t\t\t\tif(Array.isArray(Item[val])) {\r\n\t\t\t\t\t\t\t\tcontent = Item[val][0].value;\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tcontent = Item[val];\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tTemplate += \"
    \" + content + \"
    \";\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tParent.find('.table').append('
    ' + Template + '
    ');\r\n\t\t\t}\r\n\r\n\t\t},\r\n\t\tRenderCarousel: function(data, Parent) {\r\n\t\t\t\r\n\t\t\tParent.find('.owl-carousel').remove();\r\n\t\t\tParent.find('.states_heading').find('.RB16').remove();\r\n\t\t\tParent.find('.states_heading').after('
    ');\r\n\t\t\tvar CreateList = window.jsonMappingData;\r\n\r\n\t\t\tfor(var key in CreateList) {\r\n\t\t\t\tParent.find('.owl-carousel').append('
    ' + CreateList[key].Value + '
    ');\r\n\t\t\t}\r\n\t\t\tvar Items = Parent.find('.owl-carousel').find('.article');\r\n\r\n\t\t\tfor(var i = 0; i < data.length; i++) {\r\n\t\t\t\tvar Item = data[i], index = i;\r\n\t\t\t\tParent.find('.states_heading').append('');\r\n\t\t\t\tfor(var key1 in Item) {\r\n\t\t\t\t\tif(Array.isArray(Item[key1])) {\r\n\t\t\t\t\t\tParent.find('.article[data-head=\"' +key1+ '\"]').append('
    ' +Item[key1][0].value+ '
    ');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.InitiateCarousel(Parent);\r\n\t\t\tthis.HeightManagement(Parent);\r\n\t\t\t\r\n\t\t},\r\n\t\tHeightManagement: function(Parent) {\r\n\t\t\tvar HeadingItems = Parent.find('.year_heading'),\r\n\t\t\t\tMaxHeadingHeight = 0;\r\n\r\n\t\t\tParent.find('.R16').height('auto');\r\n\t\t\tParent.find('.states_heading .RB16').each(function(key){\r\n\t\t\t\tvar Height = $(this).height(),\r\n\t\t\t\t\tItem = [];\r\n\r\n\t\t\t\t\t$('.article').each(function() {\r\n\t\t\t\t\t\tvar CurrentItem = $(this).find('.R16')[key];\r\n\t\t\t\t\t\tItem.push(CurrentItem);\r\n\t\t\t\t\t});\r\n\r\n\r\n\t\t\t\tfor(var i = 0; i < Item.length; i++) {\r\n\t\t\t\t\t$(Item[i]).height(Height);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t// HeadingItems.height(0);\r\n\t\t\tHeadingItems.each(function() {\r\n\t\t\t\tvar thisHeight = $(this).height();\r\n\t\t\t\tif(thisHeight > MaxHeadingHeight) {\r\n\t\t\t\t\tMaxHeadingHeight = thisHeight;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t$(HeadingItems).find('span').height(MaxHeadingHeight);\r\n\t\t},\r\n\t\tInitiateCarousel: function(Parent) {\r\n\r\n\t\t\t\r\n\t\t\tParent.find('.owl-carousel').owlCarousel({\r\n loop:false,\r\n margin:0,\r\n merge:true,\r\n nav:false,\r\n\t\t\t slideBy: 4, \r\n responsive:{\r\n 0:{\r\n items:4\r\n },\r\n 678:{\r\n items:2\r\n },\r\n 320:{\r\n items:2\r\n },\r\n 480:{\r\n items:2\r\n },\r\n 1024:{\r\n items:3\r\n },\r\n 1025:{\r\n items:4\r\n }\r\n }\r\n });\r\n },\r\n ModalEvents: function() {\r\n \t$(document).on('click', 'a[data-toggle=\"modal-annualresults\"]', function(e) {\r\n \t\te.preventDefault();\r\n \t\t$('#modal-annualresults').show();\r\n \t});\r\n \t$(document).on('click', '#modal-annualresults .table_close', function(e) {\r\n \t\te.preventDefault();\r\n \t\t$(this).parents('.ID-responsive-table-modal').hide();\r\n \t});\r\n \t$(document).on('click', '.ID-responsive-table-modal', function(e) {\r\n \t\t\tif($(e.target).parents('.container').length > 0 || $(e.target).hasClass('.container')) {\r\n \t\t\t\treturn false;\r\n \t\t\t} else {\r\n \t\t\t\t$(this).hide();\r\n \t\t\t}\r\n \t});\r\n },\r\n SortingModal: function(id) {\r\n \tvar self = this;\r\n\r\n \t$(document).on('click','.sort-modal', function(e) {\r\n \t\te.preventDefault();\r\n \t\tvar MainData = window.ResponsiveJSON,\r\n \t\t\tIndex = $(this).parents('.tableHead').index(),\r\n \t\t\tItems = [],\r\n \t\t\ttype = $(this).attr('type'),\r\n \t\t\tCategory = $(this).attr('category'),\r\n \t\t\tModalData = window.ResponsiveModalJSON,\r\n \t\t\tUpdatedJson = [],\r\n \t\t\tHeadingText = $(this).parents('.tableHead').attr('data-head');\r\n\r\n\r\n \t\t$('#modal-annualresults .tableRow').each(function() {\r\n \t\t\tif($(this).find('.tableCell').length > 0) {\r\n\t \t\t\tvar Text = $($(this).find('.tableCell')[Index]).text();\r\n\t \t\t\tif(HeadingText === 'Company') {\r\n\t\t \t\t\tItems.push(Text);\r\n\t\t \t\t} else {\r\n\t\t \t\t\tItems.push(parseFloat(Text));\r\n\t\t \t\t}\r\n\t \t\t\t\r\n\t \t\t}\r\n \t\t});\r\n\r\n \t\tif(HeadingText === 'Company') {\r\n\t\t\t\t\tif(type === \"descending\") {\r\n\t\t\t\t\t\tItems.sort().reverse();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tItems.sort();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tfor(var key in Items) {\r\n\t\t\t\t\t\tfor(var json in ModalData) {\r\n\t\t\t\t\t\t\tif(Items[key] === ModalData[json].Company) {\r\n\t\t\t\t\t\t\t\tUpdatedJson.push(ModalData[json]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif(type === \"descending\") {\r\n\t\t\t\t\t\tItems.sort(function(a, b){\r\n\t\t\t\t\t\t return b - a;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tItems.sort(function(a, b){\r\n\t\t\t\t\t\t return a - b;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tfor(var key1 in Items) {\r\n\t\t\t\t\t\tfor(var json1 in ModalData) {\r\n\t\t\t\t\t\t\tif(Items[key1] == ModalData[json1][HeadingText][0].value) {\r\n\t\t\t\t\t\t\t\tUpdatedJson.push(ModalData[json1]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\twindow.ResponsiveModalJSON = UpdatedJson;\r\n\r\n\t\t\t\tself.RenderModal(window.ResponsiveModalJSON, id);\r\n\t\t\t\t$('.sort-modal').removeClass('active');\r\n \t\t$($('#modal-annualresults .tableRow .tableHead')[Index]).find('.sort-modal[type='+ type +']').addClass('active');\r\n \t});\r\n },\r\n SortingFunctionality: function(id) {\r\n \t//Sorting Functionality\r\n \tvar self = this;\r\n\t\t\t$(document).on('click', '.year_heading .sort', function(e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tvar Parent = $(this).parents('.article'),\r\n\t\t\t\t\tValues = Parent.find('.R16'),\r\n\t\t\t\t\tContent = Parent.attr('data-head'),\r\n\t\t\t\t\ttype = $(this).attr('type'),\r\n\t\t\t\t\tcategory = $(this).attr('category'),\r\n\t\t\t\t\tItems = [],\r\n\t\t\t\t\tCarouselControl = $(this).parents('.ID-Responsive-Table').find('.owl-controls').find('.owl-dots'),\r\n\t\t\t\t\tControlIndex = CarouselControl.find('.active').index(),\r\n\t\t\t\t\tCarouselStyles = $('#annualresults .owl-stage').attr('style'),\r\n\t\t\t\t\tOwlItems = $('#annualresults .owl-stage').find('.owl-item'),\r\n\t\t\t\t\tClonedItems = [],\r\n\t\t\t\t\tActiveItems = [];\r\n\r\n\t\t\t\t\tvar stylesArray = CarouselStyles.split(';');\r\n\t\t\t\t\tstylesArray.splice(1, 1);\r\n\t\t\t\t\tCarouselStyles = stylesArray.join(';');\r\n\r\n\t\t\t\tOwlItems.each(function() {\r\n\t\t\t\t\tif($(this).hasClass('cloned')) {\r\n\t\t\t\t\t\tClonedItems.push($(this).index());\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif($(this).hasClass('active')) {\r\n\t\t\t\t\t\tActiveItems.push($(this).index());\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\t$('.year_heading .sort').removeClass('active');\r\n\t\t\t\t$(this).addClass('active');\r\n\r\n\t\t\t\tif(category === 'companies') {\r\n\t\t\t\t\tvar CompanyNames = $(this).parents('.states_heading').find('.RB16');\r\n\r\n\t\t\t\t\tCompanyNames.each(function() {\r\n\t\t\t\t\t\tItems.push($(this).text());\r\n\t\t\t\t\t});\r\n\t\t\t\t\tif(type === \"descending\") {\r\n\t\t\t\t\t\tItems.sort().reverse();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tItems.sort();\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tValues.each(function() {\r\n\t\t\t\t\t\tif($(this).length > 0) {\r\n\t\t\t\t\t\t\tItems.push(parseFloat($(this).text()));\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\tif(type === \"descending\") {\r\n\t\t\t\t\t\tItems.sort(function(a, b){\r\n\t\t\t\t\t\t return b - a;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tItems.sort(function(a, b){\r\n\t\t\t\t\t\t return a - b;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tself.RecreateObject(Content, Items, window.ResponsiveJSON, id, category);\r\n\t\t\t\t\r\n\t\t\t\t$('#annualresults .owl-stage').attr('style', CarouselStyles);\r\n\t\t\t\t$('#annualresults .owl-stage .owl-item').removeClass('cloned');\r\n\t\t\t\t$('#annualresults .owl-stage .owl-item').removeClass('active');\r\n\t\t\t\tfor(var key in ClonedItems) {\r\n\t\t\t\t\t$($('#annualresults .owl-stage .owl-item')[ClonedItems[key]]).addClass('cloned');\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfor(var key1 in ActiveItems) {\r\n\t\t\t\t\t$($('#annualresults .owl-stage .owl-item')[ActiveItems[key1]]).addClass('active');\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$('#annualresults .owl-dot').removeClass('active');\r\n\t\t\t\t$($('#annualresults .owl-dot')[ControlIndex]).addClass('active');\r\n\t\t\t\t$('#annualresults .article[data-head=\"' + Content + '\"] .sort[type=\"' + type + '\"]').addClass('active');\r\n\t\t\t});\r\n },\r\n RecreateObject: function(Content, SortedItem, MainArray, id, category, modal) {\r\n \tvar self = this, RecreatedArray = [];\r\n \t// id.find('.RB16').remove();\r\n \tif(category === 'companies') {\r\n \t\tfor(var i = 0; i < SortedItem.length; i++) {\r\n\t \t\tfor(var key in MainArray) {\r\n\t \t\t\tvar Name = MainArray[key].Company;\r\n\t \t\t\tif(Name === SortedItem[i]) {\r\n\t \t\t\t\tRecreatedArray.push(MainArray[key]);\r\n\t \t\t\t}\r\n\t \t\t}\r\n\t \t}\r\n \t} else {\r\n\t \tfor(var j = 0; j < SortedItem.length; j++) {\r\n\t \t\tfor(var key1 in MainArray) {\r\n\t \t\t\tvar _Object1 = MainArray[key1];\r\n\t \t\t\tif(_Object1[Content][0].value == SortedItem[j]) {\r\n\t \t\t\t\tRecreatedArray.push(_Object1);\r\n\t \t\t\t}\r\n\t \t\t}\r\n\t \t}\r\n\t \tfor(var key2 in MainArray) {\r\n \t\t\tvar _Object2 = MainArray[key2];\r\n \t\t\tif(_Object2[Content][0].value.length === 0) {\r\n \t\t\t\tRecreatedArray.push(_Object2);\r\n \t\t\t}\r\n \t\t}\r\n\t }\r\n \t// $owl.trigger('destroy.owl.carousel');\r\n \t\r\n \tif(modal) {\r\n \t\twindow.ResponsiveModalJSON = RecreatedArray;\r\n \t\tself.RenderModal(window.ResponsiveModalJSON, id);\r\n \t} else {\r\n \t\twindow.ResponsiveJSON = RecreatedArray;\r\n\t \tself.RenderCarousel(window.ResponsiveJSON, id);\r\n\t }\r\n },\r\n\t\tinit: function(data, id) {\r\n\t\t\tvar self = this;\r\n\t\t\tself.GetAjaxData(data, id);\r\n\t\t\tself.ModalEvents();\r\n\t\t\tself.SortingFunctionality(id);\r\n\t\t\tself.SortingModal(id);\r\n\t\t\t$(window).resize(function() {\r\n\t\t\t\tself.HeightManagement(id);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tif($('#annualresults').length > 0) {\r\n\t\tif(window.jsonResultAnnual && Array.isArray(window.jsonResultAnnual)) {\r\n\t\t\tif(window.jsonResultAnnual.length > 0) {\r\n\t\t\t\tResponsiveTable.init(window.jsonResultAnnual, $('#annualresults'));\t\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tvar ErrorMessage = $('#hdnErrormessage').val();\r\n\t\t\tif(Array.isArray(window.jsonResultAnnual)) {\r\n\t\t\t\tif(window.jsonResultAnnual.length === 0) {\r\n\t var ErrorMessage = $('#hdnInfomessage').val();\r\n\t }\r\n\t }\r\n\t\t\t$('#annualresults').html('
    '+\r\n\t\t\t\t\t\t\t\t\t\t\t''+\r\n \t\t\t\t\t\t''+\r\n \t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\t\t\t''+\r\n \t\t\t\t\t\t'
    ');\r\n\t\t\t$('.footnote').remove();\r\n\t\t}\r\n\t}\r\n\t\r\n\r\n\t\r\n})();\r\n\r\n$(document).on('mouseenter', '.ID-Responsive-Table .R16, .ID-Responsive-Table .RB16', function() {\r\n\tvar Index = $(this).index();\r\n\t$($('.states_heading .RB16')[Index -1]).addClass('activate-hover');\r\n\t$('.owl-item').each(function() {\r\n\t\t$($(this).find('.R16')[Index -1]).addClass('activate-hover');\r\n\t})\r\n})\r\n\r\n$(document).on('mouseleave', '.ID-Responsive-Table .R16, .ID-Responsive-Table .RB16', function() {\r\n\t$('.R16, .RB16').removeClass('activate-hover');\r\n})","(function (argument) {\r\n\tvar LatestCasuality = {\r\n\t\tRenderLinks: function(data, Parent) {\r\n\t\t\tvar latestcasualties = data[0].latestcasualties,\r\n\t\t\t\tHtml = \"\";\r\n\r\n\t\t\tlatestcasualties.sort((a, b) => {\r\n\t\t\t\treturn new Date(b.date) - new Date(a.date); // descending\r\n\t\t\t})\r\n\r\n\t\t\tfor(var key in latestcasualties) {\r\n\t\t\t\t Html += '
  • ' + latestcasualties[key].title + ' - ' + latestcasualties[key].date + '
  • ';\r\n\t\t\t}\r\n\t\t\tParent.find('ul').append(Html);\r\n\t\t\t//
  • MCC Shanghai - 01.01.2017
  • \r\n\t\t},\r\n\t\tinit: function(data, parent) {\r\n\t\t\tthis.RenderLinks(data, parent);\r\n\t\t}\r\n\t}\r\n\r\n\tif($('.lloyd-related-links').length > 0) {\r\n\t\tif(typeof window.jsonLatestCasualties !== 'undefined' && typeof window.jsonLatestCasualties !== 'string'){\r\n\t\t\tLatestCasuality.init(window.jsonLatestCasualties, $('.lloyd-related-links'));\r\n\t\t}\r\n\t\telse{\r\n\t\t\t$('.lloyd-related-links').append('
    ');\r\n\t\t}\r\n\t}\r\n})();","(function (argument) {\r\n\tvar LatestILaw = {\r\n\t\tRenderLinks: function RenderLinks(data, Parent) {\r\n\t\t\tvar latestILawData = data,\r\n\t\t\t\tHtml = \"\";\r\n\r\n\t\t\tlatestILawData.sort((a, b) => {\r\n\t\t\t\treturn new Date(b.date) - new Date(a.date); // descending\r\n\t\t\t});\r\n\r\n\t\t\tfor (var key in latestILawData) {\r\n\t\t\t\tvar formattedDate = \"\";\r\n\t\t\t\tif (latestILawData[key].date) {\r\n\t\t\t\t\tvar dt = new Date(latestILawData[key].date)\r\n\t\t\t\t\tformattedDate = `${dt.getFullYear()}-${dt.getMonth()}-${dt.getDate()} ${dt.toLocaleTimeString()}`\r\n\t\t\t\t}\r\n\t\t\t\t Html += '
  • ' + latestILawData[key].title + ' - ' + formattedDate + '
  • ';\r\n\t\t\t}\r\n\t\t\tParent.find('ul').append(Html);\r\n\t\t},\r\n\t\tinit: function (data, parent) {\r\n\t\t\tthis.RenderLinks(data, parent);\r\n\t\t}\r\n\t};\r\n\r\n\tif ($('.lloyd-ilaw-related-links').length > 0) {\r\n\t\tif (typeof window.jsonLatestILawData !== 'undefined' && typeof window.jsonLatestILawData !== 'string') {\r\n\t\t\tLatestILaw.init(window.jsonLatestILawData, $('.lloyd-ilaw-related-links'));\r\n\t\t} else {\r\n\t\t\t$('.lloyd-ilaw-related-links').append('
    ');\r\n\t\t}\r\n\t}\r\n})();","(function () {\r\n\tvar CasualityDetail = {\r\n\t\tRenderTable: function(data, Parent) {\r\n\t\t\tvar Data;\r\n\t\t\t$.each(data[0], function(key, val){\r\n\t\t\t\tData = val;\r\n\t\t\t});\r\n\t\t\tParent.append(''+\r\n\t\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\t ''+((Data.Heading) ? Data.Heading : Data.Title)+''+\r\n\t\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t'');\r\n\t\t\tParent.append('');\r\n\t\t\tvar Body = Parent.find('tbody');\r\n\t\t\tfor(var key in Data) {\r\n\t\t\t\tif(key !== 'Heading') {\r\n\t\t\t\t\tif(Array.isArray(Data[key])) {\r\n\t\t\t\t\t\tif(key === 'Messages') {\r\n\t\t\t\t\t\t\tvar StrMsg = \"\",\r\n\t\t\t\t\t\t\t\tMessages = Data[key];\r\n\t\t\t\t\t\t\tfor(var i in Messages) {\r\n\t\t\t\t\t\t\t\tStrMsg += \"

    \" +(Messages[i].Date || Messages[i].date)+ \"\" +(Messages[i].Message || Messages[i].message)+ \"

    \";\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tBody.append(''+\r\n\t\t\t\t\t\t\t\t\t ''+key+''+\r\n\t\t\t\t\t\t\t\t\t ''+StrMsg+''+\r\n\t\t\t\t\t\t\t\t\t'');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tBody.append(''+\r\n\t\t\t\t\t\t\t\t\t ''+key+''+\r\n\t\t\t\t\t\t\t\t\t ''+Data[key]+''+\r\n\t\t\t\t\t\t\t\t\t'');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, \r\n\t\tinit: function(data, Parent) {\r\n\t\t\tif(data.length !== 0){\r\n\t\t\t\tthis.RenderTable(data, Parent);\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#casualty-detail-table').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t\r\n\t$(document).ready(function() {\r\n\t\tif($('#casualty-detail-table').length > 0) {\r\n\t\t\tif(typeof window.jsonCasualtyDetailData !== 'undefined' && typeof window.jsonCasualtyDetailData !== 'string'){\r\n\t\t\t\tCasualityDetail.init(window.jsonCasualtyDetailData, $('#casualty-detail-table'));\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#casualty-detail-table').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n})();","(function () {\r\n\tvar CasualityListing = {\r\n\t\tHeaderLinks: [],\r\n\t\tJumpToArray: [],\r\n\t\tDesktopVersion: function(data, Parent) {\r\n\t\t\t//Header\r\n\t\t\tParent.append('');\r\n\r\n\t\t\tvar Header = Parent.find('thead.table_head'),\r\n\t\t\t\tHeaderItems = this.HeaderLinks,\r\n\t\t\t\tself = this;\r\n\t\t\tself.JumpToArray = [];\r\n\t\t\tHeader.append('');\r\n\r\n\t\t\tfor(var headItem in HeaderItems) {\r\n\t\t\t\tHeader.find('tr').append(''+HeaderItems[headItem]+'');\r\n\t\t\t}\r\n\t\t\t//Body\r\n\t\t\tParent.append('');\r\n\t\t\t\r\n\t\t\tvar Wrapper = Parent.find('tbody.visible-lg');\r\n\t\t\tfor(var key in data) {\r\n\t\t\t\t//Appending Heading\r\n\t\t\t\t$('#jumpTo').append('');\r\n\t\t\t\tself.JumpToArray.push(data[key].casualtytitle);\r\n\t\t\t\tWrapper.append(' '+data[key].casualtytitle+'Top');\r\n\r\n\t\t\t\t//Appending Body\r\n var CasualityData = data[key].casualtyData;\r\n for(var item in CasualityData) {\r\n \tWrapper.append(''+CasualityData[item].Title+''+CasualityData[item][\"Date Of Incident\"].split(' ')[0].split('-').reverse().join('.')+''+CasualityData[item][\"Area\"]+'');\r\n }\r\n\t\t\t}\r\n\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t},\r\n\t\tMobileVersion:function(data, Parent) {\r\n\t\t\tParent.append('');\r\n\r\n\t\t\tvar Wrapper = Parent.find('tbody.visible-sm');\r\n\t\t\tfor(var key in data) {\r\n\t\t\t\tWrapper.append('
    '+data[key].casualtytitle+'
    ');\r\n\r\n\t\t\t\tvar HeaderItems = this.HeaderLinks;\r\n\t\t\t\tvar CasualData = data[key].casualtyData;\r\n\t\t\t\t\r\n\t\t\t\tfor(var key1 in CasualData) {\r\n\t\t\t\t\tfor(var i in HeaderItems) {\r\n\t\t\t\t\t\tif(HeaderItems[i] === 'Title') {\r\n\t\t\t\t\t\t\tWrapper.append(''+\r\n\t\t\t ''+HeaderItems[i]+''+\r\n\t\t\t ''+CasualData[key1][HeaderItems[i]]+''+\r\n\t\t \t\t'');\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tWrapper.append(''+\r\n\t\t\t ''+HeaderItems[i]+''+\r\n\t\t\t ''+CasualData[key1][HeaderItems[i]]+''+\r\n\t\t \t\t'');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tWrapper.append(''+\r\n\t\t '
    '+\r\n\t\t '
    '+\r\n\t \t\t'');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tRenderTable: function(data, Parent) { \r\n\t\t\tParent.empty();\r\n\t\t\tthis.DesktopVersion(data, Parent);\r\n\t\t\tthis.MobileVersion(data, Parent);\r\n\t\t\t$('table').on('click', 'a.top', function(){\r\n\t\t\t\tvar $this = $(this), table = $this.closest('table'), tablePos = table.offset().top;\r\n\t\t\t\tif(window.matchMedia(\"(max-width: 400px)\").matches){\r\n\t\t\t\t\t$(window).scrollTop(tablePos - 40);\r\n\t\t\t\t}\r\n\t\t\t\telse{\r\n\t\t\t\t\t$(window).scrollTop(tablePos);\r\n\t\t\t\t}\r\n\t\t\t}); \r\n\t\t},\r\n\t\tFindHeaderLinks: function(data) {\r\n\t\t\tfor(var key in data) {\r\n\t\t\t\tvar CasualityData = data[key].casualtyData;\r\n for(var item in CasualityData) {\r\n \tvar List = CasualityData[item];\r\n \tfor(var list in List) {\r\n \t\tif(list !== \"incidentId\") {\r\n \t\t\tthis.HeaderLinks.push(list);\r\n \t\t}\r\n \t}\r\n \tbreak;\r\n }\r\n break;\r\n\t\t\t}\r\n\t\t},\r\n\t\tChangeReport: function() {\r\n\t\t\tvar self = this;\r\n\t\t\t$(document).on('change','#relDate', function(){\r\n\t\t\t\tvar Value = $(this).find('.selectivity-single-selected-item').attr('data-item-id');\r\n\t\t\t\tif(window.jsonCasualtyListing[0][Value] !== undefined) {\r\n\t\t\t\t\tself.RenderTable(window.jsonCasualtyListing[0][Value], $('#casualty-listing-table'));\r\n\t\t\t\t\t$('#casualty-listing-table').show();\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$('#casualty-listing-table').hide();\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif($('.jumpToSection #jumpTo')) {\r\n\t\t\t\t\t$('.jumpToSection #jumpTo').remove();\r\n\t\t\t\t}\r\n\t\t\t\t$('.jumpToSection').append('');\r\n\r\n\t\t\t\tfor(var i = 0; i < self.JumpToArray.length; i++) {\r\n\t\t\t\t\t$('#jumpTo').append('');\r\n\t\t\t\t}\r\n\t\t\t\t$('#jumpTo').selectivity({\r\n\t\t\t\t\tshowSearchInputInDropdown: false\r\n\t\t\t\t});\r\n\r\n\t\t\t\t$(\".selectivity-input .selectivity-single-select\").each(function() {\r\n\t \t\t\t $(this).append('');\r\n\t \t\t\t });\r\n\t\t\t});\r\n\t\t\t$(document).on('change','#jumpTo', function(){\r\n\t\t\t\tvar Value = $(this).find('.selectivity-single-selected-item').attr('data-item-id');\r\n\t\t\t\tvar Top = $('#casualty-listing-table tr[data-jump=\"'+Value+'\"]').offset().top;\r\n\t\t\t\tif($(window).width() < 667) {\r\n\t\t\t\t\tvar Top = $($('#casualty-listing-table tr[data-jump=\"'+Value+'\"]')[1]).offset().top - 40;\r\n\t\t\t\t}\r\n\t\t\t\t$('html, body').scrollTop(Top);\r\n\t\t\t});\r\n\t\t},\r\n\t\tinit: function(data, Parent) { \r\n\t\t\tif(data.length !== 0){\r\n\t\t\t\tvar FirstValue = $('#relDate').val(),\r\n\t\t\t\t\tCurrentObj = data[0][FirstValue];\r\n\r\n\t\t\t\tthis.FindHeaderLinks(CurrentObj);\r\n\t\t\t\tthis.RenderTable(CurrentObj, Parent);\r\n\t\t\t\tthis.ChangeReport();\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#casualty-listing-table').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t\r\n\t$(document).ready(function() {\r\n\t\tif($('#casualty-listing-table').length > 0) {\r\n\t\t\tif(typeof window.jsonCasualtyListing !== 'undefined' && typeof window.jsonCasualtyListing !== 'string'){\r\n\t\t\t\tCasualityListing.init(window.jsonCasualtyListing, $('#casualty-listing-table'));\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#casualty-listing-table').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n})();","(function () {\r\n\t// body...\r\n\t'use strict';\r\n\r\n\tvar cockettBunker = {\r\n\t\tRenderTable: function(data, Parent) {\r\n\t\t\tvar self = this, TableStr = \"\";\r\n\t\t\tParent.empty();\r\n\t\t\t\r\n\t\t\tfor(var key in data[0]) {\r\n\t\t\t\tTableStr += self.RenderSingleTable(key, data[0][key]);\r\n\t\t\t}\r\n\r\n\t\t\tParent.append(TableStr);\r\n\r\n\t\t},\r\n\t\tRenderSingleTable: function(item, Data) {\r\n\t\t\tconsole.log(Data);\r\n\t\t\tvar HeadingStr = \"\",\r\n\t\t\t\tSubHeadingStr = \"\",\r\n\t\t\t\tTbodyStr = \"\",\r\n\t\t\t\tHeading = Data[0];\r\n\r\n\r\n\t\t\tfor(var key in Heading) {\r\n\t\t\t\tif(key.split(\"|\").length === 1) {\r\n\t\t\t\t\tHeadingStr += \"\"+\r\n\t\t\t\t\t\t\t\t\t\t\"
     
    \"+\r\n\t\t\t\t\t\t\t\t\t\"\";\r\n\t\t\t\t} else {\r\n\t\t\t\t\tHeadingStr += \"\"+\r\n\t\t\t\t\"
    \"+ key.split(\"|\")[0] + \" (\" + key.split(\"|\")[1] + \")
    \"+\r\n\t\t\t\t\t\t\t\t\t\"\"; \r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tvar rowIdx = 0;\r\n\t\t\tfor(var i = 0; i < Data.length; i++) {\r\n\t\t\t\trowIdx++;\r\n\t\t\t\tvar cls = (rowIdx % 2 === 0) ? 'oddCls' : '';\r\n\t\t\t\tvar EachValue = Data[i],\r\n\t\t\t\t\tTd = \"\", align = \"\";\r\n\t\t\t\tfor(var key1 in EachValue) {\r\n\t\t\t\t\tif(key1 !== \"Header\") {\r\n\t\t\t\t\t\talign = \"rigalign\"; \r\n\t\t\t\t\t}\r\n\t\t\t\t\tTd += '' + EachValue[key1] + '';\r\n\t\t\t\t}\r\n\t\t\t\tTbodyStr += '' +Td + '';\r\n\t\t\t}\r\n\r\n\t\t\tvar Table = ''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\tHeadingStr+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tTbodyStr+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\titem+\r\n\t\t\t\t\t\t\t\t\t'
    ';\r\n\r\n\r\n\t\t\treturn Table;\r\n\t\t},\r\n\t\tinit: function(data, id) {\r\n\t\t\tif(data.length !== 0){ \r\n\t\t\t\tvar self = this;\r\n\t\t\t\tself.RenderTable(data, id);\r\n\t\t\t\tid.closest('.small_table').css('width', '100%');\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#cockettBunker').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t\r\n\tif($('#cockettBunker').length > 0) { \r\n\t\tif(typeof window.jsonCockettBunker !== 'undefined' && typeof window.jsonCockettBunker !== 'string'){\r\n\t\t\tcockettBunker.init(window.jsonCockettBunker, $('#cockettBunker'));\r\n\t\t}\r\n\t\telse{\r\n\t\t\t$('#cockettBunker').html('
    ');\r\n\t\t} \r\n\t}\r\n\r\n\t\r\n})();","(function () {\r\n\tvar fisDryBulk = {\r\n\t\trenderDateData: function(data){\r\n\t\t\tif(data[0]['SelectDate'] !== undefined){\r\n\t\t\t\t$('#fisDryBulkselectDay').html(this.loadDropdownData(data[0]['SelectDate']));\r\n\t\t\t}\r\n\t\t},\r\n\t\tloadDropdownData: function(options){\r\n\t\t\tvar optionStr = '';\r\n\t\t\ttry {\r\n\t\t\t\t$.each(options, function(idx, val){\r\n\t\t\t\t\tif(idx === 0){\r\n\t\t\t\t\t\toptionStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse{\r\n\t\t\t\t\t\toptionStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\treturn optionStr;\r\n\t\t\t}\r\n\t\t\tcatch(err) {\r\n\t\t\t\t$('.fisDryBulkTable').html('
    ');\r\n\t\t\t}\r\n\t\t\t\r\n\t\t},\r\n\t\trenderTable: function(renderEle){\r\n\t\t\tvar self = this, loadDateVal = $('#fisDryBulkselectDay option').val();\r\n\t\t\t\r\n\t\t\t//self.sendHTTPRequest(tableObj, renderEle)\r\n\t\t\tself.callAjaxFn(loadDateVal, renderEle);\r\n\t\t\t$(document).on('change', '#fisDryBulkselectDay', function(){\r\n\t\t\t\tvar selectDateVal = $('#fisDryBulkselectDay option').val();\r\n\t\t\t\tself.callAjaxFn(selectDateVal, renderEle);\r\n\t\t\t});\r\n\t\t},\r\n\t\tcallAjaxFn: function(seldateVal, renderEle){\r\n\t\t\t var self = this;\r\n\t\t\t$.ajax({\r\n\t\t\t\turl: '/Download/JsonDataFromFeed/ReadJsonMarketFixture/',\r\n\t\t\t\tdata: {'dateVal': seldateVal, 'feedUrl': $('#fisDryBulkHiddenVal').val()},\r\n\t\t\t\tdataType: 'json',\r\n\t\t\t\ttype: 'GET',\r\n\t\t\t\tsuccess: function (searchData) {\r\n\t\t\t\t\tif(searchData && searchData.length){\r\n\t\t\t\t\t\tself.sendHTTPRequest(searchData, renderEle);\r\n\t\t\t\t\t} \r\n\t\t\t\t\telse{\r\n\t\t\t\t\t\tif(searchData && searchData.length === 0){\r\n\t\t\t\t\t\t\t$('.fisDryBulkTable').html('
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\t$('.fisDryBulkTable').html('
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\terror: function (err) {\r\n\t\t\t\t\tconsole.log('Feed url is getting error: ' + JSON.stringify(err));\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tsendHTTPRequest: function(searchData, renderEle){\r\n\t\t\tvar self = this;\r\n\t\t\tself.loadDesktopView(searchData[0], renderEle);\r\n\t\t\tself.loadMobileView(searchData[0], renderEle);\r\n\t\t},\r\n\t\tloadDesktopView: function(tableData, renderEle){\r\n\t\t\tvar tableStr = '';\r\n\t\t\t$.each(tableData, function(key, val){\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\t$.each(val, function(idx, value){\r\n\t\t\t\t\tvar objVal = val[idx];\r\n\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\tfor(var p in objVal){\r\n\t\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\tfor(var key in objVal){\r\n\t\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\ttableStr += '';\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\t\r\n\t\t\t$(renderEle+'.showinDesk').html(tableStr);\r\n\t\t},\r\n\t\tloadMobileView: function(tableData, renderEle){\r\n\t\t\tvar tableStr = '
    '+key+'
    '+p+'
    '+objVal[key]+'
    ';\r\n\t\t\t\t\r\n\t\t\t\t$.each(tableData, function(key, val){\r\n\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\t$.each(val, function(idx, value){\r\n\t\t\t\t\t\tvar curObj = val[idx];\r\n\t\t\t\t\t\tfor(var prop in curObj){\r\n\t\t\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t\ttableStr += '
    '+key+'
    '+prop+''+curObj[prop]+'
    ';\r\n\t\t\t\t\r\n\t\t\t$(renderEle+'.showinMob').html(tableStr);\r\n\t\t},\r\n\t\tsetColHeight: function(parentId){\r\n\t\t\t$(parentId).closest('#howeRobinsonContainer').find('.states_heading .R16').each(function(idx){\r\n\t\t\t\tvar $this = $(this), colHeight = $this.height();\r\n\t\t\t\t$('.titleHead').each(function() {\r\n\t\t\t\t\t$($(this).find('.R16')[idx]).height(colHeight);\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\t\tinitiateCarousel: function(id){\r\n\t\t\t$(id).owlCarousel({\r\n\t\t\t\tloop:false,\r\n\t\t\t\tmargin:0,\r\n\t\t\t\tmerge:true,\r\n\t\t\t\tnav:false,\r\n\t\t\t\tslideBy: 4,\r\n\t\t\t\tresponsive: {\r\n\t\t\t\t 0:{\r\n\t\t\t\t items:4\r\n\t\t\t\t },\r\n\t\t\t\t 678:{\r\n\t\t\t\t items:2\r\n\t\t\t\t },\r\n\t\t\t\t 320:{\r\n\t\t\t\t\titems:2\r\n\t\t\t\t },\r\n\t\t\t\t 480:{\r\n\t\t\t\t\titems:2\r\n\t\t\t\t },\r\n\t\t\t\t 1024:{\r\n\t\t\t\t items:3\r\n\t\t\t\t }\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tinit: function(dateObj, renderEle) {\r\n\t\t\tvar self = this;\r\n\t\t\tself.renderDateData(dateObj);\r\n\t\t\tself.renderTable(renderEle);\r\n\t\t\t$(window).resize(function() {\r\n\t\t\t\tself.setColHeight(renderEle);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\t\r\n\t$(document).ready(function() {\r\n\t\tif($('#fisDryBulkContainer').length > 0) {\r\n\t\t\tif(typeof window.fisDryBulkDateOptions !== 'undefined' && typeof window.fisDryBulkDateOptions !== 'string'){\r\n\t\t\t\tfisDryBulk.init(window.fisDryBulkDateOptions, '.fisDryBulkTable');\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('.fisDryBulkTable').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n})();","(function () {\r\n\tvar howeRobinson = {\r\n\t\trenderTable: function(tableObj, renderEle){\r\n\t\t\tvar tableStr = '';\r\n\t\t\ttableStr += this.loadDesktopView(tableObj, renderEle);\r\n\t\t\tthis.initiateCarousel(renderEle);\r\n\t\t\tthis.setColHeight(renderEle);\r\n\t\t},\r\n\t\tloadDesktopView: function(tableData, renderEle){\r\n\t\t\tvar getTitles = [], self = this, indx = 0, titflag = true, clsIdx = 0;\r\n\t\t\t$.each(tableData, function(idx, val){\r\n\t\t\t\t$.each(val, function(prop, value){\r\n\t\t\t\t\tgetTitles.push(prop); \r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\t \r\n\t\t\tfor(var i=0; i ');\r\n\t\t\t\t}\r\n\t\t\t\telse{\r\n\t\t\t\t\t$(renderEle).append('
    '+getTitles[i]+'
    ');\r\n\t\t\t\t} \r\n\t\t\t}\r\n\t\t\t\r\n\t\t\t$.each(tableData, function(idx, val){\r\n\t\t\t\t$.each(val, function(key, arr){\r\n\t\t\t\t\tfor(var i=0; i= 1){\r\n\t\t\t\t\t\t\t$('div[data-title=\"'+key+'\"]').append('
    '+((arr[i]) ? arr[i] : ' ')+'
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\t$('.states_heading').append('
    '+((arr[i]) ? arr[i] : ' ')+'
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tindx++;\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\t\tsetColHeight: function(parentId){\r\n\t\t\t$(parentId).closest('#howeRobinsonContainer').find('.states_heading .R16').each(function(idx){\r\n\t\t\t\tvar $this = $(this), colHeight = $this.height();\r\n\t\t\t\t$('.titleHead').each(function() {\r\n\t\t\t\t\t$($(this).find('.R16')[idx]).height(colHeight);\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\t\tinitiateCarousel: function(id){\r\n\t\t\t$(id).owlCarousel({\r\n\t\t\t\tloop:false,\r\n\t\t\t\tmargin:0,\r\n\t\t\t\tmerge:true,\r\n\t\t\t\tnav:false,\r\n\t\t\t\tslideBy: 4,\r\n\t\t\t\tresponsive: {\r\n\t\t\t\t 0:{\r\n\t\t\t\t items:4\r\n\t\t\t\t },\r\n\t\t\t\t 678:{\r\n\t\t\t\t items:2\r\n\t\t\t\t },\r\n\t\t\t\t 320:{\r\n\t\t\t\t\titems:2\r\n\t\t\t\t },\r\n\t\t\t\t 480:{\r\n\t\t\t\t\titems:2\r\n\t\t\t\t },\r\n\t\t\t\t 1024:{\r\n\t\t\t\t items:3\r\n\t\t\t\t }\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tinit: function(tableObj, renderEle) {\r\n\t\t\tif(tableObj.length !== 0){\r\n\t\t\t\tvar self = this;\r\n\t\t\t\tself.renderTable(tableObj, renderEle);\r\n\t\t\t\t$(window).resize(function() {\r\n\t\t\t\t\tself.setColHeight(renderEle);\r\n\t\t\t\t}); \r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#howeRobinson').prev().remove();\r\n\t\t\t\t$('.howeRobinsonTable').closest('.owl-wrapper').css('width', '100%');\r\n\t\t\t\t$('.howeRobinsonTable').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t\r\n\t$(document).ready(function() {\r\n\t\tif($('#howeRobinsonContainer').length > 0) { \r\n\t\t\tif(typeof window.jsonHoweRobinson !== 'undefined' && typeof window.jsonHoweRobinson !== 'string'){\r\n\t\t\t\thoweRobinson.init(window.jsonHoweRobinson, '.howeRobinsonTable');\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#howeRobinson').prev().remove();\r\n\t\t\t\t$('.howeRobinsonTable').closest('.owl-wrapper').css('width', '100%');\r\n\t\t\t\t$('.howeRobinsonTable').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n})();","(function () {\r\n\tvar dryCargoBulkFixtures = {\r\n\t\trecreateObj: {},\r\n\t\trenderDate: function(dateObj){ \r\n\t\t\tvar options = '';\r\n\t\t\t$.each(dateObj[0], function(key, val){ \r\n\t\t\t\t$.each(val, function(idx, value){ \r\n\t\t\t\t\toptions += ''\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\t\r\n\t\t\t$('#drybulkselectDay').html(options);\r\n\t\t},\r\n\t\trenderTable: function(){\r\n\t\t\tvar self = this, loadDateVal = $('#drybulkselectDay option').val();\r\n\t\t\t//self.sendHTTPRequest(tableObj);\r\n\t\t\tself.callAjaxFn(loadDateVal);\r\n\t\t\t$(document).on('change', '#drybulkselectDay', function(){\r\n\t\t\t\tvar selectDateVal = $('#drybulkselectDay option').val();\r\n\t\t\t\tself.callAjaxFn(selectDateVal);\r\n\t\t\t});\r\n\t\t},\r\n\t\tcallAjaxFn: function(seldateVal){\r\n\t\t\t var self = this;\r\n\t\t\t$.ajax({\r\n\t\t\t\turl: '/Download/JsonDataFromFeed/ReadJsonMarketFixture/',\r\n\t\t\t\tdata: {'dateVal': seldateVal, 'feedUrl': $('#drycargoHiddenVal').val()},\r\n\t\t\t\tdataType: 'json',\r\n\t\t\t\ttype: 'GET',\r\n\t\t\t\tsuccess: function (searchData) { \r\n\t\t\t\t\tif(searchData && searchData.length){\r\n\t\t\t\t\t\tself.sendHTTPRequest(searchData);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse{\r\n\t\t\t\t\t\tif(searchData && searchData.length === 0){\r\n\t\t\t\t\t\t\t$('#dryCargoBulkFixtures table').html('
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\t$('#dryCargoBulkFixtures table').html('
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\terror: function (err) {\r\n\t\t\t\t\t$('#dryCargoBulkFixtures table').html('
    ');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tsendHTTPRequest: function(searchData){\r\n\t\t\tvar self = this, loadHead = true, tableStr = '';\r\n\t\t\t\r\n\t\t\ttableStr += self.loadDescView(searchData);\r\n\t\t\ttableStr += self.loadMobileView(searchData);\r\n\t\t\t \r\n\t\t\t$('#dryCargoBulkFixtures table').html(tableStr);\r\n\t\t\t\r\n\t\t\tself.recreateObj = {};\r\n\t\t\t\r\n\t\t\t$('table').on('click', 'a.top', function(){\r\n\t\t\t\tvar $this = $(this), table = $this.closest('table'), tablePos = table.offset().top;\r\n\t\t\t\tif(window.matchMedia(\"(max-width: 400px)\").matches){\r\n\t\t\t\t\t$(window).scrollTop(tablePos - 40);\r\n\t\t\t\t}\r\n\t\t\t\telse{\r\n\t\t\t\t\t$(window).scrollTop(tablePos);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tloadDescView: function(tableObj){\r\n\t\t\tvar self = this, tableStr = '', getArr;\r\n\t\t\t$.each(tableObj[0], function(key, val){\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\ttableStr += ' ';\r\n\t\t\t\ttableStr += ''; \r\n\t\t\t });\r\n\t\t\t \r\n\t\t\t$.each(tableObj[0], function(idx, val){\r\n\t\t\t\tgetArr = val;\r\n\t\t\t});\r\n\t\t\tfor(var i=0; iTop';\r\n\t\t\t\t$.each(val, function(idx, value){\r\n\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\t$.each(value, function(k, v){\r\n\t\t\t\t\t\ttableStr += ''+v+'';\r\n\t\t\t\t\t});\r\n\t\t\t\t\ttableStr += '';\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\ttableStr += '';\r\n\t\t\t\r\n\t\t\treturn tableStr;\r\n\t\t},\r\n\t\tloadMobileView: function(){\r\n\t\t\tvar tbody = '';\r\n\t\t\t$.each(this.recreateObj, function(key, val){\r\n\t\t\t\ttbody += ''+key+'Top';\r\n\t\t\t\t$.each(val, function(idx, value){\r\n\t\t\t\t\t$.each(value, function(k, v){\r\n\t\t\t\t\t\ttbody += ''+k+''+v+'';\r\n\t\t\t\t\t});\r\n\t\t\t\t\ttbody += '

    ';\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\ttbody += '';\r\n\t\t\t\r\n\t\t\treturn tbody;\r\n\t\t},\r\n\t\tinit: function(dateOptions) {\r\n\t\t\tthis.renderDate(dateOptions);\r\n\t\t\tthis.renderTable();\r\n\t\t}\r\n\t}\r\n\t\r\n\t$(document).ready(function() {\r\n\t\tif($('#dryCargoBulkFixtures').length > 0) { \r\n\t\t\tif(typeof window.DryBulkFixturesDateOptions !== 'undefined' && typeof window.DryBulkFixturesDateOptions !== 'string'){\r\n\t\t\t\tdryCargoBulkFixtures.init(window.DryBulkFixturesDateOptions);\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#dryCargoBulkFixtures table').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n})();","(function () {\r\n\tvar dryCargo = {\r\n\t\trenderDate: function(dateObj){ \r\n\t\t\tvar options = '';\r\n\t\t\t$.each(dateObj[0], function(key, val){ \r\n\t\t\t\t$.each(val, function(idx, value){ \r\n\t\t\t\t\toptions += ''\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\t$('#dryCargodateselect').html(options);\r\n\t\t},\r\n\t\trenderTable: function(){\r\n\t\t\tvar self = this, loadDateVal = $('#dryCargodateselect option').val();\r\n\t\t\tself.callAjaxFn(loadDateVal);\r\n\t\t\t$(document).on('change', '#dryCargodateselect', function(){\r\n\t\t\t\tvar selectDateVal = $('#dryCargodateselect option').val();\r\n\t\t\t\tself.callAjaxFn(selectDateVal);\r\n\t\t\t});\r\n\t\t},\r\n\t\tcallAjaxFn: function(seldateVal){\r\n\t\t\t var self = this;\r\n\t\t\t$.ajax({\r\n\t\t\t\turl: '/Download/JsonDataFromFeed/ReadJsonMarketFixture/',\r\n\t\t\t\tdata: {'dateVal': seldateVal, 'feedUrl': $('#drycargoHiddenVal').val()},\r\n\t\t\t\tdataType: 'json',\r\n\t\t\t\ttype: 'GET',\r\n\t\t\t\tsuccess: function (searchData) {\r\n\t\t\t\t\tself.sendHTTPRequest(searchData);\r\n\t\t\t\t},\r\n\t\t\t\terror: function (err) {\r\n\t\t\t\t\tconsole.log('Feed url is getting error: ' + JSON.stringify(err));\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tsendHTTPRequest: function(searchData){\r\n\t\t\tvar self = this, tableStr = '';\r\n\t\t\ttableStr += this.renderDesktop(searchData);\r\n\t\t\ttableStr += this.renderMobile(searchData);\r\n\t\t\t$('#dryCargo').html(tableStr);\t\t\t \r\n\t\t},\r\n\t\trenderDesktop: function(tableObj){\r\n\t\t\tvar self = this, deskStr = ''; \r\n\t\t\t $.each(tableObj, function(datekey, date){ \r\n\t\t\t\t$.each(date, function(key, value) { \r\n\t\t\t\t\tdeskStr += ''\r\n\t\t\t\t\tdeskStr += '';\r\n\t\t\t\t\tdeskStr += ''\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\tdeskStr += '';\r\n\t\t\t\t\tvar tableHead = value[0];\r\n\t\t\t\t\t\tfor(var key1 in tableHead){\r\n\t\t\t\t\t\t\tdeskStr += ''\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tdeskStr += '';\r\n\t\t\t\t\t\tdeskStr += '';\r\n\t\t\t\t\t\tdeskStr += '';\r\n\t\t\t\t\t\tdeskStr += '';\r\n\t\t\t\t\t\t$.each(value, function(objData, objVal) {\r\n\t\t\t\t\t\t\t$.each(objVal, function(responseKey, responseVal) {\r\n\t\t\t\t\t\t\t\tdeskStr += ''; \r\n\t\t\t\t\t\t\t});\t\r\n\t\t\t\t\t\t\tdeskStr += '';\t\r\n\t\t\t\t\t\t});\t\t\t\t\t\r\n\t\t\t\t\tdeskStr += '';\r\n\t\t\t\t\tdeskStr += '
    '+key+'
    '+key1+'
    '+responseVal+'
    ';\t\r\n\t\t\t\t});\r\n\t\t\t });\r\n\t\t\t return deskStr;\r\n\t\t},\r\n\t\trenderMobile: function(tableObj) {\r\n\t\t\tvar self = this, mobStr = '';\r\n\t\t\t $.each(tableObj, function(datekey, date){ \r\n\t\t\t\t\r\n\t\t\t\t\t$.each(date, function(key, value) { \r\n\t\t\t\t\t\tmobStr += ''\r\n\t\t\t\t\t\tmobStr += '';\r\n\t\t\t\t\t\tmobStr += '';\r\n\t\t\t\t\t\tmobStr += '';\r\n\t\t\t\t\t\tmobStr += '';\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t$.each(value, function(objData, objVal) {\t\t\t\t\t\r\n\t\t\t\t\t\t\t$.each(objVal, function(responseKey, responseVal) { \r\n\t\t\t\t\t\t\t\tmobStr += '';\r\n\t\t\t\t\t\t\t\tmobStr += ''; \r\n\t\t\t\t\t\t\t\tmobStr += ''; \r\n\t\t\t\t\t\t\t\tmobStr += '';\t\t\r\n\t\t\t\t\t\t\t});\t\r\n\t\t\t\t\t\t\tmobStr += '';\r\n\t\t\t\t\t\t});\t\t\t\t\t\r\n\t\t\t\t\t\tmobStr += '';\r\n\t\t\t\t\t\tmobStr += '
    '+key+'
    '+responseKey+''+responseVal+'
    ';\r\n\t\t\t\t\t}); \r\n\t\t\t });\r\n\t\t\t return mobStr;\r\n\t\t},\r\n\t\tinit: function(dateData) {\r\n\t\t\tthis.renderDate(dateData);\r\n\t\t\tthis.renderTable();\r\n\t\t}\r\n\t}\r\n\t\r\n\t$(document).ready(function() {\r\n\t\tif($('#dryCargo').length > 0) {\r\n\t\t\tdryCargo.init(marketdryCargodate);\r\n\t\t}\r\n\t});\r\n})();","(function () {\r\n\tvar marketData = {\r\n\t\trecreateArr: [],\r\n\t\trenderTable: function(dataObj, renderId){\r\n\t\t\tif(dataObj.length !== 0){\r\n\t\t\t\tfor(var i=0; i');\r\n\t\t\t}\r\n\t\t},\r\n\t\tloadMobileView: function(tableData, id){\r\n\t\t\tvar self = this, headObj = tableData[0], indx = 0, titflag = true, colInd = 0;\r\n\t\t\t\t$.each(headObj, function(key, val){\r\n\t\t\t\t\tcolInd++;\r\n\t\t\t\t\tif(colInd <= 6){\r\n\t\t\t\t\t\tif(titflag){\r\n\t\t\t\t\t\t\ttitflag = false;\r\n\t\t\t\t\t\t\t$('.states_heading').append('
    '+ key + '
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\t$(id).append('
    '+self.genarateDate(key)+'
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t\t$.each(tableData, function(idx, val){\r\n\t\t\t\t\tvar oddCls = idx % 2 !== 0 ? 'oddCls' : '';\r\n\t\t\t\t\t$.each(val, function(k, v){\r\n\t\t\t\t\t\tvar cls = (v.split(' ')[1].indexOf('-') !== -1) ? 'fall' : 'rise';\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tif(indx >= 1){\r\n\t\t\t\t\t\t\t$('div[data-title=\"'+k+'\"]').append('
    '+v.split(' ')[0]+''+v.split(' ')[1]+'
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\t$('.states_heading').append('
    '+v+'
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tindx++;\r\n\t\t\t\t\t});\r\n\t\t\t\t\tindx = 0; \r\n\t\t\t\t}); \r\n\t\t},\r\n\t\tloadDescView: function(tableData, id){\r\n\t\t\tvar self = this, thead = tableData[0], descStr = '', index = 0, indx = 0, colHeadInd = 0, colInd = 0, titflag = true;\r\n\t\t\tdescStr += \"\";\r\n\t\t\tfor(var prop in thead){\r\n\t\t\t\tcolHeadInd++;\r\n\t\t\t\tif(colHeadInd <= 6){\r\n\t\t\t\t\tif(titflag){\r\n\t\t\t\t\t\ttitflag = false;\r\n\t\t\t\t\t\tdescStr += \"\" + prop + \"\";\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse{\r\n\t\t\t\t\t\tdescStr += \"\" + self.genarateDate(prop) + \"\";\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\telse break;\r\n\t\t\t}\r\n\t\t\tdescStr += \"\";\r\n\t\t\tdescStr += \"\";\r\n\t\t\t\r\n\t\t\t\t\t\t \r\n\t\t\t$.each(tableData, function(idx, val){\r\n\t\t\t\tindex++;\r\n\t\t\t\tvar oddCls = index % 2 == 0 ? 'oddCls' : ''; \r\n\t\t\t\tdescStr += \"\";\r\n\t\t\t\tfor(var prop in val){\r\n\t\t\t\t\tvar cls = (val[prop].split(' ')[1].indexOf('-') !== -1) ? 'fall' : 'rise';\r\n\t\t\t\t\tcolInd++;\r\n\t\t\t\t\tif(colInd <= 6){\r\n\t\t\t\t\t\tif(indx >= 1){\r\n\t\t\t\t\t\t\tdescStr += \"
    \"+val[prop].split(' ')[0]+''+val[prop].split(' ')[1]+\"
    \";\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\tdescStr += \"
    \"+val[prop]+\"
    \";\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tindx++;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tcolInd = 0;\r\n\t\t\t\tindx = 0;\r\n\t\t\t\tdescStr += \"\";\r\n\t\t\t});\r\n\t\t\t$(id).html(descStr);\r\n\t\t},\r\n\t\tgenarateDate(date){\r\n\t\t\tif(date.split(' ').length === 2){\r\n\t\t\t\tvar getDate = date.split(' ')[0], \r\n\t\t\t\t\tsplDate = getDate.split('-'),\r\n\t\t\t\t\tgetObjDate = new Date(splDate[0], splDate[1]-1, splDate[2]),\r\n\t\t\t\t\tgetObjDateSpl = getObjDate.toString().split(' ');\r\n\t\t\t\t\treturn getObjDateSpl[2] + ' ' + getObjDateSpl[1] + ' ' + getObjDateSpl[3];\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\treturn date.split('-').reverse().join(' ');\r\n\t\t\t}\r\n\t\t},\r\n\t\tsortDateOptions: function(filterObj){\r\n\t\t\tvar generateDate = [], sortArray, createFinalArr = [];\r\n\t\t\tfor(var i=0; i b ? 1 : a < b ? -1 : 0;\r\n\t\t\t\t\t\t}).reverse();\r\n\t\t\t\r\n\t\t\tfor(var j=0; j 0) {\r\n\t\t\tif(typeof window.jsonBalticIndices !== 'undefined' && typeof window.jsonBalticIndices !== 'string'){\r\n\t\t\t\tmarketData.init(window.jsonBalticIndices, $('.marketDataTable'));\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('.marketDataTable').closest('.owl-wrapper').css('width', '100%');\r\n\t\t\t\t$('.marketDataTable').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n})();","(function () {\r\n\t// body...\r\n\t'use strict';\r\n\r\n\tvar marketDataDryCargoSsyAtl = {\r\n\t\tRenderTable: function(data, Parent) {\r\n\t\t\tvar self = this, TableStr = \"\";\r\n\t\t\tParent.empty();\r\n\t\t\t\r\n\t\t\tfor(var key in data[0]) {\r\n\t\t\t\tTableStr += self.RenderSingleTable(data[0][key]);\r\n\t\t\t}\r\n\r\n\t\t\tParent.append(TableStr);\r\n\t\t},\r\n\t\tRenderSingleTable: function(Data) {\r\n\t\t\tconsole.log(Data);\r\n\t\t\tvar HeadingStr = \"\",\r\n\t\t\t\tSubHeadingStr = \"\",\r\n\t\t\t\tTbodyStr = \"\",\r\n\t\t\t\tHeading = Data[0];\r\n\r\n\r\n\t\t\tfor(var key in Heading) {\r\n\t\t\t\tif(key.split(\"|\").length === 1) {\r\n\t\t\t\t\tif(key !== 'Route'){\r\n\t\t\t\t\tHeadingStr += \"\"+\r\n\t\t\t\t\t\t\t\t\t\t\"
     
    \"+\r\n\t\t\t\t\t\t\t\t\t\t\"
    \"+ key.split(\"|\")[0] +\"
    \"+\r\n\t\t\t\t\t\t\t\t\t\"\";\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse{\r\n\t\t\t\t\t\tHeadingStr += \"\"+\r\n\t\t\t\t\t\t\t\t\t\t\"
     
    \"+\r\n\t\t\t\t\t\t\t\t\t\t\"
    \"+ key.split(\"|\")[0] +\"
    \"+\r\n\t\t\t\t\t\t\t\t\t\"\";\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tHeadingStr += \"\"+\r\n\t\t\t\t\t\t\t\t\t\t\"
    \"+ key.split(\"|\")[0] +\"
    \"+\r\n\t\t\t\t\t\t\t\t\t\t\"
    \"+ key.split(\"|\")[1] +\"
    \"+\r\n\t\t\t\t\t\t\t\t\t\"\";\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tvar rowIdx = 0, cls = '';\r\n\t\t\tfor(var i = 0; i < Data.length; i++) {\r\n\t\t\t\trowIdx++;\r\n\t\t\t\tcls = (rowIdx % 2 === 0) ? 'oddCls' : '';\r\n\t\t\t\tvar EachValue = Data[i],\r\n\t\t\t\t\tTd = \"\",\r\n\t\t\t\t\talign = \"\";\r\n\t\t\t\tfor(var key1 in EachValue) { \r\n\t\t\t\t\tif(key1 !== \"Route\") {\r\n\t\t\t\t\t\talign = \"rigalign\";\r\n\t\t\t\t\t}\r\n\t\t\t\t\tTd += '' + EachValue[key1] + '';\r\n\t\t\t\t}\r\n\t\t\t\tTbodyStr += '' +Td + '';\r\n\t\t\t}\r\n\r\n\t\t\tvar Table = ''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\tHeadingStr+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tTbodyStr+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t'
    ';\r\n\r\n\r\n\t\t\treturn Table;\r\n\t\t},\r\n\t\tRenderCarousel: function(data, Parent) {\r\n\t\t\tvar self = this, CarouselStr = \"\";\r\n\t\t\tParent.empty();\r\n\t\t\t\r\n\r\n\t\t\t//Heading\r\n\t\t\tfor(var key in data[0]) {\r\n\t\t\t\tCarouselStr += self.RenderSingleCarousel(key, data[0][key]);\r\n\t\t\t}\r\n\r\n\t\t\tParent.append(CarouselStr);\r\n\t\t\tself.InitCarousel(Parent);\r\n\t\t\t\r\n\t\t\tself.setColHeight(Parent);\r\n\t\t},\r\n\t\tgetFixedData: function(key, Data) {\r\n\t\t\tvar FixedStr = \"\";\r\n\t\t\tfor(var i = 0; i < Data.length; i++) {\r\n\t\t\t\tFixedStr += '
    ' + Data[i][key] + '
    ';\r\n\t\t\t}\r\n\t\t\treturn FixedStr;\r\n\t\t},\r\n\t\tgetData: function(key, Data) {\r\n\t\t\tvar ArticleStr = \"\";\r\n\t\t\tfor(var i = 0; i < Data.length; i++) {\r\n\t\t\t\t// ArticleStr += Data[i][]\r\n\t\t\t\tArticleStr += '
    ' + Data[i][key] + '
    ';\r\n\t\t\t}\r\n\t\t\treturn ArticleStr;\r\n\t\t},\r\n\t\tInitCarousel: function(Parent) {\r\n\t\t\tParent.find('.owl-carousel').owlCarousel({\r\n loop:false,\r\n margin:0,\r\n merge:true,\r\n nav:false,\r\n\t\t\t slideBy: 1, \r\n responsive:{\r\n 0:{\r\n items:1\r\n },\r\n 678:{\r\n items:1\r\n },\r\n 320:{\r\n items:1\r\n },\r\n 480:{\r\n items:1\r\n },\r\n 1024:{\r\n items:2\r\n }\r\n }\r\n });\r\n\t\t},\r\n\t\tRenderSingleCarousel: function(Name, Data) {\r\n\t\t\tvar FixedPart = \"\",\r\n\t\t\t\tCarouselPart = \"\",\r\n\t\t\t\tHeading = Data[0],\r\n\t\t\t\tself = this,\r\n\t\t\t\ti = 0;\r\n\t\t\tfor(var key in Heading) {\r\n\t\t\t\tif(key !== 'Route') {\r\n\t\t\t\t\tCarouselPart += '
    '+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\t\tkey +\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\tself.getData(key, Data)+\r\n\t\t\t\t\t\t\t\t\t'
    ';\r\n\t\t\t\t} else {\r\n\t\t\t\t\tFixedPart += '
    '+ key +'
    '+\r\n\t\t\t\t\t\t\t\t\tself.getFixedData(key, Data);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tvar Carousel = '
    '+\r\n\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\tFixedPart+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\tCarouselPart+\r\n\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t'
    ';\r\n\r\n\t\t\treturn Carousel;\r\n\t\t},\r\n\t\tsetColHeight: function(parentId){\r\n\t\t\tparentId.find('.states_heading .R16').each(function(idx){\r\n\t\t\t\tvar $this = $(this), colHeight = $this.height();\r\n\t\t\t\t$('.article').each(function() {\r\n\t\t\t\t\t$($(this).find('.R16')[idx]).css('height', colHeight);\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t},\r\n\t\tinit: function(data, id) {\r\n\t\t\tif(data.length !== 0){\r\n\t\t\t\tvar self = this;\r\n\t\t\t\tif($('body').width() > 1024){\r\n\t\t\t\t\tself.RenderTable(data, id); \r\n\t\t\t\t}\r\n\t\t\t\telse{\r\n\t\t\t\t\tself.RenderCarousel(data, id);\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\t$(window).resize(function() {\r\n\t\t\t\t\tself.setColHeight(id);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#marketDataDryCargo').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t\r\n\tif($('#marketDataDryCargo').length > 0) {\r\n\t\tif(typeof window.jsonMarketdataDryCargo !== 'undefined' && typeof window.jsonMarketdataDryCargo !== 'string'){\r\n\t\t\tmarketDataDryCargoSsyAtl.init(window.jsonMarketdataDryCargo, $('#marketDataDryCargo'));\r\n\t\t}\r\n\t\telse{\r\n\t\t\t$('#marketDataDryCargo').html('
    ');\r\n\t\t}\t\t\r\n\t}\r\n\r\n\t\r\n})();","(function () {\r\n\t// body...\r\n\t'use strict';\r\n\tvar shipCoalExport = {\r\n\t\tRenderTable: function(data, Parent) {\r\n\t\t\tvar self = this, TableStr = \"\";\r\n\t\t\tParent.empty();\r\n\t\t\tTableStr = self.RenderSingleTable(data);\r\n\t\t\tParent.append(TableStr);\r\n\t\t},\r\n\t\tRenderSingleTable: function(Data) {\r\n\t\t\tconsole.log(Data);\r\n\t\t\tvar HeadingStr = \"\",\r\n\t\t\t\tSubHeadingStr = \"\",\r\n\t\t\t\tTbodyStr = \"\",\r\n\t\t\t\tHeading = Data[0];\r\n\r\n\r\n\t\t\tfor(var key in Heading) {\r\n\t\t\t\tif(Array.isArray(Heading[key])) {\r\n\t\t\t\t\tHeadingStr += '' + key + '';\r\n\t\t\t\t\tvar SubHeading = Heading[key][0];\r\n\t\t\t\t\tfor(var k in SubHeading) {\r\n\t\t\t\t\t\tSubHeadingStr += '' + k+ '';\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tHeadingStr += '' + key + '';\r\n\t\t\t\t\tSubHeadingStr += '';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tfor(var i = 0; i < Data.length; i++) {\r\n\t\t\t\tvar EachValue = Data[i],\r\n\t\t\t\t\tTd = \"\";\r\n\t\t\t\tfor(var key1 in EachValue) {\r\n\t\t\t\t\tif(Array.isArray(EachValue[key1])) {\r\n\t\t\t\t\t\tvar Values = EachValue[key1][0];\r\n\t\t\t\t\t\tfor(var k1 in Values) {\r\n\t\t\t\t\t\t\tTd += '' + Values[k1] + '';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tTd += '' + EachValue[key1] + '';\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tTbodyStr += '' +Td + '';\r\n\t\t\t}\r\n\t\t\t\r\n\r\n\t\t\tvar Table = ''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\tHeadingStr+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tSubHeadingStr+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tTbodyStr+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t'
    ';\r\n\t\t\treturn Table;\r\n\t\t}, \r\n\t\tinit: function(data, renderid) {\r\n\t\t\tthis.RenderTable(data, renderid);\r\n\t\t}\r\n\t}\r\n\tif($('#shipCoalExport').length > 0) {\r\n\t\tshipCoalExport.init(window.jsonShipCoalExport, $('#shipCoalExport'));\t\r\n\t}\r\n})();","(function () {\r\n\t// body...\r\n\t'use strict';\r\n\r\n\tvar shipContainerShip = {\r\n\t\tRenderTable: function(data, Parent) {\r\n\t\t\tvar self = this, TableStr = \"\";\r\n\t\t\tParent.empty();\r\n\t\t\t\r\n\r\n\t\t\t//Heading\r\n\t\t\tfor(var key in data) {\r\n\t\t\t\tTableStr += self.RenderSingleTable(key, data[key]);\r\n\t\t\t}\r\n\r\n\t\t\tParent.append(TableStr);\r\n\r\n\t\t},\r\n\t\tRenderSingleTable: function(heading, Data) {\r\n\t\t\tconsole.log(Data);\r\n\t\t\tvar SubHeadingStr = \"\",\r\n\t\t\t\tSubSubHeadingStr = \"\",\r\n\t\t\t\tTbodyStr = \"\",\r\n\t\t\t\tSubHeading = Data[0];\r\n\r\n\t\t\tfor(var key in SubHeading) {\r\n\t\t\t\tSubHeadingStr += ''+ key +'';\r\n\t\t\t\tif(Array.isArray(SubHeading[key])) {\r\n\t\t\t\t\tvar SubHeadingArray = SubHeading[key][0];\r\n\t\t\t\t\tfor(var sub in SubHeadingArray) {\r\n\t\t\t\t\t\tSubSubHeadingStr += '' +sub+ '';\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSubSubHeadingStr += '';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tfor(var i = 0; i< Data.length; i++) {\r\n\t\t\t\tvar Body = \"\",\r\n\t\t\t\t\tValues = Data[i];\r\n\r\n\t\t\t\tfor(var key1 in Values) {\r\n\t\t\t\t\tif(Array.isArray(Values[key1])) {\r\n\t\t\t\t\t\tvar items = Values[key1][0];\r\n\t\t\t\t\t\tfor(var k in items) {\r\n\t\t\t\t\t\t\tBody += '' +items[k]+ '';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tBody += '' +Values[key1]+ '';\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tTbodyStr += '' + Body + '';\r\n\t\t\t}\r\n\r\n\t\t\tvar Table = ''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tSubHeadingStr+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tSubSubHeadingStr+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tTbodyStr+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t'
    ' + heading + '
    ';\r\n\r\n\r\n\t\t\treturn Table;\r\n\t\t},\r\n\t\tRenderCarousel: function(data, Parent) {\r\n\t\t\tvar self = this, CarouselStr = \"\";\r\n\t\t\tParent.empty();\r\n\t\t\t\r\n\r\n\t\t\t//Heading\r\n\t\t\tfor(var key in data) {\r\n\t\t\t\tCarouselStr += self.RenderSingleCarousel(key, data[key]);\r\n\t\t\t}\r\n\r\n\t\t\tParent.append(CarouselStr);\r\n\t\t\tself.InitCarousel(Parent);\r\n\t\t},\r\n\t\tInitCarousel: function(Parent) {\r\n\t\t\tParent.find('.owl-carousel').owlCarousel({\r\n loop:false,\r\n margin:0,\r\n merge:true,\r\n nav:false,\r\n\t\t\t slideBy: 1, \r\n responsive:{\r\n 0:{\r\n items:1\r\n },\r\n 678:{\r\n items:1\r\n },\r\n 320:{\r\n items:1\r\n },\r\n 480:{\r\n items:1\r\n }\r\n }\r\n });\r\n\t\t},\r\n\t\tgetData: function(key, Data) {\r\n\t\t\tvar ArticleStr = \"\";\r\n\t\t\tfor(var i = 0; i < Data.length; i++) {\r\n\t\t\t\t// ArticleStr += Data[i][]\r\n\t\t\t\tvar ArticleContent = Data[i][key][0];\r\n\t\t\t\tvar Str = \"\";\r\n\t\t\t\tfor(var k in ArticleContent) {\r\n\t\t\t\t\tStr += ''+ArticleContent[k]+'';\r\n\t\t\t\t}\r\n\t\t\t\tArticleStr += '
    ' + Str + '
    ';\r\n\t\t\t}\r\n\t\t\treturn ArticleStr;\r\n\t\t},\r\n\t\tgetKeyChild: function(key, Object) {\r\n\t\t\tvar ChildStr = \"\";\r\n\t\t\tfor(var i in Object[0]) {\r\n\t\t\t\tChildStr += \"\" + i + \"\";\r\n\t\t\t}\r\n\t\t\treturn ChildStr;\r\n\t\t},\r\n\t\tgetFixedData: function(key, Data) {\r\n\t\t\tvar FixedStr = \"\";\r\n\t\t\tfor(var i=0; i < Data.length; i++) {\r\n\t\t\t\tFixedStr += '
    ' + Data[i][key] + '
    ';\r\n\t\t\t}\r\n\t\t\treturn FixedStr;\r\n\t\t},\r\n\t\tRenderSingleCarousel: function(Name, Data) {\r\n\t\t\tvar FixedPart = \"\",\r\n\t\t\t\tCarouselPart = \"\",\r\n\t\t\t\tHeading = Data[0],\r\n\t\t\t\tself = this;\r\n\t\t\tfor(var key in Heading) {\r\n\t\t\t\tif(Array.isArray(Heading[key])) {\r\n\t\t\t\t\tCarouselPart += '
    '+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\t\t'
    '+ key +'
    '+\r\n\t\t\t\t\t\t\t\t\t\t\tself.getKeyChild(key, Heading[key])+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\tself.getData(key, Data)+\r\n\t\t\t\t\t\t\t\t\t'
    ';\r\n\t\t\t\t} else {\r\n\t\t\t\t\tFixedPart += '
    '+ key +'
    '+\r\n\t\t\t\t\t\t\t\t\tself.getFixedData(key, Data);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tvar Carousel = '
    '+\r\n\t\t\t\t\t\t\t\t'' + Name + ''+\r\n\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\tFixedPart+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\tCarouselPart+\r\n\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t'
    ';\r\n\r\n\t\t\treturn Carousel;\r\n\t\t},\r\n\t\tinit: function(data, id) {\r\n\t\t\tvar self = this;\r\n\t\t\tself.RenderTable(data[0], id);\r\n\t\t}\r\n\t}\r\n\r\n\tif($('#shipContainerShip').length > 0) {\r\n\t\tshipContainerShip.init(window.jsonShipContainerShip, $('#shipContainerShip'));\t\r\n\t}\r\n\t\r\n\r\n\t\r\n})();","(function () {\r\n\t// body...\r\n\t'use strict';\r\n\r\n\tvar shipRoro = {\r\n\t\tRenderTable: function(data, Parent) {\r\n\t\t\tvar self = this, TableStr = \"\";\r\n\t\t\tParent.empty();\r\n\t\t\t\r\n\t\t\tfor(var key in data[0]) {\r\n\t\t\t\tTableStr += self.RenderSingleTable(data[0][key]);\r\n\t\t\t}\r\n\r\n\t\t\tParent.append(TableStr);\r\n\r\n\t\t},\r\n\t\tRenderSingleTable: function(Data) {\r\n\t\t\tconsole.log(Data);\r\n\t\t\tvar HeadingStr = \"\",\r\n\t\t\t\tSubHeadingStr = \"\",\r\n\t\t\t\tTbodyStr = \"\",\r\n\t\t\t\tHeading = Data[0];\r\n\r\n\r\n\t\t\tfor(var key in Heading) {\r\n\t\t\t\t\tHeadingStr += \"\"+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+ key +'
    '+\r\n\t\t\t\t\t\t\t\t\t\"\";\r\n\t\t\t}\r\n\r\n\t\t\tfor(var i = 0; i < Data.length; i++) {\r\n\t\t\t\tvar EachValue = Data[i],\r\n\t\t\t\t\tTd = \"\",\r\n\t\t\t\t\talign = \"right\";\r\n\t\t\t\tfor(var key1 in EachValue) {\r\n\t\t\t\t\tTd += '' + EachValue[key1] + '';\r\n\t\t\t\t}\r\n\t\t\t\tTbodyStr += '' +Td + '';\r\n\t\t\t}\r\n\r\n\t\t\tvar Table = ''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\tHeadingStr+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tTbodyStr+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t'
    ';\r\n\r\n\r\n\t\t\treturn Table;\r\n\t\t},\r\n\t\tinit: function(data, id) {\r\n\t\t\tvar self = this;\r\n\t\t\tself.RenderTable(data, id);\r\n\t\t}\r\n\t}\r\n\t\r\n\tif($('#shipRoro').length > 0) {\r\n\t\tshipRoro.init(window.jsonshipRoro, $('#shipRoro'));\t\r\n\t}\r\n\r\n\t\r\n})();","(function () {\r\n\tvar shipContainerFixtures = {\r\n\t\trenderDateData: function(data){\r\n\t\t\tif(data[0]['SelectDate'] !== undefined){\r\n\t\t\t\t$('#shipfixselectDay').html(this.loadDropdownData(data[0]['SelectDate']));\r\n\t\t\t}\r\n\t\t},\r\n\t\tloadDropdownData: function(options){\r\n\t\t\tvar optionStr = '';\r\n\t\t\ttry {\r\n\t\t\t\t$.each(options, function(idx, val){\r\n\t\t\t\t\tif(idx === 0){\r\n\t\t\t\t\t\toptionStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse{\r\n\t\t\t\t\t\toptionStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\treturn optionStr;\r\n\t\t\t}\r\n\t\t\tcatch(err) {\r\n\t\t\t\t$('#shipFixtures').html('
    ');\r\n\t\t\t}\r\n\t\t},\r\n\t\trenderTable: function(){\r\n\t\t\tvar self = this, loadDateVal = $('#shipfixselectDay option').val();\r\n\t\t\t\r\n\t\t\tself.callAjaxFn(loadDateVal);\r\n\t\t\t$(document).on('change', '#shipfixselectDay', function(){\r\n\t\t\t\tvar selectDateVal = $('#shipfixselectDay option').val();\r\n\t\t\t\tself.callAjaxFn(selectDateVal);\r\n\t\t\t});\r\n\t\t},\r\n\t\tcallAjaxFn: function(seldateVal){\r\n\t\t\t var self = this;\r\n\t\t\t$.ajax({\r\n\t\t\t\turl: '/Download/JsonDataFromFeed/ReadJsonMarketFixture/',\r\n\t\t\t\tdata: {'dateVal': seldateVal, 'feedUrl': $('#shipfixHiddenVal').val()},\r\n\t\t\t\tdataType: 'json',\r\n\t\t\t\ttype: 'GET',\r\n\t\t\t\tsuccess: function (searchData) {\r\n\t\t\t\t\tif(searchData && searchData.length){\r\n\t\t\t\t\t\tself.sendHTTPRequest(searchData);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse{\r\n\t\t\t\t\t\tif(searchData && searchData.length === 0){\r\n\t\t\t\t\t\t\t$('#shipFixtures').html('
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\t$('#shipFixtures').html('
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\terror: function (err) { \r\n\t\t\t\t\t$('#shipFixtures').html('
    ');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tsendHTTPRequest: function(searchData){\r\n\t\t\t$('#shipFixtures').html(this.loadDataView(searchData[0]));\r\n\t\t},\r\n\t\tloadDataView: function(tableData){\r\n\t\t\tvar tableStr = '', idx = 0;\r\n\t\t\tfor(var prop in tableData){\r\n\t\t\t\tidx++;\r\n\t\t\t\tvar cls = (idx % 2 == 0) ? 'oddCls' : '';\r\n\t\t\t\ttableStr += '';\r\n\t\t\t}\r\n\t\t\ttableStr += '
    ' + tableData[prop] + '
    ';\r\n\t\t\treturn tableStr;\r\n\t\t},\r\n\t\tinit: function(dateObj) {\r\n\t\t\tthis.renderDateData(dateObj);\r\n\t\t\tthis.renderTable();\r\n\t\t}\r\n\t}\r\n\t\r\n\t$(document).ready(function() {\r\n\t\tif($('#shipContainerFixtures').length > 0) { \r\n\t\t\tif(typeof window.shipContShipFixDateOptions !== 'undefined' && typeof window.shipContShipFixDateOptions !== 'string'){\r\n\t\t\t\tshipContainerFixtures.init(window.shipContShipFixDateOptions);\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#shipFixtures').html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n})();","(function () {\r\n\tvar tankerFixtures = {\r\n\t\trenderDateData: function(data){\r\n\t\t\tif(data[0]['SelectDate'] !== undefined){\r\n\t\t\t\t$('#tankerselectDay').html(this.loadDropdownData(data[0]['SelectDate']));\r\n\t\t\t}\r\n\t\t},\r\n\t\tloadDropdownData: function(options){\r\n\t\t\tvar optionStr = '';\r\n\t\t\ttry {\r\n\t\t\t\t$.each(options, function(idx, val){\r\n\t\t\t\t\tif(idx == 0){\r\n\t\t\t\t\t\toptionStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse{\r\n\t\t\t\t\t\toptionStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\treturn optionStr;\r\n\t\t\t}\r\n\t\t\tcatch(err) {\r\n\t\t\t\t$('#tankerFixtures').html('
    ');\r\n\t\t\t}\r\n\t\t},\r\n\t\trenderTable: function(tableData){\r\n\t\t\tvar self = this, loadDateVal = $('#tankerselectDay option').val();\r\n\t\t\t/*for(var prop in tableObj[0]){\r\n\t\t\t\tself.sendHTTPRequest(tableObj[0][prop], prop);\r\n\t\t\t}*/\t\t\r\n\t\t\tself.callAjaxFn(loadDateVal);\r\n\t\t\t$(document).on('change', '#tankerselectDay', function(){\r\n\t\t\t\tvar selectDateVal = $('#tankerselectDay option').val();\r\n\t\t\t\tself.callAjaxFn(selectDateVal);\r\n\t\t\t});\r\n\t\t},\r\n\t\tcallAjaxFn: function(seldateVal){\r\n\t\t\t var self = this;\r\n\t\t\t$.ajax({\r\n\t\t\t\turl: '/Download/JsonDataFromFeed/ReadJsonMarketFixture/',\r\n\t\t\t\tdata: {'dateVal': seldateVal, 'feedUrl': $('#TankerFixHiddenVal').val()},\r\n\t\t\t\tdataType: 'json',\r\n\t\t\t\ttype: 'GET',\r\n\t\t\t\tsuccess: function (searchData) {\r\n\t\t\t\t\tif(searchData && searchData.length){\r\n\t\t\t\t\t\t$('#tankerFixtures').empty();\r\n\t\t\t\t\t\tfor(var prop in searchData[0]){\r\n\t\t\t\t\t\t\tself.sendHTTPRequest(searchData[0][prop], prop);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse{\r\n\t\t\t\t\t\tif(searchData && searchData.length == 0){\r\n\t\t\t\t\t\t\t$('#tankerFixtures').html('
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\t$('#tankerFixtures').html('
    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t},\r\n\t\t\t\terror: function (err) {\r\n\t\t\t\t\t$('#tankerFixtures').html('
    ');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\tsendHTTPRequest: function(searchData, prop){\r\n\t\t\tvar self = this, tableStr = '';\r\n\r\n\t\t\ttableStr += self.loadDesktopView(searchData, prop);\r\n\t\t\ttableStr += self.loadMobileView(searchData, prop);\r\n\t\t\t \r\n\t\t\t$('#tankerFixtures').append(tableStr);\r\n\t\t},\r\n\t\tloadDesktopView: function(tableData, prop){\r\n\t\t\tvar tableStr = '', tableHead = tableData[0], rowIdx = 0;\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\tfor(var prop1 in tableHead){\r\n\t\t\t\t\ttableStr += '';\r\n\t\t\t\t}\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\t\r\n\t\t\t\ttableStr += '';\t\t\r\n\t\t\t\tfor(var i=0; i';\r\n\t\t\t\t\tfor(var prop2 in tableData[i]){\r\n\t\t\t\t\t\ttableStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\ttableStr += '';\r\n\t\t\t\t}\r\n\t\t\t\ttableStr += '';\r\n\t\t\t\ttableStr += '
    '+prop+'
    '+prop1+'
    '+tableData[i][prop2]+'
    ';\r\n\t\t\t\t\t \r\n\t\t\treturn tableStr;\r\n\t\t},\r\n\t\tloadMobileView: function(tableData, prop){\r\n\t\t\tvar mobileStr = '';\r\n\t\t\t\tmobileStr += '';\r\n\t\t\t\tmobileStr += '';\r\n\t\t\t\tmobileStr += '';\r\n\t\t\t\tmobileStr += '';\r\n\t\t\t\tmobileStr += '';\r\n\t\t\t\tmobileStr += '';\r\n\t\t\t\t$.each(tableData, function(p, v){\r\n\t\t\t\t\tmobileStr += '';\r\n\t\t\t\t\tfor(var prop in v){\r\n\t\t\t\t\t\tmobileStr += '';\r\n\t\t\t\t\t\tmobileStr += '';\r\n\t\t\t\t\t\tmobileStr += '';\r\n\t\t\t\t\t\tmobileStr += '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\tmobileStr += '';\r\n\t\t\t\t\tmobileStr += '';\r\n\t\t\t\t});\r\n\t\t\t\tmobileStr += '
    '+prop+'
    '+prop+''+v[prop]+'
    '; \r\n\t\t\treturn mobileStr;\r\n\t\t},\r\n\t\tinit: function(dateObj) {\r\n\t\t\tthis.renderDateData(dateObj);\r\n\t\t\tthis.renderTable();\r\n\t\t}\r\n\t}\r\n\t\r\n\t$(document).ready(function() {\r\n\t\tif($('#tanker-fixtures').length > 0) {\r\n\t\t\tif(typeof window.TankerFixturesDateOptions !== 'undefined' && typeof window.TankerFixturesDateOptions !== 'string'){\r\n\t\t\t\ttankerFixtures.init(window.TankerFixturesDateOptions);\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\t$('#tankerFixtures').html('
    ');\r\n\t\t\t} \r\n\t\t}\r\n\t});\r\n})();","(function () {\r\n\t// body...\r\n\t'use strict';\r\n\r\n\tvar tankerPureChem = {\r\n\t\tRenderTable: function(data, Parent) {\r\n\t\t\tvar self = this, TableStr = \"\";\r\n\t\t\tParent.empty();\r\n\t\t\t\r\n\r\n\t\t\t//Heading\r\n\t\t\tfor(var key in data) {\r\n\t\t\t\tTableStr += self.RenderSingleTable(key, data[key]);\r\n\t\t\t}\r\n\r\n\t\t\tParent.append(TableStr);\r\n\t\t\tParent.find('.R16').mouseover(function(){\r\n\t\t\t\talert('Enter..!');\r\n\t\t\t});\r\n\t\t},\r\n\t\tRenderSingleTable: function(heading, Data) {\r\n\t\t\tconsole.log(Data);\r\n\t\t\tvar SubHeadingStr = \"\",\r\n\t\t\t\tSubSubHeadingStr = \"\",\r\n\t\t\t\tTbodyStr = \"\",\r\n\t\t\t\tSubHeading = Data[0];\r\n\r\n\t\t\tfor(var key in SubHeading) {\r\n\t\t\t\tif(key !== 'Age'){\r\n\t\t\t\t\tSubHeadingStr += ''+ key +'';\r\n\t\t\t\t}\r\n\t\t\t\telse{\r\n\t\t\t\t\tSubHeadingStr += ''+ key +'';\r\n\t\t\t\t}\r\n\t\t\t\tif(Array.isArray(SubHeading[key])) {\r\n\t\t\t\t\tvar SubHeadingArray = SubHeading[key][0];\r\n\t\t\t\t\tfor(var sub in SubHeadingArray) {\r\n\t\t\t\t\t\tSubSubHeadingStr += '' +sub+ '';\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tSubSubHeadingStr += '';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tvar rowIdx = 0;\r\n\t\t\tfor(var i = 0; i< Data.length; i++) {\r\n\t\t\t\trowIdx++;\r\n\t\t\t\tvar Body = \"\",\r\n\t\t\t\t\tValues = Data[i],\r\n\t\t\t\t\trowcls = (rowIdx % 2 === 0) ? 'oddCls' : '';\r\n\r\n\t\t\t\tfor(var key1 in Values) {\r\n\t\t\t\t\tif(Array.isArray(Values[key1])) {\r\n\t\t\t\t\t\tvar items = Values[key1][0];\r\n\t\t\t\t\t\tfor(var k in items) {\r\n\t\t\t\t\t\t\tBody += '' +items[k]+ '';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tBody += '' +Values[key1]+ '';\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tTbodyStr += '' + Body + '';\r\n\t\t\t}\r\n\r\n\t\t\tvar Table = ''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tSubHeadingStr+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tSubSubHeadingStr+\r\n\t\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t\t\tTbodyStr+\r\n\t\t\t\t\t\t\t''+\r\n\t\t\t\t\t\t'
    ' + heading + '
    ';\r\n\r\n\r\n\t\t\treturn Table;\r\n\t\t},\r\n\t\tRenderCarousel: function(data, Parent) {\r\n\t\t\tvar self = this, CarouselStr = \"\";\r\n\t\t\tParent.empty();\r\n\t\t\t\r\n\r\n\t\t\t//Heading\r\n\t\t\tfor(var key in data) {\r\n\t\t\t\tCarouselStr += self.RenderSingleCarousel(key, data[key]);\r\n\t\t\t}\r\n\r\n\t\t\tParent.append(CarouselStr);\r\n\t\t\tself.InitCarousel(Parent);\r\n\t\t\tself.setColHeight(Parent);\r\n\t\t},\r\n\t\tInitCarousel: function(Parent) {\r\n\t\t\tParent.find('.owl-carousel').owlCarousel({\r\n loop:false,\r\n margin:0,\r\n merge:true,\r\n nav:false,\r\n\t\t\t slideBy: 1, \r\n responsive:{\r\n 0:{\r\n items:1\r\n },\r\n 678:{\r\n items:1\r\n },\r\n 320:{\r\n items:1\r\n },\r\n 480:{\r\n items:1\r\n },\r\n\t\t\t 768:{\r\n\t\t\t\titems:2\r\n\t\t\t },\r\n\t\t\t 1025:{\r\n\t\t\t\titems:3\r\n\t\t\t }\r\n }\r\n });\r\n\t\t},\r\n\t\tgetData: function(key, Data) {\r\n\t\t\tvar ArticleStr = \"\";\r\n\t\t\tfor(var i = 0; i < Data.length; i++) {\r\n\t\t\t\t// ArticleStr += Data[i][]\r\n\t\t\t\tvar ArticleContent = Data[i][key][0];\r\n\t\t\t\tvar Str = \"\";\r\n\t\t\t\tfor(var k in ArticleContent) {\r\n\t\t\t\t\tStr += ''+ArticleContent[k]+'';\r\n\t\t\t\t}\r\n\t\t\t\tArticleStr += '
    ' + Str + '
    ';\r\n\t\t\t}\r\n\t\t\treturn ArticleStr;\r\n\t\t},\r\n\t\tgetKeyChild: function(key, Object) {\r\n\t\t\tvar ChildStr = \"\";\r\n\t\t\tfor(var i in Object[0]) {\r\n\t\t\t\tChildStr += \"\" + i + \"\";\r\n\t\t\t}\r\n\t\t\treturn ChildStr;\r\n\t\t},\r\n\t\tgetFixedData: function(key, Data) {\r\n\t\t\tvar FixedStr = \"\";\r\n\t\t\tfor(var i=0; i < Data.length; i++) {\r\n\t\t\t\tFixedStr += '
    ' + Data[i][key] + '
    ';\r\n\t\t\t}\r\n\t\t\treturn FixedStr;\r\n\t\t},\r\n\t\tRenderSingleCarousel: function(Name, Data) {\r\n\t\t\tvar FixedPart = \"\",\r\n\t\t\t\tCarouselPart = \"\",\r\n\t\t\t\tHeading = Data[0],\r\n\t\t\t\tself = this;\r\n\t\t\tfor(var key in Heading) {\r\n\t\t\t\tif(Array.isArray(Heading[key])) {\r\n\t\t\t\t\tCarouselPart += '
    '+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\t\t'
    '+ key +'
    '+\r\n\t\t\t\t\t\t\t\t\t\t\tself.getKeyChild(key, Heading[key])+\r\n\t\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\tself.getData(key, Data)+\r\n\t\t\t\t\t\t\t\t\t'
    ';\r\n\t\t\t\t} else {\r\n\t\t\t\t\tFixedPart += '
    '+ key +'
    '+\r\n\t\t\t\t\t\t\t\t\tself.getFixedData(key, Data);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tvar Carousel = '
    '+\r\n\t\t\t\t\t\t\t\t'' + Name + ''+\r\n\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\tFixedPart+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t\t\tCarouselPart+\r\n\t\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t\t'
    '+\r\n\t\t\t\t\t\t\t'
    ';\r\n\r\n\t\t\treturn Carousel;\r\n\t\t},\r\n\t\tsetColHeight: function(parentId){\r\n\t\t\tfor (var i = 0; i < parentId.find('.states_heading').length; i++) {\r\n\t\t\t\tvar stateObj = parentId.find('.states_heading')[i];\r\n\t\t\t\t$('.R16', stateObj).each(function (idx) {\r\n\t\t\t\t\tvar $this = $(this),\r\n\t\t\t\t\t\tcolHeight = $this.height();\r\n\t\t\t\t\t$('.owl-stage-outer:eq(' + i + ')', parentId).find('.article').each(function () {\r\n\t\t\t\t\t\t$($(this).find('.R16')[idx]).css('height', colHeight);\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t},\r\n\t\tinit: function(data, id) {\r\n\t\t\tif(data.length !== 0){\r\n\t\t\t\tvar self = this, dataObj = data[0], idx = 0;\r\n\t\t\t\t\r\n\t\t\t\tfor(var prop in dataObj){\r\n\t\t\t\t\tfor(var key in dataObj[prop][0]){\r\n\t\t\t\t\t\tidx++;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\tif($(window).width() < 780 || idx > 5)\r\n\t\t\t\t\tself.RenderCarousel(dataObj, id);\r\n\t\t\t\telse\r\n\t\t\t\t\tself.RenderTable(dataObj, id);\r\n\t\t\t\t\r\n\t\t\t\t$(window).resize(function() {\r\n\t\t\t\t\tself.setColHeight(id);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\tid.html('
    ');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tif($('#tankerPureChemPage').length > 0) {\r\n\t\tif(typeof window.currentFleetTableData !== 'undefined' && typeof window.currentFleetTableData !== 'string'){\r\n\t\t\ttankerPureChem.init(window.currentFleetTableData, $('#tankerPureChemPage'));\r\n\t\t}\r\n\t\telse{\r\n\t\t\t$('#tankerPureChemPage').css('margin-bottom', '1rem');\r\n\t\t\t$('#tankerPureChemPage').html('
    ');\r\n\t\t}\r\n\t\t\r\n\t}\r\n})();","$(document).ready(function () {\r\n // method to generate GUID\r\n function getUUID(a) {\r\n return a ? (a ^ Math.random() * 16 >> a / 4).toString(16) : ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, getUUID);\r\n }\r\n\r\n function getUUIDElement(item, text){\r\n var uniqueId = getUUID();\r\n var ele = document.createElement('p');\r\n var child = document.createElement('a');\r\n child.href = \"#\" + uniqueId;\r\n child.innerText = text;\r\n child.setAttribute(\"class\", \"click-utag\");\r\n child.setAttribute(\"data-info\", JSON.stringify({}));\r\n item.id = uniqueId;\r\n ele.appendChild(child);\r\n return ele;\r\n }\r\n\r\n var jumpToSection = $(\"#longReadJumpToSection\");\r\n var longReadWithAssets = $(\".longReadWithAssets\"); //Used for Omdia\r\n var longReadContent;\r\n var longReadFigures;\r\n var isLongReadWithAssets;\r\n if(longReadWithAssets.length > 0){\r\n isLongReadWithAssets = true;\r\n longReadContent = $(\".longread-content\");\r\n longReadFigures = $(\".longread-figures\");\r\n }\r\n var articleBody = $(\"#main-well\");\r\n var contentsAvailable = false;\r\n if (articleBody) {\r\n var headers = $(articleBody).find('h2');\r\n if (headers && headers.length > 0) {\r\n headers.each(function (item) {\r\n var ele = getUUIDElement(headers[item], headers[item].innerText);\r\n if(isLongReadWithAssets){\r\n longReadContent.append(ele);\r\n contentsAvailable = true;\r\n }else{\r\n jumpToSection.append(ele); //Legacy code this should work\r\n }\r\n\r\n })\r\n if(isLongReadWithAssets){\r\n var methodology = $(articleBody).find('h5');\r\n if( methodology && methodology.length > 0){\r\n methodology.each(function (item) {\r\n if(methodology[item].innerText == \"Methodology\"){\r\n longReadContent.append(getUUIDElement(methodology[item], methodology[item].innerText));\r\n }\r\n })\r\n\r\n }\r\n\r\n longReadContent.show();\r\n }\r\n jumpToSection.show();\r\n }\r\n //Omdia specific - Long article sidebar with images links\r\n if(isLongReadWithAssets){\r\n var imgs = $(articleBody).find('.enlarge');\r\n if (imgs && imgs.length > 0) {\r\n imgs.each(function (item) {\r\n var ele = getUUIDElement(imgs[item], imgs[item].title);\r\n longReadFigures.append(ele);\r\n })\r\n }\r\n var downloads = $(\".download-btn\");\r\n if( downloads && downloads.length > 0){\r\n downloads.each(function (item) {\r\n var ele = getUUIDElement(downloads[item], downloads[item].innerText);\r\n if(isLongReadWithAssets){\r\n longReadFigures.append(ele);\r\n }\r\n })\r\n }\r\n\r\n if( imgs.length > 0 || downloads.length > 0 ){\r\n longReadFigures.show();\r\n }\r\n else{\r\n longReadFigures.hide();\r\n }\r\n\r\n\r\n }\r\n if(!contentsAvailable){\r\n if($(\".longread-content\")){\r\n $(\".longread-content\").hide();\r\n }\r\n }\r\n }\r\n});\r\n\r\n\r\nwindow.onload = function (e) {\r\n function CreateHtmlForGoogleAd(advertising) {\r\n var adRootNode = document.createElement(advertising.parentNode.nodeName.toLocaleLowerCase());\r\n adRootNode.setAttribute(\"class\", advertising.parentNode.className);\r\n\r\n var adDivNode = document.createElement(advertising.nodeName.toLocaleLowerCase());\r\n adDivNode.setAttribute(\"class\", advertising.className);\r\n\r\n //Add Advertisement label element\r\n var adLabelElement = $(advertising).find('.advertising__label');\r\n if (adLabelElement && adLabelElement.length > 0) {\r\n adDivNode.innerHTML = adLabelElement[0].outerHTML;\r\n }\r\n /*\r\n * Input Sample:\r\n *
    \r\n \r\n
    \r\n */\r\n var googleAdDiv = $(advertising).find('[id^=div-gpt-ad-]');\r\n\r\n var newDiv = document.createElement(googleAdDiv.prop(\"tagName\"));\r\n newDiv.setAttribute(\"id\", \"div-gpt-ad-\" + googleAdDiv.data(\"ad-newguid\") + \"-\" + googleAdDiv.data(\"ad-slotid\"));\r\n\r\n var scriptTag = document.createElement(\"script\");\r\n scriptTag.append(\"var position = \" + JSON.stringify(googleAdDiv.data(\"ad-position\")) + \";\");\r\n scriptTag.append(\"var divId = '\" + newDiv.id + \"';\");\r\n scriptTag.append(\"var sizeMappings = \" + JSON.stringify(googleAdDiv.data(\"ad-sizemappings\")) + \";\");\r\n scriptTag.append(\"var enableResponsiveAds = \" + googleAdDiv.data(\"ad-enableresponsiveads\") + \";\");\r\n scriptTag.append(\"Google_Ads('\" + googleAdDiv.data(\"ad-slotid\") + \"', position, divId, sizeMappings, enableResponsiveAds);\");\r\n newDiv.innerHTML = scriptTag.outerHTML;\r\n\r\n adDivNode.append(newDiv);\r\n $(adRootNode).append(adDivNode);\r\n return adRootNode;\r\n }\r\n function IgnoreTag(tag) {\r\n var result = false;\r\n if (tag.innerHTML == \"\") {\r\n result = true;\r\n }\r\n var pToSkip = [\"Insight-Table-Style\", \"quick-facts\", \"js-ignore-longread\", \"article-exhibit__header\", \"article-exhibit__title\", \"article-exhibit\", \"iframe-component\", \"article-sidebar\", \"article-pullquote\"];\r\n var tagClasses = tag.classList;\r\n if (tagClasses && tagClasses.length > 0) {\r\n tagClasses.forEach(function (tagClass) {\r\n if (pToSkip.indexOf(tagClass) >= 0) result = true;\r\n });\r\n }\r\n return result;\r\n }\r\n function IsPrevoiusElementOK(tag) {\r\n return tag.previousElementSibling == null || !IgnoreTag(tag.previousElementSibling) && tag.previousElementSibling.innerHTML != \"\";\r\n }\r\n var articleBodyContainer = $(\"#main-well\");\r\n if (articleBodyContainer && articleBodyContainer.length > 0) {\r\n var articleRightRail = $(\".article-right-rail\");\r\n if (articleRightRail && articleRightRail.length > 0) {\r\n var articleCTA = $('.article-call-to-action');\r\n if (articleCTA && articleCTA.length > 0) {\r\n articleRightRail.css(\"visibility\", \"visible\");\r\n } else {\r\n var rightRailChildren = articleRightRail.find('.js-article-longread-right-rail-item, .advertising');\r\n if (rightRailChildren && rightRailChildren.length > 0) {\r\n var metaTagEndHeight = isNaN($('#long-metadata')[0].offsetTop + $('#long-metadata')[0].offsetHeight) ? 0 : $('#long-metadata')[0].offsetTop + $('#long-metadata')[0].offsetHeight;\r\n var pTags = articleBodyContainer.children('.root') ? articleBodyContainer.children('.root').children() : null; //articleBodyContainer.find('p, aside, div.iframe-component, ul.article-list--ul');\r\n if (pTags && pTags.length > 0) {\r\n var rightChildrenCount = rightRailChildren.length;\r\n var processedRightChildernCount = 0;\r\n var nextOffsetTop = 0;\r\n var groupOfTags = document.createElement(\"aside\");\r\n groupOfTags.setAttribute(\"class\", \"inline-related-content js-group-tags\");\r\n var tagProcessed = false;\r\n pTags.each(function (item) {\r\n tagProcessed = false;\r\n //If p tag doesn't sharing real estate with meta data section\r\n if (($(pTags[item])[0].offsetTop > metaTagEndHeight)) {\r\n if (processedRightChildernCount < rightChildrenCount) {\r\n if (!IgnoreTag(pTags[item]) && $(pTags[item])[0].offsetTop > nextOffsetTop) {\r\n if (IsPrevoiusElementOK(pTags[item])) {\r\n var element = document.createElement(\"aside\");\r\n element.setAttribute(\"class\", \"inline-related-content\");\r\n\r\n if ($(rightRailChildren[processedRightChildernCount]).hasClass('js-longread-group-tags')) {\r\n $(groupOfTags).append(rightRailChildren[processedRightChildernCount].outerHTML);\r\n element.classList.add(\"js-longread-tag\");\r\n if (groupOfTags.childNodes.length > 1) {\r\n element.classList.add(\"remove\");\r\n }\r\n } else if ($(rightRailChildren[processedRightChildernCount]).hasClass('advertising')) {\r\n $(element).append(CreateHtmlForGoogleAd(rightRailChildren[processedRightChildernCount]));\r\n } else {\r\n element.innerHTML = rightRailChildren[processedRightChildernCount].outerHTML;\r\n }\r\n if (!element.classList.contains(\"remove\") || element.innerHTML != \"\") {\r\n if (window.matchMedia(\"(max-width: 767px)\").matches) {\r\n $(element).insertAfter(pTags[item]);\r\n } else {\r\n $(element).insertBefore(pTags[item]);\r\n }\r\n }\r\n var rightRailElementOffsetHeight = rightRailChildren[processedRightChildernCount].offsetHeight;\r\n if (rightRailChildren[processedRightChildernCount].classList.value.split(' ').indexOf('contentRecommendations') >= 0) {\r\n rightRailElementOffsetHeight = 2400;\r\n }\r\n nextOffsetTop = isNaN($(pTags[item])[0].offsetTop + rightRailElementOffsetHeight) ? 0 : $(pTags[item])[0].offsetTop + rightRailElementOffsetHeight;\r\n\r\n processedRightChildernCount++;\r\n } else {\r\n var pTagBottom = isNaN($(pTags[item])[0].offsetTop + $(pTags[item].previousElementSibling)[0].offsetHeight) ? 0 : $(pTags[item])[0].offsetTop + $(pTags[item].previousElementSibling)[0].offsetHeight;\r\n if (pTagBottom > nextOffsetTop) {\r\n tagProcessed = true;\r\n nextOffsetTop = pTagBottom;\r\n }\r\n }\r\n }\r\n else {\r\n var pTagBottom = isNaN($(pTags[item])[0].offsetTop + $(pTags[item])[0].offsetHeight) ? 0 : $(pTags[item])[0].offsetTop + $(pTags[item])[0].offsetHeight;\r\n if (pTagBottom > nextOffsetTop) {\r\n tagProcessed = processedRightChildernCount <= 0;\r\n nextOffsetTop = pTagBottom;\r\n }\r\n }\r\n }\r\n\r\n if (!tagProcessed && $(pTags[item])[0].offsetTop < nextOffsetTop &&\r\n IgnoreTag(pTags[item]) && pTags[item].innerHTML != \"\" && !window.matchMedia(\"(max-width: 767px)\").matches) {\r\n if (!pTags[item].classList.contains(\"article-pullquote\")) {\r\n $(pTags[item]).css('max-width', '33.33%');\r\n } else {\r\n $(pTags[item]).css('max-width', '73%');\r\n }\r\n }\r\n }\r\n });\r\n var element = document.createElement(\"aside\");\r\n element.setAttribute(\"class\", \"inline-related-content\");\r\n while (processedRightChildernCount < rightChildrenCount) {\r\n if ($(rightRailChildren[processedRightChildernCount]).hasClass('js-longread-group-tags')) {\r\n $(groupOfTags).append(rightRailChildren[processedRightChildernCount].outerHTML);\r\n element.classList.add(\"js-longread-tag\");\r\n if (groupOfTags.childNodes.length > 1) {\r\n element.classList.add(\"remove\");\r\n }\r\n } else if ($(rightRailChildren[processedRightChildernCount]).hasClass('advertising')) {\r\n $(element).append(CreateHtmlForGoogleAd(rightRailChildren[processedRightChildernCount]));\r\n } else {\r\n element.append(rightRailChildren[processedRightChildernCount]);\r\n }\r\n processedRightChildernCount++;\r\n }\r\n if (!element.classList.contains(\"remove\") || element.innerHTML != \"\") {\r\n articleBodyContainer.first().append(element);\r\n }\r\n if ($(articleBodyContainer).find('.js-longread-tag').length > 0) {\r\n $(articleBodyContainer).find('.js-longread-tag')[0].innerHTML = groupOfTags.innerHTML;\r\n }\r\n articleRightRail.hide();\r\n } else {\r\n articleRightRail.css(\"visibility\", \"visible\");\r\n }\r\n }\r\n }\r\n }\r\n }\r\n};\r\n","\r\nsetTimeout(function(){$('.selectivity-input').on('change', function(event)\r\n{\r\n var formIframe;\r\n if(event.currentTarget.id !== 'natureOfEnquiry'){\r\n return;\r\n }\r\n if(event.currentTarget.selectivity._value){\r\n formIframe = event.currentTarget.parentElement.parentElement.getElementsByTagName('iframe')[0];\r\n if(formIframe){\r\n if(event.currentTarget.selectivity._value.includes(\"Select One\")){\r\n formIframe.src = \"\";\r\n formIframe.style.display = 'none';\r\n }else{\r\n formIframe.src = event.currentTarget.selectivity._value;\r\n }\r\n }\r\n }\r\n});}, 0);\r\n\r\n","import { analyticsEvent } from '../controllers/analytics-controller';\r\n\r\nvar saveOriginFlag = false;;\r\nfunction setClsforFlw(t) {\r\n for (var i = 0; i < t.length; i++) {\r\n var tableFlwrow = $(t[i]).find('.followrow.disabled:eq(0)');\r\n tableFlwrow.addClass('frow');\r\n }\r\n}\r\n\r\nfunction createJSONData(alltables, UserPreferences, url) {\r\n for (var i = 0; i < alltables.length; i++) {\r\n var currenttabtrs = $(alltables[i]).find('tbody tr'),\r\n getlableStatus = $(alltables[i]).find('thead .lableStatus').val(),\r\n pubPanPosition = $(alltables[i]).closest('.publicationPan').attr('data-row'),\r\n tableId = $(alltables[i]).attr('id'),\r\n publicationName = $(alltables[i]).find('h2').attr('data-publication'),\r\n //subscribeStatus = $(alltables[i]).find('.subscribed').html(),\r\n channelId = $(alltables[i]).find('h2').attr('data-item-id'),\r\n channelStatus = $(alltables[i]).find('h2').attr('data-item-status');\r\n //channellblStatus = (getlableStatus == 'followinglbl') ? $('#followingButtonText').val() : $('#followButtonText').val();\r\n var alltdata = [];\r\n for (var j = 0; j < currenttabtrs.length; j++) {\r\n var eachrowAttr = $(currenttabtrs[j]).find('input[type=hidden]').attr('data-row-topic'),\r\n topicId = $(currenttabtrs[j]).find('input[type=hidden]').attr('data-row-item-id'),\r\n secondtd = $(currenttabtrs[j]).find('td.wd-25 span').html(),\r\n datarowNo = $(currenttabtrs[j]).attr('data-row');\r\n\r\n var followStatus = (secondtd === $('#followingButtonText').val()) ? true : false;\r\n //var subscripStatus = (subscribeStatus.toUpperCase()) == 'SUBSCRIBED' ? true : false;\r\n\r\n alltdata.push({ 'TopicCode': eachrowAttr, 'TopicOrder': datarowNo, 'IsFollowing': followStatus });\r\n }\r\n UserPreferences.PreferredChannels.push({ \"ChannelCode\": publicationName, \"ChannelOrder\": pubPanPosition, \"IsFollowing\": channelStatus, Topics: alltdata });\r\n }\r\n sendHttpRequest(UserPreferences, null, url);\r\n}\r\n\r\nfunction sendHttpRequest(UserPreferences, setFlag, redirectUrl) {\r\n $.ajax({\r\n url: '/Account/api/PersonalizeUserPreferencesApi/Update/',\r\n data: { 'UserPreferences': JSON.stringify(UserPreferences) },\r\n dataType: 'json',\r\n type: 'POST',\r\n success: function (data) {\r\n if (data && data.success) {\r\n SetIsFreeTrialCookieForReg();\r\n $('.alert-success p').html(data.reason);\r\n $('.alert-success').show();\r\n if ($('.alert-success').length > 0) {\r\n $(window).scrollTop($('.informa-ribbon').offset().top + $('.informa-ribbon').height());\r\n }\r\n if ((setFlag === 'register' || setFlag == null) && redirectUrl === 'href') {\r\n window.location.href = saveOriginFlag ? $('.saveOrigin').attr('name') : $('.registrationBtn').attr('href');\r\n }\r\n else if ((setFlag === 'register' || setFlag == null) && redirectUrl === 'name') {\r\n window.location.href = saveOriginFlag ? $('.saveOrigin').attr('name') : $('.completeReg').attr('name')\r\n }\r\n if ($('.modal-overlay').hasClass('in')) {\r\n if (redirectUrl !== 'href' && redirectUrl !== 'name') {\r\n window.location.href = redirectUrl;\r\n }\r\n }\r\n }\r\n else {\r\n if (data.redirectUrl !== null && data.redirectUrl) {\r\n window.location.href = data.redirectUrl;\r\n return false;\r\n }\r\n if (redirectUrl !== 'href' && redirectUrl !== 'name') {\r\n window.location.href = redirectUrl;\r\n }\r\n if (setFlag === 'register') {\r\n $('.alert-error.register-error p').html(data.reason);\r\n $('.alert-error.register-error').show();\r\n }\r\n else {\r\n $('.alert-error.myview-error p').html(data.reason);\r\n $('.alert-error.myview-error').show();\r\n }\r\n }\r\n },\r\n error: function (err) {\r\n if (err && !err.success) {\r\n if (setFlag === 'register') {\r\n $('.alert-error.register-error p').html(data.reason);\r\n $('.alert-error.register-error').show();\r\n }\r\n else {\r\n $('.alert-error.myview-error p').html(data.reason);\r\n $('.alert-error.myview-error').show();\r\n }\r\n }\r\n }\r\n });\r\n}\r\n\r\nfunction setDataRow(allpublications) {\r\n for (var k = 0; k < allpublications.length; k++) {\r\n var tbody = $(allpublications[k]).find('tbody'), newtrs = tbody.find('tr');\r\n newtrs.removeAttr('data-row');\r\n for (var v = 0; v < newtrs.length; v++) {\r\n $(newtrs[v]).attr('data-row', v + 1);\r\n }\r\n }\r\n}\r\n\r\nfunction showModal() {\r\n $('.modal-overlay').addClass('in');\r\n $('.modal-view').show();\r\n}\r\n\r\nfunction sendRegisterData(alltrs, UserPreferences, redirectUrl) {\r\n for (var i = 0; i < alltrs.length; i++) {\r\n var eachrowAttr = $(alltrs[i]).find('input[type=hidden]').attr('data-row-topic'),\r\n channelId = $(alltrs[i]).find('input[type=hidden]').attr('data-row-item-id'),\r\n secondtd = $(alltrs[i]).find('td.wd-25 span').html(),\r\n channelOrder = $(alltrs[i]).attr('data-row'),\r\n followStatus = (secondtd === $('#followingButtonText').val()) ? true : false;\r\n\r\n UserPreferences.PreferredChannels.push({ \"ChannelCode\": eachrowAttr, \"ChannelOrder\": channelOrder, \"IsFollowing\": followStatus, \"Topics\": [] });\r\n }\r\n sendHttpRequest(UserPreferences, 'register', redirectUrl);\r\n}\r\n\r\nfunction sort_table(tbody, col, asc, sortstatus) {\r\n var rows = [];\r\n if (tbody[0] && tbody[0].rows) {\r\n var allrows = tbody[0].rows;\r\n } else {\r\n return;\r\n }\r\n if (sortstatus === 'followingBtn') {\r\n for (var j = 0; j < allrows.length; j++) {\r\n if (allrows[j].className === 'followrow disabled' || allrows[j].className === 'followrow disabled frow') {\r\n rows.push(allrows[j]);\r\n }\r\n }\r\n } else if (sortstatus === 'followingrow') {\r\n for (var j = 0; j < allrows.length; j++) {\r\n if (allrows[j].className === 'followingrow') {\r\n rows.push(allrows[j]);\r\n }\r\n }\r\n } else if (sortstatus === 'followrow') {\r\n for (var j = 0; j < allrows.length; j++) {\r\n if (allrows[j].className === 'followrow disabled' || allrows[j].className === 'followrow disabled frow') {\r\n rows.push(allrows[j]);\r\n }\r\n }\r\n }\r\n\r\n var rlen = rows.length,\r\n arr = new Array(),\r\n i,\r\n j,\r\n cells,\r\n clen,\r\n topicName = [];\r\n for (i = 0; i < rlen; i++) {\r\n cells = rows[i].cells;\r\n clen = cells.length;\r\n arr[i] = new Array();\r\n for (j = 0; j < clen; j++) {\r\n if (j == 0) {\r\n topicName.push($.trim(cells[0].innerHTML));\r\n arr[i][j] = $.trim(cells[0].innerHTML.toLowerCase());\r\n } else {\r\n arr[i][j] = $.trim(cells[j].innerHTML);\r\n }\r\n }\r\n }\r\n // sort the array by the specified column number (col) and order (asc)\r\n arr.sort(function (a, b) {\r\n return a[col] === b[col] ? 0 : a[col] > b[col] ? asc : -1 * asc;\r\n });\r\n\r\n for (var i = 0; i < arr.length; i++) {\r\n for (var j = 0; j < topicName.length; j++) {\r\n if ($.trim(arr[i][0]) === $.trim(topicName[j].toLowerCase())) {\r\n arr[i][0] = topicName[j];\r\n }\r\n }\r\n }\r\n\r\n // replace existing rows with new rows created from the sorted array\r\n for (i = 0; i < rlen; i++) {\r\n //rows[i].innerHTML = \"\" + arr[i].join(\"\") + \"\";\r\n rows[i].innerHTML = \"\" + arr[i][0] + \"\" + arr[i][1] + \"\" + arr[i][2] + \"\";\r\n }\r\n}\r\n\r\nfunction SetIsFreeTrialCookieForReg() {\r\n var cookies = document.cookie;\r\n var cookieArray = cookies.split(';');\r\n cookieArray.forEach(function (item) {\r\n item = item.trim();\r\n if (item.indexOf('isFreeTrial=') >= 0) {\r\n var today = new Date();\r\n var expiresDate = new Date(today.getFullYear(), today.getMonth() + 2, today.getDate()).toUTCString();\r\n document.cookie = 'isFreeTrial=False;path=/;secure;expires=' + expiresDate + ';domain=' + window.location.hostname + ';';\r\n }\r\n });\r\n}\r\n\r\n$(function () {\r\n var clickedUrl = '';\r\n $('a').click(function (e) {\r\n if ($('#validatePriority') && $('#validatePriority').val() === \"true\") {\r\n if (!$(this).hasClass(\"validationChk\")) {\r\n e.preventDefault();\r\n showModal();\r\n }\r\n }\r\n if ($('#validateMyViewPriority') && $('#validateMyViewPriority').val() === \"true\") {\r\n if (!$(this).hasClass(\"validationChk\")) {\r\n e.preventDefault();\r\n showModal();\r\n if (!$(this).hasClass('myviewLink')) {\r\n clickedUrl = $(this).attr('href');\r\n } else {\r\n clickedUrl = $(this).attr('href') + '#' + $(this).attr('name');\r\n }\r\n }\r\n }\r\n });\r\n\r\n $('form').submit(function () {\r\n if ($('#validatePriority') && $('#validatePriority').val() === \"true\") {\r\n showModal();\r\n return false;\r\n }\r\n if ($('#validateMyViewPriority') && $('#validateMyViewPriority').val() === \"true\") {\r\n showModal();\r\n return false;\r\n }\r\n });\r\n\r\n $(\"#myview-email-alert-toggle\").on(\"change\", function (evt) {\r\n $.ajax({\r\n url: \"/account/api/PreferencesApi/UpdatePreference/\",\r\n type: \"POST\",\r\n data: JSON.stringify({\r\n NewsletterType: $(\"#myview-email-newsletter-type\").val(),\r\n OptIn: evt.target.checked,\r\n }),\r\n dataType: \"json\",\r\n contentType: \"application/json\",\r\n success: function (response) {\r\n console.log(response.success);\r\n },\r\n error: function (response) {\r\n console.log(response.status + \": \" + response.statusText);\r\n },\r\n });\r\n });\r\n\r\n $('#allPublicationsPan').on('click', '.followAllBtn', function () {\r\n var $this = $(this), curpublicPan = $this.closest('.publicationPan'), thead = curpublicPan.find('thead.hidden-xs'), firstRow = thead.find('tr:first-child'), tbody = curpublicPan.find('tbody'), div = $this.closest('div'), $lgfollow = curpublicPan.find('.followBtn'), table = $('.table'), lableStatus = '';\r\n $this.addClass('hideBtn');\r\n $('#validatePreference').val(1);\r\n div.find('.unfollowAllBtn').removeClass('hideBtn');\r\n curpublicPan.find('.firstrow .lableStatus').val('followinglbl');\r\n curpublicPan.find('.accordionStatus .lableStatus').val('followinglbl');\r\n $lgfollow.addClass('followingBtn').removeClass('followBtn').html($('#followingButtonText').val());\r\n $('#validatePriority').val(true);\r\n $('#validateMyViewPriority').val(true);\r\n\r\n lableStatus = thead.find('.lableStatus').val();\r\n thead.find('.mtp').addClass('hideBtn');\r\n thead.find('.mtp.' + lableStatus).removeClass('hideBtn');\r\n thead.removeClass('followbg').addClass('followingbg');\r\n\r\n for (var i = 0; i < tbody.find('.followingBtn').length; i++) {\r\n $(tbody.find('.followrow')[i]).attr('draggable', true);\r\n }\r\n if ($('.myview-settings-registration').length === 0) {\r\n curpublicPan.addClass('active');\r\n }\r\n curpublicPan.find('.unfollowAllBtn').removeClass('hideBtn');\r\n for (var i = 0; i < $lgfollow.length; i++) {\r\n $($lgfollow[i], curpublicPan).closest('tr').removeAttr('class').addClass('followingrow');\r\n }\r\n setClsforFlw(table);\r\n //sort_table(tbody, 0, 1, 'followingrow');\r\n });\r\n\r\n\r\n $('#allPublicationsPan').on('click', '.unfollowAllBtn', function () {\r\n var $this = $(this), curpublicPan = $this.closest('.publicationPan'), thead = curpublicPan.find('thead.hidden-xs'), firstRow = thead.find('tr:first-child'), tbody = curpublicPan.find('tbody'), div = $this.closest('div'), $lgfollowing = curpublicPan.find('.followingBtn'), lableStatus = '';\r\n $this.addClass('hideBtn');\r\n $this.closest('.smfollowingBtn').find('.followAllBtn').addClass('fr');\r\n $('#validatePreference').val(1);\r\n div.find('.followAllBtn').removeClass('hideBtn');\r\n curpublicPan.find('.firstrow .lableStatus').val('followlbl');\r\n curpublicPan.find('.accordionStatus .lableStatus').val('followlbl');\r\n $lgfollowing.addClass('followBtn').removeClass('followingBtn').html($('#followButtonText').val());\r\n $('#validatePriority').val(false);\r\n $('#validateMyViewPriority').val(true);\r\n\r\n lableStatus = thead.find('.lableStatus').val();\r\n thead.find('.mtp').addClass('hideBtn');\r\n thead.find('.mtp.' + lableStatus).removeClass('hideBtn');\r\n thead.removeClass('followingbg').addClass('followbg');\r\n\r\n curpublicPan.removeClass('active');\r\n curpublicPan.find('tbody .frow').removeClass('frow');\r\n for (var i = 0; i < $lgfollowing.length; i++) {\r\n $($lgfollowing[i], curpublicPan).closest('tr').removeAttr('class').addClass('followrow disabled');\r\n }\r\n sort_table(tbody, 0, 1, 'followrow');\r\n });\r\n\r\n $('#allPublicationsPan .donesubscribe').on('click', '.followrow .followBtn', function (e) {\r\n var $this = $(this), currenttr = $this.closest('tr'), currentTopic = $.trim(currenttr.find('.wd-55').html().split('';\r\n\t\t} \r\n\t\tif(showPageLinks > 1){\r\n\t\t\t$('.pagination span').html(linkStr);\r\n\t\t}\r\n\t\telse{\r\n\t\t\t$('.pagination').hide();\r\n\t\t}\r\n\t\t\r\n\t\t$('.pagination span a:eq(0)').click();\r\n\t\t$('.pagination a:eq(0)').removeAttr('href');\r\n}\r\n\r\n$(function(){\r\n\t$('.pagination').on('click', 'a', function(e){\r\n\t\tvar $this = $(this), $val = $this.html();\r\n\t\tif($val.toLowerCase().indexOf('prev') >= 0){\r\n\t\t\tvar idx = +$('.pagination span a.active').html() - 1, toVal = idx * window.paginationdefaults.categoryLimit, fromVal = toVal - window.paginationdefaults.categoryLimit;\r\n\t\t\t\r\n\t\t\tif($('.pagination span a:first').hasClass('active')) return false;\r\n\t\t\tpaginationCur(fromVal, toVal);\r\n\t\t\t\r\n\t\t\tvar curidx = $('.pagination span a.active').index(), pagesLen = $('.pagination li > span a').length-1;\r\n\t\t\t$('.pagination span a').eq(curidx).removeClass('active');\r\n\t\t\t$('.pagination span a').eq(curidx).prev('a').addClass('active');\r\n\t\t\t$('.pagination a:last').attr('href','#');\r\n\t\t\t\r\n\t\t\t$('.pagination .next').removeClass('active');\r\n\t\t\t\r\n\t\t\tif($('.pagination span a:first').hasClass('active')){\r\n\t\t\t\t$('.pagination .prev').addClass('active');\r\n\t\t\t}\r\n\t\t}\r\n\t\telse if($val.toLowerCase().indexOf('next') >= 0){\r\n\t\t\tvar idx1 = +$('.pagination span a.active').html() + 1, toVal = idx1 * window.paginationdefaults.categoryLimit, fromVal = toVal - window.paginationdefaults.categoryLimit;\r\n\t\t\t\r\n\t\t\tif($('.pagination span a:last').hasClass('active')) return false;\r\n\t\t\tpaginationCur(fromVal, toVal);\r\n\t\t\t\r\n\t\t\tvar curidx1 = $('.pagination span a.active').index(), pagesLen1 = $('.pagination li > span a').length-1;\r\n\t\t\t$('.pagination span a').eq(curidx1).removeClass('active');\r\n\t\t\t$('.pagination span a').eq(curidx1).next('a').addClass('active');\r\n\t\t\t$('.pagination a:first').attr('href','#'); \r\n\t\t\t\r\n\t\t\t$('.pagination .prev').removeClass('active');\r\n\t\t\t\r\n\t\t\tif($('.pagination span a:last').hasClass('active')){\r\n\t\t\t\t$('.pagination .next').addClass('active');\r\n\t\t\t}\r\n\t\t}\r\n\t\telse{\r\n\t\t\tif(!$this.hasClass('active')){\r\n\t\t\t\t$('.pagination span a').removeClass('active').attr('href','#');\r\n\t\t\t\t$this.addClass('active');\r\n\t\t\t\ttoVal = window.paginationdefaults.categoryLimit * $val;\r\n\t\t\t\tfromVal = toVal - window.paginationdefaults.categoryLimit;\r\n\t\t\t\tpaginationCur(fromVal, toVal);\r\n\t\t\t\t$('.pagination a:last').attr('href','#');\r\n\t\t\t\t$('.pagination a:first').attr('href','#');\r\n\t\t\t\t\r\n\t\t\t\tif ($('.pagination span a:first').hasClass('active')) {\r\n\t\t\t\t\t$('.pagination .prev').addClass('active');\r\n\t\t\t\t\t$('.pagination .next').removeClass('active');\r\n\t\t\t\t} else if ($('.pagination span a:last').hasClass('active')) {\r\n\t\t\t\t\t$('.pagination .prev').removeClass('active');\r\n\t\t\t\t\t$('.pagination .next').addClass('active');\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$('.pagination .prev').removeClass('active');\r\n\t\t\t\t\t$('.pagination .next').removeClass('active');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\te.preventDefault();\r\n\t\t\t}\r\n\t\t}\r\n\t}); \r\n\t\t\r\n\t$('.sortable-table__header').on('click', '.sortable-table__col', function(){\r\n\t\tvar $this = $(this), table = $this.closest('.sortable-table'), tbodytrs = table.find('tbody tr');\r\n\t\tsetTimeout(function(){\r\n\t\t\ttbodytrs.removeAttr('style');\r\n\t\t\tif(!$('.pagination span a:eq(0)').hasClass('active')){\r\n\t\t\t\t$('.pagination span a:eq(0)').click();\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\tpaginationCur(0, window.paginationdefaults.categoryLimit);\r\n\t\t\t}\r\n\t\t}, 1);\r\n\t});\r\n});","function loadLayoutOneData(data, idx) {\r\n\tvar editMyView = loadPreferanceId.EditMyViewButtonLableText ? '' + loadPreferanceId.EditMyViewButtonLableText + '' : '';\r\n\tvar seeAllTopics = data.loadMore && data.loadMore.seeAllLink ? '' + data.loadMore.seeAllText + ' ' + loadPreferanceId[\"Sections\"][idx][\"ChannelName\"] + '' : '';\r\n\r\n\tvar loadData = loadPreferanceId[\"Sections\"][idx][\"ChannelName\"] ? '
    '+data.loadMore.currentlyViewingText+'
    ' + data.loadMore.latestFromText + ' ' + loadPreferanceId[\"Sections\"][idx][\"ChannelName\"] + '
    ' + editMyView + seeAllTopics + '
    ' : '',\r\n\t loadmoreLink = data.loadMore && data.loadMore.displayLoadMore ? data.loadMore.loadMoreLinkUrl : '#';\r\n\tloadData += '
    ';\r\n\tloadData += loadPreferanceId[\"Sections\"][idx].ChannelId ? '
    ' : '';\r\n\tloadData += createLayoutInner1(data);\r\n\tloadData += '
    ';\r\n\tloadData += data.loadMore && data.loadMore.displayLoadMore ? '
    ' + data.loadMore.loadMoreLinkText + ' ' + loadPreferanceId[\"Sections\"][idx][\"ChannelName\"] + '
    ' : '';\r\n\tloadData += '
    ';\r\n\r\n\t//loadData += '
    ';\r\n\r\n\treturn loadData;\r\n}\r\n\r\nfunction createLayoutInner1(data) {\r\n\tvar isArticleBookmarked = data.articles[0].isArticleBookmarked ? data.articles[0].bookmarkedText : data.articles[0].bookmarkText,\r\n\t bookmarkTxt = data.articles[0].bookmarkText || data.articles[0].bookmarkedText ? '' + isArticleBookmarked + '' : '',\r\n\t linkableUrl0 = data.articles[0].linkableUrl ? data.articles[0].linkableUrl : '#',\r\n\t linkableUrl1 = data.articles[1].linkableUrl ? data.articles[1].linkableUrl : '#',\r\n\t linkableUrl2 = data.articles[2].linkableUrl ? data.articles[2].linkableUrl : '#',\r\n\t linkableUrl3 = data.articles[3].linkableUrl ? data.articles[3].linkableUrl : '#',\r\n\t linkableUrl4 = data.articles[4].linkableUrl ? data.articles[4].linkableUrl : '#',\r\n\t linkableUrl5 = data.articles[5].linkableUrl ? data.articles[5].linkableUrl : '#',\r\n\t linkableUrl6 = data.articles[6].linkableUrl ? data.articles[6].linkableUrl : '#',\r\n\t linkableUrl7 = data.articles[7].linkableUrl ? data.articles[7].linkableUrl : '#',\r\n\t linkableUrl8 = data.articles[8].linkableUrl ? data.articles[8].linkableUrl : '#',\r\n\t bookmarkInfo0 = data.articles[0].isArticleBookmarked ? data.articles[0].bookmarkedText : data.articles[0].bookmarkText,\r\n\t bookmarkInfo1 = data.articles[1].isArticleBookmarked ? data.articles[1].bookmarkedText : data.articles[1].bookmarkText,\r\n\t bookmarkInfo2 = data.articles[2].isArticleBookmarked ? data.articles[2].bookmarkedText : data.articles[2].bookmarkText,\r\n\t\tbookmarkInfo3 = data.articles[3].isArticleBookmarked ? data.articles[3].bookmarkedText : data.articles[3].bookmarkText,\r\n\t bookmarkInfo4 = data.articles[4].isArticleBookmarked ? data.articles[4].bookmarkedText : data.articles[4].bookmarkText,\r\n\t bookmarkInfo5 = data.articles[5].isArticleBookmarked ? data.articles[5].bookmarkedText : data.articles[5].bookmarkText,\r\n\t bookmarkInfo6 = data.articles[6].isArticleBookmarked ? data.articles[6].bookmarkedText : data.articles[6].bookmarkText,\r\n\t bookmarkInfo7 = data.articles[7].isArticleBookmarked ? data.articles[7].bookmarkedText : data.articles[7].bookmarkText,\r\n\t bookmarkInfo8 = data.articles[8].isArticleBookmarked ? data.articles[8].bookmarkedText : data.articles[8].bookmarkText,\r\n\t fbookmarkIcon0 = data.articles[0].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon0 = data.articles[0].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon1 = data.articles[1].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon1 = data.articles[1].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon2 = data.articles[2].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon2 = data.articles[2].isArticleBookmarked ? '' : 'is-visible',\r\n\t\tfbookmarkIcon3 = data.articles[3].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon3 = data.articles[3].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon4 = data.articles[4].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon4 = data.articles[4].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon5 = data.articles[5].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon5 = data.articles[5].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon6 = data.articles[6].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon6 = data.articles[6].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon7 = data.articles[7].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon7 = data.articles[7].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon8 = data.articles[8].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon8 = data.articles[8].isArticleBookmarked ? '' : 'is-visible',\r\n\t\tsponsored_cont0 = data.articles[0].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont1 = data.articles[1].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont2 = data.articles[2].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont3 = data.articles[3].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont4 = data.articles[4].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont5 = data.articles[5].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont6 = data.articles[6].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont7 = data.articles[7].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont8 = data.articles[8].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\ttabTexonomy = data.articles[0].listableImage ? 'tabTexonomy' : '';\r\n\r\n\tvar articleData = ''; \r\n\tarticleData += getListViewData(0, data, linkableUrl0, bookmarkInfo0, fbookmarkIcon0, sbookmarkIcon0);\r\n\tarticleData += getListViewData(1, data, linkableUrl1, bookmarkInfo1, fbookmarkIcon1, sbookmarkIcon1);\r\n\tarticleData += getListViewData(2, data, linkableUrl2, bookmarkInfo2, fbookmarkIcon2, sbookmarkIcon2);\r\n\tarticleData += getListViewData(3, data, linkableUrl3, bookmarkInfo3, fbookmarkIcon3, sbookmarkIcon3);\r\n\tarticleData += getListViewData(4, data, linkableUrl4, bookmarkInfo4, fbookmarkIcon4, sbookmarkIcon4);\r\n\tarticleData += getListViewData(5, data, linkableUrl5, bookmarkInfo5, fbookmarkIcon5, sbookmarkIcon5);\r\n\tarticleData += getListViewData(6, data, linkableUrl6, bookmarkInfo6, fbookmarkIcon6, sbookmarkIcon6);\r\n\tarticleData += getListViewData(7, data, linkableUrl7, bookmarkInfo7, fbookmarkIcon7, sbookmarkIcon7);\r\n\tarticleData += getListViewData(8, data, linkableUrl8, bookmarkInfo8, fbookmarkIcon8, sbookmarkIcon8);\r\n\t\r\n\tarticleData += '
    ';\r\n\tarticleData += data.articles[0].listableImage ? '' : '';\r\n\tarticleData += '
    ';\r\n\tif(data.articles[0].isSonsoredBy){\r\n\t\tarticleData += '
    • ';\r\n\t\tarticleData += (data.articles[0].sponsoredLink && data.articles[0].sponsoredByLogo) ? '
    • ' : ((data.articles[0].sponsoredLink == null || data.articles[0].sponsoredLink === undefined) && data.articles[0].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\t\r\n\telse{\r\n\t\tarticleData += '
    ' + bookmarkInfo0 + '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[0].listableDate ? '
    • ' : '';\r\n articleData += data.articles[0].linkableText ? '
    • ' + data.articles[0].linkableText + '
    • ' : '';\r\n if (data.articles[0].signPostingLabel.length > 0) {\r\n articleData += '
    • ' : '';\r\n articleData += '
    ';\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n articleData += data.articles[0].listableTitle ? '

    ' + data.articles[0].listableTitle + '

    ' : '';\r\n articleData += data.articles[0].listableAuthorByLine ? '' : '';\r\n articleData += '
    ' + data.articles[0].listableSummary ? data.articles[0].listableSummary : '' + '
    ';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[0].listableTopics) {\r\n for (var i = 0; i < data.articles[0].listableTopics.length; i++) {\r\n var getLink8 = data.articles[0].listableTopics[i].linkableUrl ? data.articles[0].listableTopics[i].linkableUrl : '#';\r\n if (data.articles[0].listableTopics[i].linkableText !== null) {\r\n articleData += '' + data.articles[0].listableTopics[i].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[1].isSonsoredBy){\r\n\t\tarticleData += '
    • ';\r\n\t\tarticleData += (data.articles[1].sponsoredLink && data.articles[1].sponsoredByLogo) ? '
    • ' : ((data.articles[1].sponsoredLink == null || data.articles[1].sponsoredLink === undefined) && data.articles[1].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[1].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[1].linkableText ? '
    • ' + data.articles[1].linkableText + '
    • ' : '';\r\n if (data.articles[1].signPostingLabel.length > 0) {\r\n articleData += '
    • ' : '';\r\n articleData += '
    ';\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n articleData += data.articles[1].listableTitle ? '

    ' + data.articles[1].listableTitle + '

    ' : '';\r\n articleData += data.articles[1].listableAuthorByLine ? '' : '';\r\n articleData += '
    ';\r\n articleData += data.articles[1].listableSummary ? data.articles[1].listableSummary : '';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[1].listableTopics) {\r\n for (var j = 0; j < data.articles[1].listableTopics.length; j++) {\r\n var getLink1 = data.articles[1].listableTopics[j].linkableUrl ? data.articles[1].listableTopics[j].linkableUrl : '#';\r\n if (data.articles[1].listableTopics[j].linkableText !== null) {\r\n articleData += '' + data.articles[1].listableTopics[j].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[2].isSonsoredBy){\r\n\t\tarticleData += '
    • ';\r\n\t\tarticleData += (data.articles[2].sponsoredLink && data.articles[2].sponsoredByLogo) ? '
    • ' : ((data.articles[2].sponsoredLink == null || data.articles[2].sponsoredLink === undefined) && data.articles[2].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[2].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[2].linkableText ? '
    • ' + data.articles[2].linkableText + '
    • ' : '';\r\n if (data.articles[2].signPostingLabel.length > 0) {\r\n articleData += '
    • ' : '';\r\n articleData += '
    ';\r\n }\r\n\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n articleData += data.articles[2].listableTitle ? '

    ' + data.articles[2].listableTitle + '

    ' : '';\r\n articleData += data.articles[2].listableAuthorByLine ? '' : '';\r\n articleData += '
    ' + data.articles[2].listableSummary ? data.articles[2].listableSummary : '' + '
    ';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[2].listableTopics) {\r\n for (var k = 0; k < data.articles[2].listableTopics.length; k++) {\r\n var getLink2 = data.articles[2].listableTopics[k].linkableUrl ? data.articles[2].listableTopics[k].linkableUrl : '#';\r\n if (data.articles[2].listableTopics[k].linkableText !== null) {\r\n articleData += '' + data.articles[2].listableTopics[k].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\t//articleData += data.articles[3].linkableText ? '
     
    ' : '';\r\n\t\r\n\tif(data.articles[3].isSonsoredBy){\r\n\t\tarticleData += '';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '';\r\n\t}\r\n\tif(data.articles[4].isSonsoredBy){\r\n\t\tarticleData += '';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '';\r\n\t}\r\n\r\n\tif(data.articles[5].isSonsoredBy){\r\n\t\tarticleData += '';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '';\r\n\t}\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[6].isSonsoredBy){\r\n\t\tarticleData += '
    • ';\r\n\t\tarticleData += (data.articles[6].sponsoredLink && data.articles[6].sponsoredByLogo) ? '
    • ' : ((data.articles[6].sponsoredLink == null || data.articles[6].sponsoredLink === undefined) && data.articles[6].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[6].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[6].linkableText ? '
    • ' + data.articles[6].linkableText + '
    • ' : '';\r\n if (data.articles[6].signPostingLabel.length > 0) {\r\n articleData += '
    • ' + data.articles[6].listableTitle + '
      ' : '';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[6].listableTopics) {\r\n for (var p = 0; p < data.articles[6].listableTopics.length; p++) {\r\n var getLink6 = data.articles[6].listableTopics[p].linkableUrl ? data.articles[6].listableTopics[p].linkableUrl : '#';\r\n if (data.articles[6].listableTopics[p].linkableText !== null) {\r\n articleData += '' + data.articles[6].listableTopics[p].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\tif(data.articles[7].isSonsoredBy){\r\n\t\tarticleData += '
    • ';\r\n\t\tarticleData += (data.articles[7].sponsoredLink && data.articles[7].sponsoredByLogo) ? '
    • ' : ((data.articles[7].sponsoredLink == null || data.articles[7].sponsoredLink === undefined) && data.articles[7].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[7].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[7].linkableText ? '
    • ' + data.articles[7].linkableText + '
    • ' : '';\r\n if (data.articles[7].signPostingLabel.length > 0) {\r\n articleData += '
    • ' + data.articles[7].listableTitle + '
      ' : '';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[7].listableTopics) {\r\n for (var i1 = 0; i1 < data.articles[7].listableTopics.length; i1++) {\r\n var getLink7 = data.articles[7].listableTopics[i1].linkableUrl ? data.articles[7].listableTopics[i1].linkableUrl : '#';\r\n if (data.articles[7].listableTopics[i1].linkableText !== null) {\r\n articleData += '' + data.articles[7].listableTopics[i1].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[8].isSonsoredBy){\r\n\t\tarticleData += '
    • ';\r\n\t\tarticleData += (data.articles[8].sponsoredLink && data.articles[8].sponsoredByLogo) ? '
    • ' : ((data.articles[8].sponsoredLink == null || data.articles[8].sponsoredLink === undefined) && data.articles[8].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[8].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[8].linkableText ? '
    • ' + data.articles[8].linkableText + '
    • ' : '';\r\n if (data.articles[8].signPostingLabel.length > 0) {\r\n articleData += '
    • ' + data.articles[8].listableTitle + '
      ' : '';\r\n articleData += data.articles[8].listableAuthorByLine ? '' : '';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[8].listableTopics) {\r\n for (var j1 = 0; j1 < data.articles[8].listableTopics.length; j1++) {\r\n var newGetLink8 = data.articles[8].listableTopics[j1].linkableUrl ? data.articles[8].listableTopics[j1].linkableUrl : '#';\r\n if (data.articles[8].listableTopics[j1].linkableText !== null) {\r\n articleData += '' + data.articles[8].listableTopics[j1].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '';\r\n\r\n\treturn articleData;\r\n}\r\n\r\nfunction getListViewData(idx, data, linkableUrl, bookmarkInfo, fbookmarkIcon, sbookmarkIcon){\r\n\tvar sectionData = '', sponsoredCls = (data.articles[idx].isSonsoredBy) ? 'sponsored_cont' : '', fullWidForTab = data.articles[idx].listableImage ? '' : 'wid', ellisisForTab = data.articles[idx].listableImage ? 'wid' : '';\r\n\tsectionData += '
    ';\r\n\tsectionData += '
    ';\r\n\tsectionData += data.articles[idx].listableImage ? '' : '';\r\n\tsectionData += '
    ';\r\n\t\r\n\tsectionData += '
    ';\r\n\t\r\n\tif(data.articles[idx].isSonsoredBy){ \r\n\t\tsectionData += '
    ';\r\n\t\tsectionData += '
    • ';\r\n\t\tsectionData += (data.articles[idx].sponsoredLink && data.articles[idx].sponsoredByLogo) ? '
    • ' : ((data.articles[idx].sponsoredLink == null || data.articles[idx].sponsoredLink === undefined) && data.articles[idx].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tsectionData += '
    ';\r\n\t\tsectionData += '
    '; \r\n\t\tsectionData += '
    ';\r\n sectionData += data.articles[idx].listableTitle ? '

    ' + data.articles[idx].listableTitle + '

    ' + data.articles[idx].signPostingLabel + '' : '';\r\n\t\tsectionData += data.articles[idx].listableSummary ? '
    ' + data.articles[idx].listableSummary + '
    ' : '';\r\n\t\tsectionData += '
    ';\r\n\t\tsectionData += '
    ';\r\n\t\tif (data.articles[idx].listableTopics) {\r\n\t\t\tfor (var i = 0; i < data.articles[idx].listableTopics.length; i++) {\r\n\t\t\t\tvar getlistLink1 = data.articles[idx].listableTopics[i].linkableUrl ? data.articles[idx].listableTopics[i].linkableUrl : '#';\r\n\t\t\t\tif(data.articles[idx].listableTopics[i].linkableText !== null){\r\n\t\t\t\t\tsectionData += '' + data.articles[idx].listableTopics[i].linkableText + '';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\tsectionData += '
    '; \r\n\t}\r\n\telse{\r\n sectionData += data.articles[idx].listableTitle ? '

    ' + data.articles[idx].listableTitle + '

    ' : '';\r\n\t\tsectionData += '
    ';\r\n\t\tsectionData += '
    ';\r\n\t\t\r\n\t\tsectionData += '' : '';\r\n sectionData += '
    ';\r\n sectionData += '
    ';\r\n if (data.articles[idx].listableTopics) {\r\n for (var i = 0; i < data.articles[idx].listableTopics.length; i++) {\r\n var newGetlistLink1 = data.articles[idx].listableTopics[i].linkableUrl ? data.articles[idx].listableTopics[i].linkableUrl : '#';\r\n if (data.articles[idx].listableTopics[i].linkableText !== null) {\r\n sectionData += '' + data.articles[idx].listableTopics[i].linkableText + '';\r\n }\r\n }\r\n }\r\n sectionData += '
    ';\r\n }\r\n sectionData += '
    ';\r\n sectionData += '
    ';\r\n\r\n return sectionData;\r\n}\r\n\r\nfunction loadLayoutTwoData(data, idx) {\r\n\tvar editMyView = loadPreferanceId.EditMyViewButtonLableText ? '' + loadPreferanceId.EditMyViewButtonLableText + '' : '';\r\n\tvar seeAllTopics = data.loadMore && data.loadMore.seeAllLink ? '' + data.loadMore.seeAllText + ' ' + loadPreferanceId[\"Sections\"][idx][\"ChannelName\"] + '' : '';\t\t\r\n\t\t\t\t\t\t\r\n\tvar loadData = loadPreferanceId[\"Sections\"][idx][\"ChannelName\"] ? '
    '+data.loadMore.currentlyViewingText+'
    ' + data.loadMore.latestFromText + ' ' + loadPreferanceId[\"Sections\"][idx][\"ChannelName\"] + '
    ' + editMyView + seeAllTopics + '
    ' : '',\r\n\t loadmoreLink = data.loadMore && data.loadMore.displayLoadMore && data.loadMore.displayLoadMore.loadMoreLinkUrl ? data.loadMore.displayLoadMore.loadMoreLinkUrl : '#';\r\n\tloadData += '
    ';\r\n\tloadData += loadPreferanceId[\"Sections\"][idx].ChannelId ? '
    ' : '';\r\n\tloadData += createLayoutInner2(data);\r\n\tloadData += '
    ';\r\n\r\n\tloadData += data.loadMore && data.loadMore.displayLoadMore ? '
    ' + data.loadMore.loadMoreLinkText + ' ' + loadPreferanceId[\"Sections\"][idx][\"ChannelName\"] + '
    ' : '';\r\n\r\n\tloadData += '
    ';\r\n\r\n\t//loadData += '
    ';\r\n\r\n\treturn loadData;\r\n}\r\n\r\nfunction createLayoutInner2(data) {\r\n\tvar linkableUrl0 = data.articles[0].linkableUrl ? data.articles[0].linkableUrl : '#',\r\n\t linkableUrl1 = data.articles[1].linkableUrl ? data.articles[1].linkableUrl : '#',\r\n\t linkableUrl2 = data.articles[2].linkableUrl ? data.articles[2].linkableUrl : '#',\r\n\t linkableUrl3 = data.articles[3].linkableUrl ? data.articles[3].linkableUrl : '#',\r\n\t linkableUrl4 = data.articles[4].linkableUrl ? data.articles[4].linkableUrl : '#',\r\n\t linkableUrl5 = data.articles[5].linkableUrl ? data.articles[5].linkableUrl : '#',\r\n\t linkableUrl6 = data.articles[6].linkableUrl ? data.articles[6].linkableUrl : '#',\r\n\t linkableUrl7 = data.articles[7].linkableUrl ? data.articles[7].linkableUrl : '#',\r\n\t linkableUrl8 = data.articles[8].linkableUrl ? data.articles[8].linkableUrl : '#',\r\n\t bookmarkInfo0 = data.articles[0].isArticleBookmarked ? data.articles[0].bookmarkedText : data.articles[0].bookmarkText,\r\n\t bookmarkInfo1 = data.articles[1].isArticleBookmarked ? data.articles[1].bookmarkedText : data.articles[1].bookmarkText,\r\n\t\tbookmarkInfo2 = data.articles[2].isArticleBookmarked ? data.articles[2].bookmarkedText : data.articles[2].bookmarkText,\r\n\t bookmarkInfo3 = data.articles[3].isArticleBookmarked ? data.articles[3].bookmarkedText : data.articles[3].bookmarkText,\r\n\t\tbookmarkInfo4 = data.articles[4].isArticleBookmarked ? data.articles[4].bookmarkedText : data.articles[4].bookmarkText,\r\n\t bookmarkInfo5 = data.articles[5].isArticleBookmarked ? data.articles[5].bookmarkedText : data.articles[5].bookmarkText,\r\n\t bookmarkInfo6 = data.articles[6].isArticleBookmarked ? data.articles[6].bookmarkedText : data.articles[6].bookmarkText,\r\n\t bookmarkInfo7 = data.articles[7].isArticleBookmarked ? data.articles[7].bookmarkedText : data.articles[7].bookmarkText,\r\n\t bookmarkInfo8 = data.articles[8].isArticleBookmarked ? data.articles[8].bookmarkedText : data.articles[8].bookmarkText,\r\n\t fbookmarkIcon0 = data.articles[0].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon0 = data.articles[0].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon1 = data.articles[1].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon1 = data.articles[1].isArticleBookmarked ? '' : 'is-visible',\r\n\t\tfbookmarkIcon2 = data.articles[2].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon2 = data.articles[2].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon3 = data.articles[3].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon3 = data.articles[3].isArticleBookmarked ? '' : 'is-visible',\r\n\t\tfbookmarkIcon4 = data.articles[4].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon4 = data.articles[4].isArticleBookmarked ? '' : 'is-visible',\r\n\t\tfbookmarkIcon5 = data.articles[5].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon5 = data.articles[5].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon6 = data.articles[6].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon6 = data.articles[6].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon7 = data.articles[7].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon7 = data.articles[7].isArticleBookmarked ? '' : 'is-visible',\r\n\t fbookmarkIcon8 = data.articles[8].isArticleBookmarked ? 'is-visible' : '',\r\n\t sbookmarkIcon8 = data.articles[8].isArticleBookmarked ? '' : 'is-visible',\r\n\t\tsponsored_cont0 = data.articles[0].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont1 = data.articles[1].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont2 = data.articles[2].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont3 = data.articles[3].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont4 = data.articles[4].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont5 = data.articles[5].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont6 = data.articles[6].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\tsponsored_cont7 = data.articles[7].isSonsoredBy ? 'sponsored_cont' : '', \r\n\t\tsponsored_cont8 = data.articles[8].isSonsoredBy ? 'sponsored_cont' : '',\r\n\t\ttabTexonomy = data.articles[0].listableImage ? 'tabTexonomy' : '';\r\n\t\t\r\n\tvar articleData = '';\r\n\t\r\n\tarticleData += getListViewData(0, data, linkableUrl0, bookmarkInfo0, fbookmarkIcon0, sbookmarkIcon0);\r\n\tarticleData += getListViewData(1, data, linkableUrl1, bookmarkInfo1, fbookmarkIcon1, sbookmarkIcon1);\r\n\tarticleData += getListViewData(2, data, linkableUrl2, bookmarkInfo2, fbookmarkIcon2, sbookmarkIcon2);\r\n\tarticleData += getListViewData(3, data, linkableUrl3, bookmarkInfo3, fbookmarkIcon3, sbookmarkIcon3);\r\n\tarticleData += getListViewData(4, data, linkableUrl4, bookmarkInfo4, fbookmarkIcon4, sbookmarkIcon4);\r\n\tarticleData += getListViewData(5, data, linkableUrl5, bookmarkInfo5, fbookmarkIcon5, sbookmarkIcon5);\r\n\tarticleData += getListViewData(6, data, linkableUrl6, bookmarkInfo6, fbookmarkIcon6, sbookmarkIcon6);\r\n\tarticleData += getListViewData(7, data, linkableUrl7, bookmarkInfo7, fbookmarkIcon7, sbookmarkIcon7);\r\n\tarticleData += getListViewData(8, data, linkableUrl8, bookmarkInfo8, fbookmarkIcon8, sbookmarkIcon8);\r\n\t\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\tarticleData += data.articles[0].listableImage ? '' : '';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[0].isSonsoredBy){\r\n\t\tarticleData += '
    • ';\r\n\t\tarticleData += (data.articles[0].sponsoredLink && data.articles[0].sponsoredByLogo) ? '
    • ' : ((data.articles[0].sponsoredLink == null || data.articles[0].sponsoredLink === undefined) && data.articles[0].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[0].listableDate ? '
    • ' : '';\r\n articleData += data.articles[0].linkableText ? '
    • ' + data.articles[0].linkableText + '
      ' : '';\r\n articleData += data.articles[0].listableType ? '
    • ' : '';\r\n if (data.articles[0].signPostingLabel.length > 0) {\r\n articleData += '
    • ' : '';\r\n articleData += '
      ';\r\n articleData += data.articles[0].listableTitle ? '

      ' + data.articles[0].listableTitle + '

      ' : '';\r\n articleData += data.articles[0].listableAuthorByLine ? '' : '';\r\n articleData += '
      ' + data.articles[0].listableSummary ? data.articles[0].listableSummary : '' + '
      ';\r\n articleData += '
      ';\r\n articleData += '
      ';\r\n if (data.articles[0].listableTopics) {\r\n for (var i = 0; i < data.articles[0].listableTopics.length; i++) {\r\n var getLink0 = data.articles[0].listableTopics[i].linkableUrl ? data.articles[0].listableTopics[i].linkableUrl : '#';\r\n if (data.articles[0].listableTopics[i].linkableText !== null) {\r\n articleData += '' + data.articles[0].listableTopics[i].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
      ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[1].isSonsoredBy){\r\n\t\tarticleData += '
    • ';\r\n\t\tarticleData += (data.articles[1].sponsoredLink && data.articles[1].sponsoredByLogo) ? '
    • ' : ((data.articles[1].sponsoredLink == null || data.articles[1].sponsoredLink === undefined) && data.articles[1].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[1].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[1].linkableText ? '
    • ' + data.articles[1].linkableText + '
    • ' : '';\r\n\t\tarticleData += data.articles[1].listableType ? '
    • ' : '';\r\n if (data.articles[1].signPostingLabel.length > 0) {\r\n articleData += '
    • ' + data.articles[1].listableTitle + '
      ' : '';\r\n articleData += data.articles[1].listableAuthorByLine ? '' : '';\r\n articleData += '
      ' + data.articles[1].listableSummary ? data.articles[1].listableSummary : '' + '
      ';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[1].listableTopics) {\r\n for (var j = 0; j < data.articles[1].listableTopics.length; j++) {\r\n var getLink1 = data.articles[1].listableTopics[j].linkableUrl ? data.articles[1].listableTopics[j].linkableUrl : '#';\r\n if (data.articles[1].listableTopics[j].linkableText !== null) {\r\n articleData += '' + data.articles[1].listableTopics[j].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\t//articleData += data.articles[2].linkableText ? '
     
    ' : '';\r\n\t\r\n\t\r\n\tif(data.articles[2].isSonsoredBy){\r\n\t\tarticleData += '';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '';\r\n\t}\r\n\t\r\n\tif(data.articles[3].isSonsoredBy){\r\n\t\tarticleData += '';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '';\r\n\t}\r\n\t\r\n\t\r\n\tif(data.articles[4].isSonsoredBy){\r\n\t\tarticleData += '';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '';\r\n\t}\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[5].isSonsoredBy){\r\n\t\tarticleData += '
    • ';\r\n\t\tarticleData += (data.articles[5].sponsoredLink && data.articles[5].sponsoredByLogo) ? '
    • ' : ((data.articles[5].sponsoredLink == null || data.articles[5].sponsoredLink === undefined) && data.articles[5].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[5].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[5].linkableText ? '
    • ' + data.articles[5].linkableText + '
    • ' : '';\r\n if (data.articles[5].signPostingLabel.length > 0) {\r\n articleData += '
    • ' + data.articles[5].listableTitle + '
      ' : '';\r\n articleData += data.articles[5].listableAuthorByLine ? '' : '';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[5].listableTopics) {\r\n for (var k = 0; k < data.articles[5].listableTopics.length; k++) {\r\n var getLink5 = data.articles[5].listableTopics[k].linkableUrl ? data.articles[5].listableTopics[k].linkableUrl : '#';\r\n if (data.articles[5].listableTopics[k].linkableText !== null) {\r\n articleData += '' + data.articles[5].listableTopics[k].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[6].isSonsoredBy){\r\n\t\tarticleData += '
    • ';articleData += (data.articles[6].sponsoredLink && data.articles[6].sponsoredByLogo) ? '
    • ' : ((data.articles[6].sponsoredLink == null || data.articles[6].sponsoredLink === undefined) && data.articles[6].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[6].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[6].linkableText ? '
    • ' + data.articles[6].linkableText + '
    • ' : '';\r\n if (data.articles[6].signPostingLabel.length > 0) {\r\n articleData += '
    • ' + data.articles[6].listableTitle + '
      ' : '';\r\n articleData += data.articles[6].listableAuthorByLine ? '' : '';\r\n articleData += '
      ' + data.articles[6].listableSummary ? data.articles[6].listableSummary : '' + '
      ';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[6].listableTopics) {\r\n for (var p = 0; p < data.articles[6].listableTopics.length; p++) {\r\n var getLink6 = data.articles[6].listableTopics[p].linkableUrl ? data.articles[6].listableTopics[p].linkableUrl : '#';\r\n if (data.articles[6].listableTopics[p].linkableText !== null) {\r\n articleData += '' + data.articles[6].listableTopics[p].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[7].isSonsoredBy){\r\n\t\tarticleData += '
    • ';articleData += (data.articles[7].sponsoredLink && data.articles[7].sponsoredByLogo) ? '
    • ' : ((data.articles[7].sponsoredLink == null || data.articles[7].sponsoredLink === undefined) && data.articles[7].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[7].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[7].linkableText ? '
    • ' + data.articles[7].linkableText + '
    • ' : '';\r\n if (data.articles[7].signPostingLabel.length > 0) {\r\n articleData += '
    • ' + data.articles[7].listableTitle + '
      ' : '';\r\n articleData += data.articles[7].listableAuthorByLine ? '' : '';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[7].listableTopics) {\r\n for (var i1 = 0; i1 < data.articles[7].listableTopics.length; i1++) {\r\n var getLink7 = data.articles[7].listableTopics[i1].linkableUrl ? data.articles[7].listableTopics[i1].linkableUrl : '#';\r\n if (data.articles[7].listableTopics[i1].linkableText !== null) {\r\n articleData += '' + data.articles[7].listableTopics[i1].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\t\r\n\tif(data.articles[8].isSonsoredBy){\r\n\t\tarticleData += '
    • ';articleData += (data.articles[8].sponsoredLink && data.articles[8].sponsoredByLogo) ? '
    • ' : ((data.articles[8].sponsoredLink == null || data.articles[8].sponsoredLink === undefined) && data.articles[8].sponsoredByLogo) ? '
    • ' : '';\r\n\t\tarticleData += '
    ';\r\n\t}\r\n\telse{\r\n\t\tarticleData += '
    ';\r\n\t\tarticleData += '
      ';\r\n\t\tarticleData += data.articles[8].listableDate ? '
    • ' : '';\r\n\t\tarticleData += data.articles[8].linkableText ? '
    • ' + data.articles[8].linkableText + '
    • ' : '';\r\n if (data.articles[8].signPostingLabel.length > 0) {\r\n articleData += '
    • ' + data.articles[8].listableTitle + '
      ' : '';\r\n articleData += data.articles[8].listableAuthorByLine ? '' : '';\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n if (data.articles[8].listableTopics) {\r\n for (var j1 = 0; j1 < data.articles[8].listableTopics.length; j1++) {\r\n var getLink8 = data.articles[8].listableTopics[j1].linkableUrl ? data.articles[8].listableTopics[j1].linkableUrl : '#';\r\n if (data.articles[8].listableTopics[j1].linkableText !== null) {\r\n articleData += '' + data.articles[8].listableTopics[j1].linkableText + '';\r\n }\r\n }\r\n }\r\n articleData += '
    ';\r\n articleData += '
    ';\r\n\r\n\tarticleData += '
    ';\r\n\tarticleData += '
    ';\r\n\r\n\tarticleData += '';\r\n\r\n\treturn articleData;\r\n}\r\n\r\nfunction getMyviewCookie(cookie){\r\n\tvar getAllcookies = cookie.split(';');\r\n\tfor(var i=0; i 190){\r\n\t\t\t\t$(lpan[i]).css('height', '220px');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunction ignoreElement(data){\r\n\tvar regex = /(<([^>]+)>)/ig\r\n\treturn data.replace(regex, \"\");\r\n}\r\n\r\n$(function () {\r\n\tif($('.personalisationhome') && $('.personalisationhome').length){\r\n\t\tgetMyviewCookie(document.cookie);\r\n\t}\r\n\t$('.view-mode').on('click', '.icon-tile-view', function(e){\r\n\t\te.preventDefault();\r\n\t\t$('.view-mode li').removeClass('selected');\r\n\t\t$(this).parents('li').addClass('selected');\r\n\t\tif($('.personalisationhome') && $('.personalisationhome').length){\r\n\t\t\t$('.personalisationhome').removeClass('listView').addClass('gridView');\r\n\t\t\tdocument.cookie = \"myViewCookieName=gridView;\"\r\n\t\t}\r\n\t});\r\n\t$('.view-mode').on('click', '.icon-list-view', function(e){\r\n\t\te.preventDefault();\r\n\t\t$('.view-mode li').removeClass('selected');\r\n\t\t$(this).parents('li').addClass('selected');\r\n\t\tif($('.personalisationhome') && $('.personalisationhome').length){\r\n\t\t\t$('.personalisationhome').removeClass('gridView').addClass('listView');\r\n\t\t\tdocument.cookie = \"myViewCookieName=listView;\"\r\n\t\t}\r\n\t\tsetImgHeightListview();\r\n\t});\r\n\tvar getLayoutInfo = $('#getLayoutInfo').val(),\r\n\t layout1 = true,\r\n\t loadLayoutData = '',\r\n\t getLiIdx,\r\n\t getArticleIdx;\r\n\tif (typeof loadPreferanceId !== \"undefined\") {\r\n\t\tvar loadDynData = loadPreferanceId[\"Sections\"].length < loadPreferanceId.DefaultSectionLoadCount ? loadPreferanceId[\"Sections\"].length : loadPreferanceId.DefaultSectionLoadCount,\r\n\t\t getArticalIdx = 0,\r\n\t\t postedId = window.location.href.split('#')[1];\r\n\r\n\t\tif (postedId !== '' && postedId !== undefined) {\r\n\t\t\tfor (var j = 0; j < loadPreferanceId[\"Sections\"].length; j++) {\r\n\t\t\t\tif (loadPreferanceId[\"Sections\"][j][\"ChannelId\"] === postedId) {\r\n\t\t\t\t\tgetArticalIdx = j + 1;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tloadDynData = getArticalIdx;\r\n\t\t}\r\n\t\tgetLiIdx = loadDynData;\r\n\t\tgetArticleIdx = loadDynData;\r\n\t\tfor (var i = 0; i < loadDynData; i++) {\r\n\t\t\tvar setId = loadPreferanceId[\"Sections\"];\r\n\t\t\tif (setId.length) {\r\n\t\t\t\t(function (idx) {\r\n\t\t\t\t\tif (idx < loadDynData) {\r\n\t\t\t\t\t\t$.ajax({\r\n\t\t\t\t\t\t\turl: '/api/articlesearch',\r\n\t\t\t\t\t\t\tdata: JSON.stringify({ 'TaxonomyIds': setId[idx][\"TaxonomyIds\"], 'FilterQuery': setId[idx][\"FilterQuery\"], 'ChannelId': setId[idx][\"ChannelId\"], 'PageNo': 1, 'PageSize': 9, 'OperationMode': setId[idx][\"OperationMode\"] }),\r\n\t\t\t\t\t\t\tdataType: 'json',\r\n\t\t\t\t\t\t\tcontentType: \"application/json\",\r\n\t\t\t\t\t\t\ttype: 'POST',\r\n\t\t\t\t\t\t\tcache: false,\r\n\t\t\t\t\t\t\tasync: false,\r\n\t\t\t\t\t\t\tbeforeSend: function beforeSend() {\r\n\t\t\t\t\t\t\t\t$('.spinnerIcon').removeClass('hidespin');\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tsuccess: function success(data) {\r\n\t\t\t\t\t\t\t\tif (data.articles && typeof data.articles === \"object\" && data.articles.length >= 9) {\r\n\t\t\t\t\t\t\t\t\tvar googldAdhtml = $('a', '#myview_ad_'+idx).clone();\r\n\t\t\t\t\t\t\t\t\tif (layout1) {\r\n\t\t\t\t\t\t\t\t\t\tlayout1 = false; \r\n\t\t\t\t\t\t\t\t\t\tloadLayoutData = loadLayoutOneData(data, idx);\r\n\t\t\t\t\t\t\t\t\t\tloadLayoutData += '
    ';\r\n\t\t\t\t\t\t\t\t\t\t$('.spinnerIcon').addClass('hidespin');\r\n\t\t\t\t\t\t\t\t\t\t$('.personalisationPan').append(loadLayoutData);\r\n\t\t\t\t\t\t\t\t\t\twindow.findTooltips();\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t$('#ad_'+loadPreferanceId[\"Sections\"][idx][\"ChannelName\"].replace(/'/, '').split(' ')[0]).html(googldAdhtml[0]);\r\n\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\tlayout1 = true;\r\n\t\t\t\t\t\t\t\t\t\tloadLayoutData = loadLayoutTwoData(data, idx);\r\n\t\t\t\t\t\t\t\t\t\tloadLayoutData += '
    ';\r\n\t\t\t\t\t\t\t\t\t\t$('.spinnerIcon').addClass('hidespin');\r\n\t\t\t\t\t\t\t\t\t\t$('.personalisationPan').append(loadLayoutData);\r\n\t\t\t\t\t\t\t\t\t\twindow.findTooltips();\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t$('#ad_'+loadPreferanceId[\"Sections\"][idx][\"ChannelName\"].replace(/'/, '').split(' ')[0]).html(googldAdhtml[0]);\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\terror: function error(xhr, errorType, _error) {\r\n\t\t\t\t\t\t\t\tconsole.log('err ' + _error);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t})(i);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t$('.personalisationPan').on('click', '.loadmore', function () {\r\n\t\tvar $this = $(this),\r\n\t\t eachstoryMpan = $this.closest('.eachstoryMpan'),\r\n\t\t eachstory = eachstoryMpan.find('.eachstory'),\r\n\t\t eachstoryId = eachstory.attr('id'),\r\n\t\t layoutCls = eachstory.attr('class'),\r\n\t\t\tchannelId = $this.closest('.eachstoryMpan').prev('.latestSubject').attr('id'),\r\n\t\t\tid = $this.attr('id'),\r\n\t\t loadLayoutData;\r\n\r\n\t\tvar layout = layoutCls.indexOf('layout1') !== -1 ? 'layout1' : 'layout2';\r\n\t\tvar setId = loadPreferanceId[\"Sections\"],\r\n\t\t\tsendtaxonomyIdsArr = $this.closest('.eachstoryMpan').find('.getPaginationNum').attr('data-taxonomyIds').split(','),\r\n\t\t\tqueryFilter = JSON.parse(decodeURIComponent($this.closest('.eachstoryMpan').find('.getPaginationNum').attr('data-queryFilter')));\r\n\r\n\t\t$.ajax({\r\n\t\t\turl: $this.closest('.eachstoryMpan').find('.getPaginationNum').attr('data-loadurl'),\r\n\t\t\tdataType: 'json',\r\n\t\t\ttype: 'POST',\r\n\t\t\tdata: JSON.stringify({ 'TaxonomyIds': sendtaxonomyIdsArr, 'FilterQuery': queryFilter, 'ChannelId': channelId, 'PageNo': $this.closest('.eachstoryMpan').find('.getPaginationNum').attr('data-pageNo'), 'PageSize': $this.closest('.eachstoryMpan').find('.getPaginationNum').attr('data-pageSize'), 'OperationMode': loadPreferanceId[\"Sections\"][id][\"OperationMode\"] }),\r\n\t\t\tcontentType: \"application/json\",\r\n\t\t\tsuccess: function success(data) {\r\n\t\t\t\tif (data.articles && typeof data.articles === \"object\" && data.articles.length >= 9) {\r\n\t\t\t\t\t$this.closest('.eachstoryMpan').find('.getPaginationNum').attr({ 'data-taxonomyIds': data.loadMore.taxonomyIds, 'data-loadurl': data.loadMore.loadMoreLinkUrl, 'data-pageNo': data.loadMore.pageNo, 'data-pageSize': data.loadMore.pageSize, 'data-queryFilter': encodeURIComponent(JSON.stringify(data.loadMore.filterQuery)) });\r\n\t\t\t\t\tif (layout === 'layout1') {\r\n\t\t\t\t\t\tloadLayoutData = createLayoutInner1(data);\r\n\t\t\t\t\t\t$(eachstory).append(loadLayoutData);\r\n\t\t\t\t\t\tsetImgHeightListview();\r\n\t\t\t\t\t\twindow.findTooltips();\r\n\t\t\t\t\t\twindow.indexBookmarks();\r\n\t\t\t\t\t\tif (data.loadMore && !data.loadMore.displayLoadMore) {\r\n\t\t\t\t\t\t\t$this.closest('.eachstoryMpan').find('.loadmore').css('display', 'none');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tloadLayoutData = createLayoutInner2(data);\r\n\t\t\t\t\t\t$(eachstory).append(loadLayoutData);\r\n\t\t\t\t\t\tsetImgHeightListview();\r\n\t\t\t\t\t\twindow.findTooltips();\r\n\t\t\t\t\t\twindow.indexBookmarks();\r\n\t\t\t\t\t\tif (data.loadMore && !data.loadMore.displayLoadMore) {\r\n\t\t\t\t\t\t\t$this.closest('.eachstoryMpan').find('.loadmore').css('display', 'none');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\terror: function error(xhr, errorType, _error2) {\r\n\t\t\t\tconsole.log('err ' + _error2);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\tvar scrollflag = true;\r\n\t$(window).scroll(function () {\r\n\t\tvar eachstoryMpan = $('.personalisationPan .eachstoryMpan'),\r\n\t\t eachstoryMpanLast = eachstoryMpan.last(),\r\n\t\t layoutCls = eachstoryMpan.find('.eachstory').attr('class'),\r\n\t\t contentHei = $('.personalisationPan').height(),\r\n\t\t loadsection,\r\n\t\t\tgetChannelId,\r\n\t\t\tfilterQuery,\r\n\t\t texonomyId;\r\n\r\n\t\tif ($(window).scrollTop() > contentHei - 400 && scrollflag) {\r\n\t\t\tvar getscrollData;\r\n\t\t\tscrollflag = false;\r\n\t\t\tif (typeof loadPreferanceId !== \"undefined\") {\r\n\t\t\t\tif (getArticleIdx < loadPreferanceId[\"Sections\"].length) {\r\n\t\t\t\t\tgetLiIdx = getArticleIdx;\r\n\t\t\t\t\tloadsection = getArticleIdx;\r\n\t\t\t\t\ttexonomyId = loadPreferanceId[\"Sections\"][loadsection][\"TaxonomyIds\"];\r\n\t\t\t\t\tgetChannelId = loadPreferanceId[\"Sections\"][loadsection][\"ChannelId\"];\r\n\t\t\t\t\tfilterQuery = loadPreferanceId[\"Sections\"][loadsection][\"FilterQuery\"];\r\n\t\t\t\t\tgetArticleIdx++;\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\t$.ajax({\r\n\t\t\t\turl: '/api/articlesearch',\r\n\t\t\t\tdata: JSON.stringify({ 'TaxonomyIds': texonomyId, 'FilterQuery': filterQuery, 'ChannelId': getChannelId, 'PageNo': 1, 'PageSize': 9, 'OperationMode': loadPreferanceId[\"Sections\"][getArticleIdx-1][\"OperationMode\"]}),\r\n\t\t\t\ttype: 'POST',\r\n\t\t\t\tcontentType: \"application/json\",\r\n\t\t\t\tcache: false,\r\n\t\t\t\tasync: false,\r\n\t\t\t\tdataType: 'json',\r\n\t\t\t\tsuccess: function success(data) {\r\n\t\t\t\t\tscrollflag = true;\r\n\t\t\t\t\tif (data.articles && typeof data.articles === \"object\" && data.articles.length >= 9) {\r\n\t\t\t\t\t\tvar addIdx = getArticleIdx - 1, googldAdhtml = $('a', '#myview_ad_'+addIdx).clone();\r\n\t\t\t\t\t\tif ($('.eachstoryMpan', '.personalisationPan').length % 2 == 0) {\r\n\t\t\t\t\t\t\tgetscrollData = loadLayoutOneData(data, loadsection);\r\n\t\t\t\t\t\t\tgetscrollData += '
    ';\r\n\t\t\t\t\t\t\t$('.spinnerIcon').addClass('hidespin');\r\n\t\t\t\t\t\t\t$('.personalisationPan').append(getscrollData);\r\n\t\t\t\t\t\t\tsetImgHeightListview();\r\n\t\t\t\t\t\t\twindow.findTooltips();\r\n\t\t\t\t\t\t\twindow.indexBookmarks();\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t$('#ad_'+loadPreferanceId[\"Sections\"][getArticleIdx-1][\"ChannelName\"].replace(/'/, '').split(' ')[0]).html(googldAdhtml[0]);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tgetscrollData = loadLayoutTwoData(data, loadsection);\r\n\t\t\t\t\t\t\tgetscrollData += '
    ';\r\n\t\t\t\t\t\t\t$('.spinnerIcon').addClass('hidespin');\r\n\t\t\t\t\t\t\t$('.personalisationPan').append(getscrollData);\r\n\t\t\t\t\t\t\tsetImgHeightListview();\r\n\t\t\t\t\t\t\twindow.findTooltips();\r\n\t\t\t\t\t\t\twindow.indexBookmarks();\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t$('#ad_'+loadPreferanceId[\"Sections\"][getArticleIdx-1][\"ChannelName\"].replace(/'/, '').split(' ')[0]).html(googldAdhtml[0]);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\terror: function error(xhr, errorType, _error3) {\r\n\t\t\t\t\tconsole.log('xhr ' + xhr + ' errorType ' + errorType + ' error ' + _error3);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t});\r\n\r\n\t$('.main-menu__hoverable a.myviewLink').click(function (e) {\r\n\t\tif ($('#hdnMyViewPage') && $('#hdnMyViewPage').val() === \"true\") {\r\n\t\t\te.preventDefault();\r\n\t\t\tvar $this = $(this),\r\n\t\t\t name = $this.attr('name'),\r\n\t\t\t getPos = $('#' + name).position(),\r\n\t\t\t latestSubject = $('#' + name).closest('.eachstoryMpan').prev('.latestSubject'),\r\n\t\t\t subjectHei = latestSubject.height(),\r\n\t\t\t allstoriesLen = $('.personalisationPan .eachstoryMpan').length,\r\n\t\t\t liIdx = $this.closest('li').index();\r\n\t\t\tsetTimeout(function () {\r\n\t\t\t\tif ($('.js-menu-toggle-button, .js-full-menu-toggle').hasClass('is-active')) {\r\n\t\t\t\t\t$('.js-menu-toggle-button, .js-full-menu-toggle').removeClass('is-active');\r\n\t\t\t\t}\r\n\t\t\t}, 5);\r\n\r\n\t\t\tif (typeof loadPreferanceId !== 'undefined' && $('#' + name) && $('#' + name).length) {\r\n\t\t\t\t$(window).scrollTop(getPos.top - subjectHei * 3);\r\n\t\t\t} else {\r\n\t\t\t\tif (typeof loadPreferanceId !== \"undefined\") {\r\n\t\t\t\t\tgetLiIdx = getArticleIdx;\r\n\t\t\t\t\tfor (var i = getLiIdx; i <= liIdx; i++) {\r\n\t\t\t\t\t\tvar setId = loadPreferanceId[\"Sections\"];\r\n\t\t\t\t\t\tgetArticleIdx++;\r\n\t\t\t\t\t\t(function (idx) {\r\n\t\t\t\t\t\t\t$.ajax({\r\n\t\t\t\t\t\t\t\turl: '/api/articlesearch',\r\n\t\t\t\t\t\t\t\tdataType: 'json',\r\n\t\t\t\t\t\t\t\tcontentType: \"application/json\",\r\n\t\t\t\t\t\t\t\tdata: JSON.stringify({ 'TaxonomyIds': loadPreferanceId[\"Sections\"][idx][\"TaxonomyIds\"], 'FilterQuery': loadPreferanceId[\"Sections\"][idx][\"FilterQuery\"],'ChannelId': loadPreferanceId[\"Sections\"][idx][\"ChannelId\"], 'PageNo': 1, 'PageSize': 9, 'OperationMode': setId[idx][\"OperationMode\"] }),\r\n\t\t\t\t\t\t\t\ttype: 'POST',\r\n\t\t\t\t\t\t\t\tcache: false,\r\n\t\t\t\t\t\t\t\tasync: false,\r\n\t\t\t\t\t\t\t\tbeforeSend: function beforeSend() {\r\n\t\t\t\t\t\t\t\t\t$('.spinnerIcon').removeClass('hidespin');\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\tsuccess: function success(data) {\r\n\t\t\t\t\t\t\t\t\tif (data.articles && typeof data.articles === \"object\" && data.articles.length >= 9) {\r\n\t\t\t\t\t\t\t\t\t\tvar googldAdhtml = $('a', '#myview_ad_'+idx).clone();\r\n\t\t\t\t\t\t\t\t\t\tif ($('.eachstoryMpan', '.personalisationPan').length % 2 == 0) {\r\n\t\t\t\t\t\t\t\t\t\t\tloadLayoutData = loadLayoutOneData(data, idx);\r\n\t\t\t\t\t\t\t\t\t\t\tloadLayoutData += '
    ';\r\n\t\t\t\t\t\t\t\t\t\t\t$('.personalisationPan').append(loadLayoutData);\r\n\t\t\t\t\t\t\t\t\t\t\twindow.findTooltips();\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t$('#ad_'+loadPreferanceId[\"Sections\"][idx][\"ChannelName\"].replace(/'/, '').split(' ')[0]).html(googldAdhtml[0]);\r\n\t\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t\tloadLayoutData = loadLayoutTwoData(data, idx);\r\n\t\t\t\t\t\t\t\t\t\t\tloadLayoutData += '
    ';\r\n\t\t\t\t\t\t\t\t\t\t\t$('.personalisationPan').append(loadLayoutData);\r\n\t\t\t\t\t\t\t\t\t\t\twindow.findTooltips(); \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t$('#ad_'+loadPreferanceId[\"Sections\"][idx][\"ChannelName\"].replace(/'/, '').split(' ')[0]).html(googldAdhtml[0]);\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\terror: function error(xhr, errorType, _error4) {\r\n\t\t\t\t\t\t\t\t\tconsole.log('err ' + _error4);\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\tcomplete: function complete(xhr, status) {\r\n\t\t\t\t\t\t\t\t\tif (status === \"success\" && $('#' + name).length) {\r\n\t\t\t\t\t\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\t\t\t\t\t\tvar getlatestPos = $('#' + name).position();\r\n\t\t\t\t\t\t\t\t\t\t\tif (getlatestPos) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t$('.spinnerIcon').addClass('hidespin');\r\n\t\t\t\t\t\t\t\t\t\t\t\t$(window).scrollTop(getlatestPos.top - 120);\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t}, 5);\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t})(i);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} \r\n\t\t} else {\r\n\t\t\tif ($('#validatePreference').val() !== 1) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tvar $this1 = $(this),\r\n\t\t\t\t href = $this1.attr('href'),\r\n\t\t\t\t id = $this1.attr('name');\r\n\t\t\t\twindow.location.href = href + '#' + id;\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\t\r\n\tvar latestSubject = $('.latestSubject');\r\n\tif (window.matchMedia(\"(min-width: 1025px)\").matches) {\r\n\t\tfor(var i1 = 0; i1 < latestSubject.length; i1++){\r\n\t\t\tvar getFullwidth = $(latestSubject[i1]).width(), frEditviewWid = $(latestSubject[i1]).find('.frEditview').width(),\r\n\t\t\tsetEditViewWidth = Math.ceil(frEditviewWid / getFullwidth * 100), setLatestSubWid = 100 - setEditViewWidth;\r\n\t\t\t$(latestSubject[i1]).find('.frEditview').css('width', setEditViewWidth + 2 +'%');\r\n\t\t\t$(latestSubject[i1]).find('.fllatestSub').css('width', setLatestSubWid - 2 + '%');\r\n\t\t}\r\n\t}\r\n\t\r\n\tif($('.personalisationhome').hasClass('listView')){\r\n\t\tsetImgHeightListview();\r\n }\r\n}); ","$(function () {\r\n var isThemeOmdia = $('body').hasClass('theme-omdia');\r\n const powerBiEmbeds = document.getElementsByClassName('js-powerbi-embed');\r\n if (powerBiEmbeds != null && powerBiEmbeds.length > 0) {\r\n for (let i = 0; i < powerBiEmbeds.length; i++) {\r\n const heightAttribute = powerBiEmbeds[i].attributes['data-powerbi-height'];\r\n const widthAttribute = powerBiEmbeds[i].attributes['data-powerbi-width'];\r\n const typeAttribute = powerBiEmbeds[i].attributes['data-powerbi-type'];\r\n const tokenAttribute = powerBiEmbeds[i].attributes['data-powerbi-token'];\r\n const embedUrlAttribute = powerBiEmbeds[i].attributes['data-powerbi-embedurl'];\r\n const idAttribute = powerBiEmbeds[i].attributes['data-powerbi-id'];\r\n\r\n // Get models. models contains enums that can be used.\r\n var models = window['powerbi-client'].models;\r\n\r\n // Embed configuration used to describe the what and how to embed.\r\n // This object is used when calling powerbi.embed.\r\n // This also includes settings and options such as filters.\r\n // You can find more information at https://github.com/Microsoft/PowerBI-JavaScript/wiki/Embed-Configuration-Details.\r\n var config = {\r\n type: typeAttribute.value,\r\n tokenType: models.TokenType.Embed,\r\n accessToken: tokenAttribute.value,\r\n embedUrl: embedUrlAttribute.value,\r\n id: idAttribute.value\r\n };\r\n\r\n if (isThemeOmdia) {\r\n $(powerBiEmbeds[i]).closest('.inf-container').addClass('powerbi-dashboard-container');\r\n\r\n powerBiEmbeds[i].style.width = '100%';\r\n \r\n if (widthAttribute && widthAttribute.value && heightAttribute && heightAttribute.value) {\r\n powerBiEmbeds[i].style.height = $(powerBiEmbeds[i]).width() * (heightAttribute.value / widthAttribute.value) + 'px';\r\n }\r\n } else {\r\n if (heightAttribute && heightAttribute.value) {\r\n powerBiEmbeds[i].style.height = heightAttribute.value + 'px';\r\n }\r\n\r\n if (widthAttribute && widthAttribute.value) {\r\n powerBiEmbeds[i].style.width = widthAttribute.value + 'px';\r\n }\r\n }\r\n\r\n // Embed the dashboard and display it within the div container. The embed returns an object, for example:\r\n // var dashboard = powerbi.embed(document.querySelector('#' + powerBiEmbeds[i].id), config);\r\n powerbi.embed(document.querySelector('#' + powerBiEmbeds[i].id), config);\r\n }\r\n }\r\n \r\n if (isThemeOmdia) {\r\n $(window).on('resize', function () {\r\n const powerBiEmbeds = document.getElementsByClassName('js-powerbi-embed');\r\n if (powerBiEmbeds != null && powerBiEmbeds.length > 0) {\r\n for (let i = 0; i < powerBiEmbeds.length; i++) {\r\n const heightAttribute = powerBiEmbeds[i].attributes['data-powerbi-height'];\r\n const widthAttribute = powerBiEmbeds[i].attributes['data-powerbi-width'];\r\n\r\n powerBiEmbeds[i].style.width = '100%';\r\n\r\n if (widthAttribute && widthAttribute.value && heightAttribute && heightAttribute.value) {\r\n powerBiEmbeds[i].style.height = $(powerBiEmbeds[i]).width() * (heightAttribute.value / widthAttribute.value) + 'px';\r\n }\r\n }\r\n }\r\n });\r\n }\r\n});","if ($(\"body\").hasClass(\"theme-lloydslist\")) {\r\n var vessel_size_li, vessel_x, company_size_li, company_x, place_size_li, place_x;\r\n $(document).ready(function () {\r\n\r\n vessel_size_li = $(\".seasearchitemVessel li\").size();\r\n company_size_li = $(\".seasearchitemCompany li\").size();\r\n place_size_li = $(\".seasearchitemport li\").size();\r\n vessel_x = $(\"#vesselitemscount\").val();\r\n company_x = $(\"#companyitemscount\").val();\r\n place_x = $(\"#placeitemscount\").val();\r\n // vessel\r\n $('.seasearchitemVessel li').slice(0, vessel_x).show();\r\n $('.seasearchitemVessel li').slice(vessel_x, vessel_size_li).hide();\r\n $(\".more--vessel\").hide();\r\n $(\".less--vessel\").hide();\r\n if (vessel_size_li > vessel_x) {\r\n $(\".more--vessel\").show();\r\n $(\".less--vessel\").hide();\r\n // $(\".seasearchitemport\").append('
  • See All
  • ');\r\n }\r\n\r\n $(document).on('click', '.more--vessel,.less--vessel', function () {\r\n // x = (x + 5 <= size_li) ? x + 5 : size_li;\r\n\r\n\r\n if (vessel_x == vessel_size_li) {\r\n vessel_x = $(\"#vesselitemscount\").val();\r\n $('.seasearchitemVessel li').slice(0, vessel_x).show();\r\n $('.seasearchitemVessel li').slice(vessel_x, vessel_size_li).hide();\r\n //$(this).text('See All');\r\n $(\".more--vessel\").show();\r\n $(\".less--vessel\").hide();\r\n }\r\n else {\r\n vessel_x = vessel_size_li;\r\n $('.seasearchitemVessel li').slice(0, vessel_size_li).show();\r\n $(\".less--vessel\").show();\r\n $(\".more--vessel\").hide();\r\n // $(this).text('See Less');\r\n }\r\n\r\n });\r\n\r\n // company\r\n $('.seasearchitemCompany li').slice(0, company_x).show();\r\n $('.seasearchitemCompany li').slice(company_x, company_size_li).hide();\r\n\r\n $(\".more--company\").hide();\r\n $(\".less--company\").hide();\r\n if (company_size_li > company_x) {\r\n $(\".more--company\").show();\r\n $(\".less--company\").hide();\r\n // $(\".seasearchitemport\").append('
  • See All
  • ');\r\n }\r\n\r\n $(document).on('click', '.more--company,.less--company', function () {\r\n // x = (x + 5 <= size_li) ? x + 5 : size_li;\r\n\r\n\r\n if (company_x == company_size_li) {\r\n company_x = $(\"#companyitemscount\").val();\r\n $('.seasearchitemCompany li').slice(0, company_x).show();\r\n $('.seasearchitemCompany li').slice(company_x, company_size_li).hide();\r\n //$(this).text('See All');\r\n $(\".more--company\").show();\r\n $(\".less--company\").hide();\r\n }\r\n else {\r\n company_x = company_size_li;\r\n $('.seasearchitemCompany li').slice(0, company_size_li).show();\r\n $(\".less--company\").show();\r\n $(\".more--company\").hide();\r\n // $(this).text('See Less');\r\n }\r\n\r\n });\r\n\r\n \r\n\r\n // Port\r\n $('.seasearchitemport li').slice(0, place_x).show();\r\n $('.seasearchitemport li').slice(place_x, place_size_li).hide();\r\n $(\".more--place\").hide();\r\n $(\".less--place\").hide();\r\n if (place_size_li > place_x) {\r\n $(\".more--place\").show();\r\n $(\".less--place\").hide();\r\n // $(\".seasearchitemport\").append('
  • See All
  • ');\r\n }\r\n\r\n $(document).on('click', '.more--place,.less--place', function () {\r\n // x = (x + 5 <= size_li) ? x + 5 : size_li;\r\n\r\n\r\n if (place_x == place_size_li) {\r\n place_x = $(\"#placeitemscount\").val();\r\n $('.seasearchitemport li').slice(0, place_x).show();\r\n $('.seasearchitemport li').slice(place_x, place_size_li).hide();\r\n //$(this).text('See All');\r\n $(\".more--place\").show();\r\n $(\".less--place\").hide();\r\n }\r\n else {\r\n place_x = place_size_li;\r\n $('.seasearchitemport li').slice(0, place_size_li).show();\r\n $(\".less--place\").show();\r\n $(\".more--place\").hide();\r\n // $(this).text('See Less');\r\n }\r\n\r\n });\r\n\r\n });\r\n}","$(function () {\r\n var inputs = $('input[type=\"radio\"]'),\r\n productValue, \r\n rowID;\r\n\r\n $('#form-search-preferences input[type=\"radio\"]').change(function (event) {\r\n $('#btnsubmit').removeAttr('disabled');\r\n for (var i = 0; i < inputs.length; i++) {\r\n if ($('input[name=SavedSearchInput' + i + ']').length === 0) {\r\n break;\r\n }\r\n productValue = $(event.currentTarget).val();\r\n rowID = $(event.currentTarget).closest('tr').attr(\"id\").split(\"row\")[1];\r\n\r\n //Set selectValue hidden field\r\n $('#SavedSearchInput' + rowID + 'Frequency').val(productValue); \r\n return;\r\n }\r\n });\r\n \r\n $('#form-search-preferences-none input[type=\"radio\"]').change(function (event) {\r\n $('#btnsubmitnone').removeAttr('disabled');\r\n for (var i = 0; i < inputs.length; i++) {\r\n if ($('input[name=SavedSearchInputN' + i + ']').length === 0) {\r\n break;\r\n }\r\n productValue = $(event.currentTarget).val();\r\n rowID = $(event.currentTarget).closest('tr').attr(\"id\").split(\"row\")[1];\r\n\r\n //Set selectValue for none hidden field \r\n $('#SavedSearchInputNone' + rowID + 'FrequencyN').val(productValue);\r\n return;\r\n }\r\n });\r\n\r\n $('.saved-preferences .page-account__submit-wrapper button[type=\"submit\"]').click(function () {\r\n window.location.reload(true);\r\n });\r\n});","/* global analyticsEvent, analytics_data, angular */\r\nimport FormController from '../controllers/form-controller';\r\nimport Cookies from '../jscookie';\r\nimport { analyticsEvent } from '../controllers/analytics-controller';\r\n\r\n/* * *\r\nSAVE SEARCH\r\nThis component handles saving searches from the Search page, as well as setting alerts\r\nfor topics from Home/Topic pages. Dispite the naming differences, the back-end functionality\r\nis the same - topic alerts are actually just saved searches for the topic,\r\nplus an email alert for new articles.\r\n* * */\r\n\r\nfunction getParameterByName(name, url) {\r\n if (!url) {\r\n url = window.location.href;\r\n }\r\n name = name.replace(/[\\[\\]]/g, \"\\\\$&\");\r\n var regex = new RegExp(\"[?&]\" + name + \"(=([^&#]*)|&|#|$)\"),\r\n results = regex.exec(url);\r\n if (!results) return null;\r\n if (!results[2]) return '';\r\n return decodeURIComponent(results[2].replace(/\\+/g, \" \"));\r\n}\r\n\r\n$(document).ready(function() {\r\n\r\n\t// When the Save Search pop-out is toggled, need to update some form fields\r\n\t// with the most recent data. Used to use Angular for this, but for site-wide\r\n\t// reusability we need to do it in Zepto.\r\n\t$('.js-save-search').on('click', function(e) {\r\n\t\t$('.js-save-search-url').val(window.location.pathname + window.location.hash);\r\n\t\t$('.js-save-search-title').val($('#js-search-field').val());\r\n\t});\r\n\r\n\t// Populates topic alert data when a user is logging in and saving simultaneously\r\n\t$('.js-update-topic-alert').on('click', function(e) {\r\n\t\t$('.js-save-search-url').val($(this).data('topic-alert-url'));\r\n\t\t// Search/Topic title exists as and , needs two techniques to properly\r\n\t\t// update the values.\r\n\t\t$('.js-save-search-title').val($(this).data('topic-alert-title')).html($(this).data('topic-alert-title'));\r\n\t});\r\n\r\n\tif (!$(\"div[data-pop-out-id='header-signin']\").length) {\r\n if (!$('.show-topic-alert').hasClass('js-set-topic-alert')) {\r\n $('.show-topic-alert').removeClass('js-pop-out-trigger js-update-topic-alert');\r\n $('.show-topic-alert').addClass('js-set-topic-alert');\r\n }\r\n }\r\n\r\n\t$('.js-set-topic-alert').on('click', function(e) {\r\n\r\n\t\tvar isSettingAlert = !$(this).data('has-topic-alert');\r\n\t\tvar topicLabel = $(this).find('.js-set-topic-label');\r\n\r\n\t\t$('.js-save-search-url').val($(this).data('topic-alert-url'));\r\n\t\t$('.js-save-search-title').val($(this).data('topic-alert-title'));\r\n\r\n\t\tif(isSettingAlert) {\r\n\t\t\t$('.form-save-search').find('button[type=submit]').click();\r\n\t\t\ttopicLabel.html(topicLabel.data('label-is-set'));\r\n\t\t\t$(this).data('has-topic-alert', 'true');\r\n\t\t\t$(this).find('.js-topic-icon-unset').removeClass('is-active');\r\n\t\t\t$(this).find('.js-topic-icon-set').addClass('is-active');\r\n\t\t} else {\r\n\t\t\twindow.lightboxController.showLightbox($(this));\r\n\t\t}\r\n\r\n\t});\r\n\r\n\tvar savedSearch = getParameterByName(\"ss\");\r\n\tif (savedSearch != null && savedSearch === \"true\") {\r\n\t $('.js-saved-search-success-alert')\r\n\t\t\t\t.addClass('is-active')\r\n\t\t\t\t.on('animationend', function (e) {\r\n\t\t\t\t $(e.target).removeClass('is-active');\r\n\t\t\t\t}).addClass('a-fade-alert');\r\n\t}\r\n\r\n\tvar removeTopicAlert = new FormController({\r\n\t\tobserve: '.form-remove-topic-alert',\r\n\t\tsuccessCallback: function(form, context, event) {\r\n\t\t\t$(form).find('.js-set-topic-label').html($(form).find('.js-set-topic-label').data('label-not-set'));\r\n\t\t\t$(form).find('.js-set-topic-alert').data('has-topic-alert', null);\r\n\t\t\t$(form).find('.js-topic-icon-unset').addClass('is-active');\r\n\t\t\t$(form).find('.js-topic-icon-set').removeClass('is-active');\r\n\r\n\t\t\tanalyticsEvent(\t$.extend(analytics_data, $(form).data('analytics')) );\r\n\r\n\t\t}\r\n\t});\r\n\r\n\tvar saveSearchController = new FormController({\r\n\t\tobserve: '.form-save-search',\r\n\t\tsuccessCallback: function(form, context, event) {\r\n\r\n\t\t\t// If there's a stashed search, remove it.\r\n\t\t\tCookies.remove('saveStashedSearch');\r\n\r\n\t\t\twindow.controlPopOuts.closePopOut($(form).closest('.pop-out'));\r\n\t\t\t$('.js-saved-search-success-alert')\r\n\t\t\t\t.addClass('is-active')\r\n\t\t\t\t.on('animationend', function(e) {\r\n\t\t\t\t\t$(e.target).removeClass('is-active');\r\n\t\t\t\t}).addClass('a-fade-alert');\r\n\r\n\t\t\twindow.lightboxController.closeLightboxModal();\r\n\r\n\t\t\tif(typeof angular !== 'undefined') {\r\n\t\t\t\tangular.element($('.js-saved-search-controller')[0]).controller().searchIsSaved();\r\n\t\t\t}\r\n\r\n\t\t\tvar event_data = {};\r\n\r\n\t\t\tif($(form).data('is-search') === true) {\r\n\t\t\t\tevent_data.event_name = \"toolbar_use\";\r\n\t\t\t\tevent_data.toolbar_tool = \"save_search\";\r\n\t\t\t} else {\r\n\t\t\t\tevent_data.event_name = \"set_alert\";\r\n\t\t\t\tevent_data.alert_topic = $(form).find('.js-save-search-title').val();\r\n\t\t\t}\r\n\r\n\t\t\tanalyticsEvent(\t$.extend(analytics_data, event_data) );\r\n\r\n\t\t},\r\n\t\tbeforeRequest: function(form) {\r\n\t\t\tif(!$(form).find('.js-save-search-title').val().trim()) {\r\n\t\t\t\t$('.js-form-error-EmptyTitle').show();\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\tvar saveSearchLoginController = new FormController({\r\n\t\tobserve: '.form-save-search-login',\r\n\t\tsuccessCallback: function(form, context, event) {\r\n\t\t\tCookies.set('saveStashedSearch', {\r\n\t\t\t\t'Title': $('.js-save-search-title').val(),\r\n\t\t\t\t'Url': $('.js-save-search-url').val(),\r\n\t\t\t\t'AlertEnabled': $('#AlertEnabled').prop('checked')\r\n\t\t\t});\r\n\r\n\t\t\t$.ajax({\r\n\t\t\t type: \"POST\",\r\n\t\t\t url: \"/api/SavedSearches\",\r\n\t\t\t data: {\r\n\t\t\t url: $('.js-save-search-url').val(),\r\n\t\t\t title: $('.js-save-search-title').val(),\r\n\t\t\t alertEnabled: $('#AlertEnabled').prop('checked')\r\n\t\t\t }\r\n\t\t\t});\r\n \r\n\t\t\tvar loginAnalytics = {\r\n\t\t\t\tevent_name: 'login',\r\n\t\t\t\tlogin_state: 'successful',\r\n\t\t\t\tuserName: '\"' + $(form).find('input[name=username]').val() + '\"'\r\n\t\t\t};\r\n\t\t\tanalyticsEvent(\t$.extend(analytics_data, loginAnalytics) );\r\n\r\n\t\t\tvar ssParam = getParameterByName(\"ss\");\r\n\t\t\tvar searchVal = window.location.search;\r\n\t\t\tif (ssParam == null) {\r\n\t\t\t searchVal = (searchVal.length < 1) \r\n\t\t\t ? \"?ss=true\"\r\n : searchVal + \"&ss=true\";\r\n\t\t\t} \r\n \r\n\t\t\tif (ssParam === window.location.search)\r\n\t\t\t window.location.reload(true);\r\n\t\t\telse \r\n\t\t\t window.location = window.location.pathname + searchVal + window.location.hash;\t\r\n\t\t}\r\n\t});\r\n\r\n\tvar toggleSavedSearchAlertController = new FormController({\r\n\t\tobserve: '.form-toggle-saved-search-alert',\r\n\t\tsuccessCallback: function(form, context, e) {\r\n\t\t\tvar alertToggle = $(form).find('.js-saved-search-alert-toggle');\r\n\t\t\tvar val = alertToggle.val();\r\n\t\t\tvar event_data = {\r\n\t\t\t\tsaved_search_alert_title: $(form).data('analytics-title'),\r\n\t\t\t\tsaved_search_alert_publication: $(form).data('analytics-publication')\r\n\t\t\t};\r\n\r\n\t\t\tif (val === \"on\") {\r\n\t\t\t\tevent_data.event_name = 'saved_search_alert_off';\r\n\t\t\t\talertToggle.val('off');\r\n\t\t\t} else {\r\n\t\t\t\tevent_data.event_name = 'saved_search_alert_on';\r\n\t\t\t\talertToggle.val('on');\r\n\t\t\t}\r\n\r\n\t\t\tanalyticsEvent( $.extend(analytics_data, event_data) );\r\n\t\t}\r\n\t});\r\n\r\n\t$('.js-saved-search-alert-toggle').on('click', function(e) {\r\n\t\t$(e.target.form).find('button[type=submit]').click();\r\n\t});\r\n\r\n\t// On page load, check for any stashed searches that need to be saved\r\n\tvar saveStashedSearch = Cookies.getJSON('saveStashedSearch');\r\n\r\n\tif(saveStashedSearch) {\r\n\t\t// Set `Save Search` values from stashed search data\r\n\t\t$('.js-save-search-title').val(saveStashedSearch['Title']);\r\n\t\t$('.js-save-search-url').val(saveStashedSearch['Url']);\r\n\t\t$('#AlertEnabled').prop('checked', saveStashedSearch['AlertEnabled']);\r\n\r\n\t\t// Save the stashed search if Search (Angular) page\r\n\t\tif(typeof angular !== 'undefined') {\r\n\t\t\t$('.form-save-search').find('button[type=submit]').click();\r\n\t\t} else {\r\n\t\t\t$('.js-set-topic-alert').each(function(index, item) {\r\n\t\t\t\tif($(item).data('topic-alert-url') === saveStashedSearch['Url']) {\r\n\t\t\t\t\t$(item).click();\r\n\t\t\t\t\t// If there's a stashed search, remove it.\r\n\t\t\t\t\tCookies.remove('saveStashedSearch');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tvar removeSavedSearch = new FormController ({\r\n observe: '.form-remove-saved-search',\r\n successCallback: function successCallback(form, context, evt) {\r\n if ($('#empty-form input[name =\"rowId\"]').val().length) {\r\n var rowIndex = $('#empty-form input[name =\"rowId\"]').val();\r\n $('#row' + rowIndex).remove();\r\n } else {\r\n //for old alerts page\r\n $(evt.target).closest('tr').remove();\r\n\t\t\t}\r\n\t\t\t\r\n window.controlPopOuts.closePopOut($(form).closest('.pop-out'));\r\n $('.js-saved-search-success-alert').addClass('is-active').on('animationend', function (e) {\r\n console.log(\"save search component:6\");\r\n $(e.target).removeClass('is-active');\r\n\t\t\t}).addClass('a-fade-alert');\r\n\t\t\t\r\n window.lightboxController.closeLightboxModal();\r\n var event_data = {\r\n event_name: 'saved_search_alert_removal',\r\n saved_search_alert_title: $(form).data('analytics-title'),\r\n saved_search_alert_publication: $(form).data('analytics-publication')\r\n };\r\n analyticsEvent( $.extend(analytics_data, event_data));\r\n }\r\n });\r\n\r\n\tvar removeSavedSearchnone = new FormController ({\r\n observe: '.form-remove-saved-search-none',\r\n successCallback: function successCallback(form, context, evt) {\r\n if ($('.form-remove-saved-search-none input[name =\"rowId\"]').val().length) {\r\n var rowIndex = $('.form-remove-saved-search-none input[name =\"rowId\"]').val();\r\n \r\n $('#form-search-preferences-none #row' + rowIndex).remove();\r\n // $('.form-remove-saved-search-none #row' + rowIndex).remove();\r\n } else {\r\n //for old alerts page\r\n $(evt.target).closest('tr').remove();\r\n }\r\n\r\n window.controlPopOuts.closePopOut($(form).closest('.pop-out'));\r\n $('.js-saved-search-success-alert').addClass('is-active').on('animationend', function (e) {\r\n console.log(\"save search component:6\");\r\n $(e.target).removeClass('is-active');\r\n }).addClass('a-fade-alert');\r\n\r\n window.lightboxController.closeLightboxModal();\r\n var event_data = {\r\n event_name: 'saved_search_alert_removal',\r\n saved_search_alert_title: $(form).data('analytics-title'),\r\n saved_search_alert_publication: $(form).data('analytics-publication')\r\n };\r\n analyticsEvent( $.extend(analytics_data, event_data));\r\n }\r\n });\r\n\r\n // search saved date preparation in UTC\r\n if ($('[name=\"SavedDate\"]').length > 0) {\r\n\t\t$('[name=\"SavedDate\"]').val(new Date().toUTCString());\r\n }\r\n});\r\n","if($('.scrollbar') && $('.scrollbar').length){\r\n\t$('.scrollbar').each(function() {\r\n\t\tvar $parent = $(this).parents(\".rolling-stream-wrapper, .table-responsive\").not('.hide-scroll'),\r\n\t\t\tcontainer,\r\n\t\t\tcontent,\r\n\t\t\tscroll;\r\n\r\n\t\tif (!$parent || $parent.length === 0) return true;\r\n\t\tcontainer = $parent.find(\".scrollbar-container\")[0];\r\n\t\tcontent = $parent.find(\".content, .wrap-merge\")[0];\r\n\t\tscroll = $parent.find(\".scrollbar\")[0];\r\n\r\n\t\tscroll.style.height = container.clientHeight * content.clientHeight / content.scrollHeight + \"px\";\r\n\t\t \tscroll.style.top = container.clientHeight * content.scrollTop / content.scrollHeight + \"px\";\r\n\t\t \t\r\n\t\tcontent.addEventListener('scroll', function(e) {\r\n\t\t scroll.style.height = container.clientHeight * content.clientHeight / content.scrollHeight + \"px\";\r\n\t\t scroll.style.top = container.clientHeight * content.scrollTop / content.scrollHeight + \"px\";\r\n\t\t});\r\n\t\t// var event = new Event('scroll');\r\n\r\n\t\twindow.addEventListener('resize', function(e){\r\n\t\t\tscroll.style.height = container.clientHeight * content.clientHeight / content.scrollHeight + \"px\";\r\n\t\t \tscroll.style.top = container.clientHeight * content.scrollTop / content.scrollHeight + \"px\";\r\n\t\t});\r\n\t\t// content.dispatchEvent(event);\r\n\r\n\t\tscroll.addEventListener('mousedown', function(start){\r\n\t\t start.preventDefault();\r\n\t\t var y = scroll.offsetTop;\r\n\t\t var onMove = function(end){\r\n\t\t\tvar delta = end.pageY - start.pageY;\r\n\t\t\tscroll.style.top = Math.min(container.clientHeight - scroll.clientHeight, Math.max(0, y + delta)) + 'px';\r\n\t\t\tcontent.scrollTop = (content.scrollHeight * scroll.offsetTop / container.clientHeight);\r\n\t\t };\r\n\t\t document.addEventListener('mousemove', onMove);\r\n\t\t document.addEventListener('mouseup', function(){\r\n\t\t\tdocument.removeEventListener('mousemove', onMove);\r\n\t\t });\r\n\t\t});\r\n\t});\r\n}\r\n\r\n//Horizontal Scroll Bar\r\nif($('#scrollbar-horizantal').length > 0) {\r\n\tvar container = $('#scrollbar-horizantal')[0],\r\n\t\tcontent = $('.wrap-merge')[0],\r\n\t\tscroll = $('#scrollbar')[0];\r\n\r\n\tscroll.style.width = ( $('.merge-acquistion').width() - $('.wrap-merge').width() ) + 'px';\r\n\r\n\t$(window).on('resize', function() {\r\n\t\tscroll.style.width = ( $('.merge-acquistion').width() - $('.wrap-merge').width() ) + 'px';\r\n\t})\r\n\t$('.wrap-merge').on('scroll', function() {\r\n\t\tscroll.style.left = (($(this).find('.table').offset().left * -1) + 14) + 'px';\r\n\t});\r\n}","\r\n\r\n$(function () {\r\n\r\n var searchterms = [];\r\n\r\n $(document).ready(function () {\r\n $(\"#SearchUrl\").css(\"display\", \"none\");\r\n });\r\n\r\n\r\n $('#btnsearch').click(function () {\r\n var searchUrl = $(\"#hidSearchUrl\").val();\r\n var taxonomy = $(\"#hidTaxonomyParam\").val();\r\n var queryParam = \"\";\r\n if (window.location.href.split('#?').length > 1) {\r\n queryParam = window.location.href.split('#?')[1];\r\n searchUrl = searchUrl.replace(taxonomy, \"\") + queryParam;\r\n }\r\n else {\r\n searchUrl = searchUrl + \"q=\";\r\n }\r\n window.location.href = searchUrl;\r\n });\r\n\r\n $('#btnclear').click(function () {\r\n window.location = window.location.href.split('#?')[0];\r\n });\r\n\r\n\r\n $(document).on('click', '.facets__section-list--sub li.ng-scope', function () {\r\n\r\n $(this).parents(\"ul\").siblings(\"label\").removeClass(\"active\");\r\n $(this).parents(\"ul\").parents(\"li\").removeClass(\"active-grid\");\r\n $(this).siblings(\"li\").removeClass(\"active\");\r\n\r\n $(this).parents(\".facets__repeat-wrapper\").siblings(\".facets__repeat-wrapper\").children(\".facets__section-list\").removeClass(\"active-grid\");\r\n $(this).parents(\".facets__repeat-wrapper\").siblings(\".facets__repeat-wrapper\").children(\".facets__section-list\").children(\"li\").removeClass(\"active-grid\");\r\n $(this).parents(\".facets__repeat-wrapper\").siblings(\".facets__repeat-wrapper\").children(\".facets__section-list\").children(\"li\").children(\"label\").removeClass(\"active\");\r\n $(this).parents(\".facets__repeat-wrapper\").siblings(\".facets__repeat-wrapper\").children(\".facets__section-list\").children(\"li\").children(\"ul\").removeClass(\"active-grid\");\r\n $(this).parents(\".facets__repeat-wrapper\").siblings(\".facets__repeat-wrapper\").children(\".facets__section-list\").children(\"li\").children(\"ul\").children(\"li\").removeClass(\"active\");\r\n\r\n var classactive = $(this).hasClass(\"active\");\r\n var itemkey = $(this).attr(\"rootAttr\");\r\n var itemvalue = $(this).attr(\"attrValue\")\r\n var isChild = $(this).attr(\"attrChild\");\r\n var child = false;\r\n if (isChild != null) {\r\n child = true;\r\n }\r\n\r\n if (classactive) {\r\n $(this).removeClass(\"active\");\r\n $(this).parents(\"ul\").removeClass(\"active-grid\");\r\n }\r\n else {\r\n $(this).addClass(\"active\");\r\n //BuildSearchList(itemkey, itemvalue, child);\r\n $(this).parents(\"ul\").addClass(\"active-grid\");\r\n }\r\n SetSearchButtonUrl();\r\n });\r\n\r\n $(document).on('click', '.facets__section-list li label.facet-label', function () {\r\n $(this).parents(\".facets__repeat-wrapper \").siblings(\".facets__repeat-wrapper\").children(\"ul\").children(\"li\").removeClass(\"active-grid\");\r\n $(this).parents(\".facets__repeat-wrapper\").siblings(\".facets__repeat-wrapper\").children(\".facets__section-list\").children(\"li\").children(\"ul\").children(\"li\").removeClass(\"active\");\r\n $(this).parents(\".facets__repeat-wrapper \").siblings(\".facets__repeat-wrapper\").removeClass(\"active-grid\");\r\n $(this).parents(\".facets__repeat-wrapper \").siblings(\".facets__repeat-wrapper\").children(\"li\").children(\"ul\").children(\"li\").removeClass(\"active\");\r\n\r\n $(this).siblings(\"li\").removeClass(\"active\");\r\n var classactive = $(this).hasClass(\"active\");\r\n $(this).siblings(\"ul\").children(\"li\").removeClass(\"active\");\r\n var itemkey = $(this).attr(\"rootAttr\");\r\n var itemvalue = $(this).attr(\"attrValue\");\r\n var isChild = $(this).attr(\"attrChild\");\r\n var child = false;\r\n if (isChild != null) {\r\n child = true;\r\n }\r\n\r\n if (classactive) {\r\n $(this).removeClass(\"active\");\r\n $(this).parents(\"li\").removeClass(\"active-grid\");\r\n }\r\n else {\r\n $(this).addClass(\"active\");\r\n //BuildSearchList(itemkey, itemvalue, child);\r\n $(this).parents(\"li\").addClass(\"active-grid\");\r\n }\r\n SetSearchButtonUrl();\r\n });\r\n\r\n function SetSearchButtonUrl() {\r\n $('#SearchUrl').empty();\r\n for (var j = 0; j < searchterms.length; j++) {\r\n if (searchterms[j].value.indexOf(';') > -1 && itemkey == searchterms[j].value.split(\";\")[0]) {\r\n $('#SearchUrl').append(searchterms[j].value);\r\n } else {\r\n $('#SearchUrl').append(\"&\" + searchterms[j].key + \"=\" + searchterms[j].value);\r\n }\r\n }\r\n }\r\n\r\n //Function for Get array of search item\r\n function BuildSearchList(itemkey, itemvalue, ischildkey) {\r\n if (searchterms.length != 0) {\r\n var keyfound = false;\r\n for (var i = 0; i < searchterms.length; i++) {\r\n\r\n if (searchterms[i].key != null && searchterms[i].key == itemkey) {\r\n searchterms[i] = { key: itemkey, value: itemvalue }\r\n keyfound = true;\r\n }\r\n }\r\n if (!keyfound) {\r\n if (ischildkey) {\r\n for (var j = 0; j < searchterms.length; j++) {\r\n if (searchterms[j].value.indexOf(';') > -1) {\r\n var newchildval = searchterms[j].value.split(\";\")[0];\r\n if (searchterms[j].key != null && newchildval.toLowerCase() == itemkey) {\r\n var newitemvalue = newchildval.toLowerCase() + ';' + itemvalue;\r\n searchterms[j] = { key: searchterms[j].key, value: newitemvalue }\r\n keyfound = true;\r\n }\r\n }\r\n else {\r\n\r\n if (searchterms[j].key != null && searchterms[j].value.replace(/[^A-Z0-9]/gi, '').toLowerCase() == itemkey) {\r\n var newitemvalue = searchterms[j].value + ';' + itemvalue;\r\n searchterms[j] = { key: searchterms[j].key, value: newitemvalue }\r\n keyfound = true;\r\n\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n searchterms.push({ key: itemkey, value: itemvalue });\r\n }\r\n }\r\n }\r\n else {\r\n searchterms.push({ key: itemkey, value: itemvalue });\r\n }\r\n }\r\n});","$(function () {\r\n var $items = $('.service-area-section'),\r\n $documentTitle = \"\",\r\n $documentId = \"\",\r\n $inPageListItem = '
  • {{documentTitle}}
  • ',\r\n $listHtml = \"\",\r\n halfNavHeight,\r\n $navContainer,\r\n $prevNavContainer,\r\n $linkContainer = $('.inpage-nav-container .link-container'),\r\n $theamOmdia = $('body').hasClass('theme-omdia'),\r\n $htmlElem = $('html');\r\n\r\n if ($items.length && $linkContainer.length) {\r\n $.each($items, function (index, item) {\r\n $documentTitle = $(this).attr('data-title');\r\n $documentId = $(this).attr('id');\r\n $listHtml += $inPageListItem.replace(/{{id}}/g, $documentId)\r\n .replace(/{{documentTitle}}/g, $documentTitle);\r\n });\r\n\r\n $linkContainer[0].innerHTML = $listHtml;\r\n $htmlElem.css('scroll-behavior', 'smooth');\r\n }\r\n\r\n $(\".featured-research-container, .asset_family_mod\").each(function () {\r\n var $anchor = $(this).find(\".click-utag\");\r\n $(this).on(\"click\", function (e) {\r\n e.stopPropagation();\r\n e.stopImmediatePropagation();\r\n if ($theamOmdia) {\r\n $anchor[0].click();\r\n }\r\n });\r\n });\r\n\r\n $items.find('.article-preview__byline').on('click', function (e) {\r\n e.stopPropagation();\r\n e.stopImmediatePropagation();\r\n });\r\n\r\n if ($theamOmdia) {\r\n // offset jump link nav so its always half way up its previous sibling (banner)\r\n $navContainer = $('.inpage-nav-container');\r\n if ($navContainer.length > 0) {\r\n $prevNavContainer = $navContainer.prev();\r\n halfNavHeight = $navContainer.height() / 2;\r\n $(window).on('resize', function() {\r\n halfNavHeight = $navContainer.height() / 2;\r\n $navContainer.css('margin-top', -halfNavHeight);\r\n $prevNavContainer.css('padding-bottom', halfNavHeight);\r\n });\r\n $(window).trigger('resize');\r\n }\r\n }\r\n});","\r\nfunction PrintCompanyGraph(chartData, divId, graphType){\r\n\tif(chartData !== undefined) {\r\n\t\tvar chart1 = new AmCharts.AmSerialChart();\r\n\r\n\t\tchart1.dataProvider = chartData;\r\n\t\tchart1.categoryField = \"year\";\r\n\r\n\t\tchart1.marginTop = 20;\r\n\t\tchart1.marginBottom = 25;\r\n\t\tchart1.marginLeft = 55;\r\n\t\t//chart1.marginLeft = 45;\r\n\t\tchart1.marginRight = 25;\r\n\t\tchart1.height = '100%';\r\n\t\tchart1.width = '100%';\r\n\t\t//chart1.fontSize = 8;\r\n\r\n\t chart1.startDuration = 0;\r\n\t chart1.startRadius = \"100%\";\r\n\r\n\t\tvar graph1 = new AmCharts.AmGraph();\r\n\t\tgraph1.valueField = \"value\";\r\n\r\n\t\tgraph1.lineColor = \"#\" + chartData[0].colour;\r\n\t\tgraph1.fillColor = \"#\" + chartData[0].colour;\r\n\t\tgraph1.balloonText = \"[[category]]: [[value]]\";\r\n\t\tgraph1.type = graphType;\r\n\t\tgraph1.lineAlpha = 0;\r\n\t\tgraph1.fillAlphas = 0.8;\r\n\t graph1.startDuration = 0;\r\n\t graph1.startRadius = \"100%\";\r\n\t\t//graph1.lineThickness = 2;\r\n\t\tchart1.addGraph(graph1);\r\n\r\n\t\tvar catAxis = chart1.categoryAxis;\r\n\r\n\t\tcatAxis.gridPosition = \"start\";\r\n\t\tcatAxis.autoGridCount = true;\r\n\r\n\t\t//catAxis.autoGridCount = false;\r\n\t\t//catAxis.gridCount = 5;\r\n\t\t//catAxis.labelFrequency = 1;\r\n\t\t\r\n\t\t// chart1.addTitle(\"Millions $\", 8);\r\n\r\n\t\tchart1.write(divId);\r\n\t} else {\r\n\t\tvar ErrorMessage = document.getElementById('hdnErrormessage').value;\r\n document.getElementById(divId).innerHTML = \r\n '
    '+\r\n ''+\r\n ''+\r\n ''+\r\n ''+\r\n '
    ';\r\n\t}\r\n}\r\n\r\n$(function() {\r\n\tif($('#graph-carousel') && $('#graph-carousel').length){\r\n\t\tif (window.matchMedia(\"(min-width: 670px)\").matches){\r\n\t\t\t$('.graphsPan').removeClass('owl-carousel');\r\n\t\t\t$('.loadChart').removeClass('item');\r\n\t\t}\r\n\t\r\n\t\t$('#graph-carousel').find('.owl-carousel').owlCarousel({\r\n\t\t\tloop:false,\r\n\t\t\tautoPlay: false,\r\n\t\t\tnav: true,\r\n\t\t\tnavContainer: '#customNav',\r\n\t\t\tdotsContainer: '#customDots',\r\n\t\t\tslideBy: 4,\r\n\t\t\tresponsive:{\r\n\t\t\t\t0:{\r\n\t\t\t\titems:4\r\n\t\t\t\t},\r\n\t\t\t\t667:{\r\n\t\t\t\titems:2,\r\n\t\t\t\tmargin:20,\r\n\t\t\t\t},\r\n\t\t\t\t320:{\r\n\t\t\t\t items:1\r\n\t\t\t\t},\r\n\t\t\t\t480:{\r\n\t\t\t\t items:1,\r\n\t\t\t\t margin:20,\r\n\t\t\t\t},\r\n\t\t\t\t1000:{\r\n\t\t\t\titems:8\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\tsetTimeout(function () {\r\n\t\t$(\"a[title='JavaScript charts']\").hide();\r\n\t\tvar allshow = $('rect[fill=\"#e5e5e5\"]');\r\n\t\tfor(var i=0; i 0) {\r\n tableauSetup($tableaus.first());\r\n }\r\n if ($tableausLegacy.length > 0) {\r\n tableauLegacySetup($tableausLegacy.first());\r\n }\r\n }\r\n\r\n if (!isThemeOmdia) return;\r\n\r\n tableauCheckTimerEvent = setInterval(tableauCheck, 200);\r\n tableauCheck();\r\n \r\n // stop checking for tableaus after X seconds\r\n setTimeout(function() {\r\n clearInterval(tableauCheckTimerEvent);\r\n }, CHECK_TIMER * 1000);\r\n});","(function () {\r\n \"use strict\";\r\n\r\n var $tabsHeader = $(\".tabs-header\"),\r\n $tabsContent = $(\".tabs-content\"),\r\n $tabsContentChildren = $tabsContent.children();\r\n\r\n if ($tabsHeader.length === 0 || $tabsContent.length === 0) return;\r\n\r\n // init tabs\r\n $tabsHeader.children().each(function () {\r\n $(this).on(\"click\", function () {\r\n var $tabsHeaderBtn = $(this),\r\n dataTargetTab,\r\n $targetTab;\r\n\r\n // early return if the active class already set\r\n if ($tabsHeaderBtn.hasClass(\"active\")) return;\r\n\r\n // get targettab from 'data-target-tab' of tab header\r\n dataTargetTab = $tabsHeaderBtn.data(\"target-tab\");\r\n $targetTab = $tabsContent.children(\"[data-tab-id=\" + dataTargetTab + \"]\");\r\n\r\n // toggle active class for tab header\r\n $tabsHeader.children(\".active\").removeClass(\"active\");\r\n $tabsHeaderBtn.addClass(\"active\");\r\n\r\n // toggle active class for tab content\r\n $tabsContentChildren.removeClass(\"active\");\r\n $targetTab.addClass(\"active\");\r\n });\r\n });\r\n})();\r\n","var INFORMA = window.INFORMA || {};\r\nINFORMA.videoMini = (function(window, $, namespace) {\r\n 'use strict';\r\n //variables\r\n var _videoMiniImgWrapper = $('.video-mini-container .video-img'),\r\n _videoMiniPlayBtnWrapper = $('.video-mini-container .play-icon'),\r\n _videoMiniPlayerModal = $('#videoMiniModal'),\r\n _videoMiniModalClose = $('.video-mini-close'),\r\n video,\r\n // methods\r\n init,\r\n _playVideoMiniImgWrapper,\r\n _playVideoMiniBtnWrapper,\r\n _videoMiniShowPlayIcon;\r\n\r\n _playVideoMiniBtnWrapper = function() {\r\n _videoMiniPlayBtnWrapper.click(function() {\r\n var videoImg = $(this).parent().find('img');\r\n if (videoImg.attr('data-videotype') === \"youtube\") {\r\n video = '';\r\n } else if (videoImg.attr('data-videotype') === \"vimeo\") {\r\n video = '';\r\n } else if (videoImg.attr('data-videotype') === \"wistia\") {\r\n video = '';\r\n }\r\n _videoMiniPlayerModal.find('.modal-body .video-mini-player').html(video)\r\n _videoMiniPlayerModal.modal('show');\r\n // $(this).parents('.video-mini-container').find('.play-icon').hide();\r\n // imgContainer.find(_videoMiniPlayBtnWrapper).hide();\r\n\r\n });\r\n }\r\n\r\n _playVideoMiniImgWrapper = function() {\r\n _videoMiniImgWrapper.click(function() {\r\n if ($(this).attr('data-videotype') === \"youtube\") {\r\n video = '';\r\n } else if ($(this).attr('data-videotype') === \"vimeo\") {\r\n video = '';\r\n } else if ($(this).attr('data-videotype') === \"wistia\") {\r\n video = '';\r\n }\r\n _videoMiniPlayerModal.find('.modal-body .video-mini-player').html(video)\r\n _videoMiniPlayerModal.modal('show');\r\n // _videoMiniPlayBtnWrapper.hide();\r\n });\r\n }\r\n _videoMiniShowPlayIcon = function() {\r\n _videoMiniModalClose.click(function() {\r\n _videoMiniPlayBtnWrapper.show();\r\n $(this).parents('.video-mini-modal').find('iframe').remove();\r\n });\r\n }\r\n\r\n init = function() {\r\n _playVideoMiniImgWrapper();\r\n _playVideoMiniBtnWrapper();\r\n _videoMiniShowPlayIcon();\r\n };\r\n\r\n return {\r\n init: init\r\n };\r\n}(this, Zepto, 'INFORMA'));\r\nZepto(INFORMA.videoMini.init());\r\n","// * * *\r\n// ANALYTICS CONTROLLER\r\n// For ease-of-use, better DRY, better prevention of JS errors when ads are blocked\r\n// * * *\r\n\r\nfunction trackBusinessEvt(dataObj) {\r\n if (window.IIRISTracker) {\r\n pushBusinessEvt(dataObj);\r\n }\r\n\r\n window.addEventListener(\"trackerLoaded\", function (evt) {\r\n if (window.IIRISTracker) {\r\n pushBusinessEvt(dataObj);\r\n }\r\n });\r\n}\r\n\r\nfunction pushBusinessEvt(dataObj) {\r\n var dnow = new Date().toISOString();\r\n var assetPathArr = dataObj.asset_url ? dataObj.asset_url.split(\"/\") : [\"\"];\r\n var filename = assetPathArr[assetPathArr.length - 1];\r\n var obj1 = {\r\n entityId: dataObj.asset_name || \"\",\r\n transactionId: create_UUID(),\r\n status: \"success\",\r\n type: \"download\",\r\n ts: dnow,\r\n };\r\n var obj2 = {\r\n id: dataObj.asset_name || \"\",\r\n name: filename,\r\n type: dataObj.asset_file_type || \"\",\r\n size: dataObj.asset_size || \"\",\r\n url: dataObj.asset_url || \"\",\r\n created: dataObj.asset_created || \"\",\r\n lastUpdated: dataObj.asset_modified || \"\",\r\n tags: dataObj.article_number || \"\",\r\n };\r\n // console.log(\"obj1\", obj1);\r\n // console.log(\"obj2\", obj2);\r\n window.IIRISTracker.trackBusinessEvt(obj1, obj2);\r\n}\r\n\r\nfunction create_UUID(){\r\n var dt = new Date().getTime();\r\n var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {\r\n var r = (dt + Math.random()*16)%16 | 0;\r\n dt = Math.floor(dt/16);\r\n return (c=='x' ? r :(r&0x3|0x8)).toString(16);\r\n });\r\n return uuid;\r\n}\r\n\r\nfunction analyticsEvent(dataObj) {\r\n if (typeof utag !== \"undefined\") {\r\n utag.link(dataObj);\r\n }\r\n if (dataObj.event_name === \"download_asset\") {\r\n trackBusinessEvt(dataObj);\r\n }\r\n};\r\n\r\nexport { analyticsEvent };\r\n","/* globals analytics_data */ \r\nimport { analyticsEvent } from './analytics-controller';\r\n\r\nfunction bookmarkController() {\r\n\r\n // * * *\r\n // Article bookmarking logic goes here\r\n // * * *\r\n this.toggle = function(e) {\r\n\r\n var bookmark = {\r\n elm: $(e)\r\n };\r\n\r\n // ID of the article we're bookmarking or un-bookmarking\r\n bookmark.id = bookmark.elm.closest('.js-bookmark-article').data('bookmark-id');\r\n\t\t\r\n\t\t//passing SalesforceID;\r\n\t\t//bookmark.salesforceId = bookmark.elm.closest('.js-bookmark-article').data('salesforce-id'); \r\n\t\tbookmark.salesforceId = (bookmark.elm.closest('.js-bookmark-article').attr('data-salesforce-id') !== undefined) ? bookmark.elm.closest('.js-bookmark-article').attr('data-salesforce-id') : ''; \r\n\t\t\r\n // Stash the bookmark label data now, swap label text later\r\n bookmark.label = {\r\n elm: bookmark.elm.find('.js-bookmark-label')\r\n };\r\n bookmark.label.bookmark = bookmark.label.elm.data('label-bookmark');\r\n bookmark.label.bookmarked = bookmark.label.elm.data('label-bookmarked');\r\n\r\n // Are we bookmarking an article, or un-bookmarking?\r\n // Used later to know what API endpoint to hit, and what DOM changes are required\r\n bookmark.isBookmarking = bookmark.elm.data('is-bookmarked') ? false : true;\r\n\r\n var apiEndpoint = bookmark.isBookmarking ?\r\n '/Account/api/SavedDocumentApi/SaveItem/' :\r\n '/Account/api/SavedDocumentApi/RemoveItem/';\r\n\r\n if(bookmark.id) {\r\n $.ajax({\r\n url: apiEndpoint,\r\n type: 'POST',\r\n data: {\r\n DocumentID: bookmark.id,\r\n SalesforceID: bookmark.salesforceId,\r\n SavedDate: new Date().toUTCString()\r\n },\r\n context: this,\r\n success: function (response) {\r\n if (response.success) {\r\n \r\n\t\t\t\t\t\tif(bookmark.isBookmarking) {\r\n\t\t\t\t\t\t\tanalyticsEvent( $.extend(analytics_data, $(bookmark.elm).data('analytics')) );\r\n\t\t\t\t\t\t\tif($('.personalisationhome') && $('.personalisationhome').length){\r\n\t\t\t\t\t\t\t\t$('[data-bookmark-id=\"'+bookmark.id+'\"]').attr('data-salesforce-id', response.salesforceid);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\t\tbookmark.elm.closest('.js-bookmark-article').attr('data-salesforce-id', response.salesforceid);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tif($('.personalisationhome') && $('.personalisationhome').length){\r\n\t\t\t\t\t\t\t\t$('[data-bookmark-id=\"'+bookmark.id+'\"]').removeAttr('data-salesforce-id');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\telse{\r\n\t\t\t\t\t\t\t\tbookmark.elm.closest('.js-bookmark-article').removeAttr('data-salesforce-id');\r\n\t\t\t\t\t\t\t}\r\n }\r\n\r\n this.flipIcon(bookmark);\r\n return true;\r\n }\r\n else {\r\n\t\t\t\t\t\tif(response.redirectUrl !== null && response.redirectUrl){\r\n\t\t\t\t\t\t\twindow.location.href = response.redirectUrl;\r\n\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t}\r\n }\r\n },\r\n error: function(response) {\r\n return false;\r\n }\r\n });\r\n\r\n }\r\n };\r\n\r\n this.flipIcon = function(bookmark) {\r\n\r\n\t\tif ($('.collection__bookmark') && $('.collection__bookmark').length) {\r\n\t\t\tif (bookmark.isBookmarking) {\r\n\t\t\t\tbookmark.elm.attr('data-is-bookmarked', true)\r\n\t\t\t} else {\r\n\t\t\t\tbookmark.elm.attr('data-is-bookmarked', false);\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tif($('.personalisationhome') && $('.personalisationhome').length){\r\n\t\t\tif(!bookmark.elm.hasClass('js-angular-bookmark')) {\r\n\t\t\t\t$('[data-bookmark-id=\"'+bookmark.id+'\"]').find('.article-bookmark').removeClass('is-visible');\r\n\t\t\t}\r\n\r\n\t\t\tif(bookmark.isBookmarking) {\r\n\t\t\t\tif(!bookmark.elm.hasClass('js-angular-bookmark')) {\r\n\t\t\t\t\t$('[data-bookmark-id=\"'+bookmark.id+'\"]').find('.article-bookmark__bookmarked').addClass('is-visible');\r\n\t\t\t\t\t$('[data-bookmark-id=\"'+bookmark.id+'\"]').data('is-bookmarked', true);\r\n\t\t\t\t}\r\n\t\t\t\t$('[data-bookmark-id=\"'+bookmark.id+'\"]').find('.js-bookmark-label').html(bookmark.label.bookmarked);\r\n\r\n\t\t\t} else {\r\n\t\t\t\tif(!bookmark.elm.hasClass('js-angular-bookmark')) {\r\n\t\t\t\t\t$('[data-bookmark-id=\"'+bookmark.id+'\"]').find('.article-bookmark').not('.article-bookmark__bookmarked').addClass('is-visible');\r\n\t\t\t\t\t$('[data-bookmark-id=\"'+bookmark.id+'\"]').data('is-bookmarked', null);\r\n\t\t\t\t}\r\n\t\t\t\t$('[data-bookmark-id=\"'+bookmark.id+'\"]').find('.js-bookmark-label').html(bookmark.label.bookmark);\r\n\r\n\t\t\t}\r\n\t\t}\r\n\t\telse{\r\n\t\t\tif(!bookmark.elm.hasClass('js-angular-bookmark')) {\r\n\t\t\t\t$(bookmark.elm).find('.article-bookmark').removeClass('is-visible');\r\n\t\t\t}\r\n\r\n\t\t\tif(bookmark.isBookmarking) {\r\n\t\t\t\tif(!bookmark.elm.hasClass('js-angular-bookmark')) {\r\n\t\t\t\t\t$(bookmark.elm).find('.article-bookmark__bookmarked').addClass('is-visible');\r\n\t\t\t\t\tbookmark.elm.data('is-bookmarked', true);\r\n\t\t\t\t}\r\n\t\t\t\tbookmark.label.elm.html(bookmark.label.bookmarked);\r\n\r\n\t\t\t} else {\r\n\t\t\t\tif(!bookmark.elm.hasClass('js-angular-bookmark')) {\r\n\t\t\t\t\t$(bookmark.elm).find('.article-bookmark').not('.article-bookmark__bookmarked').addClass('is-visible');\r\n\t\t\t\t\tbookmark.elm.data('is-bookmarked', null);\r\n\t\t\t\t}\r\n\t\t\t\tbookmark.label.elm.html(bookmark.label.bookmark);\r\n\r\n\t\t\t}\r\n\t\t}\r\n };\r\n}\r\n\r\nexport default bookmarkController;\r\n","/*\r\n\r\nopts.observe — Form element(s) to observe\r\nopts.beforeRequest — Function to execute before making Ajax request\r\nopts.successCallback — If Ajax request is successful, callback\r\nopts.failureCallback — If Ajax request fails / returns false, callback\r\n\r\n*/\r\n\r\nfunction formController(opts) {\r\n\r\n var showSuccessMessage = function (form) {\r\n var $form = $(form),\r\n $success = $form.find('.js-form-success');\r\n \r\n if ($form.closest('.section-audience-campaign').length > 0) {\r\n $success.siblings().hide();\r\n }\r\n $success.show();\r\n };\r\n\r\n var hideSuccessMessage = function (form) {\r\n var $form = $(form),\r\n $success = $form.find('.js-form-success');\r\n \r\n $success.hide();\r\n };\r\n\r\n var showError = function (form, error) {\r\n if ($(form).find(error)) {\r\n $(form).find(error).show();\r\n }\r\n };\r\n\r\n var hideErrors = function (form) {\r\n $(form).find('.js-form-error').hide();\r\n };\r\n\r\n var $theamOmdia = $('body').hasClass('theme-omdia');\r\n\r\n (function init() {\r\n\r\n var form = opts.observe;\r\n\r\n if (!form) return false;\r\n\r\n var formSubmit = $(form).find('button[type=submit]');\r\n\r\n $(formSubmit).on('click', function (event) {\r\n\r\n // Some forms will require user confirmation before action is taken\r\n // Default to true (confirmed), set to false later if confirmation is\r\n // required and user cancels action\r\n var actionConfirmed = true;\r\n\r\n var currentForm;\r\n if (event.target.form) {\r\n currentForm = event.target.form;\r\n } else if($(event.target).closest('form').length) {\r\n currentForm = $(event.target).closest('form');\r\n } else {\r\n currentForm = $(\"#empty-form\");\r\n }\r\n var captchaId = $(currentForm).find('.g-recaptcha:visible').attr('id');\r\n var sendRecaptcha = undefined;\r\n if (captchaId != undefined)\r\n sendRecaptcha = (captchaId === 'recaptchaAskTheAnalyst') ? recaptchaAskTheAnalyst : recaptchaEmail;\r\n // If In Future More Captcha will come in same page\r\n\t\t /*\r\n var sendRecaptcha;\r\n if(captchaId === 'recaptchaAskTheAnalyst'){\r\n sendRecaptcha = recaptchaAskTheAnalyst;\r\n }\r\n else if(captchaId === 'recaptchaEmail'){ \r\n sendRecaptcha recaptchaEmail;\r\n }\r\n else{\r\n sendRecaptcha otherIdval; \r\n }\r\n */\r\n\r\n if ($(currentForm).data('force-confirm')) {\r\n actionConfirmed = window.confirm($(currentForm).data('force-confirm'));\r\n }\r\n\r\n if (actionConfirmed) {\r\n\r\n event.preventDefault(); // Prevent form submitting\r\n\r\n hideErrors(currentForm); // Reset any visible errors\r\n\r\n jQuery(\".pop-out__input.pop-out__textarea\").removeClass('error');\r\n\r\n if (opts.beforeRequest) {\r\n opts.beforeRequest(currentForm);\r\n }\r\n\r\n // Prevent user from re-submitting form, unless explicitly allowed\r\n if (!$(currentForm).data('prevent-disabling')) {\r\n $(formSubmit).attr('disabled', 'disabled');\r\n }\r\n\r\n // resend activation link for C+D vertical\r\n if ($(\"body\").hasClass(\"theme-chemistanddruggist\")) {\r\n if ($(this).hasClass('resendLinkBtn')) {\r\n $(\"#resendlink\").val(true);\r\n } else {\r\n $(\"#resendlink\").val(false);\r\n }\r\n }\r\n\r\n var inputData = {};\r\n var IsValid = true;//Skip Validation if the form is not Update Contact Informatin Form\r\n if ($(currentForm).hasClass('form-update-account-contact')) {\r\n IsValid = ValidateContactInforForm();\r\n }\r\n if (IsValid) {\r\n $(currentForm).find('input, select, textarea').each(function () {\r\n\r\n var value = '';\r\n var field = $(this);\r\n\r\n if (field.data('checkbox-type') === 'boolean') {\r\n value = this.checked;\r\n\r\n if (field.data('checkbox-boolean-type') === 'reverse') {\r\n value = !value;\r\n }\r\n } else if (field.data('checkbox-type') === 'value') {\r\n value = this.checked ? field.val() : undefined;\r\n } else {\r\n value = field.val();\r\n }\r\n\r\n if (value !== undefined) {\r\n if (field.attr('name')) {\r\n if (inputData[field.attr('name')] === undefined) {\r\n inputData[field.attr('name')] = value;\r\n }\r\n else if ($.isArray(inputData[field.attr('name')])) {\r\n inputData[field.attr('name')].push(value);\r\n }\r\n else {\r\n inputData[field.attr('name')] = [inputData[field.attr('name')]];\r\n inputData[field.attr('name')].push(value);\r\n }\r\n }\r\n }\r\n });\r\n\r\n\r\n //// 25/10/2016 Commented captcha code to fix the js console error. Raju/Sonia will provide fix of this.\r\n // add recaptcha if it exists in the form\r\n var captchaResponse = undefined;\r\n // add recaptcha if it exists in the form\r\n if (sendRecaptcha !== undefined) {\r\n captchaResponse = (grecaptcha == null) ? undefined : grecaptcha.getResponse(sendRecaptcha);\r\n }\r\n\r\n if (captchaResponse !== undefined)\r\n inputData['RecaptchaResponse'] = captchaResponse;\r\n\r\n if (!$(currentForm).data('on-submit')) {\r\n console.warn('No submit link for form');\r\n }\r\n try {\r\n for (var index in inputData) {\r\n if (inputData[index] == \"- Select One -\") {\r\n inputData[index] = \"\";\r\n }\r\n }\r\n } catch (ex) { console.log(ex); }\r\n // add spinner for #form-product-preferences-survey\r\n if ($(currentForm).attr('id') == \"form-product-preferences-survey\") {\r\n var surveyId = $(currentForm).find('input').val();\r\n if (surveyId == \"\" || surveyId == null) {\r\n $('.pro-pref-error').show();\r\n return false;\r\n }\r\n window.INFORMA.Spinner.Show($('body'));\r\n }\r\n $.ajax({\r\n url: $(currentForm).data('on-submit'),\r\n type: $(currentForm).data('submit-type') || 'POST',\r\n data: inputData,\r\n context: this,\r\n beforeSend: function () {\r\n hideSuccessMessage(currentForm);\r\n },\r\n success: function (response) {\r\n if (response.success) {\r\n\r\n showSuccessMessage(currentForm);\r\n\r\n // Passes the form response through with the \"context\"\r\n // successCallback is ripe for refactoring, improving parameters\r\n this.response = response;\r\n\r\n // //Specific to Sign In Form - Vertical Login\r\n // if($(currentForm).hasClass('js-sign-in-submit') || $(currentForm).hasClass(\"form-registration\")) {\r\n // \t$('#hiddenforms_login form').each(function() {\r\n // \t\t$(this).find('input[type=\"text\"]').val(inputData[\"username\"]);\r\n // \t\t$(this)[0].submit();\r\n // \t});\r\n // }\r\n // //Specific to Sign In Form - Vertical Login\r\n if (opts.successCallback) {\r\n opts.successCallback(currentForm, this, event);\r\n }\r\n\r\n if ($(form).data('on-success')) {\r\n if ($(currentForm).hasClass('form-registration-optins') || $(currentForm).hasClass('form-registration-optins-v2')) {\r\n var today = new Date();\r\n var expiresDate = new Date(today.getFullYear(), today.getMonth() + 2, today.getDate()).toUTCString();\r\n var cookie = document.cookie;\r\n var cookieArray = cookie.split(';');\r\n var url = $(currentForm).data('on-success');\r\n cookieArray.forEach(function (item) {\r\n item = item.trim();\r\n if (item.indexOf('isFreeTrial=') >= 0) {\r\n var oldValue = item.split('=')[1];\r\n if (oldValue.length > 0) {\r\n if (oldValue.indexOf('|') >= 0) {\r\n document.cookie = 'isFreeTrial=' + oldValue.substring(0, oldValue.indexOf('|') + 1) + url + ';path=/;secure;expires=' + expiresDate + ';domain=' + window.location.hostname + ';';\r\n }\r\n else {\r\n document.cookie = 'isFreeTrial=' + oldValue + '|' + url + ';path=/;secure;expires=' + expiresDate + ';domain=' + window.location.hostname + ';';\r\n }\r\n }\r\n }\r\n });\r\n }\r\n window.location.href = $(currentForm).data('on-success');\r\n }\r\n if (response.redirectRequired !== undefined && response.redirectRequired) {\r\n window.location.href = response.redirectUrl;\r\n }\r\n if (!$(currentForm).data('on-success') || $(currentForm).data('on-success').length <= 0) {\r\n if (getFormFreeTrialParameterByName(\"type\", window.location.href) == \"trial\" || getFormFreeTrialParameterByName(\"istrial\", window.location.href) == \"true\") {\r\n if ($('#Phone').val() != '' && $('#Phone').val() != 'undefined' && $('#JobTitle').val() != 'undefined' && $('#JobTitle').val() != '') {\r\n var returnUrl = getFormFreeTrialParameterByName(\"returnurl\", window.location.href);\r\n window.location.href = \"/trialprocessing?returnUrl=\" + returnUrl + \"\";\r\n }\r\n }\r\n }\r\n }\r\n else {\r\n if (response.redirectUrl !== null && response.redirectUrl) {\r\n window.location.href = response.redirectUrl;\r\n return false;\r\n }\r\n if (response.reasons && response.reasons.length > 0) {\r\n for (var reason in response.reasons) {\r\n showError(form, '.js-form-error-' + response.reasons[reason]);\r\n }\r\n } else if ( $theamOmdia && $(currentForm).hasClass('form-ask-the-analyst') && jQuery.trim($(\".pop-out__input.pop-out__textarea\").val()) === \"\") {\r\n showError(currentForm, '.ask-an-analyst-error');\r\n $('.pop-out__input.pop-out__textarea').addClass('error');\r\n return false;\r\n } else {\r\n showError(currentForm, '.js-form-error-general');\r\n }\r\n\r\n if (opts.failureCallback) {\r\n opts.failureCallback(currentForm, response);\r\n }\r\n // add close spinner #form-product-preferences-survey\r\n if ($(currentForm).attr('id') == \"form-product-preferences-survey\") {\r\n window.INFORMA.Spinner.Hide();\r\n $('.pro-pref-error').show();\r\n return false;\r\n }\r\n }\r\n\r\n // add close spinner #form-product-preferences-survey\r\n if ($(currentForm).attr('id') == \"form-product-preferences-survey\") {\r\n window.location.reload();\r\n window.INFORMA.Spinner.Hide();\r\n }\r\n },\r\n error: function (response) {\r\n // close spinner #form-product-preferences-survey\r\n if ($(currentForm).attr('id') == \"form-product-preferences-survey\") {\r\n window.INFORMA.Spinner.Hide();\r\n }\r\n showError(currentForm, '.js-form-error-general');\r\n\r\n if (opts.failureCallback) {\r\n opts.failureCallback(currentForm, response);\r\n }\r\n },\r\n complete: function () {\r\n if (!$(currentForm).data('prevent-disabling')) {\r\n setTimeout((function () {\r\n $(formSubmit).removeAttr('disabled');\r\n }), 250);\r\n }\r\n\r\n // reset captcha if available\r\n grecaptcha.reset();\r\n }\r\n\r\n });\r\n } else {\r\n //Enable Submit button if form data is not valid. It will be applicable only for form with class form-update-account-contact because for all other forms IsValid variable value is always true.\r\n if (!$(currentForm).data('prevent-disabling')) {\r\n $(formSubmit).removeAttr('disabled');\r\n }\r\n }\r\n }\r\n return false;\r\n\r\n });\r\n })();\r\n}\r\nfunction getFormFreeTrialParameterByName(name, url) {\r\n if (!url) url = window.location.href;\r\n name = name.replace(/[\\[\\]]/g, \"\\\\$&\");\r\n var regex = new RegExp(\"[?&]\" + name + \"(=([^&#]*)|&|#|$)\", 'i'),\r\n results = regex.exec(url);\r\n if (!results) return null;\r\n if (!results[2]) return '';\r\n return decodeURIComponent(results[2].replace(/\\+/g, \" \"));\r\n}\r\nfunction ValidateContactInforForm() {\r\n var errorHtml = $('#errorMessage').html();\r\n var errors = 0;\r\n var result = false;\r\n var scrollTo = '';\r\n $('.required').each(function () {\r\n if ($(this).val() == '' || $(this).text().indexOf(\"- Select One -\") >= 0) {\r\n $(this).parent().append(errorHtml);\r\n errors++;\r\n if (errors == 1) {\r\n scrollTo = $(this);\r\n }\r\n }\r\n else {\r\n $(this).parent().find('.js-form-error').remove();\r\n }\r\n\r\n });\r\n if (errors > 0) {\r\n window.scrollTo(0, scrollTo.offset().top - 30);\r\n result = false;\r\n }\r\n else {\r\n result = true;\r\n }\r\n return result;\r\n}\r\n\r\nexport default formController;\r\n","/* global angular */\r\nfunction lightboxModalController() {\r\n\r\n this.closeLightboxModal = function() {\r\n $('body').removeClass('lightboxed');\r\n $('.lightbox-modal__backdrop').remove();\r\n $('.lightbox-modal').hide();\r\n };\r\n\r\n var closeLightboxModal = this.closeLightboxModal;\r\n\r\n this.showLightbox = function(lightbox) {\r\n // Freeze the page and add the dark overlay\r\n $('body')\r\n .addClass('lightboxed')\r\n .append('
    ');\r\n\r\n // Find the specific modal for this trigger, and the associated form\r\n var targetModal = $(lightbox).data('lightbox-modal');\r\n if($('#empty-form').length) {\r\n var successForm = ($('#empty-form'));\r\n } else {\r\n var successForm =$(lightbox).closest('.' + $(lightbox).data('lightbox-modal-success-target'));\r\n }\r\n \r\n\r\n // Show the modal, add an on-click listener for the \"success\" button\r\n $('.' + targetModal)\r\n .show()\r\n .find('.js-lightbox-modal-submit')\r\n // .one, not .on, to prevent stacking event listners\r\n .one('click', function(e) {\r\n if ($(lightbox).data('alertid') != null && $(lightbox).data('title') != null) {\r\n $('#empty-form input[name =\"Id\"]').val($(lightbox).data('alertid'));\r\n $('#empty-form input[name =\"Title\"]').val($(lightbox).data('title'));\r\n $('#empty-form input[name =\"rowId\"]').val($(lightbox).data('index'));\r\n }\r\n\r\n successForm.find('button[type=submit]').click();\r\n closeLightboxModal();\r\n });\r\n\r\n return false;\r\n };\r\n\r\n this.showLightboxnone = function (lightbox) {\r\n // Freeze the page and add the dark overlay\r\n $('body').addClass('lightboxed').append('
    ');\r\n\r\n // Find the specific modal for this trigger, and the associated form\r\n var targetModal = $(lightbox).data('lightbox-modal');\r\n \r\n var targetModalNone = $(lightbox).data('lightbox-modal-none');\r\n \r\n if ($('#empty-form-none').length) {\r\n var successForm = $('#empty-form-none');\r\n } else {\r\n var successForm = $(lightbox).closest('.' + $(lightbox).data('lightbox-modal-success-target-none'));\r\n }\r\n \r\n\r\n // Show the modal, add an on-click listener for the \"success\" button\r\n $('.' + targetModalNone).show().find('.js-lightbox-modal-submit')\r\n // .one, not .on, to prevent stacking event listners\r\n .one('click', function (e) {\r\n \r\n if ($(lightbox).data('alertid') != null && $(lightbox).data('title') != null) {\r\n $('#empty-form-none input[name =\"Id\"]').val($(lightbox).data('alertid'));\r\n $('#empty-form-none input[name =\"Title\"]').val($(lightbox).data('title'));\r\n $('#empty-form-none input[name =\"rowId\"]').val($(lightbox).data('index'));\r\n \r\n }\r\n\r\n successForm.find('button[type=submit]').click();\r\n closeLightboxModal();\r\n });\r\n\r\n return false;\r\n };\r\n\r\n var showLightbox = this.showLightbox;\r\n var showLightboxnone = this.showLightboxnone;\r\n\r\n this.buildLightboxes = function() {\r\n $('.js-lightbox-modal-trigger').on('click', function(e) {\r\n\r\n if (e.target !== this) {\r\n this.click();\r\n return;\r\n }\r\n\r\n showLightbox(e.target);\r\n\r\n // Don't submit any forms for real.\r\n return false;\r\n });\r\n $('.js-lightbox-modal-trigger-none').on('click', function (e) {\r\n\r\n if (e.target !== this) {\r\n this.click();\r\n return;\r\n }\r\n\r\n showLightboxnone(e.target);\r\n\r\n // Don't submit any forms for real.\r\n return false;\r\n });\r\n };\r\n\r\n // When the Dismiss button is clicked...\r\n $('.js-close-lightbox-modal').on('click', function(e) {\r\n closeLightboxModal();\r\n });\r\n\r\n this.buildLightboxes();\r\n\r\n\tthis.clearLightboxes = function() {\r\n\t\t$('.js-lightbox-modal-trigger').off();\r\n\t};\r\n\r\n}\r\n\r\nexport default lightboxModalController;\r\n","function popOutController(triggerElm) {\r\n\r\n\t// Toggle pop-out when trigger is clicked\r\n if(triggerElm) {\r\n $(triggerElm).off();\r\n\t\t$(triggerElm).on('click', (event) => {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tthis.togglePopOut($(event.target));\r\n\t\t});\r\n\t}\r\n\r\n\t// Reposition pop-out when browser window resizes\r\n\t$(window).on('resize', (event) => {\r\n\t\tthis.updatePopOut();\r\n\t});\r\n\r\n\t$(document).on('keyup', '.pop-out__input.pop-out__textarea', function() {\r\n\t\tvar $this = $(this);\r\n\t\t$this.removeClass('error')\r\n\t\tif($.trim($this.val()) !== \"\") {\r\n\t\t\t$('.button--filled.click-utag').removeAttr('disabled');\r\n\t\t} else {\r\n\t\t\t$('.button--filled.click-utag').attr('disabled', 'disabled');\r\n\t\t}\r\n\t})\r\n\r\n\t// Simulate CSS `rem` (16px)\r\n\t// TODO: change this from `rem` to tab padding value for clarity\r\n\tvar rem = 16;\r\n\r\n\t// Keep track of the active pop-out element\r\n\t// This is an object instead of a var because there might be more \"global\"\r\n\t// state attributes to track in the future.\r\n\tvar state = {\r\n\t\tactiveElm: null,\r\n\t\tcustomized: {\r\n\r\n\t\t}\r\n\t};\r\n\r\n\t// PUBLIC\r\n\t// Get the current pop-out element, if there is one.\r\n\t// Lets other JS know what's up with the pop-out.\r\n\tthis.getPopOutElement = function() {\r\n\t\treturn state.activeElm;\r\n\t};\r\n\r\n\t// PUBLIC\r\n\t// Closes the pop-out.\r\n\tthis.closePopOuts = function() {\r\n\t\t$(\".pop-out\").removeClass(\"is-active\").css(\"z-index\", \"\");\r\n\t\t$(\".js-pop-out-trigger\").css(\"z-index\", \"\").removeClass(\"active\");\r\n\t\tstate.activeElm = null;\r\n\t}\r\n\tthis.closePopOut = function(elm) {\r\n\t\tvar jsPopoutClassPrefix;\r\n\t\tvar jsPopoutClass;\r\n\t\tvar targetDataPopoutType;\r\n\t\tif (!elm) {\r\n\t\t\tthis.closePopOuts();\r\n\t\t} else {\r\n\t\t\tif (!$(elm).hasClass(\"is-active\")) return;\r\n\t\t\tjsPopoutClassPrefix = \"js-pop-out__\";\r\n\t\t\tjsPopoutClass = $(elm)\r\n\t\t\t\t.attr(\"class\")\r\n\t\t\t\t.split(\" \")\r\n\t\t\t\t.find(function (cls) {\r\n\t\t\t\t\treturn cls.indexOf(jsPopoutClassPrefix) > -1;\r\n\t\t\t\t});\r\n\t\t\tif (!jsPopoutClass) return;\r\n\t\t\ttargetDataPopoutType = jsPopoutClass.substring(jsPopoutClassPrefix.length);\r\n\t\t\tif (!targetDataPopoutType) return;\r\n\t\t\t$(elm).removeClass(\"is-active\").css(\"z-index\", \"\");\r\n\t\t\tif (targetDataPopoutType === \"myViewregister\")\r\n\t\t\t\ttargetDataPopoutType += \", .sign-in\";\r\n\t\t\t$(\".js-pop-out-trigger\")\r\n\t\t\t\t.filter(\".\" + targetDataPopoutType)\r\n\t\t\t\t.css(\"z-index\", \"\")\r\n\t\t\t\t.removeClass(\"active\");\r\n\t\t\tstate.activeElm = null;\r\n\t\t}\r\n\t};\r\n\r\n\t// PUBLIC\r\n\t// Toggles the pop-out\r\n\tthis.togglePopOut = function(e) {\r\n\t\t// Check if clicked element is the toggle itself\r\n\t\t// Otherwise, climb up DOM tree and find it\r\n\t\tvar poParent = e.hasClass('js-pop-out-trigger') ? e : e.closest('.js-pop-out-trigger');\r\n\r\n\t\t/* This is a little hacky, but if a user is trying to bookmark an article\r\n\t\t\tbut needs to sign in first, we need to capture and pass the article\r\n\t\t\tID as a URL param after a successful sign in attempt. That allows\r\n\t\t\tus to automatically bookmark the article on page refresh. */\r\n\r\n\t\tif(poParent.data('pop-out-type') === 'sign-in' && poParent.data('bookmark-id')) {\r\n\t\t\t$('.sign-in__submit').data('pass-article-id', poParent.data('bookmark-id'));\r\n\t\t} else {\r\n\t\t\tpoParent.data('bookmark-id', null);\r\n\t\t}\r\n\r\n\t\t// Close all pop-outs\r\n\t\tthis.closePopOuts();\r\n\r\n\t\tif(poParent[0] !== state.activeElm) {\r\n\t\t\t// Update the controller state and open it\r\n\t\t\tstate.activeElm = poParent[0];\r\n\t\t\tupdatePosition();\r\n\t\t} else {\r\n\t\t\tstate.activeElm = null;\r\n\t\t}\r\n\r\n\t};\r\n\r\n\r\n\t// PUBLIC\r\n\t// Stores pop-out customization details for reference when rendering\r\n\tthis.customize = function(obj) {\r\n\t\tstate.customized[obj.id] = obj;\r\n\t};\r\n\r\n\r\n\t// PRIVATE\r\n\t// Update the visibility and position of the pop-out box and tab.\r\n\tvar updatePosition = function() {\r\n\r\n\t\tvar trgr = { // The pop-out trigger\r\n\t\t\te: $(state.activeElm)\r\n\t\t};\r\n\t\t// Get trigger height, width, offsetTop, offsetWidth\r\n\t\ttrgr.offset = trgr.e.offset();\r\n\r\n\t\ttrgr.hasStyles = state.customized[trgr.e.data('pop-out-id')];\t\t\r\n\t\t// Determine which pop-out template to use\r\n\t\t// TODO: Make this user-configurable\r\n\t\t// Let users assign a name to a template class\r\n\t\tvar popOut;\r\n\t\tswitch (trgr.e.data('pop-out-type')) {\r\n\t\t\t// SIGN IN\r\n\t\t\t// (Global sign-in, bookmarking when not signed in)\r\n\t\t\tcase 'sign-in':\r\n\t\t\t\tpopOut = $('.js-pop-out__sign-in');\r\n\t\t\t\tbreak;\r\n\t\t\t// Main Sign In button on top right\r\n\t\t case 'sign-in-header':\r\n\t\t popOut = $('.js-pop-out__sign-in-header');\r\n\t\t break;\r\n\t\t\t// EMAIL ARTICLE\r\n\t\t\tcase 'email-article':\r\n\t\t\t\tpopOut = $('.js-pop-out__email-article');\r\n\t\t\t\tbreak;\r\n\t\t\t// EMAIL ARTICLE\r\n\t\t\tcase 'email-search':\r\n\t\t\t\tpopOut = $('.js-pop-out__email-search');\r\n\t\t\t\tbreak;\r\n\t\t\t// EMAIL AUTHOR\r\n\t\t\tcase 'email-author':\r\n\t\t\t\tpopOut = $('.js-pop-out__email-author');\r\n\t\t\t\tbreak;\r\n\t\t // EMAIL COMPANy\r\n\t\t case 'email-company':\r\n\t\t popOut = $('.js-pop-out__email-company');\r\n\t\t break;\r\n\t\t // EMAIL DEAL\r\n\t\t case 'email-deal':\r\n\t\t popOut = $('.js-pop-out__email-deal');\r\n\t\t break;\r\n\t\t\t// GLOBAL HEADER REGISTRATION\r\n\t\t\tcase 'register':\r\n\t\t\t\tpopOut = $('.js-pop-out__register');\r\n\t\t\t\tbreak;\r\n\t\t\t// GLOBAL HEADER REGISTRATION\r\n\t\t\tcase 'myViewregister':\r\n\t\t\t\t// popOut = $('.js-pop-out__myViewregister');\r\n\t\t\t\tpopOut = $('.js-pop-out__sign-in');\r\n\t\t\t\tbreak;\t\r\n\t\t\t// SEARCH PAGE - SAVE SEARCH\r\n\t\t\tcase 'save-search':\r\n\t\t\t\tpopOut = $('.js-pop-out__save-search');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'ask-the-analyst':\r\n\t\t\t\tpopOut = $('.js-pop-out__ask-the-analyst');\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'omdia-recommends':\r\n\t\t\t\tpopOut = $('.js-pop-out__omdia-recommends');\r\n\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\tconsole.warn('Attempting to fire unidentified pop-out.');\r\n\t\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tvar $theamOmdia = $('body').hasClass('theme-omdia');\r\n\t\t// Make pop-out visible so we can query for its width\r\n\t\tpopOut.addClass('is-active');\r\n\r\n\t\tif(popOut.hasClass('js-pop-out__ask-the-analyst') && popOut.hasClass('is-active') && $theamOmdia) {\r\n\t\t\t$('.analyst-overlay').addClass('active');\r\n\t\t\t$('.pop-out__input.pop-out__textarea').focus();\r\n\t\t\t$('.pop-out__input.pop-out__textarea').val('');\r\n\t\t}\r\n\r\n\t\t// Check if browser is less than or equal to `small` CSS breakpoint\r\n\r\n\t\t// var isNarrow = $(window).width() <= 480;\r\n\t\t// var isTablet = $(window).width() <= 800;\r\n\r\n\t\t// ISW-3106: adjusted tablet to be the same as mobile, i.e if browser is 'medium'\r\n\t\tvar isNarrow = $('body').width() <= 1024;\r\n\t\tvar isTablet = false;\r\n\r\n\t\t// Set separate vertical/horizontal padding on mobile vs. desktop\r\n\t\tvar vPad = isNarrow ? 13.5 : rem;\r\n\t\tvar hPad = isNarrow ? 9 : rem;\r\n\r\n\t\t// Store output values after calculations, etc.\r\n\t\tvar res = {\r\n\t\t\toffset: {\r\n\t\t\t\tbox: {},\r\n\t\t\t\ttab: {}\r\n\t\t\t},\r\n\t\t\tcss: {\r\n\t\t\t\tbox: {},\r\n\t\t\t\ttab: {}\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// Box offset top is offsetTop of trigger, plus trigger height,\r\n\t\t// plus padding, minus 1px for border positioning\r\n\t\tif(popOut.css('position') === 'fixed') {\r\n\t\t\ttrgr.offset.top = 0;\r\n\t\t}\r\n\t\tres.offset.box.top = Math.floor(trgr.offset.top + trgr.offset.height + (vPad - 1));\r\n\r\n\t\t// Check if pop-out will bleed off-screen, causing horizontal scroll bar\r\n\t\t// If it will, force right-align to keep it on-screen\r\n\t\tif(popOut.width() + trgr.offset.left > $(window).width()) {\r\n\t\t\ttrgr.e.data('pop-out-align', 'right');\r\n\t\t}\r\n\t\t\r\n\t\tif(popOut.width() + trgr.offset.left < $('body').width()/2) {\r\n\t\t\ttrgr.e.data('pop-out-align', 'left');\r\n\t\t}\r\n\r\n\t\t// Check for pop-out alignment\r\n\t\tif(trgr.e.data('pop-out-align') === 'right' && !isNarrow) {\r\n\t\t\t// Pop-out box is flush right with trigger element\r\n\t\t\t// To flush right, first add trigger offset plus trigger width\r\n\t\t\t// This positions left edge of pop-out with right edge of trigger\r\n\t\t\t// Then subtract pop-out width and padding to align both right edges\r\n\t\t\t// (Flush-left automatically if narrow window)\r\n\t\t\tres.offset.box.left = isNarrow ? 0 : Math.floor(trgr.offset.left + trgr.offset.width - popOut.offset().width + (hPad - 1));\r\n\t\t\t// Tab left margin can be ignored, right margin 0 does what we need\r\n\t\t\tres.offset.tab.left = 'auto';\r\n\t\t} else if(trgr.e.data('pop-out-align') === 'left' && !isNarrow) {\r\n\t\t\tres.offset.box.left = isNarrow ? 0 : Math.floor(trgr.offset.left - hPad);\r\n\t\t\tres.offset.tab.left = isNarrow ? Math.floor(trgr.offset.left - hPad) : Math.floor(- popOut.width() + popOut.find('.pop-out__tab').width());\r\n\t\t} else {\r\n\t\t\t// Pop-out box is centered with trigger element\r\n\t\t\t// Box offset left is determined by subtracting the trigger width\r\n\t\t\t// from the pop-out width, dividing by 2 to find the halfway point,\r\n\t\t\t// then subtracting that from the trigger left offset.\r\n\t\t\t// (Flush-left automatically if narrow window)\r\n\t\t\tres.offset.box.left = isNarrow ? 0 : Math.floor(trgr.offset.left - ((popOut.offset().width - trgr.offset.width) / 2));\r\n\t\t\t// Pop-out tab is aligned with trigger left edge, adjusted for padding\r\n\t\t\t// Tab width is set to trigger width below, so this centers the tab\r\n\t\t\tres.offset.tab.left = isNarrow ? Math.floor(trgr.offset.left - hPad) : 0;\r\n\t\t}\r\n\r\n\t\t// Blow up z-index to appear above other triggers\r\n\t\ttrgr.e.css('z-index', '99999').addClass('active');\r\n\r\n\t\t// Box z-index set to 2 lower than trigger element\r\n\t\t// Box should render below trigger, under tab, above everything else\r\n\t\tres.css.box.zIndex = trgr.e.css('z-index') + 2;\r\n\r\n\t\t// Tab height equals trigger height plus padding (1rem top and bottom)\r\n\r\n\t\t// Check for custom tab styles\r\n\t\tvar tS = trgr.hasStyles ? trgr.hasStyles.tabStyles : undefined;\r\n\r\n\t\t// If there are custom styles, and browser is desktop-width...\r\n\t\tif(tS && !isNarrow && !isTablet) {\r\n\r\n\t\t\tres.css.tab.height = tS.deskHeight || trgr.offset.height + (vPad * 2) + \"px\";\r\n\r\n\t\t\ttS.deskHeight\r\n\t\t\t\t? res.offset.box.top += tS.deskHeight - trgr.offset.height - (vPad * 2)\r\n\t\t\t\t: null;\r\n\r\n\t\t\tres.css.tab.top = tS.deskHeight\r\n\t\t\t\t? '-' + (tS.deskHeight - 1) + 'px'\r\n\t\t\t\t: '-' + (trgr.offset.height + (vPad * 2) - 1) + 'px';\r\n\r\n\t\t// If there are custom styles, and browser is tablet-width...\r\n\t\t} else if(tS && !isNarrow && isTablet) {\r\n\r\n\t\t\tres.css.tab.height = tS.tabletHeight || trgr.offset.height + (vPad * 2) + \"px\";\r\n\r\n\t\t\ttS.tabletHeight\r\n\t\t\t\t? res.offset.box.top += tS.tabletHeight - trgr.offset.height - (vPad * 2)\r\n\t\t\t\t: null;\r\n\r\n\t\t\tres.css.tab.top = tS.tabletHeight\r\n\t\t\t\t? '-' + (tS.tabletHeight - 1) + 'px'\r\n\t\t\t\t: '-' + (trgr.offset.height + (vPad * 2) - 1) + 'px';\r\n\r\n\t\t// If there are custom styles, and browser is phone-width...\r\n\t\t} else if(tS && isNarrow) {\r\n\r\n\t\t\tres.css.tab.height = tS.phoneHeight || trgr.offset.height + (vPad * 2) + \"px\";\r\n\r\n\t\t\ttS.phoneHeight\r\n\t\t\t\t? res.offset.box.top += tS.phoneHeight - trgr.offset.height - (vPad * 2)\r\n\t\t\t\t: null;\r\n\r\n\t\t\tres.css.tab.top = tS.phoneHeight\r\n\t\t\t\t? '-' + (tS.phoneHeight - 1) + 'px'\r\n\t\t\t\t: '-' + (trgr.offset.height + (vPad * 2) - 1) + 'px';\r\n\r\n\t\t// Default padding/positioning\r\n\t\t} else {\r\n\r\n\t\t\tres.css.tab.height = trgr.offset.height + (vPad * 2) + \"px\";\r\n\r\n\t\t\t// Move the tab upwards, equal to the trigger height plus padding\r\n\t\t\t// minus 1px to account for border and visually overlapping box\r\n\t\t\tres.css.tab.top = '-' + (trgr.offset.height + (vPad * 2) - 1) + \"px\";\r\n\t\t}\r\n\r\n\t\t// Tab width equals trigger width plus padding (1rem left and right)\r\n\t\tres.css.tab.width = trgr.offset.width + (hPad * 2) + \"px\";\r\n\r\n\t\t// Tab z-index is 1 less than trigger; above box, below trigger\r\n\t\tres.css.tab.zIndex = trgr.e.css('z-index') - 1;\r\n\r\n\t\t// `transform` to quickly position box, relative to top left corner\r\n\t\tres.css.box.transform = 'translate3d(' + res.offset.box.left +'px, ' + res.offset.box.top + 'px, 0)';\r\n\r\n\t\t// Apply that giant blob of CSS\r\n\t\tpopOut.css({\r\n\t\t\tzIndex: res.css.box.zIndex,\r\n\t\t\ttransform: res.css.box.transform\r\n\t\t}).find('.pop-out__tab').css({ // find this pop-out's child tab\r\n\t\t\theight: res.css.tab.height,\r\n\t\t\twidth: res.css.tab.width,\r\n\t\t\tleft: res.offset.tab.left,\r\n\t\t\tright: 0, // This is always 0\r\n\t\t\ttop: res.css.tab.top,\r\n\t\t\tzIndex: res.css.tab.zIndex\r\n\t\t});\r\n\t\t// Ugly hack for Safari 8, booo\r\n\t\tpopOut.css('-webkit-transform', res.css.box.transform);\r\n\r\n\t};\r\n\r\n\t// If there is an active pop-out, update its position\r\n\t// Mostly useful for when the browser window resizes\r\n\tthis.updatePopOut = function() {\r\n\t\tif(state.activeElm) {\r\n\t\t\tupdatePosition();\r\n\t\t}\r\n\t};\r\n}\r\n\r\nexport default popOutController;\r\n\r\n\r\n","import { analyticsEvent } from './analytics-controller';\r\n\r\nfunction loginController(requestVerificationToken) {\r\n\tthis.addRegisterUserControl = function(triggerElement, successCallback, failureCallback) {\r\n\t\tif (triggerElement) {\r\n\t\t\t$(triggerElement).on('click', (event) => {\r\n\t\t\t\tthis.hideErrors(triggerElement);\r\n\t\t\t\t$(triggerElement).attr('disabled', 'disabled');\r\n\r\n\t\t\t\tvar inputData = {};\r\n\t\t\t\tvar url = $(triggerElement).data('register-user-url');\r\n\r\n\t\t\t\t$(triggerElement).parents('.js-register-user-container').find('input').each(function() {\r\n\t\t\t\t\tvar value = '';\r\n\r\n\t\t\t\t\tif ($(this).data('checkbox-type') === 'boolean') {\r\n\t\t\t\t\t\tvalue = this.checked;\r\n\r\n\t\t\t\t\t\tif ($(this).data('checkbox-boolean-type') === 'reverse') {\r\n\t\t\t\t\t\t\tvalue = !value;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tvalue = $(this).val();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tinputData[$(this).attr('name')] = value;\r\n\t\t\t\t});\r\n\r\n\t\t\t\t$.ajax({\r\n\t\t\t\t\turl: url,\r\n\t\t\t\t\ttype: 'POST',\r\n\t\t\t\t\tdata: inputData,\r\n\t\t\t\t\tcontext: this,\r\n\t\t\t\t\tsuccess: function (response) {\r\n\t\t\t\t\t\tif (response.success) {\r\n\r\n\t\t\t\t\t\t\tvar registerAnalytics = {\r\n\t\t\t\t\t\t\t\tevent_name: 'register-step-1',\r\n\t\t\t\t\t\t\t\tregistration_state: 'successful',\r\n\t\t\t\t\t\t\t\tuserName: '\"' + inputData.username + '\"'\r\n\t\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\t\tanalyticsEvent( $.extend(analytics_data, registerAnalytics) );\r\n\r\n\t\t\t\t\t\t\tif (successCallback) {\r\n\t\t\t\t\t\t\t\tsuccessCallback(triggerElement);\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tvar nextStepUrl = $(triggerElement).data('next-step-url');\r\n\r\n\t\t\t\t\t\t\tif (nextStepUrl) {\r\n\t\t\t\t\t\t\t\twindow.location.href = nextStepUrl;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tthis.showSuccessMessage(triggerElement);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t$(triggerElement).removeAttr('disabled');\r\n\r\n\r\n\r\n\t\t\t\t\t\t\tvar specificErrorDisplayed = false;\r\n\r\n\t\t\t\t\t\t\tif (response.reasons && response.reasons.length > 0) {\r\n\t\t\t\t\t\t\t\tfor (var reason in response.reasons) {\r\n\t\t\t\t\t\t\t\t\tthis.showError(triggerElement, '.js-register-user-error-' + response.reasons[reason]);\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\tspecificErrorDisplayed = true;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tif (!specificErrorDisplayed)\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tthis.showError(triggerElement, '.js-register-user-error-general');\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tvar registerAnalytics1 = {\r\n\t\t\t\t\t\t\t\tevent_name: \"registration failure\",\r\n\t\t\t\t\t\t\t\tregistration_errors: response.reasons\r\n\t\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\t\tanalyticsEvent( $.extend(analytics_data, registerAnalytics1) );\r\n\r\n\t\t\t\t\t\t\tif (failureCallback) {\r\n\t\t\t\t\t\t\t\tfailureCallback(triggerElement);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\terror: function(response) {\r\n\t\t\t\t\t\t$(triggerElement).removeAttr('disabled');\r\n\r\n\t\t\t\t\t\tthis.showError(triggerElement, '.js-register-user-error-general');\r\n\r\n\t\t\t\t\t\tif (failureCallback) {\r\n\t\t\t\t\t\t\tfailureCallback(triggerElement);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\tthis.showSuccessMessage = function(triggerElement) {\r\n\t\t$(triggerElement).parents('.js-register-user-container').find('.js-register-user-success').show();\r\n\t}\r\n\r\n\tthis.showError = function(triggerElement, error) {\r\n\t\t$(triggerElement).parents('.js-register-user-container').find('.js-register-user-error-container').show();\r\n\t\t$(triggerElement).parents('.js-register-user-container').find(error).show();\r\n\t}\r\n\r\n\tthis.hideErrors = function(triggerElement) {\r\n\t\t$(triggerElement).parents('.js-register-user-container').find('.js-register-user-error-container').hide();\r\n\t\t$(triggerElement).parents('.js-register-user-container').find('.js-register-user-error').hide();\r\n\t}\r\n};\r\n\r\nexport default loginController;\r\n","import { analyticsEvent } from './analytics-controller';\r\n\r\nfunction loginController(requestVerificationToken) {\r\n\tthis.addRequestControl = function(triggerElement, successCallback, failureCallback) {\r\n\t\tif (triggerElement) {\r\n\t\t\t$(triggerElement).on('click', (event) => {\r\n\t\t\t\tthis.hideErrors(triggerElement);\r\n\t\t\t\t$(triggerElement).attr('disabled', 'disabled');\r\n\r\n\t\t\t\tvar inputData = {};\r\n\t\t\t\tvar url = $(triggerElement).data('reset-url');\r\n\r\n\t\t\t\t$(triggerElement).parents('.js-reset-password-container').find('input').each(function() {\r\n\t\t\t\t\tinputData[$(this).attr('name')] = $(this).val();\r\n\t\t\t\t})\r\n\r\n\t\t\t\t$.ajax({\r\n\t\t\t\t\turl: url,\r\n\t\t\t\t\ttype: 'POST',\r\n\t\t\t\t\tdata: inputData,\r\n\t\t\t\t\tcontext: this,\r\n\t\t\t\t\tsuccess: function (response) {\r\n\t\t\t\t\t\tif (response.success) {\r\n\t\t\t\t\t\t this.showSuccessMessage(triggerElement);\r\n\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tif (successCallback) {\r\n\t\t\t\t\t\t\t\tsuccessCallback(triggerElement);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t$(triggerElement).removeAttr('disabled');\r\n\t\t\t\t\t\t\tvar resetPasswordAnalytics = {\r\n\t\t\t\t\t\t\t event_name: \"password reset unsuccessful\"\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\t\tvar specificErrorDisplayed = false;\r\n\r\n\t\t\t\t\t\t\tif ($.inArray('EmailRequirement', response.reasons) !== -1)\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tthis.showError(triggerElement, '.js-reset-password-error-email');\r\n\t\t\t\t\t\t\t\tspecificErrorDisplayed = true;\r\n }\r\n\r\n\t\t\t\t\t\t\tif (!specificErrorDisplayed)\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tthis.showError(triggerElement, '.js-reset-password-error-general');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tanalyticsEvent( $.extend(analytics_data, resetPasswordAnalytics) );\r\n\r\n\t\t\t\t\t\t\tif (failureCallback) {\r\n\t\t\t\t\t\t\t\tfailureCallback(triggerElement);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\terror: function(response) {\r\n\t\t\t\t\t\t$(triggerElement).removeAttr('disabled');\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tthis.showError(triggerElement, '.js-reset-password-error-general');\r\n\r\n\t\t\t\t\t\tif (failureCallback) {\r\n\t\t\t\t\t\t\tfailureCallback(triggerElement);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\tthis.addChangeControl = function(triggerElement, successCallback, failureCallback) {\r\n\t\tif (triggerElement) {\r\n\t\t\t$(triggerElement).on('click', (event) => {\r\n\t\t\t\tthis.hideErrors(triggerElement);\r\n\t\t\t\t$(triggerElement).attr('disabled', 'disabled');\r\n\r\n\t\t\t\tvar inputData = {};\r\n\t\t\t\tvar url = $(triggerElement).data('reset-url');\r\n\r\n\t\t\t\t$(triggerElement).parents('.js-reset-password-container').find('input').each(function() {\r\n\t\t\t\t\tinputData[$(this).attr('name')] = $(this).val();\r\n\t\t\t\t})\r\n\r\n\t\t\t\t$.ajax({\r\n\t\t\t\t\turl: url,\r\n\t\t\t\t\ttype: 'POST',\r\n\t\t\t\t\tdata: inputData,\r\n\t\t\t\t\tcontext: this,\r\n\t\t\t\t\tsuccess: function (response) {\r\n\t\t\t\t\t\tif (response.success) {\r\n\t\t\t\t\t\t\tthis.showSuccessMessage(triggerElement);\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tif (successCallback) {\r\n\t\t\t\t\t\t\t\tsuccessCallback(triggerElement);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t$(triggerElement).removeAttr('disabled');\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tvar specificErrorDisplayed = false;\r\n\r\n\t\t\t\t\t\t\tif ($.inArray('PasswordMismatch', response.reasons) !== -1)\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tthis.showError(triggerElement, '.js-reset-password-error-mismatch');\r\n\t\t\t\t\t\t\t\tspecificErrorDisplayed = true;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif ($.inArray('PasswordRequirements', response.reasons) !== -1)\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tthis.showError(triggerElement, '.js-reset-password-error-requirements');\r\n\t\t\t\t\t\t\t\tspecificErrorDisplayed = true;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tif (!specificErrorDisplayed || ($.inArray('MissingToken', response.reasons) !== -1))\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tthis.showError(triggerElement, '.js-reset-password-error-general');\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tif (failureCallback) {\r\n\t\t\t\t\t\t\t\tfailureCallback(triggerElement);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\terror: function(response) {\r\n\t\t\t\t\t\t$(triggerElement).removeAttr('disabled');\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tthis.showError(triggerElement, '.js-reset-password-error-general');\r\n\r\n\t\t\t\t\t\tif (failureCallback) {\r\n\t\t\t\t\t\t\tfailureCallback(triggerElement);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\tthis.addRetryControl = function(triggerElement, successCallback, failureCallback) {\r\n\t\tif (triggerElement) {\r\n\t\t\t$(triggerElement).on('click', (event) => {\r\n\t\t\t\tthis.hideErrors(triggerElement);\r\n\t\t\t\t$(triggerElement).attr('disabled', 'disabled');\r\n\r\n\t\t\t\tvar inputData = {};\r\n\t\t\t\tvar url = $(triggerElement).data('retry-url');\r\n\r\n\t\t\t\t$(triggerElement).parents('.js-reset-password-container').find('input').each(function() {\r\n\t\t\t\t\tinputData[$(this).attr('name')] = $(this).val();\r\n\t\t\t\t})\r\n\r\n\t\t\t\t$.ajax({\r\n\t\t\t\t\turl: url,\r\n\t\t\t\t\ttype: 'POST',\r\n\t\t\t\t\tdata: inputData,\r\n\t\t\t\t\tcontext: this,\r\n\t\t\t\t\tsuccess: function (response) {\r\n\t\t\t\t\t\tif (response.success) {\r\n\t\t\t\t\t\t\tthis.showSuccessMessage(triggerElement);\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tif (successCallback) {\r\n\t\t\t\t\t\t\t\tsuccessCallback(triggerElement);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t$(triggerElement).removeAttr('disabled');\r\n\r\n\t\t\t\t\t\t\tthis.showError(triggerElement, '.js-reset-password-error-general');\r\n\r\n\t\t\t\t\t\t\tif (failureCallback) {\r\n\t\t\t\t\t\t\t\tfailureCallback(triggerElement);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\terror: function(response) {\r\n\t\t\t\t\t\t$(triggerElement).removeAttr('disabled');\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tthis.showError(triggerElement, '.js-reset-password-error-general');\r\n\r\n\t\t\t\t\t\tif (failureCallback) {\r\n\t\t\t\t\t\t\tfailureCallback(triggerElement);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\n\r\n\tthis.showSuccessMessage = function(triggerElement) {\r\n\t $(triggerElement).parents('.js-reset-password-container').find('.js-reset-password-success').show();\r\n\t var resetPasswordAnalytics = {\r\n\t event_name: \"password reset success\"\t\t\t\t\t\t \r\n\t };\r\n\r\n\t analyticsEvent( $.extend(analytics_data, resetPasswordAnalytics) );\r\n\t}\r\n\r\n\tthis.showError = function(triggerElement, error) {\r\n\t\t$(triggerElement).parents('.js-reset-password-container').find('.js-reset-password-error-container').show();\r\n\t\t$(triggerElement).parents('.js-reset-password-container').find(error).show();\r\n\t\tvar resetPasswordAnalytics = {\r\n\t\t event_name: \"password reset unsuccessful\"\t\r\n };\r\n\r\n\t\tanalyticsEvent( $.extend(analytics_data, resetPasswordAnalytics) );\r\n\t}\r\n\t\r\n\tthis.hideErrors = function(triggerElement) {\r\n\t\t$(triggerElement).parents('.js-reset-password-container').find('.js-reset-password-error-container').hide();\r\n\t\t$(triggerElement).parents('.js-reset-password-container').find('.js-reset-password-error').hide();\r\n\t}\r\n};\r\n\r\nexport default loginController;","function sortableTableController() {\r\n\r\n\t/*\r\n\tBased on SortTable version 2\r\n\t7th April 2007\r\n\tStuart Langridge, http://www.kryogenix.org/code/browser/sorttable/\r\n\tLicenced as X11: http://www.kryogenix.org/code/browser/licence.html\r\n\t*/\r\n\r\n\tvar isSortedTable = false;\r\n\tvar tfo, mtch, sortfn, hasInputs;\r\n\r\n\tvar sorttable = {\r\n\r\n\t\tinit: function initing() {\r\n\t\t\t// quit if this function has already been called\r\n\t\t\tif (isSortedTable) return;\r\n\t\t\t// flag this function so we don't do the same thing twice\r\n\t\t\tisSortedTable = true;\r\n\r\n\t\t\t$('.js-sortable-table').each(function (indx, item) {\r\n\t\t\t\tsorttable.makeSortable(item);\r\n\t\t\t});\r\n\r\n\t\t},\r\n\r\n\t\tsortColumn: function(table, col) {\r\n\r\n\t\t\t// build an array to sort. This is a Schwartzian transform thing,\r\n\t\t\t// i.e., we \"decorate\" each row with the actual sort key,\r\n\t\t\t// sort based on the sort keys, and then put the rows back in order\r\n\t\t\t// which is a lot faster because you only do getInnerText once per row\r\n\r\n\t\t\tvar row_array = [];\r\n\t\t\tvar headrow = table.tHead.rows[0].cells;\r\n\t\t\tvar rows = [].slice.call(table.tBodies[0].rows);\r\n\t\t\tvar guesstype = sorttable.guessType(table, col);\r\n\r\n\t\t\tfor (var i = 0; i < rows.length; i++) {\r\n\t\t\t\trow_array[row_array.length] = [$(rows[i].cells[col]), rows[i]];\r\n\t\t\t}\r\n\r\n\r\n\t\t\tif($(headrow[col]).data('sortable-type')) {\r\n\t\t\t\trow_array.sort(sorttable[$(headrow[col]).data('sortable-type')]);\r\n\t\t\t} else {\r\n\t\t\t\trow_array.sort(guesstype);\r\n\t\t\t}\r\n\r\n\t\t\tvar tb = table.tBodies[0];\r\n\t\t\tfor (var j = 0; j < row_array.length; j++) {\r\n\t\t\t\ttb.appendChild(row_array[j][1]);\r\n\t\t\t}\r\n\r\n\t\t\trow_array = undefined;\r\n\t\t},\r\n\r\n\t\tmakeSortable: function(table) {\r\n\r\n\t\t\t// Sorttable v1 put rows with a class of \"sortbottom\" at the bottom (as\r\n\t\t\t// \"total\" rows, for example). This is B&R, since what you're supposed\r\n\t\t\t// to do is put them in a tfoot. So, if there are sortbottom rows,\r\n\t\t\t// for backwards compatibility, move them to tfoot (creating it if needed).\r\n\t\t\tvar sortbottomrows = [];\r\n\t\t\tfor (var i = 0; i < table.rows.length; i++) {\r\n\t\t\t\tif ($(table.rows[i]).hasClass('.sortbottom')) {\r\n\t\t\t\t\tsortbottomrows[sortbottomrows.length] = table.rows[i];\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (sortbottomrows) {\r\n\t\t\t\tif (table.tFoot == null) {\r\n\t\t\t\t\t// table doesn't have a tfoot. Create one.\r\n\t\t\t\t\ttfo = document.createElement('tfoot');\r\n\t\t\t\t\ttable.appendChild(tfo);\r\n\t\t\t\t}\r\n\t\t\t\tfor (var j = 0; j < sortbottomrows.length; j++) {\r\n\t\t\t\t\ttfo.appendChild(sortbottomrows[j]);\r\n\t\t\t\t}\r\n\t\t\t\tsortbottomrows = undefined;\r\n\t\t\t}\r\n\r\n\t\t\t// work through each column and calculate its type\r\n\t\t\tvar headrow = table.tHead.rows[0].cells;\r\n\t\t\tfor (var j = 0; j < headrow.length; j++) {\r\n\r\n\t\t\t\t// manually override the type with a sorttable_type attribute\r\n\t\t\t\tif (!headrow[j].className.match(/\\bsorttable_nosort\\b/)) { // skip this col\r\n\t\t\t\t\theadrow[j].sorttable_sortfunction = sorttable.guessType(table,j);\r\n\t\t\t\t}\r\n\r\n\t\t\t};\r\n\r\n\t\t\t$(table).find('.js-sortable-table-sorter').on('click', function(e) {\r\n\r\n\t\t\t\t// If child element is clicked, redirect the click to the\r\n\t\t\t\t// proper element: the parent itself.\r\n\t\t\t\tif(e.target !== this) {\r\n\t\t\t\t\tthis.click();\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tvar colNum = $(e.target).closest('.js-sortable-table-sorter').data('sortable-table-col') - 1;\r\n\r\n\r\n\r\n\t\t\t\tif ($(e.target).hasClass('sorttable_sorted')) {\r\n\t\t\t\t\t// This column is sorted top to bottom\r\n\t\t\t\t\t// Re-sort the column to catch any row changes...\r\n\t\t\t\t\tsorttable.sortColumn(table, colNum);\r\n\t\t\t\t\t// ...then reverse the column and update the classes (state).\r\n\t\t\t\t\tsorttable.reverse(table.tBodies[0]);\r\n\t\t\t\t\t$(e.target).removeClass('sorttable_sorted').addClass('sorttable_sorted_reverse');\r\n\t\t\t\t\t\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($(e.target).hasClass('sorttable_sorted_reverse')) {\r\n\t\t\t\t\t// This column is sorted bottom to top\r\n\t\t\t\t\t// Flip the table back to top-to-bottom (default)...\r\n\t\t\t\t\tsorttable.reverse(table.tBodies[0]);\r\n\t\t\t\t\t// ...then re-sort it to catch any row changes.\r\n\t\t\t\t\tsorttable.sortColumn(table, colNum);\r\n\t\t\t\t\t$(e.target).removeClass('sorttable_sorted_reverse').addClass('sorttable_sorted');\r\n\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// remove sorttable_sorted classes\r\n\t\t\t\tvar theadrow = e.target.parentNode;\r\n\t\t\t\tforEach(theadrow.childNodes, function(cell) {\r\n\t\t\t\t\tif (cell.nodeType === 1) { // an element\r\n\t\t\t\t\t\t$(cell).removeClass('sorttable_sorted_reverse sorttable_sorted');\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tif ($('.sorttable_sortfwdind')) {\r\n\t\t\t\t\t$('.sorttable_sortfwdind').remove();\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($('.sorttable_sortrevind')) {\r\n\t\t\t\t\t$('.sorttable_sortrevind').remove();\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$(e.target).addClass('sorttable_sorted');\r\n\r\n\t\t\t\tsorttable.sortColumn(table, colNum);\r\n\r\n\t\t\t});\r\n\r\n\t\t},\r\n\r\n\tguessType: function(table, column) {\r\n\r\n\t\t// guess the type of a column based on its first non-blank row\r\n\t\tsortfn = sorttable.sort_alpha;\r\n\r\n\t\tfor (var i = 0; i < table.tBodies[0].rows.length; i++) {\r\n\r\n\t\t\tvar text = $(table.tBodies[0].rows[i].cells[column]).text().trim();\r\n\t\t\tif (text !== '') {\r\n\t\t\t\t// If column is numeric or appears to be money, sort numeric\r\n\t\t\t\tif (text.match(/^-?[£$¤]?[\\d,.]+%?$/)) {\r\n\t\t\t\t\treturn sorttable.sort_numeric;\r\n\t\t\t\t} else if(Date.parse(text) > 0) {\r\n\t\t\t\t\t// Check for valid date\r\n\t\t\t\t\t// If found, assume column is full of dates, sort by date!\r\n\t\t\t\t\treturn sorttable.sort_by_date;\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn sorttable.sort_alpha;\r\n\t\t\t\t}\r\n\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn sortfn;\r\n\t},\r\n\r\n\treverse: function(tbody) {\r\n\t\t// reverse the rows in a tbody\r\n\t\tvar newrows = [];\r\n\t\tfor (var i=0; i=0; j--) {\r\n\t\t\ttbody.appendChild(newrows[j]);\r\n\t\t}\r\n\t\tnewrows = undefined;\r\n\t},\r\n\r\n\t/* sort functions\r\n\teach sort function takes two parameters, a and b\r\n\tyou are comparing a[0] and b[0] */\r\n\tsort_numeric: function(a,b) {\r\n\t\tvar aa = parseFloat(a[0].replace(/[^0-9.-]/g,''));\r\n\t\tif (isNaN(aa)) aa = 0;\r\n\t\tvar bb = parseFloat(b[0].replace(/[^0-9.-]/g,''));\r\n\t\tif (isNaN(bb)) bb = 0;\r\n\t\treturn aa - bb;\r\n\t},\r\n\tsort_alpha: function(a,b) {\r\n\t\tvar aClean = a[0].text().trim().toUpperCase();\r\n\t\tvar bClean = b[0].text().trim().toUpperCase();\r\n\t\tif (aClean === bClean) return 0;\r\n\t\tif (aClean < bClean) return -1;\r\n\t\treturn 1;\r\n\t},\r\n\r\n\tsort_by_date: function(a, b) {\r\n\t\t// http://stackoverflow.com/questions/10123953/sort-javascript-object-array-by-date\r\n\t\t// Turn your strings into dates, and then subtract them\r\n\t\t// to get a value that is either negative, positive, or zero.\r\n\t\treturn new Date(b[0].text().trim()) - new Date(a[0].text().trim());\r\n\t},\r\n\r\n\tsort_checkbox: function(a, b) {\r\n\t\tvar aChecked = a[0].find('input[type=checkbox]').prop('checked');\r\n\t\tvar bChecked = b[0].find('input[type=checkbox]').prop('checked');\r\n\t if(aChecked && !bChecked) return 1;\r\n\t\tif(!aChecked && bChecked) return -1;\r\n\r\n\t\treturn 0;\r\n\t},\r\n\r\n\tshaker_sort: function(list, comp_func) {\r\n\t\t// A stable sort function to allow multi-level sorting of data\r\n\t\t// see: http://en.wikipedia.org/wiki/Cocktail_sort\r\n\t\t// thanks to Joseph Nahmias\r\n\t\tvar b = 0;\r\n\t\tvar t = list.length - 1;\r\n\t\tvar swap = true;\r\n\r\n\t\twhile(swap) {\r\n\t\t\tswap = false;\r\n\t\t\tfor(var i = b; i < t; ++i) {\r\n\t\t\t\tif ( comp_func(list[i], list[i+1]) > 0 ) {\r\n\t\t\t\t\tvar q = list[i]; list[i] = list[i+1]; list[i+1] = q;\r\n\t\t\t\t\tswap = true;\r\n\t\t\t\t}\r\n\t\t\t} // for\r\n\t\t\tt--;\r\n\r\n\t\t\tif (!swap) break;\r\n\r\n\t\t\tfor(var j = t; j > b; --j) {\r\n\t\t\t\tif ( comp_func(list[j], list[j-1]) < 0 ) {\r\n\t\t\t\t\tvar q1 = list[j]; list[j] = list[j-1]; list[j-1] = q1;\r\n\t\t\t\t\tswap = true;\r\n\t\t\t\t}\r\n\t\t\t} // for\r\n\t\t\tb++;\r\n\r\n\t\t} // while(swap)\r\n\t}\r\n}\r\n\r\n\t/// HELPER FUNCTIONS\r\n\r\n\t// Dean's forEach: http://dean.edwards.name/base/forEach.js\r\n\t/*\r\n\t\tforEach, version 1.0\r\n\t\tCopyright 2006, Dean Edwards\r\n\t\tLicense: http://www.opensource.org/licenses/mit-license.php\r\n\t*/\r\n\r\n\t// array-like enumeration\r\n\tif (!Array.forEach) { // mozilla already supports this\r\n\t\tArray.forEach = function(array, block, context) {\r\n\t\t\tfor (var i = 0; i < array.length; i++) {\r\n\t\t\t\tblock.call(context, array[i], i, array);\r\n\t\t\t}\r\n\t\t};\r\n\t}\r\n\r\n\t// generic enumeration\r\n\tFunction.prototype.forEach = function(object, block, context) {\r\n\t\tfor (var key in object) {\r\n\t\t\tif (typeof this.prototype[key] == \"undefined\") {\r\n\t\t\t\tblock.call(context, object[key], key, object);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\t// character enumeration\r\n\tString.forEach = function(string, block, context) {\r\n\t\tArray.forEach(string.split(\"\"), function(chr, index) {\r\n\t\t\tblock.call(context, chr, index, string);\r\n\t\t});\r\n\t};\r\n\r\n\t// globally resolve forEach enumeration\r\n\tvar forEach = function(object, block, context) {\r\n\t\tif (object) {\r\n\t\t\tvar resolve = Object; // default\r\n\t\t\tif (object instanceof Function) {\r\n\t\t\t\t// functions have a \"length\" property\r\n\t\t\t\tresolve = Function;\r\n\t\t\t} else if (object.forEach instanceof Function) {\r\n\t\t\t\t// the object implements a custom forEach method so use that\r\n\t\t\t\tobject.forEach(block, context);\r\n\t\t\t\treturn;\r\n\t\t\t} else if (typeof object == \"string\") {\r\n\t\t\t\t// the object is a string\r\n\t\t\t\tresolve = String;\r\n\t\t\t} else if (typeof object.length == \"number\") {\r\n\t\t\t\t// the object is array-like\r\n\t\t\t\tresolve = Array;\r\n\t\t\t}\r\n\t\t\tresolve.forEach(object, block, context);\r\n\t\t}\r\n\t};\r\n\r\n\tsorttable.init();\r\n};\r\n\r\nexport default sortableTableController;\r\n","/* global tooltipController */\r\n\r\nimport calculatePopupOffsets from \"../calculatePopupOffsets.js\";\r\n\r\n/**\r\n * creates a popup and injects it in to the document.\r\n * @param {String} title : title of the popup, optional\r\n * @param {String} html : content of the popup as html\r\n * @param {Number} top : top position relative to the document\r\n * @param {Number} left : left position relative to the document\r\n * @param {Number} offset : a vertical or horizonal distance from the top/left the triangle should point\r\n * depending on if the triangle is top/bottom or left/right\r\n * @param {String} container : a selector of the container in which to inject the popup\r\n * @param {String} triangle : \"top\", \"right\", \"bottom\", or \"left\"\r\n * @param {Boolean} flipToContain: will flip the popup if it goes outside the parent container\r\n * @param {Boolean} closeBtn : if the X should be shown. If not, the popup with not have pointer events\r\n * this is useful for popups on hover that shouldn't fire mouseenter/leave\r\n * @param {Boolean} isHidden: Whether or not the popup is visible.\r\n * @return {Object} {\r\n * {Function} hidePopup : will set isHidden to true\r\n * {Function} removePopup : will remove the popup from the DOM),\r\n * {Function} setState : pass an object with any keys from above to update the popup.\r\n * }\r\n */\r\nexport default function createPopup(initialState) {\r\n\r\n // defaults, and this object will hold the previous state after setState\r\n let prevState = {\r\n title : \"\",\r\n html : \"\",\r\n top : 0,\r\n left : 0,\r\n width : \"\",\r\n offset : 0,\r\n container : \"body\",\r\n triangle : \"bottom\",\r\n closeBtn : true,\r\n isHidden : false,\r\n flipToContain: false\r\n };\r\n\r\n let state = $.extend({}, prevState, initialState);\r\n\r\n\r\n function setState(newState){\r\n // copy the old state into prevState\r\n prevState = $.extend({}, state);\r\n $.extend(state, newState);\r\n // console.log(state);\r\n render();\r\n }\r\n\r\n // initialize popup\r\n // always start hidden so it can animate in\r\n const $popup = $(\"