﻿/// <reference path="jquery-1.4.2-vsdoc.js" />

var settings = {};
var videoCode = '<div class="linkVideo" style="position:absolute;"><div class=".slideMask2" style="text-align:right;padding:5px; cursor:pointer;" onclick="stopVideo()"><span style="color:#ffffff;font-weight:bold;">Close</span><div>##embedCode##</div>';

jQuery.fn.videoPlayer = function(config) {

    if (settings[config.videoId]) {
        if (!settings[config.videoId].push) {
            settings[config.videoId] = [settings[config.videoId]];
        }
        settings[config.videoId].push(config || '');
    } else {
        settings[config.videoId] = config || '';
    }

//    var parentDiv = $(this);
//    parentDiv.css({ width: settings.width, height: settings.height, overflow: 'hidden', position: 'relative' });

    $(document).keyup(function(e) { if (e.keyCode == 27) { stopVideo(); } })
}


function playVideo(videoId) {
    var parentDiv = $(settings[videoId].target).parent().parent();
    var formattedVideoCode = videoCode.replace('##embedCode##', settings[videoId].source);

    $('<div class="slideMask" style="display:block; z-index:1000; float:left; position:absolute; top:0px; left:0px;">' + formattedVideoCode + '</div>').insertAfter(parentDiv);
    var slideMask = $('.slideMask');
    slideMask.height($(document).height()).width($(window).width());

    var linkVideo = $('.linkVideo');
    var flashObj = $('.slideMask object');
    // mds: Original version assumed a certain page layout.
    // linkVideo.css('top', (linkVideo.parent().parent().parent().height() / 2) - (flashObj.attr('height') / 2));
    // mds: To make the video display in the vertical center, I used the window height / 2 plus the window scrollTop.
    linkVideo.css('top', (($(window).height() / 2) + $(window).scrollTop()) - (flashObj.attr('height') / 2));
    linkVideo.css('left', (linkVideo.parent().parent().width() / 2) - (flashObj.attr('width') / 2));

    slideMask.stop().fadeTo(1000, .85);
    return false;
}

function stopVideo() {
    var slideMask = $('.slideMask');

    if (slideMask.size() > 0) {
        $('.linkVideo').stop().fadeOut(200);
        slideMask.stop().fadeOut(1000, function() { slideMask.remove(); });
    }
}
