﻿
// Note All FLV files must be stored in the '~/resources/flash/' directory.
jQuery.ShowModalMovie = function(flvMovie, settings, preHtml, postHtml, cmElementTagName) {

    var name = "#DynamicWin";

    var defaultMovie = { width: "100%", height: "100%", flashVars: "", volume: 80, fgcolor: "0x13ABEC", bgcolor: "0x051615" };
    var defaultSettings = { width: null, height: null, movie: { width: "100%", height: "100%", flashVars: "", volume: 80, fgcolor: "0x13ABEC", bgcolor: "0x051615"} };
    var _settings = {};
    var _movie = {};

    $.extend(_movie, defaultMovie, settings.movie);
    $.extend(_settings, defaultSettings, settings);
    _settings.movie = _movie;


    if (_settings.width != null)
        $(name + " .ModalWindow").css("width", _settings.width);
    else
        $(name + " .ModalWindow").css("width", "auto");
    if (_settings.height != null)
        $(name + " .ModalWindow").css("height", _settings.height);
    else
        $(name + " .ModalWindow").css("height", "auto");
    $(name + " .ModalWindow .ModalInnerWindow").html("");

    var objHtml = "<a href=\"" + $.GetAbsoluteRoot() + "Resources/Flash/" + flvMovie + "\" style=\"display:block;width:" + _settings.movie.width + ";height:" + _settings.movie.height + "\" id=\"player\"></a> "


    //var objHtml = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + _settings.movie.width + '" height="' + _settings.movie.height + '"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="' + src + '?' + _settings.movie.flashVars + '" /><embed src="' + src + '?' + _settings.movie.flashVars + '" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="' + _settings.movie.width + '" height="' + _settings.movie.height + '"></embed></object>';
    //var objHtml = AC_FL_GetContent('codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0', 'width', _settings.movie.width, 'height', _settings.movie.height, 'src', ((!DetectFlashVer(9, 0, 0) && DetectFlashVer(8, 0, 0)) ? 'player8' : 'resources/flash/player'), 'pluginspage', 'http://www.macromedia.com/go/getflashplayer', 'id', 'flvPlayer', 'allowFullScreen', 'true', 'movie', ((!DetectFlashVer(9, 0, 0) && DetectFlashVer(8, 0, 0)) ? 'player8' : 'resources/flash/player'), 'FlashVars', 'movie=' + flvMovie + '&bgcolor=' + _settings.movie.bgcolor + '&fgcolor=' + _settings.movie.fgcolor + '&volume=' + _settings.movie.volume.toString() + '&autoplay=on&autoload=on&autorewind=on');
    var object = jQuery(objHtml);

    if (preHtml != null)
        jQuery(preHtml).appendTo($(name + " .ModalWindow .ModalInnerWindow"))
    var msg = jQuery("<div/>").appendTo($(name + " .ModalWindow .ModalInnerWindow"));
    if (postHtml != null)
        jQuery(postHtml).appendTo($(name + " .ModalWindow .ModalInnerWindow"))
    jQuery("<div style=\"color:#999;font-size: 9px;text-align:right; padding-top:10px;\"><a href=\"http://get.adobe.com/flashplayer/\">Click here to install the latest version of Adobe Flash Player if you are having trouble viewing this video.</a></div>").appendTo($(name + " .ModalWindow .ModalInnerWindow"))
    var cmd = jQuery("<div class=\"modalCommands\"/>").appendTo($(name + " .ModalWindow .ModalInnerWindow"));

    msg.append(object);

    var btns = _settings.buttons;
    if (btns != null && btns.length > 0) {
        for (var i = 0; i < btns.length; i++) {
            var del = Function.createCallback(function(e, ctx) { e.preventDefault(); ctx.action(); $._CloseModal(e) }, btns[i]);
            var btn = jQuery("<a />").attr("href", "#").click(del).html(btns[i].text).appendTo(cmd);
            if (btns[i].className != null)
                btn.attr("class", btns[i].className);
        }
    }

    $._ShowModal(name);
    flowplayer("player", $.GetAbsoluteRoot() + "Resources/Flash/flowplayer-3.1.2.swf");
    $('.close', name).click(function(e) {
        //Cancel the link behavior
        e.preventDefault();
        $(name + " .ModalWindow .ModalInnerWindow object").css("visibility", "hidden");
        $(name + " .ModalWindow .ModalInnerWindow").html("");
        $._CloseModal(e);
    });

    if (cmElementTagName && cmCreatePageElementTag) {
        cmCreatePageElementTag(cmElementTagName, 'Video');
    }
    return false;
}

