{"version":3,"sources":["webpack://dzsvg/../html5vg_source/videogallery/configs/Constants.js","webpack://dzsvg/../html5vg_source/videogallery/js_common/_dzs_helpers.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/_dzsvg_helpers.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/_dzsvg_svgs.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/playlist/_playlistHelpers.js","webpack://dzsvg/../html5vg_source/videogallery/js_player/_player_setupAd.js","webpack://dzsvg/../html5vg_source/videogallery/js_playlist/mode/_mode-wall.js","webpack://dzsvg/webpack/bootstrap","webpack://dzsvg/webpack/runtime/define property getters","webpack://dzsvg/webpack/runtime/hasOwnProperty shorthand","webpack://dzsvg/../html5vg_source/videogallery/configs/_playlistSettings.js","webpack://dzsvg/../html5vg_source/videogallery/shared/_viewFunctions.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/navigation/configs/_navigationSettings.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/navigation/inc/_navigation-view.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/navigation/_navigation-helpers.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/navigation/_navigation.js","webpack://dzsvg/../html5vg_source/videogallery/vgallery.sourcepack.js","webpack://dzsvg/../html5vg_source/videogallery/js_playlist/_viewPlaylistStructure.js","webpack://dzsvg/../html5vg_source/videogallery/js_playlist/_searchFunctions.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/playlist/_searchPlaylist.js","webpack://dzsvg/../html5vg_source/videogallery/js_playlist/_playlistAuxiliaryButtons.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/playlist/_playlistBuilderFunctions.js","webpack://dzsvg/../html5vg_source/videogallery/js_dzsvg/components/_second_con.js"],"names":["ConstantsDzsvg","THREEJS_LIB_URL","THREEJS_LIB_ORBIT_URL","YOUTUBE_IFRAME_API","VIMEO_IFRAME_API","DEBUG_STYLING","DEBUG_STYLING_2","ANIMATIONS_DURATION","DELAY_MINUSCULE","VIEW_LAYOUT_BUILDER_FEED_CLASS","DEFAULT_MENU_ITEM_STRUCTURE","PLAYER_DEFAULT_RESPONSIVE_RATIO","PLAYLIST_HEIGHT_IS_WINDOW_MAX_OFFSET","PLAYLIST_DEFAULT_TIMEOUT","PLAYLIST_SCROLL_TOP_OFFSET","PLAYLIST_VIEW_FULLSCREEN_CLASS","get_query_arg","stringUri","key","indexOf","regtest","RegExp","exec","splitterS","aux","split","sanitizeToCssPx","arg","String","add_query_arg","purl","value","s","pair","encodeURIComponent","r","replace","regex_attr","is_touch_device","window","can_history_api","history","pushState","is_safari","navigator","userAgent","toLowerCase","is_mobile","is_ios","is_android","platform","loadScriptIfItDoesNotExist","scriptSrc","checkForVar","checkInterval","Promise","resolve","reject","isAlreadyLoaded","isGoingToLoadScript","checkIfVarExists","clearInterval","setInterval","setTimeout","script","document","createElement","onload","onerror","src","head","appendChild","loadScript","stringUtilGetSkinFromClass","cclass","arr","player_setQualityLevels","selfClass","$temp_qualitiesFromFeed","cthis","find","length","addClass","$qualitySelector","str_qualitiesTooltip","html","struct_qualityOptions","added","each","_t2","$","this","attr","dataSrc","initOptions","settings_currQuality","console","warn","fullscreen_status","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","is_chrome","player_controls_generatePlayCon","o","structPlayControls","design_skin","dzsvg_call_video_when_ready","_videoElement","init_readyVideo","vimeo_is_ready","inter_videoReadyState","type","getPlayerState","cueVideo","Number","readyState","vimeo_is_chromeless","preload_method","dzsvg_check_multisharer","sanitize_to_youtube_id","detect_video_type_and_source","source","getDataOrAttr","_c","data","detect_videoTypeAndSourceForElement","_el","forceType","playFrom","eq","sanitizeDataAdArrayStringToArray","ad_array","JSON","parse","err","log","is_autoplay_and_muted","autoplay","autoplayWithVideoMuted","user_action","defaultvolume","setup_videogalleryCategories","ccat","jQuery","currCatNr","_t","css","append","bind","gotoCategory","parent","children","index","trigger","i2","auxurl","NaN","tempCat","pargs","margs","extend","undefined","get","external_handle_stopCurrVideo","ind","removeClass","_cachg","init_settings","api_play_currVideo","called_from","hide","show","api_handleResize","api_handleResize_currVideo","location","href","api_goto_category","youtube_sanitize_url_to_id","auxa","registerAuxjQueryExtends","fn","appendOnce","argfind","auxarr","d","Date","dzsvg_time_started","getTime","inter_check_treat","clearTimeout","workaround_treatuntretreadItems","$ytApiPlayer_","substr","aux2","loadVideoById","pauseVideo","onYouTubePlayerReady","backup_onYouTubePlayerReady","dzsvg_backup_onYouTubePlayerReady","dzsvgExtraWindowFunctions","dzsvg_wp_send_view","argcthis","argtitle","video_title","video_analytics_id","dzsvg_curr_user","theajaxurl","dzsvg_site_url","dzsvg_settings","ajax","url","success","response","error","dzsvg_wp_send_contor_60_secs","dzsvg_open_social_link","leftPosition","topPosition","windowFeatures","screen","width","height","open","dzsvp_yt_iframe_ready","_global_youtubeIframeAPIReady","onYouTubeIframeAPIReady","dzsvg_yt_ready","extractOptionsFromPlayer","$c","finalOptions","convertPluginOptionsToFinalOptions","elThis","defaultOptions","argOptions","searchedAttr","searchedDivClass","tempOptions","sw_setFromJson","_elThis","eval","Object","assign","aux_opts","player_setupQualitySelector","yt_qualCurr","yt_qualArray","_qualitySelector","playerHandleDeprecatedAttrSrc","player_assert_autoplay","configureAudioPlayerOptionsInitial","gallery_object","$parentGallery","api_video_ready","first_video_from_gallery","playfrom","isNaN","sliderAreaHeight","embed_code","videoWidth","videoHeight","autoplayVideo","mainClass","className","extra_classes","bufferedWidthOffset","volumeWidthOffset","design_enableProgScrubBox","hasClass","extra_controls","responsive_ratio","dataType","isPartOfAnGallery","isGalleryHasOneVideoPlayerMode","mode_normal_video_mode","gallery_target_index","action_video_view","action_video_contor_60secs","reinitPlayerOptions","hasCustomSkin","settings_youtube_usecustomskin","settings_ios_usecustomskin","is_ad","isAd","player_checkIfItShouldStartMuted","ad_link","shouldStartMuted","isHadFirstInteraction","tagsSetupDom","_tagElement","auxhtml","w","h","acomlink","pauseDzsapPlayers","dzsap_list","i","api_pause_media","api_destroy_for_rebuffer","dzsap_player_interrupted_by_dzsvg","init_navigationOuter","xpos","_cach","api_set_outerNav","$targetVideoGallery","_clip","_clipmover","_block_active","_navOuterBullets","_navOuterBlocks","e","$outerBlock","api_gotoItem","SelfPlaylist","handleHadFirstInteraction","scrollY","offset","top","scrollTo","left","behavior","auxl","vimeo_do_command","vimeo_data","vimeo_url","contentWindow","postMessage","stringify","svg_aurora_play_btn","svg_embed","svg_play_simple_skin_bigplay_pro","svg_pause_simple_skin_aurora","svgReplayIcon","svgBackButton","svgForwardButton","svgSearchIcon","svgShareIcon","playlistGotoItemHistoryChangeForNonLinks","cid","deeplinkGotoItemQueryParam","deeplink_str","ignore_linking","stateObj","foo","playlist_initSetupInitial","autoplayFirstVideo","nav_type","forceVideoHeight","settings_mode","menu_position","autoplayNext","cgallery","parseInt","menuitem_width","menuitem_height","settings_go_to_next_after_inactivity","startItem","settings_separation_pages_number","settings_trigger_resize","$feedItemsContainer","masonry_options","columnWidth","containerStyle","position","isFitWidth","isAnimated","settings_enable_linking","$feedLayoutBuilderItems","navigation_customStructure","transition_type","videoplayersettings","dzsvg_vpconfigs","embedCode","viewOptions","enableVideoArea","playlist_initialConfig","galleryComputedId","auxnr","temps","playlist_inDzsTabsHandle","_con","init","playlist_navigation_getPreviewImg","stringPreviewImg","playlist_get_real_responsive_ratio","targetIndex","_sliderCon","php_media_data_retriever","json","rr","toFixed","api_get_responsive_ratio","handleResize_currVideo","info","playlist_navigation_mode_one__set_players_data","_cachmenuitem","attr_arr","maxlen","ci","i5","val","lab4","lab_sanitized_for_data","playlistGotoItemHistoryChangeForLinks","ind_ajaxPage","_currentTargetPlayer","settings_enableHistory","text","settings_ajax_extraDivs","extradivs","xhr","ajaxOptions","thrownError","detect_startItemBasedOnQueryAddress","navigation_detectClassesForPosition","_mainNavigation","classesClearMenuLocations","classesNewMenuLocation","navigation_initScroller","_navMain","scroller","assertVideoFromGalleryAutoplayStatus","currNr","shouldVideoAutoplay","ads_sanitizeForSource","initialVal","fout","ads_decode_ads_array","lab","dzsvg_mode_wall_init","navigation_gridClassItemsContainer","dzsvg_mode_wall_reinitWallStructure","$navigationItemsContainer","$t","ultibox_suggestedWidth","ultibox_suggestedHeight","uriThumb","thumb_imgblock","handleResize","isGalleryLoaded","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","definition","defineProperty","enumerable","obj","prop","prototype","hasOwnProperty","call","defaultPlaylistSettings","init_on","randomise","cueFirstVideo","playorder","loop_playlist","navigation_isUltibox","navigation_direction","navigation_maxHeight","navigation_viewAnimationDuration","nav_type_outer_max_height","nav_type_outer_grid","easing_speed","design_navigationUseEasing","settings_disableVideo","settings_enableHistory_fornormalitems","settings_separation_mode","settings_separation_pages","settings_menu_overlay","search_field","search_field_con","nav_type_auto_scroll","init_all_players_at_init","settings_secondCon","settings_outerNav","extra_class_slider_con","menu_description_format","view_setCssPropsForElement","$elements","cssProps","view_cssConvertForPx","cssVal","defaultSettings","navigationType","navigationSkin","menuPosition","menuItemWidth","menuItemHeight","navigationSpace","feedItemNotInitedClass","isAutoScrollToCurrent","isSyncMainAreaAndNavigationAreas","viewEnableMediaArea","viewNavigationIsUltibox","isUseEasing","parentSkin","filter_structureMenuItemContent","viewAnimationDuration","navigationStructureHtml","gridClassItemsContainer","view_navigation_generateNavigationItem","structureMenuItemContentInner","$currentItemFeed","configObj","navAttributes","isUltiboxItem","final_structureMenuItemContent","$currentVideoPlayer","replaceInNav","currentStructure","placeholderText","argInStructure","feedValue","playlist_navigationStructureAssignVars","navigationItemDomTag","navigationItemExtraAttr","navigationItemExtraClasses","Math","easeIn","t","b","c","easeOut","DzsNavigation","parentClass","$mainArea","$mainNavigation","$mainNavigationClipped","$mainNavigationItemsContainer","$containerComponent","ultraResponsive","totalItemsWidth","totalItemsHeight","totalAreaWidth","totalAreaHeight","mainAreaHeight","currPage","nav_max_pages","navigation_extraFixedElementsSize","navigation_mainDimensionTotalSize","navigation_mainDimensionClipSize","navigation_mainDimensionItemSize","initClass","itemsLength","$currentItemFeed_","$justAdded","last","atts","attributes","n","nodeName","selfInstance","newOptions","computeNavAttributes","navMain_mousex","navMain_mousey","target_viy","target_vix","begin_viy","begin_vix","finish_viy","finish_vix","change_viy","change_vix","DURATION_EASING","init_navIsReady","handleEnterFrame","animate_to_curr_thumb","handleClick_navigationArrow","tempPage","nav_thumbsandarrows_gotoPage","targetPageNr","targetTop","firstItemInSightWidth","handleMouse","pageY","pageX","navigation_getNavPosition","view_animateMenuVertical","navigation_prepareAnimateMenuY","navigation_prepareAnimateMenuX","requestAnimationFrame","navMain_mouse","clipSize","viewMax","finish_viewIndex","$activeNavItem","rat","outerHeight","outerWidth","coordinateToActiveItem","api_scrolly_to","viewIndex","scrollTop","containerComponent","structure_baseLayout","$navigationAndMainArea","before","gap","prepend","setupStructure","calculateDimsArgs","forceMainAreaHeight","totalAreaHeightPixels","mainNavigationDesiredWidth","ceil","$navigationChild","scrollHeight","navWidth","unbind","view_navigation_calculateDims","DzsVideoGallery","argThis","$sliderMain","$navigationClippedContainer","$galleryButtons","$containerForItems","$searchFieldCon","videoAreaWidth","feed_socialCode","Navigation","isEmbedOpened","isShareOpened","classInit","videoAreaHeight","totalWidth","totalHeight","ww","heightWindow","$currVideoPlayer","$galleryParent","nrChildren","last_totalWidth","last_totalHeight","last_height_for_videoheight","inter_start_the_transition","isMergeSocialIconsIntoOne","currNr_curr","nextNr","prevNr","last_arg","heightInitial","isBusyTransition","isTransitionStarted","isBusyAjax","isFirstPlayed","isMouseOver","isFirstTransition","settings_separation_nr_pages","action_playlist_end","caller","apiResponsiveRationResize","baseUrl","elimi","dzsvg_page","$videoItem","remove","str_pagination","str_active","after","design_shadow","navOptions","keys","forEach","playlistOptionKey","newKeyForNav","struct_searchFieldString","dzsvg_playlist_addSearchField","handleSearchFieldChange","dzsvg_playlist_initSearchField","view_structureGenerateNavigation","reinit","merge_social_into_one","click","queue","duration","Constants","click_embedhandle","click_sharehandle","dzsvg_playlist_setupEmbedAndShareButtons","nto_mh","libsUri","then","dzsscr_init","calculateDims","fn_scrollx_to","on","handle_mouse","handleKeyPress","addEventListener","view_handleOrientationChange","init_playlistIsReady","videoEnd","handleVideoEnd","play_currVideo","video_stopCurrentVideo","api_gotoNext","gotoNext","api_gotoPrev","gotoPrev","gotoItem","api_responsive_ratio_resize_h","api_ad_block_navigation","ad_block_navigation","api_ad_unblock_navigation","ad_unblock_navigation","api_pause_currVideo","pause_currVideo","api_currVideo_refresh_fsbutton","galleryTransition","api_set_secondCon","api_set_action_playlist_end","api_played_video","tempStartItem","$categoriesVideoGallery","call_init_readyForInitingVideos","donotopenlink","handleScroll","click_btn_ajax_loadmore","handleMouseout","handleMouseover","keyCode","addNavigationItems","vpRealSrc","sourceAndType","curatedTypeFromGallery","$cacheMenuItem","buildPlaylist","len","setup_transfer_items_to_sliderCon","wrap","rotator3d_handleClickOnPreviewImg","vPlayer","handleClickOnNavigationContainer","resizeHeightDimension","api_toggle_resize","design_menuitem_height","abs","style","$dzsNavItems","calculateDims_secondCon","windowMinusGalleryOffset","api_pauseMovie","argcol","classForNavigationItem","wh","ajax_load_nextpage","st","cthisOffsetTop","innerHeight","gotoItemOptions","isTransformed","argsForVideoPlayer","gallery_last_curr_nr","_targetPlayer","optionsForChange","api_change_media","_c2","autoplay_ad","htmlContent","end_exit_fullscreen","externalPlayMovie","force_resize_gallery","_descCon","delay","_c_outerNav","_t4","_extraBtns","next","setCurrVideoClass","tagName","pause","$innerSecondCon","externalPauseMovie","api_playMovie","tempNr","isGoingToGoNext","selectedIndex","dzsvg_default_settings","vGallery","dzsvg_init","selector","settings","zsvg_init","apply_videogallery_plugin","dzsvg_reinit","off","_content","complete","auxh","stringClass","secondCon_initFunctions","ready","dzsvg_handleInitedjQuery"],"mappings":"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","file":"vgallery.js","sourcesContent":["export const ConstantsDzsvg = {\n THREEJS_LIB_URL: 'https://cdnjs.cloudflare.com/ajax/libs/three.js/r73/three.min.js',\n THREEJS_LIB_ORBIT_URL: 'https://s3-us-west-2.amazonaws.com/s.cdpn.io/211120/orbitControls.js',\n YOUTUBE_IFRAME_API: 'https://www.youtube.com/iframe_api',\n VIMEO_IFRAME_API: 'https://player.vimeo.com/api/player.js',\n DEBUG_STYLING: 'background-color: #4422aa;',\n DEBUG_STYLING_2: 'color: #ffdada; background-color: #da3333;',\n ANIMATIONS_DURATION: 303,\n DELAY_MINUSCULE: 3,\n}\n\nexport const VIEW_LAYOUT_BUILDER_FEED_CLASS = 'feed-layout-builder--menu-items';\n\nexport const DEFAULT_MENU_ITEM_STRUCTURE = `
\n
\n
\n
\n
\n
\n
\n
{{layout-builder.replace-title}}
\n
{{layout-builder.replace-menu-description}}
\n
\n
`;\nexport const PLAYER_DEFAULT_RESPONSIVE_RATIO = 0.5625;\nexport const PLAYER_DEFAULT_TIMEOUT = 304;\nexport const PLAYLIST_HEIGHT_IS_WINDOW_MAX_OFFSET = 310;\nexport const PLAYLIST_DEFAULT_TIMEOUT = 305;\nexport const PLAYLIST_SCROLL_TOP_OFFSET = 120;\nexport const PLAYLIST_VIEW_FULLSCREEN_CLASS = 'is_fullscreen';","\n/**\n * formats the time\n * @param {number} arg\n * @returns {string}\n */\nexport function formatTime(arg) {\n\n var s = Math.round(arg);\n var m = 0;\n if (s > 0) {\n while (s > 59) {\n m++;\n s -= 60;\n }\n return String((m < 10 ? \"0\" : \"\") + m + \":\" + (s < 10 ? \"0\" : \"\") + s);\n } else {\n return \"00:00\";\n }\n}\n\n/**\n *\n * @param {string} stringUri\n * @param {string} key\n * @returns {string}\n */\nexport function get_query_arg(stringUri, key) {\n if (stringUri.indexOf(key + '=') > -1) {\n\n var regexS = \"[?&]\" + key + \"=.+\";\n var regex = new RegExp(regexS);\n var regtest = regex.exec(stringUri);\n\n\n if (regtest != null) {\n var splitterS = regtest[0];\n if (splitterS.indexOf('&') > -1) {\n var aux = splitterS.split('&');\n splitterS = aux[1];\n }\n\n var splitter = splitterS.split('=');\n\n\n return splitter[1];\n\n }\n\n }\n}\n\n/**\n *\n * @param {string|number} arg\n * @returns {string|*}\n */\nexport function sanitizeToCssPx(arg) {\n\n if (String(arg).indexOf('%') > -1 || String(arg).indexOf('em') > -1 || String(arg).indexOf('px') > -1 || String(arg).indexOf('auto') > -1) {\n return arg;\n }\n return arg + 'px';\n}\n\n\nexport function format_to_seconds(arg) {\n\n var argsplit = String(arg).split(':');\n argsplit.reverse();\n var secs = 0;\n\n if (argsplit[0]) {\n argsplit[0] = String(argsplit[0]).replace(',', '.');\n secs += Number(argsplit[0]);\n }\n if (argsplit[1]) {\n secs += Number(argsplit[1]) * 60;\n }\n if (argsplit[2]) {\n secs += Number(argsplit[2]) * 60;\n }\n\n\n return secs;\n}\n\n\nexport function add_query_arg(purl, key, value) {\n key = encodeURIComponent(key);\n value = encodeURIComponent(value);\n\n var s = purl;\n var pair = key + \"=\" + value;\n\n var r = new RegExp(\"(&|\\\\?)\" + key + \"=[^\\&]*\");\n\n s = s.replace(r, \"$1\" + pair);\n\n if (s.indexOf(key + '=') > -1) {\n\n\n } else {\n if (s.indexOf('?') > -1) {\n s += '&' + pair;\n } else {\n s += '?' + pair;\n }\n }\n\n\n if (value === 'NaN') {\n var regex_attr = new RegExp('[\\?|\\&]' + key + '=' + value);\n s = s.replace(regex_attr, '');\n }\n\n return s;\n}\nexport function is_touch_device() {\n\n\n return !!('ontouchstart' in window);\n}\n\nexport function can_history_api() {\n return !!(window.history && history.pushState);\n}\n\n/**\n * *deprecated\n * @returns {*|boolean}\n */\nexport function can_translate() {\n return is_chrome() || is_safari();\n\n}\n\n\nexport function is_safari() {\n return navigator.userAgent.toLowerCase().indexOf('safari') > -1;\n}\n;\nexport function is_mobile() {\n\n return is_ios() || is_android();\n}\nexport function is_android() {\n\n\n var ua = navigator.userAgent.toLowerCase();\n return (ua.indexOf(\"android\") > -1);\n}\n\nexport function is_ios() {\n\n return ((navigator.platform.indexOf(\"iPhone\") !== -1) || (navigator.platform.indexOf(\"iPod\") !== -1) || (navigator.platform.indexOf(\"iPad\") !== -1 || (navigator.platform.indexOf(\"MacIntel\") !== -1 && is_touch_device()))\n );\n}\n\n\n/**\n *\n * @param {string} scriptSrc if no script src - it will just look for var\n * @param {string} checkForVar must be on window property\n * @returns {Promise}\n */\nexport const loadScriptIfItDoesNotExist = (scriptSrc, checkForVar) => {\n const CHECK_INTERVAL = 50;\n const TIMEOUT_MAX = 5000;\n let checkInterval = 0;\n const loadScript = (scriptSrc, resolve, reject) => {\n var script = document.createElement('script');\n script.onload = function () {\n resolve('loadfromload');\n };\n script.onerror = function () {\n reject();\n };\n script.src = scriptSrc;\n document.head.appendChild(script);\n }\n\n return new Promise((resolve, reject) => {\n let isAlreadyLoaded = false;\n let isGoingToLoadScript = false;\n\n function checkIfVarExists() {\n if (window[checkForVar]) {\n clearInterval(checkInterval);\n resolve('loadfromvar');\n return true;\n }\n return false;\n }\n\n isAlreadyLoaded = checkIfVarExists();\n if (!isAlreadyLoaded) {\n isGoingToLoadScript = true;\n\n checkInterval = setInterval(checkIfVarExists, CHECK_INTERVAL);\n\n setTimeout(() => {\n clearInterval(checkInterval);\n reject('timeout');\n }, TIMEOUT_MAX);\n }\n if (!checkForVar) {\n isGoingToLoadScript = true;\n }\n if (!scriptSrc) {\n isGoingToLoadScript = false;\n }\n\n if (isGoingToLoadScript) {\n clearInterval(checkInterval);\n loadScript(scriptSrc, resolve, reject);\n }\n\n })\n}\n\n\nexport function stringUtilGetSkinFromClass(cclass){\n var arr = /(skin.*?)( |$)/.exec(cclass);\n\n if(arr && arr[1]){\n return arr[1];\n }\n\n return '';\n}","import {ads_decode_ads_array} from \"../js_player/_player_setupAd\";\n\n\nimport {ConstantsDzsvg, PLAYLIST_SCROLL_TOP_OFFSET} from '../configs/Constants';\nimport {\n svg_aurora_play_btn,\n svg_pause_simple_skin_aurora,\n svg_play_simple_skin_bigplay_pro,\n svgReplayIcon\n} from \"./_dzsvg_svgs\";\nimport {get_query_arg, add_query_arg, is_safari, is_mobile, is_ios, is_android} from \"../js_common/_dzs_helpers\";\n\n\n\nexport function player_setQualityLevels(selfClass) {\n\n var $temp_qualitiesFromFeed = selfClass.cthis.find('.dzsvg-feed-quality');\n if ($temp_qualitiesFromFeed.length) {\n selfClass.cthis.addClass('has-multiple-quality-levels');\n\n\n var $qualitySelector = selfClass.cthis.find('.quality-selector');\n var str_qualitiesTooltip = $qualitySelector.find('.dzsvg-tooltip').html();\n\n let struct_qualityOptions = '';\n\n var added = false;\n\n\n var curr_qual_added = false;\n $temp_qualitiesFromFeed.each(function () {\n var _t2 = $(this);\n\n\n struct_qualityOptions += '
' + _t2.attr('data-label') + '
';\n })\n\n if (added === false) {\n\n struct_qualityOptions += '
' + selfClass.initOptions.settings_currQuality + '
';\n\n }\n\n\n if (str_qualitiesTooltip) {\n\n\n str_qualitiesTooltip = str_qualitiesTooltip.replace('{{quality-options}}', struct_qualityOptions);\n $qualitySelector.find('.dzsvg-tooltip').html(str_qualitiesTooltip);\n } else {\n console.warn('no aux ? ', str_qualitiesTooltip, $qualitySelector);\n }\n\n\n }\n}\n\n\n\n\n\n/**\n *\n * @returns {number}\n */\nexport function fullscreen_status() {\n if (document.fullscreenElement !== null && typeof document.fullscreenElement !== \"undefined\") {\n return 1;\n } else if (document.webkitFullscreenElement && typeof document.webkitFullscreenElement !== \"undefined\") {\n return 1;\n } else if (document.mozFullScreenElement && typeof document.mozFullScreenElement !== \"undefined\") {\n return 1;\n }\n ;\n return 0\n}\n\n\nfunction is_chrome() {\n return navigator.userAgent.toLowerCase().indexOf('chrome') > -1;\n}\n;\n\nexport function player_controls_generatePlayCon(o) {\n\n var structPlayControls = '';\n structPlayControls = '
';\n if (o.design_skin == 'skin_bigplay_pro') {\n\n structPlayControls += svg_play_simple_skin_bigplay_pro;\n }\n if (o.design_skin == 'skin_aurora' || o.design_skin == 'skin_bigplay' || o.design_skin == 'skin_avanti' || o.design_skin == 'skin_default' || o.design_skin == 'skin_pro' || o.design_skin == 'skin_white') {\n structPlayControls += svg_aurora_play_btn;\n }\n\n\n structPlayControls += '
';\n if (o.design_skin == 'skin_aurora' || o.design_skin == 'skin_pro' || o.design_skin == 'skin_bigplay' || o.design_skin == 'skin_avanti' || o.design_skin == 'skin_default' || o.design_skin == 'skin_white') {\n\n structPlayControls += svg_pause_simple_skin_aurora;\n }\n structPlayControls += '
';\n\n\n structPlayControls += '
';\n structPlayControls += svgReplayIcon;\n\n structPlayControls += '
';\n\n\n return structPlayControls;\n}\n\nexport function dzsvg_call_video_when_ready(o, _videoElement, init_readyVideo, vimeo_is_ready, inter_videoReadyState) {\n\n\n if (o.type === 'youtube' && _videoElement.getPlayerState) {\n\n init_readyVideo();\n }\n\n\n if (o.cueVideo != 'on' && (o.type == 'selfHosted' || o.type == 'audio') && Number(_videoElement.readyState) >= 2) {\n init_readyVideo({\n 'called_from': 'check_videoReadyState'\n });\n return false;\n }\n\n\n if (o.type == 'vimeo' && o.vimeo_is_chromeless == 'on') {\n\n if (vimeo_is_ready) {\n init_readyVideo();\n return false;\n }\n }\n if (o.type == 'audio') {\n if (is_mobile()) {\n if (Number(_videoElement.readyState) >= 1) {\n\n init_readyVideo();\n return false;\n }\n }\n\n\n if (Number(_videoElement.readyState) >= 3) {\n clearInterval(inter_videoReadyState);\n init_readyVideo({\n 'called_from': 'check_videoReadyState'\n });\n return false;\n }\n }\n if (o.type === 'selfHosted') {\n\n\n if (is_ios()) {\n\n if (Number(_videoElement.readyState) >= 1) {\n\n init_readyVideo();\n return false;\n }\n }\n\n if (is_android()) {\n if (Number(_videoElement.readyState) >= 2) {\n\n init_readyVideo();\n return false;\n }\n }\n\n\n if (Number(_videoElement.readyState) >= 3 || o.preload_method === 'none') {\n clearInterval(inter_videoReadyState);\n init_readyVideo({\n 'called_from': 'check_videoReadyState'\n });\n return false;\n }\n }\n\n\n // --- WORKAROUND __ for some reason ios default browser would not go over video ready state 1\n\n if (o.type === 'dash') {\n\n clearInterval(inter_videoReadyState)\n init_readyVideo({\n 'called_from': 'check_videoReadyState'\n });\n }\n\n\n}\n\n\nexport function dzsvg_check_multisharer() {\n\n\n\n}\n\n\n\nexport function sanitize_to_youtube_id(arg = '') {\n var fourArr = null;\n\n if (arg) {\n arg = detect_video_type_and_source(arg).source;\n }\n return arg;\n}\n\n/**\n *\n * @param _c the video player element\n * @param attr attribute\n * @returns {null|jQuery|undefined|*}\n */\nexport function getDataOrAttr(_c, attr) {\n if (_c.data && typeof _c.data(attr) != 'undefined') {\n return _c.data(attr);\n }\n if (_c.attr && typeof _c.attr(attr) != 'undefined') {\n return _c.attr(attr);\n }\n\n return null;\n}\n\nexport function detect_videoTypeAndSourceForElement(_el) {\n\n if (_el.data('originalPlayerAttributes')) {\n return _el.data('originalPlayerAttributes');\n }\n\n var dataSrc = getDataOrAttr(_el, 'data-sourcevp');\n\n var forceType = getDataOrAttr(_el, 'data-type') ? getDataOrAttr(_el, 'data-type') : '';\n\n return detect_video_type_and_source(dataSrc, forceType)\n}\n\n/**\n * detect video type and source\n * @param {string} dataSrc\n * @param forceType we might want to force the type if we know it\n * @param cthis\n * @returns {{source: *, playFrom: null, type: string}}\n */\nexport function detect_video_type_and_source(dataSrc, forceType = null, cthis = null) {\n\n\n dataSrc = String(dataSrc);\n\n var playFrom = null;\n var type = 'selfHosted';\n var source = dataSrc;\n\n if (dataSrc.indexOf('youtube.com/watch?') > -1 || dataSrc.indexOf('youtube.com/embed') > -1 || dataSrc.indexOf('youtu.be/') > -1) {\n type = 'youtube';\n\n var aux = /http(?:s?):\\/\\/(?:www\\.)?youtu(?:be\\.com\\/watch\\?v=|\\.be\\/)([\\w\\-\\_]*)(&(amp;)?‌​[\\w\\?‌​=]*)?/g.exec(dataSrc);\n\n\n if (get_query_arg(dataSrc, 't')) {\n playFrom = get_query_arg(dataSrc, 't');\n }\n if (aux && aux[1]) {\n source = aux[1];\n } else {\n // -- let us try youtube embed\n source = dataSrc.replace(/http(?:s?):\\/\\/(?:www\\.)?youtu(?:be\\.com\\/watch\\?v=|\\.be\\/|be\\.com)\\/embed\\//g, '');\n }\n }\n\n\n if (dataSrc.indexOf(' -1) {\n type = 'inline';\n }\n // todo: php turn into content\n if (cthis && cthis.find('.feed-dzsvg--inline-content').length && cthis.find('.feed-dzsvg--inline-content').eq(0).html().indexOf(' -1) {\n type = 'inline';\n }\n if (dataSrc.indexOf('vimeo.com/') > -1) {\n type = 'vimeo';\n\n var aux = /(?:www\\.|player\\.)?vimeo.com\\/(?:channels\\/(?:\\w+\\/)?|groups\\/(?:[^\\/]*)\\/videos\\/|album\\/(?:\\d+)\\/video\\/|video\\/|)(\\d+)(?:[a-zA-Z0-9_\\-]+)?/g.exec(dataSrc);\n\n\n if (aux && aux[1]) {\n source = aux[1];\n }\n }\n\n if (dataSrc.indexOf('.mp4') > -1) {\n type = 'selfHosted';\n }\n if (dataSrc && dataSrc.indexOf('.mpd') > dataSrc.length - 5) {\n type = 'dash';\n }\n if (forceType && forceType !== 'detect') {\n type = forceType;\n }\n\n\n if (!playFrom) {\n\n if (cthis && cthis.attr('data-play_from')) {\n playFrom = cthis.attr('data-play_from');\n }\n }\n return {\n type,\n source,\n playFrom\n };\n}\n\nexport function sanitizeDataAdArrayStringToArray(aux) {\n\n var ad_array = null;\n try {\n // temp - try to remove slashes manually\n aux = aux.replace(/{\\\\\"/g, '{\"');\n aux = aux.replace(/\\\\\":/g, '\":');\n aux = aux.replace(/:\\\\\"/g, ':\"');\n aux = aux.replace(/\\\\\",/g, '\",');\n aux = aux.replace(/\\\\\"}/g, '\"}');\n aux = aux.replace(/,\\\\\"/g, ',\"');\n ad_array = JSON.parse(aux);\n } catch (err) {\n console.log('ad array parse error', aux);\n }\n\n return ad_array;\n\n\n}\n\nexport function is_autoplay_and_muted(autoplay, o) {\n\n return ((1) && autoplay === 'on' && o.autoplayWithVideoMuted === 'on' && o.user_action === 'noUserActionYet') || (o.defaultvolume === 0 && o.defaultvolume !== '');\n\n}\n\n\nexport function setup_videogalleryCategories(arg) {\n var ccat = jQuery(arg);\n var currCatNr = -1;\n\n ccat.find('.gallery-precon').each(function () {\n var _t = jQuery(this);\n\n _t.css({'display': 'none'});\n ccat.find('.the-categories-con').append('' + _t.attr('data-category') + '')\n });\n\n ccat.find('.the-categories-con').find('.a-category').eq(0).addClass('active');\n ccat.find('.the-categories-con').find('.a-category').bind('click', click_category);\n\n function click_category() {\n var _t = jQuery(this);\n var ind = _t.parent().children('.a-category').index(_t);\n\n\n gotoCategory(ind);\n setTimeout(function () {\n jQuery(window).trigger('resize');\n }, 100);\n }\n\n\n var i2 = 0;\n\n ccat.find('.gallery-precon').each(function () {\n var _t = jQuery(this);\n\n\n _t.find('.pagination-number').each(function () {\n var _t2 = jQuery(this);\n\n\n var auxurl = _t2.attr('href');\n\n\n auxurl = add_query_arg(auxurl, ccat.attr('id') + '_cat', NaN);\n\n\n auxurl = add_query_arg(auxurl, ccat.attr('id') + '_cat', i2);\n\n _t2.attr('href', auxurl);\n })\n\n i2++;\n })\n\n var tempCat = 0;\n\n\n if (get_query_arg(window.location.href, ccat.attr('id') + '_cat')) {\n tempCat = Number(get_query_arg(window.location.href, ccat.attr('id') + '_cat'));\n }\n\n\n ccat.get(0).api_goto_category = gotoCategory;\n\n gotoCategory(tempCat, {\n 'called_from': 'init'\n });\n\n function gotoCategory(arg, pargs) {\n\n\n var margs = {\n 'called_from': 'default'\n };\n\n\n if (pargs) {\n margs = jQuery.extend(margs, pargs);\n }\n\n\n if (currCatNr > -1 && ccat.find('.gallery-precon').eq(currCatNr).find('.videogallery').eq(0).get(0) != undefined && ccat.find('.gallery-precon').eq(currCatNr).find('.videogallery').eq(0).get(0).external_handle_stopCurrVideo != undefined) {\n\n\n var ind = 0;\n ccat.find('.gallery-precon').each(function () {\n\n\n if (ind != arg) {\n\n jQuery(this).find('.videogallery').eq(0).get(0).external_handle_stopCurrVideo();\n }\n ind++;\n })\n\n\n }\n ccat.find('.gallery-precon').removeClass('curr-gallery');\n ccat.find('.the-categories-con').find('.a-category').removeClass('active');\n ccat.find('.the-categories-con').find('.a-category').eq(arg).addClass('active');\n ccat.find('.gallery-precon').addClass('disabled');\n ccat.find('.gallery-precon').eq(arg).css('display', '').removeClass('disabled');\n\n var _cach = ccat.find('.gallery-precon').eq(arg);\n var _cachg = _cach.find('.videogallery').eq(0);\n\n\n if (_cachg.get(0) && _cachg.get(0).init_settings) {\n\n\n if (_cachg.get(0).init_settings.autoplay == 'on') {\n setTimeout(function () {\n\n _cachg.get(0).api_play_currVideo();\n }, 10);\n\n if (margs.called_from == 'deeplink' || margs.called_from == 'init') {\n\n setTimeout(function () {\n\n\n }, 1000);\n setTimeout(function () {\n\n _cachg.get(0).api_play_currVideo();\n }, 1500);\n }\n }\n }\n\n setTimeout(function () {\n ccat.children('.dzsas-second-con').hide();\n ccat.children('.dzsas-second-con').eq(arg).show();\n\n\n ccat.find('.gallery-precon').eq(arg).addClass('curr-gallery');\n\n\n currCatNr = arg;\n\n\n if (typeof ccat.find('.gallery-precon').eq(arg).find('.videogallery').eq(0).get(0) != 'undefined' && typeof ccat.find('.gallery-precon').eq(arg).find('.videogallery').eq(0).get(0).api_handleResize != 'undefined') {\n ccat.find('.gallery-precon').eq(arg).find('.videogallery').eq(0).get(0).api_handleResize();\n ccat.find('.gallery-precon').eq(arg).find('.videogallery').eq(0).get(0).api_handleResize_currVideo();\n }\n setTimeout(function () {\n\n jQuery(window).trigger('resize');\n }, 1500);\n\n\n }, 50);\n\n\n }\n\n}\n\nexport function youtube_sanitize_url_to_id(arg) {\n\n\n if (arg) {\n\n if (String(arg).indexOf('youtube.com/embed') > -1) {\n var auxa = String(dataSrc).split('youtube.com/embed/');\n\n\n if (auxa[1]) {\n\n return auxa[1];\n }\n }\n\n if (arg.indexOf('youtube.com') > -1 || arg.indexOf('youtu.be') > -1) {\n\n\n if (get_query_arg(arg, 'v')) {\n return get_query_arg(arg, 'v');\n }\n\n if (arg.indexOf('youtu.be') > -1) {\n var arr = arg.split('/');\n\n arg = arr[arr.length - 1];\n }\n }\n }\n\n\n return arg;\n}\n\n\nexport function registerAuxjQueryExtends($) {\n\n\n $.fn.appendOnce = function (arg, argfind) {\n var _t = $(this) // It's your element\n\n\n if (typeof (argfind) == 'undefined') {\n var regex = new RegExp('class=\"(.*?)\"');\n var auxarr = regex.exec(arg);\n\n\n if (typeof auxarr[1] != 'undefined') {\n argfind = '.' + auxarr[1];\n }\n }\n\n if (_t.children(argfind).length < 1) {\n _t.append(arg);\n return true;\n }\n return false;\n };\n\n\n var d = new Date();\n window.dzsvg_time_started = d.getTime();\n\n\n var inter_check_treat = 0;\n\n clearTimeout(inter_check_treat);\n inter_check_treat = setTimeout(workaround_treatuntretreadItems, 2000);\n\n function workaround_treatuntretreadItems() {\n jQuery('.js-api-player:not(.treated)').each(function () {\n var _t = jQuery(this);\n var $ytApiPlayer_ = _t.get(0);\n\n\n var playerId = _t.attr('id');\n\n var aux = playerId.substr(8);\n var aux2 = _t.attr('data-suggestedquality');\n\n\n if (typeof $ytApiPlayer_.loadVideoById != 'undefined') {\n $ytApiPlayer_.loadVideoById(aux, 0, aux2);\n $ytApiPlayer_.pauseVideo();\n } else {\n\n inter_check_treat = setTimeout(workaround_treatuntretreadItems, 2000);\n }\n\n\n })\n\n }\n\n // -- we save the other youtube player ready functions ( maybe conflict with other players )\n if (window.onYouTubePlayerReady && typeof window.onYouTubePlayerReady == 'function' && typeof backup_onYouTubePlayerReady == 'undefined') {\n window.dzsvg_backup_onYouTubePlayerReady = window.onYouTubePlayerReady;\n }\n}\n\nexport function dzsvgExtraWindowFunctions() {\n\n\n window.dzsvg_wp_send_view = function (argcthis, argtitle) {\n var data = {\n video_title: argtitle\n , video_analytics_id: argcthis.attr('data-player-id')\n };\n\n if (window.dzsvg_curr_user) {\n data.dzsvg_curr_user = window.dzsvg_curr_user;\n }\n\n var theajaxurl = 'index.php?action=ajax_dzsvg_submit_view';\n\n if (window.dzsvg_site_url) {\n theajaxurl = dzsvg_settings.dzsvg_site_url + theajaxurl;\n }\n\n\n jQuery.ajax({\n type: \"POST\",\n url: theajaxurl,\n data: data,\n success: function (response) {\n\n\n },\n error: function (arg) {\n }\n });\n\n\n }\n\n\n window.dzsvg_wp_send_contor_60_secs = function (argcthis, argtitle) {\n\n var data = {\n video_title: argtitle\n\n , video_analytics_id: argcthis.attr('data-player-id')\n , dzsvg_curr_user: window.dzsvg_curr_user\n };\n var theajaxurl = 'index.php?action=ajax_dzsvg_submit_contor_60_secs';\n\n if (window.dzsvg_site_url) {\n\n theajaxurl = dzsvg_settings.dzsvg_site_url + theajaxurl;\n }\n\n\n jQuery.ajax({\n type: \"POST\",\n url: theajaxurl,\n data: data,\n success: function (response) {\n\n },\n error: function (arg) {\n ;\n }\n });\n }\n\n\n window.dzsvg_open_social_link = function (arg) {\n var leftPosition, topPosition;\n var w = 500, h = 500;\n\n\n arg = arg.replace(/{{replacewithcurrurl}}/g, encodeURIComponent(window.location.href));\n leftPosition = (window.screen.width / 2) - ((w / 2) + 10);\n topPosition = (window.screen.height / 2) - ((h / 2) + 50);\n var windowFeatures = \"status=no,height=\" + h + \",width=\" + w + \",resizable=yes,left=\" + leftPosition + \",top=\" + topPosition + \",screenX=\" + leftPosition + \",screenY=\" + topPosition + \",toolbar=no,menubar=no,scrollbars=no,location=no,directories=no\";\n window.open(arg, \"sharer\", windowFeatures);\n }\n\n\n window.dzsvp_yt_iframe_ready = function () {\n _global_youtubeIframeAPIReady = true;\n }\n\n window.onYouTubeIframeAPIReady = function () {\n window.dzsvg_yt_ready = true;\n window.dzsvp_yt_iframe_ready();\n }\n\n\n}\n\n\nexport function extractOptionsFromPlayer($c) {\n\n\n if ($c.data('originalPlayerAttributes')) {\n return $c.data('originalPlayerAttributes');\n }\n var finalOptions = {};\n\n\n if (getDataOrAttr($c, 'data-sourcevp')) {\n finalOptions.source = getDataOrAttr($c, 'data-sourcevp');\n }\n if ($c.attr('data-type')) {\n finalOptions.type = $c.attr('data-type');\n }\n\n return finalOptions;\n}\n\n\nexport function convertPluginOptionsToFinalOptions(elThis, defaultOptions, argOptions = null, searchedAttr = 'data-options', searchedDivClass = 'feed-options') {\n\n var finalOptions = null;\n var tempOptions = {};\n var sw_setFromJson = false;\n var _elThis = jQuery(elThis);\n\n if (argOptions && typeof argOptions == 'object') {\n tempOptions = argOptions;\n } else {\n\n if (_elThis.attr(searchedAttr)) {\n try {\n tempOptions = JSON.parse(_elThis.attr(searchedAttr));\n sw_setFromJson = true;\n } catch (err) {\n console.log('json parse error searched attr err - ', err, _elThis.attr(searchedAttr));\n }\n } else {\n\n if (_elThis.find('.feed-options').length) {\n try {\n tempOptions = JSON.parse(_elThis.find('.feed-options').html());\n sw_setFromJson = true;\n } catch (err) {\n console.log('json parse error feed-options err - ', err, _elThis.find('.feed-options').html());\n }\n }\n }\n if (!sw_setFromJson) {\n\n // -- *deprecated\n if (typeof argOptions == 'undefined' || !argOptions) {\n if (typeof _elThis.attr(searchedAttr) != 'undefined' && _elThis.attr(searchedAttr) !== '') {\n var aux = _elThis.attr(searchedAttr);\n aux = 'var aux_opts = ' + aux;\n eval(aux);\n tempOptions = Object.assign({}, aux_opts);\n }\n }\n }\n }\n\n finalOptions = Object.assign(defaultOptions, tempOptions);\n\n return finalOptions;\n}\n\nexport function player_setupQualitySelector(selfClass, yt_qualCurr, yt_qualArray) {\n var _qualitySelector = selfClass.cthis.find('.quality-selector');\n if (_qualitySelector.find('.dzsvg-tooltip').length) {\n\n var aux = _qualitySelector.find('.dzsvg-tooltip').html();\n var aux_opts = '';\n\n for (var i2 in yt_qualArray) {\n aux_opts += '
' + yt_qualArray[i2] + '
';\n }\n aux = aux.replace('{{quality-options}}', aux_opts);\n _qualitySelector.find('.dzsvg-tooltip').html(aux);\n }\n\n}\n\nexport function playerHandleDeprecatedAttrSrc(cthis) {\n\n\n if (!cthis.attr('data-sourcevp')) {\n if (cthis.attr('data-source')) {\n cthis.attr('data-sourcevp', cthis.attr('data-source'));\n } else {\n\n if (cthis.attr('data-src')) {\n cthis.attr('data-sourcevp', cthis.attr('data-src'));\n\n }\n }\n }\n}\n\nexport function player_assert_autoplay(selfClass) {\n\n\n // -- autoplay assert\n\n var o = selfClass.initOptions;\n\n\n if (is_mobile()) {\n\n }\n\n\n}\n\nexport function configureAudioPlayerOptionsInitial(cthis, o, selfClass) {\n\n\n if (o.gallery_object != null) {\n if (typeof (o.gallery_object.get(0)) != 'undefined') {\n selfClass.$parentGallery = o.gallery_object;\n\n\n setTimeout(function () {\n if (selfClass.$parentGallery.get(0).api_video_ready) {\n selfClass.$parentGallery.get(0).api_video_ready();\n }\n }, ConstantsDzsvg.DELAY_MINUSCULE);\n }\n }\n\n\n if (is_mobile() || (o.first_video_from_gallery === 'on' && (is_safari()))) {\n if (is_mobile()) {\n cthis.addClass('is-mobile');\n }\n if (cthis.attr('data-img')) {\n } else {\n cthis.removeClass('hide-on-paused');\n }\n }\n\n\n if (o.playfrom === 'default') {\n if (typeof selfClass.cthis.attr('data-playfrom') != 'undefined' && selfClass.cthis.attr('data-playfrom') != '') {\n o.playfrom = selfClass.cthis.attr('data-playfrom');\n }\n }\n if (isNaN(Number(o.playfrom)) == false) {\n o.playfrom = Number(o.playfrom);\n }\n if (isNaN(Number(o.sliderAreaHeight)) == false) {\n o.sliderAreaHeight = Number(o.sliderAreaHeight);\n }\n\n\n cthis.data('embed_code', o.embed_code);\n\n\n selfClass.videoWidth = cthis.width();\n selfClass.videoHeight = cthis.height();\n\n\n if (o.autoplay === 'on') {\n selfClass.autoplayVideo = 'on';\n }\n\n if (!selfClass.dataSrc) {\n console.log('[dzsvg] missing source', selfClass.cthis);\n }\n\n var mainClass = '';\n if (typeof (cthis.attr('class')) == 'string') {\n mainClass = cthis.attr('class');\n } else {\n mainClass = cthis.get(0).className;\n }\n\n if (mainClass.indexOf('skin_') == -1) {\n cthis.addClass(o.design_skin);\n mainClass += ' ' + o.design_skin;\n }\n\n\n cthis.addClass(o.extra_classes);\n\n //-setting skin specific vars\n if (mainClass.indexOf('skin_aurora') > -1) {\n o.design_skin = 'skin_aurora';\n selfClass.bufferedWidthOffset = -2;\n selfClass.volumeWidthOffset = -2;\n if (o.design_enableProgScrubBox == 'default') {\n o.design_enableProgScrubBox = 'on';\n }\n }\n if (mainClass.indexOf('skin_pro') > -1) {\n o.design_skin = 'skin_pro';\n\n selfClass.volumeWidthOffset = -2;\n if (o.design_enableProgScrubBox == 'default') {\n o.design_enableProgScrubBox = 'off';\n }\n }\n if (mainClass.indexOf('skin_bigplay') > -1) {\n o.design_skin = 'skin_bigplay';\n }\n if (mainClass.indexOf('skin_nocontrols') > -1) {\n o.design_skin = 'skin_nocontrols';\n }\n if (mainClass.indexOf('skin_bigplay_pro') > -1) {\n o.design_skin = 'skin_bigplay_pro';\n }\n if (mainClass.indexOf('skin_bluescrubtop') > -1) {\n o.design_skin = 'skin_bluescrubtop';\n\n }\n if (mainClass.indexOf('skin_avanti') > -1) {\n o.design_skin = 'skin_avanti';\n\n }\n if (mainClass.indexOf('skin_noskin') > -1) {\n o.design_skin = 'skin_noskin';\n }\n\n\n if (cthis.hasClass('skin_white')) {\n o.design_skin = 'skin_white';\n }\n if (cthis.hasClass('skin_reborn')) {\n o.design_skin = 'skin_reborn';\n }\n\n\n if (o.design_enableProgScrubBox == 'default') {\n o.design_enableProgScrubBox = 'off';\n }\n\n\n if (is_mobile() || is_ios()) {\n cthis.addClass('disable-volume');\n\n\n }\n\n\n if (o.gallery_object) {\n if (o.gallery_object.get(0)) {\n cthis.get(0).gallery_object = o.gallery_object.get(0);\n }\n }\n\n\n if (o.extra_controls) {\n cthis.append(o.extra_controls);\n }\n\n\n if (o.responsive_ratio === 'default' || (selfClass.dataType === 'youtube' && o.responsive_ratio === 'detect')) {\n\n if (cthis.attr('data-responsive_ratio')) {\n o.responsive_ratio = cthis.attr('data-responsive_ratio');\n }\n }\n\n if (o.gallery_object !== null) {\n selfClass.isPartOfAnGallery = true;\n }\n if (selfClass.isPartOfAnGallery) {\n selfClass.isGalleryHasOneVideoPlayerMode = o.gallery_object.data('vg_settings') && o.gallery_object.data('vg_settings').mode_normal_video_mode === 'one';\n }\n\n\n // -- we cache this for the one\n if (selfClass.isGalleryHasOneVideoPlayerMode) {\n if (o.gallery_target_index === 0 && !(selfClass.cthis.data('originalPlayerAttributes'))) {\n selfClass.cthis.data('originalPlayerAttributes', detect_videoTypeAndSourceForElement(selfClass.cthis));\n }\n }\n\n if (o.action_video_view === 'wpdefault') {\n o.action_video_view = window.dzsvg_wp_send_view;\n }\n if (o.action_video_contor_60secs === 'wpdefault') {\n o.action_video_contor_60secs = window.dzsvg_wp_send_contor_60_secs;\n }\n\n reinitPlayerOptions(selfClass, o);\n}\n\n\nexport function reinitPlayerOptions(selfClass, o) {\n // -- we need selfClass.dataType and selfClass.dataSrc beforeHand\n\n\n selfClass.hasCustomSkin = true;\n // -- assess custom skin\n if (selfClass.dataType === 'vimeo' && o.vimeo_is_chromeless !== 'on') {\n selfClass.hasCustomSkin = false;\n }\n if (selfClass.dataType === 'youtube' && o.settings_youtube_usecustomskin !== 'on') {\n selfClass.hasCustomSkin = false;\n }\n if (is_ios() && o.settings_ios_usecustomskin !== 'on') {\n selfClass.hasCustomSkin = false;\n }\n if (selfClass.dataType === 'inline') {\n\n selfClass.hasCustomSkin = false;\n }\n\n\n if (selfClass.cthis.attr('data-ad-array')) {\n selfClass.ad_array = sanitizeDataAdArrayStringToArray(selfClass.cthis.attr('data-ad-array'));\n }\n ads_decode_ads_array(selfClass);\n\n\n player_assert_autoplay(selfClass);\n\n if (o.is_ad === 'on') {\n selfClass.isAd = true;\n }\n\n player_checkIfItShouldStartMuted(selfClass, o);\n\n if (selfClass.isAd && o.ad_link) {\n selfClass.ad_link = o.ad_link;\n }\n\n\n // -- assess custom skin END\n}\n\nfunction player_checkIfItShouldStartMuted(selfClass, o) {\n\n const isPlayerOrGalleryHadFirstInteraction = () => {\n if (selfClass.isHadFirstInteraction) return true;\n if (!is_mobile() && selfClass.$parentGallery && selfClass.$parentGallery.hasClass('user-had-first-interaction')) {\n return true;\n }\n return false;\n };\n\n // -- should start muted\n if (selfClass.cthis.hasClass('start-muted')) {\n selfClass.initOptions.autoplayWithVideoMuted = 'always'; // -- warning: override\n }\n\n // -- detect\n if (selfClass.initOptions.autoplay === 'off') {\n selfClass.shouldStartMuted = false;\n\n }\n if (selfClass.initOptions.autoplay === 'on') {\n\n\n if (isPlayerOrGalleryHadFirstInteraction()) {\n selfClass.shouldStartMuted = false;\n } else {\n if (is_mobile()) {\n // -- mobile\n selfClass.shouldStartMuted = selfClass.initOptions.autoplay === 'on' && selfClass.initOptions.autoplayWithVideoMuted === 'auto';\n } else {\n // -- desktop\n if (o.autoplayWithVideoMuted === 'auto') {\n selfClass.shouldStartMuted = true;\n }\n }\n\n }\n }\n // -- should start muted\n\n if (o.autoplayWithVideoMuted === 'always') {\n selfClass.shouldStartMuted = true;\n }\n\n}\n\nexport function tagsSetupDom(_tagElement) {\n var auxhtml = _tagElement.html();\n var w = 100;\n var h = 100;\n var acomlink = '';\n if (_tagElement.attr('data-width') != undefined) {\n w = _tagElement.attr('data-width');\n }\n if (_tagElement.attr('data-height') != undefined) {\n h = _tagElement.attr('data-height');\n }\n if (_tagElement.attr('data-link') != undefined) {\n acomlink = '';\n }\n\n _tagElement.html('');\n _tagElement.css({'left': (_tagElement.attr('data-left') + 'px'), 'top': (_tagElement.attr('data-top') + 'px')});\n\n _tagElement.append('
' + acomlink + '
');\n _tagElement.append('' + auxhtml + '');\n _tagElement.removeClass('dzstag-tobe').addClass('dzstag');\n\n}\n\nexport function pauseDzsapPlayers() {\n if (window.dzsap_list) {\n for (var i = 0; i < dzsap_list.length; i++) {\n\n\n if (typeof dzsap_list[i].get(0) != \"undefined\" && typeof dzsap_list[i].get(0).api_pause_media != \"undefined\" && dzsap_list[i].get(0) != cthis.get(0)) {\n\n\n if (dzsap_list[i].data('type_audio_stop_buffer_on_unfocus') && dzsap_list[i].data('type_audio_stop_buffer_on_unfocus') == 'on') {\n dzsap_list[i].get(0).api_destroy_for_rebuffer();\n } else {\n\n dzsap_list[i].get(0).api_pause_media({\n 'audioapi_setlasttime': false\n });\n }\n window.dzsap_player_interrupted_by_dzsvg = dzsap_list[i].get(0);\n }\n }\n\n }\n\n}\n\nexport function init_navigationOuter() {\n jQuery('.videogallery--navigation-outer').each(function () {\n var _t = jQuery(this);\n\n\n var xpos = 0;\n _t.find('.videogallery--navigation-outer--bigblock').each(function () {\n var _t = jQuery(this);\n _t.css('left', xpos + '%');\n xpos += 100;\n })\n\n\n // -- we will use first gallery if id is auto\n if (_t.attr('data-vgtarget') === '.id_auto') {\n\n\n var _cach = jQuery('.videogallery,.videogallery-tobe').eq(0);\n\n var cclass = /id_(.*?) /.exec(_cach.attr('class'));\n\n if (cclass && cclass[1]) {\n _t.attr('data-vgtarget', '.id_' + cclass[1]);\n }\n\n if (_cach.get(0) && _cach.get(0).api_set_outerNav) {\n _cach.get(0).api_set_outerNav(_t);\n }\n setTimeout(function () {\n if (_cach.get(0) && _cach.get(0).api_set_outerNav) {\n _cach.get(0).api_set_outerNav(_t);\n }\n }, 1000)\n }\n var $targetVideoGallery = jQuery(_t.attr('data-vgtarget')).eq(0);\n\n\n var _clip = _t.find('.videogallery--navigation-outer--clip').eq(0);\n var _clipmover = _t.find('.videogallery--navigation-outer--clipmover').eq(0);\n\n var currPage = 0;\n var _block_active = _t.find('.videogallery--navigation-outer--bigblock.active').eq(0);\n\n var _navOuterBullets = _t.find('.navigation-outer--bullet');\n var _navOuterBlocks = _t.find('.videogallery--navigation-outer--block');\n\n setTimeout(function () {\n _t.addClass('active');\n _block_active = _t.find('.videogallery--navigation-outer--bigblock.active').eq(0);\n _clip.height(_block_active.height());\n }, 500)\n\n _navOuterBlocks.bind('click', function (e) {\n const $outerBlock = jQuery(this);\n const ind = _navOuterBlocks.index($outerBlock);\n\n\n if ($targetVideoGallery.get(0) && $targetVideoGallery.get(0).api_gotoItem) {\n\n\n if ($targetVideoGallery.get(0).SelfPlaylist) {\n const SelfPlaylist = $targetVideoGallery.get(0).SelfPlaylist;\n SelfPlaylist.handleHadFirstInteraction(e);\n }\n\n if ($targetVideoGallery.get(0).api_gotoItem(ind)) {\n }\n\n const scrollY = $targetVideoGallery.offset().top - PLAYLIST_SCROLL_TOP_OFFSET;\n window.scrollTo({\n top: scrollY,\n left: 0,\n behavior: 'smooth'\n });\n\n }\n });\n\n _navOuterBullets.bind('click', function () {\n var _t2 = jQuery(this);\n var ind = _navOuterBullets.index(_t2);\n\n gotoPage(ind);\n\n })\n\n function gotoPage(arg) {\n var auxl = -(Number(arg) * 100) + '%';\n\n _navOuterBullets.removeClass('active');\n _navOuterBullets.eq(arg).addClass('active');\n\n _t.find('.videogallery--navigation-outer--bigblock.active').removeClass('active');\n _t.find('.videogallery--navigation-outer--bigblock').eq(arg).addClass('active');\n\n\n _clip.height(_t.find('.videogallery--navigation-outer--bigblock').eq(arg).height());\n\n _clipmover.css('left', auxl);\n\n }\n\n\n })\n}\n\nexport function vimeo_do_command(selfClass, vimeo_data, vimeo_url) {\n\n if (vimeo_url) {\n\n if (selfClass._videoElement && selfClass._videoElement.contentWindow && vimeo_url) {\n\n selfClass._videoElement.contentWindow.postMessage(JSON.stringify(vimeo_data), vimeo_url);\n }\n }\n}\n\n\n\n\n","export const svg_quality_icon = ' ';\n\n\nexport const svg_default_volume_static = ' ';\nexport const svg_volume_icon = ' ';\nexport const svg_aurora_play_btn = ' ';\nexport const svg_embed = '';\nexport const svg_mute_btn = ' ';\nexport const svg_mute_icon = ' ';\nexport const svg_play_simple_skin_bigplay_pro = ' ';\nexport const svg_pause_simple_skin_aurora = ' ';\nexport const svg_volume_active_skin_default = ' ';\nexport const svg_full_icon = ' ';\n\n\nexport const svgReplayIcon = ' ';\n\nexport const svgBackButton = '';\nexport const svgForwardButton = '';\n\nexport const svgForSkin_boxyRounded = ' ';\nexport const svgForSkin_boxyRounded2 = ' ';\nexport const svgSearchIcon = ' ';\nexport const svgShareIcon = ' ';","import {\n getDataOrAttr,\n} from \"../_dzsvg_helpers\";\n\nimport {get_query_arg, add_query_arg, is_mobile, is_touch_device, can_history_api} from '../../js_common/_dzs_helpers';\n\nimport {\n DEFAULT_MENU_ITEM_STRUCTURE,\n PLAYER_DEFAULT_RESPONSIVE_RATIO,\n VIEW_LAYOUT_BUILDER_FEED_CLASS\n} from '../../configs/Constants';\nimport {stringUtilGetSkinFromClass} from \"../../js_common/_dzs_helpers\";\nimport {dzsvg_mode_wall_init} from \"../../js_playlist/mode/_mode-wall\";\n\n\nexport function playlistGotoItemHistoryChangeForNonLinks(margs, o, cid, arg, deeplinkGotoItemQueryParam = 'the-video') {\n\n var $ = jQuery;\n\n var deeplink_str = String(deeplinkGotoItemQueryParam).replace('{{galleryid}}', cid);\n if (!margs.ignore_linking && margs.called_from !== 'init') {\n var stateObj = {foo: \"bar\"};\n\n if ($('.videogallery').length === 1) {\n history.pushState(stateObj, null, add_query_arg(window.location.href, deeplink_str, (Number(arg) + 1)));\n } else {\n history.pushState(stateObj, null, add_query_arg(window.location.href, deeplink_str + '-' + cid, (Number(arg) + 1)));\n }\n }\n}\n\n/**\n * sanitize all options\n * @param selfClass\n * @param o\n */\nexport function playlist_initSetupInitial(selfClass, o) {\n\n\n if (!o.autoplayFirstVideo) {\n\n o.autoplayFirstVideo = o.autoplay;\n }\n\n if (o.nav_type === 'outer') {\n if (o.forceVideoHeight === '') {\n o.forceVideoHeight = '300';\n }\n }\n\n if (o.settings_mode === 'slider') {\n o.menu_position = 'none';\n o.nav_type = 'none';\n }\n if (o.settings_mode === 'wall') {\n\n o.nav_type = 'thumbs';\n }\n\n if (is_mobile() && o.autoplayNext === 'on') {\n if (o.mode_normal_video_mode !== 'one') {\n o.autoplayNext = 'off';\n }\n }\n\n selfClass.cgallery.data('vg_autoplayNext', o.autoplayNext);\n selfClass.cgallery.data('vg_settings', o);\n\n if (isNaN(parseInt(o.menuitem_width, 10)) === false && String(o.menuitem_width).indexOf('%') === -1) {\n o.menuitem_width = parseInt(o.menuitem_width, 10);\n } else {\n o.menuitem_width = '';\n }\n\n if (isNaN(Number(o.menuitem_height)) === false && o.menuitem_height > 0) {\n\n o.menuitem_height = Number(o.menuitem_height);\n } else {\n o.menuitem_height = '';\n }\n o.settings_go_to_next_after_inactivity = parseInt(o.settings_go_to_next_after_inactivity, 10);\n\n\n if (o.startItem !== 'default') {\n o.startItem = parseInt(o.startItem, 10);\n }\n\n\n o.settings_separation_pages_number = parseInt(o.settings_separation_pages_number, 10);\n o.settings_trigger_resize = parseInt(o.settings_trigger_resize, 10);\n\n\n selfClass.$feedItemsContainer = selfClass.cgallery;\n\n if (selfClass.cgallery.children('.items').length) {\n selfClass.$feedItemsContainer = selfClass.cgallery.children('.items');\n }\n\n\n const masonry_options_default = {\n columnWidth: 1\n , containerStyle: {position: 'relative'}\n , isFitWidth: false\n , isAnimated: true\n };\n\n\n o.masonry_options = Object.assign(masonry_options_default, o.masonry_options);\n\n\n if (!can_history_api()) {\n o.settings_enable_linking = 'off';\n }\n\n const $feedLayoutBuilderItems = selfClass.cgallery.children('.'+VIEW_LAYOUT_BUILDER_FEED_CLASS);\n if ($feedLayoutBuilderItems.length) {\n selfClass.navigation_customStructure = $feedLayoutBuilderItems.eq(0).html();\n } else {\n selfClass.navigation_customStructure = DEFAULT_MENU_ITEM_STRUCTURE;\n }\n\n\n if (!selfClass.navigation_customStructure) {\n if (!o.design_skin) {\n o.design_skin = 'skin-default';\n }\n }\n\n\n if (o.settings_mode === 'rotator3d') {\n\n o.menu_position = 'none';\n o.nav_type = 'none';\n o.transition_type = 'rotator3d';\n }\n\n\n if (typeof o.videoplayersettings == 'string' && window.dzsvg_vpconfigs) {\n if (typeof window.dzsvg_vpconfigs[o.videoplayersettings] === 'object') {\n o.videoplayersettings = {...window.dzsvg_vpconfigs[o.videoplayersettings]};\n }\n }\n\n\n if (o.videoplayersettings.design_skin === 'sameasgallery') {\n o.videoplayersettings.design_skin = o.design_skin;\n }\n\n if (selfClass.cgallery.find('.feed-dzsvg--embedcode').length) {\n o.embedCode = selfClass.cgallery.find('.feed-dzsvg--embedcode').eq(0).html();\n }\n\n if(selfClass.cgallery.hasClass('view--disable-video-area')){\n selfClass.viewOptions.enableVideoArea = false;\n }\n\n\n\n}\n\nexport function playlist_initialConfig(selfClass, o) {\n\n selfClass.galleryComputedId = selfClass.cgallery.attr('id');\n if (!selfClass.galleryComputedId) {\n var auxnr = 0;\n var temps = 'vgallery' + auxnr;\n\n while (jQuery('#' + temps).length > 0) {\n auxnr++;\n temps = 'vgallery' + auxnr;\n }\n\n selfClass.galleryComputedId = temps;\n selfClass.cgallery.attr('id', selfClass.galleryComputedId);\n }\n\n\n selfClass.deeplinkGotoItemQueryParam = (window.dzsvg_settings && (window.dzsvg_settings.deeplink_str)) ? String(window.dzsvg_settings.deeplink_str).replace('{{galleryid}}', selfClass.galleryComputedId) : 'the-video';\n\n\n if (is_touch_device()) {\n if (o.nav_type === 'scroller') {\n o.nav_type = 'thumbs';\n }\n }\n\n selfClass.cgallery.addClass('mode-' + o.settings_mode);\n selfClass.cgallery.addClass('nav-' + o.nav_type);\n\n var mainClass = '';\n\n if (typeof (selfClass.cgallery.attr('class')) == 'string') {\n mainClass = selfClass.cgallery.attr('class');\n } else {\n mainClass = selfClass.cgallery.get(0).className;\n }\n if (mainClass.indexOf('skin-') === -1) {\n selfClass.cgallery.addClass(o.design_skin);\n } else {\n o.design_skin = stringUtilGetSkinFromClass(mainClass);\n }\n\n if (o.nav_type === 'scroller') {\n if (o.menu_position === 'bottom' || o.menu_position === 'top') {\n if (o.menuitem_height === 'default' || o.menuitem_height === '') {\n o.menuitem_height = '100';\n }\n }\n }\n\n if (o.settings_mode === 'wall') {\n if (o.design_skin === 'skin-default') {\n o.design_skin = 'skin-wall';\n }\n dzsvg_mode_wall_init(selfClass);\n }\n\n}\n\n\nexport function playlist_inDzsTabsHandle(selfClass, margs) {\n // -- tabs\n var _con = selfClass.cgallery.parent().parent().parent();\n if (selfClass.initOptions.autoplayFirstVideo === 'on') {\n if (margs.called_from !== 'init_restart_in_tabs') {\n\n setTimeout(function () {\n\n margs.called_from = 'init_restart_in_tabs';\n selfClass.init(margs);\n }, 50);\n return false;\n }\n if (_con.hasClass('active') || _con.hasClass('will-be-start-item')) {\n\n } else {\n selfClass.initOptions.autoplayFirstVideo = 'off';\n }\n }\n\n}\n\n\n/**\n * return .previewImg\n * @param _t\n * @returns {null|jQuery|undefined|*}\n */\nexport function playlist_navigation_getPreviewImg(_t) {\n\n let stringPreviewImg = '';\n if (_t.attr('data-previewimg')) {\n stringPreviewImg = _t.attr('data-previewimg');\n } else if (_t.attr('data-audioimg')) {\n\n\n stringPreviewImg = _t.attr('data-audioimg');\n } else if (_t.attr('data-thumb')) {\n stringPreviewImg = _t.attr('data-thumb');\n }\n return stringPreviewImg;\n\n}\n\nexport function playlist_get_real_responsive_ratio(i, selfClass) {\n var $ = jQuery;\n var o = selfClass.initOptions;\n setTimeout(function (targetIndex) {\n var _cach = selfClass._sliderCon.children().eq(targetIndex);\n\n var src = _cach.data('dzsvg-curatedid-from-gallery');\n\n $.get(o.php_media_data_retriever + \"?action=dzsvg_action_get_responsive_ratio&type=\" + _cach.data('dzsvg-curatedtype-from-gallery') + \"&source=\" + src, function (data) {\n\n\n try {\n var json = JSON.parse(data);\n\n var rr = PLAYER_DEFAULT_RESPONSIVE_RATIO;\n\n if (json.height && json.width) {\n\n rr = json.height / json.width;\n }\n\n if (rr.toFixed(3) !== '0.563') {\n _cach.attr('data-responsive_ratio', rr.toFixed(3));\n }\n _cach.attr('data-responsive_ratio-not-known-for-sure', 'off');\n\n\n if (_cach.get(0) && _cach.get(0).api_get_responsive_ratio) {\n _cach.get(0).api_get_responsive_ratio({\n 'reset_responsive_ratio': true\n , 'called_from': 'php_media_data_retriever'\n })\n\n setTimeout(function () {\n selfClass.handleResize_currVideo();\n }, 100);\n }\n } catch (err) {\n console.info('json parse error - ', data);\n }\n\n\n });\n }, 100, i)\n}\n\n/**\n * set player data\n * @param _cachmenuitem\n */\nexport function playlist_navigation_mode_one__set_players_data(_cachmenuitem) {\n\n var attr_arr = ['data-loop', 'data-sourcevp', 'data-source', 'data-videotitle', 'data-type'];\n\n var maxlen = attr_arr.length;\n var ci = 0;\n for (var i5 in attr_arr) {\n var lab4 = attr_arr[i5];\n\n var val = '';\n\n\n val = getDataOrAttr(_cachmenuitem, lab4)\n if (val) {\n\n var lab_sanitized_for_data = lab4.replace('data-', 'vp_');\n _cachmenuitem.data(lab_sanitized_for_data, val);\n }\n\n if (ci > maxlen || ci > 10) {\n break;\n }\n\n ci++;\n }\n}\n\nexport function playlistGotoItemHistoryChangeForLinks(ind_ajaxPage, o, cgallery, _currentTargetPlayer) {\n\n\n var $ = jQuery;\n // --- history API ajax cool stuff\n if (o.settings_enableHistory === 'on' && can_history_api()) {\n var stateObj = {foo: \"bar\"};\n history.pushState(stateObj, \"Gallery Video\", getDataOrAttr(_currentTargetPlayer, 'data-sourcevp'));\n\n $.ajax({\n url: getDataOrAttr(_currentTargetPlayer, 'data-sourcevp'),\n success: function (response) {\n setTimeout(function () {\n $('.history-video-element').eq(0).html($(response).find('.history-video-element').eq(0).html());\n\n $('.toexecute').each(function () {\n var _t = $(this);\n if (!_t.hasClass('executed')) {\n eval(_t.text());\n _t.addClass('executed');\n }\n });\n\n\n if (o.settings_ajax_extraDivs !== '') {\n var extradivs = String(o.settings_ajax_extraDivs).split(',');\n for (let i = 0; i < extradivs.length; i++) {\n\n $(extradivs[i]).eq(0).html(jQuery(response).find(extradivs[i]).eq(0).html());\n }\n }\n\n }, 100);\n },\n error: function (xhr, ajaxOptions, thrownError) {\n console.error('not found ' + ajaxOptions);\n\n ind_ajaxPage++;\n cgallery.children('.preloader').removeClass('is-visible');\n\n }\n });\n\n }\n}\n\n\nexport function detect_startItemBasedOnQueryAddress(deeplinkGotoItemQueryParam = '', cid = '') {\n\n if (get_query_arg(window.location.href, deeplinkGotoItemQueryParam) && jQuery('.videogallery').length === 1) {\n return Number(get_query_arg(window.location.href, deeplinkGotoItemQueryParam)) - 1;\n }\n if (get_query_arg(window.location.href, deeplinkGotoItemQueryParam + '-' + cid)) {\n return Number(get_query_arg(window.location.href, deeplinkGotoItemQueryParam + '-' + cid)) - 1;\n\n }\n\n return null;\n}\n\n\nexport function navigation_detectClassesForPosition(menu_position, _mainNavigation, cgallery) {\n const classMenuMovement = (menu_position === 'right' || menu_position === 'left') ? 'menu-moves-vertically' : 'menu-moves-horizontally';\n const classesClearMenuLocations = 'menu-top menu-bottom menu-right menu-left';\n const classesNewMenuLocation = 'menu-' + menu_position + ' ' + classMenuMovement;\n\n _mainNavigation.removeClass(classesClearMenuLocations);\n _mainNavigation.addClass(classesNewMenuLocation);\n\n cgallery.removeClass(classesClearMenuLocations);\n cgallery.addClass(classesNewMenuLocation);\n}\n\nexport function navigation_initScroller(_navMain) {\n\n var $ = jQuery;\n if ($ && $.fn && $.fn.scroller) {\n _navMain.scroller({\n 'enable_easing': 'on'\n });\n }\n}\n\nexport function assertVideoFromGalleryAutoplayStatus(currNr, o, cgallery) {\n var shouldVideoAutoplay = false;\n if (currNr === -1) {\n if (o.autoplayFirstVideo === 'on') {\n if ((cgallery.parent().parent().parent().hasClass('categories-videogallery')) || !!(cgallery.parent().parent().parent().hasClass('categories-videogallery') && !cgallery.parent().parent().hasClass('gallery-precon')) || !!(cgallery.parent().parent().parent().hasClass('categories-videogallery') && cgallery.parent().parent().hasClass('gallery-precon') && cgallery.parent().parent().hasClass('curr-gallery'))) {\n shouldVideoAutoplay = false;\n } else {\n shouldVideoAutoplay = true;\n }\n }\n\n }\n //-- if it's not the first video\n if (currNr > -1) {\n if (o.autoplayNext === 'on') {\n shouldVideoAutoplay = true;\n // -- todo: sideeffect - maybe move\n o.videoplayersettings['cueVideo'] = 'on';\n }\n }\n\n\n return shouldVideoAutoplay;\n}","\nimport {is_mobile} from \"../js_common/_dzs_helpers\";\n\n/**\n *\n * @param {string} initialVal\n */\nconst ads_sanitizeForSource = (initialVal) => {\n let fout = initialVal;\n fout = fout.replace(/{{doublequot_fordzsvgad}}/g, '\"');\n fout = fout.replace(/</g, '<');\n fout = fout.replace(/>/g, '>');\n\n return fout;\n}\n\nexport const ads_view_setupMarkersOnScrub = (selfClass) => {\n\n for (var i2 = 0; i2 < selfClass.ad_array.length; i2++) {\n selfClass.cthis.find('.scrubbar .scrub').eq(0).before('');\n }\n}\nexport const ads_decode_ads_array = (selfClass) => {\n\n\n // -- decode after parsing json\n for (var lab in selfClass.ad_array) {\n selfClass.ad_array[lab].source = ads_sanitizeForSource(selfClass.ad_array[lab].source)\n }\n\n}\n\nexport const player_setupAd = (selfClass, arg, pargs) => {\n\n\n var margs = {\n 'called_from': 'default'\n\n }\n\n if (pargs) {\n margs = Object.assign(margs, pargs);\n }\n\n var o = selfClass.initOptions;\n\n const {source,type,skip_delay,ad_link} = selfClass.ad_array[arg];\n\n var ad_time = selfClass.ad_array[arg].time;\n\n\n selfClass.ad_array.splice(arg, 1);\n\n selfClass.cthis.appendOnce('
');\n\n selfClass.$adContainer = selfClass.cthis.find('.ad-container').eq(0);\n\n\n var stringVplayerAdStructure = '
';\n }\n\n\n stringVplayerAdStructure += '
';\n selfClass.$adContainer.show();\n selfClass.$adContainer.append(stringVplayerAdStructure);\n\n\n var argsForVideoPlayerAd = {};\n\n\n argsForVideoPlayerAd.design_skin = o.design_skin;\n argsForVideoPlayerAd.cueVideo = 'on';\n argsForVideoPlayerAd.is_ad = 'on';\n argsForVideoPlayerAd.parent_player = selfClass.cthis;\n argsForVideoPlayerAd.user_action = o.user_action;\n selfClass.isAdPlaying = true;\n\n argsForVideoPlayerAd.autoplay = 'on';\n\n\n\n if (ad_time < 0.1 && is_mobile()) {\n // this is invisible\n\n selfClass.$adContainer.children('.vplayer-tobe').addClass('mobile-pretime-ad');\n selfClass.cthis.addClass('pretime-ad-setuped');\n if (o.gallery_object) {\n o.gallery_object.addClass('pretime-ad-setuped');\n }\n }\n\n\n\n selfClass.$adContainer.children('.vplayer-tobe').addClass('is-ad');\n selfClass.$adContainer.children('.vplayer-tobe').vPlayer(argsForVideoPlayerAd);\n\n\n if (o.gallery_object) {\n if (o.gallery_object.get(0) && o.gallery_object.get(0).api_ad_block_navigation) {\n o.gallery_object.get(0).api_ad_block_navigation();\n }\n }\n\n\n setTimeout(function () {\n\n selfClass.cthis.addClass('ad-playing');\n }, 100);\n selfClass.isAdPlaying = true;\n selfClass.pauseMovie({\n 'called_from': 'ad_setup'\n });\n}\n\nexport const player_setup_skipad = (selfClass) => () => {\n\n\n var translate_skipad = 'Skip Ad';\n var dzsvg_translate_youcanskipto = 'you can skip to video in ';\n\n if (window.dzsvg_translate_youcanskipto) {\n dzsvg_translate_youcanskipto = window.dzsvg_translate_youcanskipto;\n }\n if (window.dzsvg_translate_skipad) {\n translate_skipad = window.dzsvg_translate_skipad;\n }\n\n let inter_time_counter_skipad = null;\n let time_counter_skipad = null;\n\n let $ = jQuery;\n\n if (selfClass.ad_status === 'first_played') {\n return false;\n }\n\n if (selfClass.isAd) {\n let skipad_timer = 0;\n\n if (selfClass.dataType === 'image' || selfClass.dataType === 'inline') {\n skipad_timer = 0;\n }\n if (selfClass.dataType === 'selfHosted' || selfClass.dataType === 'youtube') {\n skipad_timer = 1001;\n }\n\n selfClass.cthis.appendOnce('
', '.skipad-con');\n selfClass.$adSkipCon = selfClass.cthis.find('.skipad-con').eq(0);\n\n\n\n if(is_mobile() && selfClass.cthis.attr('data-adskip_delay')){\n\n // -- TBC - skip ad notice on mobile\n selfClass.$adSkipCon.html(\"Play the ad for the skip ad counter to appear\");\n selfClass.$adSkipCon.attr('data-ad-status', 'waiting_for_play');\n }\n\n if (typeof selfClass.cthis.attr('data-adskip_delay') != 'undefined') {\n skipad_timer = Number(selfClass.cthis.attr('data-adskip_delay'));\n }\n\n time_counter_skipad = skipad_timer;\n if (skipad_timer !== 1001) {\n setTimeout(function () {\n\n time_counter_skipad = 0;\n selfClass.$adSkipCon.html(translate_skipad);\n selfClass.$adSkipCon.bind('click', function () {\n if ($(this).attr('data-ad-status') === 'can_be_clicked_for_end_ad') {\n selfClass.handleVideoEnd();\n }\n })\n selfClass.$adSkipCon.attr('data-ad-status', 'can_be_clicked_for_end_ad');\n }, skipad_timer * 1000);\n\n if (skipad_timer > 0) {\n inter_time_counter_skipad = setInterval(tick_counter_skipad, 1000);\n }\n }\n }\n\n\n selfClass.ad_status = 'first_played';\n\n\n function tick_counter_skipad() {\n\n if (time_counter_skipad > 0) {\n time_counter_skipad = time_counter_skipad - 1;\n if (selfClass.$adSkipCon) {\n selfClass.$adSkipCon.html(dzsvg_translate_youcanskipto + time_counter_skipad);\n selfClass.$adSkipCon.attr('data-ad-status', 'ad_status_is_ticking');\n }\n } else {\n clearInterval(inter_time_counter_skipad);\n }\n }\n}\n\n\n","import {getDataOrAttr,} from \"../../js_dzsvg/_dzsvg_helpers\";\n\n\nexport function dzsvg_mode_wall_init(selfClass) {\n const o = selfClass.initOptions;\n\n\n o.menu_position = 'all';\n\n if (o.navigation_gridClassItemsContainer === 'default') {\n o.navigation_gridClassItemsContainer = 'dzs-layout--3-cols';\n }\n}\n\nexport function dzsvg_mode_wall_reinitWallStructure(selfClass) {\n // -- wall\n\n const o = selfClass.initOptions;\n\n selfClass.$navigationItemsContainer.children().each(function () {\n // -- each item\n var $t = jQuery(this);\n\n\n if (!$t.hasClass('wall-treated')) {\n $t.addClass('vgwall-item').addClass(' dzs-layout-item ultibox-item-delegated');\n $t.css({});\n $t.attr('data-suggested-width', o.ultibox_suggestedWidth);\n $t.attr('data-suggested-height', o.ultibox_suggestedHeight);\n $t.attr('data-biggallery', 'vgwall');\n\n if ($t.attr('data-previewimg')) {\n $t.attr('data-thumb-for-gallery', $t.attr('data-previewimg'));\n } else {\n if ($t.data('thumbForGallery')) {\n $t.attr('data-thumb-for-gallery', $t.data('thumbForGallery'));\n }\n }\n\n\n var uriThumb = $t.attr('data-thumb');\n var thumb_imgblock = null;\n\n if ($t.find('.layout-builder--item--type-thumbnail').length) {\n thumb_imgblock = $t.find('.layout-builder--item--type-thumbnail');\n }\n\n\n if (!uriThumb) {\n\n if (thumb_imgblock) {\n if (thumb_imgblock.attr('data-imgsrc')) {\n } else {\n if (thumb_imgblock.attr('src')) {\n uriThumb = $t.find('.imgblock').attr('src');\n } else {\n uriThumb = thumb_imgblock.css('background-image');\n }\n }\n }\n\n }\n\n\n if (uriThumb) {\n\n uriThumb = uriThumb.replace('url(', '');\n uriThumb = uriThumb.replace(')', '');\n uriThumb = uriThumb.replace(/\"/g, '');\n $t.attr('data-thumb-for-gallery', uriThumb);\n }\n // -- setup wall\n if (!$t.attr('data-source')) {\n $t.attr('data-source', getDataOrAttr($t, 'data-sourcevp'));\n }\n $t.attr('data-type', 'video');\n console.log($t, $t.data());\n\n if ($t.data('dataType')) {\n $t.attr('data-video-type', $t.data('dataType'));\n }\n\n $t.addClass('wall-treated')\n }\n\n\n });\n\n\n setTimeout(function () {\n\n setTimeout(selfClass.handleResize, 1000);\n selfClass.isGalleryLoaded = true;\n }, 1500);\n\n}","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","export const defaultPlaylistSettings = {\n\n init_on: \"init\",\n\n\n randomise: \"off\",\n sliderAreaHeight: '300', // -- \"300\" is default, overwritten by responsive_ratio\n\n // -- video play options\n autoplay: \"off\", // -- autoplay ( deprecated )\n autoplayFirstVideo: undefined, // -- autoplay ( deprecated )\n autoplayNext: \"on\", // -- play the next video when one finishes\n cueFirstVideo: 'on', // -- load first video\n\n // -- playlist playing options\n startItem: 'default',\n playorder: \"normal\", // -- normal or reverse\n loop_playlist: \"on\", // -- loop the playlist from the beginning when the end has been reached\n\n\n // -- navigation params\n menu_position: 'right',\n menuitem_width: \"default\", // -- *deprecated\n menuitem_height: \"default\", // -- *deprecated\n\n navigation_isUltibox: false,\n navigation_gridClassItemsContainer: \"default\", // -- only for some modes\n navigation_direction: \"auto\", // -- \"auto\" -> \"vertical\" / \"horizontal\"\n navigation_maxHeight: \"auto\", // -- only for navigation_direction:\"vertical\" AND menu_position:\"top\"|\"bottom\"\n navigation_viewAnimationDuration: null, // -- number\n nav_type_outer_max_height: '', // -- enable a scroller if menu height bigger then max_height *deprecated todo: replace with navigation_maxHeight\n nav_type: \"thumbs\", // -- \"thumbs\" or \"thumbsandarrows\" or \"scroller\"\n // -- navigation params END\n nav_type_outer_grid: 'dzs-layout--4-cols', // -- four-per-row --- only for navPosition: \"top\"|\"bottom\" and navigation_direction: \"vertical\"\n\n\n // -- lightbox suggested params\n ultibox_suggestedWidth: '800', // -- the mode wall video ( when opened ) dimensions\n ultibox_suggestedHeight: '500', // -- the mode wall video ( when opened ) dimensions\n\n\n easing_speed: \"\",\n transition_type: \"slideup\", // --\n design_skin: '', // -- *deprecated -> use class\n videoplayersettings: {}, // -- array or string from \"window.dzsvg_vpconfigs\"\n embedCode: '',\n php_media_data_retriever: '', // -- this can help get the video meta data for youtube and vimeo\n design_navigationUseEasing: 'off',\n settings_enable_linking: 'off', // -- enable deeplinking on video gallery items\n settings_mode: 'normal', /// -- normal / wall / rotator / rotator3d / slider / stack\n mode_normal_video_mode: 'auto', // -- auto or \"one\" ( only one video player )\n settings_disableVideo: 'off', // -- disable the video area\n settings_enableHistory: 'off', // -- html5 history api for link type items\n settings_enableHistory_fornormalitems: 'off', // html5 history api for normal items\n settings_ajax_extraDivs: '', // extra divs to pull in the ajax request\n settings_separation_mode: 'normal', // -- normal ( no pagination ) or pages or scroll or button\n settings_separation_pages: [], settings_separation_pages_number: '5', //=== the number of items per 'page'\n settings_menu_overlay: 'off', // -- an overlay to appear over the menu\n search_field: 'off', // -- an overlay to appear over the menu\n search_field_con: null, // -- an overlay to appear over the menu\n nav_type_auto_scroll: \"off\", // -- auto scroll nav\n settings_trigger_resize: '0', // -- a force trigger resize every x ms\n settings_go_to_next_after_inactivity: '0', // -- go to next track if no action\n init_all_players_at_init: 'off'\n , settings_secondCon: null\n , settings_outerNav: null\n , extra_class_slider_con: '',\n menu_description_format: '', // -- (*deprecated) use the new layout builder-- use something like \"{{number}}{{menuimage}}{{title}}{{desc}}\"\n masonry_options: {}\n}\n","/**\n *\n * @param {jQuery} $elements\n * @param {object} cssProps\n */\nexport function view_setCssPropsForElement($elements, cssProps){\n $elements.css(cssProps);\n}\n\n/**\n *\n * @param cssVal\n * @return {string}\n */\nexport function view_cssConvertForPx(cssVal){\n if(cssVal===''){\n return cssVal;\n }\n if(['auto','px','%',''].indexOf(cssVal)===-1){\n return cssVal + 'px';\n }\n\n return cssVal;\n}\n\n","export const defaultSettings = {\n navigationType: 'hover', // -- \"hover\" or \"scroller\" or \"thumbsAndArrows\" or \"simple\"\n navigationSkin: 'skin-default',\n menuPosition: 'bottom', // \"bottom\" / \"top\" / \"right\"\n navigation_direction: 'auto', // -- \"auto\" or \"vertical\" or \"horizontal\"\n menuItemWidth: 'default', // -- number or \"default\"\n menuItemHeight: 'default',\n navigationSpace: undefined,\n feedItemNotInitedClass: '.vplayer-tobe',\n isAutoScrollToCurrent: false,\n isSyncMainAreaAndNavigationAreas: true,\n viewEnableMediaArea: true,\n viewNavigationIsUltibox: false,\n isUseEasing: true,\n parentSkin: '',\n filter_structureMenuItemContent: null,\n viewAnimationDuration: null,\n navigationStructureHtml: '',\n gridClassItemsContainer: '', // -- used for \"simple\" or \"scroller\"\n}\n\n\nexport const NAVIGATION_DEFAULT_TIMEOUT = 320;\nexport const NAVIGATION_VIEW_MENU_VERTICAL_DEFAULT_ITEM_WIDTH = 254;","import {playlist_navigationStructureAssignVars} from \"../_navigation-helpers\";\nimport {view_setCssPropsForElement} from \"../../../shared/_viewFunctions\";\nimport {sanitizeToCssPx} from \"../../../js_common/_dzs_helpers\";\n\nexport function view_navigation_calculateDims(selfInstance, pargs = {}){\n\n\n const calculateDimsArgs = Object.assign({\n forceMainAreaHeight: null\n }, pargs)\n\n\n const parentClass = selfInstance.parentClass;\n const navAttributes = selfInstance.navAttributes;\n\n selfInstance.mainAreaHeight = calculateDimsArgs.forceMainAreaHeight ? calculateDimsArgs.forceMainAreaHeight : selfInstance.$mainArea.outerHeight();\n\n\n let totalAreaHeightPixels = 0;\n selfInstance.totalAreaWidth = parentClass.$navigationAndMainArea.outerWidth();\n selfInstance.totalAreaHeight = parentClass.$navigationAndMainArea.outerHeight();\n let mainNavigationDesiredWidth = navAttributes.menuItemWidth;\n\n if (navAttributes.navigation_direction === 'vertical') {\n selfInstance.navigation_mainDimensionTotalSize = selfInstance.$mainNavigationItemsContainer.height();\n selfInstance.navigation_mainDimensionClipSize = selfInstance.$mainNavigationClipped.height();\n selfInstance.navigation_mainDimensionItemSize = selfInstance.$mainNavigationItemsContainer.children().eq(0).height();\n }\n\n if (navAttributes.navigation_direction === 'horizontal') {\n selfInstance.navigation_mainDimensionTotalSize = selfInstance.$mainNavigationItemsContainer.width();\n selfInstance.navigation_mainDimensionClipSize = selfInstance.$mainNavigationClipped.width();\n selfInstance.navigation_mainDimensionItemSize = selfInstance.$mainNavigationItemsContainer.children().eq(0).width();\n }\n selfInstance.nav_max_pages = Math.ceil((selfInstance.navigation_mainDimensionTotalSize / selfInstance.navigation_mainDimensionClipSize));\n\n parentClass.$navigationAndMainArea.children().each(function () {\n const $navigationChild = selfInstance.$(selfInstance);\n totalAreaHeightPixels += $navigationChild.get(0).scrollHeight;\n })\n\n\n // -- ultra-responsive\n // todo: remove dependency on parentClass\n if (selfInstance.configObj.viewEnableMediaArea && (navAttributes.menuPosition === 'right' || navAttributes.menuPosition === 'left')) {\n\n if (selfInstance.totalAreaWidth - mainNavigationDesiredWidth < mainNavigationDesiredWidth) {\n\n if (selfInstance.containerComponent) {\n selfInstance.containerComponent.addClass('ultra-responsive');\n }\n parentClass.$navigationAndMainArea.addClass('nav-is-ultra-responsive');\n selfInstance.ultraResponsive = true;\n } else {\n\n parentClass.$navigationAndMainArea.removeClass('nav-is-ultra-responsive');\n selfInstance.ultraResponsive = false;\n }\n }\n\n\n if (navAttributes.menuPosition === 'top' || navAttributes.menuPosition === 'bottom') {\n\n }\n if (navAttributes.menuPosition === 'right' || navAttributes.menuPosition === 'left') {\n if (!selfInstance.ultraResponsive) {\n if (navAttributes.menuItemWidth) {\n\n\n view_setCssPropsForElement(selfInstance.$mainNavigation, {\n 'flex-basis': `${sanitizeToCssPx(navAttributes.menuItemWidth)}`\n })\n }\n\n if (selfInstance.viewOptions.isSyncMainAreaAndNavigationAreas) {\n view_setCssPropsForElement(selfInstance.$mainNavigation, {\n 'height': `${selfInstance.mainAreaHeight}`\n })\n }\n } else {\n\n }\n\n }\n\n\n let navWidth = 0;\n\n\n selfInstance.totalItemsWidth = parentClass.$navigationItemsContainer.outerWidth();\n selfInstance.totalItemsHeight = parentClass.$navigationItemsContainer.outerHeight();\n\n // -- hover\n if (navAttributes.navigationType === 'hover' || navAttributes.navigationType === 'thumbsAndArrows') {\n if (navAttributes.navigation_direction === 'horizontal') {\n\n navWidth = 0;\n parentClass.$navigationItemsContainer.children().each(function () {\n const $t = selfInstance.$(this);\n navWidth += $t.outerWidth();\n });\n\n\n\n if (navWidth > selfInstance.totalAreaWidth) {\n selfInstance.$mainNavigation.unbind('mousemove', selfInstance.handleMouse);\n selfInstance.$mainNavigation.bind('mousemove', selfInstance.handleMouse);\n selfInstance.containerComponent.removeClass('navWidth-bigger-then-totalWidth')\n\n } else {\n\n selfInstance.containerComponent.addClass('navWidth-bigger-then-totalWidth')\n\n view_setCssPropsForElement(parentClass.$navigationItemsContainer, {'left': ''})\n selfInstance.$mainNavigation.unbind('mousemove', selfInstance.handleMouse);\n\n }\n\n }\n if (navAttributes.navigation_direction === 'vertical') {\n if (selfInstance.totalItemsHeight > selfInstance.totalAreaHeight) {\n selfInstance.$mainNavigation.unbind('mousemove', selfInstance.handleMouse);\n selfInstance.$mainNavigation.bind('mousemove', selfInstance.handleMouse);\n } else {\n view_setCssPropsForElement(parentClass.$navigationItemsContainer, {'top': ''})\n selfInstance.$mainNavigation.unbind('mousemove', selfInstance.handleMouse);\n }\n\n\n }\n\n }\n}\nexport function view_navigation_generateNavigationItem(structureMenuItemContentInner, $currentItemFeed, configObj, navAttributes, isUltiboxItem = false){\n\n let final_structureMenuItemContent = '';\n\n\n if (structureMenuItemContentInner) {\n structureMenuItemContentInner = playlist_navigationStructureAssignVars($currentItemFeed, structureMenuItemContentInner);\n // -- add parent default skin todo: we will have navigation skin\n structureMenuItemContentInner = structureMenuItemContentInner.replace('
';\n\n\n final_structureMenuItemContent += '';\n\n\n // -- function\n if (configObj.filter_structureMenuItemContent) {\n final_structureMenuItemContent = configObj.filter_structureMenuItemContent(final_structureMenuItemContent, $currentItemFeed);\n }\n\n return final_structureMenuItemContent;\n\n}","\n/**\n * we need selfClass.navigation_customStructure\n * @param {DzsVideoGallery} selfClass\n * @return {string}\n */\nexport function playlist_navigationGenerateStructure(selfClass) {\n\n let desc = selfClass.navigation_customStructure;\n if(!desc){\n desc = '';\n }\n return desc;\n\n}\n\n\n/**\n *\n * @param {jQuery} $currentVideoPlayer\n * @param {string} structureMenuItemContentInner\n * @returns {string}\n */\nexport function playlist_navigationStructureAssignVars ($currentVideoPlayer, structureMenuItemContentInner) {\n\n /**\n *\n * @param {string} currentStructure\n * @param {string} placeholderText\n * @param {string} argInStructure\n */\n function replaceInNav(currentStructure, placeholderText, argInStructure) {\n\n let feedValue = '';\n\n if($currentVideoPlayer.find(argInStructure).length){\n feedValue = $currentVideoPlayer.find(argInStructure).eq(0).html();\n }\n \n return currentStructure.replace(placeholderText, feedValue);\n }\n\n structureMenuItemContentInner = replaceInNav(structureMenuItemContentInner, '{{layout-builder.replace-title}}', '.feed-menu-title');\n structureMenuItemContentInner = replaceInNav(structureMenuItemContentInner, '{{layout-builder.replace-menu-description}}', '.feed-menu-desc');\n structureMenuItemContentInner = replaceInNav(structureMenuItemContentInner, '{{layout-builder.replace-thumbnail-url}}', '.feed-menu-image');\n\n\n return structureMenuItemContentInner;\n}","import {\n defaultSettings,\n NAVIGATION_DEFAULT_TIMEOUT,\n NAVIGATION_VIEW_MENU_VERTICAL_DEFAULT_ITEM_WIDTH\n} from \"./configs/_navigationSettings\";\nimport {is_android, is_ios, is_touch_device} from \"../../js_common/_dzs_helpers\";\nimport {view_cssConvertForPx, view_setCssPropsForElement} from \"../../shared/_viewFunctions\";\nimport {view_navigation_calculateDims, view_navigation_generateNavigationItem} from \"./inc/_navigation-view\";\n\n\nMath.easeIn = function (t, b, c, d) {\n\n return -c * (t /= d) * (t - 2) + b;\n\n};\nMath.easeOut = function (t, b, c, d) {\n t /= d;\n return -c * t * (t - 2) + b;\n};\n\nexport class DzsNavigation {\n\n\n /**\n *\n * @param parentClass\n * @param argOptions\n * @param $\n */\n constructor(parentClass, argOptions, $) {\n\n\n this.$ = $;\n this.parentClass = parentClass;\n this.initOptions = null;\n this.navAttributes = null;\n this.$mainArea = null;\n /** */\n this.$mainNavigation = null;\n this.$mainNavigationClipped = null;\n this.$mainNavigationItemsContainer = null;\n this.$containerComponent = null;\n this.ultraResponsive = false;\n this.menuPosition = null;\n this.configObj = argOptions;\n\n this.viewOptions = {\n isSyncMainAreaAndNavigationAreas: true\n }\n\n // -- dimensions\n this.totalItemsWidth = 0;\n this.totalItemsHeight = 0;\n this.totalAreaWidth = 0;\n this.totalAreaHeight = 0;\n this.mainAreaHeight = 0;\n\n // -- thumbsAndArrows\n this.currPage = 0;\n this.nav_max_pages = 0;\n this.navigation_extraFixedElementsSize = 0;\n this.navigation_mainDimensionTotalSize = 0;\n this.navigation_mainDimensionClipSize = 0;\n this.navigation_mainDimensionItemSize = 0;\n\n this.navigation_customStructure = '';\n\n this.initClass();\n\n }\n\n /**\n *\n * @param {object} navAttributes\n * @returns {object}\n */\n computeNavAttributes(navAttributes) {\n\n if (navAttributes.menuPosition === 'right' || navAttributes.menuPosition === 'left') {\n navAttributes.navigation_direction = 'vertical';\n }\n if (navAttributes.menuPosition === 'bottom' || navAttributes.menuPosition === 'top') {\n if (navAttributes.navigation_direction === 'auto') {\n navAttributes.navigation_direction = 'horizontal';\n }\n }\n\n if (navAttributes.navigationType === 'simple') {\n navAttributes.navigation_direction = 'none';\n }\n\n return navAttributes;\n }\n\n computeInstanceProps() {\n\n }\n\n /**\n *\n * @param {jQuery} $feedItemsContainer\n */\n addNavigationItems($feedItemsContainer) {\n\n const itemsLength = $feedItemsContainer.find(this.configObj.feedItemNotInitedClass).length;\n for (let i = 0; i < itemsLength; i++) {\n let $currentItemFeed = $feedItemsContainer.find(this.configObj.feedItemNotInitedClass).eq(i);\n\n let structureMenuItemContentInner = this.navigation_customStructure;\n\n const final_structureMenuItemContent = view_navigation_generateNavigationItem(structureMenuItemContentInner, $currentItemFeed, this.configObj, this.navAttributes, this.configObj.viewNavigationIsUltibox);\n\n const $currentItemFeed_ = $currentItemFeed.get(0);\n\n $currentItemFeed.addClass('nav-treated');\n\n\n this.$mainNavigationItemsContainer.append(final_structureMenuItemContent);\n const $justAdded = this.$mainNavigationItemsContainer.children().last();\n for (let i = 0, atts = $currentItemFeed_.attributes, n = atts.length; i < n; i++) {\n if (atts[i].nodeName && atts[i].value) {\n $justAdded.data(atts[i].nodeName, atts[i].value);\n }\n }\n }\n }\n\n initClass() {\n const selfInstance = this;\n const parentClass = this.parentClass;\n this.configObj = Object.assign(Object.assign(defaultSettings, {}), this.configObj);\n const newOptions = Object.assign({}, this.configObj);\n this.initOptions = {...newOptions};\n this.navAttributes = {...newOptions};\n this.menuPosition = this.navAttributes.menuPosition;\n\n this.navigation_customStructure = this.navAttributes.navigationStructureHtml;\n\n const navAttributes = this.computeNavAttributes(this.navAttributes);\n\n let isMenuMoveLocked = false,\n navMain_mousex = 0,\n navMain_mousey = 0\n ;\n\n\n let target_viy = 0,\n target_vix = 0,\n begin_viy = 0,\n begin_vix = 0,\n finish_viy = 0,\n finish_vix = 0,\n change_viy = 0,\n change_vix = 0\n ;\n\n\n const OFFSET_BUFFER = 25;\n let DURATION_EASING = 20;\n\n\n init();\n\n function init() {\n\n\n if (parentClass) {\n if (parentClass.cgallery) {\n selfInstance.containerComponent = selfInstance.parentClass.cgallery;\n } else {\n if (parentClass.cthis) {\n selfInstance.containerComponent = selfInstance.parentClass.cthis;\n }\n }\n }\n\n\n sanitizeInitValues();\n\n\n setupStructure();\n if (is_touch_device()) {\n selfInstance.$mainNavigation.parent().addClass('is-touch');\n }\n\n if (navAttributes.gridClassItemsContainer) {\n selfInstance.$mainNavigationItemsContainer.addClass(navAttributes.gridClassItemsContainer);\n }\n\n\n selfInstance.nav_thumbsandarrows_gotoPage = nav_thumbsandarrows_gotoPage;\n selfInstance.handleMouse = handleMouse;\n\n setTimeout(init_navIsReady, 100);\n }\n\n\n function sanitizeInitValues() {\n\n\n if (navAttributes.menuPosition === 'left' || navAttributes.menuPosition === 'right') {\n if (isNaN(Number(selfInstance.initOptions.menuItemWidth)) || selfInstance.initOptions.menuItemWidth === '' || selfInstance.initOptions.menuItemWidth === 'default') {\n navAttributes.menuItemWidth = NAVIGATION_VIEW_MENU_VERTICAL_DEFAULT_ITEM_WIDTH;\n }\n }\n\n if (!navAttributes.viewEnableMediaArea) {\n selfInstance.viewOptions.isSyncMainAreaAndNavigationAreas = false;\n }\n }\n\n\n if (selfInstance.initOptions.viewAnimationDuration !== null) {\n DURATION_EASING = selfInstance.initOptions.viewAnimationDuration;\n }\n\n function init_navIsReady() {\n if (is_touch_device()) {\n navAttributes.isUseEasing = false;\n }\n\n\n if (navAttributes.navigationType === 'hover') {\n handleEnterFrame();\n }\n\n\n if (navAttributes.isAutoScrollToCurrent) {\n if (navAttributes.navigationType === 'hover') {\n\n\n setTimeout(function () {\n animate_to_curr_thumb();\n\n }, 20);\n }\n }\n\n }\n\n\n function setupStructure() {\n let structure_baseLayout = '
';\n structure_baseLayout += '
';\n\n parentClass.$navigationAndMainArea.addClass(`navPosition-${navAttributes.menuPosition} navType-${navAttributes.navigationType}`);\n\n parentClass.$navigationAndMainArea.append('
');\n parentClass.$navigationAndMainArea.append(structure_baseLayout);\n\n\n selfInstance.$mainArea = parentClass.$navigationAndMainArea.find('.media--main-area');\n selfInstance.$mainNavigation = parentClass.$navigationAndMainArea.find('.main-navigation');\n selfInstance.$mainNavigationClipped = selfInstance.$mainNavigation.find('.navigation--clipped-container');\n selfInstance.$mainNavigationItemsContainer = selfInstance.$mainNavigation.find('.navigation--total-container');\n\n\n if (navAttributes.menuItemWidth === 'default') {\n navAttributes.menuItemWidth = '';\n }\n if (navAttributes.menuItemHeight === 'default') {\n navAttributes.menuItemHeight = '';\n }\n\n\n if (navAttributes.menuPosition === 'top' || navAttributes.menuPosition === 'bottom') {\n\n }\n\n\n if (navAttributes.menuPosition === 'top') {\n selfInstance.$mainArea.before(selfInstance.$mainNavigation);\n }\n\n\n if (navAttributes.navigationSpace) {\n parentClass.$navigationAndMainArea.css({\n gap: view_cssConvertForPx(navAttributes.navigationSpace)\n })\n }\n\n if (navAttributes.navigationType === 'scroller') {\n if (navAttributes.navigation_direction === 'horizontal') {\n view_setCssPropsForElement(selfInstance.$mainNavigation, {\n 'minHeight': navAttributes.menuItemHeight + 'px'\n })\n }\n }\n\n if (navAttributes.navigationType === 'thumbsAndArrows') {\n selfInstance.$mainNavigation.prepend('
');\n selfInstance.$mainNavigation.append('
');\n\n selfInstance.$mainNavigation.find('.thumbs-arrow-left,.thumbs-arrow-right').bind('click', handleClick_navigationArrow);\n }\n\n if (!selfInstance.configObj.viewEnableMediaArea) {\n parentClass.$navigationAndMainArea.addClass('view--disable-video-area');\n }\n\n parentClass.$navigationAndMainArea.addClass(`layout-builder--menu-items--${navAttributes.navigationSkin}`)\n }\n\n function handleClick_navigationArrow() {\n\n\n var $t = jQuery(this);\n\n if ($t.hasClass('thumbs-arrow-left')) {\n gotoPrevPage();\n }\n if ($t.hasClass('thumbs-arrow-right')) {\n gotoNextPage();\n }\n }\n\n\n function gotoNextPage() {\n var tempPage = selfInstance.currPage;\n\n tempPage++;\n nav_thumbsandarrows_gotoPage(tempPage);\n\n }\n\n function gotoPrevPage() {\n if (selfInstance.currPage === 0) {\n return;\n }\n\n selfInstance.currPage--;\n nav_thumbsandarrows_gotoPage(selfInstance.currPage);\n\n }\n\n /**\n * called only from thumbsandarrows\n * @param {number} targetPageNr\n */\n function nav_thumbsandarrows_gotoPage(targetPageNr) {\n\n if (targetPageNr > selfInstance.nav_max_pages || navAttributes.navigationType !== 'thumbsAndArrows') {\n return;\n }\n\n\n selfInstance.$mainNavigation.find('.nav--thumbsAndArrows--arrow').removeClass('arrow-is-inactive');\n\n if (targetPageNr === 0) {\n selfInstance.$mainNavigation.find('.thumbs-arrow-left').addClass('arrow-is-inactive');\n }\n if (targetPageNr >= selfInstance.nav_max_pages) {\n selfInstance.$mainNavigation.find('.thumbs-arrow-right').addClass('arrow-is-inactive');\n }\n\n if (targetPageNr >= selfInstance.nav_max_pages) {\n if (navAttributes.navigation_direction === \"vertical\") {\n\n const targetTop = -(selfInstance.navigation_mainDimensionTotalSize - selfInstance.navigation_mainDimensionClipSize);\n view_setCssPropsForElement(selfInstance.$mainNavigationItemsContainer, {\n 'top': targetTop,\n 'left': 0\n })\n }\n if (navAttributes.navigation_direction === \"horizontal\") {\n\n view_setCssPropsForElement(selfInstance.$mainNavigationItemsContainer, {\n 'left': -(selfInstance.navigation_mainDimensionTotalSize - selfInstance.navigation_mainDimensionClipSize),\n 'top': 0\n })\n }\n\n } else {\n if (navAttributes.navigation_direction === \"vertical\") {\n let firstItemInSightWidth = selfInstance.$mainNavigationItemsContainer.children().eq(selfInstance.currPage).height();\n selfInstance.$mainNavigationItemsContainer.css({\n 'top': firstItemInSightWidth * -targetPageNr,\n 'left': 0\n });\n\n }\n\n if (navAttributes.navigation_direction === \"horizontal\") {\n\n let firstItemInSightWidth = selfInstance.$mainNavigationItemsContainer.children().eq(selfInstance.currPage).width();\n selfInstance.$mainNavigationItemsContainer.css({\n 'left': firstItemInSightWidth * -targetPageNr,\n 'top': 0\n });\n }\n }\n selfInstance.currPage = targetPageNr;\n }\n\n /**\n * handle mouse for the parentClass.$navigationItemsContainer element\n * @param e\n * @returns {boolean}\n */\n function handleMouse(e) {\n\n\n navMain_mousey = (e.pageY - selfInstance.$mainNavigationClipped.offset().top)\n navMain_mousex = (e.pageX - selfInstance.$mainNavigationClipped.offset().left)\n\n\n if (!is_ios() && !is_android()) {\n\n\n if (isMenuMoveLocked) {\n return false;\n }\n\n if (navAttributes.navigation_direction === \"vertical\") {\n\n\n navigation_prepareAnimateMenuY(navMain_mousey, {\n called_from: \"handleMouse\"\n });\n\n\n }\n if (navAttributes.navigation_direction === \"horizontal\") {\n\n\n navigation_prepareAnimateMenuX(navMain_mousex, {\n called_from: \"handleMouse\"\n });\n\n\n }\n\n } else {\n\n return false;\n }\n\n }\n\n\n /**\n * only for navType: \"hover\"\n * @returns {boolean}\n */\n function handleEnterFrame() {\n\n\n if (isNaN(target_viy)) {\n target_viy = 0;\n }\n\n if (DURATION_EASING === 0) {\n window.requestAnimationFrame(handleEnterFrame);\n return false;\n }\n\n if (navAttributes.navigation_direction === 'vertical') {\n begin_viy = target_viy;\n change_viy = finish_viy - begin_viy;\n\n\n target_viy = Number(Math.easeIn(1, begin_viy, change_viy, DURATION_EASING).toFixed(4));\n\n\n if (!is_ios() && !is_android()) {\n\n view_setCssPropsForElement(parentClass.$navigationItemsContainer, {\n 'transform': 'translate3d(0,' + target_viy + 'px,0)'\n })\n }\n\n }\n\n\n if (navAttributes.navigation_direction === 'horizontal') {\n begin_vix = target_vix;\n change_vix = finish_vix - begin_vix;\n\n\n target_vix = Number(Math.easeIn(1, begin_vix, change_vix, DURATION_EASING).toFixed(4));\n\n\n if (!is_ios() && !is_android()) {\n view_setCssPropsForElement(parentClass.$navigationItemsContainer, {\n 'transform': 'translate3d(' + target_vix + 'px,0,0)'\n })\n }\n\n }\n\n\n window.requestAnimationFrame(handleEnterFrame);\n }\n\n\n function navigation_getNavPosition(navMain_mouse) {\n\n const clipSize = (selfInstance.navigation_mainDimensionClipSize);\n let viewMax = (selfInstance.navigation_mainDimensionTotalSize) - clipSize;\n const viewRatio = navMain_mouse / clipSize;\n let finish_viewIndex = (((navMain_mouse + viewRatio * OFFSET_BUFFER + 2 - OFFSET_BUFFER) / clipSize)) * -(selfInstance.navigation_mainDimensionTotalSize);\n\n if (finish_viewIndex > 0) {\n finish_viewIndex = 0;\n }\n if (finish_viewIndex < -viewMax) {\n finish_viewIndex = -viewMax;\n }\n\n\n return finish_viewIndex;\n }\n\n function navigation_prepareAnimateMenuX(navMain_mousex) {\n finish_vix = navigation_getNavPosition(navMain_mousex);\n\n if (navAttributes.isUseEasing) {\n } else {\n animate_menu_x(finish_vix);\n }\n }\n\n function navigation_prepareAnimateMenuY(navMain_mousey) {\n\n finish_viy = navigation_getNavPosition(navMain_mousey);\n\n if (navAttributes.isUseEasing) {\n } else {\n view_animateMenuVertical(finish_viy);\n }\n }\n\n\n selfInstance.animate_to_curr_thumb = animate_to_curr_thumb;\n\n function animate_to_curr_thumb() {\n\n\n if (is_touch_device()) {\n\n }\n\n\n if (navAttributes.navigationType === 'hover') {\n\n\n var $activeNavItem = parentClass.$navigationItemsContainer.find('.dzs-navigation--item').eq(0);\n\n\n if (parentClass.$navigationItemsContainer.find('.dzs-navigation--item.active').length) {\n $activeNavItem = parentClass.$navigationItemsContainer.find('.dzs-navigation--item.active').eq(0);\n }\n\n\n var rat = ($activeNavItem.offset().top - parentClass.$navigationItemsContainer.offset().top) / (parentClass.$navigationItemsContainer.outerHeight() - selfInstance.$mainNavigationClipped.parent().outerHeight());\n\n\n if (navAttributes.navigation_direction === 'vertical') {\n\n if (parentClass.$navigationItemsContainer.outerHeight() > selfInstance.$mainNavigationClipped.parent().outerHeight()) {\n\n view_animateMenuVertical(rat * (parentClass.$navigationItemsContainer.outerHeight() - selfInstance.$mainNavigationClipped.parent().outerHeight()), {\n 'called_from': 'animate_to_curr_thumb'\n });\n }\n } else {\n\n if (navAttributes.navigation_direction === 'horizontal') {\n\n rat = ($activeNavItem.offset().left - parentClass.$navigationItemsContainer.offset().left) / (parentClass.$navigationItemsContainer.outerWidth() - selfInstance.$mainNavigationClipped.outerWidth());\n\n\n navigation_prepareAnimateMenuX(rat * selfInstance.$mainNavigationClipped.outerWidth());\n }\n\n\n }\n }\n if (navAttributes.navigationType === 'scroller') {\n\n var coordinateToActiveItem = 0;\n\n if (parentClass.$navigationItemsContainer.find('.dzs-navigation--item.active').length) {\n\n coordinateToActiveItem = parentClass.$navigationItemsContainer.find('.dzs-navigation--item.active').offset().top - parentClass.$navigationItemsContainer.eq(0).offset().top;\n\n\n setTimeout(function () {\n\n if (selfInstance.$mainNavigationClipped.get(0).api_scrolly_to) {\n selfInstance.$mainNavigationClipped.get(0).api_scrolly_to(coordinateToActiveItem);\n }\n }, NAVIGATION_DEFAULT_TIMEOUT);\n }\n\n }\n }\n\n\n function animate_menu_x() {\n\n\n if (!is_ios() && !is_android()) {\n if (navAttributes.isUseEasing) {\n\n view_setCssPropsForElement(parentClass.$navigationItemsContainer, {\n 'transform': 'translate3d(' + finish_vix + 'px, ' + 0 + 'px, 0)'\n })\n }\n\n\n }\n }\n\n\n function view_animateMenuVertical(viewIndex, pargs) {\n\n\n // -- positive number viewIndexX\n var margs = {\n\n called_from: \"default\"\n }\n\n if (pargs) {\n margs = jQuery.extend(margs, pargs);\n }\n\n\n if (!is_touch_device()) {\n if (!navAttributes.isUseEasing) {\n\n view_setCssPropsForElement(parentClass.$navigationItemsContainer, {\n 'transform': 'translate3d(0, ' + (finish_viy) + 'px, 0)'\n })\n } else {\n if ((-finish_viy) < selfInstance.navigation_mainDimensionTotalSize - selfInstance.$mainNavigation.outerHeight()) {\n finish_viy = -(selfInstance.navigation_mainDimensionTotalSize - selfInstance.$mainNavigation.outerHeight());\n }\n finish_viy = -viewIndex;\n }\n\n\n } else {\n if (margs.called_from === 'animate_to_curr_thumb') {\n setTimeout(function () {\n selfInstance.$mainNavigation.scrollTop(viewIndex);\n }, 1500);\n }\n }\n }\n\n\n }\n\n calculateDims(pargs = {}) {\n const selfInstance = this;\n view_navigation_calculateDims(selfInstance, pargs);\n }\n}\n","'use strict';\nimport {defaultPlaylistSettings} from './configs/_playlistSettings';\nimport {\n assertVideoFromGalleryAutoplayStatus,\n detect_startItemBasedOnQueryAddress,\n navigation_initScroller,\n playlist_inDzsTabsHandle,\n playlist_initialConfig,\n playlist_initSetupInitial,\n playlist_navigation_getPreviewImg,\n playlistGotoItemHistoryChangeForLinks,\n playlistGotoItemHistoryChangeForNonLinks\n} from \"./js_dzsvg/playlist/_playlistHelpers\";\nimport {\n convertPluginOptionsToFinalOptions,\n detect_videoTypeAndSourceForElement,\n dzsvgExtraWindowFunctions,\n fullscreen_status,\n init_navigationOuter,\n setup_videogalleryCategories,\n} from \"./js_dzsvg/_dzsvg_helpers\";\n\nimport {\n add_query_arg,\n get_query_arg,\n is_ios,\n is_touch_device,\n loadScriptIfItDoesNotExist,\n} from \"./js_common/_dzs_helpers\";\nimport {secondCon_initFunctions} from \"./js_dzsvg/components/_second_con\";\nimport {buildPlaylist} from \"./js_dzsvg/playlist/_playlistBuilderFunctions\";\nimport {dzsvg_mode_wall_reinitWallStructure} from \"./js_playlist/mode/_mode-wall\";\nimport {dzsvg_playlist_setupEmbedAndShareButtons,} from \"./js_playlist/_playlistAuxiliaryButtons\";\nimport {\n PLAYLIST_DEFAULT_TIMEOUT,\n PLAYLIST_HEIGHT_IS_WINDOW_MAX_OFFSET,\n PLAYLIST_VIEW_FULLSCREEN_CLASS\n} from \"./configs/Constants\";\nimport {view_cssConvertForPx, view_setCssPropsForElement} from \"./shared/_viewFunctions\";\nimport {view_structureGenerateNavigation} from \"./js_playlist/_viewPlaylistStructure\";\n\n\n/**\n * @property {jQuery} _sliderCon\n * @property $feedItemsContainer\n * @property navigation_customStructure\n * @property _mainNavigation\n */\nclass DzsVideoGallery {\n constructor(argThis, argOptions, $) {\n\n\n this.argThis = argThis;\n this.argOptions = {...argOptions};\n this.viewOptions = {\n enableVideoArea: true,\n }\n this.$ = $;\n\n this._sliderCon = null;\n this.$sliderMain = null;\n this.$navigationAndMainArea = null;\n this._mainNavigation = null;\n this.$navigationClippedContainer = null;\n this.$feedItemsContainer = null;\n this.navigation_customStructure = '';\n this.galleryComputedId = '';\n this.deeplinkGotoItemQueryParam = '';\n this.$galleryButtons = null;\n this.$containerForItems = null;\n this.$navigationItemsContainer = null;\n /** videogallery--navigation-container */\n this.$searchFieldCon = null;\n this.videoAreaWidth = 0;\n\n this.feed_socialCode = '';\n\n this.Navigation = null;\n\n\n this.isEmbedOpened = false;\n this.isShareOpened = false;\n this.isGalleryLoaded = false; // -- gallery loaded sw, when dimensions are set, will take a while if wall\n this.classInit();\n }\n\n classInit() {\n\n\n var cgallery = null\n ;\n var nrChildren = 0;\n //gallery dimensions\n let videoAreaHeight\n , totalWidth\n , totalHeight\n , last_totalWidth = 0 // -- so we can compare to the last values\n , last_totalHeight = 0\n , navWidth = 0 // the _navCon width\n , ww\n , heightWindow\n , last_height_for_videoheight = 0 // -- last responsive_ratio height known\n ;\n\n var isMenuMovementLocked = false;\n\n var inter_start_the_transition = null;\n\n\n let isMergeSocialIconsIntoOne = false; // -- merge all socials into one\n\n\n var currNr = -1\n , currNr_curr = -1 // current transitioning\n , nextNr = -1\n , prevNr = -1\n , last_arg = 0\n ;\n var $currVideoPlayer;\n\n\n var $galleryParent\n , $galleryCon\n , heightInitial = -1\n ;\n var conw = 0;\n\n var wpos = 0\n , heightPosition = 0\n ;\n\n var isBusyTransition = false\n , isTransitionStarted = false\n , isBusyAjax = false\n ;\n var isFirstPlayed = false\n , isMouseOver = false\n , isFirstTransition = false // -- first transition made\n ;\n\n\n var i = 0;\n\n\n var menuitem_width = 0\n , menuitem_height = 0\n\n var menu_position = 'right';\n\n\n var settings_separation_nr_pages = 0;\n var ind_ajaxPage = 0;\n\n\n var init_settings = {};\n\n\n var action_playlist_end = null;\n\n var $ = this.$;\n var o = this.argOptions;\n cgallery = $(this.argThis);\n var selfClass = this;\n\n\n selfClass.init = init;\n selfClass.cgallery = cgallery;\n selfClass.initOptions = o;\n\n\n init_settings = $.extend({}, o);\n\n playlist_initSetupInitial(selfClass, o);\n\n\n menu_position = o.menu_position;\n\n\n nrChildren = selfClass.$feedItemsContainer.children('.vplayer,.vplayer-tobe').length;\n\n\n if (o.init_on === 'init') {\n init({\n 'called_from': 'init'\n });\n }\n if (o.init_on === 'scroll') {\n $(window).on('scroll', handleScroll);\n handleScroll();\n }\n\n\n function init(pargs) {\n\n\n var margs = {\n caller: null\n , 'called_from': 'default'\n }\n\n\n if (selfClass.cgallery.hasClass('dzsvg-inited')) {\n return false;\n }\n\n if (pargs) {\n margs = $.extend(margs, pargs);\n }\n\n selfClass.handleResize = handleResize;\n selfClass.handleResize_currVideo = handleResize_currVideo;\n selfClass.apiResponsiveRationResize = apiResponsiveRationResize;\n\n if (cgallery.parent().parent().parent().hasClass('tab-content')) {\n // -- tabs\n playlist_inDzsTabsHandle(selfClass, margs);\n }\n\n selfClass.cgallery.addClass('dzsvg-inited');\n\n $galleryCon = cgallery.parent();\n $galleryParent = cgallery.parent();\n\n\n if ($galleryParent.parent().hasClass('gallery-is-fullscreen')) {\n if (o.videoplayersettings.responsive_ratio === 'detect') {\n o.videoplayersettings.responsive_ratio = 'default';\n }\n\n }\n\n\n // -- separation - PAGES\n let elimi = 0;\n\n\n if (o.settings_separation_mode === 'pages') {\n\n let dzsvg_page = get_query_arg(window.location.href, 'dzsvgpage');\n\n\n if (typeof dzsvg_page == \"undefined\") {\n dzsvg_page = 1;\n }\n dzsvg_page = parseInt(dzsvg_page, 10);\n\n\n if (dzsvg_page === 0 || isNaN(dzsvg_page)) {\n dzsvg_page = 1;\n }\n\n if (dzsvg_page > 0 && o.settings_separation_pages_number < nrChildren) {\n\n if (o.settings_separation_pages_number * dzsvg_page <= nrChildren) {\n for (elimi = o.settings_separation_pages_number * dzsvg_page - 1; elimi >= o.settings_separation_pages_number * (dzsvg_page - 1); elimi--) {\n cgallery.children().eq(elimi).addClass('from-pagination-do-not-eliminate');\n }\n } else {\n for (elimi = nrChildren - 1; elimi >= nrChildren - o.settings_separation_pages_number; elimi--) {\n cgallery.children().eq(elimi).addClass('from-pagination-do-not-eliminate');\n }\n }\n\n cgallery.children().each(function () {\n const $videoItem = $(this);\n if (!$videoItem.hasClass('from-pagination-do-not-eliminate')) {\n $videoItem.remove();\n }\n })\n\n var str_pagination = '
';\n settings_separation_nr_pages = Math.ceil(nrChildren / o.settings_separation_pages_number);\n\n nrChildren = cgallery.children().length;\n\n for (i = 0; i < settings_separation_nr_pages; i++) {\n var str_active = '';\n if ((i + 1) === dzsvg_page) {\n str_active = ' active';\n }\n str_pagination += '' + (i + 1) + ''\n }\n\n str_pagination += '
';\n cgallery.after(str_pagination);\n\n }\n }\n\n\n if (is_touch_device()) {\n cgallery.addClass('is-touch');\n }\n\n\n if (o.settings_mode === 'wall' || o.settings_mode === 'videowall') {\n o.design_shadow = 'off';\n }\n\n\n totalWidth = cgallery.width();\n totalHeight = cgallery.height();\n\n\n if (isNaN(totalWidth)) {\n totalWidth = 800;\n }\n\n if (isNaN(totalHeight)) {\n totalHeight = 400;\n }\n\n\n playlist_initialConfig(selfClass, o);\n\n\n $('html').addClass('supports-translate');\n\n\n view_structureGenerateNavigation(selfClass);\n\n\n if (o.settings_mode === 'normal' || o.settings_mode === 'slider') {\n reinit();\n }\n\n\n // -- wall END\n\n\n if (o.settings_mode === 'videowall') {\n\n\n if (cgallery.parent().hasClass('videogallery-con')) {\n view_setCssPropsForElement(cgallery.parent(), {'width': 'auto', 'height': 'auto'})\n }\n view_setCssPropsForElement(cgallery, {'width': 'auto', 'height': 'auto'})\n\n\n }\n\n\n if (o.settings_mode === 'wall' || o.settings_mode === 'videowall' || o.settings_mode === 'rotator' || o.settings_mode === 'rotator3d') {\n reinit({\n 'called_from': 'init'\n });\n }\n\n\n if (window.dzsvg_settings && window.dzsvg_settings.merge_social_into_one === 'on') {\n isMergeSocialIconsIntoOne = true;\n }\n\n dzsvg_playlist_setupEmbedAndShareButtons(selfClass, o, isMergeSocialIconsIntoOne);\n\n\n if (o.nav_type === 'outer') {\n selfClass.$navigationItemsContainer.addClass(o.nav_type_outer_grid);\n selfClass.$navigationItemsContainer.children().addClass('dzs-layout-item');\n\n\n if (o.menuitem_width) {\n o.menuitem_width = '';\n }\n\n\n if (o.nav_type_outer_max_height) {\n const nto_mh = Number(o.nav_type_outer_max_height);\n\n\n view_setCssPropsForElement(selfClass.$navigationClippedContainer, {'max-height': view_cssConvertForPx(nto_mh)})\n selfClass.$navigationClippedContainer.addClass('scroller-con skin_apple inner-relative');\n selfClass.$navigationItemsContainer.addClass('inner');\n\n view_setCssPropsForElement(selfClass.$navigationClippedContainer, {\n 'height': 'auto'\n })\n\n try_to_init_scroller();\n }\n }\n\n\n calculateDims({\n\n\n 'called_from': 'init'\n });\n\n\n if (o.nav_type === 'scroller') {\n selfClass.$navigationClippedContainer.addClass('scroller-con skin_apple');\n selfClass.$navigationItemsContainer.addClass('inner');\n\n\n view_setCssPropsForElement(selfClass.$navigationClippedContainer, {\n 'height': '100%'\n })\n\n // -- try scroller\n if ($.fn.scroller) {\n navigation_initScroller(selfClass.$navigationClippedContainer);\n } else {\n setTimeout(() => {\n navigation_initScroller(selfClass.$navigationClippedContainer);\n }, 2000);\n }\n\n setTimeout(function () {\n\n\n if ($('html').eq(0).attr('dir') === 'rtl') {\n selfClass.$navigationClippedContainer.get(0).fn_scrollx_to(1);\n }\n }, 100);\n }\n // -- scroller END\n\n\n // -- NO FUNCTION HIER\n\n\n cgallery.on('click', '.rotator-btn-gotoNext,.rotator-btn-gotoPrev', handle_mouse);\n $(document).on('keyup.dzsvgg', handleKeyPress);\n\n\n window.addEventListener(\"orientationchange\", view_handleOrientationChange);\n $(window).on('resize', handleResize);\n handleResize();\n\n setTimeout(function () {\n calculateDims({\n\n 'called_from': 'first_timeout'\n })\n }, 3000);\n\n\n setTimeout(init_playlistIsReady, 100);\n\n\n if (o.settings_trigger_resize > 0) {\n setInterval(function () {\n\n\n calculateDims({\n 'called_from': 'recheck_sizes'\n });\n }, o.settings_trigger_resize);\n }\n ;\n\n setup_apiFunctions();\n\n if (o.startItem === 'default') {\n o.startItem = 0;\n if (o.playorder === 'reverse') {\n o.startItem = nrChildren - 1;\n }\n }\n\n // --- gotoItem\n if (o.settings_mode !== 'wall' && o.settings_mode !== 'videowall') {\n\n selfClass.isGalleryLoaded = true;\n\n\n if (get_query_arg(window.location.href, 'dzsvg_startitem_' + selfClass.galleryComputedId)) {\n o.startItem = Number(get_query_arg(window.location.href, 'dzsvg_startitem_' + selfClass.galleryComputedId));\n }\n\n\n var tempStartItem = detect_startItemBasedOnQueryAddress(selfClass.deeplinkGotoItemQueryParam, selfClass.galleryComputedId);\n if (tempStartItem !== null) {\n o.startItem = tempStartItem;\n if (cgallery.parent().parent().parent().hasClass('categories-videogallery')) {\n const $categoriesVideoGallery = cgallery.parent().parent().parent();\n\n const ind = $categoriesVideoGallery.find('.videogallery').index(cgallery);\n\n if (ind) {\n setTimeout(function () {\n $categoriesVideoGallery.get(0).api_goto_category(ind, {\n 'called_from': 'deeplink'\n });\n }, 100);\n }\n }\n }\n\n if (isNaN(o.startItem)) {\n o.startItem = 0;\n }\n\n\n if (o.nav_type === 'scroller') {\n // todo: import from _navigation.js\n }\n\n\n if (o.settings_go_to_next_after_inactivity) {\n setInterval(function () {\n if (!isFirstPlayed) {\n gotoNext();\n }\n }, o.settings_go_to_next_after_inactivity * 1000);\n }\n }\n\n if (o.settings_separation_mode === 'scroll') {\n $(window).bind('scroll', handleScroll);\n }\n if (o.settings_separation_mode === 'button') {\n cgallery.append('
Load More
');\n cgallery.on('click', '.btn_ajax_loadmore', click_btn_ajax_loadmore);\n if (o.settings_separation_pages.length === 0) {\n selfClass.cgallery.find('.btn_ajax_loadmore').hide();\n }\n }\n\n\n cgallery.on('mouseleave', handleMouseout);\n cgallery.on('mouseover', handleMouseover);\n\n function call_init_readyForInitingVideos() {\n init_readyForInitingVideos();\n }\n\n if (o.settings_mode === 'wall') {\n call_init_readyForInitingVideos();\n } else {\n loadScriptIfItDoesNotExist('', 'dzsvp_isLoaded').then(() => {\n call_init_readyForInitingVideos();\n });\n }\n }\n\n function init_readyForInitingVideos() {\n\n // -- first item\n\n if (selfClass._sliderCon.children().eq(o.startItem).attr('data-type') === 'link') {\n // -- only for link\n gotoItem(o.startItem, {donotopenlink: \"on\", 'called_from': 'init'});\n\n } else {\n // -- first item\n // -- normal\n if (o.settings_mode !== 'wall') {\n gotoItem(o.startItem, {'called_from': 'init'});\n }\n }\n }\n\n\n function setup_apiFunctions() {\n\n\n cgallery.get(0).SelfPlaylist = selfClass;\n // --- go to video 0 <<<< the start of the gallery\n cgallery.get(0).videoEnd = handleVideoEnd;\n cgallery.get(0).init_settings = init_settings;\n\n cgallery.get(0).api_play_currVideo = play_currVideo;\n cgallery.get(0).external_handle_stopCurrVideo = video_stopCurrentVideo;\n cgallery.get(0).api_gotoNext = gotoNext;\n cgallery.get(0).api_gotoPrev = gotoPrev;\n cgallery.get(0).api_gotoItem = gotoItem;\n cgallery.get(0).api_responsive_ratio_resize_h = apiResponsiveRationResize;\n\n // -- ad functions\n cgallery.get(0).api_ad_block_navigation = ad_block_navigation;\n cgallery.get(0).api_ad_unblock_navigation = ad_unblock_navigation;\n\n cgallery.get(0).api_handleResize = handleResize;\n cgallery.get(0).api_gotoItem = gotoItem;\n cgallery.get(0).api_handleResize_currVideo = handleResize_currVideo;\n cgallery.get(0).api_play_currVideo = play_currVideo;\n cgallery.get(0).api_pause_currVideo = pause_currVideo;\n cgallery.get(0).api_currVideo_refresh_fsbutton = api_currVideo_refresh_fsbutton;\n cgallery.get(0).api_video_ready = galleryTransition;\n cgallery.get(0).api_set_outerNav = function (arg) {\n o.settings_outerNav = arg;\n };\n cgallery.get(0).api_set_secondCon = function (arg) {\n o.settings_secondCon = arg;\n };\n cgallery.get(0).api_set_action_playlist_end = function (arg) {\n action_playlist_end = arg;\n };\n\n\n cgallery.get(0).api_played_video = function () {\n isFirstPlayed = true;\n };\n }\n\n\n function handleMouseover(e) {\n\n\n isMouseOver = true;\n\n }\n\n\n /**\n * handle actions for mouse over\n * @param e\n */\n function handleMouseout(e) {\n\n isMouseOver = false;\n\n if (o.nav_type_auto_scroll === 'on') {\n if (o.nav_type === 'thumbs' || o.nav_type === 'scroller') {\n setTimeout(function () {\n if (!isMouseOver) {\n // todo: import from navigation.js\n } else {\n handleMouseout();\n }\n }, 2000);\n }\n }\n\n }\n\n function handleKeyPress(e) {\n\n\n if (e.type === 'keyup') {\n\n if (e.keyCode === 27) {\n $('.' + PLAYLIST_VIEW_FULLSCREEN_CLASS).removeClass(PLAYLIST_VIEW_FULLSCREEN_CLASS);\n setTimeout(function () {\n $('.' + PLAYLIST_VIEW_FULLSCREEN_CLASS).removeClass(PLAYLIST_VIEW_FULLSCREEN_CLASS);\n }, 999);\n cgallery.find('.' + PLAYLIST_VIEW_FULLSCREEN_CLASS).removeClass(PLAYLIST_VIEW_FULLSCREEN_CLASS);\n setTimeout(function () {\n calculateDims();\n }, 100);\n }\n }\n\n\n }\n\n function try_to_init_scroller() {\n\n const baseUrl = window.dzsvg_settings && window.dzsvg_settings.libsUri ? window.dzsvg_settings.libsUri : '';\n\n loadScriptIfItDoesNotExist(baseUrl + 'dzsscroller/scroller.js', 'dzsscr_init').then(r => {\n window.dzsscr_init(selfClass.$navigationClippedContainer, {\n 'enable_easing': 'on',\n 'settings_skin': 'skin_apple'\n });\n });\n $('head').append('');\n }\n\n\n function ad_block_navigation() {\n cgallery.addClass('ad-blocked-navigation');\n }\n\n function ad_unblock_navigation() {\n cgallery.removeClass('ad-blocked-navigation');\n }\n\n function init_playlistIsReady() {\n init_showPlaylist();\n\n\n if (o.settings_secondCon) {\n // -- moving this to bottom\n }\n\n\n if (o.settings_outerNav) {\n\n // -- we moved setup to bottom\n }\n\n\n handleResize();\n\n selfClass.cgallery.addClass('inited');\n }\n\n function handle_mouse(e) {\n\n var _t = $(this);\n if (_t.hasClass('rotator-btn-gotoNext')) {\n\n gotoNext();\n }\n if (_t.hasClass('rotator-btn-gotoPrev')) {\n\n gotoPrev();\n }\n }\n\n\n function init_showPlaylist() {\n\n\n cgallery.parent().children('.preloader').removeClass('is-visible');\n cgallery.parent().children('.css-preloader').removeClass('is-visible');\n\n setTimeout(() => {\n\n\n view_setCssPropsForElement(selfClass.cgallery, {\n 'min-height': '100px'\n })\n }, 100);\n\n\n if (o.init_on === 'scroll' && cgallery.hasClass('transition-slidein')) {\n setTimeout(function () {\n\n cgallery.addClass('dzsvg-loaded');\n\n if (cgallery.parent().hasClass('videogallery-con')) {\n cgallery.parent().addClass('dzsvg-loaded');\n }\n }, PLAYLIST_DEFAULT_TIMEOUT);\n } else {\n\n cgallery.addClass('dzsvg-loaded');\n if (cgallery.parent().hasClass('videogallery-con')) {\n cgallery.parent().addClass('dzsvg-loaded');\n }\n }\n }\n\n function setup_navigation_items() {\n if (o.settings_mode === 'normal' || o.settings_mode === 'wall') {\n buildPlaylist(selfClass);\n }\n }\n\n /**\n * transfer from feed con to slider con\n */\n function setup_transfer_items_to_sliderCon() {\n\n\n if (o.settings_mode !== 'wall') {\n let len = selfClass.$feedItemsContainer.find('.vplayer-tobe').length;\n for (i = 0; i < len; i++) {\n let _t = selfClass.$feedItemsContainer.children('.vplayer-tobe').eq(0);\n selfClass._sliderCon.append(_t);\n }\n }\n }\n\n function reinit(pargs) {\n var margs = {\n caller: null\n , 'called_from': 'default'\n }\n\n if (pargs) {\n margs = $.extend(margs, pargs);\n }\n\n\n selfClass.$containerForItems = cgallery;\n\n if (selfClass.$feedItemsContainer.children('.vplayer-tobe').length === 0) {\n selfClass.$containerForItems = selfClass._sliderCon;\n }\n\n setup_navigation_items();\n setup_transfer_items_to_sliderCon();\n\n\n if (o.settings_mode === 'videowall') {\n\n selfClass._sliderCon.children().each(function () {\n // --each item\n var _t = $(this);\n\n _t.wrap('
');\n\n\n o.videoplayersettings.responsive_ratio = 'detect';\n o.videoplayersettings.autoplay = 'off';\n o.videoplayersettings.preload_method = 'metadata';\n\n\n o.init_all_players_at_init = 'on';\n\n });\n }\n\n\n if (o.settings_mode === 'rotator3d') {\n menu_position = 'none';\n\n selfClass._sliderCon.children().each(function () {\n var _t = $(this);\n _t.addClass('rotator3d-item');\n\n\n view_setCssPropsForElement(_t, {'width': selfClass.videoAreaWidth, 'height': videoAreaHeight})\n _t.append('
');\n _t.children('.previewImg').bind('click', rotator3d_handleClickOnPreviewImg);\n\n })\n }\n\n\n if (o.init_all_players_at_init === 'on') {\n\n // -- init all players\n selfClass._sliderCon.find('.vplayer-tobe').each(function () {\n // -- each item\n var _t = $(this);\n\n o.videoplayersettings.autoplay = 'off';\n o.videoplayersettings.preload_method = 'metadata';\n\n\n o.videoplayersettings.gallery_object = cgallery;\n _t.vPlayer(o.videoplayersettings);\n });\n }\n\n\n nrChildren = selfClass._sliderCon.children().length;\n\n\n if (selfClass.cgallery.find('.feed-dzsvg--socialCode').length) {\n selfClass.feed_socialCode = selfClass.cgallery.find('.feed-dzsvg--socialCode').html();\n }\n\n\n if (o.settings_mode === 'wall') {\n dzsvg_mode_wall_reinitWallStructure(selfClass)\n }\n if (o.settings_mode === 'normal') {\n selfClass.$navigationItemsContainer.children('.dzs-navigation--item').unbind('click', handleClickOnNavigationContainer);\n selfClass.$navigationItemsContainer.children('.dzs-navigation--item').bind('click', handleClickOnNavigationContainer);\n\n }\n }\n\n\n /**\n * called from outside\n * @param resizeHeightDimension\n * @param pargs\n * @returns {boolean}\n */\n function apiResponsiveRationResize(resizeHeightDimension, pargs) {\n\n\n var margs = {\n caller: null\n , 'called_from': 'default'\n }\n\n if (pargs) {\n margs = $.extend(margs, pargs);\n }\n\n if (margs.caller == null || cgallery.parent().hasClass('skin-laptop')) {\n return false;\n }\n\n\n if (heightInitial === -1) {\n heightInitial = selfClass.$sliderMain.height();\n }\n\n\n $currVideoPlayer.height(resizeHeightDimension);\n\n\n view_setCssPropsForElement(selfClass.$sliderMain, {\n 'height': resizeHeightDimension,\n 'min-height': resizeHeightDimension\n })\n\n\n if (!cgallery.hasClass('ultra-responsive') && (menu_position === 'left' || menu_position === 'right' || menu_position === 'none')) {\n totalHeight = resizeHeightDimension;\n videoAreaHeight = resizeHeightDimension;\n\n\n if (o.settings_mode !== 'slider') {\n selfClass._mainNavigation.height(resizeHeightDimension);\n }\n videoAreaHeight = resizeHeightDimension;\n\n setTimeout(() => {\n\n selfClass.Navigation.calculateDims({forceMainAreaHeight: resizeHeightDimension});\n })\n\n } else {\n // -- responsive ratio\n\n\n view_setCssPropsForElement(selfClass.cgallery, {\n 'height': 'auto'\n })\n\n\n videoAreaHeight = resizeHeightDimension;\n\n }\n\n\n if (margs.caller) {\n margs.caller.data('height_for_videoheight', resizeHeightDimension);\n calculateDims({\n called_from: 'height_for_videoheight'\n });\n }\n\n if (o.nav_type === 'scroller') {\n setTimeout(function () {\n\n\n if (selfClass.$navigationClippedContainer.get(0) && selfClass.$navigationClippedContainer.get(0).api_toggle_resize) {\n selfClass.$navigationClippedContainer.get(0).api_toggle_resize();\n }\n }, 100)\n }\n\n\n }\n\n\n /**\n * calculate dimensions\n * @param pargs\n * @returns {boolean}\n */\n function calculateDims(pargs) {\n\n var margs = {\n 'called_from': 'default'\n };\n if (pargs) {\n margs = $.extend(margs, pargs);\n }\n\n\n totalWidth = selfClass.cgallery.outerWidth();\n totalHeight = selfClass.cgallery.height();\n\n if (selfClass.cgallery.height() === 0) {\n if (o.forceVideoHeight) {\n if (menu_position === 'top' || menu_position === 'bottom') {\n totalHeight = o.forceVideoHeight + o.design_menuitem_height;\n } else {\n totalHeight = o.forceVideoHeight;\n }\n }\n }\n\n\n if (margs.called_from === 'recheck_sizes') {\n\n if (Math.abs(last_totalWidth - totalWidth) < 4 && Math.abs(last_totalHeight - totalHeight) < 4) {\n\n\n return false;\n }\n\n }\n\n\n last_totalWidth = totalWidth;\n last_totalHeight = totalHeight;\n\n\n if (totalWidth < 721) {\n cgallery.addClass('under-720');\n\n\n } else {\n cgallery.removeClass('under-720');\n }\n\n\n if (totalWidth < 601) {\n cgallery.addClass('under-600');\n } else {\n cgallery.removeClass('under-600');\n }\n\n\n if (String(cgallery.get(0).style.height).indexOf('%') > -1) {\n\n totalHeight = cgallery.height();\n } else {\n\n if (cgallery.data('init-height')) {\n\n totalHeight = cgallery.data('init-height');\n } else {\n\n totalHeight = cgallery.height();\n\n setTimeout(function () {\n })\n\n }\n }\n\n\n selfClass.videoAreaWidth = totalWidth;\n videoAreaHeight = totalHeight;\n\n\n menuitem_width = o.menuitem_width;\n menuitem_height = o.menuitem_height;\n\n\n if ((menu_position === 'right' || menu_position === 'left') && nrChildren > 1) {\n selfClass.videoAreaWidth -= (menuitem_width);\n }\n\n\n if (o.nav_type !== 'outer' && (menu_position === 'bottom' || menu_position === 'top') && nrChildren > 1 && cgallery.get(0).style && cgallery.get(0).style.height && cgallery.get(0).style.height !== 'auto') {\n videoAreaHeight -= (menuitem_height);\n } else {\n videoAreaHeight = o.sliderAreaHeight;\n }\n\n\n if ($currVideoPlayer && $currVideoPlayer.data('height_for_videoheight')) {\n\n videoAreaHeight = $currVideoPlayer.data('height_for_videoheight');\n\n last_height_for_videoheight = videoAreaHeight;\n } else {\n // -- lets try to get the last value known for responsive ratio if the height of the current video is now currently known\n if (o.videoplayersettings.responsive_ratio && o.videoplayersettings.responsive_ratio === 'detect') {\n if (last_height_for_videoheight) {\n videoAreaHeight = last_height_for_videoheight;\n }\n\n } else {\n if (menu_position === 'left' || menu_position === 'right') {\n videoAreaHeight = o.sliderAreaHeight;\n }\n }\n }\n\n\n if (o.forceVideoHeight !== '' && (!o.videoplayersettings || o.videoplayersettings.responsive_ratio !== 'detect')) {\n videoAreaHeight = o.forceVideoHeight;\n }\n\n if (o.settings_mode === 'rotator3d') {\n selfClass.videoAreaWidth = totalWidth / 2;\n videoAreaHeight = totalHeight * 0.8;\n menuitem_width = 0;\n menuitem_height = 0;\n }\n\n\n cgallery.addClass('media-area--transition-' + o.transition_type)\n\n\n // === if there is only one video we hide the nav\n if (nrChildren === 1) {\n selfClass._mainNavigation.hide();\n }\n\n\n if ($currVideoPlayer) {\n\n }\n ;\n\n heightPosition = 0;\n for (i = 0; i < nrChildren; i++) {\n\n heightPosition += totalHeight;\n }\n\n if (o.settings_mode !== 'wall' && o.settings_mode !== 'videowall') {\n\n\n view_setCssPropsForElement(selfClass.$sliderMain, {\n 'width': selfClass.videoAreaWidth\n })\n\n\n if ((menu_position === 'left' || menu_position === 'right') && nrChildren > 1) {\n\n\n view_setCssPropsForElement(selfClass.$sliderMain, {\n 'width': 'auto'\n })\n }\n\n\n view_setCssPropsForElement(selfClass.$sliderMain, {\n 'height': videoAreaHeight\n })\n\n }\n\n if (o.settings_mode === 'rotator3d') {\n view_setCssPropsForElement(selfClass.$sliderMain, {\n 'width': totalWidth,\n 'height': totalHeight\n })\n view_setCssPropsForElement(selfClass._sliderCon.children(), {\n 'width': selfClass.videoAreaWidth,\n 'height': videoAreaHeight\n })\n }\n\n\n // -- END calculate dims for navigation / mode-normal\n\n\n if (o.settings_mode === 'normal') {\n heightPosition = 0;\n wpos = 0;\n\n const $dzsNavItems = selfClass.$navigationItemsContainer.find('.dzs-navigation--item');\n\n\n if (menuitem_width) {\n\n\n view_setCssPropsForElement($dzsNavItems, {\n 'width': menuitem_width,\n })\n }\n if (menuitem_height) {\n\n view_setCssPropsForElement($dzsNavItems, {\n 'height': menuitem_height\n })\n }\n\n if (menuitem_height === 0) {\n view_setCssPropsForElement($dzsNavItems, {\n 'height': ''\n })\n }\n\n }\n\n if (o.nav_type === 'scroller') {\n\n if (menu_position === 'top' || menu_position === 'bottom') {\n navWidth = 0;\n selfClass.$navigationItemsContainer.children().each(function () {\n const _t = $(this);\n navWidth += _t.outerWidth(true);\n });\n selfClass.$navigationItemsContainer.width(navWidth);\n }\n }\n\n\n calculateDims_secondCon(currNr_curr);\n\n\n selfClass.Navigation.calculateDims();\n // -- calculateDims() END\n }\n\n function view_handleOrientationChange() {\n setTimeout(function () {\n handleResize();\n }, 1000);\n }\n\n function handleResize(e, pargs) {\n ww = $(window).width();\n heightWindow = $(window).height();\n\n conw = $galleryParent.width();\n\n\n if (cgallery.hasClass('try-breakout')) {\n view_setCssPropsForElement(cgallery, {\n 'width': ww + 'px'\n })\n\n view_setCssPropsForElement(cgallery, {\n 'margin-left': '0'\n })\n\n\n if (cgallery.offset().left > 0) {\n view_setCssPropsForElement(cgallery, {\n 'margin-left': '-' + cgallery.offset().left + 'px'\n })\n }\n }\n\n\n if (cgallery.hasClass('try-height-as-window-minus-offset')) {\n\n let windowMinusGalleryOffset = heightWindow - cgallery.offset().top;\n if (windowMinusGalleryOffset < PLAYLIST_HEIGHT_IS_WINDOW_MAX_OFFSET) {\n view_setCssPropsForElement(cgallery, {\n 'height': '90vh'\n })\n } else {\n view_setCssPropsForElement(cgallery, {\n 'height': windowMinusGalleryOffset + 'px'\n })\n }\n\n }\n\n\n calculateDims();\n\n\n if ($currVideoPlayer) {\n handleResize_currVideo();\n }\n\n }\n\n function handleResize_currVideo(e, pargs) {\n\n\n var margs = {\n 'force_resize_gallery': true\n , 'called_from': 'default'\n };\n\n if (pargs) {\n margs = $.extend(margs, pargs);\n }\n\n\n margs.called_from += '_handleResize_currVideo';\n\n if (($currVideoPlayer) && $currVideoPlayer.get(0) && ($currVideoPlayer.get(0).api_handleResize)) {\n\n\n $currVideoPlayer.get(0).api_handleResize(null, margs);\n }\n }\n\n function pause_currVideo(e, pargs) {\n\n\n var margs = {\n 'force_resize_gallery': true\n , 'called_from': 'default'\n };\n\n if (pargs) {\n margs = $.extend(margs, pargs);\n }\n\n\n margs.called_from += '_pause_currVideo';\n\n if (($currVideoPlayer) && ($currVideoPlayer.get(0).api_pauseMovie)) {\n\n\n $currVideoPlayer.get(0).api_pauseMovie(margs);\n }\n }\n\n\n function api_currVideo_refresh_fsbutton(argcol) {\n if (typeof ($currVideoPlayer) != \"undefined\" && typeof ($currVideoPlayer.get(0)) != \"undefined\" && typeof ($currVideoPlayer.get(0).api_currVideo_refresh_fsbutton) != \"undefined\") {\n $currVideoPlayer.get(0).api_currVideo_refresh_fsbutton(argcol);\n }\n }\n\n\n function handleClickOnNavigationContainer(e) {\n var _t = $(this);\n\n let classForNavigationItem = '';\n\n if (_t.hasClass('dzs-navigation--item')) {\n classForNavigationItem = '.dzs-navigation--item';\n }\n\n console.log('classForNavigationItem - ', classForNavigationItem);\n\n if (e) {\n selfClass.handleHadFirstInteraction(e);\n }\n\n\n if (_t.get(0) && _t.get(0).nodeName !== \"A\") {\n gotoItem(selfClass.$navigationItemsContainer.children(classForNavigationItem).index(_t));\n\n\n if (o.nav_type_auto_scroll === 'on') {\n if (o.nav_type === 'thumbs' || o.nav_type === 'scroller') {\n\n\n isMenuMovementLocked = true;\n\n setTimeout(function () {\n\n\n // todo: get form _navigation.js\n\n }, 100);\n setTimeout(function () {\n\n\n isMenuMovementLocked = false;\n\n }, 2000);\n }\n }\n\n } else {\n if ($currVideoPlayer && $currVideoPlayer.get(0) && typeof ($currVideoPlayer.get(0).api_pauseMovie) != \"undefined\") {\n $currVideoPlayer.get(0).api_pauseMovie({\n 'called_from': 'handleClickOnNavigationContainer()'\n });\n }\n\n }\n\n }\n\n function handleScroll() {\n if (!selfClass.isGalleryLoaded) {\n // -- try init\n\n\n var st = $(window).scrollTop();\n var cthisOffsetTop = cgallery.offset().top;\n\n var wh = window.innerHeight;\n\n\n if (cthisOffsetTop < st + wh + 50) {\n init();\n }\n\n return;\n } else {\n // -- try LOAD MORE\n\n var _t = $(this);//==window\n wh = $(window).height();\n if (isBusyAjax === true || ind_ajaxPage >= o.settings_separation_pages.length) {\n return;\n }\n\n\n if ((_t.scrollTop() + wh) > (cgallery.offset().top + cgallery.height() - 10)) {\n ajax_load_nextpage();\n }\n }\n\n }\n\n function click_btn_ajax_loadmore(e) {\n\n if (isBusyAjax === true || ind_ajaxPage >= o.settings_separation_pages.length) {\n return;\n }\n cgallery.find('.btn_ajax_loadmore').addClass('disabled')\n ajax_load_nextpage();\n }\n\n function ajax_load_nextpage() {\n\n cgallery.parent().children('.preloader').addClass('is-visible');\n\n $.ajax({\n url: o.settings_separation_pages[ind_ajaxPage],\n success: function (response) {\n setTimeout(function () {\n\n selfClass.$feedItemsContainer.append(response);\n reinit({\n 'called_from': 'ajax_load_nextpage'\n });\n cgallery.find('.btn_ajax_loadmore').removeClass('disabled');\n setTimeout(function () {\n isBusyAjax = false;\n cgallery.parent().children('.preloader').removeClass('is-visible');\n ind_ajaxPage++;\n\n\n if (ind_ajaxPage >= o.settings_separation_pages.length) {\n cgallery.children('.btn_ajax_loadmore').removeClass('is-visible');\n }\n\n\n }, 1000);\n }, 1000);\n },\n error: function (xhr, ajaxOptions, thrownError) {\n ind_ajaxPage++;\n cgallery.parent().children('.preloader').removeClass('is-visible');\n\n }\n });\n\n isBusyAjax = true;\n }\n\n function gotoItem(arg, pargs) {\n\n\n var gotoItemOptions = {\n\n 'ignore_arg_currNr_check': false\n , 'ignore_linking': false // -- does not change the link if set to true\n , donotopenlink: \"off\"\n , called_from: \"default\"\n }\n\n if (pargs) {\n gotoItemOptions = $.extend(gotoItemOptions, pargs);\n }\n\n\n if (!(o.settings_mode === 'normal' && o.mode_normal_video_mode === 'one')) {\n\n if (currNr === arg || isBusyTransition) {\n return false;\n }\n }\n let isTransformed = false; // -- if the video is already transformed there is no need to wait\n var _currentTargetPlayer = selfClass._sliderCon.children().eq(arg);\n var argsForVideoPlayer = $.extend({}, o.videoplayersettings);\n\n\n $currVideoPlayer = _currentTargetPlayer;\n\n argsForVideoPlayer.gallery_object = cgallery;\n argsForVideoPlayer.gallery_last_curr_nr = currNr;\n if (gotoItemOptions.called_from === 'init') {\n argsForVideoPlayer.first_video_from_gallery = 'on';\n }\n\n argsForVideoPlayer['gallery_target_index'] = arg;\n\n\n var shouldVideoAutoplay = assertVideoFromGalleryAutoplayStatus(currNr, o, cgallery);\n argsForVideoPlayer['autoplay'] = shouldVideoAutoplay ? 'on' : 'off';\n\n\n currNr_curr = arg;\n\n\n if (o.settings_enable_linking === 'on') {\n\n if (_currentTargetPlayer.attr('data-type') === 'link' && (gotoItemOptions.donotopenlink !== 'on')) {\n playlistGotoItemHistoryChangeForLinks(ind_ajaxPage, o, cgallery, _currentTargetPlayer, selfClass.deeplinkGotoItemQueryParam);\n return false;\n }\n if (_currentTargetPlayer.attr('data-type') !== 'link') {\n playlistGotoItemHistoryChangeForNonLinks(gotoItemOptions, o, selfClass.galleryComputedId, arg, selfClass.deeplinkGotoItemQueryParam);\n }\n }\n\n if (o.settings_mode === 'normal' && o.mode_normal_video_mode === 'one') {\n _currentTargetPlayer = selfClass._sliderCon.children().eq(0);\n _currentTargetPlayer.addClass('playlist-mode-video-one--main-player')\n $currVideoPlayer = _currentTargetPlayer;\n\n var _targetPlayer = selfClass._sliderCon.children().eq(arg);\n var optionsForChange = detect_videoTypeAndSourceForElement(_targetPlayer);\n // -- one\n if ($currVideoPlayer.hasClass('vplayer')) {\n\n pause_currVideo();\n\n\n $currVideoPlayer.get(0).api_change_media(\n optionsForChange.source, {\n 'type': optionsForChange.type,\n autoplay: shouldVideoAutoplay ? 'on' : 'off'\n })\n\n } else {\n // -- one video_mode .. vplayer-tobe\n // -- first item\n $currVideoPlayer.vPlayer(argsForVideoPlayer);\n $currVideoPlayer.addClass('active');\n $currVideoPlayer.addClass('currItem');\n }\n selfClass.$navigationItemsContainer.children('.dzs-navigation--item').removeClass('active');\n selfClass.$navigationItemsContainer.children('.dzs-navigation--item').eq(arg).addClass('active');\n }\n\n\n // -- not one\n if (!(o.settings_mode === 'normal' && o.mode_normal_video_mode === 'one')) {\n if (currNr > -1) {\n var _c2 = selfClass._sliderCon.children().eq(currNr);\n\n // --- if on iPad or iPhone, we disable the video as it had runed in a iframe and it wont pause otherwise\n _c2.addClass('transitioning-out');\n if (o.settings_mode === 'normal' && (is_ios() || _c2.attr('data-type') === 'inline' || (_c2.attr('data-type') === 'youtube' && o.videoplayersettings['settings_youtube_usecustomskin'] !== 'on'))) {\n setTimeout(function () {\n _c2.find('.video-description').remove();\n _c2.data('original-iframe', _c2.html());\n\n // -- we will delete inline content here\n _c2.html('');\n\n _c2.removeClass('vplayer');\n _c2.addClass('vplayer-tobe');\n\n }, 1000);\n }\n ;\n }\n }\n\n\n if (o.autoplay_ad === 'on') {\n\n _currentTargetPlayer.data('adplayed', 'on');\n } else {\n _currentTargetPlayer.data('adplayed', 'off');\n }\n\n\n if (_currentTargetPlayer.hasClass('vplayer')) {\n isTransformed = true;\n }\n\n\n if (!(o.settings_mode === 'normal' && o.mode_normal_video_mode === 'one')) {\n _currentTargetPlayer.addClass('transitioning-in');\n }\n\n\n if (_currentTargetPlayer.hasClass('type-inline') && _currentTargetPlayer.data('original-iframe')) {\n if (_currentTargetPlayer.html() === '') {\n _currentTargetPlayer.html(_currentTargetPlayer.data('original-iframe'));\n }\n }\n\n // -- not one\n if (!(o.settings_mode === 'normal' && o.mode_normal_video_mode === 'one')) {\n if (_currentTargetPlayer.hasClass('vplayer-tobe')) {\n // -- if not inited\n\n _currentTargetPlayer.addClass('in-vgallery');\n argsForVideoPlayer['videoWidth'] = selfClass.videoAreaWidth;\n argsForVideoPlayer['videoHeight'] = '';\n argsForVideoPlayer['old_curr_nr'] = currNr;\n\n\n if (currNr === -1 && o.cueFirstVideo === 'off') {\n argsForVideoPlayer.cueVideo = 'off';\n } else {\n argsForVideoPlayer.cueVideo = 'on';\n }\n\n argsForVideoPlayer['settings_disableControls'] = 'off';\n\n\n argsForVideoPlayer.htmlContent = '';\n\n argsForVideoPlayer.gallery_object = cgallery;\n\n if (argsForVideoPlayer.end_exit_fullscreen === 'off') {\n // -- exit fullscreen on video end\n\n if (cgallery.find('.vplayer.currItem').hasClass('type-vimeo')) {\n cgallery.find('.vplayer.currItem').removeClass(PLAYLIST_VIEW_FULLSCREEN_CLASS)\n }\n\n // -- next video has fullscreen status\n if (fullscreen_status() === 1) {\n argsForVideoPlayer.extra_classes = argsForVideoPlayer.extra_classes ? argsForVideoPlayer.extra_classes + ' ' + PLAYLIST_VIEW_FULLSCREEN_CLASS : ' ' + PLAYLIST_VIEW_FULLSCREEN_CLASS;\n }\n\n setTimeout(function () {\n\n }, 500);\n }\n\n if (o.settings_disableVideo === 'on') {\n } else {\n // -- NOT ONE MODE o.mode_normal_video_mode\n _currentTargetPlayer.vPlayer(argsForVideoPlayer);\n\n }\n\n\n } else {\n\n // -- NOT (ONE) if already setuped\n\n\n if (!(o.init_all_players_at_init === 'on' && currNr === -1)) {\n if (shouldVideoAutoplay) {\n if (typeof _currentTargetPlayer.get(0) != 'undefined' && typeof _currentTargetPlayer.get(0).externalPlayMovie != 'undefined') {\n _currentTargetPlayer.get(0).externalPlayMovie({\n 'called_from': 'autoplayNext'\n });\n }\n }\n }\n\n if (o.videoplayersettings.end_exit_fullscreen === 'off') {\n\n\n if (fullscreen_status() === 1) {\n _currentTargetPlayer.addClass(PLAYLIST_VIEW_FULLSCREEN_CLASS);\n }\n }\n\n // -- we force a resize on the player just in case it has an responsive ratio\n\n\n setTimeout(function () {\n if (typeof _currentTargetPlayer.get(0) != 'undefined' && _currentTargetPlayer.get(0).api_handleResize) {\n\n _currentTargetPlayer.get(0).api_handleResize(null, {\n force_resize_gallery: true\n })\n }\n }, 250);\n\n\n }\n\n }\n\n\n prevNr = arg - 1;\n if (prevNr < 0) {\n prevNr = selfClass._sliderCon.children().length - 1;\n }\n nextNr = arg + 1;\n if (nextNr > selfClass._sliderCon.children().length - 1) {\n nextNr = 0;\n }\n\n\n if (o.settings_mode === 'normal') {\n view_setCssPropsForElement(_currentTargetPlayer, {\n 'display': ''\n })\n }\n if (o.settings_mode === 'rotator3d') {\n selfClass._sliderCon.children().removeClass('nextItem currItem hide-preview-img').removeClass('prevItem');\n selfClass._sliderCon.children().eq(nextNr).addClass('nextItem');\n selfClass._sliderCon.children().eq(prevNr).addClass('prevItem');\n }\n if (o.settings_mode === 'rotator') {\n\n if (currNr > -1) {\n\n }\n var _descCon = selfClass.$navigationClippedContainer.children('.descriptionsCon');\n _descCon.children('.currDesc').removeClass('currDesc').addClass('pastDesc');\n _descCon.append('
' + _currentTargetPlayer.find('.menuDescription').html() + '
');\n setTimeout(function () {\n _descCon.children('.desc').addClass('currDesc');\n }, 20)\n\n }\n\n\n last_arg = arg;\n\n\n if (!(o.settings_mode === 'normal' && o.mode_normal_video_mode === 'one')) {\n\n if (currNr === -1 || isTransformed) {\n galleryTransition();\n if (o.settings_mode === 'rotator3d') {\n selfClass._sliderCon.children().eq(arg).addClass('hide-preview-img');\n }\n } else {\n cgallery.parent().children('.preloader').addClass('is-visible');\n\n let delay = 500;\n\n if (o.settings_mode === 'rotator3d') {\n delay = 10;\n selfClass._sliderCon.children().eq(arg).addClass('currItem');\n setTimeout(function () {\n\n selfClass._sliderCon.children().eq(arg).addClass('hide-preview-img');\n }, PLAYLIST_DEFAULT_TIMEOUT);\n }\n\n inter_start_the_transition = setTimeout(galleryTransition, delay, arg);\n\n }\n } else {\n isBusyAjax = false;\n isBusyTransition = false;\n\n\n currNr = arg;\n }\n\n calculateDims_secondCon(arg);\n\n if (o.settings_outerNav) {\n\n var _c_outerNav = $(o.settings_outerNav);\n _c_outerNav.find('.videogallery--navigation-outer--block ').removeClass('active');\n _c_outerNav.find('.videogallery--navigation-outer--block ').eq(arg).addClass('active');\n\n _c_outerNav.find('*[data-global-responsive-ratio]').each(function () {\n var _t4 = $(this);\n\n var rat = Number(_t4.attr('data-global-responsive-ratio'));\n\n _t4.height(rat * _t4.width());\n })\n }\n\n if (cgallery.hasClass('responsive-ratio-smooth')) {\n if (!_currentTargetPlayer.attr('data-responsive_ratio')) {\n apiResponsiveRationResize(heightInitial);\n } else {\n $(window).trigger('resize');\n }\n\n }\n\n\n cgallery.removeClass('hide-players-not-visible-on-screen');\n setTimeout(function () {\n\n cgallery.addClass('hide-players-not-visible-on-screen');\n selfClass._sliderCon.find('.transitioning-in').removeClass('transitioning-in');\n selfClass._sliderCon.find('.transitioning-out').removeClass('transitioning-out');\n\n\n var _extraBtns = null;\n\n\n if (cgallery.parent().parent().next().hasClass('extra-btns-con')) {\n _extraBtns = cgallery.parent().parent().next();\n }\n if (cgallery.parent().parent().next().next().hasClass('extra-btns-con')) {\n _extraBtns = cgallery.parent().parent().next().next();\n }\n if (_extraBtns) {\n _extraBtns.find('.stats-btn').attr('data-playerid', $currVideoPlayer.attr('data-player-id'));\n\n }\n }, 400);\n\n isBusyTransition = true;\n\n\n return !(o.settings_mode === 'normal' && o.mode_normal_video_mode === 'one');\n\n\n }\n\n\n function galleryTransition() {\n if (isTransitionStarted) {\n return;\n }\n\n var arg = last_arg;\n\n\n var _c = selfClass._sliderCon.children().eq(arg);\n\n isTransitionStarted = true;\n clearTimeout(inter_start_the_transition);\n cgallery.parent().children('.preloader').removeClass('is-visible');\n\n\n selfClass._sliderCon.children().removeClass('currItem');\n\n if (currNr === -1) {\n _c.addClass('currItem');\n _c.addClass('no-transition');\n setTimeout(function () {\n selfClass._sliderCon.children().eq(currNr).removeClass('no-transition')\n })\n } else {\n\n if (currNr !== arg) {\n\n selfClass._sliderCon.children().eq(currNr).addClass('transition-slideup-gotoTop')\n } else {\n\n selfClass._sliderCon.children().eq(currNr).addClass('currItem');\n }\n\n\n }\n\n setTimeout(setCurrVideoClass, 100);\n selfClass.$navigationItemsContainer.children('.dzs-navigation--item').removeClass('active');\n selfClass.$navigationItemsContainer.children('.dzs-navigation--item').eq(arg).addClass('active');\n\n\n setTimeout(function () {\n $('window').trigger('resize');\n selfClass._sliderCon.children().removeClass('transition-slideup-gotoTop');\n }, 1000);\n\n if (is_ios() && currNr > -1) {\n if (selfClass._sliderCon.children().eq(currNr).children().eq(0).length > 0 && selfClass._sliderCon.children().eq(currNr).children().eq(0)[0] !== undefined) {\n if (selfClass._sliderCon.children().eq(currNr).children().eq(0)[0].tagName === 'VIDEO') {\n selfClass._sliderCon.children().eq(currNr).children().eq(0).get(0).pause();\n }\n }\n }\n\n if (isFirstTransition) {\n\n video_stopCurrentVideo({\n 'called_from': 'the_transition'\n });\n }\n\n if (currNr > -1) {\n\n\n isFirstTransition = true;\n\n\n }\n currNr = arg;\n\n setTimeout(function () {\n\n isBusyTransition = false;\n isTransitionStarted = false;\n hideAllVideosButCurrentVideo();\n }, 400);\n }\n\n // -- end the_transition()\n\n\n function calculateDims_secondCon(arg) {\n\n\n if (o.settings_secondCon) {\n\n var _c = $(o.settings_secondCon);\n\n\n _c.find('.item').removeClass('active');\n _c.find('.item').eq(arg).addClass('active');\n const $innerSecondCon = _c.find('.dzsas-second-con--clip');\n if ($innerSecondCon.length) {\n\n view_setCssPropsForElement($innerSecondCon, {\n 'height': _c.find('.item').eq(arg).outerHeight(false),\n 'left': -(arg * 100) + '%'\n })\n }\n\n\n }\n }\n\n function hideAllVideosButCurrentVideo() {\n if (o.settings_mode === 'normal') {\n\n selfClass._sliderCon.children().each(function () {\n var $videoItem = $(this);\n\n if (!$videoItem.hasClass('currItem')) {\n $videoItem.hide();\n }\n })\n }\n }\n\n\n function setCurrVideoClass() {\n\n if ($currVideoPlayer) {\n\n $currVideoPlayer.addClass('currItem');\n }\n }\n\n\n function play_currVideo() {\n\n if (selfClass._sliderCon.children().eq(currNr).get(0) && selfClass._sliderCon.children().eq(currNr).get(0).externalPauseMovie) {\n selfClass._sliderCon.children().eq(currNr).get(0).api_playMovie({\n 'called_from': 'api_playMovie'\n });\n }\n }\n\n function video_stopCurrentVideo(pargs) {\n\n var margs = {\n 'called_from': 'default'\n }\n\n if (pargs) {\n margs = $.extend(margs, pargs);\n }\n\n if (!(is_ios()) && currNr > -1 && o.mode_normal_video_mode !== 'one') {\n if (selfClass._sliderCon.children().eq(currNr).get(0) && selfClass._sliderCon.children().eq(currNr).get(0).externalPauseMovie) {\n selfClass._sliderCon.children().eq(currNr).get(0).externalPauseMovie({\n 'called_from': 'external_handle_stopCurrVideo() - ' + margs.called_from\n });\n }\n }\n }\n\n\n function gotoPrev() {\n\n if (o.playorder === 'reverse') {\n gotoNext();\n return;\n }\n\n var tempNr = currNr - 1;\n if (tempNr < 0) {\n tempNr = selfClass._sliderCon.children().length - 1;\n }\n gotoItem(tempNr);\n\n\n }\n\n function gotoNext() {\n\n if (o.playorder === 'reverse') {\n gotoPrev();\n return;\n }\n\n var isGoingToGoNext = true;\n var tempNr = currNr + 1;\n if (tempNr >= selfClass._sliderCon.children().length) {\n tempNr = 0;\n\n\n if (o.loop_playlist !== 'on') {\n isGoingToGoNext = false;\n }\n\n if (action_playlist_end) {\n action_playlist_end(cgallery);\n }\n }\n\n\n if (isGoingToGoNext) {\n\n // -- we will go forward with next movie\n gotoItem(tempNr);\n }\n\n\n if (o.nav_type_auto_scroll === 'on') {\n if (o.nav_type === 'thumbs' || o.nav_type === 'scroller') {\n setTimeout(function () {\n selfClass.Navigation.animate_to_curr_thumb();\n }, 20);\n }\n }\n }\n\n function handleVideoEnd() {\n // -- cgallery\n if (o.autoplayNext === 'on') {\n gotoNext();\n }\n }\n\n\n function rotator3d_handleClickOnPreviewImg(e) {\n var _t = $(this);\n var selectedIndex = _t.parent().parent().children().index(_t.parent());\n\n if (e) {\n selfClass.handleHadFirstInteraction(e);\n }\n\n gotoItem(selectedIndex);\n }\n\n }\n\n\n /**\n *\n * @param {Event} e\n * @returns {boolean}\n */\n handleHadFirstInteraction(e) {\n\n if (this.cgallery.data('user-had-first-interaction')) {\n return false;\n }\n\n\n this.isHadFirstInteraction = true;\n this.cgallery.data('user-had-first-interaction', 'yes');\n this.cgallery.addClass('user-had-first-interaction');\n\n }\n}\n\n\nexport function apply_videogallery_plugin($) {\n $.fn.vGallery = function (argOptions) {\n\n var finalOptions = {};\n var defaultOptions = Object.assign({}, defaultPlaylistSettings);\n finalOptions = convertPluginOptionsToFinalOptions(this, defaultOptions, argOptions);\n this.each(function () {\n\n return new DzsVideoGallery(this, finalOptions, $);\n }); // end each\n\n }\n\n\n window.dzsvg_init = function (selector, settings) {\n $(selector).vGallery(settings);\n };\n // -- deprecated\n window.zsvg_init = function (selector, settings) {\n $(selector).vGallery(settings);\n };\n}\n\n\nif (!window.dzsvg_settings) {\n if (window.dzsvg_default_settings) {\n window.dzsvg_settings = {...{}};\n }\n}\nwindow.setup_videogalleryCategories = setup_videogalleryCategories;\n\n\nfunction dzsvg_handleInitedjQuery() {\n\n\n (function ($) {\n apply_videogallery_plugin(jQuery);\n })(jQuery);\n\n\n const dzsvg_reinit = () => {\n\n secondCon_initFunctions();\n init_navigationOuter();\n }\n\n\n jQuery(document).ready(function ($) {\n dzsvg_init('.videogallery.auto-init');\n dzsvg_reinit();\n })\n dzsvgExtraWindowFunctions();\n\n\n window.dzsvg_reinit = dzsvg_reinit;\n}\n\nloadScriptIfItDoesNotExist('', 'jQuery').then(() => {\n dzsvg_handleInitedjQuery();\n})","import {DzsNavigation} from \"../js_dzsvg/navigation/_navigation\";\nimport {svgBackButton, svgForwardButton} from \"../js_dzsvg/_dzsvg_svgs\";\nimport {navigation_detectClassesForPosition} from \"../js_dzsvg/playlist/_playlistHelpers\";\nimport {dzsvg_playlist_initSearchField} from \"./_searchFunctions\";\n\n\n/**\n *\n * @param {DzsVideoGallery} selfClass\n */\nexport function view_structureGenerateNavigation(selfClass) {\n\n let structNavigationAndMainArea = '
'\n\n const cgallery = selfClass.cgallery;\n const o = selfClass.initOptions;\n\n if (o.design_shadow === 'on') {\n cgallery.prepend('
');\n }\n selfClass.cgallery.append(structNavigationAndMainArea);\n selfClass.$navigationAndMainArea = selfClass.cgallery.find('.navigation-and-main-area').eq(0);\n\n\n selfClass.$navigationAndMainArea.css('background-color', selfClass.cgallery.css('background-color'));\n\n const navOptions = {\n navigationType: (o.nav_type === 'thumbs' ? 'hover' : o.nav_type === 'thumbsandarrows' ? 'thumbsAndArrows' : o.nav_type === 'outer' ? 'simple' : o.nav_type),\n menuPosition: o.menu_position,\n menuItemWidth: o.menuitem_width,\n menuItemHeight: o.menuitem_height,\n parentSkin: o.design_skin,\n viewNavigationIsUltibox: o.navigation_isUltibox,\n viewEnableMediaArea: (selfClass.viewOptions.enableVideoArea),\n viewAnimationDuration: o.navigation_viewAnimationDuration,\n navigationStructureHtml: selfClass.navigation_customStructure,\n };\n\n\n Object.keys(o).forEach((playlistOptionKey)=>{\n if(playlistOptionKey.indexOf('navigation_')===0){\n const newKeyForNav = playlistOptionKey.replace('navigation_','');\n navOptions[newKeyForNav] = o[playlistOptionKey];\n }\n })\n\n if (o.settings_mode === 'wall') {\n\n navOptions.gridClassItemsContainer = o.navigation_gridClassItemsContainer;\n navOptions.navigationType = 'simple';\n navOptions.filter_structureMenuItemContent = (final_structureMenuItemContent, $currentItemFeed) => {\n if ($currentItemFeed.attr('data-type')) {\n final_structureMenuItemContent = final_structureMenuItemContent.replace('dzs-navigation--item\"', 'dzs-navigation--item\" ' + ' data-video-type=\"' + $currentItemFeed.attr('data-type') + '\"');\n }\n\n return final_structureMenuItemContent;\n }\n }\n\n\n selfClass.Navigation = new DzsNavigation(selfClass, navOptions, jQuery);\n\n\n selfClass.$sliderMain = cgallery.find('.sliderMain');\n selfClass._sliderCon = cgallery.find('.sliderCon');\n\n selfClass._mainNavigation = cgallery.find('.main-navigation');\n\n selfClass._sliderCon.addClass(o.extra_class_slider_con);\n\n if (o.settings_mode === 'slider') {\n selfClass.$sliderMain.after(selfClass._mainNavigation);\n }\n\n\n selfClass.$sliderMain.append('
');\n selfClass.$navigationClippedContainer = selfClass.cgallery.find('.navMain');\n\n selfClass.$navigationItemsContainer = selfClass.cgallery.find('.videogallery--navigation-container').eq(0);\n\n\n if (o.settings_mode === 'slider') {\n selfClass.$navigationClippedContainer.append('
' + svgForwardButton + '
' + svgBackButton + '
');\n }\n if (o.settings_mode === 'rotator') {\n selfClass.$navigationClippedContainer.append('
');\n selfClass.$navigationClippedContainer.append('
');\n }\n\n\n selfClass.$galleryButtons = selfClass.$sliderMain.children('.gallery-buttons');\n\n\n navigation_detectClassesForPosition(o.menu_position, selfClass._mainNavigation, cgallery);\n\n\n if (o.search_field === 'on') {\n dzsvg_playlist_initSearchField(selfClass, o);\n }\n\n}\n","import {svgSearchIcon} from \"../js_dzsvg/_dzsvg_svgs\";\nimport {handleSearchFieldChange} from \"../js_dzsvg/playlist/_searchPlaylist\";\n\nexport function dzsvg_playlist_initSearchField(selfClass, o){\n\n // -- setup search field\n if (o.search_field_con) {\n selfClass.$searchFieldCon = jQuery(o.search_field_con);\n }else{\n\n dzsvg_playlist_addSearchField(selfClass);\n\n }\n selfClass.$searchFieldCon.bind('keyup', handleSearchFieldChange(selfClass, selfClass.$navigationItemsContainer.parent(), selfClass.handleResize));\n\n}\nexport function dzsvg_playlist_addSearchField(selfClass){\n\n var struct_searchFieldString = '';\n struct_searchFieldString = '
' + svgSearchIcon + '
';\n if (selfClass._mainNavigation.hasClass('menu-moves-vertically')) {\n selfClass._mainNavigation.prepend(struct_searchFieldString);\n } else {\n selfClass.$navigationItemsContainer.prepend(struct_searchFieldString);\n }\n\n selfClass.$searchFieldCon = selfClass.cgallery.find('.dzsvg-search-field > input');\n}","export function handleSearchFieldChange(selfClass, _navMain, handleResize) {\n return function () {\n\n var $ = jQuery;\n var _t = $(this);\n var o = selfClass.initOptions;\n\n\n if (o.settings_mode === 'wall') {\n selfClass._sliderCon.children().each(function () {\n var _t2 = $(this);\n\n\n if (_t.val() === '' || String(String(_t2.find('.menuDescription').eq(0).html()).toLowerCase()).indexOf(_t.val().toLowerCase()) > -1) {\n\n _t2.show();\n } else {\n\n _t2.hide();\n }\n\n\n });\n }\n\n\n if (o.nav_type === 'scroller') {\n\n\n if (typeof _navMain.get(0).api_scrolly_to != 'undefined') {\n _navMain.get(0).api_scrolly_to(0);\n }\n\n setTimeout(function () {\n\n selfClass.$navigationItemsContainer.css('top', '0')\n }, 100)\n }\n selfClass.$navigationItemsContainer.children().each(function () {\n var _t2 = $(this);\n\n\n if (_t.val() === '' || String(String(_t2.find('.dzs-navigation--item-content').eq(0).html()).toLowerCase()).indexOf(_t.val().toLowerCase()) > -1) {\n\n _t2.show();\n } else {\n\n if (_t2.hasClass('dzsvg-search-field') === false) {\n _t2.hide();\n }\n }\n });\n\n handleResize();\n }\n}","import {dzsvg_check_multisharer, dzsvg_click_open_embed_ultibox} from \"../js_dzsvg/_dzsvg_helpers\";\nimport {svg_embed, svgShareIcon} from \"../js_dzsvg/_dzsvg_svgs\";\nimport {ConstantsDzsvg} from \"../configs/Constants\";\n\n\n/**\n *\n * @param {DzsVideoGallery} selfClass\n * @param {object} o\n * @param {boolean} isMergeSocialIconsIntoOne\n */\nexport function dzsvg_playlist_setupEmbedAndShareButtons(selfClass, o, isMergeSocialIconsIntoOne){\n\n\n // -- going to merge social code into one\n if (isMergeSocialIconsIntoOne) {\n if (o.embedCode !== '' || selfClass.feed_socialCode) {\n dzsvg_check_multisharer();\n if (o.settings_mode === 'wall') {\n\n if (selfClass.$sliderMain.find('.gallery-buttons').length === 0) {\n selfClass.$galleryButtons = selfClass.cgallery.find('.gallery-buttons');\n\n }\n setTimeout(function () {\n selfClass.$sliderMain.before(selfClass.$galleryButtons);\n }, 500);\n }\n\n\n selfClass.$galleryButtons.append('
' + svg_embed + '
');\n\n\n }\n\n\n } else {\n\n if (o.embedCode !== '') {\n selfClass.$galleryButtons.append('
' + svg_embed + '
');\n selfClass.$galleryButtons.find('.embed-button .handle').click(click_embedhandle(selfClass))\n selfClass.$galleryButtons.find('.embed-button .contentbox').css({\n 'right': 50\n })\n }\n if (selfClass.feed_socialCode) {\n selfClass.$galleryButtons.append('
' + svgShareIcon + '
' + selfClass.feed_socialCode + '
');\n selfClass.$galleryButtons.find('.share-button .handle').click(click_sharehandle(selfClass))\n selfClass.$galleryButtons.find('.share-button .contentbox').css({\n 'right': 50\n })\n }\n }\n}\n\n\n/**\n *\n * @param {DzsVideoGallery} selfClass\n * @returns {(function(): void)|*}\n */\nfunction click_embedhandle(selfClass) {\n\n return function(){\n\n if (selfClass.isEmbedOpened === false) {\n selfClass.$galleryButtons.find('.embed-button .contentbox').css({\n 'right': 60\n }, {queue: false, duration: ConstantsDzsvg.ANIMATIONS_DURATION});\n\n selfClass.$galleryButtons.find('.embed-button .contentbox').addClass('is-visible');\n selfClass.isEmbedOpened = true;\n } else {\n selfClass.$galleryButtons.find('.embed-button .contentbox').css({\n 'right': 50\n }, {queue: false, duration: ConstantsDzsvg.ANIMATIONS_DURATION});\n\n selfClass.$galleryButtons.find('.embed-button .contentbox').removeClass('is-visible');\n selfClass.isEmbedOpened = false;\n }\n }\n}\n\n\n/**\n *\n * @param {DzsVideoGallery} selfClass\n * @returns {(function(): void)|*}\n */\nfunction click_sharehandle(selfClass) {\n return function() {\n if (selfClass.isShareOpened === false) {\n selfClass.$galleryButtons.find('.share-button .contentbox').css({\n 'right': 60\n });\n\n selfClass.$galleryButtons.find('.share-button .contentbox').addClass('is-visible');\n selfClass.isShareOpened = true;\n } else {\n selfClass.$galleryButtons.find('.share-button .contentbox').css({\n 'right': 50\n });\n\n selfClass.$galleryButtons.find('.share-button .contentbox').removeClass('is-visible');\n selfClass.isShareOpened = false;\n }\n }\n}","import {\n playlist_get_real_responsive_ratio, playlist_navigation_mode_one__set_players_data,\n\n} from \"./_playlistHelpers\";\nimport {detect_video_type_and_source, getDataOrAttr} from \"../_dzsvg_helpers\";\nimport {PLAYER_DEFAULT_RESPONSIVE_RATIO} from \"../../configs/Constants\";\n\n/**\n *\n * transfer feed items\n * @param {DzsVideoGallery} selfClass\n */\nexport function buildPlaylist(selfClass) {\n\n\n let itemsLength = selfClass.$feedItemsContainer.find('.vplayer-tobe').length;\n let o = selfClass.initOptions;\n\n selfClass.Navigation.addNavigationItems(selfClass.$feedItemsContainer);\n\n for (let i = 0; i < itemsLength; i++) {\n var $currentItemFeed = selfClass.$feedItemsContainer.find('.vplayer-tobe').eq(i);\n\n var vpRealSrc = getDataOrAttr($currentItemFeed, 'data-sourcevp');\n var sourceAndType = detect_video_type_and_source(vpRealSrc);\n vpRealSrc = sourceAndType.source;\n $currentItemFeed.data('dzsvg-curatedtype-from-gallery', sourceAndType.type);\n if (sourceAndType.type === 'youtube') {\n if (sourceAndType.source) {\n $currentItemFeed.data('dzsvg-curatedid-from-gallery', sourceAndType.source);\n }\n }\n\n\n vpRealSrc = getDataOrAttr($currentItemFeed, 'data-sourcevp');\n sourceAndType = detect_video_type_and_source(vpRealSrc);\n vpRealSrc = sourceAndType.source;\n const curatedTypeFromGallery = sourceAndType.type;\n\n $currentItemFeed.data('dzsvg-curatedtype-from-gallery', curatedTypeFromGallery);\n $currentItemFeed.data('dzsvg-curatedid-from-gallery', sourceAndType.source);\n\n\n // -- this is inside video gallery\n if ((curatedTypeFromGallery === 'youtube' || curatedTypeFromGallery === 'vimeo' || curatedTypeFromGallery === 'facebook' || curatedTypeFromGallery === 'inline')\n && o.videoplayersettings.responsive_ratio === 'detect' && !($currentItemFeed.attr('data-responsive_ratio'))) {\n if (!$currentItemFeed.attr('data-responsive_ratio') || $currentItemFeed.attr('data-responsive_ratio') === 'detect') {\n $currentItemFeed.attr('data-responsive_ratio', String(PLAYER_DEFAULT_RESPONSIVE_RATIO));\n }\n if (curatedTypeFromGallery === 'inline') {\n setTimeout(function () {\n selfClass.apiResponsiveRationResize(PLAYER_DEFAULT_RESPONSIVE_RATIO * selfClass.videoAreaWidth);\n }, 3003);\n }\n $currentItemFeed.attr('data-responsive_ratio-not-known-for-sure', 'on'); // -- we set this until we know the responsive ratio for sure , 0.562 is just 16/9 ratio so should fit to most videos\n\n if (o.php_media_data_retriever) {\n playlist_get_real_responsive_ratio(i, selfClass);\n }\n }\n\n\n var $cacheMenuItem = selfClass.$navigationItemsContainer.children().last();\n\n if (o.settings_mode === 'normal') {\n if (o.mode_normal_video_mode === 'one') {\n playlist_navigation_mode_one__set_players_data($cacheMenuItem);\n }\n }\n\n }\n\n\n\n}","\nimport {ConstantsDzsvg} from '../../configs/Constants';\nexport function secondCon_initFunctions () {\n\n\n var $ = jQuery;\n $(document).off('click', '.dzsas-second-con .read-more-label');\n $(document).on('click', '.dzsas-second-con .read-more-label', function (e) {\n\n\n var _t = $(this);\n var _con = _t.parent();\n\n var _content = _con.children('.read-more-content').eq(0);\n\n if (_con.hasClass('active')) {\n\n _content.css({\n 'height': 0\n }, {\n queue: false\n , duration: ConstantsDzsvg.ANIMATIONS_DURATION\n , complete: function (e) {\n\n\n }\n })\n\n _con.removeClass('active');\n } else {\n _content.css('height', 'auto');\n\n var auxh = (_content.outerHeight());\n\n _content.css('height', 0);\n _content.css({\n 'height': auxh\n }, {\n queue: false\n , duration: ConstantsDzsvg.ANIMATIONS_DURATION\n , complete: function (e) {\n\n\n $(this).css('height', 'auto');\n }\n })\n\n _con.addClass('active');\n\n }\n\n\n return false;\n })\n\n\n jQuery('.dzsas-second-con').each(function () {\n var _t = jQuery(this);\n\n\n\n var _c = _t;\n\n if (_c.find('.item').eq(1).children('.menudescriptioncon').html()) {\n\n } else {\n\n if (_c.find('.item').eq(2).children('.menudescriptioncon').html()) {\n\n _c.find('.item').eq(1).remove();\n }\n }\n\n var xpos = 0;\n _t.find('.videogallery--navigation-outer--bigblock').each(function () {\n var _t = jQuery(this);\n _t.css('left', xpos + '%');\n xpos += 100;\n })\n\n\n var xpos = 0;\n _t.find('.item').each(function () {\n var _t2 = jQuery(this);\n _t2.css('left', xpos + '%');\n xpos += 100;\n })\n\n\n\n\n\n\n if (_t.attr('data-vgtarget') === '.id_auto') {\n\n\n var _cach = jQuery('.videogallery,.videogallery-tobe').eq(0);\n\n\n var stringClass = /id_(.*?) /.exec(_cach.attr('class'));\n\n if (stringClass && stringClass[1]) {\n _t.attr('data-vgtarget', '.id_' + stringClass[1]);\n }\n\n if (_cach.get(0) && _cach.get(0).api_set_secondCon) {\n _cach.get(0).api_set_secondCon(_t);\n }\n setTimeout(function () {\n if (_cach.get(0) && _cach.get(0).api_set_secondCon) {\n _cach.get(0).api_set_secondCon(_t);\n }\n }, 1000)\n }\n\n\n })\n\n}\n"],"sourceRoot":""}