/**
 * homepage extends page.
 *
 * @author geraldyeo
 */
var homePage = function(spec){
    var that = htmlPage(spec);
    
    function hideNews(){
        $("#close").click();
    }
    
    function autoNews(){
        $("#open").click();
        delegate.callLater(5000, this, hideNews);
    }
    
    function embedFlvPlayer() {
        $("a.media").each(function(i, item){
            var $item = $(item);
            var meta = $.metadata.get(item);
            var playerid = 'flvplayer'+i;
            var $flvplayer = $('<div id="'+playerid+'" />'); 
            $item.parent().append($flvplayer);
            $item.remove();
            
            // check for flv
            var vidUri = $item.attr('href');
            vidUri = vidUri.toLowerCase();
            if (vidUri.indexOf('flv') === -1) {
                alert("Media is not an FLV file.");
                return;
            }
            
            var flashvars = {
                flvPath: vidUri,
                autoPlay: meta.autoplay
            };
            var params = {
                base: ".",
                allowscriptaccess: "always"
            };
            var attributes = {
                id: playerid
            };
            
            if (swfobject) {
                swfobject.embedSWF(that.flvPlayerPath, playerid, meta.width, meta.height, "9.0.0", that.expressInstallPath, flashvars, params, attributes);
            }
        });
    }
    
    // members
    
    that.flvPlayerPath = '/cineplexes/media/swf/trailerplayer.swf';
    that.expressInstallPath = "/cineplexes/media/swf/expressInstall.swf";
    
    var load = function(path){
        $("#main_content").load(path, "", function(){
            $("#motm").css({
                display: "none"
            }).fadeIn(200);
            
            // prep motm
            embedFlvPlayer();
            
            // prep news panel
            $("#panel").hide();
            
            // add open event
            $("#open").click(function(evt){
                $("div#panel").slideDown("slow");
                evt.preventDefault();
            });
            
            // add close event
            $("#close").hide().click(function(evt){
                $("div#panel").slideUp("slow");
                evt.preventDefault();
            });
            
            // add toggle event
            $("#toggle a").click(function(evt){
                $("#toggle a").toggle();
            });
            
            delegate.callLater(1000, this, autoNews);
        });
    };
    that.load = load;
    
    var setPageTakeover = function(path){
        var $pageTakeover = $("#page-takeover");
        if ($pageTakeover.length === 0) {
            $pageTakeover = $('<div id="page-takeover" />');
            $("div.container_12").after($pageTakeover);
        }
        // todo:load
    };
    that.setPageTakeover = setPageTakeover;
    
    
    return that;
};