jQuery.ShowModal = function(message, settings) {

    var name = "#DynamicWin";

    if (settings.width != null)
        $(name + " .ModalWindow").css("width", settings.width);
    else
        $(name + " .ModalWindow").css("width", "auto");
    if (settings.height != null)
        $(name + " .ModalWindow").css("height", settings.height);
    else
        $(name + " .ModalWindow").css("height", "auto");
        
        
    $(name + " .ModalWindow .ModalInnerWindow").html("");
    var top = jQuery("<div/>");
    var msg = jQuery("<div/>").appendTo(top);
    var cmd = jQuery("<div class=\"modalCommands\"/>").appendTo(top);
    top.appendTo($(name + " .ModalWindow .ModalInnerWindow"))

    msg.html(message);

    var btns = settings.buttons;
    if (btns != null && btns.length > 0) {
        for (var i = 0; i < btns.length; i++) {
            var del = Function.createCallback(function(e, ctx) { e.preventDefault(); ctx.action(); $._CloseModal(e) }, btns[i]);
            var btn = jQuery("<a />").attr("href", "#").click(del).html(btns[i].text).appendTo(cmd);
            if (btns[i].className != null)
                btn.attr("class", btns[i].className);
        }
    }

    $._ShowModal(name);
    return false;
}

jQuery._ShowModal = function(id) {

    $("body").height("100%").css("overflow", "hidden");

    if (id.indexOf('#') > 0)
        id = id.substr(id.indexOf('#'));

    if ($(id).length == 0)
        return;



    //Get the screen height and width  
    var maskHeight = $(document).height();
    var maskWidth = $(window).width();

    //Set height and width to mask to fill up the whole screen  
    $('#mask').css({ 'width': maskWidth, 'height': maskHeight });



    //Get the window height and width  
    var winH = $(window).height();
    var winW = $(window).width();
    var winS = $(window).scrollTop();

//    if (document.documentElement && !document.documentElement.scrollTop) {
//        // IE6 +4.01 but no scrolling going on
//        winS = 0;
//    }
//    else if (document.documentElement && document.documentElement.scrollTop) {
//        // IE6 +4.01 and user has scrolled
//        winS = document.documentElement.scrollTop;
//    }
//    else if (document.body && document.body.scrollTop) {
//        // IE5 or DTD 3.2
//        winS = document.body.scrollTop;
//    }

    //Set the popup window to center
    var leftOffset = winW / 2 - $(id).width() / 2;
    var topOffset = (winH / 2 - $(id).height() / 2);
    $(id).css('top', winS + topOffset);
    $(id).css('left', leftOffset);
    //$(id).css('top', topOffset);
    //$(id).css('left', leftOffset);
    //$("body").height("100%").css("overflow", "hidden");

    $('#mask').show();
    $('#mask').fadeTo("fast", 0.5);

    $(id).show();

    $this = $(id);
    $(window).scroll(function() {
        $this.css("top", topOffset + $(document).scrollTop()).css("left", leftOffset + $(document).scrollLeft());
    });
    // Add custom logic to stop flash movies
    if ($('.FlashMovie', $(id)).length > 0) {
        $('.close', $(id)).click(function(e) {
            e.preventDefault();
            var movies = $('.FlashMovie');
            for (var i = 0; i < movies.length; i++) {
                if (movies[i].IsPlaying()) {
                    //debugger;
                    movies[i].StopPlay();
                }
            }
        });
    }
}

