﻿var pathName = window.location.pathname;
pathName = pathName.replace(/(\W|_)/g, "").toLowerCase();
// skins, video file, and cue point can be defined on video page
if (typeof skinPP == "undefined")
    var skinPP = '/scripts/jwplayer/FBS-PlayPause.zip'; // set default skin here
if (typeof skinFC == "undefined")
    var skinFC = '/scripts/jwplayer/FBS-FullControls.zip'; // set default skin here
if (typeof cuePoint == "undefined")
    var cuePoint = 20 * 60 + 00; // set default cue point
if (typeof cloudFrontStreamingDistribution == "undefined")
    var cloudFrontStreamingDistribution = 'rtmp://s23128zv8j1ley.cloudfront.net/cfx/st';  // set default streamer
if (typeof downloadVideoUrl == "undefined")
    var downloadVideoUrl = '';
if (typeof videoPreviewImageUrl == "undefined")
    var videoPreviewImageUrl = "";
if (typeof autoStart == "undefined")
    var autoStart = "true";

$(function () {

    // show the order button to return visitors
    if (readCookie('orderButton' + pathName) != null) {
        $('#orderButton').show();
    }
    createCookie('orderButton' + pathName, 'true', 120);

    if (typeof streamingVideoFileName != "undefined") {
        // if user previously finished watching video, load full controls
        if (readCookie('finishedVideo') != null) {
            // load and start a new video player w/ full controls
            jwplayer('container').setup({
                skin: skinFC,
                file: streamingVideoFileName,
                provider: 'rtmp',
                streamer: cloudFrontStreamingDistribution,
                image: videoPreviewImageUrl,
                autostart: autoStart,
                icons: 'false',
                stretching: 'exactfit',
                volume: '100',
                modes: [
                    { type: 'flash', src: '/scripts/jwplayer/player.swf' },
                    {
                        type: 'html5',
                        config: {
                            'file': downloadVideoUrl,
                            'provider': 'video'
                        }
                    },
                    {
                        type: 'download',
                        config: {
                            'file': downloadVideoUrl,
                            'provider': 'video'
                        }
                    }
                ],
                events: { // don't listen for cue point because orderButton cookie is already set
                    onReady: function () {
                        if (readCookie('VidTimer') != null) {
                            // resume playing where left off
                            jwplayer('container').seek(readCookie('VidTimer'));
                        }
                    },
                    onComplete: function () {
                        $('#video').slideUp('slow');
                        $('#replay').slideDown('slow');
                    }
                }
            });

            // else, load play/pause player
        } else {

            // load and start a new video player w/ play/pause controls
            jwplayer('container').setup({
                skin: skinPP,
                file: streamingVideoFileName,
                provider: 'rtmp',
                streamer: cloudFrontStreamingDistribution,
                image: videoPreviewImageUrl,
                autostart: autoStart,
                icons: 'false',
                stretching: 'exactfit',
                volume: '100',
                modes: [
                    { type: 'flash', src: '/scripts/jwplayer/player.swf' },
                    {
                        type: 'html5',
                        config: {
                            'file': downloadVideoUrl,
                            'provider': 'video'
                        }
                    },
                    {
                        type: 'download',
                        config: {
                            'file': downloadVideoUrl,
                            'provider': 'video'
                        }
                    }
                ],
                events: {
                    onReady: function () {
                        if (readCookie('VidTimer') != null) {
                            // resume playing where left off
                            jwplayer('container').seek(readCookie('VidTimer'));
                        }
                    },
                    onTime: function (evt) {
                        if (evt.position > cuePoint && evt.position < cuePoint + 1) { //cuePoint must be defined on video page
                            $('#orderButton').show();
                        }
                    },
                    onComplete: function () {
                        createCookie('finishedVideo', 'true', 14);
                        $('#video').slideUp('slow');
                        $('#replay').slideDown('slow');
                    }
                }
            });
        }
    }
    $('#replay').click(function () {

        $('#replay').slideUp('slow');
        $('#video').slideDown('slow');

        if (typeof streamingVideoFileName != "undefined") {
            jwplayer('container').remove();

            // load and start a new video player w/ full controls
            jwplayer('container').setup({
                skin: skinFC,
                file: streamingVideoFileName,
                provider: 'rtmp',
                streamer: cloudFrontStreamingDistribution,
                image: videoPreviewImageUrl,
                autostart: autoStart,
                icons: 'false',
                stretching: 'exactfit',
                volume: '100',
                modes: [
                    { type: 'flash', src: '/scripts/jwplayer/player.swf' },
                    {
                        type: 'html5',
                        config: {
                            'file': downloadVideoUrl,
                            'provider': 'video'
                        }
                    },
                    {
                        type: 'download',
                        config: {
                            'file': downloadVideoUrl,
                            'provider': 'video'
                        }
                    }
                ],
                events: { // on replay, don't seek and don't listen for cue point
                    onComplete: function () {
                        $('#video').slideUp('slow');
                        $('#replay').slideDown('slow');
                    }
                }
            });
        }
    });
});
// save player position to be able to resume
$(window).unload(function () {
    if (typeof streamingVideoFileName != "undefined" && typeof disableResume == "undefined") {
        if (jwplayer().getPosition() < jwplayer().getDuration() - 1) {
            createCookie('VidTimer', jwplayer().getPosition(), 1);
        } else {
            createCookie('VidTimer', '', -1);
        }
    }
});
