Version Description
2021/09/27 =
Bugfix - HLS - live stream check - countdown fix
Bugfix - Lightbox - image lightbox picks proper image caption for [caption] shortcodes
Bugfix - Matomo/Piwik support - fix when running in subfolder
Bugfix - Subtitles - remember disabled subtitles state even if subtitles on by default
Download this release
Release Info
Developer | FolioVision |
Plugin | FV Flowplayer Video Player |
Version | 7.5.7.727 |
Comparing to | |
See all releases |
Code changes from version 7.5.5.727 to 7.5.7.727
- controller/frontend.php +1 -0
- css/flowplayer.css +12 -1
- flowplayer.php +2 -2
- flowplayer/flowplayer.dashjs.min.js +3 -1
- flowplayer/fv-player.min.js +1 -1
- flowplayer/modules/fv-player.js +5 -0
- flowplayer/modules/hls-playlist-fix.module.js +19 -0
- flowplayer/modules/subtitle-restore.module.js +27 -9
- flowplayer/modules/volume.module.js +30 -0
- models/subtitles.php +6 -5
- readme.txt +6 -1
- view/admin.php +2 -2
controller/frontend.php
CHANGED
@@ -105,6 +105,7 @@ function fv_flowplayer_get_js_translations() {
|
|
105 |
'duration_n_seconds' => _n( '%s second', '%s seconds', 5 ),
|
106 |
'and' => sprintf( __( '%1$s and %2$s' ), '', '' ),
|
107 |
'chrome_extension_disable_html5_autoplay' => __('It appears you are using the Disable HTML5 Autoplay Chrome extension, disable it to play videos', 'fv-wordpress-flowplayer'),
|
|
|
108 |
);
|
109 |
|
110 |
return $aStrings;
|
105 |
'duration_n_seconds' => _n( '%s second', '%s seconds', 5 ),
|
106 |
'and' => sprintf( __( '%1$s and %2$s' ), '', '' ),
|
107 |
'chrome_extension_disable_html5_autoplay' => __('It appears you are using the Disable HTML5 Autoplay Chrome extension, disable it to play videos', 'fv-wordpress-flowplayer'),
|
108 |
+
'click_to_unmute' => __('Click to unmute', 'fv-wordpress-flowplayer'),
|
109 |
);
|
110 |
|
111 |
return $aStrings;
|
css/flowplayer.css
CHANGED
@@ -1766,6 +1766,7 @@ article .entry-content .fvfp_admin_error p { line-height: 18px }
|
|
1766 |
.is-audio + .fp-playlist-external a h4 span,.entry-content .is-audio + .fp-playlist-external a h4 span { position:relative;top:auto;padding:0;transform:none }
|
1767 |
.is-audio + .fp-playlist-external a h4:before,.entry-content .is-audio + .fp-playlist-external a h4:before { content: counter(fv-playlist-counter, decimal-leading-zero) ". ";float:left;min-width:26px;color:#adadad;font-weight:400 }
|
1768 |
.flowplayer.fixed-controls.is-audio, .flowplayer.skin-custom.fixed-controls.is-audio { margin-bottom:0;height:2.8em }
|
|
|
1769 |
.flowplayer.is-audio .fv-ab-loop,.flowplayer.fixed-controls.is-audio .fv-ab-loop {bottom:-28px;padding-left:82px}
|
1770 |
.flowplayer.is-loading.is-audio .fp-controls { display:flex }
|
1771 |
.flowplayer.is-audio.is-loading .fp-playbtn {opacity:0}
|
@@ -2238,4 +2239,14 @@ body.fv_flowplayer_tabs_hide .fv_flowplayer_tabs_content > div.fv_flowplayer_tab
|
|
2238 |
0% { opacity: 0; }
|
2239 |
50% { opacity: 1; }
|
2240 |
100% { opacity: 0; }
|
2241 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1766 |
.is-audio + .fp-playlist-external a h4 span,.entry-content .is-audio + .fp-playlist-external a h4 span { position:relative;top:auto;padding:0;transform:none }
|
1767 |
.is-audio + .fp-playlist-external a h4:before,.entry-content .is-audio + .fp-playlist-external a h4:before { content: counter(fv-playlist-counter, decimal-leading-zero) ". ";float:left;min-width:26px;color:#adadad;font-weight:400 }
|
1768 |
.flowplayer.fixed-controls.is-audio, .flowplayer.skin-custom.fixed-controls.is-audio { margin-bottom:0;height:2.8em }
|
1769 |
+
.flowplayer.fixed-controls.is-audio.fp-slim { height:2.4em }
|
1770 |
.flowplayer.is-audio .fv-ab-loop,.flowplayer.fixed-controls.is-audio .fv-ab-loop {bottom:-28px;padding-left:82px}
|
1771 |
.flowplayer.is-loading.is-audio .fp-controls { display:flex }
|
1772 |
.flowplayer.is-audio.is-loading .fp-playbtn {opacity:0}
|
2239 |
0% { opacity: 0; }
|
2240 |
50% { opacity: 1; }
|
2241 |
100% { opacity: 0; }
|
2242 |
+
}
|
2243 |
+
|
2244 |
+
/* Click to unmute */
|
2245 |
+
.flowplayer .fp-message-muted { text-align: center }
|
2246 |
+
.flowplayer .fp-message-muted:hover, .flowplayer .fp-message-muted:active { text-shadow: 0px 0px 5px rgba( 255, 255, 255, 0.66 ) }
|
2247 |
+
.flowplayer.has-fp-message-muted .fp-header { display: none }
|
2248 |
+
.flowplayer .fp-volumebtn-notice { position: relative; top: 3px; }
|
2249 |
+
.flowplayer .fp-volumebtn-notice:before { content: "\e00d"; }
|
2250 |
+
.flowplayer.fp-outlined .fp-volumebtn-notice:before, .flowplayer.fp-minimal .fp-volumebtn-notice:before { content: "\e20d"; }
|
2251 |
+
.flowplayer.fp-edgy .fp-volumebtn-notice:before { content: "\e10d"; }
|
2252 |
+
.flowplayer.fp-edgy.fp-outlined .fp-volumebtn-notice:before, .flowplayer.fp-edgy.fp-minimal .fp-volumebtn-notice:before { content: "\e30d"; }
|
flowplayer.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: FV Player
|
4 |
Plugin URI: http://foliovision.com/wordpress/plugins/fv-wordpress-flowplayer
|
5 |
Description: Formerly FV WordPress Flowplayer. Supports MP4, HLS, MPEG-DASH, WebM and OGV. Advanced features such as overlay ads or popups. Uses Flowplayer 7.2.7.
|
6 |
-
Version: 7.5.
|
7 |
Author URI: http://foliovision.com/
|
8 |
License: GPL-3.0
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.txt
|
@@ -27,7 +27,7 @@ License URI: http://www.gnu.org/licenses/gpl-3.0.txt
|
|
27 |
*/
|
28 |
|
29 |
global $fv_wp_flowplayer_ver;
|
30 |
-
$fv_wp_flowplayer_ver = '7.5.
|
31 |
$fv_wp_flowplayer_core_ver = '7.2.7.2';
|
32 |
include_once( dirname( __FILE__ ) . '/includes/extra-functions.php' );
|
33 |
if( file_exists( dirname( __FILE__ ) . '/includes/module.php' ) ) {
|
3 |
Plugin Name: FV Player
|
4 |
Plugin URI: http://foliovision.com/wordpress/plugins/fv-wordpress-flowplayer
|
5 |
Description: Formerly FV WordPress Flowplayer. Supports MP4, HLS, MPEG-DASH, WebM and OGV. Advanced features such as overlay ads or popups. Uses Flowplayer 7.2.7.
|
6 |
+
Version: 7.5.7.727
|
7 |
Author URI: http://foliovision.com/
|
8 |
License: GPL-3.0
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.txt
|
27 |
*/
|
28 |
|
29 |
global $fv_wp_flowplayer_ver;
|
30 |
+
$fv_wp_flowplayer_ver = '7.5.7.727.1';
|
31 |
$fv_wp_flowplayer_core_ver = '7.2.7.2';
|
32 |
include_once( dirname( __FILE__ ) . '/includes/extra-functions.php' );
|
33 |
if( file_exists( dirname( __FILE__ ) . '/includes/module.php' ) ) {
|
flowplayer/flowplayer.dashjs.min.js
CHANGED
@@ -508,7 +508,9 @@
|
|
508 |
|
509 |
} else {
|
510 |
player.mute(true, true);
|
511 |
-
videoTag
|
|
|
|
|
512 |
player.play();
|
513 |
}
|
514 |
break;
|
508 |
|
509 |
} else {
|
510 |
player.mute(true, true);
|
511 |
+
if( videoTag ) {
|
512 |
+
videoTag.volume = 0;
|
513 |
+
}
|
514 |
player.play();
|
515 |
}
|
516 |
break;
|
flowplayer/fv-player.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
if(typeof fv_flowplayer_conf!="undefined"){try{if(typeof window.localStorage=="object"&&typeof window.localStorage.volume!="undefined"){delete fv_flowplayer_conf.volume}}catch(e){}flowplayer.conf=fv_flowplayer_conf;flowplayer.conf.fullscreen=false;flowplayer.conf.chromecast=false;flowplayer.conf.embed=false;flowplayer.conf.share=false;flowplayer.conf.analytics=false;try{flowplayer.conf.key=atob(flowplayer.conf.key)}catch(e){}if(!flowplayer.support.android&&flowplayer.conf.dacast_hlsjs){function FVAbrController(hls){this.hls=hls;this.nextAutoLevel=3}FVAbrController.prototype.nextAutoLevel=function(nextLevel){this.nextAutoLevel=nextLevel};FVAbrController.prototype.destroy=function(){};flowplayer.conf.hlsjs={startLevel:-1,abrController:FVAbrController}}function parseIOSVersion(UA){var e=/iP(ad|hone)(; CPU)? OS (\d+_\d)/.exec(UA);if(e&&e.length>1){return parseFloat(e[e.length-1].replace("_","."),10)}return 0}if(flowplayer.support.iOS&&flowplayer.support.iOS.chrome&&flowplayer.support.iOS.version==0){flowplayer.support.iOS.version=parseIOSVersion(navigator.userAgent)}if(flowplayer.support.iOS&&parseInt(flowplayer.support.iOS.version)>=13||!flowplayer.support.iOS&&flowplayer.support.browser.safari&&parseInt(flowplayer.support.browser.version)>=8){flowplayer.conf.hlsjs.safari=true}flowplayer.support.fvmobile=!!(!flowplayer.support.firstframe||flowplayer.support.iOS||flowplayer.support.android);var fls=flowplayer.support;if(flowplayer.conf.mobile_native_fullscreen&&"ontouchstart"in window&&fls.fvmobile){flowplayer.conf.native_fullscreen=true}if("ontouchstart"in window){if(fls.android&&fls.android.version<4.4&&!(fls.browser.chrome&&fls.browser.version>54)){flowplayer.conf.native_fullscreen=true}if(fls.iOS&&(fv_player_in_iframe()||fls.iOS.version<7)){flowplayer.conf.native_fullscreen=true}}}if(typeof fv_flowplayer_translations!="undefined"){flowplayer.defaults.errors=fv_flowplayer_translations}var fv_player_did_autoplay=false;function fv_player_videos_parse(args,root){try{var videos=JSON.parse(args)}catch(e){return false}var regex=new RegExp("[\\?&]fv_flowplayer_mobile=([^&#]*)");var results=regex.exec(location.search);if((results!=null&&results[1]=="yes"||(jQuery(window).width()<=480||jQuery(window).height()<=480))&&(results==null||results[1]!="no")){var fv_fp_mobile=false;jQuery(videos.sources).each(function(k,v){if(v.mobile){videos.sources[k]=videos.sources[0];videos.sources[0]=v;fv_fp_mobile=true}if(fv_fp_mobile){jQuery(root).after('<p class="fv-flowplayer-mobile-switch">'+fv_flowplayer_translations.mobile_browser_detected_1+' <a href="'+document.URL+'?fv_flowplayer_mobile=no">'+fv_flowplayer_translations.mobile_browser_detected_2+"</a>.</p>")}})}root.trigger("fv_player_videos_parse",videos);return videos}function fv_player_in_iframe(){try{return window.self!==window.top}catch(e){return true}}jQuery(document).ready(function(){var loading_count=0;var loading=setInterval(function(){loading_count++;if(loading_count<1e3&&(window.fv_video_intelligence_conf&&!window.FV_Player_IMA||window.fv_vast_conf&&!window.FV_Player_IMA||window.fv_player_pro&&!window.FV_Flowplayer_Pro&&document.getElementById("fv_player_pro")!=fv_player_pro||window.fv_player_user_playlists&&!fv_player_user_playlists.is_loaded||window.FV_Player_JS_Loader_scripts_total&&window.FV_Player_JS_Loader_scripts_loaded<FV_Player_JS_Loader_scripts_total)){return}clearInterval(loading);fv_player_preload()},10)});function fv_escape_attr(text){var map={"&":"&","<":"<",">":">",'"':""","'":"'"};return text.replace(/[&<>"']/g,function(m){return map[m]})}function fv_player_preload(){if(flowplayer.support.touch){jQuery(".fp-playlist-external.fv-playlist-design-2017").addClass("visible-captions")}flowplayer(function(api,root){root=jQuery(root);var fp_player=root.find(".fp-player");var splash_click=false;if(root.hasClass("fixed-controls")){root.find(".fp-controls").on("click",function(e){if(!api.loading&&!api.ready){e.preventDefault();e.stopPropagation();api.load()}})}if(!flowplayer.support.volume&&!flowplayer.support.autoplay){root.find(".fp-volume").hide()}if(root.data("volume")==0&&root.hasClass("no-controlbar")){root.find(".fp-volume").remove()}var playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]");if((!api.conf.playlist||api.conf.playlist.length==0)&&playlist.length&&playlist.find("a[data-item]").length>0){var items=[];playlist.find("a[data-item]").each(function(){if(parsed=fv_player_videos_parse(jQuery(this).attr("data-item"),root)){items.push(parsed)}else{jQuery(this).remove()}});api.conf.playlist=items;api.conf.clip=items[0]}else if(!api.conf.clip){api.conf.clip=fv_player_videos_parse(jQuery(root).attr("data-item"),root)}jQuery("a",playlist).on("click",function(e){e.preventDefault();splash_click=true;var $this=jQuery(this),playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]"),index=jQuery("a",playlist).index(this);$prev=$this.prev("a"),item=$this.data("item");if(location.href.match(/wp-admin/)&&$this.parents(".fv-player-editor-preview").length>0){fv_flowplayer_conf.current_video_to_edit=index;$this.parents(".fv-player-custom-video").find(".edit-video .fv-player-editor-button").trigger("click");return false}if($prev.length&&$this.is(":visible")&&!$prev.is(":visible")){$prev.trigger("click");return false}if(jQuery("#"+$this.parent().attr("rel")).hasClass("dynamic-playlist"))return;var playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]");fv_player_playlist_active(playlist,this);if(api){if(api.error){api.pause();api.error=api.loading=false;root.removeClass("is-error");root.find(".fp-message.fp-shown").remove()}if(!api.video||api.video.index==index)return;api.play(index)}var new_splash=item.splash;if(!new_splash){new_splash=$this.find("img").attr("src")}player_splash(root,fp_player,item,new_splash);var rect=root[0].getBoundingClientRect();if(rect.bottom-100<0){jQuery("html, body").animate({scrollTop:jQuery(root).offset().top-100},300)}});var playlist_external=jQuery("[rel="+root.attr("id")+"]");var playlist_progress=false;var splash_img=root.find(".fp-splash");var splash_text=root.find(".fv-fp-splash-text");function player_splash(root,fp_player,item,new_splash){var splash_img=root.find("img.fp-splash");if(new_splash){if(splash_img.length==0){splash_img=jQuery('<img class="fp-splash" />');fp_player.prepend(splash_img)}splash_img.attr("alt",item.fv_title?fv_escape_attr(item.fv_title):"video");splash_img.attr("src",new_splash)}else if(splash_img.length){splash_img.remove()}}api.bind("load",function(e,api,video){if(!api.conf.playlist.length){return}if(video.type.match(/^audio/)&&!splash_click){var anchor=playlist_external.find("a").eq(video.index);var item=anchor.data("item");var new_splash=item.splash;if(!new_splash){new_splash=anchor.find("img").attr("src")}player_splash(root,fp_player,item,new_splash)}splash_click=false});api.bind("ready",function(e,api,video){setTimeout(function(){if(video.index>-1){if(playlist_external.length>0){var playlist_item=jQuery("a",playlist_external).eq(video.index);fv_player_playlist_active(playlist_external,playlist_item);playlist_progress=playlist_item.find(".fvp-progress")}}},100);splash_img=root.find(".fp-splash");if(!video.is_audio_stream&&!video.type.match(/^audio/)){splash_img.remove();splash_text.remove()}});api.bind("unload",function(){jQuery(".fp-playlist-external .now-playing").remove();jQuery(".fp-playlist-external a").removeClass("is-active");var iframe=fp_player.find("iframe.fp-engine");if(iframe.length){iframe.after(splash_text);iframe.after(splash_img)}else{fp_player.prepend(splash_text);fp_player.prepend(splash_img)}playlist_progress=false});api.bind("progress",function(e,api,time){if(playlist_progress.length){api.playlist_thumbnail_progress(playlist_progress,api.video,time)}});api.bind("error-subtitles",function(){console.log("error-subtitles");fv_player_notice(root,fv_flowplayer_translations[8],2e3)});var playlist=jQuery(root).parent().find("div.fp-playlist-vertical[rel="+jQuery(root).attr("id")+"]");if(playlist.length){function check_size_and_all(args){var property=playlist.hasClass("fp-playlist-only-captions")?"height":"max-height";if(playlist.parents(".fp-playlist-text-wrapper").hasClass("is-fv-narrow")){property="max-height"}playlist.css(property,vertical_playlist_height());if(property=="max-height")playlist.css("height","auto")}check_size_and_all();jQuery(window).on("resize tabsactivate",function(){setTimeout(check_size_and_all,0)})}function vertical_playlist_height(args){var height=root.height();if(height==0)height=root.css("max-height");return height}api.show_status=function(type){var status="";["loading","ready","playing","paused","seeking"].every(function(v,k){if(api[v])status+=" "+v;return true});console.log("FV Player Status ("+type+")",status)};if(!window.fv_player_loaded){window.fv_player_loaded=true;setTimeout(function(){jQuery(document).trigger("fv_player_loaded");var event=new CustomEvent("fv_player_loaded",[]);document.dispatchEvent(event)},100)}setTimeout(function(){root.trigger("fv_player_loaded")},10)});if(window.self!=window.top&&!location.href.match(/fv_player_preview/)){embed_size();jQuery(window.self).resize(embed_size)}function embed_size(){jQuery(".flowplayer.fp-is-embed").each(function(){var root=jQuery(this);if(!root.hasClass("has-chapters")&&!root.hasClass("has-transcript")&&jQuery(".fp-playlist-external[rel="+root.attr("id")+"]").length==0){root.height(jQuery(window).height())}})}if(typeof fv_flowplayer_playlists!="undefined"){for(var i in fv_flowplayer_playlists){if(!fv_flowplayer_playlists.hasOwnProperty(i))continue;jQuery("#"+i).flowplayer({playlist:fv_flowplayer_playlists[i]})}}fv_player_load();fv_autoplay_exec();jQuery(document).ajaxComplete(function(){fv_player_load()});jQuery(window).on("hashchange",fv_autoplay_exec)}function fv_player_load(forced_el){if(forced_el&&forced_el.lenght>1){console.log("FV Player: Can't use fv_player_load with more than a single forced element!")}var load_players=forced_el,forced_api=false;if(!load_players)load_players=jQuery(".flowplayer");load_players.each(function(i,el){var root=jQuery(el);var api=root.data("flowplayer");if(api){if(forced_el)forced_api=api;return}if(forced_el){root.find(".fp-preload, .fvfp_admin_error").remove();if(root.attr("data-item-lazy")){root.attr("data-item",root.attr("data-item-lazy"));root.removeAttr("item-lazy")}else if(playlist=jQuery("[rel="+root.attr("id")+"]")){playlist.find("a[data-item-lazy]").each(function(k,v){v=jQuery(v);v.attr("data-item",v.attr("data-item-lazy"));v.removeAttr("data-item-lazy")})}}var conf=false;if(root.attr("data-item")){conf={clip:fv_player_videos_parse(root.attr("data-item"),root)}}else if(playlist=jQuery("[rel="+root.attr("id")+"]")){if(playlist.find("a[data-item]").length==0)return;var items=[];playlist.find("a[data-item]").each(function(){if(parsed=fv_player_videos_parse(jQuery(this).attr("data-item"),root)){items.push(parsed)}else{jQuery(this).remove()}});conf={playlist:items}}if(conf){conf=flowplayer.extend(conf,root.data());forced_api=flowplayer(root[0],conf);root.data("flowplayer",forced_api)}});jQuery(".fv-playlist-slider-wrapper").each(function(i,el){var items=jQuery(this).find("a");jQuery(this).find(".fp-playlist-external").css("width",items.outerWidth()*items.length)});if(typeof jQuery().tabs!="undefined"){jQuery("body").removeClass("fv_flowplayer_tabs_hide");jQuery(".fv_flowplayer_tabs_content").tabs()}if(forced_el&&forced_api){return forced_api}}function fv_player_playlist_active(playlist,item){if(playlist){jQuery("a",playlist).removeClass("is-active");jQuery(".now-playing").remove()}$playlist=jQuery(playlist);$item=jQuery(item);var scroll_parent=false;$item.addClass("is-active");var is_design_2014=$playlist.hasClass("fv-playlist-design-2014");if((is_design_2014&&$item.find("h4").length==0||!is_design_2014)&&$item.find(".now-playing").length==0)$item.prepend('<strong class="now-playing"><span>'+fv_flowplayer_translations.playlist_current+"</span></strong>");if(!$playlist.parent().find(".flowplayer").length){scroll_parent=true}if(($playlist.hasClass("fp-playlist-vertical")||$playlist.hasClass("fp-playlist-horizontal")&&$playlist.hasClass("is-audio"))&&!fullyVisibleY($item.get(0))){var $el=scroll_parent?$playlist.parent():$playlist;$el.animate({scrollTop:$el.scrollTop()+($item.position().top-$el.position().top)},750)}else if($playlist.hasClass("fp-playlist-horizontal")&&!fullyVisibleX($item.get(0))){var $el=scroll_parent?$playlist.parent():$playlist;$el.animate({scrollLeft:$el.scrollLeft()+($item.position().left-$el.position().left)},750)}function fullyVisibleY(el){var rect=el.getBoundingClientRect(),top=rect.top,height=rect.height,bottom=top+height,el=el.parentNode;do{rect=el.getBoundingClientRect();if(bottom<=rect.bottom===false)return false;if(top<=rect.top)return false;el=el.parentNode}while(el!=document.body);return bottom<=document.documentElement.clientHeight}function fullyVisibleX(el){var rect=el.getBoundingClientRect(),left=rect.left,width=rect.width,right=left+width,el=el.parentNode;do{rect=el.getBoundingClientRect();if(right<=rect.right===false)return false;if(left<=rect.left)return false;el=el.parentNode}while(el!=document.body);return right<=document.documentElement.clientWidth}}var fv_fp_date=new Date;var fv_fp_utime=fv_fp_date.getTime();function fv_parse_sharelink(src){src=src.replace("https?://[^./].","");var prefix="fvp_";if(src.match(/(youtube.com)/)){return prefix+src.match(/(?:v=)([A-Za-z0-9_-]*)/)[1]}else if(src.match(/(vimeo.com)|(youtu.be)/)){return prefix+src.match(/(?:\/)([^/]*$)/)[1]}else{var match=src.match(/(?:\/)([^/]*$)/);if(match){return prefix+match[1].match(/^[^.]*/)[0]}}return prefix+src}function fv_player_get_video_link_hash(api){var hash=fv_parse_sharelink(typeof api.video.sources_original!="undefined"&&typeof api.video.sources_original[0]!="undefined"?api.video.sources_original[0].src:api.video.sources[0].src);if(typeof api.video.id!="undefined"){hash=fv_parse_sharelink(api.video.id.toString())}return hash}function fv_player_time_hms(seconds){if(isNaN(seconds)){return NaN}var sec_num=parseInt(seconds,10);var hours=Math.floor(sec_num/3600);var minutes=Math.floor(sec_num/60)%60;var seconds=sec_num%60;if(hours){hours+="h"}else{hours=""}if(hours&&minutes<10){minutes="0"+minutes+"m"}else if(!hours&&minutes){minutes+="m"}else{minutes=""}if((hours||minutes)&&seconds<10){seconds="0"+seconds}seconds+="s";var timeString=hours+minutes+seconds;return timeString}function fv_player_time_hms_ms(seconds){if(isNaN(seconds)){return NaN}seconds=parseFloat(seconds).toFixed(3);var miliseconds=(seconds+"").split(".");if(typeof miliseconds[1]!="undefined"&&miliseconds[1]>0){miliseconds=miliseconds[1]+"ms"}else{miliseconds=""}var timeString=fv_player_time_hms(seconds)+miliseconds;return timeString}function fv_player_time_seconds(time,duration){if(!time)return-1;var seconds=0;var match=time.match(/(\d+[a-z]{1,2})/g);match.forEach(function(item){if(item.endsWith("h")){seconds+=3600*parseInt(item)}else if(item.endsWith("m")){seconds+=60*parseInt(item)}else if(item.endsWith("s")&&!item.endsWith("ms")){seconds+=parseInt(item)}else if(item.endsWith("ms")){if(parseInt(item)){seconds+=parseInt(item)/1e3}}});return duration?Math.min(seconds,duration):seconds}function fv_autoplay_init(root,index,time,abStart,abEnd){if(fv_autoplay_exec_in_progress)return;fv_autoplay_exec_in_progress=true;var api=root.data("flowplayer");if(!api)return;var fTime=fv_player_time_seconds(time);abEnd=fv_player_time_seconds(abEnd);abStart=fv_player_time_seconds(abStart);if(root.parent().hasClass("ui-tabs-panel")){var tabId=root.parent().attr("id");jQuery("[aria-controls="+tabId+"] a").trigger("click")}if(!root.find(".fp-player").attr("class").match(/\bis-sticky/)){var offset=jQuery(root).offset().top-(jQuery(window).height()-jQuery(root).height())/2;window.scrollTo(0,offset);api.one("ready",function(){window.scrollTo(0,offset)})}if(root.hasClass("lightboxed")){setTimeout(function(){jQuery("[href=\\#"+root.attr("id")+"]").trigger("click")},0)}if(index){if(fv_player_video_link_autoplay_can(api,parseInt(index))){if(api.ready){fv_player_video_link_seek(api,fTime)}else{api.play(parseInt(index));api.one("ready",function(){fv_player_video_link_seek(api,fTime,abEnd,abStart)})}}else if(flowplayer.support.inlineVideo){api.one(api.playing?"progress":"ready",function(e,api){api.play(parseInt(index));api.one("ready",function(){fv_player_video_link_seek(api,fTime,abEnd,abStart)})});root.find(".fp-splash").attr("src",jQuery("[rel="+root.attr("id")+"] div").eq(index).find("img").attr("src"));if(!fv_player_in_iframe()){fv_player_notice(root,fv_flowplayer_translations[11],"progress")}}}else{if(api.ready){fv_player_video_link_seek(api,fTime)}else{if(fv_player_video_link_autoplay_can(api)){api.load()}else if(!fv_player_in_iframe()){fv_player_notice(root,fv_flowplayer_translations[11],"progress")}api.one("ready",function(){fv_player_video_link_seek(api,fTime,abEnd,abStart)})}}}function fv_player_video_link_seek(api,fTime,abEnd,abStart){fv_autoplay_exec_in_progress=false;var do_seek=setInterval(function(){if(api.loading)return;if(fTime>0||api.video.time>0){if(!!api.custom_seek){api.custom_seek(fTime)}else{api.seek(fTime)}}if(abEnd&&abStart)api.trigger("link-ab",[api,abStart,abEnd]);clearInterval(do_seek)},10)}var fv_autoplay_exec_in_progress=false;function fv_autoplay_exec(){var autoplay=true;if(typeof flowplayer!=="undefined"&&typeof fv_flowplayer_conf!="undefined"&&fv_flowplayer_conf.video_hash_links&&window.location.hash.substring(1).length){var aHash=window.location.hash.match(/\?t=/)?window.location.hash.substring(1).split("?t="):window.location.hash.substring(1).split(",");var hash=aHash[0];var time=aHash[1]===undefined?false:aHash[1];var abStart=aHash[2]===undefined?false:aHash[2];var abEnd=aHash[3]===undefined?false:aHash[3];jQuery(".flowplayer").each(function(){var root=jQuery(this);if(root.hasClass("lightbox-starter")){root=jQuery(root.attr("href"))}var api=root.data("flowplayer");if(!api)return;var playlist=typeof api.conf.playlist!=="undefined"&&api.conf.playlist.length>1?api.conf.playlist:[api.conf.clip];for(var item in playlist){if(!playlist.hasOwnProperty(item))continue;var id=typeof playlist[item].id!=="undefined"?fv_parse_sharelink(playlist[item].id.toString()):false;if(hash===id&&autoplay){console.log("fv_autoplay_exec for "+id,item);fv_autoplay_init(root,parseInt(item),time,abStart,abEnd);autoplay=false;return false}}for(var item in playlist){if(!playlist.hasOwnProperty(item))continue;var src=fv_parse_sharelink(playlist[item].sources[0].src);if(hash===src&&autoplay){console.log("fv_autoplay_exec for "+src,item);fv_autoplay_init(root,parseInt(item),time,abStart,abEnd);autoplay=false;return false}}})}if(autoplay&&flowplayer.support.firstframe){jQuery(".flowplayer[data-fvautoplay]").each(function(){var root=jQuery(this),api=root.data("flowplayer"),autoplay=root.attr("data-fvautoplay");if(!fv_player_did_autoplay&&autoplay){if((flowplayer.support.android||flowplayer.support.iOS)&&api&&api.conf.clip.sources[0].type=="video/youtube"){console.log("FV Player: Autoplay for YouTube not supported on Android and iOS");return}else{fv_player_did_autoplay=true;if(api.conf.playlist.length&&jQuery.isNumeric(autoplay)){api.play(parseInt(autoplay))}else{api.load()}var play_icon=root.find(".fp-play").addClass("invisible"),control_bar=root.find(".fp-controls").addClass("invisible");api.one("progress",function(){play_icon.removeClass("invisible");control_bar.removeClass("invisible")});if(autoplay=="muted"){api.mute(true,true)}}}})}}function fv_player_video_link_autoplay_can(api,item){var video=item?api.conf.playlist[item]:api.conf.clip;if(video.sources[0].type=="video/youtube"&&(flowplayer.support.iOS||flowplayer.support.android)||fv_player_in_iframe())return false;return flowplayer.support.firstframe}function fv_player_notice(root,message,timeout){var notices=jQuery(".fvfp-notices",root);if(!notices.length){notices=jQuery('<div class="fvfp-notices">');jQuery(".fp-player",root).append(notices)}var notice=jQuery('<div class="fvfp-notice-content">'+message+"</div></div>");notices.append(notice);if(typeof timeout=="string"){var player=jQuery(root).data("flowplayer");player.on(timeout,function(){notice.fadeOut(100,function(){jQuery(this).remove()})})}if(timeout>0){setTimeout(function(){notice.fadeOut(2e3,function(){jQuery(this).remove()})},timeout)}return notice}var fv_player_clipboard=function(text,successCallback,errorCallback){try{fv_player_doCopy(text);successCallback()}catch(e){if(typeof errorCallback!="undefined")errorCallback(e)}};function fv_player_doCopy(text){var textarea=document.createElement("textarea");textarea.value=text;textarea.style.opacity=0;textarea.style.position="absolute";textarea.setAttribute("readonly",true);document.body.appendChild(textarea);var selected=document.getSelection().rangeCount>0?document.getSelection().getRangeAt(0):false;if(navigator.userAgent.match(/ipad|ipod|iphone/i)){var editable=textarea.contentEditable;textarea.contentEditable=true;var range=document.createRange();range.selectNodeContents(textarea);var sel=window.getSelection();sel.removeAllRanges();sel.addRange(range);textarea.setSelectionRange(0,999999);textarea.contentEditable=editable}else{textarea.select()}try{var result=document.execCommand("copy");if(selected){document.getSelection().removeAllRanges();document.getSelection().addRange(selected)}document.body.removeChild(textarea);return result}catch(err){throw new Error("Unsuccessfull")}}flowplayer(function(api,root){root=jQuery(root);var hlsjs;flowplayer.engine("hlsjs-lite").plugin(function(params){hlsjs=params.hls;hlsjs.on(Hls.Events.ERROR,function(event,data){if(data.type=="mediaError"&&data.details=="fragParsingError"&&data.fatal==true){hlsjs.destroy();api.trigger("error",[api,{code:3}]);setTimeout(function(){root.removeClass("is-seeking");root.addClass("is-paused")},0)}});if(flowplayer.support.browser.safari){hlsjs.on(Hls.Events.KEY_LOADED,function(event){if(event=="hlsKeyLoaded"){setTimeout(function(){if(api.loading){console.log("FV Player: Safari stuck loading HLS, resuming playback...");api.resume()}},0)}})}var pick_quality=flowplayer.conf.hd_streaming&&!flowplayer.support.fvmobile?720:false;if(jQuery(params.root).data("hd_streaming")==false)pick_quality=false;if(localStorage.FVPlayerHLSQuality)pick_quality=localStorage.FVPlayerHLSQuality;if(pick_quality){hlsjs.on(Hls.Events.MANIFEST_PARSED,function(_,data){var found=false;jQuery.each(data.levels,function(k,v){if(v.height==pick_quality)found=k});if(!localStorage.FVPlayerHLSQuality&&!found){jQuery.each(data.levels,function(k,v){if(v.height>found)found=k})}if(found){console.log("FV Player: Picked "+data.levels[found].height+"p quality");hlsjs.startLevel=found;hlsjs.currentLevel=found}})}});root=jQuery(root);var search=document.location.search;if(localStorage.FVPlayerDashQuality){if(!api.conf.dash)api.conf.dash={};api.conf.dash.initialVideoQuality="restore"}root.on("click",".fp-qsel-menu a",function(){if(api.engine.engineName=="hlsjs-lite"){var quality=jQuery(this).data("quality");if(quality==-1){localStorage.removeItem("FVPlayerHLSQuality")}else{var level=hlsjs.levels[quality];localStorage.FVPlayerHLSQuality=level.height}}});if(localStorage.FVPlayerHLSQuality){api.conf.hlsjs.startLevel=parseInt(localStorage.FVPlayerHLSQuality);api.conf.hlsjs.testBandwidth=false;api.conf.hlsjs.autoLevelEnabled=false}else if(flowplayer.conf.hd_streaming&&!flowplayer.support.fvmobile){api.conf.hlsjs.startLevel=3;api.conf.hlsjs.testBandwidth=false;api.conf.hlsjs.autoLevelEnabled=false}api.bind("quality",function(e,api,quality){if(api.engine.engineName=="dash"){if(quality==-1){localStorage.removeItem("FVPlayerDashQuality")}else if(bitrates[quality]){localStorage.FVPlayerDashQuality=bitrates[quality].height}}});var bitrates=[];var last_quality=-1;api.bind("ready",function(e,api){root.find(".fp-qsel-menu strong").text(fv_flowplayer_translations.quality);if(api.engine.engineName=="dash"){bitrates=api.engine.dash.getBitrateInfoListFor("video");if(localStorage.FVPlayerDashQuality&&api.conf.dash.initialVideoQuality){api.quality(api.conf.dash.initialVideoQuality)}quality_sort()}else if(api.engine.engineName=="hlsjs-lite"){root.addClass("is-loading");api.loading=true;api.one("progress",function(){if(api.loading){root.removeClass("is-loading");api.loading=false}});if(api.video.qualities&&api.video.qualities.length>2){var qswitch=-1;if(localStorage.FVPlayerHLSQuality){jQuery(api.video.qualities).each(function(k,v){if(v.value==localStorage.FVPlayerHLSQuality){qswitch=localStorage.FVPlayerHLSQuality;return false}})}else if(flowplayer.conf.hd_streaming&&!flowplayer.support.fvmobile){jQuery(api.video.qualities).each(function(k,v){var height=parseInt(v.label);if(height>0&&qswitch==-1&&height>=720&&height<=720){qswitch=v.value}})}qswitch=parseInt(qswitch);if(qswitch>-1){root.one("progress",function(){setTimeout(function(){api.quality(qswitch)})})}quality_sort()}}else if(api.video.sources_fvqs&&api.video.sources_fvqs.length>0&&api.video.src.match(/vimeo.*?\.mp4/)){setTimeout(quality_sort,0)}root.find("a[data-quality]").removeClass("is-current")});if(search.match(/dash_debug/)||search.match(/hls_debug/))var debug_log=jQuery('<div class="fv-debug" style="background: gray; color: white; top: 10%; position: absolute; z-index: 1000">').appendTo(root.find(".fp-player"));api.bind("ready progress",quality_process);api.bind("quality",function(){setTimeout(quality_process,0)});function quality_process(){if(api.engine.engineName=="dash"){var stream_info=bitrates[api.engine.dash.getQualityFor("video")];if(stream_info.qualityIndex!=last_quality){last_quality=stream_info.qualityIndex;quality_label(stream_info.qualityIndex,bitrates)}if(search.match(/dash_debug/))quality_debug(stream_info.width,stream_info.height,stream_info.bitrate)}else if(api.engine.engineName=="hlsjs-lite"){if(hlsjs.currentLevel!=last_quality){last_quality=hlsjs.currentLevel;quality_label(hlsjs.currentLevel,hlsjs.levels)}if(search.match(/hls_debug/)){var level=hlsjs.levels[hlsjs.currentLevel];if(level){quality_debug(level.width,level.height,level.bitrate)}}}}function quality_label(index,qualities){if(!qualities[index])return;var height=qualities[index].height,hd_limit=541,lowest=1e5;jQuery(qualities).each(function(k,v){if(v.height>=720&&v.height<1400)hd_limit=720;if(v.height<lowest)lowest=v.height;if(localStorage.FVPlayerHLSQuality==v.height){root.find("a[data-quality]").removeClass("fp-selected fp-color");root.find("a[data-quality="+k+"]").addClass("fp-selected fp-color")}});root.find("a[data-quality]").removeClass("is-current");root.find("a[data-quality="+index+"]").addClass("is-current");var label="SD";if(height>=360&&lowest<height)label="SD";if(height>=hd_limit)label="HD";if(height>=1400)label="4K";root.find(".fp-qsel").html(label)}function quality_debug(w,h,br){debug_log.html("Using "+w+"x"+h+" at "+Math.round(br/1024)+" kbps")}function quality_sort(){var menu=root.find(".fp-qsel-menu");menu.children().each(function(i,a){menu.prepend(a)});menu.children().each(function(i,a){if(/^NaNp/.test(jQuery(a).html())){var bitrate=jQuery(a).html().match(/\((.*?)\)/);if(bitrate&&typeof bitrate[1]!=="undefined"){jQuery(a).html(bitrate[1])}}else{jQuery(a).html(jQuery(a).html().replace(/\(.*?\)/,""))}});menu.prepend(menu.find("a[data-quality=-1]"));menu.prepend(menu.find("strong"))}});flowplayer(function(api,root){root=jQuery(root);var player_id=root.attr("id"),ad=false;if(root.data("end_popup_preview")){jQuery(document).ready(function(){api.trigger("finish",[api])})}function ad_height_check(){var count=0;var ad_height_check=setInterval(function(){var height=ad&&ad.find(".adsbygoogle").height();count++;if(count>20*10||height>0)clearInterval(ad_height_check);if(height>root.height()){ad.addClass("tall-ad")}},50)}function show_ad(){var ad_data=root.attr("data-ad");if(typeof ad_data!="undefined"&&ad_data.length){try{ad_data=JSON.parse(ad_data)}catch(e){return false}if(!ad&&!root.hasClass("is-cva")&&root.width()>=parseInt(ad_data.width)){var html=ad_data.html;html=html.replace("%random%",Math.random());ad=jQuery('<div id="'+player_id+'_ad" class="wpfp_custom_ad">'+html+"</div>");root.find(".fp-player").append(ad);ad_height_check();setTimeout(function(){if(root.find(".wpfp_custom_ad video").length){api.pause()}},500)}}}function show_popup(event){var popup_data=root.attr("data-popup");if(typeof popup_data!="undefined"&&popup_data.length){try{popup_data=JSON.parse(popup_data)}catch(e){return false}if(event=="finish"||popup_data.pause||popup_data.html.match(/fv-player-ppv-purchase-btn-wrapper/)){root.addClass("is-popup-showing");root.find(".fp-player").append('<div id="'+player_id+'_custom_popup" class="wpfp_custom_popup">'+popup_data.html+"</div>")}}}api.bind("ready",function(e,api){if(ad.length==1){ad.remove();ad=false}if(!root.data("ad_show_after")){show_ad()}}).bind("progress",function(e,api,current){if(current>root.data("ad_show_after")){show_ad()}}).bind("finish",function(e,api){if(typeof api.video.index=="undefined"||api.video.index+1==api.conf.playlist.length){show_popup(e.type)}}).bind("pause",function(e,api){show_popup(e.type)}).bind("resume unload seek",function(e,api){if(root.hasClass("is-popup-showing")){root.find(".wpfp_custom_popup").remove();root.removeClass("is-popup-showing")}})});jQuery(document).on("click",".fv_fp_close",function(){var ad=jQuery(this).parents(".wpfp_custom_ad_content"),video=ad.find("video");ad.fadeOut();if(video.length)video[0].pause();return false});jQuery(document).on("focus",".fv_player_popup input[type=text], .fv_player_popup input[type=email], .fv_player_popup textarea",function(){var api=jQuery(this).parents(".flowplayer").data("flowplayer");if(api)api.disable(true)});jQuery(document).on("blur",".fv_player_popup input[type=text], .fv_player_popup input[type=email], .fv_player_popup textarea",function(){var api=jQuery(this).parents(".flowplayer").data("flowplayer");if(api)api.disable(false)});flowplayer(function(api,root){var root=jQuery(root),bean=flowplayer.bean,time=0,last=0,timer,event_name;if(typeof ga=="undefined"&&api.conf.fvanalytics&&typeof _gat=="undefined"&&typeof gtag=="undefined"){if(is_ga_4(api)){jQuery.getScript({url:"https://www.googletagmanager.com/gtag/js?id="+api.conf.fvanalytics,cache:true},function(){window.dataLayer=window.dataLayer||[];window.gtag=function(){window.dataLayer.push(arguments)};window.gtag("js",new Date);window.gtag("config",api.conf.fvanalytics)})}else{jQuery.getScript({url:"https://www.google-analytics.com/analytics.js",cache:true},function(){ga("create",api.conf.fvanalytics,"auto")})}}if(!window._paq&&api.conf.matomo_domain&&api.conf.matomo_site_id){var u="//"+api.conf.matomo_domain+"/";var _paq=window._paq=window._paq||[];_paq.push(["setTrackerUrl",u+"matomo.php"]);_paq.push(["setSiteId",api.conf.matomo_site_id]);var d=document,g=d.createElement("script"),s=d.getElementsByTagName("script")[0];g.type="text/javascript";g.async=true;g.src=u+"matomo.js";s.parentNode.insertBefore(g,s)}api.bind("progress",function(e,api,current){fv_track(e,api,current)}).bind("finish ready ",function(e,api){for(var j in fv_ga_events){if(!fv_ga_events.hasOwnProperty(j))continue;root.removeData("fv_track_"+fv_ga_events[j])}}).bind("error",function(e,api,error){setTimeout(function(){if(!api.error)return;var video=typeof api.video!="undefined"&&typeof api.video.src!="undefined"?api.video:false;if(!video&&typeof api.conf.clip!="undefined"&&typeof api.conf.clip.sources!="undefined"&&typeof api.conf.clip.sources[0]!="undefined"&&typeof api.conf.clip.sources[0].src!="undefined")video=api.conf.clip.sources[0];var name=fv_player_track_name(root,video);if(name&&!name.match(/\/\/vimeo.com\/\d/)){if(is_ga_4(api)){}else{fv_player_track(api,false,"Video "+(root.hasClass("is-cva")?"Ad ":"")+"error",error.message,name)}}},100)});api.bind("load unload",fv_track_seconds_played).bind("progress",function(e,api){if(!api.seeking){time+=last?+new Date-last:0;last=+new Date}if(!timer){timer=setTimeout(function(){timer=null;if(!is_ga_4(api)){fv_player_track(api,false,"Flowplayer heartbeat",api.engine.engineName+"/"+api.video.type,"Heartbeat",0)}},10*60*1e3)}}).bind("pause",function(){last=0});api.bind("shutdown",function(){bean.off(window,"unload",fv_track_seconds_played)});bean.on(window,"unload",fv_track_seconds_played);var fv_ga_events=is_ga_4(api)?["Play","25 Percent Played","50 Percent Played","75 Percent Played","100 Percent Played"]:["start","first quartile","second quartile","third quartile","complete"];function fv_track_seconds_played(e,api_not_needed,video){video=video||api.video;if(e.type==="load"){event_name=fv_player_track_name(root,video)}if(time){fv_player_track(api,false,"Video / Seconds played",api.engine.engineName+"/"+api.video.type,event_name,Math.round(time/1e3));time=0;if(timer){clearTimeout(timer);timer=null}}}function fv_track(e,api,data){var video=api.video,dur=video.duration,i=0;var name=fv_player_track_name(root,video);if(dur){if(data>19*dur/20)i=4;else if(data>3*dur/4)i=3;else if(data>dur/2)i=2;else if(data>dur/4)i=1}if(api.live)i=0;if(root.data("fv_track_"+fv_ga_events[i]))return;for(var j in fv_ga_events){if(!fv_ga_events.hasOwnProperty(j))continue;if(j==i)break;if(!root.data("fv_track_"+fv_ga_events[j]))return}root.trigger("fv_track_"+fv_ga_events[i].replace(/ /,"_"),[api,name]);root.data("fv_track_"+fv_ga_events[i],true);fv_player_track(api,false,"Video "+(root.hasClass("is-cva")?"Ad ":"")+fv_ga_events[i],api.engine.engineName+"/"+video.type,name)}api.get_time_played=function(){return time/1e3}});function is_ga_4(api){if(typeof api.conf.fvanalytics!="undefined"&&api.conf.fvanalytics&&api.conf.fvanalytics.startsWith("G-"))return true;return false}function fv_player_track(api,ga_id,event,engineType,name,value){if(!ga_id)ga_id=flowplayer.conf.fvanalytics;if(typeof engineType=="undefined")engineType="Unknown engine";if(/fv_player_track_debug/.test(window.location.href))console.log("FV Player Track: "+event+" - "+engineType+" '"+name+"'",value);if(typeof gtag!="undefined"){if(is_ga_4(api)){gtag("event",event,{video_current_time:api.video.time,video_provider:engineType,video_duration:api.video.duration,value:value?value:1})}else{gtag("event",event,{event_category:engineType,event_label:name,value:value?value:1})}}else if(ga_id&&typeof ga!="undefined"){ga("create",ga_id,"auto",name,{allowLinker:true});ga("require","linker");if(value){ga("send","event",event,engineType,name,value)}else{ga("send","event",event,engineType,name)}}else if(ga_id&&typeof _gat!="undefined"){var tracker=_gat._getTracker(ga_id);if(typeof tracker._setAllowLinker=="undefined"){return}tracker._setAllowLinker(true);if(value){tracker._trackEvent(event,engineType,name,value)}else{tracker._trackEvent(event,engineType,name)}}if(flowplayer.conf.matomo_domain&&flowplayer.conf.matomo_site_id&&typeof _paq!="undefined"){if(value){_paq.push(["trackEvent",event,engineType,name,value])}else{_paq.push(["trackEvent",event,engineType,name])}}}function fv_player_track_name(root,video){var name=root.attr("title");if(!name&&typeof video.fv_title!="undefined")name=video.fv_title;if(!name&&typeof video.title!="undefined")name=video.title;if(!name&&typeof video.src!="undefined"){name=video.src.split("/").slice(-1)[0].replace(/\.(\w{3,4})(\?.*)?$/i,"");if(video.type.match(/mpegurl/))name=video.src.split("/").slice(-2)[0].replace(/\.(\w{3,4})(\?.*)?$/i,"")+"/"+name}return name}flowplayer(function(api,root){root=jQuery(root);var player=root.find(".fp-player"),had_no_volume=root.hasClass("no-volume"),had_fp_mute=root.hasClass("fp-mute"),had_fp_full=root.hasClass("fp-full"),buttons_count=0;function check_size(){var width=player.width()||root.width(),video_index=api.video.index?api.video.index:0;if(width>900){jQuery(".fp-subtitle",root).addClass("is-wide")}else{jQuery(".fp-subtitle",root).removeClass("is-wide")}root.toggleClass("is-tiny",width<400);root.toggleClass("is-small",width<600&&width>=400);var too_narrow=width<480+buttons_count*35;if(typeof api.fv_timeline_chapters_data!="undefined"&&typeof api.fv_timeline_chapters_data[video_index]!="undefined"){too_narrow=true}if(!had_fp_full){root.toggleClass("fp-full",root.hasClass("has-abloop")||too_narrow)}var size="";if(width<400)size="is-tiny";else if(width<600&&width>=400)size="is-small";root.trigger("fv-player-size",[size]);var el=player;if(root.parent().hasClass("fp-playlist-vertical-wrapper")||root.parent().hasClass("fp-playlist-text-wrapper"))el=root.parent();if(el.width()<=560){el.addClass("is-fv-narrow")}else{el.removeClass("is-fv-narrow")}if(width<=320){root.addClass("no-volume fp-mute")}else{if(!had_no_volume)root.removeClass("no-volume");if(!had_fp_mute)root.removeClass("fp-mute")}}check_size();jQuery(window).on("resize",check_size);api.on("ready fullscreen fullscreen-exit sticky sticky-exit",function(e){setTimeout(function(){buttons_count=root.find(".fp-controls > strong:visible").length+root.find(".fp-controls > .fp-icon:visible").length;check_size()},0)});api.on("unload pause finish error",function(){if(typeof checker!=="undefined")clearInterval(checker)})});jQuery(window).on("resize tabsactivate",function(){jQuery(".fp-playlist-external").each(function(){var playlist=jQuery(this);if(playlist.parent().width()>=900)playlist.addClass("is-wide");else playlist.removeClass("is-wide")})}).trigger("resize");flowplayer(function(api,root){api.bind("ready",function(){if(/Chrome/.test(navigator.userAgent)&&parseFloat(/Chrome\/(\d\d)/.exec(navigator.userAgent)[1],10)>54){if(api.video.subtitles){jQuery(root).addClass("chrome55fix-subtitles")}else{jQuery(root).addClass("chrome55fix")}}});root=jQuery(root);var image_src=root.css("background-image");if(image_src){image_src=image_src.replace(/url\((['"])?(.*?)\1\)/gi,"$2").split(",");if(!image_src||!image_src[0].match(/^(https?:)?\/\//))return;var image=new Image;image.src=image_src[0];var image_ratio=image.height/image.width;var player_ratio=root.height()/root.width();var ratio_diff=Math.abs(player_ratio-image_ratio);if(ratio_diff<.05){root.css("background-size","cover")}}});(function($){$(window).on("resize",function(){var iframe=$("iframe[id][src][height][width]");iframe.each(function(){if($(this).attr("id").match(/(fv_vimeo_)|(fv_ytplayer_)/)&&$(this).width()<=$(this).attr("width"))$(this).height($(this).width()*$(this).attr("height")/$(this).attr("width"))});var wistia=jQuery(".wistia_embed");wistia.each(function(){$(this).height($(this).width()*$(this).data("ratio"))})}).trigger("resize")})(jQuery);jQuery(document).on("tabsactivate",".fv_flowplayer_tabs_content",function(event,ui){var oldPlayer=jQuery(".flowplayer.is-playing").data("flowplayer");if(typeof oldPlayer!="undefined"){oldPlayer.pause()}var objPlayer=jQuery(".flowplayer",ui.newPanel);var api=objPlayer.data("flowplayer");api.load()});flowplayer(function(api,root){root=jQuery(root);var bean=flowplayer.bean;if(root.hasClass("is-audio")){bean.off(root[0],"mouseenter");bean.off(root[0],"mouseleave");root.removeClass("is-mouseout");root.addClass("fixed-controls").addClass("is-mouseover");api.on("error",function(e,api,error){jQuery(".fp-message",root).html(jQuery(".fp-message",root).html().replace(/video/,"audio"))});root.on("click",function(e){if(!api.ready){e.preventDefault();e.stopPropagation();api.load()}})}});flowplayer(function(api,root){if(!api.conf.fv_chromecast)return;if(!window["__onGCastApiAvailable"]){jQuery.getScript({url:"https://www.gstatic.com/cv/js/sender/v1/cast_sender.js",cache:true});window["__onGCastApiAvailable"]=function(loaded){if(!loaded)return;initialize()}}var conf=api.conf.chromecast||{},session,timer,trigger,bean=flowplayer.bean,common=flowplayer.common,waiting_for_seek=false;function initialize(){var applicationId,sessionRequest,apiConfig;applicationId=conf.applicationId||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID;sessionRequest=new chrome.cast.SessionRequest(applicationId);apiConfig=new chrome.cast.ApiConfig(sessionRequest,sessionListener,receiverListener);chrome.cast.initialize(apiConfig,onInitSuccess,onError)}function sessionListener(){}function receiverListener(ev){console.log("FV Player: Chromecast listener",ev);if(ev!==chrome.cast.ReceiverAvailability.AVAILABLE)return;flowplayer.conf.chromecast_available=true}function onInitSuccess(){}function onError(){console.log("chromecast onError")}function createUIElements(){var btnContainer=common.find(".fp-header",root)[0];if(!btnContainer)return;common.find(".fp-chromecast",btnContainer).forEach(common.removeNode);common.find(".fp-chromecast-engine",root).forEach(common.removeNode);trigger=common.createElement("a",{class:"fp-chromecast fp-icon",title:"Play on Cast device"});btnContainer.appendChild(trigger);var chromeCastEngine=common.createElement("div",{class:"fp-chromecast-engine"}),chromeCastStatus=common.createElement("p",{class:"fp-chromecast-engine-status"}),chromeCastIcon=common.createElement("p",{class:"fp-chromecast-engine-icon"});chromeCastEngine.appendChild(chromeCastIcon);chromeCastEngine.appendChild(chromeCastStatus);var engine=common.find(".fp-engine",root)[0];if(!engine)common.prepend(common.find(".fp-player",root)[0]||root,chromeCastEngine);else engine.parentNode.insertBefore(chromeCastEngine,engine)}function destroy(){clearInterval(timer);timer=null;api.release();common.toggleClass(root,"is-chromecast",false);common.toggleClass(trigger,"fp-active",false)}function get_media(){var media=false;var sources=api.video.sources_fvqs||api.video.sources;for(var i in sources){var type=sources[i].type;if(type=="video/mp4"||type=="video/fv-mp4"||type=="application/dash+xml"){media=sources[i];break}}if(!media){for(var i in sources){if(sources[i].type=="application/x-mpegurl"){media=sources[i];break}}}if(api.video.fvhkey&&!api.conf.hls_cast)return false;if(media){var top_quality=false,mp4_qualities=["fullhd","hd","md","sd"];for(var quality in mp4_qualities){var re=new RegExp("-"+mp4_qualities[quality]);for(var i in api.video.sources_fvqs){var source=api.video.sources_fvqs[i];if(source.src.match(re)&&source.type=="video/mp4"){top_quality=source;break}}if(top_quality){media=top_quality;break}}}return media}function load_media(){var media=get_media();if(!media){return false}var cast_subtitles=[];if(api.video.subtitles){api.video.subtitles.forEach(function(v,k){if(v.src.match(/\.srt/)){console.log("FV Player: Chromecast doesn't support SRT subtitles")}var subtitles=new chrome.cast.media.Track(k,chrome.cast.media.TrackType.TEXT);subtitles.trackContentId=v.src;subtitles.trackContentType="text/vtt";subtitles.subtype=chrome.cast.media.TextTrackType.SUBTITLES;subtitles.name=v.label;subtitles.language=v.srclang+"-"+k,subtitles.customData=null;cast_subtitles.push(subtitles)})}var mediaInfo=new chrome.cast.media.MediaInfo(media.src,media.type);mediaInfo.tracks=cast_subtitles;var request=new chrome.cast.media.LoadRequest(mediaInfo);if(!api.live){request.currentTime=api.video.time}clearInterval(timer);timer=false;session.loadMedia(request,onMediaDiscovered,function onMediaError(e){console.log("onMediaError",e)})}function onMediaDiscovered(chromecast){switch_tracks(chromecast);chromecast.addUpdateListener(function(alive){if(!session)return;timer=timer||setInterval(function(){api.trigger("progress",[api,chromecast.getEstimatedTime()]);chromecast.activeTrackIds.forEach(function(track_id){jQuery.each(chromecast.media.tracks,function(k,v){if(v.trackId==track_id&&v.type=="AUDIO"){var found=hilight_audio_track("data-audio",v.language);if(!found){hilight_audio_track("data-lang",v.language)}return false}})})},500);if(alive){common.toggleClass(root,"is-chromecast",true);common.toggleClass(trigger,"fp-active",true);api.hijack({pause:function(){console.log("hijacked pause!");chromecast.pause()},resume:function(){if(api.finished){clearInterval(timer);timer=null;api.release();load_media();return}chromecast.play()},seek:function(time){var req=new chrome.cast.media.SeekRequest;req.currentTime=time;chromecast.seek(req)}})}var playerState=chromecast.playerState;if(api.paused&&playerState===chrome.cast.media.PlayerState.PLAYING)api.trigger("resume",[api]);if(api.playing&&playerState===chrome.cast.media.PlayerState.PAUSED)api.trigger("pause",[api]);if(api.seeking&&playerState===chrome.cast.media.PlayerState.BUFFERING){waiting_for_seek=true}if(api.seeking&&playerState===chrome.cast.media.PlayerState.PLAYING&&waiting_for_seek){waiting_for_seek=false;api.trigger("seek",[api])}if(playerState==chrome.cast.media.PlayerState.IDLE&&chromecast.idleReason==chrome.cast.media.IdleReason.FINISHED){api.trigger("finish",[api])}common.toggleClass(root,"is-loading",playerState===chrome.cast.media.PlayerState.BUFFERING)})}api.bind("ready",function(e,api,video){if(session){if(get_media()){api.one("progress",function(e,api){api.release();api.pause();api.mute(false,true);load_media()});api.mute(true,true)}else{session.stop();session=null;destroy();jQuery(trigger).hide()}return}if(!flowplayer.conf.chromecast_available)return;if(get_media()){createUIElements();jQuery(trigger).show()}else{FV_Flowplayer_Pro.log("FV Player: Can't find media source suitable for Chromecast!");jQuery(trigger).hide()}});bean.on(root,"click",".fp-chromecast",function(ev){ev.preventDefault();if(session){api.trigger("pause",[api]);if(session.media[0].media){var seek=session.media[0].getEstimatedTime();setTimeout(function(){api.seek(seek)},0)}session.stop();session=null;destroy();return}if(api.playing)api.pause();chrome.cast.requestSession(function(s){jQuery(root).addClass("is-loading");session=s;var receiverName=session.receiver.friendlyName;common.html(common.find(".fp-chromecast-engine-status",root)[0],"Playing on device "+receiverName);load_media()},function(err){console.error("requestSession error",err)})});bean.on(root,"click",".fv-fp-hls-menu [data-audio], .fp-subtitle-menu [data-subtitle-index]",function(){if(session&&session.media[0].media){switch_tracks(session.media[0]);return false}});jQuery(window).on("unload",function(){if(session){session.stop()}});function hilight_audio_track(attr,chromecast_language){var audio_tracks_menu=jQuery(root).find(".fv-fp-hls-menu a"),found=false;audio_tracks_menu.each(function(k,el){if(jQuery(el).attr(attr)===chromecast_language){jQuery(el).addClass("fp-selected");found=true}else{jQuery(el).removeClass("fp-selected")}});return found}function switch_tracks(chromecast){console.log(chromecast.media.tracks);var audio=jQuery(root).find(".fv-fp-hls-menu [data-audio].fp-selected").data("audio"),audio_lang=jQuery(root).find(".fv-fp-hls-menu [data-audio].fp-selected").data("lang"),subtitle_index=jQuery(root).find(".fp-subtitle-menu [data-subtitle-index].fp-selected").data("subtitle-index"),subtitles=subtitle_index>-1?api.video.subtitles[subtitle_index].srclang:false;var audio_found=false,subtitles_found=false,tracks_selected=[];jQuery.each(chromecast.media.tracks,function(k,v){if(v.language==audio&&v.type=="AUDIO"){audio_found=v}if(v.language==subtitles+"-"+subtitle_index&&v.type=="TEXT"){subtitles_found=v}});if(!audio_found){jQuery.each(chromecast.media.tracks,function(k,v){if(v.language==audio_lang&&v.type=="AUDIO"){audio_found=v;return false}})}var debug_log="";if(audio_found){tracks_selected.push(audio_found.trackId);debug_log+=audio_found.language+" audio"}if(subtitles_found){tracks_selected.push(subtitles_found.trackId);if(debug_log)debug_log+=" ";debug_log+=subtitles_found.language+" subtitles"}if(tracks_selected){var request=new chrome.cast.media.EditTracksInfoRequest(tracks_selected);chromecast.editTracksInfo(request,function(){console.log("FV Player: Chromecast "+debug_log+" loaded")},function(){console.log("FV Player: Chromecast "+debug_log+" failed")})}}});jQuery(document).on("mfpClose",function(){if(typeof jQuery(".flowplayer").data("flowplayer")!="undefined")jQuery(".flowplayer").data("flowplayer").unload()});jQuery(document).on("click",".vc_tta-tab a",function(){var api=jQuery(".flowplayer.is-playing").data("flowplayer");if(api)api.pause()});flowplayer(function(api,root){root=jQuery(root);api.bind("ready",function(){setTimeout(function(){var video=jQuery("video",root);if(video.length>0){video.prop("autoplay",false)}},100);root.find("video.fp-engine").addClass("intrinsic-ignore")})});jQuery(".flowplayer").on("ready",function(e,api){if(/BB10/.test(navigator.userAgent)){api.fullscreen()}});var fv_flowplayer_safety_resize_arr=Array();function fv_flowplayer_safety_resize(){var fv_flowplayer_safety_resize_init=false;jQuery(".flowplayer").each(function(){if(!jQuery(this).is(":visible")||jQuery(this).hasClass("lightboxed")||jQuery(this).hasClass("lightbox-starter")||jQuery(this).hasClass("is-audio"))return;if(jQuery(this).width()<30||jQuery(this).height()<20){fv_flowplayer_safety_resize_init=true;var el=jQuery(this);while(jQuery(el).width()<30||jQuery(el).width()==jQuery(this).width()){if(jQuery(el).parent().length==0)break;el=jQuery(el).parent()}jQuery(this).width(jQuery(el).width());jQuery(this).height(parseInt(jQuery(this).width()*jQuery(this).attr("data-ratio")));fv_flowplayer_safety_resize_arr[jQuery(this).attr("id")]=el}});if(fv_flowplayer_safety_resize_init){jQuery(window).resize(function(){jQuery(".flowplayer").each(function(){if(jQuery(this).hasClass("lightboxed")||jQuery(this).hasClass("lightbox-starter"))return;if(fv_flowplayer_safety_resize_arr[jQuery(this).attr("id")]){jQuery(this).width(fv_flowplayer_safety_resize_arr[jQuery(this).attr("id")].width());jQuery(this).height(parseInt(jQuery(this).width()*jQuery(this).attr("data-ratio")))}})})}}if(typeof flowplayer.conf.safety_resize!="undefined"&&flowplayer.conf.safety_resize){jQuery(document).ready(function(){setTimeout(function(){fv_flowplayer_safety_resize()},10)})}var isIE11=!!navigator.userAgent.match(/Trident.*rv[ :]*11\./);if(isIE11){jQuery(document).ready(function(){jQuery(".fp-waiting").hide()});flowplayer(function(api,root){api.bind("load",function(e){jQuery(e.currentTarget).find(".fp-waiting").show()}).bind("beforeseek",function(e){jQuery(e.currentTarget).find(".fp-waiting").show()}).bind("progress",function(e){jQuery(e.currentTarget).find(".fp-waiting").hide()}).bind("seek",function(e){jQuery(e.currentTarget).find(".fp-waiting").hide()}).bind("fullscreen",function(e){jQuery("#wpadminbar").hide()}).bind("fullscreen-exit",function(e){jQuery("#wpadminbar").show()})})}if(flowplayer.support.browser&&flowplayer.support.browser.msie&&parseInt(flowplayer.support.browser.version,10)<9){jQuery(".flowplayer").each(function(){jQuery(this).css("width",jQuery(this).css("max-width"));jQuery(this).css("height",jQuery(this).css("max-height"))})}if(location.href.match(/elementor-preview=/)){console.log("FV Player: Elementor editor is active");setInterval(fv_player_load,1e3)}else if(location.href.match(/brizy-edit-iframe/)){console.log("FV Player: Brizy editor is active");setInterval(fv_player_load,1e3)}if(window.DELEGATE_NAMES){flowplayer(function(api,root){fv_player_notice(root,fv_flowplayer_translations.chrome_extension_disable_html5_autoplay)})}flowplayer(function(api,root){flowplayer.bean.off(root,"contextmenu")});if(location.href.match(/elementor-preview=/)){console.log("FV Player: Elementor editor is active");setInterval(fv_player_load,1e3)}flowplayer(function(player,root){root=jQuery(root);if(typeof root.data("fv-embed")=="undefined"||!root.data("fv-embed")||root.data("fv-embed")=="false")return;player.embedCode=function(){var video=player.video;var width=root.width();var height=root.height();height+=2;if(root.hasClass("has-chapters")||root.hasClass("has-transcript")){height+=300}if(jQuery(".fp-playlist-external[rel="+root.attr("id")+"]").length>0){height+=150+20}var link=root.data("fv-embed")+"#"+fv_player_get_video_link_hash(player);return'<iframe src="'+link+'" allowfullscreen width="'+width+'" height="'+height+'" frameborder="0" style="max-width:100%"></iframe>'}});jQuery(document).on("click",".flowplayer .embed-code-toggle",function(){var button=jQuery(this);var player=button.parents(".flowplayer");var api=player.data("flowplayer");if(typeof api.embedCode=="function"){player.find(".embed-code textarea").val(api.embedCode())}fv_player_clipboard(player.find(".embed-code textarea").val(),function(){fv_player_notice(player,fv_flowplayer_translations.embed_copied,2e3)},function(){button.parents(".fvp-share-bar").find(".embed-code").toggle();button.parents(".fvp-share-bar").toggleClass("visible")});return false});flowplayer(function(player,root){if(jQuery(root).data("fullscreen")==false){return}player.one("ready",function(e,api,video){if(jQuery(root).find(".fp-fullscreen").length==0){jQuery(root).find(".fp-header").append('<a class="fp-fullscreen fp-icon"></a>')}});var FS_ENTER="fullscreen",FS_EXIT="fullscreen-exit",FS_SUPPORT=flowplayer.support.fullscreen,win=window,scrollX,scrollY,bean=flowplayer.bean;player.fullscreen=function(flag){if(player.disabled)return;var video=common.find("video.fp-engine",root)[0];if(flowplayer.conf.native_fullscreen&&video&&flowplayer.support.iOS){player.trigger(FS_ENTER,[player]);bean.on(document,"webkitfullscreenchange.nativefullscreen",function(){if(document.webkitFullscreenElement!==video)return;bean.off(document,".nativefullscreen");bean.on(document,"webkitfullscreenchange.nativefullscreen",function(){if(document.webkitFullscreenElement)return;bean.off(document,".nativefullscreen");player.trigger(FS_EXIT,[player])})});video.webkitEnterFullScreen();bean.one(video,"webkitendfullscreen",function(){bean.off(document,"fullscreenchange.nativefullscreen");player.trigger(FS_EXIT,[player]);common.prop(video,"controls",true);common.prop(video,"controls",false)});return}var wrapper=jQuery(root).find(".fp-player")[0];if(flag===undefined)flag=!player.isFullscreen;if(flag){scrollY=win.scrollY;scrollX=win.scrollX}if(FS_SUPPORT){if(flag){["requestFullScreen","webkitRequestFullScreen","mozRequestFullScreen","msRequestFullscreen"].forEach(function(fName){if(typeof wrapper[fName]==="function"){wrapper[fName]({navigationUI:"hide"});if(fName==="webkitRequestFullScreen"&&!document.webkitFullscreenElement){wrapper[fName]()}}})}else{["exitFullscreen","webkitCancelFullScreen","mozCancelFullScreen","msExitFullscreen"].forEach(function(fName){if(typeof document[fName]==="function"){document[fName]()}})}}else{player.trigger(flag?FS_ENTER:FS_EXIT,[player])}return player};var lastClick,common=flowplayer.common;player.on("mousedown.fs",function(){if(+new Date-lastClick<150&&player.ready)player.fullscreen();lastClick=+new Date});player.on(FS_ENTER,function(){common.addClass(root,"is-fullscreen");common.toggleClass(root,"fp-minimal-fullscreen",common.hasClass(root,"fp-minimal"));common.removeClass(root,"fp-minimal");if(!FS_SUPPORT)common.css(root,"position","fixed");player.isFullscreen=true}).on(FS_EXIT,function(){var oldOpacity;common.toggleClass(root,"fp-minimal",common.hasClass(root,"fp-minimal-fullscreen"));common.removeClass(root,"fp-minimal-fullscreen");if(!FS_SUPPORT&&player.engine==="html5"){oldOpacity=root.css("opacity")||"";common.css(root,"opacity",0)}if(!FS_SUPPORT)common.css(root,"position","");common.removeClass(root,"is-fullscreen");if(!FS_SUPPORT&&player.engine==="html5")setTimeout(function(){root.css("opacity",oldOpacity)});player.isFullscreen=false;if(player.engine.engineName!="fvyoutube"){win.scrollTo(scrollX,scrollY)}}).on("unload",function(){if(player.isFullscreen)player.fullscreen()});player.on("shutdown",function(){FULL_PLAYER=null;common.removeNode(wrapper)})});flowplayer(function(api,root){root=jQuery(root);if(flowplayer.conf.wpadmin||jQuery(root).hasClass("is-audio"))return;var playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]"),playlist_with_fullscreen=playlist.hasClass("fp-playlist-season")||playlist.hasClass("fp-playlist-polaroid");fsforce=root.data("fsforce")==true;if(root.data("fullscreen")==false){return}if(flowplayer.conf.mobile_force_fullscreen&&flowplayer.support.fvmobile||!flowplayer.support.fullscreen&&fsforce||playlist_with_fullscreen){if(!flowplayer.support.fullscreen){api.bind("ready",function(){if(api.video.vr)return;api.fullscreen(true)})}root.on("click",function(){if(!api.ready||api.paused)api.fullscreen(true)});jQuery("[rel="+root.attr("id")+"] a").on("click",function(e){if(!api.isFullscreen){api.fullscreen();api.resume()}});api.on("resume",function(){if(api.video.vr)return;if(!api.isFullscreen)api.fullscreen()});api.on("finish",function(){if(api.conf.playlist.length==0||api.conf.playlist.length-1==api.video.index)api.fullscreen(false)}).on("fullscreen",function(a,api){root.addClass("forced-fullscreen")}).on("fullscreen-exit",function(a,api){api.pause();root.removeClass("forced-fullscreen")})}else if(fsforce){var position,unload=root.find(".fp-unload"),is_closing=false;api.isFakeFullscreen=false;unload.show();root.on("click",function(e){if(!api.ready&&e.target!=unload[0])api.fakeFullscreen(true)});unload.on("click",function(e){if(api.ready){api.fullscreen(false)}else if(api.loading){is_closing=true;api.one("resume",function(e){is_closing=false;api.pause()})}api.fakeFullscreen(false);return false});jQuery("[rel="+root.attr("id")+"] a").on("click",function(e){if(!api.isFakeFullscreen){api.fakeFullscreen();api.resume()}});api.on("resume",function(){if(!is_closing&&!api.isFakeFullscreen)api.fakeFullscreen()}).on("finish",function(){if(api.conf.playlist.length==0||api.conf.playlist.length-1==api.video.index)api.fakeFullscreen(false)}).on("fullscreen",function(a,api){root.removeClass("fake-fullscreen")}).on("fullscreen-exit",function(a,api){if(api.isFakeFullscreen)api.fakeFullscreen(true,true)}).on("unload",function(a,api){});api.fakeFullscreen=function(flag,force){if(!force&&(api.isFakeFullscreen==flag||api.disabled))return;if(position===undefined)position=root.css("position");if(flag===undefined)flag=!api.isFakeFullscreen;api.isFakeFullscreen=flag;api.trigger(flag?"fakefullscreen":"fakefullscreen-exit",[api]);root.toggleClass("is-fullscreen fake-fullscreen forced-fullscreen",flag);if(flag){root.css("position","fixed")}else{root.css("position",position)}}}if(flowplayer.support.android&&flowplayer.conf.mobile_landscape_fullscreen&&window.screen&&window.screen.orientation){api.on("fullscreen",function(a,api){if(typeof api.video.width!="undefined"&&typeof api.video.height!="undefined"&&(api.video.width!=0&&api.video.height!=0&&api.video.width<api.video.height)){screen.orientation.lock("portrait-primary")}else{screen.orientation.lock("landscape-primary")}})}});flowplayer(function(api,root){root=jQuery(root);var hlsjs,player,audioUXGroup,audioGroups,hls_audio_button,hls_audio_menu,mse=window.MediaSource||window.WebKitMediaSource;flowplayer.engine("hlsjs-lite").plugin(function(params){hlsjs=params.hls});api.bind("ready",function(e,api){removeAudioMenu();if(hlsjs&&api.video.type=="application/x-mpegurl"){parseAudioTracksHlsJs(hlsjs);createAudioMenu()}});api.one("progress",function(){if(api.engine.engineName=="html5"&&api.video.type=="application/x-mpegurl"){parseAudioTracksSafari();createAudioMenu()}});function getVideoTagAudioTracks(){var video=root.find("video");if(video.length&&video[0].audioTracks){return video[0].audioTracks}return[]}function hilightAudioTrack(audioTrack){if(!audioTrack.name)audioTrack.name=audioTrack.label;root.find(".fv-fp-hls-menu a").each(function(k,el){jQuery(el).toggleClass("fp-selected",jQuery(el).attr("data-audio")===audioTrack.name)})}function createAudioMenu(){if(!audioUXGroup||audioUXGroup.length<2){return}hls_audio_button=jQuery('<strong class="fv-fp-hls">AUD</strong>');hls_audio_menu=jQuery('<div class="fp-menu fv-fp-hls-menu"></div>').insertAfter(root.find(".fp-controls"));hls_audio_menu.append("<strong>Audio</strong>");audioUXGroup.forEach(function(audioTrack){hls_audio_menu.append('<a data-audio="'+audioTrack.name+'" data-lang="'+audioTrack.lang+'">'+audioTrack.name+"</a>")});hls_audio_button.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();if(hls_audio_menu.hasClass("fp-active")){api.hideMenu(hls_audio_menu[0])}else{root.click();api.showMenu(hls_audio_menu[0])}});jQuery("a",hls_audio_menu).on("click",function(e){var adata=e.target.getAttribute("data-audio");if(hlsjs){var gid=hlsjs.audioTracks[hlsjs.audioTrack].groupId;var atrack=hlsjs.audioTracks.filter(function(at){return at.groupId===gid&&(at.name===adata||at.lang===adata)})[0];hlsjs.audioTrack=atrack.id;hilightAudioTrack(atrack)}else{var tracks=getVideoTagAudioTracks();for(var i in tracks){if(!tracks.hasOwnProperty(i))continue;if(tracks[i].label==adata){tracks[i].enabled=true;hilightAudioTrack(tracks[i])}}}});if(hlsjs){hilightAudioTrack(hlsjs.audioTracks[hlsjs.audioTrack])}else{var tracks=getVideoTagAudioTracks();for(var i in tracks){if(!tracks.hasOwnProperty(i))continue;if(tracks[i].enabled){hilightAudioTrack(tracks[i])}}}}function removeAudioMenu(){jQuery(hls_audio_menu).remove();jQuery(hls_audio_button).remove()}function parseAudioTracksHlsJs(data){audioGroups=[];audioUXGroup=[];data.levels.forEach(function(level){var agroup=level.attrs.AUDIO;if(agroup&&audioGroups.indexOf(agroup)<0){audioGroups.push(agroup)}if(audioGroups.length){audioUXGroup=data.audioTracks.filter(function(audioTrack){return audioTrack.groupId===audioGroups[0]})}})}function parseAudioTracksSafari(){audioGroups=[];audioUXGroup=[];var tracks=getVideoTagAudioTracks();for(var i in tracks){if(!tracks.hasOwnProperty(i))continue;audioUXGroup.push({id:tracks[i].id,name:tracks[i].label})}}});flowplayer(function(api,root){var store_engine_pos=-1;var store_engine=false;api.on("error",function(e,api,err){if(err.code!=4||api.engine.engineName!="hlsjs")return;console.log("FV Player: HLSJS failed to play the video, switching to Flash HLS");api.error=api.loading=false;jQuery(root).removeClass("is-error");jQuery(flowplayer.engines).each(function(k,v){if(flowplayer.engines[k].engineName=="hlsjs"){store_engine_pos=k;store_engine=flowplayer.engines[k];delete flowplayer.engines[k]}});var index=typeof api.video.index!="undefined"?api.video.index:0;var video=index>0?api.conf.playlist[index].sources:api.conf.clip.sources;video.index=index;api.load({sources:video});api.bind("unload error",function(){flowplayer.engines[store_engine_pos]=store_engine})})});flowplayer(function(api,root){var initialDelay=30,continueDelay=10,useDelay=initialDelay,retryLabel=fv_flowplayer_translations.live_stream_retry,timer;api.clearLiveStreamCountdown=function(){if(timer){clearInterval(timer);api.error=api.loading=false;jQuery(root).removeClass("is-error");jQuery(root).find(".fp-message.fp-shown").remove();api.unload()}};api.conf.flashls={manifestloadmaxretry:2};api.on("ready",function(){useDelay=initialDelay;retryLabel=fv_flowplayer_translations.live_stream_retry}).on("progress",function(){useDelay=continueDelay;retryLabel=fv_flowplayer_translations.live_stream_continue;clearInterval(timer)});api.on("error",function(e,api,err){setTimeout(function(){if(!api.conf.clip.live&&!api.conf.live&&!(err.video&&err.video.src.match(/\/\/vimeo.com\/event\//)))return;var delay=useDelay;if(api.conf.clip.streaming_time){delay=api.conf.clip.streaming_time-Math.floor(Date.now()/1e3)}else if(api.conf.clip.live_starts_in){delay=api.conf.clip.live_starts_in}var startLabel=fv_flowplayer_translations.live_stream_starting.replace(/%d/,secondsToDhms(delay));retryLabel=retryLabel.replace(/%d/,secondsToDhms(delay));var message=api.conf.clip.live_starts_in?startLabel:retryLabel;clearInterval(timer);if(err.code===1||err.code===2||err.code===4){root.className+=" is-offline";if(flowplayer.support.flashVideo){api.one("flashdisabled",function(){root.querySelector(".fp-flash-disabled").style.display="none"})}var messageElement=root.querySelector(".fp-ui .fp-message");messageElement.innerHTML=message;var reload_delay=delay>300?300:delay;timer=setInterval(function(){reload_delay-=1;delay-=1;if(reload_delay>0&&messageElement){messageElement.querySelector("span").innerHTML=secondsToDhms(delay)}else{clearInterval(timer);if(!api.error){return}api.error=api.loading=false;messageElement=root.querySelector(".fp-ui .fp-message");if(messageElement){root.querySelector(".fp-ui").removeChild(messageElement)}root.className=root.className.replace(/\bis-(error|offline)\b/g,"");api.load()}},1e3)}},1)});function secondsToDhms(seconds){seconds=Number(seconds);var d=Math.floor(seconds/(3600*24));var h=Math.floor(seconds%(3600*24)/3600);var m=Math.floor(seconds%3600/60);var s=Math.floor(seconds%60);var t=fv_flowplayer_translations;var output=d>0?d==1?t.duration_1_day.replace(/%s/,d):t.duration_n_days.replace(/%s/,d):"";if(output&&h>0)output+=", ";output+=h>0?h==1?t.duration_1_hour.replace(/%s/,h):t.duration_n_hours.replace(/%s/,h):"";if(output&&m>0)output+=", ";output+=m>0?m==1?t.duration_1_minute.replace(/%s/,m):t.duration_n_minutes.replace(/%s/,m):"";if(output&&s>0)output+=t.and;output+=s>0?s==1?t.duration_1_second.replace(/%s/,s):t.duration_n_seconds.replace(/%s/,s):"";return output}});flowplayer(function(api,root){if(!flowplayer.support.browser.safari&&!flowplayer.support.iOS)return;root=jQuery(root);var video_tag=false,did_start_playing=false,are_waiting_already=0;api.on("ready",function(e,api,video){are_waiting_already=0;did_start_playing=false;if(api.engine.engineName=="html5"&&video.src.match(/\?/)){video_tag=root.find("video");if(!video_tag.data("fv-ios-recovery")){video_tag.on("waiting",wait_for_stalled);video_tag.data("fv-ios-recovery",true)}api.one("progress",function(){did_start_playing=true})}});api.bind("beforeseek",wait_for_stalled);function debug(e){console.log("FV PLayer: iOS video element: "+e.type)}function wait_for_stalled(){if(!did_start_playing){return}if(video_tag&&api.engine.engineName=="html5"){are_waiting_already++;if(are_waiting_already>1){if(are_waiting_already>3){console.log("FV PLayer: iOS video element needs a push, triggering 'stalled'");video_tag.trigger("stalled")}return}console.log("FV PLayer: iOS video element will trigger error after 'stalled' arrives");video_tag.one("stalled",function(){var time=api.video.time;if(api.video.type.match(/video\//)){console.log("FV PLayer: Running check of video file...");var test_video=document.createElement("video");test_video.src=api.video.src;test_video.onloadedmetadata=function(){are_waiting_already=0;console.log("FV Player: Video link works")};test_video.onerror=function(){console.log("FV Player: Video link issue!");if(are_waiting_already>0){api.trigger("error",[api,{code:4,video:api.video}])}};return}setTimeout(function(){console.log(api.video.time,time);if(api.video.time!=time){console.log("FV PLayer: iOS video element continues playing, no need for error");return}if(api.paused){console.log("FV PLayer: iOS video element paused, no need for error");return}api.trigger("error",[api,{code:4,video:api.video}])},5e3)})}}});!function(e){var n=!1;if("function"==typeof define&&define.amd&&(define(e),n=!0),"object"==typeof exports&&(module.exports=e(),n=!0),!n){var o=window.Cookies,t=window.Cookies=e();t.noConflict=function(){return window.Cookies=o,t}}}(function(){function e(){for(var e=0,n={};e<arguments.length;e++){var o=arguments[e];for(var t in o)n[t]=o[t]}return n}function n(o){function t(n,r,i){var c;if("undefined"!=typeof document){if(arguments.length>1){if("number"==typeof(i=e({path:"/"},t.defaults,i)).expires){var a=new Date;a.setMilliseconds(a.getMilliseconds()+864e5*i.expires),i.expires=a}i.expires=i.expires?i.expires.toUTCString():"";try{c=JSON.stringify(r),/^[\{\[]/.test(c)&&(r=c)}catch(e){}r=o.write?o.write(r,n):encodeURIComponent(r+"").replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),n=(n=(n=encodeURIComponent(n+"")).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape);var s="";for(var f in i)i[f]&&(s+="; "+f,!0!==i[f]&&(s+="="+i[f]));return document.cookie=n+"="+r+s}n||(c={});for(var p=document.cookie?document.cookie.split("; "):[],d=/(%[0-9A-Z]{2})+/g,u=0;u<p.length;u++){var l=p[u].split("="),C=l.slice(1).join("=");this.json||'"'!==C.charAt(0)||(C=C.slice(1,-1));try{var m=l[0].replace(d,decodeURIComponent);if(C=o.read?o.read(C,m):o(C,m)||C.replace(d,decodeURIComponent),this.json)try{C=JSON.parse(C)}catch(e){}if(n===m){c=C;break}n||(c[m]=C)}catch(e){}}return c}}return t.set=t,t.get=function(e){return t.call(t,e)},t.getJSON=function(){return t.apply({json:!0},[].slice.call(arguments))},t.defaults={},t.remove=function(n,o){t(n,"",e(o,{expires:-1}))},t.withConverter=n,t}return n(function(){})});flowplayer.bean.off(document,"keydown.fp");flowplayer(function(api,root){var bean=flowplayer.bean;if(!api.conf.keyboard)return;bean.on(root,"mouseenter mouseleave",function(e){fv_player_focused=!api.disabled&&e.type=="mouseover"?api:0;if(fv_player_focused)fv_player_focusedRoot=root});api.bind("ready",function(e,api,video){if(video.subtitles&&video.subtitles.length>0){var help=jQuery(root).find(".fp-help").html();help+='<div class="fp-help-section fp-help-subtitles"><p><em>c</em>cycle through subtitles</p></div>';jQuery(root).find(".fp-help").html(help)}else{jQuery(root).find(".fp-help-subtitles").remove()}})});flowplayer.bean.on(document,"keydown.fp",function(e){if(typeof fv_player_focused=="undefined")return;var api=fv_player_focused,focusedRoot=api?fv_player_focusedRoot:false,common=flowplayer.common;var el=api&&!api.disabled?api:0,metaKeyPressed=e.ctrlKey||e.metaKey||e.altKey,key=e.which,conf=el&&el.conf;if(common.hasClass(focusedRoot,"no-controlbar")||common.hasClass(focusedRoot,"is-cva"))return;if(!el||!conf.keyboard||el.disabled)return;if([63,187,191].indexOf(key)!=-1){common.toggleClass(focusedRoot,"is-help");return false}if(key==27&&common.hasClass(focusedRoot,"is-help")){common.toggleClass(focusedRoot,"is-help");return false}if(!metaKeyPressed&&el.ready){e.preventDefault();if(e.shiftKey){if(key==39)el.speed(true);else if(key==37)el.speed(false);else if(key==78)el.next();else if(key==80)el.prev();return}if(key<58&&key>47)return el.seekTo(key-48);switch(key){case 38:case 75:el.volume(el.volumeLevel+.15);break;case 40:case 74:el.volume(el.volumeLevel-.15);break;case 39:case 76:el.seeking=true;el.seek(api.video.time+5);break;case 37:case 72:el.seeking=true;el.seek(api.video.time-5);break;case 190:el.seekTo();break;case 32:el.toggle();break;case 70:if(conf.fullscreen)el.fullscreen();break;case 77:el.mute();break;case 81:el.unload();break;case 67:if(!api.video.subtitles||api.video.subtitles.length==0)break;var current_subtitles=jQuery(focusedRoot).find(".fp-dropdown li.active[data-subtitle-index]").data("subtitle-index");if(typeof current_subtitles=="undefined")current_subtitles=-1;current_subtitles++;if(current_subtitles>api.video.subtitles.length-1){current_subtitles=-1}api.trigger("fv-subtitles-switched");if(current_subtitles>-1){el.loadSubtitles(current_subtitles);fv_player_notice(focusedRoot,fv_flowplayer_translations.subtitles_switched+" "+api.video.subtitles[current_subtitles].label,"fv-subtitles-switched")}else{el.disableSubtitles();fv_player_notice(focusedRoot,fv_flowplayer_translations.subtitles_disabled,"fv-subtitles-switched")}break}}});flowplayer(function(api,root){api.bind("load",function(e,api,data){var player=jQuery(e.currentTarget);if(player.data("live")){var live_check=setTimeout(function(){player.find(".fp-ui").append('<div class="fp-message">'+fv_flowplayer_translations.live_stream_failed+"</div>");player.addClass("is-error")},1e4);jQuery(e.currentTarget).data("live_check",live_check)}}).bind("ready",function(e,api,data){clearInterval(jQuery(e.currentTarget).data("live_check"))}).bind("error",function(e,api,data){var player=jQuery(e.currentTarget);if(player.data("live")){player.find(".fp-message").html(fv_flowplayer_translations.live_stream_failed_2)}})});(function($){flowplayer(function(api,root){if(jQuery(root).hasClass("is-cva"))return;$(document).on("submit","#"+jQuery(root).attr("id")+" .mailchimp-form",function(e){e.preventDefault();$(".mailchimp-response",root).remove();$("input[type=submit]",root).attr("disabled","disabled").addClass("fv-form-loading");var data={action:"fv_wp_flowplayer_email_signup"};$("[name]",this).each(function(){data[this.name]=$(this).val()});$.post(fv_player.ajaxurl,data,function(response){response=JSON.parse(response);$('<div class="mailchimp-response"></div>').insertAfter(".mailchimp-form",root);if(response.text.match(/already subscribed/)){response.status="ERROR"}if(response.status==="OK"){$(".mailchimp-form input[type=text],.mailchimp-form input[type=email]",root).val("");$(".mailchimp-response",root).removeClass("is-fv-error").html(response.text);setTimeout(function(){$(".wpfp_custom_popup",root).fadeOut()},2e3)}else{$(".mailchimp-response",root).addClass("is-fv-error").html(response.text)}$("input[type=submit]",root).removeAttr("disabled").removeClass("fv-form-loading")})})})})(jQuery);function fv_flowplayer_mobile_switch(id){var regex=new RegExp("[\\?&]fv_flowplayer_mobile=([^&#]*)");var results=regex.exec(location.search);if((results!=null&&results[1]=="yes"||(jQuery(window).width()<=480||jQuery(window).height()<=480))&&(results==null||results[1]!="no")){var fv_fp_mobile=false;jQuery("#wpfp_"+id+" video source").each(function(){if(jQuery(this).attr("id")!="wpfp_"+id+"_mobile"){fv_fp_mobile=true;jQuery(this).remove()}});if(fv_fp_mobile){jQuery("#wpfp_"+id).after('<p class="fv-flowplayer-mobile-switch">'+fv_flowplayer_translations.mobile_browser_detected_1+' <a href="'+document.URL+'?fv_flowplayer_mobile=no">'+fv_flowplayer_translations.mobile_browser_detected_2+"</a>.</p>")}}}if(typeof fv_flowplayer_mobile_switch_array!="undefined"){for(var i in fv_flowplayer_mobile_switch_array){if(!fv_flowplayer_mobile_switch_array.hasOwnProperty(i))continue;fv_flowplayer_mobile_switch(i)}}flowplayer(function(api,root){if(!flowplayer.support.touch)return;jQuery.fn.fv_single_double_click=function(single_click_callback,double_click_callback,timeout){return this.each(function(){var clicks=0,self=this;jQuery(this).on("click",function(event){clicks++;if(clicks==1){setTimeout(function(){if(clicks==1){single_click_callback.call(self,event)}else{double_click_callback.call(self,event)}clicks=0},timeout||300)}})})};root=jQuery(root);var left=jQuery('<div class="fv-fp-tap-left"><span>-10s</span></div>'),right=jQuery('<div class="fv-fp-tap-right"><span>+10s</span></div>');left.fv_single_double_click(function(){api.toggle()},function(e){maybe_seek(e,left,api.ready?api.video.time-10:false)});right.fv_single_double_click(function(){api.toggle()},function(e){maybe_seek(e,right,api.ready?api.video.time+10:false)});root.find(".fp-ui").append(left).append(right);function maybe_seek(e,el,time){if(api.ready){api.seek(time);animation(el)}else{api.toggle()}e.preventDefault()}function animation(el){el.addClass("is-active");setTimeout(function(){el.removeClass("is-active")},500)}});flowplayer(function(api,root){root=jQuery(root);var instance_id=root.data("flowplayer-instance-id");flowplayer.audible_instance=-1;api.one("load",function(){setTimeout(function(){api.conf.splash=false},0)});api.on("ready",function(){var is_muted=root.data("volume")==0;if(!is_muted){flowplayer.audible_instance=instance_id}jQuery(".flowplayer[data-flowplayer-instance-id]").each(function(){var player=jQuery(this).data("flowplayer");var current_instance_id=jQuery(this).data("flowplayer-instance-id");if(flowplayer.audible_instance==-1||current_instance_id==flowplayer.audible_instance||current_instance_id==instance_id)return;if(player){if(player.ready){if(api.conf.multiple_playback){if(!is_muted){player.mute(true,true)}}else if(player.playing){player.pause()}}else{player.clearLiveStreamCountdown();player.unload()}}})}).on("mute",function(e,api,muted){if(!muted&&flowplayer.audible_instance!=instance_id){flowplayer(flowplayer.audible_instance).mute(true,true);flowplayer.audible_instance=instance_id}}).on("resume",function(){if(!api.conf.multiple_playback){jQuery(".flowplayer[data-flowplayer-instance-id]").each(function(){if(instance_id==jQuery(this).data("flowplayer-instance-id"))return;var player=jQuery(this).data("flowplayer");if(player&&player.playing){player.pause()}})}})});function fv_flowplayer_browser_ff_m4v(hash){if(flowplayer.support.browser&&flowplayer.support.browser.mozilla&&navigator.appVersion.indexOf("Win")!=-1){jQuery("#wpfp_"+hash).attr("data-engine","flash")}}if(typeof fv_flowplayer_browser_ff_m4v_array!="undefined"){for(var i in fv_flowplayer_browser_ff_m4v_array){if(!fv_flowplayer_browser_ff_m4v_array.hasOwnProperty(i))continue;fv_flowplayer_browser_ff_m4v(i)}}function fv_flowplayer_browser_chrome_fail(hash,sAttributes,sVideo,bAutobuffer){jQuery("#wpfp_"+hash).bind("error",function(e,api,error){if(/chrom(e|ium)/.test(navigator.userAgent.toLowerCase())&&error!=null&&(error.code==3||error.code==4||error.code==5)){api.unload();jQuery("#wpfp_"+hash).attr("id","bad_wpfp_"+hash);jQuery("#bad_wpfp_"+hash).after('<div id="wpfp_'+hash+'" '+sAttributes+' data-engine="flash"></div>');jQuery("#wpfp_"+hash).flowplayer({playlist:[[{mp4:sVideo}]]});if(bAutobuffer){jQuery("#wpfp_"+hash).bind("ready",function(e,api){api.play()})}else{jQuery("#wpfp_"+hash).flowplayer().play(0)}jQuery("#bad_wpfp_"+hash).remove()}})}if(typeof fv_flowplayer_browser_chrome_fail_array!="undefined"){for(var i in fv_flowplayer_browser_chrome_fail_array){if(!fv_flowplayer_browser_chrome_fail_array.hasOwnProperty(i))continue;fv_flowplayer_browser_chrome_fail(i,fv_flowplayer_browser_chrome_fail_array[i]["attrs"],fv_flowplayer_browser_chrome_fail_array[i]["mp4"],fv_flowplayer_browser_chrome_fail_array[i]["auto_buffer"])}}function fv_flowplayer_browser_ie(hash){if(flowplayer.support.browser&&flowplayer.support.browser.msie&&parseInt(flowplayer.support.browser.version,10)>=9||!!navigator.userAgent.match(/Trident.*rv[ :]*11\./)){jQuery("#wpfp_"+hash).attr("data-engine","flash")}}if(typeof fv_flowplayer_browser_ie_array!="undefined"){for(var i in fv_flowplayer_browser_ie_array){if(!fv_flowplayer_browser_ie_array.hasOwnProperty(i))continue;fv_flowplayer_browser_ie(i)}}function fv_flowplayer_browser_chrome_mp4(hash){var match=window.navigator.appVersion.match(/Chrome\/(\d+)\./);if(match!=null){var chrome_ver=parseInt(match[1],10);if(/chrom(e|ium)/.test(navigator.userAgent.toLowerCase())&&chrome_ver<28&&navigator.appVersion.indexOf("Win")!=-1||/chrom(e|ium)/.test(navigator.userAgent.toLowerCase())&&chrome_ver<27&&navigator.appVersion.indexOf("Linux")!=-1&&navigator.userAgent.toLowerCase().indexOf("android")==-1){jQuery("#wpfp_"+hash).attr("data-engine","flash")}}}if(navigator.platform.indexOf("iPhone")!=-1||navigator.platform.indexOf("iPod")!=-1||navigator.platform.indexOf("iPad")!=-1||navigator.userAgent.toLowerCase().indexOf("android")!=-1){flowplayer(function(api,root){api.bind("error",function(e,api,error){if(error.code==10){jQuery(e.target).find(".fp-message").html(fv_flowplayer_translations.unsupported_format)}})})}jQuery(document).ready(function(){if(navigator.platform.indexOf("iPhone")!=-1||navigator.platform.indexOf("iPod")!=-1||navigator.platform.indexOf("iPad")!=-1){jQuery(window).trigger("load")}jQuery(".flowplayer").on("mouseleave",function(){jQuery(this).find(".fvp-share-bar").removeClass("visible");jQuery(this).find(".embed-code").hide()})});if(!Date.now){Date.now=function(){return(new Date).getTime()}}(function($){var sendPositionsEvery=60,ajaxCall=null,maxCookieSize=2500,localStorageEnabled=null,cookieKeyName="video_positions",tempPositionCookieKeyName="video_positions_tmp",tempSawCookieKeyName="video_saw_tmp",playPositions=[],sawVideo=[],getSerialized=function(data){var serialized=JSON.stringify(data),dataSize=getTextByteSize(serialized);if(dataSize>maxCookieSize){while(dataSize>maxCookieSize){for(var i in data){if(!data.hasOwnProperty(i))continue;delete data[i];serialized=JSON.stringify(data);dataSize=getTextByteSize(serialized);break}}}return serialized},getVideoId=function(video){if(video.id){return video.id}var out=typeof video.sources_original!="undefined"&&typeof video.sources_original[0]!="undefined"?video.sources_original[0].src:video.sources[0].src;if(typeof video.sources_original=="undefined"||typeof video.sources_original[0]=="undefined"){out=removeAWSSignatures(out)}return out},getTextByteSize=function(txt){return encodeURIComponent(txt).length},getCookieKey=function(key){return localStorageEnabled?localStorage.getItem(key):Cookies.get(key)},setCookieKey=function(key,value){return localStorageEnabled?localStorage.setItem(key,value):Cookies.set(key,value)},removeCookieKey=function(key){if(localStorageEnabled){localStorage.removeItem(key)}{Cookies.remove(key)}},removeVideoPosition=function(e,api){if(api.video.sources){var video_id=getVideoId(api.video);playPositions[video_id]=0;sawVideo[video_id]=1}},removeAWSSignatures=function(videoURL){return videoURL.replace(/(X-Amz-Algorithm=[^&]+&?)/gm,"").replace(/(X-Amz-Credential=[^&]+&?)/gm,"").replace(/(X-Amz-Date=[^&]+&?)/gm,"").replace(/(X-Amz-Expires=[^&]+&?)/gm,"").replace(/(X-Amz-SignedHeaders=[^&]+&?)/gm,"").replace(/(X-Amz-Signature=[^&]+&?)/gm,"")},sendVideoPositions=function(async,callback){var beaconSupported="sendBeacon"in navigator;if(async!==true){async=false}if(!callback||typeof callback=="undefined"){callback=function(){}}postData=[];for(var video_name in playPositions){if(!playPositions.hasOwnProperty(video_name))continue;postData.push({name:video_name,position:playPositions[video_name],saw:typeof sawVideo[video_name]!="undefined"?sawVideo[video_name]:false})}if(!postData.length){removeCookieKey(tempPositionCookieKeyName);removeCookieKey(tempSawCookieKeyName);return}if(flowplayer.conf.is_logged_in=="1"){if(beaconSupported){try{var temp_position_data={},temp_saw_data={};for(var i in postData){if(!postData.hasOwnProperty(i))continue;temp_position_data[postData[i].name]=postData[i].position;temp_saw_data[postData[i].name]=postData[i].saw}setCookieKey(tempPositionCookieKeyName,getSerialized(temp_position_data));setCookieKey(tempSawCookieKeyName,getSerialized(temp_saw_data))}catch(e){return}var fd=new FormData;fd.append("action","fv_wp_flowplayer_video_position_save");fd.append("videoTimes",encodeURIComponent(JSON.stringify(postData)));navigator.sendBeacon(fv_player.ajaxurl,fd);return false}else{return jQuery.ajax({type:"POST",async:async,url:fv_player.ajaxurl,complete:callback,data:{action:"fv_wp_flowplayer_video_position_save",videoTimes:postData}})}}else{try{var data=getCookieKey(cookieKeyName);if(data&&typeof data!=="undefined"){data=JSON.parse(data)}else{data={}}for(var i in postData){if(!postData.hasOwnProperty(i))continue;data[postData[i].name]=postData[i].position}var serialized=JSON.stringify(data),dataSize=getTextByteSize(serialized);if(dataSize>maxCookieSize){while(dataSize>maxCookieSize){for(var i in data){if(!data.hasOwnProperty(i))continue;delete data[i];serialized=JSON.stringify(data);dataSize=getTextByteSize(serialized);break}}}setCookieKey(cookieKeyName,serialized)}catch(e){return}}return false};flowplayer(function(api,root){var $root=jQuery(root),enabled=flowplayer.conf.video_position_save_enable&&$root.data("save-position")!="false"||$root.data("save-position"),progressEventsCount=0,seekIntoPosition=function(e,api){if(api.video&&api.video.live)return;var video_id=getVideoId(api.video),position=api.video.position;if(flowplayer.conf.is_logged_in!="1"){var data=getCookieKey(cookieKeyName);if(data&&typeof data!=="undefined"){try{data=JSON.parse(data);if(data[video_id]){position=data[video_id]}}catch(e){return}}}if(!!api.get_custom_end&&api.get_custom_end()<position){position=false}if(!!api.get_custom_start&&api.get_custom_start()>0){if(position<api.get_custom_start()){position=false}}api.bind("progress",storeVideoPosition);if(position){seek(position)}},storeVideoPosition=function(e,api){if(api.live){return}if(api.video.sources){var video_id=getVideoId(api.video),position=Math.round(api.video.time);playPositions[video_id]=position;if(progressEventsCount++>=sendPositionsEvery&&flowplayer.conf.closingPage){if(ajaxCall){ajaxCall.abort()}ajaxCall=sendVideoPositions(true,function(){ajaxCall=null});progressEventsCount=0}}},forceSavePosition=function(e,api){var inPlaylist=false;for(var i in api.conf.playlist){if(!api.conf.playlist.hasOwnProperty(i))continue;inPlaylist=true;break}if(inPlaylist&&!flowplayer.conf.closingPage){progressEventsCount=sendPositionsEvery+1;storeVideoPosition(e,api);sendVideoPositions()}},seek=function(position){if(!!api.custom_seek){api.custom_seek(position);return}var seek_count=0;var do_seek=setInterval(function(){if(++seek_count>20)clearInterval(do_seek);if(api.loading)return;api.seek(parseInt(position));clearInterval(do_seek)},10)},processTempData=function(temp_data_name,video_id){var data=getCookieKey(temp_data_name),output=false;if(data&&typeof data!=="undefined"){try{data=JSON.parse(data);if(typeof data[video_id]!="undefined"){output=data[video_id];delete data[video_id];var stillHasData=false;for(var i in data){if(!data.hasOwnProperty(i))continue;stillHasData=true;break}if(stillHasData){setCookieKey(temp_data_name,JSON.stringify(data))}else{removeCookieKey(temp_data_name)}}return output}catch(e){}}};if(!enabled)return;api.bind("finish",removeVideoPosition);api.one("progress",seekIntoPosition);api.playlist_thumbnail_progress=function(el,video,position){if(!!api.get_custom_start&&api.get_custom_start(video)>0){position-=api.get_custom_start(video);if(position<0)position=0}var duration=video.duration;if(!!api.get_custom_duration&&api.get_custom_duration()>0){duration=api.get_custom_duration()}if(!duration){duration=el.data("duration")}if(!duration)return;var progress=100*position/duration;el.css("width",progress+"%")};if(flowplayer.conf.is_logged_in=="1"){var playlist=api.conf.playlist.length>0?api.conf.playlist:[api.conf.clip],playlist_external=jQuery("[rel="+jQuery(root).attr("id")+"]");for(var i in playlist){if(!playlist.hasOwnProperty(i))continue;var video_id=getVideoId(playlist[i]),position=processTempData(tempPositionCookieKeyName,video_id),saw=processTempData(tempSawCookieKeyName,video_id);if(position){if(api.conf.playlist.length){api.conf.playlist[i].sources[0].position=position;var playlist_progress=jQuery("a",playlist_external).eq(i).find(".fvp-progress");if(playlist_progress.length){api.playlist_thumbnail_progress(playlist_progress,api.conf.playlist[i],position)}}else{api.conf.clip.sources[0].position=position}}if(saw){if(api.conf.playlist.length){api.conf.playlist[i].sources[0].saw=true}else{api.conf.clip.sources[0].saw=true}}}}api.bind("finish",function(e,api){if(api.conf.playlist.length){api.conf.playlist[api.video.index].sources[0].saw=true}else{api.conf.clip.sources[0].saw=true}})});jQuery(window).on("beforeunload pagehide",function(){if(!flowplayer.conf.closingPage){flowplayer.conf.closingPage=true;sendVideoPositions()}});if(localStorageEnabled!==null){return localStorageEnabled}localStorageEnabled=true;try{localStorage.setItem("t","t");if(localStorage.getItem("t")!=="t"){localStorageEnabled=false}localStorage.removeItem("t")}catch(e){localStorageEnabled=false}})(jQuery);flowplayer(function(api,root){root=jQuery(root);if(api.conf.playlist.length==0)return;var real_videos=0;jQuery(api.conf.playlist).each(function(k,v){if(typeof v.click=="undefined"){real_videos++}});if(real_videos<2)return;var playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]");var playlist_button=jQuery('<strong class="fv-fp-list">Item 1.</strong>'),playlist_menu=jQuery('<div class="fp-menu fv-fp-list-menu"></div>').insertAfter(root.find(".fp-controls"));var i=0,item_index=[];jQuery(api.conf.playlist).each(function(k,v){if(typeof v.click=="undefined"){playlist_menu.append('<a data-index="'+k+'">'+(i+1)+". "+parse_title(playlist.find("h4").eq(i))+"</a>");item_index.push(k);i++}});playlist_button.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();if(playlist_menu.hasClass("fp-active")){api.hideMenu(playlist_menu[0])}else{root.trigger("click");api.showMenu(playlist_menu[0])}});jQuery("a",playlist_menu).on("click",function(){if(typeof api.conf.playlist[jQuery(this).data("index")-1]!="undefined"&&typeof api.conf.playlist[jQuery(this).data("index")-1].click!="undefined"){api.play(jQuery(this).data("index")-1)}else{api.play(jQuery(this).data("index"))}});api.on("ready",function(e,api,video){playlist_menu.find("a").removeClass("fp-selected");var thumb=playlist_menu.find("a[data-index="+video.index+"]");thumb.addClass("fp-selected");var label=fv_flowplayer_translations.playlist_item_no;label=label.replace(/%d/,item_index.indexOf(api.video.index)+1);label=label.replace(/%s/,parse_title(thumb.find("h4")));playlist_button.html(label)});function parse_title(el){var tmp=el.clone();tmp.find("i.dur").remove();return tmp.text()}});flowplayer(function(api,root){root=jQuery(root);var playlist=api.conf.playlist,videoIndex;api.bind("load",function(e,api,video){videoIndex=video.index});api.bind("error",function(e,api,error){setTimeout(function(){if(playlist.length>0&&api.error==true){videoIndex=api.video.index;if(api.conf.video_checker=="1"&&playlist[videoIndex].video_checker&&playlist[videoIndex].video_checker.length>0){console.log("FV Player: Video checker message present, stopping auto-advance to next playlist item");return false}api.error=api.loading=false;root.removeClass("is-error");root.find(".fp-message.fp-shown").remove();videoIndex++;if(videoIndex>playlist.length-1){videoIndex=0}console.log("FV Player: Playlist item failure, auto-advancing to "+(videoIndex+1)+". item");api.play(videoIndex)}},1e3)})});flowplayer(function(api,root){root=jQuery(root);var original_prev,original_next,random_seed;if(!root.data("button-no-picture")&&!root.data("button-repeat")&&!root.data("button-rewind"))return;api.bind("ready",function(e,api){if(typeof original_next=="undefined"&&typeof original_prev=="undefined"){original_next=api.next;original_prev=api.prev}if(!api.video.type.match(/^audio/)&&root.data("button-no-picture")&&root.find(".fv-fp-no-picture").length==0){var button_no_picture=jQuery('<span class="fv-fp-no-picture"><svg viewBox="0 0 90 80" width="18px" height="18px" class="fvp-icon fvp-nopicture"><use xlink:href="#fvp-nopicture"></use></svg></span>');button_no_picture.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();jQuery(".fp-engine",root).slideToggle(20);jQuery(this).toggleClass("is-active fp-color-fill")})}if(root.data("button-repeat")){if(api.conf.playlist.length>0&&root.find(".fv-fp-playlist").length==0){var t=fv_flowplayer_translations,playlist_button=jQuery('<strong class="fv-fp-playlist mode-normal"> <svg viewBox="0 0 80.333 80" width="18px" height="18px" class="fvp-icon fvp-replay-list"><title>'+t.playlist_replay_all+'</title><use xlink:href="#fvp-replay-list"></use></svg> <svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-shuffle"><title>'+t.playlist_shuffle+'</title><use xlink:href="#fvp-shuffle"></use></svg> <svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-replay-track"><title>'+t.playlist_replay_video+'</title><use xlink:href="#fvp-replay-track"></use></svg> <span id="fvp-playlist-play" title="'+t.playlist_play_all+'">'+t.playlist_play_all_button+"</span> </strong>"),playlist_menu=jQuery('<div class="fp-menu fv-fp-playlist-menu"> <a data-action="repeat_playlist"><svg viewBox="0 0 80.333 80" width="18px" height="18px" class="fvp-icon fvp-replay-list"><title>'+t.playlist_replay_all+'</title><use xlink:href="#fvp-replay-list"></use></svg> <span class="screen-reader-text">'+t.playlist_replay_all+'</span></a> <a data-action="shuffle_playlist"><svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-shuffle"><title>'+t.playlist_shuffle+'</title><use xlink:href="#fvp-shuffle"></use></svg> <span class="screen-reader-text">'+t.playlist_shuffle+'</span></a> <a data-action="repeat_track"><svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-replay-track"><title>'+t.playlist_replay_video+'</title><use xlink:href="#fvp-replay-track"></use></svg> <span class="screen-reader-text">'+t.playlist_replay_video+'</span></a> <a class="fp-selected" data-action="normal"><span id="fvp-playlist-play" title="'+t.playlist_play_all+'">'+t.playlist_play_all_button+"</span></a> </div>").insertAfter(root.find(".fp-controls"));api.conf.playlist_shuffle=api.conf.track_repeat=false;random_seed=randomize();var should_advance=api.conf.advance;playlist_button.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();if(playlist_menu.css("right")!=="auto"){playlist_menu.css({right:"auto",left:playlist_button.position().left+"px"})}if(playlist_menu.hasClass("fp-active")){api.hideMenu(playlist_menu[0])}else{root.trigger("click");api.showMenu(playlist_menu[0])}});jQuery("a",playlist_menu).on("click",function(){jQuery(this).siblings("a").removeClass("fp-selected");jQuery(this).addClass("fp-selected");playlist_button.removeClass("mode-normal mode-repeat-track mode-repeat-playlist mode-shuffle-playlist");var action=jQuery(this).data("action");if(action=="repeat_playlist"){playlist_button.addClass("mode-repeat-playlist");api.conf.loop=true;api.conf.advance=true;api.video.loop=api.conf.track_repeat=false;api.conf.playlist_shuffle=false}else if(action=="shuffle_playlist"){playlist_button.addClass("mode-shuffle-playlist");api.conf.loop=true;api.conf.advance=true;api.conf.playlist_shuffle=true}else if(action=="repeat_track"){playlist_button.addClass("mode-repeat-track");api.conf.track_repeat=api.video.loop=true;api.conf.loop=api.conf.playlist_shuffle=false}else if(action=="normal"){playlist_button.addClass("mode-normal");api.conf.track_repeat=api.video.loop=false;api.conf.loop=api.conf.playlist_shuffle=false}if(api.conf.playlist_shuffle){api.next=function(){api.play(random_seed.pop());if(random_seed.length==0)random_seed=randomize()};api.prev=function(){api.play(random_seed.shift());if(random_seed.length==0)random_seed=randomize()}}else{api.next=original_next;api.prev=original_prev}});if(api.conf.loop){jQuery("a[data-action=repeat_playlist]",playlist_menu).trigger("click")}api.on("progress",function(){api.video.loop=api.conf.track_repeat});api.on("finish.pl",function(e,api){console.log("playlist_repeat",api.conf.loop,"advance",api.conf.advance,"video.loop",api.video.loop);if(api.conf.playlist_shuffle){api.play(random_seed.pop());if(random_seed.length==0)random_seed=randomize()}})}else if(root.find(".fv-fp-track-repeat").length==0&&api.conf.playlist.length==0){var button_track_repeat=jQuery('<strong class="fv-fp-track-repeat"><svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-replay-track"><use xlink:href="#fvp-replay-track"></use></svg></strong>');button_track_repeat.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();jQuery(this).toggleClass("is-active fp-color-fill",api.video.loop);if(api.video.loop){api.video.loop=false}else{api.video.loop=true}});if(api.conf.loop){button_track_repeat.addClass("is-active fp-color-fill")}}}if(root.data("button-rewind")){if(root.find(".fv-fp-rewind").length==0){var button_rewind=jQuery('<span class="fv-fp-rewind"><svg viewBox="0 0 24 24" width="21px" height="21px" class="fvp-icon fvp-rewind"><use xlink:href="#fvp-rewind"></use></svg></span>');button_rewind.insertBefore(root.find(".fp-controls .fp-playbtn")).on("click",function(e){e.preventDefault();e.stopPropagation();api.seek(api.video.time-10)});button_rewind.toggle(!api.video.live)}if(root.find(".fv-fp-forward").length==0){var button_forward=jQuery('<span class="fv-fp-forward"><svg viewBox="0 0 24 24" width="21px" height="21px" class="fvp-icon fvp-forward"><use xlink:href="#fvp-forward"></use></svg></span>');button_forward.insertAfter(root.find(".fp-controls .fp-playbtn")).on("click",function(e){e.preventDefault();e.stopPropagation();api.seek(api.video.time+10)});button_forward.toggle(!api.video.live)}}}).bind("unload",function(){root.find(".fv-fp-no-picture").remove();root.find(".fv-fp-playlist").remove();root.find(".fv-fp-track-repeat").remove()});function array_shuffle(a){var j,x,i;for(i=a.length;i;i--){j=Math.floor(Math.random()*i);x=a[i-1];a[i-1]=a[j];a[j]=x}return a}function randomize(random_seed){random_seed=[];jQuery(api.conf.playlist).each(function(k,v){random_seed.push(k)});random_seed=array_shuffle(random_seed);console.log("FV Player Randomizer random seed:",random_seed);return random_seed}});flowplayer(function(api,root){var $root=jQuery(root),start_index=$root.data("playlist_start");if(typeof start_index=="undefined")return;function start_position_changer(){if($root.data("position_changed")!==1&&api.conf.playlist.length){start_index--;api.play(start_index);$root.data("position_changed",1)}}api.bind("unload",function(){start_index=$root.data("playlist_start");$root.removeData("position_changed");api.one("ready",start_position_changer);api.video.index=0});api.one("ready",start_position_changer);jQuery(".fp-ui",root).on("click",function(){start_position_changer();$root.data("position_changed",1)})});document.addEventListener("custombox:overlay:close",function(e){console.log("FV Player: Custombox/Popup anything ligtbox closed");var $players=jQuery(this).find(".flowplayer");if($players.length==0)return;console.log("FV Player: Custombox/Popup anything ligtbox contains a player");$players.each(function(index,player){var api=jQuery(player).data("flowplayer");if(typeof api!="undefined"){if(api.playing){console.log("FV Player: Custombox/Popup anything ligtbox video pause");api.pause()}else if(api.loading){api.one("ready",function(){console.log("FV Player: Custombox/Popup anything ligtbox video unload");api.unload()})}}})});flowplayer(function(api,root){api.bind("finish",function(){var finished_at=api.video.time;if(api.video.loop){api.one("pause",function(){if(finished_at<=api.video.time){api.resume()}})}})});function fv_flowplayer_amazon_s3(hash,time){jQuery("#wpfp_"+hash).bind("error",function(e,api,error){var fv_fp_date=new Date;if(error.code==4&&fv_fp_date.getTime()>fv_fp_utime+parseInt(time)){jQuery(e.target).find(".fp-message").delay(500).queue(function(n){jQuery(this).html(fv_flowplayer_translations.video_expired);n()})}})}flowplayer(function(api,root){root=jQuery(root);root.find(".fp-logo").removeAttr("href");if(root.hasClass("no-controlbar")){var timelineApi=api.sliders.timeline;timelineApi.disable(true);api.bind("ready",function(){timelineApi.disable(true)})}jQuery(".fvfp_admin_error",root).remove();root.find(".fp-logo, .fp-header").on("click",function(e){if(e.target!==this)return;root.find(".fp-ui").trigger("click")});jQuery(".fvp-share-bar .sharing-facebook",root).append('<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="#fff"><title>Facebook</title><path d="M11.9 5.2l-2.6 0 0-1.6c0-0.7 0.3-0.7 0.7-0.7 0.3 0 1.6 0 1.6 0l0-2.9 -2.3 0c-2.6 0-3.3 2-3.3 3.3l0 2 -1.6 0 0 2.9 1.6 0c0 3.6 0 7.8 0 7.8l3.3 0c0 0 0-4.2 0-7.8l2.3 0 0.3-2.9Z"/></svg>');jQuery(".fvp-share-bar .sharing-twitter",root).append('<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="#fff"><title>Twitter</title><path d="M16 3.1c-0.6 0.3-1.2 0.4-1.9 0.5 0.7-0.4 1.2-1 1.4-1.8 -0.6 0.4-1.3 0.6-2.1 0.8 -0.6-0.6-1.4-1-2.4-1 -2 0.1-3.2 1.6-3.2 4 -2.7-0.1-5.1-1.4-6.7-3.4 -0.9 1.4 0.2 3.8 1 4.4 -0.5 0-1-0.1-1.5-0.4l0 0.1c0 1.6 1.1 2.9 2.6 3.2 -0.7 0.2-1.3 0.1-1.5 0.1 0.4 1.3 1.6 2.2 3 2.3 -1.6 1.7-4.6 1.4-4.8 1.3 1.4 0.9 3.2 1.4 5 1.4 6 0 9.3-5 9.3-9.3 0-0.1 0-0.3 0-0.4 0.6-0.4 1.2-1 1.6-1.7Z"/></svg>');jQuery(".fvp-share-bar .sharing-email",root).append('<svg xmlns="http://www.w3.org/2000/svg" height="16" viewBox="0 0 16 16" width="16" fill="#fff"><title>Email</title><path d="M8 10c0 0 0 0-1 0L0 6v7c0 1 0 1 1 1h14c1 0 1 0 1-1V6L9 10C9 10 8 10 8 10zM15 2H1C0 2 0 2 0 3v1l8 4 8-4V3C16 2 16 2 15 2z"/></svg>');jQuery(".fp-header",root).prepend(jQuery(".fvp-share-bar",root));if(api.conf.playlist.length){var show=true;var playlist=api.conf.playlist;if(playlist.length==2){if(typeof playlist[0].click!="undefined"&&typeof playlist[1].click=="undefined"){show=false}if(typeof playlist[0].click=="undefined"&&typeof playlist[1].click!="undefined"){show=false}}else if(playlist.length==3){if(typeof playlist[0].click!="undefined"&&typeof playlist[1].click=="undefined"&&typeof playlist[2].click!="undefined"){show=false}}if(show){var prev=jQuery('<a class="fp-icon fv-fp-prevbtn"></a>');var next=jQuery('<a class="fp-icon fv-fp-nextbtn"></a>');root.find(".fp-controls .fp-playbtn").before(prev).after(next);prev.on("click",function(){api.trigger("prev",[api]);api.prev()});next.on("click",function(){api.trigger("next",[api]);api.next()})}}api.bind("pause resume finish unload ready",function(e,api){root.addClass("no-brand")});api.one("ready",function(){root.find(".fp-fullscreen").clone().appendTo(root.find(".fp-controls"))});api.bind("ready",function(e,api,video){setTimeout(function(){jQuery(".fvp-share-bar",root).show();jQuery(".fv-player-buttons-wrap",root).appendTo(jQuery(".fv-player-buttons-wrap",root).parent().find(".fp-ui"))},100)});api.bind("finish",function(){var url=root.data("fv_redirect");if(url&&(typeof api.video.is_last=="undefined"||api.video.is_last)){location.href=url}});if(flowplayer.support.iOS&&flowplayer.support.iOS.version==11){api.bind("error",function(e,api,error){if(error.code==4)root.find(".fp-engine").hide()})}jQuery(document).on("contextmenu",".flowplayer",function(e){e.preventDefault()});api.one("ready",function(e,api,video){root.find(".fp-chromecast").insertAfter(root.find(".fp-header .fp-fullscreen"))});root.find(".fp-waiting").html('<div class="fp-preload"><b></b><b></b><b></b><b></b></div>');var id=root.attr("id"),alternative=!flowplayer.conf.native_fullscreen&&flowplayer.conf.mobile_alternative_fullscreen,events_enter="fakefullscreen",events_exit="fakefullscreen-exit";if(!flowplayer.support.fullscreen){events_enter+=" fullscreen";events_exit+=" fullscreen-exit"}api.bind(events_enter,function(e,api){jQuery("#wpadminbar, .nc_wrapper").hide();if(alternative||e.type=="fakefullscreen"){if(api.video.type=="video/youtube")return;root.before('<span data-fv-placeholder="'+id+'"></span>');root.appendTo("body")}});api.bind(events_exit,function(e,api,video){jQuery("#wpadminbar, .nc_wrapper").show();if(alternative||e.type=="fakefullscreen-exit"){jQuery("span[data-fv-placeholder="+id+"]").replaceWith(root)}})});(function(){var extension=function(flowplayer){flowplayer(function(api,root){if(!jQuery(root).data("speedb"))return;var support=flowplayer.support;if(!support.video||!support.inlineVideo)return;var common=flowplayer.common,bean=flowplayer.bean,ui=common.find(".fp-ui",root)[0],controlbar=common.find(".fp-controls",ui)[0],speeds=api.conf.speeds;bean.on(root,"click",".fp-speed",function(){var menu=common.find(".fp-speed-menu",root)[0];if(common.hasClass(menu,"fp-active"))api.hideMenu();else api.showMenu(menu)});bean.on(root,"click",".fp-speed-menu a",function(ev){var s=ev.target.getAttribute("data-speed");api.speed(s)});api.on("speed",function(ev,_a,rate){if(speeds.length>1){selectSpeed(rate)}}).on("ready",function(ev,api){removeMenu();if(flowplayer.support.android&&api.engine.engineName=="html5"&&api.video.type=="application/x-mpegurl")return;speeds=api.conf.speeds;if(speeds.length>1){createMenu()}});function removeMenu(){common.find(".fp-speed-menu",root).forEach(common.removeNode);common.find(".fp-speed",root).forEach(common.removeNode)}function round(val){return Math.round(val*100)/100}function createMenu(){controlbar.appendChild(common.createElement("strong",{className:"fp-speed"},api.currentSpeed+"x"));var menu=common.createElement("div",{className:"fp-menu fp-speed-menu",css:{width:"auto"}},"<strong>Speed</strong>");speeds.forEach(function(s){var a=common.createElement("a",{"data-speed":round(s)},round(s)+"x");menu.appendChild(a)});ui.appendChild(menu);selectSpeed(api.currentSpeed);jQuery(root).find(".fp-speed-menu strong").text(fv_flowplayer_translations.speed)}function selectSpeed(rate){common.find(".fp-speed",root)[0].innerHTML=rate+"x";common.find(".fp-speed-menu a",root).forEach(function(el){common.toggleClass(el,"fp-selected",el.getAttribute("data-speed")==rate);common.toggleClass(el,"fp-color",el.getAttribute("data-speed")==rate)})}})};if(typeof module==="object"&&module.exports)module.exports=extension;else if(typeof window.flowplayer==="function")extension(window.flowplayer)})();flowplayer(function(api,root){api.on("speed",function(ev,_a,rate){try{window.localStorage.fv_player_speed=rate}catch(e){}});api.on("ready",function(){if(window.localStorage.fv_player_speed&&jQuery(root).find("strong.fp-speed").is(":visible")){api.speed(parseFloat(window.localStorage.fv_player_speed))}if(jQuery(root).data("volume")==0){api.mute(true,true)}})});flowplayer(function(api,root){root=jQuery(root);var last_tracked=-1;if(!api.conf.fv_stats||!api.conf.fv_stats.enabled&&(!root.data("fv_stats")||root.data("fv_stats")=="no"))return;api.on("ready finish",function(e,api){api.one("progress",function(e,api){if(root.data("fv_stats_data")){try{var player_post_data=root.data("fv_stats_data")}catch(e){return false}if(last_tracked==get_index())return;last_tracked=get_index();jQuery.post(api.conf.fv_stats.url,{blog_id:api.conf.fv_stats.blog_id,video_id:api.video.id?api.video.id:0,player_id:player_post_data.player_id,post_id:player_post_data.post_id,tag:"play"})}})}).on("finish",function(){last_tracked=-1});function get_index(){return api.video.index?api.video.index:0}});flowplayer(function(api,root){var $root=jQuery(root);var $playerDiv=$root.find(".fp-player");var sticky=$root.data("fvsticky");var globalSticky=false;var videoRatio=$root.data("ratio"),is_sticky=false;if(typeof videoRatio=="undefined"){videoRatio=.5625}if(flowplayer.conf.sticky_video==1&&typeof sticky=="undefined"){globalSticky=true}if(globalSticky||sticky){if(flowplayer.support.firstframe){var stickyPlace=flowplayer.conf.sticky_place;var stickyWidth=flowplayer.conf.sticky_width;if(stickyWidth==""){stickyWidth=380}var stickyHeight=stickyWidth*videoRatio;fv_player_sticky_video()}else{return}}function fv_player_sticky_video(){var change=false;var $window=jQuery(window),$flowplayerDiv=$root,top=$flowplayerDiv.offset().top,offset=Math.floor(top+$flowplayerDiv.outerHeight()/2);api.on("ready",function(){change=true});api.on("progress",function(){change=true});api.on("unload",function(){change=false;fv_player_sticky_class_remove();$root.removeClass("is-unSticky")});$window.on("resize",function(){if(!is_big_enough()){if(is_sticky){fv_player_sticky_class_remove()}return}top=$flowplayerDiv.offset().top;offset=Math.floor(top+$flowplayerDiv.outerHeight()/2)}).on("scroll",function(){if(!is_big_enough()){if(is_sticky){fv_player_sticky_class_remove()}return}top=$flowplayerDiv.offset().top;offset=Math.floor(top+$flowplayerDiv.outerHeight()/2);if($window.scrollTop()>offset&&change){if(jQuery("div.flowplayer.is-unSticky").length>0){console.log("unSticky",jQuery("div.flowplayer.is-unSticky").length);return false}else{fv_player_sticky_class_add()}}else{fv_player_sticky_class_remove();change=false}})}function fv_player_sticky_class_add(){if($playerDiv.hasClass("is-sticky-"+stickyPlace)){return}else{$playerDiv.addClass("is-sticky-"+stickyPlace);if($root.find("a.fp-sticky").length==0){$root.find("div.fp-header").prepend('<a class="fp-sticky fp-icon"></a>')}$playerDiv.css("width",stickyWidth);$playerDiv.css("height",stickyHeight);$playerDiv.css("max-height",stickyHeight);is_sticky=true;api.trigger("sticky",[api])}$playerDiv.parent(".flowplayer").addClass("is-stickable")}function fv_player_sticky_class_remove(){$playerDiv.removeClass("is-sticky-"+stickyPlace);$playerDiv.css("width","");$playerDiv.css("height","");$playerDiv.css("max-height","");$playerDiv.parent(".flowplayer").removeClass("is-stickable");if(is_sticky){is_sticky=false;api.trigger("sticky-exit",[api])}}function is_big_enough(){return jQuery(window).innerWidth()>=1020}});jQuery(function($){$(document).on("click","a.fp-sticky",function(){$("div.flowplayer.is-stickable").addClass("is-unSticky");var $playerDiv=$("div.flowplayer.is-stickable").find(".fp-player");$playerDiv.removeClass("is-sticky-right-bottom");$playerDiv.removeClass("is-sticky-left-bottom");$playerDiv.removeClass("is-sticky-right-top");$playerDiv.removeClass("is-sticky-left-top");$playerDiv.css("width","");$playerDiv.css("height","");$playerDiv.css("max-height","");if(is_sticky){is_sticky=false;api.trigger("sticky-exit",[api])}});$(document).on("click","div.flowplayer.is-unSticky",function(){$("div.flowplayer").removeClass("is-unSticky")})});flowplayer(function(api,root){root=jQuery(root);api.on("ready",function(e,api,video){if(window.localStorage.fv_player_subtitle&&root.find("strong.fp-cc").is(":visible")){if(api.video.subtitles.length){api.video.subtitles.forEach(function(item,index){if(item.srclang===window.localStorage.fv_player_subtitle){api.loadSubtitles(index)}})}}root.find(".fp-subtitle-menu").on("click",function(e){if(typeof e.target.getAttribute("data-subtitle-index")=="string"&&e.target.getAttribute("data-subtitle-index").length){try{window.localStorage.fv_player_subtitle=api.video.subtitles[e.target.getAttribute("data-subtitle-index")].srclang}catch(e){}}})})});flowplayer(function(api,root){root=jQuery(root);var currentPoint,check=false;api.bind("cuepoint",function(e,api,cue){check=false;if(cue.subtitle){currentPoint=cue.index}});api.on("ready",function(e,api){root.find(".fp-subtitle-menu strong").text(fv_flowplayer_translations.closed_captions);root.find('.fp-subtitle-menu a[data-subtitle-index="-1"]').text(fv_flowplayer_translations.no_subtitles)});root.on("click",".fp-subtitle-menu a[data-subtitle-index]",function(e){if(jQuery(this).data("subtitle-index")>-1){check=true;api.on("progress",time_check)}});function time_check(e,api,time){if(check){(api.cuepoints||[]).forEach(function(cue,index){var entry=cue.subtitle;if(entry&¤tPoint!=index){if(time>=cue.time&&(!entry.endTime||time<=entry.endTime)){api.trigger("cuepoint",[api,cue])}}})}}});if(typeof flowplayer!=="undefined"&&typeof fv_flowplayer_conf!="undefined"&&fv_flowplayer_conf.video_hash_links){flowplayer(function(api,root){if(jQuery(root).find(".sharing-link").length>0){var abEnd,abStart,hash,sTime,abloop;function update_link(abStartNew,abEndNew){hash=fv_player_get_video_link_hash(api);sTime=","+fv_player_time_hms(api.video.time);if(abStartNew&&abEndNew){abStart=","+fv_player_time_hms_ms(abStartNew+api.get_custom_start());abEnd=","+fv_player_time_hms_ms(abEndNew+api.get_custom_start())}else{abEnd=abloop&&typeof api.get_ab_end()!="undefined"&&api.get_ab_end()?","+fv_player_time_hms_ms(api.get_ab_end()):"";abStart=abloop&&typeof api.get_ab_start()!="undefined"&&api.get_ab_start()?","+fv_player_time_hms_ms(api.get_ab_start()):""}jQuery(".sharing-link",root).attr("href",jQuery(".sharing-link",root).attr("href").replace(/#.*/,"")+"#"+hash+sTime+abStart+abEnd)}api.on("ready",function(e,api,video){if(!api.fv_noUiSlider)return;api.fv_noUiSlider.on("set",function(values){update_link(values[0],values[1])})});api.on("progress",function(e,api){if(!api.video.sources||!api.video.sources[0]){return}update_link()});api.on("abloop",function(e,api,active){abloop=active;if(!api.playing){update_link()}});jQuery(".sharing-link",root).on("click",function(e){fv_player_clipboard(jQuery(this).attr("href"),function(){e.preventDefault();fv_player_notice(root,fv_flowplayer_translations.link_copied,2e3)})})}});jQuery(document).on("click",'a[href*="fvp_"]',function(){var link=jQuery(this);setTimeout(function(){if(link.parents(".fvp-share-bar").length==0)fv_autoplay_exec()})})}flowplayer(function(api,root){root=jQuery(root);var bean=flowplayer.bean;var restore=-1;root.on("click",".fp-volumebtn",function(e){if(api.volumeLevel==0&&restore!=-1){api.volume(restore);return false}});root.on("mousedown touchstart mouseup touchend",".fp-volumebar",function(e){if(api.volumeLevel!=0){restore=api.volumeLevel}});root.on("mousedown touchstart",".fp-volumebtn",function(e){if(api.volumeLevel>0){restore=-1}});api.on("volume",function(e,api){if(root.hasClass("is-mouseover")&&!api.muted){if(api.volumeLevel==0){bean.off(flowplayer.support.touch?root:document,"mousemove.sld touchmove.sld");api.mute(true)}}})});if(typeof flowplayer!="undefined"){flowplayer(function(api,root){root=jQuery(root);if(navigator.userAgent.match(/iPhone.* OS [0-6]_/i)){api.one("progress",function(e){if(typeof api.video.subtitles!=="undefined"&&api.video.subtitles.length){fv_player_warning(root,fv_flowplayer_translations.warning_iphone_subs)}})}if(flowplayer.support.android&&flowplayer.support.android.version<5&&(flowplayer.support.android.samsung||flowplayer.support.browser.safari)){fv_player_warning(root,fv_flowplayer_translations.warning_unstable_android,"firefox")}if(/Android 4/.test(navigator.userAgent)&&!/Firefox/.test(navigator.userAgent)){api.on("ready",function(e,api,video){setTimeout(function(){if(video.src&&video.src.match(/fpdl.vimeocdn.com/)&&(video.time==0||video.time==1)){fv_player_warning(root,fv_flowplayer_translations.warning_unstable_android,"firefox");api.on("progress",function(e,api){root.prev().find(".fv-player-warning-firefox").remove()})}},1500)});api.on("error",function(e,api,error){if(error.MEDIA_ERR_NETWORK==2&&error.video.src.match(/fpdl.vimeocdn.com/)){fv_player_warning(root,fv_flowplayer_translations.warning_unstable_android,"firefox")}})}if(/Safari/.test(navigator.userAgent)&&/Version\/5/.test(navigator.userAgent)){api.on("error",function(e,api,error){if(error.video.src.match(/fpdl.vimeocdn.com/)){fv_player_warning(root,fv_flowplayer_translations.warning_old_safari)}})}var sup=flowplayer.support;if(sup.android&&(sup.android.samsung&&parseInt(sup.browser.version)<66||sup.browser.safari)){api.on("error",function(e,api,error){fv_player_warning(root,fv_flowplayer_translations.warning_samsungbrowser,"warning_samsungbrowser")})}});function fv_player_warning(root,warning,classname){var wrapper=jQuery(root).prev(".fv-player-warning-wrapper");if(wrapper.length==0){jQuery(root).before('<div class="fv-player-warning-wrapper">');wrapper=jQuery(root).prev(".fv-player-warning-wrapper")}if(wrapper.find(".fv-player-warning-"+classname).length==0){var latest=jQuery("<p style='display: none' "+(classname?" class='fv-player-warning-"+classname+"'":"")+">"+warning+"</p>");wrapper.append(latest);latest.slideDown()}}}
|
1 |
+
if(typeof fv_flowplayer_conf!="undefined"){try{if(typeof window.localStorage=="object"&&typeof window.localStorage.volume!="undefined"){delete fv_flowplayer_conf.volume}}catch(e){}flowplayer.conf=fv_flowplayer_conf;flowplayer.conf.fullscreen=false;flowplayer.conf.chromecast=false;flowplayer.conf.embed=false;flowplayer.conf.share=false;flowplayer.conf.analytics=false;try{flowplayer.conf.key=atob(flowplayer.conf.key)}catch(e){}if(!flowplayer.support.android&&flowplayer.conf.dacast_hlsjs){function FVAbrController(hls){this.hls=hls;this.nextAutoLevel=3}FVAbrController.prototype.nextAutoLevel=function(nextLevel){this.nextAutoLevel=nextLevel};FVAbrController.prototype.destroy=function(){};flowplayer.conf.hlsjs={startLevel:-1,abrController:FVAbrController}}function parseIOSVersion(UA){var e=/iP(ad|hone)(; CPU)? OS (\d+_\d)/.exec(UA);if(e&&e.length>1){return parseFloat(e[e.length-1].replace("_","."),10)}return 0}if(flowplayer.support.iOS&&flowplayer.support.iOS.chrome&&flowplayer.support.iOS.version==0){flowplayer.support.iOS.version=parseIOSVersion(navigator.userAgent)}if(flowplayer.support.iOS&&parseInt(flowplayer.support.iOS.version)>=13||!flowplayer.support.iOS&&flowplayer.support.browser.safari&&parseInt(flowplayer.support.browser.version)>=8){flowplayer.conf.hlsjs.safari=true}flowplayer.support.fvmobile=!!(!flowplayer.support.firstframe||flowplayer.support.iOS||flowplayer.support.android);var fls=flowplayer.support;if(flowplayer.conf.mobile_native_fullscreen&&"ontouchstart"in window&&fls.fvmobile){flowplayer.conf.native_fullscreen=true}if("ontouchstart"in window){if(fls.android&&fls.android.version<4.4&&!(fls.browser.chrome&&fls.browser.version>54)){flowplayer.conf.native_fullscreen=true}if(fls.iOS&&(fv_player_in_iframe()||fls.iOS.version<7)){flowplayer.conf.native_fullscreen=true}}}if(typeof fv_flowplayer_translations!="undefined"){flowplayer.defaults.errors=fv_flowplayer_translations}var fv_player_did_autoplay=false;function fv_player_videos_parse(args,root){try{var videos=JSON.parse(args)}catch(e){return false}var regex=new RegExp("[\\?&]fv_flowplayer_mobile=([^&#]*)");var results=regex.exec(location.search);if((results!=null&&results[1]=="yes"||(jQuery(window).width()<=480||jQuery(window).height()<=480))&&(results==null||results[1]!="no")){var fv_fp_mobile=false;jQuery(videos.sources).each(function(k,v){if(v.mobile){videos.sources[k]=videos.sources[0];videos.sources[0]=v;fv_fp_mobile=true}if(fv_fp_mobile){jQuery(root).after('<p class="fv-flowplayer-mobile-switch">'+fv_flowplayer_translations.mobile_browser_detected_1+' <a href="'+document.URL+'?fv_flowplayer_mobile=no">'+fv_flowplayer_translations.mobile_browser_detected_2+"</a>.</p>")}})}root.trigger("fv_player_videos_parse",videos);return videos}function fv_player_in_iframe(){try{return window.self!==window.top}catch(e){return true}}jQuery(document).ready(function(){var loading_count=0;var loading=setInterval(function(){loading_count++;if(loading_count<1e3&&(window.fv_video_intelligence_conf&&!window.FV_Player_IMA||window.fv_vast_conf&&!window.FV_Player_IMA||window.fv_player_pro&&!window.FV_Flowplayer_Pro&&document.getElementById("fv_player_pro")!=fv_player_pro||window.fv_player_user_playlists&&!fv_player_user_playlists.is_loaded||window.FV_Player_JS_Loader_scripts_total&&window.FV_Player_JS_Loader_scripts_loaded<FV_Player_JS_Loader_scripts_total)){return}clearInterval(loading);fv_player_preload()},10)});function fv_escape_attr(text){var map={"&":"&","<":"<",">":">",'"':""","'":"'"};return text.replace(/[&<>"']/g,function(m){return map[m]})}function fv_player_preload(){if(flowplayer.support.touch){jQuery(".fp-playlist-external.fv-playlist-design-2017").addClass("visible-captions")}flowplayer(function(api,root){if(localStorage.flowplayerTestStorage){delete localStorage.flowplayerTestStorage}root=jQuery(root);var fp_player=root.find(".fp-player");var splash_click=false;if(root.hasClass("fixed-controls")){root.find(".fp-controls").on("click",function(e){if(!api.loading&&!api.ready){e.preventDefault();e.stopPropagation();api.load()}})}if(!flowplayer.support.volume&&!flowplayer.support.autoplay){root.find(".fp-volume").hide()}if(root.data("volume")==0&&root.hasClass("no-controlbar")){root.find(".fp-volume").remove()}var playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]");if((!api.conf.playlist||api.conf.playlist.length==0)&&playlist.length&&playlist.find("a[data-item]").length>0){var items=[];playlist.find("a[data-item]").each(function(){if(parsed=fv_player_videos_parse(jQuery(this).attr("data-item"),root)){items.push(parsed)}else{jQuery(this).remove()}});api.conf.playlist=items;api.conf.clip=items[0]}else if(!api.conf.clip){api.conf.clip=fv_player_videos_parse(jQuery(root).attr("data-item"),root)}jQuery("a",playlist).on("click",function(e){e.preventDefault();splash_click=true;var $this=jQuery(this),playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]"),index=jQuery("a",playlist).index(this);$prev=$this.prev("a"),item=$this.data("item");if(location.href.match(/wp-admin/)&&$this.parents(".fv-player-editor-preview").length>0){fv_flowplayer_conf.current_video_to_edit=index;$this.parents(".fv-player-custom-video").find(".edit-video .fv-player-editor-button").trigger("click");return false}if($prev.length&&$this.is(":visible")&&!$prev.is(":visible")){$prev.trigger("click");return false}if(jQuery("#"+$this.parent().attr("rel")).hasClass("dynamic-playlist"))return;var playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]");fv_player_playlist_active(playlist,this);if(api){if(api.error){api.pause();api.error=api.loading=false;root.removeClass("is-error");root.find(".fp-message.fp-shown").remove()}if(!api.video||api.video.index==index)return;api.play(index)}var new_splash=item.splash;if(!new_splash){new_splash=$this.find("img").attr("src")}player_splash(root,fp_player,item,new_splash);var rect=root[0].getBoundingClientRect();if(rect.bottom-100<0){jQuery("html, body").animate({scrollTop:jQuery(root).offset().top-100},300)}});var playlist_external=jQuery("[rel="+root.attr("id")+"]");var playlist_progress=false;var splash_img=root.find(".fp-splash");var splash_text=root.find(".fv-fp-splash-text");function player_splash(root,fp_player,item,new_splash){var splash_img=root.find("img.fp-splash");if(new_splash){if(splash_img.length==0){splash_img=jQuery('<img class="fp-splash" />');fp_player.prepend(splash_img)}splash_img.attr("alt",item.fv_title?fv_escape_attr(item.fv_title):"video");splash_img.attr("src",new_splash)}else if(splash_img.length){splash_img.remove()}}api.bind("load",function(e,api,video){if(!api.conf.playlist.length){return}if(video.type.match(/^audio/)&&!splash_click){var anchor=playlist_external.find("a").eq(video.index);var item=anchor.data("item");var new_splash=item.splash;if(!new_splash){new_splash=anchor.find("img").attr("src")}player_splash(root,fp_player,item,new_splash)}splash_click=false});api.bind("ready",function(e,api,video){setTimeout(function(){if(video.index>-1){if(playlist_external.length>0){var playlist_item=jQuery("a",playlist_external).eq(video.index);fv_player_playlist_active(playlist_external,playlist_item);playlist_progress=playlist_item.find(".fvp-progress")}}},100);splash_img=root.find(".fp-splash");if(!video.is_audio_stream&&!video.type.match(/^audio/)){splash_img.remove();splash_text.remove()}});api.bind("unload",function(){jQuery(".fp-playlist-external .now-playing").remove();jQuery(".fp-playlist-external a").removeClass("is-active");var iframe=fp_player.find("iframe.fp-engine");if(iframe.length){iframe.after(splash_text);iframe.after(splash_img)}else{fp_player.prepend(splash_text);fp_player.prepend(splash_img)}playlist_progress=false});api.bind("progress",function(e,api,time){if(playlist_progress.length){api.playlist_thumbnail_progress(playlist_progress,api.video,time)}});api.bind("error-subtitles",function(){console.log("error-subtitles");fv_player_notice(root,fv_flowplayer_translations[8],2e3)});var playlist=jQuery(root).parent().find("div.fp-playlist-vertical[rel="+jQuery(root).attr("id")+"]");if(playlist.length){function check_size_and_all(args){var property=playlist.hasClass("fp-playlist-only-captions")?"height":"max-height";if(playlist.parents(".fp-playlist-text-wrapper").hasClass("is-fv-narrow")){property="max-height"}playlist.css(property,vertical_playlist_height());if(property=="max-height")playlist.css("height","auto")}check_size_and_all();jQuery(window).on("resize tabsactivate",function(){setTimeout(check_size_and_all,0)})}function vertical_playlist_height(args){var height=root.height();if(height==0)height=root.css("max-height");return height}api.show_status=function(type){var status="";["loading","ready","playing","paused","seeking"].every(function(v,k){if(api[v])status+=" "+v;return true});console.log("FV Player Status ("+type+")",status)};if(!window.fv_player_loaded){window.fv_player_loaded=true;setTimeout(function(){jQuery(document).trigger("fv_player_loaded");var event=new CustomEvent("fv_player_loaded",[]);document.dispatchEvent(event)},100)}setTimeout(function(){root.trigger("fv_player_loaded")},10)});if(window.self!=window.top&&!location.href.match(/fv_player_preview/)){embed_size();jQuery(window.self).resize(embed_size)}function embed_size(){jQuery(".flowplayer.fp-is-embed").each(function(){var root=jQuery(this);if(!root.hasClass("has-chapters")&&!root.hasClass("has-transcript")&&jQuery(".fp-playlist-external[rel="+root.attr("id")+"]").length==0){root.height(jQuery(window).height())}})}if(typeof fv_flowplayer_playlists!="undefined"){for(var i in fv_flowplayer_playlists){if(!fv_flowplayer_playlists.hasOwnProperty(i))continue;jQuery("#"+i).flowplayer({playlist:fv_flowplayer_playlists[i]})}}fv_player_load();fv_autoplay_exec();jQuery(document).ajaxComplete(function(){fv_player_load()});jQuery(window).on("hashchange",fv_autoplay_exec)}function fv_player_load(forced_el){if(forced_el&&forced_el.lenght>1){console.log("FV Player: Can't use fv_player_load with more than a single forced element!")}var load_players=forced_el,forced_api=false;if(!load_players)load_players=jQuery(".flowplayer");load_players.each(function(i,el){var root=jQuery(el);var api=root.data("flowplayer");if(api){if(forced_el)forced_api=api;return}if(forced_el){root.find(".fp-preload, .fvfp_admin_error").remove();if(root.attr("data-item-lazy")){root.attr("data-item",root.attr("data-item-lazy"));root.removeAttr("item-lazy")}else if(playlist=jQuery("[rel="+root.attr("id")+"]")){playlist.find("a[data-item-lazy]").each(function(k,v){v=jQuery(v);v.attr("data-item",v.attr("data-item-lazy"));v.removeAttr("data-item-lazy")})}}var conf=false;if(root.attr("data-item")){conf={clip:fv_player_videos_parse(root.attr("data-item"),root)}}else if(playlist=jQuery("[rel="+root.attr("id")+"]")){if(playlist.find("a[data-item]").length==0)return;var items=[];playlist.find("a[data-item]").each(function(){if(parsed=fv_player_videos_parse(jQuery(this).attr("data-item"),root)){items.push(parsed)}else{jQuery(this).remove()}});conf={playlist:items}}if(conf){conf=flowplayer.extend(conf,root.data());forced_api=flowplayer(root[0],conf);root.data("flowplayer",forced_api)}});jQuery(".fv-playlist-slider-wrapper").each(function(i,el){var items=jQuery(this).find("a");jQuery(this).find(".fp-playlist-external").css("width",items.outerWidth()*items.length)});if(typeof jQuery().tabs!="undefined"){jQuery("body").removeClass("fv_flowplayer_tabs_hide");jQuery(".fv_flowplayer_tabs_content").tabs()}if(forced_el&&forced_api){return forced_api}}function fv_player_playlist_active(playlist,item){if(playlist){jQuery("a",playlist).removeClass("is-active");jQuery(".now-playing").remove()}$playlist=jQuery(playlist);$item=jQuery(item);var scroll_parent=false;$item.addClass("is-active");var is_design_2014=$playlist.hasClass("fv-playlist-design-2014");if((is_design_2014&&$item.find("h4").length==0||!is_design_2014)&&$item.find(".now-playing").length==0)$item.prepend('<strong class="now-playing"><span>'+fv_flowplayer_translations.playlist_current+"</span></strong>");if(!$playlist.parent().find(".flowplayer").length){scroll_parent=true}if(($playlist.hasClass("fp-playlist-vertical")||$playlist.hasClass("fp-playlist-horizontal")&&$playlist.hasClass("is-audio"))&&!fullyVisibleY($item.get(0))){var $el=scroll_parent?$playlist.parent():$playlist;$el.animate({scrollTop:$el.scrollTop()+($item.position().top-$el.position().top)},750)}else if($playlist.hasClass("fp-playlist-horizontal")&&!fullyVisibleX($item.get(0))){var $el=scroll_parent?$playlist.parent():$playlist;$el.animate({scrollLeft:$el.scrollLeft()+($item.position().left-$el.position().left)},750)}function fullyVisibleY(el){var rect=el.getBoundingClientRect(),top=rect.top,height=rect.height,bottom=top+height,el=el.parentNode;do{rect=el.getBoundingClientRect();if(bottom<=rect.bottom===false)return false;if(top<=rect.top)return false;el=el.parentNode}while(el!=document.body);return bottom<=document.documentElement.clientHeight}function fullyVisibleX(el){var rect=el.getBoundingClientRect(),left=rect.left,width=rect.width,right=left+width,el=el.parentNode;do{rect=el.getBoundingClientRect();if(right<=rect.right===false)return false;if(left<=rect.left)return false;el=el.parentNode}while(el!=document.body);return right<=document.documentElement.clientWidth}}var fv_fp_date=new Date;var fv_fp_utime=fv_fp_date.getTime();function fv_parse_sharelink(src){src=src.replace("https?://[^./].","");var prefix="fvp_";if(src.match(/(youtube.com)/)){return prefix+src.match(/(?:v=)([A-Za-z0-9_-]*)/)[1]}else if(src.match(/(vimeo.com)|(youtu.be)/)){return prefix+src.match(/(?:\/)([^/]*$)/)[1]}else{var match=src.match(/(?:\/)([^/]*$)/);if(match){return prefix+match[1].match(/^[^.]*/)[0]}}return prefix+src}function fv_player_get_video_link_hash(api){var hash=fv_parse_sharelink(typeof api.video.sources_original!="undefined"&&typeof api.video.sources_original[0]!="undefined"?api.video.sources_original[0].src:api.video.sources[0].src);if(typeof api.video.id!="undefined"){hash=fv_parse_sharelink(api.video.id.toString())}return hash}function fv_player_time_hms(seconds){if(isNaN(seconds)){return NaN}var sec_num=parseInt(seconds,10);var hours=Math.floor(sec_num/3600);var minutes=Math.floor(sec_num/60)%60;var seconds=sec_num%60;if(hours){hours+="h"}else{hours=""}if(hours&&minutes<10){minutes="0"+minutes+"m"}else if(!hours&&minutes){minutes+="m"}else{minutes=""}if((hours||minutes)&&seconds<10){seconds="0"+seconds}seconds+="s";var timeString=hours+minutes+seconds;return timeString}function fv_player_time_hms_ms(seconds){if(isNaN(seconds)){return NaN}seconds=parseFloat(seconds).toFixed(3);var miliseconds=(seconds+"").split(".");if(typeof miliseconds[1]!="undefined"&&miliseconds[1]>0){miliseconds=miliseconds[1]+"ms"}else{miliseconds=""}var timeString=fv_player_time_hms(seconds)+miliseconds;return timeString}function fv_player_time_seconds(time,duration){if(!time)return-1;var seconds=0;var match=time.match(/(\d+[a-z]{1,2})/g);match.forEach(function(item){if(item.endsWith("h")){seconds+=3600*parseInt(item)}else if(item.endsWith("m")){seconds+=60*parseInt(item)}else if(item.endsWith("s")&&!item.endsWith("ms")){seconds+=parseInt(item)}else if(item.endsWith("ms")){if(parseInt(item)){seconds+=parseInt(item)/1e3}}});return duration?Math.min(seconds,duration):seconds}function fv_autoplay_init(root,index,time,abStart,abEnd){if(fv_autoplay_exec_in_progress)return;fv_autoplay_exec_in_progress=true;var api=root.data("flowplayer");if(!api)return;var fTime=fv_player_time_seconds(time);abEnd=fv_player_time_seconds(abEnd);abStart=fv_player_time_seconds(abStart);if(root.parent().hasClass("ui-tabs-panel")){var tabId=root.parent().attr("id");jQuery("[aria-controls="+tabId+"] a").trigger("click")}if(!root.find(".fp-player").attr("class").match(/\bis-sticky/)){var offset=jQuery(root).offset().top-(jQuery(window).height()-jQuery(root).height())/2;window.scrollTo(0,offset);api.one("ready",function(){window.scrollTo(0,offset)})}if(root.hasClass("lightboxed")){setTimeout(function(){jQuery("[href=\\#"+root.attr("id")+"]").trigger("click")},0)}if(index){if(fv_player_video_link_autoplay_can(api,parseInt(index))){if(api.ready){fv_player_video_link_seek(api,fTime)}else{api.play(parseInt(index));api.one("ready",function(){fv_player_video_link_seek(api,fTime,abEnd,abStart)})}}else if(flowplayer.support.inlineVideo){api.one(api.playing?"progress":"ready",function(e,api){api.play(parseInt(index));api.one("ready",function(){fv_player_video_link_seek(api,fTime,abEnd,abStart)})});root.find(".fp-splash").attr("src",jQuery("[rel="+root.attr("id")+"] div").eq(index).find("img").attr("src"));if(!fv_player_in_iframe()){fv_player_notice(root,fv_flowplayer_translations[11],"progress")}}}else{if(api.ready){fv_player_video_link_seek(api,fTime)}else{if(fv_player_video_link_autoplay_can(api)){api.load()}else if(!fv_player_in_iframe()){fv_player_notice(root,fv_flowplayer_translations[11],"progress")}api.one("ready",function(){fv_player_video_link_seek(api,fTime,abEnd,abStart)})}}}function fv_player_video_link_seek(api,fTime,abEnd,abStart){fv_autoplay_exec_in_progress=false;var do_seek=setInterval(function(){if(api.loading)return;if(fTime>0||api.video.time>0){if(!!api.custom_seek){api.custom_seek(fTime)}else{api.seek(fTime)}}if(abEnd&&abStart)api.trigger("link-ab",[api,abStart,abEnd]);clearInterval(do_seek)},10)}var fv_autoplay_exec_in_progress=false;function fv_autoplay_exec(){var autoplay=true;if(typeof flowplayer!=="undefined"&&typeof fv_flowplayer_conf!="undefined"&&fv_flowplayer_conf.video_hash_links&&window.location.hash.substring(1).length){var aHash=window.location.hash.match(/\?t=/)?window.location.hash.substring(1).split("?t="):window.location.hash.substring(1).split(",");var hash=aHash[0];var time=aHash[1]===undefined?false:aHash[1];var abStart=aHash[2]===undefined?false:aHash[2];var abEnd=aHash[3]===undefined?false:aHash[3];jQuery(".flowplayer").each(function(){var root=jQuery(this);if(root.hasClass("lightbox-starter")){root=jQuery(root.attr("href"))}var api=root.data("flowplayer");if(!api)return;var playlist=typeof api.conf.playlist!=="undefined"&&api.conf.playlist.length>1?api.conf.playlist:[api.conf.clip];for(var item in playlist){if(!playlist.hasOwnProperty(item))continue;var id=typeof playlist[item].id!=="undefined"?fv_parse_sharelink(playlist[item].id.toString()):false;if(hash===id&&autoplay){console.log("fv_autoplay_exec for "+id,item);fv_autoplay_init(root,parseInt(item),time,abStart,abEnd);autoplay=false;return false}}for(var item in playlist){if(!playlist.hasOwnProperty(item))continue;var src=fv_parse_sharelink(playlist[item].sources[0].src);if(hash===src&&autoplay){console.log("fv_autoplay_exec for "+src,item);fv_autoplay_init(root,parseInt(item),time,abStart,abEnd);autoplay=false;return false}}})}if(autoplay&&flowplayer.support.firstframe){jQuery(".flowplayer[data-fvautoplay]").each(function(){var root=jQuery(this),api=root.data("flowplayer"),autoplay=root.attr("data-fvautoplay");if(!fv_player_did_autoplay&&autoplay){if((flowplayer.support.android||flowplayer.support.iOS)&&api&&api.conf.clip.sources[0].type=="video/youtube"){console.log("FV Player: Autoplay for YouTube not supported on Android and iOS");return}else{fv_player_did_autoplay=true;if(api.conf.playlist.length&&jQuery.isNumeric(autoplay)){api.play(parseInt(autoplay))}else{api.load()}var play_icon=root.find(".fp-play").addClass("invisible"),control_bar=root.find(".fp-controls").addClass("invisible");api.one("progress",function(){play_icon.removeClass("invisible");control_bar.removeClass("invisible")});if(autoplay=="muted"){api.mute(true,true)}}}})}}function fv_player_video_link_autoplay_can(api,item){var video=item?api.conf.playlist[item]:api.conf.clip;if(video.sources[0].type=="video/youtube"&&(flowplayer.support.iOS||flowplayer.support.android)||fv_player_in_iframe())return false;return flowplayer.support.firstframe}function fv_player_notice(root,message,timeout){var notices=jQuery(".fvfp-notices",root);if(!notices.length){notices=jQuery('<div class="fvfp-notices">');jQuery(".fp-player",root).append(notices)}var notice=jQuery('<div class="fvfp-notice-content">'+message+"</div></div>");notices.append(notice);if(typeof timeout=="string"){var player=jQuery(root).data("flowplayer");player.on(timeout,function(){notice.fadeOut(100,function(){jQuery(this).remove()})})}if(timeout>0){setTimeout(function(){notice.fadeOut(2e3,function(){jQuery(this).remove()})},timeout)}return notice}var fv_player_clipboard=function(text,successCallback,errorCallback){try{fv_player_doCopy(text);successCallback()}catch(e){if(typeof errorCallback!="undefined")errorCallback(e)}};function fv_player_doCopy(text){var textarea=document.createElement("textarea");textarea.value=text;textarea.style.opacity=0;textarea.style.position="absolute";textarea.setAttribute("readonly",true);document.body.appendChild(textarea);var selected=document.getSelection().rangeCount>0?document.getSelection().getRangeAt(0):false;if(navigator.userAgent.match(/ipad|ipod|iphone/i)){var editable=textarea.contentEditable;textarea.contentEditable=true;var range=document.createRange();range.selectNodeContents(textarea);var sel=window.getSelection();sel.removeAllRanges();sel.addRange(range);textarea.setSelectionRange(0,999999);textarea.contentEditable=editable}else{textarea.select()}try{var result=document.execCommand("copy");if(selected){document.getSelection().removeAllRanges();document.getSelection().addRange(selected)}document.body.removeChild(textarea);return result}catch(err){throw new Error("Unsuccessfull")}}flowplayer(function(api,root){root=jQuery(root);var hlsjs;flowplayer.engine("hlsjs-lite").plugin(function(params){hlsjs=params.hls;hlsjs.on(Hls.Events.ERROR,function(event,data){if(data.type=="mediaError"&&data.details=="fragParsingError"&&data.fatal==true){hlsjs.destroy();api.trigger("error",[api,{code:3}]);setTimeout(function(){root.removeClass("is-seeking");root.addClass("is-paused")},0)}});if(flowplayer.support.browser.safari){hlsjs.on(Hls.Events.KEY_LOADED,function(event){if(event=="hlsKeyLoaded"){setTimeout(function(){if(api.loading){console.log("FV Player: Safari stuck loading HLS, resuming playback...");api.resume()}},0)}})}var pick_quality=flowplayer.conf.hd_streaming&&!flowplayer.support.fvmobile?720:false;if(jQuery(params.root).data("hd_streaming")==false)pick_quality=false;if(localStorage.FVPlayerHLSQuality)pick_quality=localStorage.FVPlayerHLSQuality;if(pick_quality){hlsjs.on(Hls.Events.MANIFEST_PARSED,function(_,data){var found=false;jQuery.each(data.levels,function(k,v){if(v.height==pick_quality)found=k});if(!localStorage.FVPlayerHLSQuality&&!found){jQuery.each(data.levels,function(k,v){if(v.height>found)found=k})}if(found){console.log("FV Player: Picked "+data.levels[found].height+"p quality");hlsjs.startLevel=found;hlsjs.currentLevel=found}})}});root=jQuery(root);var search=document.location.search;if(localStorage.FVPlayerDashQuality){if(!api.conf.dash)api.conf.dash={};api.conf.dash.initialVideoQuality="restore"}root.on("click",".fp-qsel-menu a",function(){if(api.engine.engineName=="hlsjs-lite"){var quality=jQuery(this).data("quality");if(quality==-1){localStorage.removeItem("FVPlayerHLSQuality")}else{var level=hlsjs.levels[quality];localStorage.FVPlayerHLSQuality=level.height}}});if(localStorage.FVPlayerHLSQuality){api.conf.hlsjs.startLevel=parseInt(localStorage.FVPlayerHLSQuality);api.conf.hlsjs.testBandwidth=false;api.conf.hlsjs.autoLevelEnabled=false}else if(flowplayer.conf.hd_streaming&&!flowplayer.support.fvmobile){api.conf.hlsjs.startLevel=3;api.conf.hlsjs.testBandwidth=false;api.conf.hlsjs.autoLevelEnabled=false}api.bind("quality",function(e,api,quality){if(api.engine.engineName=="dash"){if(quality==-1){localStorage.removeItem("FVPlayerDashQuality")}else if(bitrates[quality]){localStorage.FVPlayerDashQuality=bitrates[quality].height}}});var bitrates=[];var last_quality=-1;api.bind("ready",function(e,api){root.find(".fp-qsel-menu strong").text(fv_flowplayer_translations.quality);if(api.engine.engineName=="dash"){bitrates=api.engine.dash.getBitrateInfoListFor("video");if(localStorage.FVPlayerDashQuality&&api.conf.dash.initialVideoQuality){api.quality(api.conf.dash.initialVideoQuality)}quality_sort()}else if(api.engine.engineName=="hlsjs-lite"){root.addClass("is-loading");api.loading=true;api.one("progress",function(){if(api.loading){root.removeClass("is-loading");api.loading=false}});if(api.video.qualities&&api.video.qualities.length>2){var qswitch=-1;if(localStorage.FVPlayerHLSQuality){jQuery(api.video.qualities).each(function(k,v){if(v.value==localStorage.FVPlayerHLSQuality){qswitch=localStorage.FVPlayerHLSQuality;return false}})}else if(flowplayer.conf.hd_streaming&&!flowplayer.support.fvmobile){jQuery(api.video.qualities).each(function(k,v){var height=parseInt(v.label);if(height>0&&qswitch==-1&&height>=720&&height<=720){qswitch=v.value}})}qswitch=parseInt(qswitch);if(qswitch>-1){root.one("progress",function(){setTimeout(function(){api.quality(qswitch)})})}quality_sort()}}else if(api.video.sources_fvqs&&api.video.sources_fvqs.length>0&&api.video.src.match(/vimeo.*?\.mp4/)){setTimeout(quality_sort,0)}root.find("a[data-quality]").removeClass("is-current")});if(search.match(/dash_debug/)||search.match(/hls_debug/))var debug_log=jQuery('<div class="fv-debug" style="background: gray; color: white; top: 10%; position: absolute; z-index: 1000">').appendTo(root.find(".fp-player"));api.bind("ready progress",quality_process);api.bind("quality",function(){setTimeout(quality_process,0)});function quality_process(){if(api.engine.engineName=="dash"){var stream_info=bitrates[api.engine.dash.getQualityFor("video")];if(stream_info.qualityIndex!=last_quality){last_quality=stream_info.qualityIndex;quality_label(stream_info.qualityIndex,bitrates)}if(search.match(/dash_debug/))quality_debug(stream_info.width,stream_info.height,stream_info.bitrate)}else if(api.engine.engineName=="hlsjs-lite"){if(hlsjs.currentLevel!=last_quality){last_quality=hlsjs.currentLevel;quality_label(hlsjs.currentLevel,hlsjs.levels)}if(search.match(/hls_debug/)){var level=hlsjs.levels[hlsjs.currentLevel];if(level){quality_debug(level.width,level.height,level.bitrate)}}}}function quality_label(index,qualities){if(!qualities[index])return;var height=qualities[index].height,hd_limit=541,lowest=1e5;jQuery(qualities).each(function(k,v){if(v.height>=720&&v.height<1400)hd_limit=720;if(v.height<lowest)lowest=v.height;if(localStorage.FVPlayerHLSQuality==v.height){root.find("a[data-quality]").removeClass("fp-selected fp-color");root.find("a[data-quality="+k+"]").addClass("fp-selected fp-color")}});root.find("a[data-quality]").removeClass("is-current");root.find("a[data-quality="+index+"]").addClass("is-current");var label="SD";if(height>=360&&lowest<height)label="SD";if(height>=hd_limit)label="HD";if(height>=1400)label="4K";root.find(".fp-qsel").html(label)}function quality_debug(w,h,br){debug_log.html("Using "+w+"x"+h+" at "+Math.round(br/1024)+" kbps")}function quality_sort(){var menu=root.find(".fp-qsel-menu");menu.children().each(function(i,a){menu.prepend(a)});menu.children().each(function(i,a){if(/^NaNp/.test(jQuery(a).html())){var bitrate=jQuery(a).html().match(/\((.*?)\)/);if(bitrate&&typeof bitrate[1]!=="undefined"){jQuery(a).html(bitrate[1])}}else{jQuery(a).html(jQuery(a).html().replace(/\(.*?\)/,""))}});menu.prepend(menu.find("a[data-quality=-1]"));menu.prepend(menu.find("strong"))}});flowplayer(function(api,root){root=jQuery(root);var player_id=root.attr("id"),ad=false;if(root.data("end_popup_preview")){jQuery(document).ready(function(){api.trigger("finish",[api])})}function ad_height_check(){var count=0;var ad_height_check=setInterval(function(){var height=ad&&ad.find(".adsbygoogle").height();count++;if(count>20*10||height>0)clearInterval(ad_height_check);if(height>root.height()){ad.addClass("tall-ad")}},50)}function show_ad(){var ad_data=root.attr("data-ad");if(typeof ad_data!="undefined"&&ad_data.length){try{ad_data=JSON.parse(ad_data)}catch(e){return false}if(!ad&&!root.hasClass("is-cva")&&root.width()>=parseInt(ad_data.width)){var html=ad_data.html;html=html.replace("%random%",Math.random());ad=jQuery('<div id="'+player_id+'_ad" class="wpfp_custom_ad">'+html+"</div>");root.find(".fp-player").append(ad);ad_height_check();setTimeout(function(){if(root.find(".wpfp_custom_ad video").length){api.pause()}},500)}}}function show_popup(event){var popup_data=root.attr("data-popup");if(typeof popup_data!="undefined"&&popup_data.length){try{popup_data=JSON.parse(popup_data)}catch(e){return false}if(event=="finish"||popup_data.pause||popup_data.html.match(/fv-player-ppv-purchase-btn-wrapper/)){root.addClass("is-popup-showing");root.find(".fp-player").append('<div id="'+player_id+'_custom_popup" class="wpfp_custom_popup">'+popup_data.html+"</div>")}}}api.bind("ready",function(e,api){if(ad.length==1){ad.remove();ad=false}if(!root.data("ad_show_after")){show_ad()}}).bind("progress",function(e,api,current){if(current>root.data("ad_show_after")){show_ad()}}).bind("finish",function(e,api){if(typeof api.video.index=="undefined"||api.video.index+1==api.conf.playlist.length){show_popup(e.type)}}).bind("pause",function(e,api){show_popup(e.type)}).bind("resume unload seek",function(e,api){if(root.hasClass("is-popup-showing")){root.find(".wpfp_custom_popup").remove();root.removeClass("is-popup-showing")}})});jQuery(document).on("click",".fv_fp_close",function(){var ad=jQuery(this).parents(".wpfp_custom_ad_content"),video=ad.find("video");ad.fadeOut();if(video.length)video[0].pause();return false});jQuery(document).on("focus",".fv_player_popup input[type=text], .fv_player_popup input[type=email], .fv_player_popup textarea",function(){var api=jQuery(this).parents(".flowplayer").data("flowplayer");if(api)api.disable(true)});jQuery(document).on("blur",".fv_player_popup input[type=text], .fv_player_popup input[type=email], .fv_player_popup textarea",function(){var api=jQuery(this).parents(".flowplayer").data("flowplayer");if(api)api.disable(false)});flowplayer(function(api,root){var root=jQuery(root),bean=flowplayer.bean,time=0,last=0,timer,event_name;if(typeof ga=="undefined"&&api.conf.fvanalytics&&typeof _gat=="undefined"&&typeof gtag=="undefined"){if(is_ga_4(api)){jQuery.getScript({url:"https://www.googletagmanager.com/gtag/js?id="+api.conf.fvanalytics,cache:true},function(){window.dataLayer=window.dataLayer||[];window.gtag=function(){window.dataLayer.push(arguments)};window.gtag("js",new Date);window.gtag("config",api.conf.fvanalytics)})}else{jQuery.getScript({url:"https://www.google-analytics.com/analytics.js",cache:true},function(){ga("create",api.conf.fvanalytics,"auto")})}}if(!window._paq&&api.conf.matomo_domain&&api.conf.matomo_site_id){var u="//"+api.conf.matomo_domain+"/";var _paq=window._paq=window._paq||[];_paq.push(["setTrackerUrl",u+"matomo.php"]);_paq.push(["setSiteId",api.conf.matomo_site_id]);var d=document,g=d.createElement("script"),s=d.getElementsByTagName("script")[0];g.type="text/javascript";g.async=true;g.src=u+"matomo.js";s.parentNode.insertBefore(g,s)}api.bind("progress",function(e,api,current){fv_track(e,api,current)}).bind("finish ready ",function(e,api){for(var j in fv_ga_events){if(!fv_ga_events.hasOwnProperty(j))continue;root.removeData("fv_track_"+fv_ga_events[j])}}).bind("error",function(e,api,error){setTimeout(function(){if(!api.error)return;var video=typeof api.video!="undefined"&&typeof api.video.src!="undefined"?api.video:false;if(!video&&typeof api.conf.clip!="undefined"&&typeof api.conf.clip.sources!="undefined"&&typeof api.conf.clip.sources[0]!="undefined"&&typeof api.conf.clip.sources[0].src!="undefined")video=api.conf.clip.sources[0];var name=fv_player_track_name(root,video);if(name&&!name.match(/\/\/vimeo.com\/\d/)){if(is_ga_4(api)){}else{fv_player_track(api,false,"Video "+(root.hasClass("is-cva")?"Ad ":"")+"error",error.message,name)}}},100)});api.bind("load unload",fv_track_seconds_played).bind("progress",function(e,api){if(!api.seeking){time+=last?+new Date-last:0;last=+new Date}if(!timer){timer=setTimeout(function(){timer=null;if(!is_ga_4(api)){fv_player_track(api,false,"Flowplayer heartbeat",api.engine.engineName+"/"+api.video.type,"Heartbeat",0)}},10*60*1e3)}}).bind("pause",function(){last=0});api.bind("shutdown",function(){bean.off(window,"unload",fv_track_seconds_played)});bean.on(window,"unload",fv_track_seconds_played);var fv_ga_events=is_ga_4(api)?["Play","25 Percent Played","50 Percent Played","75 Percent Played","100 Percent Played"]:["start","first quartile","second quartile","third quartile","complete"];function fv_track_seconds_played(e,api_not_needed,video){video=video||api.video;if(e.type==="load"){event_name=fv_player_track_name(root,video)}if(time){fv_player_track(api,false,"Video / Seconds played",api.engine.engineName+"/"+api.video.type,event_name,Math.round(time/1e3));time=0;if(timer){clearTimeout(timer);timer=null}}}function fv_track(e,api,data){var video=api.video,dur=video.duration,i=0;var name=fv_player_track_name(root,video);if(dur){if(data>19*dur/20)i=4;else if(data>3*dur/4)i=3;else if(data>dur/2)i=2;else if(data>dur/4)i=1}if(api.live)i=0;if(root.data("fv_track_"+fv_ga_events[i]))return;for(var j in fv_ga_events){if(!fv_ga_events.hasOwnProperty(j))continue;if(j==i)break;if(!root.data("fv_track_"+fv_ga_events[j]))return}root.trigger("fv_track_"+fv_ga_events[i].replace(/ /,"_"),[api,name]);root.data("fv_track_"+fv_ga_events[i],true);fv_player_track(api,false,"Video "+(root.hasClass("is-cva")?"Ad ":"")+fv_ga_events[i],api.engine.engineName+"/"+video.type,name)}api.get_time_played=function(){return time/1e3}});function is_ga_4(api){if(typeof api.conf.fvanalytics!="undefined"&&api.conf.fvanalytics&&api.conf.fvanalytics.startsWith("G-"))return true;return false}function fv_player_track(api,ga_id,event,engineType,name,value){if(!ga_id)ga_id=flowplayer.conf.fvanalytics;if(typeof engineType=="undefined")engineType="Unknown engine";if(/fv_player_track_debug/.test(window.location.href))console.log("FV Player Track: "+event+" - "+engineType+" '"+name+"'",value);if(typeof gtag!="undefined"){if(is_ga_4(api)){gtag("event",event,{video_current_time:api.video.time,video_provider:engineType,video_duration:api.video.duration,value:value?value:1})}else{gtag("event",event,{event_category:engineType,event_label:name,value:value?value:1})}}else if(ga_id&&typeof ga!="undefined"){ga("create",ga_id,"auto",name,{allowLinker:true});ga("require","linker");if(value){ga("send","event",event,engineType,name,value)}else{ga("send","event",event,engineType,name)}}else if(ga_id&&typeof _gat!="undefined"){var tracker=_gat._getTracker(ga_id);if(typeof tracker._setAllowLinker=="undefined"){return}tracker._setAllowLinker(true);if(value){tracker._trackEvent(event,engineType,name,value)}else{tracker._trackEvent(event,engineType,name)}}if(flowplayer.conf.matomo_domain&&flowplayer.conf.matomo_site_id&&typeof _paq!="undefined"){if(value){_paq.push(["trackEvent",event,engineType,name,value])}else{_paq.push(["trackEvent",event,engineType,name])}}}function fv_player_track_name(root,video){var name=root.attr("title");if(!name&&typeof video.fv_title!="undefined")name=video.fv_title;if(!name&&typeof video.title!="undefined")name=video.title;if(!name&&typeof video.src!="undefined"){name=video.src.split("/").slice(-1)[0].replace(/\.(\w{3,4})(\?.*)?$/i,"");if(video.type.match(/mpegurl/))name=video.src.split("/").slice(-2)[0].replace(/\.(\w{3,4})(\?.*)?$/i,"")+"/"+name}return name}flowplayer(function(api,root){root=jQuery(root);var player=root.find(".fp-player"),had_no_volume=root.hasClass("no-volume"),had_fp_mute=root.hasClass("fp-mute"),had_fp_full=root.hasClass("fp-full"),buttons_count=0;function check_size(){var width=player.width()||root.width(),video_index=api.video.index?api.video.index:0;if(width>900){jQuery(".fp-subtitle",root).addClass("is-wide")}else{jQuery(".fp-subtitle",root).removeClass("is-wide")}root.toggleClass("is-tiny",width<400);root.toggleClass("is-small",width<600&&width>=400);var too_narrow=width<480+buttons_count*35;if(typeof api.fv_timeline_chapters_data!="undefined"&&typeof api.fv_timeline_chapters_data[video_index]!="undefined"){too_narrow=true}if(!had_fp_full){root.toggleClass("fp-full",root.hasClass("has-abloop")||too_narrow)}var size="";if(width<400)size="is-tiny";else if(width<600&&width>=400)size="is-small";root.trigger("fv-player-size",[size]);var el=player;if(root.parent().hasClass("fp-playlist-vertical-wrapper")||root.parent().hasClass("fp-playlist-text-wrapper"))el=root.parent();if(el.width()<=560){el.addClass("is-fv-narrow")}else{el.removeClass("is-fv-narrow")}if(width<=320){root.addClass("no-volume fp-mute")}else{if(!had_no_volume)root.removeClass("no-volume");if(!had_fp_mute)root.removeClass("fp-mute")}}check_size();jQuery(window).on("resize",check_size);api.on("ready fullscreen fullscreen-exit sticky sticky-exit",function(e){setTimeout(function(){buttons_count=root.find(".fp-controls > strong:visible").length+root.find(".fp-controls > .fp-icon:visible").length;check_size()},0)});api.on("unload pause finish error",function(){if(typeof checker!=="undefined")clearInterval(checker)})});jQuery(window).on("resize tabsactivate",function(){jQuery(".fp-playlist-external").each(function(){var playlist=jQuery(this);if(playlist.parent().width()>=900)playlist.addClass("is-wide");else playlist.removeClass("is-wide")})}).trigger("resize");flowplayer(function(api,root){api.bind("ready",function(){if(/Chrome/.test(navigator.userAgent)&&parseFloat(/Chrome\/(\d\d)/.exec(navigator.userAgent)[1],10)>54){if(api.video.subtitles){jQuery(root).addClass("chrome55fix-subtitles")}else{jQuery(root).addClass("chrome55fix")}}});root=jQuery(root);var image_src=root.css("background-image");if(image_src){image_src=image_src.replace(/url\((['"])?(.*?)\1\)/gi,"$2").split(",");if(!image_src||!image_src[0].match(/^(https?:)?\/\//))return;var image=new Image;image.src=image_src[0];var image_ratio=image.height/image.width;var player_ratio=root.height()/root.width();var ratio_diff=Math.abs(player_ratio-image_ratio);if(ratio_diff<.05){root.css("background-size","cover")}}});(function($){$(window).on("resize",function(){var iframe=$("iframe[id][src][height][width]");iframe.each(function(){if($(this).attr("id").match(/(fv_vimeo_)|(fv_ytplayer_)/)&&$(this).width()<=$(this).attr("width"))$(this).height($(this).width()*$(this).attr("height")/$(this).attr("width"))});var wistia=jQuery(".wistia_embed");wistia.each(function(){$(this).height($(this).width()*$(this).data("ratio"))})}).trigger("resize")})(jQuery);jQuery(document).on("tabsactivate",".fv_flowplayer_tabs_content",function(event,ui){var oldPlayer=jQuery(".flowplayer.is-playing").data("flowplayer");if(typeof oldPlayer!="undefined"){oldPlayer.pause()}var objPlayer=jQuery(".flowplayer",ui.newPanel);var api=objPlayer.data("flowplayer");api.load()});flowplayer(function(api,root){root=jQuery(root);var bean=flowplayer.bean;if(root.hasClass("is-audio")){bean.off(root[0],"mouseenter");bean.off(root[0],"mouseleave");root.removeClass("is-mouseout");root.addClass("fixed-controls").addClass("is-mouseover");api.on("error",function(e,api,error){jQuery(".fp-message",root).html(jQuery(".fp-message",root).html().replace(/video/,"audio"))});root.on("click",function(e){if(!api.ready){e.preventDefault();e.stopPropagation();api.load()}})}});flowplayer(function(api,root){if(!api.conf.fv_chromecast)return;if(!window["__onGCastApiAvailable"]){jQuery.getScript({url:"https://www.gstatic.com/cv/js/sender/v1/cast_sender.js",cache:true});window["__onGCastApiAvailable"]=function(loaded){if(!loaded)return;initialize()}}var conf=api.conf.chromecast||{},session,timer,trigger,bean=flowplayer.bean,common=flowplayer.common,waiting_for_seek=false;function initialize(){var applicationId,sessionRequest,apiConfig;applicationId=conf.applicationId||chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID;sessionRequest=new chrome.cast.SessionRequest(applicationId);apiConfig=new chrome.cast.ApiConfig(sessionRequest,sessionListener,receiverListener);chrome.cast.initialize(apiConfig,onInitSuccess,onError)}function sessionListener(){}function receiverListener(ev){console.log("FV Player: Chromecast listener",ev);if(ev!==chrome.cast.ReceiverAvailability.AVAILABLE)return;flowplayer.conf.chromecast_available=true}function onInitSuccess(){}function onError(){console.log("chromecast onError")}function createUIElements(){var btnContainer=common.find(".fp-header",root)[0];if(!btnContainer)return;common.find(".fp-chromecast",btnContainer).forEach(common.removeNode);common.find(".fp-chromecast-engine",root).forEach(common.removeNode);trigger=common.createElement("a",{class:"fp-chromecast fp-icon",title:"Play on Cast device"});btnContainer.appendChild(trigger);var chromeCastEngine=common.createElement("div",{class:"fp-chromecast-engine"}),chromeCastStatus=common.createElement("p",{class:"fp-chromecast-engine-status"}),chromeCastIcon=common.createElement("p",{class:"fp-chromecast-engine-icon"});chromeCastEngine.appendChild(chromeCastIcon);chromeCastEngine.appendChild(chromeCastStatus);var engine=common.find(".fp-engine",root)[0];if(!engine)common.prepend(common.find(".fp-player",root)[0]||root,chromeCastEngine);else engine.parentNode.insertBefore(chromeCastEngine,engine)}function destroy(){clearInterval(timer);timer=null;api.release();common.toggleClass(root,"is-chromecast",false);common.toggleClass(trigger,"fp-active",false)}function get_media(){var media=false;var sources=api.video.sources_fvqs||api.video.sources;for(var i in sources){var type=sources[i].type;if(type=="video/mp4"||type=="video/fv-mp4"||type=="application/dash+xml"){media=sources[i];break}}if(!media){for(var i in sources){if(sources[i].type=="application/x-mpegurl"){media=sources[i];break}}}if(api.video.fvhkey&&!api.conf.hls_cast)return false;if(media){var top_quality=false,mp4_qualities=["fullhd","hd","md","sd"];for(var quality in mp4_qualities){var re=new RegExp("-"+mp4_qualities[quality]);for(var i in api.video.sources_fvqs){var source=api.video.sources_fvqs[i];if(source.src.match(re)&&source.type=="video/mp4"){top_quality=source;break}}if(top_quality){media=top_quality;break}}}return media}function load_media(){var media=get_media();if(!media){return false}var cast_subtitles=[];if(api.video.subtitles){api.video.subtitles.forEach(function(v,k){if(v.src.match(/\.srt/)){console.log("FV Player: Chromecast doesn't support SRT subtitles")}var subtitles=new chrome.cast.media.Track(k,chrome.cast.media.TrackType.TEXT);subtitles.trackContentId=v.src;subtitles.trackContentType="text/vtt";subtitles.subtype=chrome.cast.media.TextTrackType.SUBTITLES;subtitles.name=v.label;subtitles.language=v.srclang+"-"+k,subtitles.customData=null;cast_subtitles.push(subtitles)})}var mediaInfo=new chrome.cast.media.MediaInfo(media.src,media.type);mediaInfo.tracks=cast_subtitles;var request=new chrome.cast.media.LoadRequest(mediaInfo);if(!api.live){request.currentTime=api.video.time}clearInterval(timer);timer=false;session.loadMedia(request,onMediaDiscovered,function onMediaError(e){console.log("onMediaError",e)})}function onMediaDiscovered(chromecast){switch_tracks(chromecast);chromecast.addUpdateListener(function(alive){if(!session)return;timer=timer||setInterval(function(){api.trigger("progress",[api,chromecast.getEstimatedTime()]);chromecast.activeTrackIds.forEach(function(track_id){jQuery.each(chromecast.media.tracks,function(k,v){if(v.trackId==track_id&&v.type=="AUDIO"){var found=hilight_audio_track("data-audio",v.language);if(!found){hilight_audio_track("data-lang",v.language)}return false}})})},500);if(alive){common.toggleClass(root,"is-chromecast",true);common.toggleClass(trigger,"fp-active",true);api.hijack({pause:function(){console.log("hijacked pause!");chromecast.pause()},resume:function(){if(api.finished){clearInterval(timer);timer=null;api.release();load_media();return}chromecast.play()},seek:function(time){var req=new chrome.cast.media.SeekRequest;req.currentTime=time;chromecast.seek(req)}})}var playerState=chromecast.playerState;if(api.paused&&playerState===chrome.cast.media.PlayerState.PLAYING)api.trigger("resume",[api]);if(api.playing&&playerState===chrome.cast.media.PlayerState.PAUSED)api.trigger("pause",[api]);if(api.seeking&&playerState===chrome.cast.media.PlayerState.BUFFERING){waiting_for_seek=true}if(api.seeking&&playerState===chrome.cast.media.PlayerState.PLAYING&&waiting_for_seek){waiting_for_seek=false;api.trigger("seek",[api])}if(playerState==chrome.cast.media.PlayerState.IDLE&&chromecast.idleReason==chrome.cast.media.IdleReason.FINISHED){api.trigger("finish",[api])}common.toggleClass(root,"is-loading",playerState===chrome.cast.media.PlayerState.BUFFERING)})}api.bind("ready",function(e,api,video){if(session){if(get_media()){api.one("progress",function(e,api){api.release();api.pause();api.mute(false,true);load_media()});api.mute(true,true)}else{session.stop();session=null;destroy();jQuery(trigger).hide()}return}if(!flowplayer.conf.chromecast_available)return;if(get_media()){createUIElements();jQuery(trigger).show()}else{FV_Flowplayer_Pro.log("FV Player: Can't find media source suitable for Chromecast!");jQuery(trigger).hide()}});bean.on(root,"click",".fp-chromecast",function(ev){ev.preventDefault();if(session){api.trigger("pause",[api]);if(session.media[0].media){var seek=session.media[0].getEstimatedTime();setTimeout(function(){api.seek(seek)},0)}session.stop();session=null;destroy();return}if(api.playing)api.pause();chrome.cast.requestSession(function(s){jQuery(root).addClass("is-loading");session=s;var receiverName=session.receiver.friendlyName;common.html(common.find(".fp-chromecast-engine-status",root)[0],"Playing on device "+receiverName);load_media()},function(err){console.error("requestSession error",err)})});bean.on(root,"click",".fv-fp-hls-menu [data-audio], .fp-subtitle-menu [data-subtitle-index]",function(){if(session&&session.media[0].media){switch_tracks(session.media[0]);return false}});jQuery(window).on("unload",function(){if(session){session.stop()}});function hilight_audio_track(attr,chromecast_language){var audio_tracks_menu=jQuery(root).find(".fv-fp-hls-menu a"),found=false;audio_tracks_menu.each(function(k,el){if(jQuery(el).attr(attr)===chromecast_language){jQuery(el).addClass("fp-selected");found=true}else{jQuery(el).removeClass("fp-selected")}});return found}function switch_tracks(chromecast){console.log(chromecast.media.tracks);var audio=jQuery(root).find(".fv-fp-hls-menu [data-audio].fp-selected").data("audio"),audio_lang=jQuery(root).find(".fv-fp-hls-menu [data-audio].fp-selected").data("lang"),subtitle_index=jQuery(root).find(".fp-subtitle-menu [data-subtitle-index].fp-selected").data("subtitle-index"),subtitles=subtitle_index>-1?api.video.subtitles[subtitle_index].srclang:false;var audio_found=false,subtitles_found=false,tracks_selected=[];jQuery.each(chromecast.media.tracks,function(k,v){if(v.language==audio&&v.type=="AUDIO"){audio_found=v}if(v.language==subtitles+"-"+subtitle_index&&v.type=="TEXT"){subtitles_found=v}});if(!audio_found){jQuery.each(chromecast.media.tracks,function(k,v){if(v.language==audio_lang&&v.type=="AUDIO"){audio_found=v;return false}})}var debug_log="";if(audio_found){tracks_selected.push(audio_found.trackId);debug_log+=audio_found.language+" audio"}if(subtitles_found){tracks_selected.push(subtitles_found.trackId);if(debug_log)debug_log+=" ";debug_log+=subtitles_found.language+" subtitles"}if(tracks_selected){var request=new chrome.cast.media.EditTracksInfoRequest(tracks_selected);chromecast.editTracksInfo(request,function(){console.log("FV Player: Chromecast "+debug_log+" loaded")},function(){console.log("FV Player: Chromecast "+debug_log+" failed")})}}});jQuery(document).on("mfpClose",function(){if(typeof jQuery(".flowplayer").data("flowplayer")!="undefined")jQuery(".flowplayer").data("flowplayer").unload()});jQuery(document).on("click",".vc_tta-tab a",function(){var api=jQuery(".flowplayer.is-playing").data("flowplayer");if(api)api.pause()});flowplayer(function(api,root){root=jQuery(root);api.bind("ready",function(){setTimeout(function(){var video=jQuery("video",root);if(video.length>0){video.prop("autoplay",false)}},100);root.find("video.fp-engine").addClass("intrinsic-ignore")})});jQuery(".flowplayer").on("ready",function(e,api){if(/BB10/.test(navigator.userAgent)){api.fullscreen()}});var fv_flowplayer_safety_resize_arr=Array();function fv_flowplayer_safety_resize(){var fv_flowplayer_safety_resize_init=false;jQuery(".flowplayer").each(function(){if(!jQuery(this).is(":visible")||jQuery(this).hasClass("lightboxed")||jQuery(this).hasClass("lightbox-starter")||jQuery(this).hasClass("is-audio"))return;if(jQuery(this).width()<30||jQuery(this).height()<20){fv_flowplayer_safety_resize_init=true;var el=jQuery(this);while(jQuery(el).width()<30||jQuery(el).width()==jQuery(this).width()){if(jQuery(el).parent().length==0)break;el=jQuery(el).parent()}jQuery(this).width(jQuery(el).width());jQuery(this).height(parseInt(jQuery(this).width()*jQuery(this).attr("data-ratio")));fv_flowplayer_safety_resize_arr[jQuery(this).attr("id")]=el}});if(fv_flowplayer_safety_resize_init){jQuery(window).resize(function(){jQuery(".flowplayer").each(function(){if(jQuery(this).hasClass("lightboxed")||jQuery(this).hasClass("lightbox-starter"))return;if(fv_flowplayer_safety_resize_arr[jQuery(this).attr("id")]){jQuery(this).width(fv_flowplayer_safety_resize_arr[jQuery(this).attr("id")].width());jQuery(this).height(parseInt(jQuery(this).width()*jQuery(this).attr("data-ratio")))}})})}}if(typeof flowplayer.conf.safety_resize!="undefined"&&flowplayer.conf.safety_resize){jQuery(document).ready(function(){setTimeout(function(){fv_flowplayer_safety_resize()},10)})}var isIE11=!!navigator.userAgent.match(/Trident.*rv[ :]*11\./);if(isIE11){jQuery(document).ready(function(){jQuery(".fp-waiting").hide()});flowplayer(function(api,root){api.bind("load",function(e){jQuery(e.currentTarget).find(".fp-waiting").show()}).bind("beforeseek",function(e){jQuery(e.currentTarget).find(".fp-waiting").show()}).bind("progress",function(e){jQuery(e.currentTarget).find(".fp-waiting").hide()}).bind("seek",function(e){jQuery(e.currentTarget).find(".fp-waiting").hide()}).bind("fullscreen",function(e){jQuery("#wpadminbar").hide()}).bind("fullscreen-exit",function(e){jQuery("#wpadminbar").show()})})}if(flowplayer.support.browser&&flowplayer.support.browser.msie&&parseInt(flowplayer.support.browser.version,10)<9){jQuery(".flowplayer").each(function(){jQuery(this).css("width",jQuery(this).css("max-width"));jQuery(this).css("height",jQuery(this).css("max-height"))})}if(location.href.match(/elementor-preview=/)){console.log("FV Player: Elementor editor is active");setInterval(fv_player_load,1e3)}else if(location.href.match(/brizy-edit-iframe/)){console.log("FV Player: Brizy editor is active");setInterval(fv_player_load,1e3)}if(window.DELEGATE_NAMES){flowplayer(function(api,root){fv_player_notice(root,fv_flowplayer_translations.chrome_extension_disable_html5_autoplay)})}flowplayer(function(api,root){flowplayer.bean.off(root,"contextmenu")});if(location.href.match(/elementor-preview=/)){console.log("FV Player: Elementor editor is active");setInterval(fv_player_load,1e3)}flowplayer(function(player,root){root=jQuery(root);if(typeof root.data("fv-embed")=="undefined"||!root.data("fv-embed")||root.data("fv-embed")=="false")return;player.embedCode=function(){var video=player.video;var width=root.width();var height=root.height();height+=2;if(root.hasClass("has-chapters")||root.hasClass("has-transcript")){height+=300}if(jQuery(".fp-playlist-external[rel="+root.attr("id")+"]").length>0){height+=150+20}var link=root.data("fv-embed")+"#"+fv_player_get_video_link_hash(player);return'<iframe src="'+link+'" allowfullscreen width="'+width+'" height="'+height+'" frameborder="0" style="max-width:100%"></iframe>'}});jQuery(document).on("click",".flowplayer .embed-code-toggle",function(){var button=jQuery(this);var player=button.parents(".flowplayer");var api=player.data("flowplayer");if(typeof api.embedCode=="function"){player.find(".embed-code textarea").val(api.embedCode())}fv_player_clipboard(player.find(".embed-code textarea").val(),function(){fv_player_notice(player,fv_flowplayer_translations.embed_copied,2e3)},function(){button.parents(".fvp-share-bar").find(".embed-code").toggle();button.parents(".fvp-share-bar").toggleClass("visible")});return false});flowplayer(function(player,root){if(jQuery(root).data("fullscreen")==false){return}player.one("ready",function(e,api,video){if(jQuery(root).find(".fp-fullscreen").length==0){jQuery(root).find(".fp-header").append('<a class="fp-fullscreen fp-icon"></a>')}});var FS_ENTER="fullscreen",FS_EXIT="fullscreen-exit",FS_SUPPORT=flowplayer.support.fullscreen,win=window,scrollX,scrollY,bean=flowplayer.bean;player.fullscreen=function(flag){if(player.disabled)return;var video=common.find("video.fp-engine",root)[0];if(flowplayer.conf.native_fullscreen&&video&&flowplayer.support.iOS){player.trigger(FS_ENTER,[player]);bean.on(document,"webkitfullscreenchange.nativefullscreen",function(){if(document.webkitFullscreenElement!==video)return;bean.off(document,".nativefullscreen");bean.on(document,"webkitfullscreenchange.nativefullscreen",function(){if(document.webkitFullscreenElement)return;bean.off(document,".nativefullscreen");player.trigger(FS_EXIT,[player])})});video.webkitEnterFullScreen();bean.one(video,"webkitendfullscreen",function(){bean.off(document,"fullscreenchange.nativefullscreen");player.trigger(FS_EXIT,[player]);common.prop(video,"controls",true);common.prop(video,"controls",false)});return}var wrapper=jQuery(root).find(".fp-player")[0];if(flag===undefined)flag=!player.isFullscreen;if(flag){scrollY=win.scrollY;scrollX=win.scrollX}if(FS_SUPPORT){if(flag){["requestFullScreen","webkitRequestFullScreen","mozRequestFullScreen","msRequestFullscreen"].forEach(function(fName){if(typeof wrapper[fName]==="function"){wrapper[fName]({navigationUI:"hide"});if(fName==="webkitRequestFullScreen"&&!document.webkitFullscreenElement){wrapper[fName]()}}})}else{["exitFullscreen","webkitCancelFullScreen","mozCancelFullScreen","msExitFullscreen"].forEach(function(fName){if(typeof document[fName]==="function"){document[fName]()}})}}else{player.trigger(flag?FS_ENTER:FS_EXIT,[player])}return player};var lastClick,common=flowplayer.common;player.on("mousedown.fs",function(){if(+new Date-lastClick<150&&player.ready)player.fullscreen();lastClick=+new Date});player.on(FS_ENTER,function(){common.addClass(root,"is-fullscreen");common.toggleClass(root,"fp-minimal-fullscreen",common.hasClass(root,"fp-minimal"));common.removeClass(root,"fp-minimal");if(!FS_SUPPORT)common.css(root,"position","fixed");player.isFullscreen=true}).on(FS_EXIT,function(){var oldOpacity;common.toggleClass(root,"fp-minimal",common.hasClass(root,"fp-minimal-fullscreen"));common.removeClass(root,"fp-minimal-fullscreen");if(!FS_SUPPORT&&player.engine==="html5"){oldOpacity=root.css("opacity")||"";common.css(root,"opacity",0)}if(!FS_SUPPORT)common.css(root,"position","");common.removeClass(root,"is-fullscreen");if(!FS_SUPPORT&&player.engine==="html5")setTimeout(function(){root.css("opacity",oldOpacity)});player.isFullscreen=false;if(player.engine.engineName!="fvyoutube"){win.scrollTo(scrollX,scrollY)}}).on("unload",function(){if(player.isFullscreen)player.fullscreen()});player.on("shutdown",function(){FULL_PLAYER=null;common.removeNode(wrapper)})});flowplayer(function(api,root){root=jQuery(root);if(flowplayer.conf.wpadmin||jQuery(root).hasClass("is-audio"))return;var playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]"),playlist_with_fullscreen=playlist.hasClass("fp-playlist-season")||playlist.hasClass("fp-playlist-polaroid");fsforce=root.data("fsforce")==true;if(root.data("fullscreen")==false){return}if(flowplayer.conf.mobile_force_fullscreen&&flowplayer.support.fvmobile||!flowplayer.support.fullscreen&&fsforce||playlist_with_fullscreen){if(!flowplayer.support.fullscreen){api.bind("ready",function(){if(api.video.vr)return;api.fullscreen(true)})}root.on("click",function(){if(!api.ready||api.paused)api.fullscreen(true)});jQuery("[rel="+root.attr("id")+"] a").on("click",function(e){if(!api.isFullscreen){api.fullscreen();api.resume()}});api.on("resume",function(){if(api.video.vr)return;if(!api.isFullscreen)api.fullscreen()});api.on("finish",function(){if(api.conf.playlist.length==0||api.conf.playlist.length-1==api.video.index)api.fullscreen(false)}).on("fullscreen",function(a,api){root.addClass("forced-fullscreen")}).on("fullscreen-exit",function(a,api){api.pause();root.removeClass("forced-fullscreen")})}else if(fsforce){var position,unload=root.find(".fp-unload"),is_closing=false;api.isFakeFullscreen=false;unload.show();root.on("click",function(e){if(!api.ready&&e.target!=unload[0])api.fakeFullscreen(true)});unload.on("click",function(e){if(api.ready){api.fullscreen(false)}else if(api.loading){is_closing=true;api.one("resume",function(e){is_closing=false;api.pause()})}api.fakeFullscreen(false);return false});jQuery("[rel="+root.attr("id")+"] a").on("click",function(e){if(!api.isFakeFullscreen){api.fakeFullscreen();api.resume()}});api.on("resume",function(){if(!is_closing&&!api.isFakeFullscreen)api.fakeFullscreen()}).on("finish",function(){if(api.conf.playlist.length==0||api.conf.playlist.length-1==api.video.index)api.fakeFullscreen(false)}).on("fullscreen",function(a,api){root.removeClass("fake-fullscreen")}).on("fullscreen-exit",function(a,api){if(api.isFakeFullscreen)api.fakeFullscreen(true,true)}).on("unload",function(a,api){});api.fakeFullscreen=function(flag,force){if(!force&&(api.isFakeFullscreen==flag||api.disabled))return;if(position===undefined)position=root.css("position");if(flag===undefined)flag=!api.isFakeFullscreen;api.isFakeFullscreen=flag;api.trigger(flag?"fakefullscreen":"fakefullscreen-exit",[api]);root.toggleClass("is-fullscreen fake-fullscreen forced-fullscreen",flag);if(flag){root.css("position","fixed")}else{root.css("position",position)}}}if(flowplayer.support.android&&flowplayer.conf.mobile_landscape_fullscreen&&window.screen&&window.screen.orientation){api.on("fullscreen",function(a,api){if(typeof api.video.width!="undefined"&&typeof api.video.height!="undefined"&&(api.video.width!=0&&api.video.height!=0&&api.video.width<api.video.height)){screen.orientation.lock("portrait-primary")}else{screen.orientation.lock("landscape-primary")}})}});flowplayer(function(api,root){root=jQuery(root);var hlsjs,player,audioUXGroup,audioGroups,hls_audio_button,hls_audio_menu,mse=window.MediaSource||window.WebKitMediaSource;flowplayer.engine("hlsjs-lite").plugin(function(params){hlsjs=params.hls});api.bind("ready",function(e,api){removeAudioMenu();if(hlsjs&&api.video.type=="application/x-mpegurl"){parseAudioTracksHlsJs(hlsjs);createAudioMenu()}});api.one("progress",function(){if(api.engine.engineName=="html5"&&api.video.type=="application/x-mpegurl"){parseAudioTracksSafari();createAudioMenu()}});function getVideoTagAudioTracks(){var video=root.find("video");if(video.length&&video[0].audioTracks){return video[0].audioTracks}return[]}function hilightAudioTrack(audioTrack){if(!audioTrack.name)audioTrack.name=audioTrack.label;root.find(".fv-fp-hls-menu a").each(function(k,el){jQuery(el).toggleClass("fp-selected",jQuery(el).attr("data-audio")===audioTrack.name)})}function createAudioMenu(){if(!audioUXGroup||audioUXGroup.length<2){return}hls_audio_button=jQuery('<strong class="fv-fp-hls">AUD</strong>');hls_audio_menu=jQuery('<div class="fp-menu fv-fp-hls-menu"></div>').insertAfter(root.find(".fp-controls"));hls_audio_menu.append("<strong>Audio</strong>");audioUXGroup.forEach(function(audioTrack){hls_audio_menu.append('<a data-audio="'+audioTrack.name+'" data-lang="'+audioTrack.lang+'">'+audioTrack.name+"</a>")});hls_audio_button.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();if(hls_audio_menu.hasClass("fp-active")){api.hideMenu(hls_audio_menu[0])}else{root.click();api.showMenu(hls_audio_menu[0])}});jQuery("a",hls_audio_menu).on("click",function(e){var adata=e.target.getAttribute("data-audio");if(hlsjs){var gid=hlsjs.audioTracks[hlsjs.audioTrack].groupId;var atrack=hlsjs.audioTracks.filter(function(at){return at.groupId===gid&&(at.name===adata||at.lang===adata)})[0];hlsjs.audioTrack=atrack.id;hilightAudioTrack(atrack)}else{var tracks=getVideoTagAudioTracks();for(var i in tracks){if(!tracks.hasOwnProperty(i))continue;if(tracks[i].label==adata){tracks[i].enabled=true;hilightAudioTrack(tracks[i])}}}});if(hlsjs){hilightAudioTrack(hlsjs.audioTracks[hlsjs.audioTrack])}else{var tracks=getVideoTagAudioTracks();for(var i in tracks){if(!tracks.hasOwnProperty(i))continue;if(tracks[i].enabled){hilightAudioTrack(tracks[i])}}}}function removeAudioMenu(){jQuery(hls_audio_menu).remove();jQuery(hls_audio_button).remove()}function parseAudioTracksHlsJs(data){audioGroups=[];audioUXGroup=[];data.levels.forEach(function(level){var agroup=level.attrs.AUDIO;if(agroup&&audioGroups.indexOf(agroup)<0){audioGroups.push(agroup)}if(audioGroups.length){audioUXGroup=data.audioTracks.filter(function(audioTrack){return audioTrack.groupId===audioGroups[0]})}})}function parseAudioTracksSafari(){audioGroups=[];audioUXGroup=[];var tracks=getVideoTagAudioTracks();for(var i in tracks){if(!tracks.hasOwnProperty(i))continue;audioUXGroup.push({id:tracks[i].id,name:tracks[i].label})}}});flowplayer(function(api,root){var store_engine_pos=-1;var store_engine=false;api.on("error",function(e,api,err){if(err.code!=4||api.engine.engineName!="hlsjs")return;console.log("FV Player: HLSJS failed to play the video, switching to Flash HLS");api.error=api.loading=false;jQuery(root).removeClass("is-error");jQuery(flowplayer.engines).each(function(k,v){if(flowplayer.engines[k].engineName=="hlsjs"){store_engine_pos=k;store_engine=flowplayer.engines[k];delete flowplayer.engines[k]}});var index=typeof api.video.index!="undefined"?api.video.index:0;var video=index>0?api.conf.playlist[index].sources:api.conf.clip.sources;video.index=index;api.load({sources:video});api.bind("unload error",function(){flowplayer.engines[store_engine_pos]=store_engine})})});flowplayer(function(api,root){var initialDelay=30,continueDelay=10,useDelay=initialDelay,retryLabel=fv_flowplayer_translations.live_stream_retry,timer;api.clearLiveStreamCountdown=function(){if(timer){clearInterval(timer);api.error=api.loading=false;jQuery(root).removeClass("is-error");jQuery(root).find(".fp-message.fp-shown").remove();api.unload()}};api.conf.flashls={manifestloadmaxretry:2};api.on("ready",function(){useDelay=initialDelay;retryLabel=fv_flowplayer_translations.live_stream_retry}).on("progress",function(){useDelay=continueDelay;retryLabel=fv_flowplayer_translations.live_stream_continue;clearInterval(timer)});api.on("error",function(e,api,err){setTimeout(function(){if(!api.conf.clip.live&&!api.conf.live&&!(err.video&&err.video.src.match(/\/\/vimeo.com\/event\//)))return;var delay=useDelay;if(api.conf.clip.streaming_time){delay=api.conf.clip.streaming_time-Math.floor(Date.now()/1e3)}else if(api.conf.clip.live_starts_in){delay=api.conf.clip.live_starts_in}var startLabel=fv_flowplayer_translations.live_stream_starting.replace(/%d/,secondsToDhms(delay));retryLabel=retryLabel.replace(/%d/,secondsToDhms(delay));var message=api.conf.clip.live_starts_in?startLabel:retryLabel;clearInterval(timer);if(err.code===1||err.code===2||err.code===4){root.className+=" is-offline";if(flowplayer.support.flashVideo){api.one("flashdisabled",function(){root.querySelector(".fp-flash-disabled").style.display="none"})}var messageElement=root.querySelector(".fp-ui .fp-message");messageElement.innerHTML=message;var reload_delay=delay>300?300:delay;timer=setInterval(function(){reload_delay-=1;delay-=1;if(reload_delay>0&&messageElement){messageElement.querySelector("span").innerHTML=secondsToDhms(delay)}else{clearInterval(timer);if(!api.error){return}api.error=api.loading=false;messageElement=root.querySelector(".fp-ui .fp-message");if(messageElement){root.querySelector(".fp-ui").removeChild(messageElement)}root.className=root.className.replace(/\bis-(error|offline)\b/g,"");api.load()}},1e3)}},1)});function secondsToDhms(seconds){seconds=Number(seconds);var d=Math.floor(seconds/(3600*24));var h=Math.floor(seconds%(3600*24)/3600);var m=Math.floor(seconds%3600/60);var s=Math.floor(seconds%60);var t=fv_flowplayer_translations;var output=d>0?d==1?t.duration_1_day.replace(/%s/,d):t.duration_n_days.replace(/%s/,d):"";if(output&&h>0)output+=", ";output+=h>0?h==1?t.duration_1_hour.replace(/%s/,h):t.duration_n_hours.replace(/%s/,h):"";if(output&&m>0)output+=", ";output+=m>0?m==1?t.duration_1_minute.replace(/%s/,m):t.duration_n_minutes.replace(/%s/,m):"";if(output&&s>0)output+=t.and;output+=s>0?s==1?t.duration_1_second.replace(/%s/,s):t.duration_n_seconds.replace(/%s/,s):"";return output}});flowplayer(function(api,root){root=jQuery(root);var hlsjs;flowplayer.engine("hlsjs-lite").plugin(function(params){hlsjs=params.hls});api.on("ready",function(e,api){if(hlsjs&&api.conf.playlist.length&&api.engine.engineName!="hlsjs-lite"){hlsjs.destroy()}})});flowplayer(function(api,root){if(!flowplayer.support.browser.safari&&!flowplayer.support.iOS)return;root=jQuery(root);var video_tag=false,did_start_playing=false,are_waiting_already=0;api.on("ready",function(e,api,video){are_waiting_already=0;did_start_playing=false;if(api.engine.engineName=="html5"&&video.src.match(/\?/)){video_tag=root.find("video");if(!video_tag.data("fv-ios-recovery")){video_tag.on("waiting",wait_for_stalled);video_tag.data("fv-ios-recovery",true)}api.one("progress",function(){did_start_playing=true})}});api.bind("beforeseek",wait_for_stalled);function debug(e){console.log("FV PLayer: iOS video element: "+e.type)}function wait_for_stalled(){if(!did_start_playing){return}if(video_tag&&api.engine.engineName=="html5"){are_waiting_already++;if(are_waiting_already>1){if(are_waiting_already>3){console.log("FV PLayer: iOS video element needs a push, triggering 'stalled'");video_tag.trigger("stalled")}return}console.log("FV PLayer: iOS video element will trigger error after 'stalled' arrives");video_tag.one("stalled",function(){var time=api.video.time;if(api.video.type.match(/video\//)){console.log("FV PLayer: Running check of video file...");var test_video=document.createElement("video");test_video.src=api.video.src;test_video.onloadedmetadata=function(){are_waiting_already=0;console.log("FV Player: Video link works")};test_video.onerror=function(){console.log("FV Player: Video link issue!");if(are_waiting_already>0){api.trigger("error",[api,{code:4,video:api.video}])}};return}setTimeout(function(){console.log(api.video.time,time);if(api.video.time!=time){console.log("FV PLayer: iOS video element continues playing, no need for error");return}if(api.paused){console.log("FV PLayer: iOS video element paused, no need for error");return}api.trigger("error",[api,{code:4,video:api.video}])},5e3)})}}});!function(e){var n=!1;if("function"==typeof define&&define.amd&&(define(e),n=!0),"object"==typeof exports&&(module.exports=e(),n=!0),!n){var o=window.Cookies,t=window.Cookies=e();t.noConflict=function(){return window.Cookies=o,t}}}(function(){function e(){for(var e=0,n={};e<arguments.length;e++){var o=arguments[e];for(var t in o)n[t]=o[t]}return n}function n(o){function t(n,r,i){var c;if("undefined"!=typeof document){if(arguments.length>1){if("number"==typeof(i=e({path:"/"},t.defaults,i)).expires){var a=new Date;a.setMilliseconds(a.getMilliseconds()+864e5*i.expires),i.expires=a}i.expires=i.expires?i.expires.toUTCString():"";try{c=JSON.stringify(r),/^[\{\[]/.test(c)&&(r=c)}catch(e){}r=o.write?o.write(r,n):encodeURIComponent(r+"").replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),n=(n=(n=encodeURIComponent(n+"")).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape);var s="";for(var f in i)i[f]&&(s+="; "+f,!0!==i[f]&&(s+="="+i[f]));return document.cookie=n+"="+r+s}n||(c={});for(var p=document.cookie?document.cookie.split("; "):[],d=/(%[0-9A-Z]{2})+/g,u=0;u<p.length;u++){var l=p[u].split("="),C=l.slice(1).join("=");this.json||'"'!==C.charAt(0)||(C=C.slice(1,-1));try{var m=l[0].replace(d,decodeURIComponent);if(C=o.read?o.read(C,m):o(C,m)||C.replace(d,decodeURIComponent),this.json)try{C=JSON.parse(C)}catch(e){}if(n===m){c=C;break}n||(c[m]=C)}catch(e){}}return c}}return t.set=t,t.get=function(e){return t.call(t,e)},t.getJSON=function(){return t.apply({json:!0},[].slice.call(arguments))},t.defaults={},t.remove=function(n,o){t(n,"",e(o,{expires:-1}))},t.withConverter=n,t}return n(function(){})});flowplayer.bean.off(document,"keydown.fp");flowplayer(function(api,root){var bean=flowplayer.bean;if(!api.conf.keyboard)return;bean.on(root,"mouseenter mouseleave",function(e){fv_player_focused=!api.disabled&&e.type=="mouseover"?api:0;if(fv_player_focused)fv_player_focusedRoot=root});api.bind("ready",function(e,api,video){if(video.subtitles&&video.subtitles.length>0){var help=jQuery(root).find(".fp-help").html();help+='<div class="fp-help-section fp-help-subtitles"><p><em>c</em>cycle through subtitles</p></div>';jQuery(root).find(".fp-help").html(help)}else{jQuery(root).find(".fp-help-subtitles").remove()}})});flowplayer.bean.on(document,"keydown.fp",function(e){if(typeof fv_player_focused=="undefined")return;var api=fv_player_focused,focusedRoot=api?fv_player_focusedRoot:false,common=flowplayer.common;var el=api&&!api.disabled?api:0,metaKeyPressed=e.ctrlKey||e.metaKey||e.altKey,key=e.which,conf=el&&el.conf;if(common.hasClass(focusedRoot,"no-controlbar")||common.hasClass(focusedRoot,"is-cva"))return;if(!el||!conf.keyboard||el.disabled)return;if([63,187,191].indexOf(key)!=-1){common.toggleClass(focusedRoot,"is-help");return false}if(key==27&&common.hasClass(focusedRoot,"is-help")){common.toggleClass(focusedRoot,"is-help");return false}if(!metaKeyPressed&&el.ready){e.preventDefault();if(e.shiftKey){if(key==39)el.speed(true);else if(key==37)el.speed(false);else if(key==78)el.next();else if(key==80)el.prev();return}if(key<58&&key>47)return el.seekTo(key-48);switch(key){case 38:case 75:el.volume(el.volumeLevel+.15);break;case 40:case 74:el.volume(el.volumeLevel-.15);break;case 39:case 76:el.seeking=true;el.seek(api.video.time+5);break;case 37:case 72:el.seeking=true;el.seek(api.video.time-5);break;case 190:el.seekTo();break;case 32:el.toggle();break;case 70:if(conf.fullscreen)el.fullscreen();break;case 77:el.mute();break;case 81:el.unload();break;case 67:if(!api.video.subtitles||api.video.subtitles.length==0)break;var current_subtitles=jQuery(focusedRoot).find(".fp-dropdown li.active[data-subtitle-index]").data("subtitle-index");if(typeof current_subtitles=="undefined")current_subtitles=-1;current_subtitles++;if(current_subtitles>api.video.subtitles.length-1){current_subtitles=-1}api.trigger("fv-subtitles-switched");if(current_subtitles>-1){el.loadSubtitles(current_subtitles);fv_player_notice(focusedRoot,fv_flowplayer_translations.subtitles_switched+" "+api.video.subtitles[current_subtitles].label,"fv-subtitles-switched")}else{el.disableSubtitles();fv_player_notice(focusedRoot,fv_flowplayer_translations.subtitles_disabled,"fv-subtitles-switched")}break}}});flowplayer(function(api,root){api.bind("load",function(e,api,data){var player=jQuery(e.currentTarget);if(player.data("live")){var live_check=setTimeout(function(){player.find(".fp-ui").append('<div class="fp-message">'+fv_flowplayer_translations.live_stream_failed+"</div>");player.addClass("is-error")},1e4);jQuery(e.currentTarget).data("live_check",live_check)}}).bind("ready",function(e,api,data){clearInterval(jQuery(e.currentTarget).data("live_check"))}).bind("error",function(e,api,data){var player=jQuery(e.currentTarget);if(player.data("live")){player.find(".fp-message").html(fv_flowplayer_translations.live_stream_failed_2)}})});(function($){flowplayer(function(api,root){if(jQuery(root).hasClass("is-cva"))return;$(document).on("submit","#"+jQuery(root).attr("id")+" .mailchimp-form",function(e){e.preventDefault();$(".mailchimp-response",root).remove();$("input[type=submit]",root).attr("disabled","disabled").addClass("fv-form-loading");var data={action:"fv_wp_flowplayer_email_signup"};$("[name]",this).each(function(){data[this.name]=$(this).val()});$.post(fv_player.ajaxurl,data,function(response){response=JSON.parse(response);$('<div class="mailchimp-response"></div>').insertAfter(".mailchimp-form",root);if(response.text.match(/already subscribed/)){response.status="ERROR"}if(response.status==="OK"){$(".mailchimp-form input[type=text],.mailchimp-form input[type=email]",root).val("");$(".mailchimp-response",root).removeClass("is-fv-error").html(response.text);setTimeout(function(){$(".wpfp_custom_popup",root).fadeOut()},2e3)}else{$(".mailchimp-response",root).addClass("is-fv-error").html(response.text)}$("input[type=submit]",root).removeAttr("disabled").removeClass("fv-form-loading")})})})})(jQuery);function fv_flowplayer_mobile_switch(id){var regex=new RegExp("[\\?&]fv_flowplayer_mobile=([^&#]*)");var results=regex.exec(location.search);if((results!=null&&results[1]=="yes"||(jQuery(window).width()<=480||jQuery(window).height()<=480))&&(results==null||results[1]!="no")){var fv_fp_mobile=false;jQuery("#wpfp_"+id+" video source").each(function(){if(jQuery(this).attr("id")!="wpfp_"+id+"_mobile"){fv_fp_mobile=true;jQuery(this).remove()}});if(fv_fp_mobile){jQuery("#wpfp_"+id).after('<p class="fv-flowplayer-mobile-switch">'+fv_flowplayer_translations.mobile_browser_detected_1+' <a href="'+document.URL+'?fv_flowplayer_mobile=no">'+fv_flowplayer_translations.mobile_browser_detected_2+"</a>.</p>")}}}if(typeof fv_flowplayer_mobile_switch_array!="undefined"){for(var i in fv_flowplayer_mobile_switch_array){if(!fv_flowplayer_mobile_switch_array.hasOwnProperty(i))continue;fv_flowplayer_mobile_switch(i)}}flowplayer(function(api,root){if(!flowplayer.support.touch)return;jQuery.fn.fv_single_double_click=function(single_click_callback,double_click_callback,timeout){return this.each(function(){var clicks=0,self=this;jQuery(this).on("click",function(event){clicks++;if(clicks==1){setTimeout(function(){if(clicks==1){single_click_callback.call(self,event)}else{double_click_callback.call(self,event)}clicks=0},timeout||300)}})})};root=jQuery(root);var left=jQuery('<div class="fv-fp-tap-left"><span>-10s</span></div>'),right=jQuery('<div class="fv-fp-tap-right"><span>+10s</span></div>');left.fv_single_double_click(function(){api.toggle()},function(e){maybe_seek(e,left,api.ready?api.video.time-10:false)});right.fv_single_double_click(function(){api.toggle()},function(e){maybe_seek(e,right,api.ready?api.video.time+10:false)});root.find(".fp-ui").append(left).append(right);function maybe_seek(e,el,time){if(api.ready){api.seek(time);animation(el)}else{api.toggle()}e.preventDefault()}function animation(el){el.addClass("is-active");setTimeout(function(){el.removeClass("is-active")},500)}});flowplayer(function(api,root){root=jQuery(root);var instance_id=root.data("flowplayer-instance-id");flowplayer.audible_instance=-1;api.one("load",function(){setTimeout(function(){api.conf.splash=false},0)});api.on("ready",function(){var is_muted=root.data("volume")==0;if(!is_muted){flowplayer.audible_instance=instance_id}jQuery(".flowplayer[data-flowplayer-instance-id]").each(function(){var player=jQuery(this).data("flowplayer");var current_instance_id=jQuery(this).data("flowplayer-instance-id");if(flowplayer.audible_instance==-1||current_instance_id==flowplayer.audible_instance||current_instance_id==instance_id)return;if(player){if(player.ready){if(api.conf.multiple_playback){if(!is_muted){player.mute(true,true)}}else if(player.playing){player.pause()}}else{player.clearLiveStreamCountdown();player.unload()}}})}).on("mute",function(e,api,muted){if(!muted&&flowplayer.audible_instance!=instance_id){flowplayer(flowplayer.audible_instance).mute(true,true);flowplayer.audible_instance=instance_id}}).on("resume",function(){if(!api.conf.multiple_playback){jQuery(".flowplayer[data-flowplayer-instance-id]").each(function(){if(instance_id==jQuery(this).data("flowplayer-instance-id"))return;var player=jQuery(this).data("flowplayer");if(player&&player.playing){player.pause()}})}})});function fv_flowplayer_browser_ff_m4v(hash){if(flowplayer.support.browser&&flowplayer.support.browser.mozilla&&navigator.appVersion.indexOf("Win")!=-1){jQuery("#wpfp_"+hash).attr("data-engine","flash")}}if(typeof fv_flowplayer_browser_ff_m4v_array!="undefined"){for(var i in fv_flowplayer_browser_ff_m4v_array){if(!fv_flowplayer_browser_ff_m4v_array.hasOwnProperty(i))continue;fv_flowplayer_browser_ff_m4v(i)}}function fv_flowplayer_browser_chrome_fail(hash,sAttributes,sVideo,bAutobuffer){jQuery("#wpfp_"+hash).bind("error",function(e,api,error){if(/chrom(e|ium)/.test(navigator.userAgent.toLowerCase())&&error!=null&&(error.code==3||error.code==4||error.code==5)){api.unload();jQuery("#wpfp_"+hash).attr("id","bad_wpfp_"+hash);jQuery("#bad_wpfp_"+hash).after('<div id="wpfp_'+hash+'" '+sAttributes+' data-engine="flash"></div>');jQuery("#wpfp_"+hash).flowplayer({playlist:[[{mp4:sVideo}]]});if(bAutobuffer){jQuery("#wpfp_"+hash).bind("ready",function(e,api){api.play()})}else{jQuery("#wpfp_"+hash).flowplayer().play(0)}jQuery("#bad_wpfp_"+hash).remove()}})}if(typeof fv_flowplayer_browser_chrome_fail_array!="undefined"){for(var i in fv_flowplayer_browser_chrome_fail_array){if(!fv_flowplayer_browser_chrome_fail_array.hasOwnProperty(i))continue;fv_flowplayer_browser_chrome_fail(i,fv_flowplayer_browser_chrome_fail_array[i]["attrs"],fv_flowplayer_browser_chrome_fail_array[i]["mp4"],fv_flowplayer_browser_chrome_fail_array[i]["auto_buffer"])}}function fv_flowplayer_browser_ie(hash){if(flowplayer.support.browser&&flowplayer.support.browser.msie&&parseInt(flowplayer.support.browser.version,10)>=9||!!navigator.userAgent.match(/Trident.*rv[ :]*11\./)){jQuery("#wpfp_"+hash).attr("data-engine","flash")}}if(typeof fv_flowplayer_browser_ie_array!="undefined"){for(var i in fv_flowplayer_browser_ie_array){if(!fv_flowplayer_browser_ie_array.hasOwnProperty(i))continue;fv_flowplayer_browser_ie(i)}}function fv_flowplayer_browser_chrome_mp4(hash){var match=window.navigator.appVersion.match(/Chrome\/(\d+)\./);if(match!=null){var chrome_ver=parseInt(match[1],10);if(/chrom(e|ium)/.test(navigator.userAgent.toLowerCase())&&chrome_ver<28&&navigator.appVersion.indexOf("Win")!=-1||/chrom(e|ium)/.test(navigator.userAgent.toLowerCase())&&chrome_ver<27&&navigator.appVersion.indexOf("Linux")!=-1&&navigator.userAgent.toLowerCase().indexOf("android")==-1){jQuery("#wpfp_"+hash).attr("data-engine","flash")}}}if(navigator.platform.indexOf("iPhone")!=-1||navigator.platform.indexOf("iPod")!=-1||navigator.platform.indexOf("iPad")!=-1||navigator.userAgent.toLowerCase().indexOf("android")!=-1){flowplayer(function(api,root){api.bind("error",function(e,api,error){if(error.code==10){jQuery(e.target).find(".fp-message").html(fv_flowplayer_translations.unsupported_format)}})})}jQuery(document).ready(function(){if(navigator.platform.indexOf("iPhone")!=-1||navigator.platform.indexOf("iPod")!=-1||navigator.platform.indexOf("iPad")!=-1){jQuery(window).trigger("load")}jQuery(".flowplayer").on("mouseleave",function(){jQuery(this).find(".fvp-share-bar").removeClass("visible");jQuery(this).find(".embed-code").hide()})});if(!Date.now){Date.now=function(){return(new Date).getTime()}}(function($){var sendPositionsEvery=60,ajaxCall=null,maxCookieSize=2500,localStorageEnabled=null,cookieKeyName="video_positions",tempPositionCookieKeyName="video_positions_tmp",tempSawCookieKeyName="video_saw_tmp",playPositions=[],sawVideo=[],getSerialized=function(data){var serialized=JSON.stringify(data),dataSize=getTextByteSize(serialized);if(dataSize>maxCookieSize){while(dataSize>maxCookieSize){for(var i in data){if(!data.hasOwnProperty(i))continue;delete data[i];serialized=JSON.stringify(data);dataSize=getTextByteSize(serialized);break}}}return serialized},getVideoId=function(video){if(video.id){return video.id}var out=typeof video.sources_original!="undefined"&&typeof video.sources_original[0]!="undefined"?video.sources_original[0].src:video.sources[0].src;if(typeof video.sources_original=="undefined"||typeof video.sources_original[0]=="undefined"){out=removeAWSSignatures(out)}return out},getTextByteSize=function(txt){return encodeURIComponent(txt).length},getCookieKey=function(key){return localStorageEnabled?localStorage.getItem(key):Cookies.get(key)},setCookieKey=function(key,value){return localStorageEnabled?localStorage.setItem(key,value):Cookies.set(key,value)},removeCookieKey=function(key){if(localStorageEnabled){localStorage.removeItem(key)}{Cookies.remove(key)}},removeVideoPosition=function(e,api){if(api.video.sources){var video_id=getVideoId(api.video);playPositions[video_id]=0;sawVideo[video_id]=1}},removeAWSSignatures=function(videoURL){return videoURL.replace(/(X-Amz-Algorithm=[^&]+&?)/gm,"").replace(/(X-Amz-Credential=[^&]+&?)/gm,"").replace(/(X-Amz-Date=[^&]+&?)/gm,"").replace(/(X-Amz-Expires=[^&]+&?)/gm,"").replace(/(X-Amz-SignedHeaders=[^&]+&?)/gm,"").replace(/(X-Amz-Signature=[^&]+&?)/gm,"")},sendVideoPositions=function(async,callback){var beaconSupported="sendBeacon"in navigator;if(async!==true){async=false}if(!callback||typeof callback=="undefined"){callback=function(){}}postData=[];for(var video_name in playPositions){if(!playPositions.hasOwnProperty(video_name))continue;postData.push({name:video_name,position:playPositions[video_name],saw:typeof sawVideo[video_name]!="undefined"?sawVideo[video_name]:false})}if(!postData.length){removeCookieKey(tempPositionCookieKeyName);removeCookieKey(tempSawCookieKeyName);return}if(flowplayer.conf.is_logged_in=="1"){if(beaconSupported){try{var temp_position_data={},temp_saw_data={};for(var i in postData){if(!postData.hasOwnProperty(i))continue;temp_position_data[postData[i].name]=postData[i].position;temp_saw_data[postData[i].name]=postData[i].saw}setCookieKey(tempPositionCookieKeyName,getSerialized(temp_position_data));setCookieKey(tempSawCookieKeyName,getSerialized(temp_saw_data))}catch(e){return}var fd=new FormData;fd.append("action","fv_wp_flowplayer_video_position_save");fd.append("videoTimes",encodeURIComponent(JSON.stringify(postData)));navigator.sendBeacon(fv_player.ajaxurl,fd);return false}else{return jQuery.ajax({type:"POST",async:async,url:fv_player.ajaxurl,complete:callback,data:{action:"fv_wp_flowplayer_video_position_save",videoTimes:postData}})}}else{try{var data=getCookieKey(cookieKeyName);if(data&&typeof data!=="undefined"){data=JSON.parse(data)}else{data={}}for(var i in postData){if(!postData.hasOwnProperty(i))continue;data[postData[i].name]=postData[i].position}var serialized=JSON.stringify(data),dataSize=getTextByteSize(serialized);if(dataSize>maxCookieSize){while(dataSize>maxCookieSize){for(var i in data){if(!data.hasOwnProperty(i))continue;delete data[i];serialized=JSON.stringify(data);dataSize=getTextByteSize(serialized);break}}}setCookieKey(cookieKeyName,serialized)}catch(e){return}}return false};flowplayer(function(api,root){var $root=jQuery(root),enabled=flowplayer.conf.video_position_save_enable&&$root.data("save-position")!="false"||$root.data("save-position"),progressEventsCount=0,seekIntoPosition=function(e,api){if(api.video&&api.video.live)return;var video_id=getVideoId(api.video),position=api.video.position;if(flowplayer.conf.is_logged_in!="1"){var data=getCookieKey(cookieKeyName);if(data&&typeof data!=="undefined"){try{data=JSON.parse(data);if(data[video_id]){position=data[video_id]}}catch(e){return}}}if(!!api.get_custom_end&&api.get_custom_end()<position){position=false}if(!!api.get_custom_start&&api.get_custom_start()>0){if(position<api.get_custom_start()){position=false}}api.bind("progress",storeVideoPosition);if(position){seek(position)}},storeVideoPosition=function(e,api){if(api.live){return}if(api.video.sources){var video_id=getVideoId(api.video),position=Math.round(api.video.time);playPositions[video_id]=position;if(progressEventsCount++>=sendPositionsEvery&&flowplayer.conf.closingPage){if(ajaxCall){ajaxCall.abort()}ajaxCall=sendVideoPositions(true,function(){ajaxCall=null});progressEventsCount=0}}},forceSavePosition=function(e,api){var inPlaylist=false;for(var i in api.conf.playlist){if(!api.conf.playlist.hasOwnProperty(i))continue;inPlaylist=true;break}if(inPlaylist&&!flowplayer.conf.closingPage){progressEventsCount=sendPositionsEvery+1;storeVideoPosition(e,api);sendVideoPositions()}},seek=function(position){if(!!api.custom_seek){api.custom_seek(position);return}var seek_count=0;var do_seek=setInterval(function(){if(++seek_count>20)clearInterval(do_seek);if(api.loading)return;api.seek(parseInt(position));clearInterval(do_seek)},10)},processTempData=function(temp_data_name,video_id){var data=getCookieKey(temp_data_name),output=false;if(data&&typeof data!=="undefined"){try{data=JSON.parse(data);if(typeof data[video_id]!="undefined"){output=data[video_id];delete data[video_id];var stillHasData=false;for(var i in data){if(!data.hasOwnProperty(i))continue;stillHasData=true;break}if(stillHasData){setCookieKey(temp_data_name,JSON.stringify(data))}else{removeCookieKey(temp_data_name)}}return output}catch(e){}}};if(!enabled)return;api.bind("finish",removeVideoPosition);api.one("progress",seekIntoPosition);api.playlist_thumbnail_progress=function(el,video,position){if(!!api.get_custom_start&&api.get_custom_start(video)>0){position-=api.get_custom_start(video);if(position<0)position=0}var duration=video.duration;if(!!api.get_custom_duration&&api.get_custom_duration()>0){duration=api.get_custom_duration()}if(!duration){duration=el.data("duration")}if(!duration)return;var progress=100*position/duration;el.css("width",progress+"%")};if(flowplayer.conf.is_logged_in=="1"){var playlist=api.conf.playlist.length>0?api.conf.playlist:[api.conf.clip],playlist_external=jQuery("[rel="+jQuery(root).attr("id")+"]");for(var i in playlist){if(!playlist.hasOwnProperty(i))continue;var video_id=getVideoId(playlist[i]),position=processTempData(tempPositionCookieKeyName,video_id),saw=processTempData(tempSawCookieKeyName,video_id);if(position){if(api.conf.playlist.length){api.conf.playlist[i].sources[0].position=position;var playlist_progress=jQuery("a",playlist_external).eq(i).find(".fvp-progress");if(playlist_progress.length){api.playlist_thumbnail_progress(playlist_progress,api.conf.playlist[i],position)}}else{api.conf.clip.sources[0].position=position}}if(saw){if(api.conf.playlist.length){api.conf.playlist[i].sources[0].saw=true}else{api.conf.clip.sources[0].saw=true}}}}api.bind("finish",function(e,api){if(api.conf.playlist.length){api.conf.playlist[api.video.index].sources[0].saw=true}else{api.conf.clip.sources[0].saw=true}})});jQuery(window).on("beforeunload pagehide",function(){if(!flowplayer.conf.closingPage){flowplayer.conf.closingPage=true;sendVideoPositions()}});if(localStorageEnabled!==null){return localStorageEnabled}localStorageEnabled=true;try{localStorage.setItem("t","t");if(localStorage.getItem("t")!=="t"){localStorageEnabled=false}localStorage.removeItem("t")}catch(e){localStorageEnabled=false}})(jQuery);flowplayer(function(api,root){root=jQuery(root);if(api.conf.playlist.length==0)return;var real_videos=0;jQuery(api.conf.playlist).each(function(k,v){if(typeof v.click=="undefined"){real_videos++}});if(real_videos<2)return;var playlist=jQuery(".fp-playlist-external[rel="+root.attr("id")+"]");var playlist_button=jQuery('<strong class="fv-fp-list">Item 1.</strong>'),playlist_menu=jQuery('<div class="fp-menu fv-fp-list-menu"></div>').insertAfter(root.find(".fp-controls"));var i=0,item_index=[];jQuery(api.conf.playlist).each(function(k,v){if(typeof v.click=="undefined"){playlist_menu.append('<a data-index="'+k+'">'+(i+1)+". "+parse_title(playlist.find("h4").eq(i))+"</a>");item_index.push(k);i++}});playlist_button.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();if(playlist_menu.hasClass("fp-active")){api.hideMenu(playlist_menu[0])}else{root.trigger("click");api.showMenu(playlist_menu[0])}});jQuery("a",playlist_menu).on("click",function(){if(typeof api.conf.playlist[jQuery(this).data("index")-1]!="undefined"&&typeof api.conf.playlist[jQuery(this).data("index")-1].click!="undefined"){api.play(jQuery(this).data("index")-1)}else{api.play(jQuery(this).data("index"))}});api.on("ready",function(e,api,video){playlist_menu.find("a").removeClass("fp-selected");var thumb=playlist_menu.find("a[data-index="+video.index+"]");thumb.addClass("fp-selected");var label=fv_flowplayer_translations.playlist_item_no;label=label.replace(/%d/,item_index.indexOf(api.video.index)+1);label=label.replace(/%s/,parse_title(thumb.find("h4")));playlist_button.html(label)});function parse_title(el){var tmp=el.clone();tmp.find("i.dur").remove();return tmp.text()}});flowplayer(function(api,root){root=jQuery(root);var playlist=api.conf.playlist,videoIndex;api.bind("load",function(e,api,video){videoIndex=video.index});api.bind("error",function(e,api,error){setTimeout(function(){if(playlist.length>0&&api.error==true){videoIndex=api.video.index;if(api.conf.video_checker=="1"&&playlist[videoIndex].video_checker&&playlist[videoIndex].video_checker.length>0){console.log("FV Player: Video checker message present, stopping auto-advance to next playlist item");return false}api.error=api.loading=false;root.removeClass("is-error");root.find(".fp-message.fp-shown").remove();videoIndex++;if(videoIndex>playlist.length-1){videoIndex=0}console.log("FV Player: Playlist item failure, auto-advancing to "+(videoIndex+1)+". item");api.play(videoIndex)}},1e3)})});flowplayer(function(api,root){root=jQuery(root);var original_prev,original_next,random_seed;if(!root.data("button-no-picture")&&!root.data("button-repeat")&&!root.data("button-rewind"))return;api.bind("ready",function(e,api){if(typeof original_next=="undefined"&&typeof original_prev=="undefined"){original_next=api.next;original_prev=api.prev}if(!api.video.type.match(/^audio/)&&root.data("button-no-picture")&&root.find(".fv-fp-no-picture").length==0){var button_no_picture=jQuery('<span class="fv-fp-no-picture"><svg viewBox="0 0 90 80" width="18px" height="18px" class="fvp-icon fvp-nopicture"><use xlink:href="#fvp-nopicture"></use></svg></span>');button_no_picture.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();jQuery(".fp-engine",root).slideToggle(20);jQuery(this).toggleClass("is-active fp-color-fill")})}if(root.data("button-repeat")){if(api.conf.playlist.length>0&&root.find(".fv-fp-playlist").length==0){var t=fv_flowplayer_translations,playlist_button=jQuery('<strong class="fv-fp-playlist mode-normal"> <svg viewBox="0 0 80.333 80" width="18px" height="18px" class="fvp-icon fvp-replay-list"><title>'+t.playlist_replay_all+'</title><use xlink:href="#fvp-replay-list"></use></svg> <svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-shuffle"><title>'+t.playlist_shuffle+'</title><use xlink:href="#fvp-shuffle"></use></svg> <svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-replay-track"><title>'+t.playlist_replay_video+'</title><use xlink:href="#fvp-replay-track"></use></svg> <span id="fvp-playlist-play" title="'+t.playlist_play_all+'">'+t.playlist_play_all_button+"</span> </strong>"),playlist_menu=jQuery('<div class="fp-menu fv-fp-playlist-menu"> <a data-action="repeat_playlist"><svg viewBox="0 0 80.333 80" width="18px" height="18px" class="fvp-icon fvp-replay-list"><title>'+t.playlist_replay_all+'</title><use xlink:href="#fvp-replay-list"></use></svg> <span class="screen-reader-text">'+t.playlist_replay_all+'</span></a> <a data-action="shuffle_playlist"><svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-shuffle"><title>'+t.playlist_shuffle+'</title><use xlink:href="#fvp-shuffle"></use></svg> <span class="screen-reader-text">'+t.playlist_shuffle+'</span></a> <a data-action="repeat_track"><svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-replay-track"><title>'+t.playlist_replay_video+'</title><use xlink:href="#fvp-replay-track"></use></svg> <span class="screen-reader-text">'+t.playlist_replay_video+'</span></a> <a class="fp-selected" data-action="normal"><span id="fvp-playlist-play" title="'+t.playlist_play_all+'">'+t.playlist_play_all_button+"</span></a> </div>").insertAfter(root.find(".fp-controls"));api.conf.playlist_shuffle=api.conf.track_repeat=false;random_seed=randomize();var should_advance=api.conf.advance;playlist_button.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();if(playlist_menu.css("right")!=="auto"){playlist_menu.css({right:"auto",left:playlist_button.position().left+"px"})}if(playlist_menu.hasClass("fp-active")){api.hideMenu(playlist_menu[0])}else{root.trigger("click");api.showMenu(playlist_menu[0])}});jQuery("a",playlist_menu).on("click",function(){jQuery(this).siblings("a").removeClass("fp-selected");jQuery(this).addClass("fp-selected");playlist_button.removeClass("mode-normal mode-repeat-track mode-repeat-playlist mode-shuffle-playlist");var action=jQuery(this).data("action");if(action=="repeat_playlist"){playlist_button.addClass("mode-repeat-playlist");api.conf.loop=true;api.conf.advance=true;api.video.loop=api.conf.track_repeat=false;api.conf.playlist_shuffle=false}else if(action=="shuffle_playlist"){playlist_button.addClass("mode-shuffle-playlist");api.conf.loop=true;api.conf.advance=true;api.conf.playlist_shuffle=true}else if(action=="repeat_track"){playlist_button.addClass("mode-repeat-track");api.conf.track_repeat=api.video.loop=true;api.conf.loop=api.conf.playlist_shuffle=false}else if(action=="normal"){playlist_button.addClass("mode-normal");api.conf.track_repeat=api.video.loop=false;api.conf.loop=api.conf.playlist_shuffle=false}if(api.conf.playlist_shuffle){api.next=function(){api.play(random_seed.pop());if(random_seed.length==0)random_seed=randomize()};api.prev=function(){api.play(random_seed.shift());if(random_seed.length==0)random_seed=randomize()}}else{api.next=original_next;api.prev=original_prev}});if(api.conf.loop){jQuery("a[data-action=repeat_playlist]",playlist_menu).trigger("click")}api.on("progress",function(){api.video.loop=api.conf.track_repeat});api.on("finish.pl",function(e,api){console.log("playlist_repeat",api.conf.loop,"advance",api.conf.advance,"video.loop",api.video.loop);if(api.conf.playlist_shuffle){api.play(random_seed.pop());if(random_seed.length==0)random_seed=randomize()}})}else if(root.find(".fv-fp-track-repeat").length==0&&api.conf.playlist.length==0){var button_track_repeat=jQuery('<strong class="fv-fp-track-repeat"><svg viewBox="0 0 80.333 71" width="18px" height="18px" class="fvp-icon fvp-replay-track"><use xlink:href="#fvp-replay-track"></use></svg></strong>');button_track_repeat.insertAfter(root.find(".fp-controls .fp-volume")).on("click",function(e){e.preventDefault();e.stopPropagation();jQuery(this).toggleClass("is-active fp-color-fill",api.video.loop);if(api.video.loop){api.video.loop=false}else{api.video.loop=true}});if(api.conf.loop){button_track_repeat.addClass("is-active fp-color-fill")}}}if(root.data("button-rewind")){if(root.find(".fv-fp-rewind").length==0){var button_rewind=jQuery('<span class="fv-fp-rewind"><svg viewBox="0 0 24 24" width="21px" height="21px" class="fvp-icon fvp-rewind"><use xlink:href="#fvp-rewind"></use></svg></span>');button_rewind.insertBefore(root.find(".fp-controls .fp-playbtn")).on("click",function(e){e.preventDefault();e.stopPropagation();api.seek(api.video.time-10)});button_rewind.toggle(!api.video.live)}if(root.find(".fv-fp-forward").length==0){var button_forward=jQuery('<span class="fv-fp-forward"><svg viewBox="0 0 24 24" width="21px" height="21px" class="fvp-icon fvp-forward"><use xlink:href="#fvp-forward"></use></svg></span>');button_forward.insertAfter(root.find(".fp-controls .fp-playbtn")).on("click",function(e){e.preventDefault();e.stopPropagation();api.seek(api.video.time+10)});button_forward.toggle(!api.video.live)}}}).bind("unload",function(){root.find(".fv-fp-no-picture").remove();root.find(".fv-fp-playlist").remove();root.find(".fv-fp-track-repeat").remove()});function array_shuffle(a){var j,x,i;for(i=a.length;i;i--){j=Math.floor(Math.random()*i);x=a[i-1];a[i-1]=a[j];a[j]=x}return a}function randomize(random_seed){random_seed=[];jQuery(api.conf.playlist).each(function(k,v){random_seed.push(k)});random_seed=array_shuffle(random_seed);console.log("FV Player Randomizer random seed:",random_seed);return random_seed}});flowplayer(function(api,root){var $root=jQuery(root),start_index=$root.data("playlist_start");if(typeof start_index=="undefined")return;function start_position_changer(){if($root.data("position_changed")!==1&&api.conf.playlist.length){start_index--;api.play(start_index);$root.data("position_changed",1)}}api.bind("unload",function(){start_index=$root.data("playlist_start");$root.removeData("position_changed");api.one("ready",start_position_changer);api.video.index=0});api.one("ready",start_position_changer);jQuery(".fp-ui",root).on("click",function(){start_position_changer();$root.data("position_changed",1)})});document.addEventListener("custombox:overlay:close",function(e){console.log("FV Player: Custombox/Popup anything ligtbox closed");var $players=jQuery(this).find(".flowplayer");if($players.length==0)return;console.log("FV Player: Custombox/Popup anything ligtbox contains a player");$players.each(function(index,player){var api=jQuery(player).data("flowplayer");if(typeof api!="undefined"){if(api.playing){console.log("FV Player: Custombox/Popup anything ligtbox video pause");api.pause()}else if(api.loading){api.one("ready",function(){console.log("FV Player: Custombox/Popup anything ligtbox video unload");api.unload()})}}})});flowplayer(function(api,root){api.bind("finish",function(){var finished_at=api.video.time;if(api.video.loop){api.one("pause",function(){if(finished_at<=api.video.time){api.resume()}})}})});function fv_flowplayer_amazon_s3(hash,time){jQuery("#wpfp_"+hash).bind("error",function(e,api,error){var fv_fp_date=new Date;if(error.code==4&&fv_fp_date.getTime()>fv_fp_utime+parseInt(time)){jQuery(e.target).find(".fp-message").delay(500).queue(function(n){jQuery(this).html(fv_flowplayer_translations.video_expired);n()})}})}flowplayer(function(api,root){root=jQuery(root);root.find(".fp-logo").removeAttr("href");if(root.hasClass("no-controlbar")){var timelineApi=api.sliders.timeline;timelineApi.disable(true);api.bind("ready",function(){timelineApi.disable(true)})}jQuery(".fvfp_admin_error",root).remove();root.find(".fp-logo, .fp-header").on("click",function(e){if(e.target!==this)return;root.find(".fp-ui").trigger("click")});jQuery(".fvp-share-bar .sharing-facebook",root).append('<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="#fff"><title>Facebook</title><path d="M11.9 5.2l-2.6 0 0-1.6c0-0.7 0.3-0.7 0.7-0.7 0.3 0 1.6 0 1.6 0l0-2.9 -2.3 0c-2.6 0-3.3 2-3.3 3.3l0 2 -1.6 0 0 2.9 1.6 0c0 3.6 0 7.8 0 7.8l3.3 0c0 0 0-4.2 0-7.8l2.3 0 0.3-2.9Z"/></svg>');jQuery(".fvp-share-bar .sharing-twitter",root).append('<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="#fff"><title>Twitter</title><path d="M16 3.1c-0.6 0.3-1.2 0.4-1.9 0.5 0.7-0.4 1.2-1 1.4-1.8 -0.6 0.4-1.3 0.6-2.1 0.8 -0.6-0.6-1.4-1-2.4-1 -2 0.1-3.2 1.6-3.2 4 -2.7-0.1-5.1-1.4-6.7-3.4 -0.9 1.4 0.2 3.8 1 4.4 -0.5 0-1-0.1-1.5-0.4l0 0.1c0 1.6 1.1 2.9 2.6 3.2 -0.7 0.2-1.3 0.1-1.5 0.1 0.4 1.3 1.6 2.2 3 2.3 -1.6 1.7-4.6 1.4-4.8 1.3 1.4 0.9 3.2 1.4 5 1.4 6 0 9.3-5 9.3-9.3 0-0.1 0-0.3 0-0.4 0.6-0.4 1.2-1 1.6-1.7Z"/></svg>');jQuery(".fvp-share-bar .sharing-email",root).append('<svg xmlns="http://www.w3.org/2000/svg" height="16" viewBox="0 0 16 16" width="16" fill="#fff"><title>Email</title><path d="M8 10c0 0 0 0-1 0L0 6v7c0 1 0 1 1 1h14c1 0 1 0 1-1V6L9 10C9 10 8 10 8 10zM15 2H1C0 2 0 2 0 3v1l8 4 8-4V3C16 2 16 2 15 2z"/></svg>');jQuery(".fp-header",root).prepend(jQuery(".fvp-share-bar",root));if(api.conf.playlist.length){var show=true;var playlist=api.conf.playlist;if(playlist.length==2){if(typeof playlist[0].click!="undefined"&&typeof playlist[1].click=="undefined"){show=false}if(typeof playlist[0].click=="undefined"&&typeof playlist[1].click!="undefined"){show=false}}else if(playlist.length==3){if(typeof playlist[0].click!="undefined"&&typeof playlist[1].click=="undefined"&&typeof playlist[2].click!="undefined"){show=false}}if(show){var prev=jQuery('<a class="fp-icon fv-fp-prevbtn"></a>');var next=jQuery('<a class="fp-icon fv-fp-nextbtn"></a>');root.find(".fp-controls .fp-playbtn").before(prev).after(next);prev.on("click",function(){api.trigger("prev",[api]);api.prev()});next.on("click",function(){api.trigger("next",[api]);api.next()})}}api.bind("pause resume finish unload ready",function(e,api){root.addClass("no-brand")});api.one("ready",function(){root.find(".fp-fullscreen").clone().appendTo(root.find(".fp-controls"))});api.bind("ready",function(e,api,video){setTimeout(function(){jQuery(".fvp-share-bar",root).show();jQuery(".fv-player-buttons-wrap",root).appendTo(jQuery(".fv-player-buttons-wrap",root).parent().find(".fp-ui"))},100)});api.bind("finish",function(){var url=root.data("fv_redirect");if(url&&(typeof api.video.is_last=="undefined"||api.video.is_last)){location.href=url}});if(flowplayer.support.iOS&&flowplayer.support.iOS.version==11){api.bind("error",function(e,api,error){if(error.code==4)root.find(".fp-engine").hide()})}jQuery(document).on("contextmenu",".flowplayer",function(e){e.preventDefault()});api.one("ready",function(e,api,video){root.find(".fp-chromecast").insertAfter(root.find(".fp-header .fp-fullscreen"))});root.find(".fp-waiting").html('<div class="fp-preload"><b></b><b></b><b></b><b></b></div>');var id=root.attr("id"),alternative=!flowplayer.conf.native_fullscreen&&flowplayer.conf.mobile_alternative_fullscreen,events_enter="fakefullscreen",events_exit="fakefullscreen-exit";if(!flowplayer.support.fullscreen){events_enter+=" fullscreen";events_exit+=" fullscreen-exit"}api.bind(events_enter,function(e,api){jQuery("#wpadminbar, .nc_wrapper").hide();if(alternative||e.type=="fakefullscreen"){if(api.video.type=="video/youtube")return;root.before('<span data-fv-placeholder="'+id+'"></span>');root.appendTo("body")}});api.bind(events_exit,function(e,api,video){jQuery("#wpadminbar, .nc_wrapper").show();if(alternative||e.type=="fakefullscreen-exit"){jQuery("span[data-fv-placeholder="+id+"]").replaceWith(root)}})});(function(){var extension=function(flowplayer){flowplayer(function(api,root){if(!jQuery(root).data("speedb"))return;var support=flowplayer.support;if(!support.video||!support.inlineVideo)return;var common=flowplayer.common,bean=flowplayer.bean,ui=common.find(".fp-ui",root)[0],controlbar=common.find(".fp-controls",ui)[0],speeds=api.conf.speeds;bean.on(root,"click",".fp-speed",function(){var menu=common.find(".fp-speed-menu",root)[0];if(common.hasClass(menu,"fp-active"))api.hideMenu();else api.showMenu(menu)});bean.on(root,"click",".fp-speed-menu a",function(ev){var s=ev.target.getAttribute("data-speed");api.speed(s)});api.on("speed",function(ev,_a,rate){if(speeds.length>1){selectSpeed(rate)}}).on("ready",function(ev,api){removeMenu();if(flowplayer.support.android&&api.engine.engineName=="html5"&&api.video.type=="application/x-mpegurl")return;speeds=api.conf.speeds;if(speeds.length>1){createMenu()}});function removeMenu(){common.find(".fp-speed-menu",root).forEach(common.removeNode);common.find(".fp-speed",root).forEach(common.removeNode)}function round(val){return Math.round(val*100)/100}function createMenu(){controlbar.appendChild(common.createElement("strong",{className:"fp-speed"},api.currentSpeed+"x"));var menu=common.createElement("div",{className:"fp-menu fp-speed-menu",css:{width:"auto"}},"<strong>Speed</strong>");speeds.forEach(function(s){var a=common.createElement("a",{"data-speed":round(s)},round(s)+"x");menu.appendChild(a)});ui.appendChild(menu);selectSpeed(api.currentSpeed);jQuery(root).find(".fp-speed-menu strong").text(fv_flowplayer_translations.speed)}function selectSpeed(rate){common.find(".fp-speed",root)[0].innerHTML=rate+"x";common.find(".fp-speed-menu a",root).forEach(function(el){common.toggleClass(el,"fp-selected",el.getAttribute("data-speed")==rate);common.toggleClass(el,"fp-color",el.getAttribute("data-speed")==rate)})}})};if(typeof module==="object"&&module.exports)module.exports=extension;else if(typeof window.flowplayer==="function")extension(window.flowplayer)})();flowplayer(function(api,root){api.on("speed",function(ev,_a,rate){try{window.localStorage.fv_player_speed=rate}catch(e){}});api.on("ready",function(){if(window.localStorage.fv_player_speed&&jQuery(root).find("strong.fp-speed").is(":visible")){api.speed(parseFloat(window.localStorage.fv_player_speed))}if(jQuery(root).data("volume")==0){api.mute(true,true)}})});flowplayer(function(api,root){root=jQuery(root);var last_tracked=-1;if(!api.conf.fv_stats||!api.conf.fv_stats.enabled&&(!root.data("fv_stats")||root.data("fv_stats")=="no"))return;api.on("ready finish",function(e,api){api.one("progress",function(e,api){if(root.data("fv_stats_data")){try{var player_post_data=root.data("fv_stats_data")}catch(e){return false}if(last_tracked==get_index())return;last_tracked=get_index();jQuery.post(api.conf.fv_stats.url,{blog_id:api.conf.fv_stats.blog_id,video_id:api.video.id?api.video.id:0,player_id:player_post_data.player_id,post_id:player_post_data.post_id,tag:"play"})}})}).on("finish",function(){last_tracked=-1});function get_index(){return api.video.index?api.video.index:0}});flowplayer(function(api,root){var $root=jQuery(root);var $playerDiv=$root.find(".fp-player");var sticky=$root.data("fvsticky");var globalSticky=false;var videoRatio=$root.data("ratio"),is_sticky=false;if(typeof videoRatio=="undefined"){videoRatio=.5625}if(flowplayer.conf.sticky_video==1&&typeof sticky=="undefined"){globalSticky=true}if(globalSticky||sticky){if(flowplayer.support.firstframe){var stickyPlace=flowplayer.conf.sticky_place;var stickyWidth=flowplayer.conf.sticky_width;if(stickyWidth==""){stickyWidth=380}var stickyHeight=stickyWidth*videoRatio;fv_player_sticky_video()}else{return}}function fv_player_sticky_video(){var change=false;var $window=jQuery(window),$flowplayerDiv=$root,top=$flowplayerDiv.offset().top,offset=Math.floor(top+$flowplayerDiv.outerHeight()/2);api.on("ready",function(){change=true});api.on("progress",function(){change=true});api.on("unload",function(){change=false;fv_player_sticky_class_remove();$root.removeClass("is-unSticky")});$window.on("resize",function(){if(!is_big_enough()){if(is_sticky){fv_player_sticky_class_remove()}return}top=$flowplayerDiv.offset().top;offset=Math.floor(top+$flowplayerDiv.outerHeight()/2)}).on("scroll",function(){if(!is_big_enough()){if(is_sticky){fv_player_sticky_class_remove()}return}top=$flowplayerDiv.offset().top;offset=Math.floor(top+$flowplayerDiv.outerHeight()/2);if($window.scrollTop()>offset&&change){if(jQuery("div.flowplayer.is-unSticky").length>0){console.log("unSticky",jQuery("div.flowplayer.is-unSticky").length);return false}else{fv_player_sticky_class_add()}}else{fv_player_sticky_class_remove();change=false}})}function fv_player_sticky_class_add(){if($playerDiv.hasClass("is-sticky-"+stickyPlace)){return}else{$playerDiv.addClass("is-sticky-"+stickyPlace);if($root.find("a.fp-sticky").length==0){$root.find("div.fp-header").prepend('<a class="fp-sticky fp-icon"></a>')}$playerDiv.css("width",stickyWidth);$playerDiv.css("height",stickyHeight);$playerDiv.css("max-height",stickyHeight);is_sticky=true;api.trigger("sticky",[api])}$playerDiv.parent(".flowplayer").addClass("is-stickable")}function fv_player_sticky_class_remove(){$playerDiv.removeClass("is-sticky-"+stickyPlace);$playerDiv.css("width","");$playerDiv.css("height","");$playerDiv.css("max-height","");$playerDiv.parent(".flowplayer").removeClass("is-stickable");if(is_sticky){is_sticky=false;api.trigger("sticky-exit",[api])}}function is_big_enough(){return jQuery(window).innerWidth()>=1020}});jQuery(function($){$(document).on("click","a.fp-sticky",function(){$("div.flowplayer.is-stickable").addClass("is-unSticky");var $playerDiv=$("div.flowplayer.is-stickable").find(".fp-player");$playerDiv.removeClass("is-sticky-right-bottom");$playerDiv.removeClass("is-sticky-left-bottom");$playerDiv.removeClass("is-sticky-right-top");$playerDiv.removeClass("is-sticky-left-top");$playerDiv.css("width","");$playerDiv.css("height","");$playerDiv.css("max-height","");if(is_sticky){is_sticky=false;api.trigger("sticky-exit",[api])}});$(document).on("click","div.flowplayer.is-unSticky",function(){$("div.flowplayer").removeClass("is-unSticky")})});flowplayer(function(api,root){root=jQuery(root);var ls=window.localStorage;api.on("ready",function(e,api,video){if(root.find("strong.fp-cc").is(":visible")){if(ls.fv_player_subtitle&&api.video.subtitles.length){if(ls.fv_player_subtitle==="none"){api.disableSubtitles()}else{api.video.subtitles.forEach(function(item,index){if(item.srclang===ls.fv_player_subtitle){api.loadSubtitles(index)}})}}else{var defaultSubtitle=video.subtitles.filter(function(one){return one["fv_default"]})[0];if(defaultSubtitle){api.loadSubtitles(video.subtitles.indexOf(defaultSubtitle))}}}root.find(".fp-subtitle-menu").on("click",function(e){var subtitle_index=e.target.getAttribute("data-subtitle-index");if(typeof subtitle_index=="string"){try{ls.fv_player_subtitle=subtitle_index>-1?api.video.subtitles[subtitle_index].srclang:"none"}catch(e){}}})})});flowplayer(function(api,root){root=jQuery(root);var currentPoint,check=false;api.bind("cuepoint",function(e,api,cue){check=false;if(cue.subtitle){currentPoint=cue.index}});api.on("ready",function(e,api){root.find(".fp-subtitle-menu strong").text(fv_flowplayer_translations.closed_captions);root.find('.fp-subtitle-menu a[data-subtitle-index="-1"]').text(fv_flowplayer_translations.no_subtitles)});root.on("click",".fp-subtitle-menu a[data-subtitle-index]",function(e){if(jQuery(this).data("subtitle-index")>-1){check=true;api.on("progress",time_check)}});function time_check(e,api,time){if(check){(api.cuepoints||[]).forEach(function(cue,index){var entry=cue.subtitle;if(entry&¤tPoint!=index){if(time>=cue.time&&(!entry.endTime||time<=entry.endTime)){api.trigger("cuepoint",[api,cue])}}})}}});if(typeof flowplayer!=="undefined"&&typeof fv_flowplayer_conf!="undefined"&&fv_flowplayer_conf.video_hash_links){flowplayer(function(api,root){if(jQuery(root).find(".sharing-link").length>0){var abEnd,abStart,hash,sTime,abloop;function update_link(abStartNew,abEndNew){hash=fv_player_get_video_link_hash(api);sTime=","+fv_player_time_hms(api.video.time);if(abStartNew&&abEndNew){abStart=","+fv_player_time_hms_ms(abStartNew+api.get_custom_start());abEnd=","+fv_player_time_hms_ms(abEndNew+api.get_custom_start())}else{abEnd=abloop&&typeof api.get_ab_end()!="undefined"&&api.get_ab_end()?","+fv_player_time_hms_ms(api.get_ab_end()):"";abStart=abloop&&typeof api.get_ab_start()!="undefined"&&api.get_ab_start()?","+fv_player_time_hms_ms(api.get_ab_start()):""}jQuery(".sharing-link",root).attr("href",jQuery(".sharing-link",root).attr("href").replace(/#.*/,"")+"#"+hash+sTime+abStart+abEnd)}api.on("ready",function(e,api,video){if(!api.fv_noUiSlider)return;api.fv_noUiSlider.on("set",function(values){update_link(values[0],values[1])})});api.on("progress",function(e,api){if(!api.video.sources||!api.video.sources[0]){return}update_link()});api.on("abloop",function(e,api,active){abloop=active;if(!api.playing){update_link()}});jQuery(".sharing-link",root).on("click",function(e){fv_player_clipboard(jQuery(this).attr("href"),function(){e.preventDefault();fv_player_notice(root,fv_flowplayer_translations.link_copied,2e3)})})}});jQuery(document).on("click",'a[href*="fvp_"]',function(){var link=jQuery(this);setTimeout(function(){if(link.parents(".fvp-share-bar").length==0)fv_autoplay_exec()})})}flowplayer(function(api,root){root=jQuery(root);var bean=flowplayer.bean;var restore=-1;root.on("click",".fp-volumebtn",function(e){if(api.volumeLevel==0&&restore!=-1){api.volume(restore);return false}});root.on("mousedown touchstart mouseup touchend",".fp-volumebar",function(e){if(api.volumeLevel!=0){restore=api.volumeLevel}});root.on("mousedown touchstart",".fp-volumebtn",function(e){if(api.volumeLevel>0){restore=-1}});api.on("volume",function(e,api){if(root.hasClass("is-mouseover")&&!api.muted){if(api.volumeLevel==0){bean.off(flowplayer.support.touch?root:document,"mousemove.sld touchmove.sld");api.mute(true)}}});api.on("ready",function(e,api){if(root.hasClass("is-audio"))return;api.one("progress",function(e,api){if(api.muted||api.volumeLevel==0){var mute_notice=jQuery('<div class="fp-message fp-message-muted fp-shown"><span class="fp-icon fp-volumebtn-notice"></span> '+fv_flowplayer_translations.click_to_unmute+"</div>");mute_notice.on("click touchstart",function(){api.mute(false);api.volume(1)});root.find(".fp-ui").append(mute_notice);root.addClass("has-fp-message-muted")}})});api.on("mute volume",function(){if(!api.muted||api.volumeLevel>0){root.removeClass("has-fp-message-muted");root.find(".fp-message-muted").remove()}})});if(typeof flowplayer!="undefined"){flowplayer(function(api,root){root=jQuery(root);if(navigator.userAgent.match(/iPhone.* OS [0-6]_/i)){api.one("progress",function(e){if(typeof api.video.subtitles!=="undefined"&&api.video.subtitles.length){fv_player_warning(root,fv_flowplayer_translations.warning_iphone_subs)}})}if(flowplayer.support.android&&flowplayer.support.android.version<5&&(flowplayer.support.android.samsung||flowplayer.support.browser.safari)){fv_player_warning(root,fv_flowplayer_translations.warning_unstable_android,"firefox")}if(/Android 4/.test(navigator.userAgent)&&!/Firefox/.test(navigator.userAgent)){api.on("ready",function(e,api,video){setTimeout(function(){if(video.src&&video.src.match(/fpdl.vimeocdn.com/)&&(video.time==0||video.time==1)){fv_player_warning(root,fv_flowplayer_translations.warning_unstable_android,"firefox");api.on("progress",function(e,api){root.prev().find(".fv-player-warning-firefox").remove()})}},1500)});api.on("error",function(e,api,error){if(error.MEDIA_ERR_NETWORK==2&&error.video.src.match(/fpdl.vimeocdn.com/)){fv_player_warning(root,fv_flowplayer_translations.warning_unstable_android,"firefox")}})}if(/Safari/.test(navigator.userAgent)&&/Version\/5/.test(navigator.userAgent)){api.on("error",function(e,api,error){if(error.video.src.match(/fpdl.vimeocdn.com/)){fv_player_warning(root,fv_flowplayer_translations.warning_old_safari)}})}var sup=flowplayer.support;if(sup.android&&(sup.android.samsung&&parseInt(sup.browser.version)<66||sup.browser.safari)){api.on("error",function(e,api,error){fv_player_warning(root,fv_flowplayer_translations.warning_samsungbrowser,"warning_samsungbrowser")})}});function fv_player_warning(root,warning,classname){var wrapper=jQuery(root).prev(".fv-player-warning-wrapper");if(wrapper.length==0){jQuery(root).before('<div class="fv-player-warning-wrapper">');wrapper=jQuery(root).prev(".fv-player-warning-wrapper")}if(wrapper.find(".fv-player-warning-"+classname).length==0){var latest=jQuery("<p style='display: none' "+(classname?" class='fv-player-warning-"+classname+"'":"")+">"+warning+"</p>");wrapper.append(latest);latest.slideDown()}}}
|
flowplayer/modules/fv-player.js
CHANGED
@@ -167,6 +167,11 @@ function fv_player_preload() {
|
|
167 |
}
|
168 |
|
169 |
flowplayer( function(api,root) {
|
|
|
|
|
|
|
|
|
|
|
170 |
root = jQuery(root);
|
171 |
var fp_player = root.find('.fp-player');
|
172 |
var splash_click = false;
|
167 |
}
|
168 |
|
169 |
flowplayer( function(api,root) {
|
170 |
+
// remove the temporary localStorage test item
|
171 |
+
if( localStorage.flowplayerTestStorage ) {
|
172 |
+
delete( localStorage.flowplayerTestStorage );
|
173 |
+
}
|
174 |
+
|
175 |
root = jQuery(root);
|
176 |
var fp_player = root.find('.fp-player');
|
177 |
var splash_click = false;
|
flowplayer/modules/hls-playlist-fix.module.js
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* HLS.js - prevent from loading when engine changed in playlist
|
3 |
+
*/
|
4 |
+
flowplayer( function(api,root) {
|
5 |
+
root = jQuery(root);
|
6 |
+
var hlsjs;
|
7 |
+
|
8 |
+
flowplayer.engine('hlsjs-lite').plugin(function(params) {
|
9 |
+
hlsjs = params.hls;
|
10 |
+
});
|
11 |
+
|
12 |
+
api.on('ready', function(e,api) {
|
13 |
+
// engine changed, destroy hlsjs
|
14 |
+
if( hlsjs && api.conf.playlist.length && api.engine.engineName != 'hlsjs-lite' ) {
|
15 |
+
hlsjs.destroy();
|
16 |
+
}
|
17 |
+
});
|
18 |
+
|
19 |
+
});
|
flowplayer/modules/subtitle-restore.module.js
CHANGED
@@ -4,23 +4,41 @@
|
|
4 |
flowplayer( function(api,root) {
|
5 |
root = jQuery(root);
|
6 |
|
|
|
|
|
|
|
7 |
api.on('ready', function(e,api,video) {
|
8 |
-
if
|
9 |
-
if(api.video.subtitles.length){
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
}
|
16 |
}
|
17 |
|
|
|
18 |
root.find('.fp-subtitle-menu').on('click', function(e) {
|
19 |
-
|
|
|
20 |
try {
|
21 |
-
|
22 |
} catch(e) {}
|
23 |
}
|
24 |
});
|
|
|
25 |
});
|
26 |
});
|
4 |
flowplayer( function(api,root) {
|
5 |
root = jQuery(root);
|
6 |
|
7 |
+
var ls = window.localStorage;
|
8 |
+
|
9 |
+
// restore subtitle on ready event
|
10 |
api.on('ready', function(e,api,video) {
|
11 |
+
if( root.find('strong.fp-cc').is(":visible") ) {
|
12 |
+
if( ls.fv_player_subtitle && api.video.subtitles.length ) { // check if we have subtitles to restore
|
13 |
+
if ( ls.fv_player_subtitle === 'none' ) { // none is saved, disable subtitles
|
14 |
+
api.disableSubtitles();
|
15 |
+
} else {
|
16 |
+
api.video.subtitles.forEach(function (item, index) {
|
17 |
+
if( item.srclang === ls.fv_player_subtitle) {
|
18 |
+
api.loadSubtitles(index); // restore saved subtitle
|
19 |
+
}
|
20 |
+
});
|
21 |
+
}
|
22 |
+
} else { // no subtitles saved, pick default
|
23 |
+
var defaultSubtitle = video.subtitles.filter(function(one) {
|
24 |
+
return one['fv_default'];
|
25 |
+
})[0];
|
26 |
+
|
27 |
+
if (defaultSubtitle) {
|
28 |
+
api.loadSubtitles(video.subtitles.indexOf(defaultSubtitle));
|
29 |
+
}
|
30 |
}
|
31 |
}
|
32 |
|
33 |
+
// subtitle menu click
|
34 |
root.find('.fp-subtitle-menu').on('click', function(e) {
|
35 |
+
var subtitle_index = e.target.getAttribute('data-subtitle-index');
|
36 |
+
if( typeof(subtitle_index) == 'string' ) {
|
37 |
try {
|
38 |
+
ls.fv_player_subtitle = subtitle_index > -1 ? api.video.subtitles[subtitle_index].srclang : 'none'; // save lang shortcut to localstorage
|
39 |
} catch(e) {}
|
40 |
}
|
41 |
});
|
42 |
+
|
43 |
});
|
44 |
});
|
flowplayer/modules/volume.module.js
CHANGED
@@ -4,6 +4,8 @@
|
|
4 |
* Dragging the volume down to zero mutes the video and shows the un-mute icon.
|
5 |
* What this code does is it remembers the last volume before you finished dragging
|
6 |
* the volume control and then clicking the un-mute icon restores back to that volume
|
|
|
|
|
7 |
*/
|
8 |
flowplayer(function(api, root) {
|
9 |
root = jQuery(root);
|
@@ -45,4 +47,32 @@ flowplayer(function(api, root) {
|
|
45 |
}
|
46 |
});
|
47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
})
|
4 |
* Dragging the volume down to zero mutes the video and shows the un-mute icon.
|
5 |
* What this code does is it remembers the last volume before you finished dragging
|
6 |
* the volume control and then clicking the un-mute icon restores back to that volume
|
7 |
+
*
|
8 |
+
* Also show overlay notice when the sound is muted at video start - mostly by autoplay
|
9 |
*/
|
10 |
flowplayer(function(api, root) {
|
11 |
root = jQuery(root);
|
47 |
}
|
48 |
});
|
49 |
|
50 |
+
// If video starts muted, show a notice
|
51 |
+
api.on('ready', function(e,api) {
|
52 |
+
if( root.hasClass('is-audio') ) return;
|
53 |
+
|
54 |
+
// We wait for the first progress event as api.muted wouldn't be there on iOS
|
55 |
+
api.one('progress', function(e,api) {
|
56 |
+
if( api.muted || api.volumeLevel == 0 ) {
|
57 |
+
var mute_notice = jQuery('<div class="fp-message fp-message-muted fp-shown"><span class="fp-icon fp-volumebtn-notice"></span> '+fv_flowplayer_translations.click_to_unmute+'</div>');
|
58 |
+
|
59 |
+
// We need touchstart for mobile, otherwise click would only show te UI
|
60 |
+
mute_notice.on( 'click touchstart', function() {
|
61 |
+
api.mute(false);
|
62 |
+
api.volume(1);
|
63 |
+
});
|
64 |
+
|
65 |
+
root.find('.fp-ui').append( mute_notice );
|
66 |
+
root.addClass('has-fp-message-muted');
|
67 |
+
}
|
68 |
+
} );
|
69 |
+
});
|
70 |
+
|
71 |
+
api.on('mute volume', function() {
|
72 |
+
if( !api.muted || api.volumeLevel > 0 ) {
|
73 |
+
root.removeClass('has-fp-message-muted');
|
74 |
+
root.find('.fp-message-muted').remove();
|
75 |
+
}
|
76 |
+
});
|
77 |
+
|
78 |
})
|
models/subtitles.php
CHANGED
@@ -68,7 +68,7 @@ class FV_Player_Subtitles {
|
|
68 |
if( $key == 'sh' ) $key = 'sr';
|
69 |
|
70 |
$objSubtitle = new stdClass;
|
71 |
-
if( $key == 'subtitles' ) {
|
72 |
$aLang = explode('-', get_bloginfo('language'));
|
73 |
if( !empty($aLang[0]) ) $objSubtitle->srclang = $aLang[0];
|
74 |
$sCode = $aLang[0];
|
@@ -92,18 +92,19 @@ class FV_Player_Subtitles {
|
|
92 |
|
93 |
} else {
|
94 |
$objSubtitle->srclang = $key;
|
95 |
-
$objSubtitle->label = $aLangs[strtoupper($key)];
|
96 |
}
|
97 |
|
98 |
|
99 |
$objSubtitle->src = $subtitles;
|
|
|
100 |
if( $countSubtitles == 0 && $fv_fp->_get_option('subtitleOn') ) {
|
101 |
-
$objSubtitle->
|
102 |
-
}
|
103 |
$aOutput[] = $objSubtitle;
|
104 |
|
105 |
$countSubtitles++;
|
106 |
-
}
|
107 |
|
108 |
if( count($aSubtitles) ) {
|
109 |
$aItem['subtitles'] = $aOutput;
|
68 |
if( $key == 'sh' ) $key = 'sr';
|
69 |
|
70 |
$objSubtitle = new stdClass;
|
71 |
+
if( $key == 'subtitles' ) {
|
72 |
$aLang = explode('-', get_bloginfo('language'));
|
73 |
if( !empty($aLang[0]) ) $objSubtitle->srclang = $aLang[0];
|
74 |
$sCode = $aLang[0];
|
92 |
|
93 |
} else {
|
94 |
$objSubtitle->srclang = $key;
|
95 |
+
$objSubtitle->label = $aLangs[strtoupper($key)];
|
96 |
}
|
97 |
|
98 |
|
99 |
$objSubtitle->src = $subtitles;
|
100 |
+
// default subtitle
|
101 |
if( $countSubtitles == 0 && $fv_fp->_get_option('subtitleOn') ) {
|
102 |
+
$objSubtitle->fv_default = true;
|
103 |
+
}
|
104 |
$aOutput[] = $objSubtitle;
|
105 |
|
106 |
$countSubtitles++;
|
107 |
+
}
|
108 |
|
109 |
if( count($aSubtitles) ) {
|
110 |
$aItem['subtitles'] = $aOutput;
|
readme.txt
CHANGED
@@ -359,7 +359,12 @@ Thank you for being part of the HMTL 5 mobile video revolution!
|
|
359 |
|
360 |
== Changelog ==
|
361 |
|
362 |
-
|
|
|
|
|
|
|
|
|
|
|
363 |
|
364 |
= 7.5.5.727 - 2021/09/09 =
|
365 |
|
359 |
|
360 |
== Changelog ==
|
361 |
|
362 |
+
= 7.5.7.727 - 2021/09/27 =
|
363 |
+
|
364 |
+
* Bugfix - HLS - live stream check - countdown fix
|
365 |
+
* Bugfix - Lightbox - image lightbox picks proper image caption for [caption] shortcodes
|
366 |
+
* Bugfix - Matomo/Piwik support - fix when running in subfolder
|
367 |
+
* Bugfix - Subtitles - remember disabled subtitles state even if subtitles on by default
|
368 |
|
369 |
= 7.5.5.727 - 2021/09/09 =
|
370 |
|
view/admin.php
CHANGED
@@ -1125,13 +1125,13 @@ function fv_flowplayer_admin_skin() {
|
|
1125 |
<?php
|
1126 |
$fv_fp->admin_preview_player = flowplayer_content_handle( array(
|
1127 |
'src' => 'https://player.vimeo.com/external/196881410.hd.mp4?s=24645ecff21ff60079fc5b7715a97c00f90c6a18&profile_id=174&oauth2_token_id=3501005',
|
1128 |
-
'splash' => 'https://i.vimeocdn.com/video/
|
1129 |
'autoplay' => 'false',
|
1130 |
'preroll' => 'no',
|
1131 |
'postroll' => 'no',
|
1132 |
'subtitles' => plugins_url('images/test-subtitles.vtt',dirname(__FILE__)),
|
1133 |
'caption' => "Foliovision Video;Lapinthrope Extras - Roy Thompson Hall Dance;Romeo and Juliet Ballet Schloss Kittsee",
|
1134 |
-
'playlist' => 'https://player.vimeo.com/external/224781088.sd.mp4?s=face4dbb990b462826c8e1e43a9c66c6a9bb5585&profile_id=165&oauth2_token_id=3501005,https://i.vimeocdn.com/video/
|
1135 |
'liststyle' => 'horizontal'
|
1136 |
) );
|
1137 |
$fv_fp->admin_preview_player = explode( '<div class="fp-playlist-external', $fv_fp->admin_preview_player );
|
1125 |
<?php
|
1126 |
$fv_fp->admin_preview_player = flowplayer_content_handle( array(
|
1127 |
'src' => 'https://player.vimeo.com/external/196881410.hd.mp4?s=24645ecff21ff60079fc5b7715a97c00f90c6a18&profile_id=174&oauth2_token_id=3501005',
|
1128 |
+
'splash' => 'https://i.vimeocdn.com/video/609485450-6fc3febe7ce2c2fda919a99c27a9cb904c645dcb944bc53ac7f3a228685305d8-d?mw=1280&mh=720',
|
1129 |
'autoplay' => 'false',
|
1130 |
'preroll' => 'no',
|
1131 |
'postroll' => 'no',
|
1132 |
'subtitles' => plugins_url('images/test-subtitles.vtt',dirname(__FILE__)),
|
1133 |
'caption' => "Foliovision Video;Lapinthrope Extras - Roy Thompson Hall Dance;Romeo and Juliet Ballet Schloss Kittsee",
|
1134 |
+
'playlist' => 'https://player.vimeo.com/external/224781088.sd.mp4?s=face4dbb990b462826c8e1e43a9c66c6a9bb5585&profile_id=165&oauth2_token_id=3501005,https://i.vimeocdn.com/video/643908843-984e68e66846a7a4b42bf5e854b65937217ed1b71759afa16afd4f81963900a6-d?mw=230&mh=130;https://player.vimeo.com/external/45864857.hd.mp4?s=94fddee594da3258c9e10355f5bad8173c4aee7b&profile_id=113&oauth2_token_id=3501005,https://i.vimeocdn.com/video/319116053-4745c7d678ba90ebabeadf58a65439b780c2ef26176176acc03eabbe87c8afda-d?mw=230&mh=130',
|
1135 |
'liststyle' => 'horizontal'
|
1136 |
) );
|
1137 |
$fv_fp->admin_preview_player = explode( '<div class="fp-playlist-external', $fv_fp->admin_preview_player );
|