jQuery._BuildModals = function(parent) {
    //debugger;
    if (parent == jQuery)
        parent = document;
    $('a[name=modal]', parent).click(function(e) {
        //Cancel the link behavior
        e.preventDefault();
        $._ShowModal($(this).attr('href'));
    });
    $('.window .close', parent).click($._CloseModal);
}

$._CloseModal = function (e) {
    //Cancel the link behavior
    //debugger;
    e.preventDefault();
    $("embed").css("visibility", "hidden")
    $('#mask, .window').hide();
    $("body").height("auto").css("overflow", "auto");
    if (jQuery.browser.safari) {
        $("body").height("auto").css("overflow", "auto");
    }
}

$(document).ready($._BuildModals);


jQuery.ShowCCPRVideoModal = function(pageName) {

    return $.ShowModalMovie(
                'CCPR-2009_02.f4v',
                { width: '550px', movie: { width: '500px', height: '309px'} },
                "<div style=\"white-space:nowrap;\"><a href=\"" + $.GetAbsoluteRoot() + "Testimonials\"><img src=\"" + $.GetAbsoluteRoot() + "App_Themes/Default/Images/ImageButtons/Testimonials_STD.png\" border=\"0\" /></a>&nbsp;&nbsp;&nbsp;<a href=\"" + $.GetAbsoluteRoot() + "Report\"><img src=\"" + $.GetAbsoluteRoot() + "App_Themes/Default/Images/ImageButtons/LearnMore_STD.png\" border=\"0\" /></a>&nbsp;&nbsp;&nbsp;<a href=\"" + $.GetAbsoluteRoot() + (($.IsAuthenticated() == true) ? "CCPR/OptionChoice" : "Profile/AccountCreate/CCPR^OptionChoice") + "\"><img src=\"" + $.GetAbsoluteRoot() + "App_Themes/Default/Images/ImageButtons/GetStarted_CTA.png\" border=\"0\" /></a></div>"
                , null
                , 'CCPR - ' + pageName);
            }

jQuery.ShowSuggestorVideoModal = function(pageName) {
return $.ShowModalMovie(
                'suggestor_video.f4v',
                { width: '550px', movie: { width: '500px', height: '309px'} },
                "<div style=\"white-space:nowrap;\"><a href=\"" + $.GetAbsoluteRoot() + "Testimonials\"><img src=\"" + $.GetAbsoluteRoot() + "App_Themes/Default/Images/ImageButtons/Testimonials_STD.png\" border=\"0\" /></a>&nbsp;&nbsp;&nbsp;<a href=\"" + $.GetAbsoluteRoot() + "CollegeSuggestor\/Explained\"><img src=\"" + $.GetAbsoluteRoot() + "App_Themes/Default/Images/ImageButtons/LearnMore_STD.png\" border=\"0\" /></a>&nbsp;&nbsp;&nbsp;<a href=\"" + $.GetAbsoluteRoot() + "College\/Selector\"><img src=\"" + $.GetAbsoluteRoot() + "App_Themes/Default/Images/ImageButtons/GetStarted_CTA.png\" border=\"0\" /></a></div>"
                , null
                , 'Suggestor - ' + pageName);

}
jQuery.ShowGuaranteeModal = function() {
  var header = "Try our service risk free!";
  var msg = "<p style='font-size: 13pt; line-height: 15pt;'>If you are not satisfied with the service you receive, or the <span class='Color1 Italic Bold'>  College Cost &amp; Planning Report&trade;</span> "
          + "is not what you expected, and we are not able to resolve your concerns within 30 days of purchase, we will refund your service fee.</p>";

  return $.ShowModal('<div style="padding: 0px 40px;"><h1>' + header + '</h1><br/><br/>' + msg + '</div>', { width: '45em', height: '300px' });
}