youtubenice.js 5.43 KB
/**
 * Created by Administrator on 5/9/2016.
 */
//        // Based on the YouTube ID, we can easily find the thumbnail image
//jQuery('.tv_video_image').attr('src', '//i.ytimg.com/vi/' + videoid + '/sddefault.jpg');
//
var tag = document.createElement('script');
//
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

createPlayer();
// 3. This function creates an <iframe> (and YouTube player)
//    after the API code downloads.
var player;
var $i = 0;
//var videoid = 'pY92umU8VsQ';
function createPlayer() {
    var loadIframe = setInterval(function () {
        var element = document.getElementById('player');
        if (element !== null && typeof (YT) != 'undefined' && typeof (YT.Player) != 'undefined')
        {
            if (fgc_current_page == 'home-page') {//Homepage video
                player = new YT.Player('player', {
                    height: height,
                    width: width,
                    videoId: videoid,
                    playerVars: {
                        'showinfo': 0,
                        'rel': 0,
                        'autoplay': 0
                    },
                    events: {
                        'onReady': onPlayerReady,
                        'onStateChange': onPlayerStateChange
                    }
                });
            } else {
                player = new YT.Player('player', {//Deadpan video
                    height: height,
                    width: width,
                    videoId: videoid,
                    playerVars: {
                        'rel': 0,
                        'autoplay': 0
                    },
                    events: {
                        'onReady': onPlayerReady
                    }
                });
            }
            $i = 1000;
        }
        $i++;

        resizeIframeHome();
        if ($i > 1000) {
            clearInterval(loadIframe);
        }
    }, 100);

}
// 4. The API will call this function when the video player is ready.
function onPlayerReady(event) {
    // var is_safari = navigator.userAgent.indexOf("Safari") > -1;
    var OSName = "Unknown OS";
    if (navigator.appVersion.indexOf("Mac") != -1)
        OSName = "MacOS";
    screenWidth = jQuery(window).width();

    if (OSName == "MacOS") {
        setInterval(function () {
            resizeIframeHome();
        }, 300);

        setInterval(function () {
            jQuery('.home .fluid-width-video-wrapper').css('opacity', '1');
        }, 1500);
    } else {
        resizeIframeHome();
        jQuery('.home .fluid-width-video-wrapper').css('opacity', '1');
    }
    if (screenWidth > 746) {
        if (vid_autoplay_cookie()) {
            event.target.playVideo();
        }
    }
//    if (document.cookie.indexOf("enableTrackingPause") !== -1 && fgc_current_page == 'home-page') {
//        ga('send', {
//            hitType: 'event',
//            eventCategory: 'Play homepage video',
//            eventAction: 'Play homepage video',
//            eventLabel: 'Play homepage video',
//            nonInteraction: 1
//        });
//    }
}

function onPlayerStateChange(event) {
    if (event.data == YT.PlayerState.PAUSED && document.cookie.indexOf("enableTrackingPause") !== -1) {
        ga('send', {
            hitType: 'event',
            eventCategory: 'Pause homepage video',
            eventAction: 'Pause homepage video',
            eventLabel: 'Pause homepage video',
            nonInteraction: 1
        });
    }
    if (event.data == YT.PlayerState.PLAYING && document.cookie.indexOf("enableTrackingPlay") !== -1) {
        ga('send', {
            hitType: 'event',
            eventCategory: 'Play homepage video',
            eventAction: 'Play homepage video',
            eventLabel: 'Play homepage video',
            nonInteraction: 1
        });
    }
}

function vid_autoplay_cookie() {
    if (jQuery('.home.page').length > 0) {
        var vid_autoplay = jQuery.cookie('vid_autoplay');
        if ((typeof vid_autoplay == 'undefined') || (vid_autoplay == null)) {//Cookie haven't set
            jQuery.cookie('vid_autoplay', '1', {expires: 90, path: '/'});
            return true;
        } else {
            return false;
        }
    }
    else {
        return false;
    }
}

//var videotitle = '';
jQuery(function () {
    if (parseFloat(jQuery(window).width()) > 768) {
//        if (jQuery('.home.page').length > 0) {
//            jQuery.getJSON("https://www.googleapis.com/youtube/v3/videos", {
//                key: "AIzaSyBzxyy3UCRxb-covsQ9NuH8j3Gxc5Crg1I",
//                part: "snippet,statistics",
//                id: videoid
//            }, function (data) {
//                videotitle = data.items[0].snippet.title;
//            }).fail(function (jqXHR, textStatus, errorThrown) {
//
//            });
//        }
        jQuery(window).resize(function () {
//        width="560" height="315"
            resizeIframeHome();
        });
    }
    else {
        return false;
    }
})

function resizeIframeHome() {
    if (jQuery('.home iframe').length > 0) {
        $height = (jQuery('.home iframe').outerWidth() / 560 * 315);
        jQuery('.home iframe').css('height', $height + 'px');
    }
}

function is_home_page() {
    return (jQuery('.home.page').length > 0);
}

jQuery('.thumb-video').on('tap', function () {
    var url = jQuery(this).attr('data-url');
    player.cueVideoById(url);
    player.playVideo();
});