/* Globals */

// Flash banner

var bannervars = { xmlsource: "/HomepageBannerXML.aspx%3F" + Math.random() };
var bannerparams = { wmode: "opaque", allowScriptAccess: "always"  };

// Video player
var player;
var flashRequired = "9.0.15";
var homepageVideos = {
streamer: "rtmp://83.142.31.91/vod/atg_cms/",
    file: "/HomepageVidoePlaylistXML.aspx%3F" + Math.random(),
    skin: "/flash/skin-2.0.swf",
    controlbar: "over",
    backcolor: "666666",
    lightcolor: "0099ff",
    frontcolor: "ffffff",
    displayclick: "none",
    bufferlength: 10,
    stretching: "uniform"
};
homepageVideosParams = { wmode: "opaque", allowScriptAccess: "always", allowFullScreen: "true" };

// Thumbnails scroller settings
var scrollSettings = {
    axis: "x",
    step: 4,
    exclude: 3,
    items: "li",
    next: ".video_thumbs .next",
    prev: ".video_thumbs .prev",
    cycle: false,
    duration: 500,
    onBefore: disableButtons
}

/* Init */

function HomeAjaxInit() {

    // Load AJAX panels
    $.post("/ajax_tabs.aspx", drawResults_Tabs,"html");
    $.post("/ajax_blogs.aspx", {pageSize : 2 ,page: 1},drawResults_Blog,"html");
    $.post("/ajax_news.aspx", {pageSize : 2 ,page: 1},drawResults_News,"html");
    //$.post("/ajax_events.aspx", {pageSize : 2 ,page: 1},drawResults_Event,"html");
    $.post("/ajax_quicklinks.aspx", { pageSize: 2, page: 1 }, drawResults_QuickLinks, "html");
    
    // Power PC flash < 10 has a nasty video bug
    
    if(navigator.userAgent.search(/PPC Mac OS X/) != -1) {
        flashRequired = "10";
    }
	
	// Flash banner
	
	swfobject.embedSWF("/flash/banner.swf", "flashcarousel", "100%", "300", "9.0.0","",bannervars,bannerparams);
    
    // Video player

    if (swfobject.hasFlashPlayerVersion(flashRequired)) {
        swfobject.embedSWF("/flash/player4.2.swf", 'vplayer', "384", "215", "9.0.15","",homepageVideos,homepageVideosParams,{ name: 'vplayer' });
    }
    else {
        $("#vplayer").html('<div class="getflash"><p>You need Adobe Flash Player (' + flashRequired + ') installed to view video on this site.</p><a href="http://get.adobe.com/flashplayer/"><img src="/images/get_flash.jpg" width="160" height="41" alt="Get Adobe Flash Player" title="" /></a>');
    }

}

/* Video player functions */

// Callback function when the player is loaded

function playerReady(obj) {
	player = document.getElementById(obj['id']);
	
	// Setup the other callbacks
    player.addControllerListener("PLAYLIST","playerDrawThumbs");
    player.addControllerListener("ITEM","playerChangeItem");
};

function playerChangeItem(obj) {
    var config = player.getConfig();
	var playlist = player.getPlaylist();
    $("#nowplaying").html("Now playing:<br/><strong>" + playlist[config.item].title + "</strong>");
	$("#nowplaying_link").attr("href",playlist[config.item].moreinfo).show();
};

function playerDrawThumbs(obj) {
   var playlist = player.getPlaylist();
   $(".video_scroller").html("<ul></ul>");
   var thumbs = $(".video_scroller ul");
   playerChangeItem(obj);
  
    // Add the thumbnails below the player

    for(var i = 0; i < playlist.length; i ++) {
        var eachThumb = $('<li id="vid' + i + '"><a href="#"><img width="91" height="61" src="' + playlist[i].thumb + '" /></a></li>');
        eachThumb.bind("click",playerThumbClick);
        thumbs.append(eachThumb);
    }
    
    // When the image has loaded, add a reflection below it
    
    thumbs.find("img").each(function(){
        $(this).load(function(){
            Reflection.add(this,{ height: 1/3 });
        });
    });
    
    // Initialise the scroller for the thumbs

    $(".video_scroller").serialScroll(scrollSettings);
    if($(".video_scroller ul").length > scrollSettings.step);
        $(scrollSettings.next).removeClass("disabled");

}

function playerThumbClick(e) {
    var item = $(this).attr("id").split("vid")[1];
    player.sendEvent("ITEM",item);
    return false;
}


// Function to disable the buttons on the thumbnail scroller
function disableButtons(e,elem,$pane,$items,pos) {
    // The object with the scroller's settings in it
    var conf = scrollSettings
	
    // Class the buttons appropriately
    $(conf.prev).removeClass("disabled");
    $(conf.next).removeClass("disabled");

    if( pos == 0 )
        $(conf.prev).addClass("disabled");
    else if( pos == $items.length- conf.step)
        $(conf.next).addClass("disabled");
}

/* Pormotion Default Functions */

function LoadTheatre(getTabid,getTabtype,TabSeq){
   var defaultPageid
   defaultPageid = 1
   var urlpormo = "/ajax_pormotions.aspx?page="+defaultPageid+"&TabObjectID="+getTabid+"&TabObjectType="+getTabtype;
        if(window.XMLHttpRequest) {
                reqpormo = new XMLHttpRequest();
        } else if(window.ActiveXObject) {
                reqpormo = new ActiveXObject("Microsoft.XMLHTTP");
        }
        reqpormo.open("GET", urlpormo, true);
        reqpormo.onreadystatechange = calback_pormo;
        reqpormo.send(null);
}

function calback_pormo() {     
        objpormo = document.getElementById("pormo");
        
		if(reqpormo.readyState == 4) {
                if(reqpormo.status == 200) {
                        response = reqpormo.responseText;
                        $(objpormo).hide();
                        $(objpormo).removeClass("loading").html(response);
                        $(objpormo).fadeIn(500);
                } else {
                        alert("There was a problem retrieving the data:\n" + req.statusText);
                }
        }
}

function LoadTabs(getTabid){
        $.post("/ajax_tabs.aspx?tabid="+getTabid, drawResults_Tabs,"html");
}

/* Pormotion Navigation Functions */
var reqpormo;

function nav_pormo(GetPageNo,getTabid,getTabtype) {
        var urlpormo = "/ajax_pormotions.aspx?page="+GetPageNo+"&TabObjectID="+getTabid+"&TabObjectType="+getTabtype;
        if(window.XMLHttpRequest) {
                reqpormo = new XMLHttpRequest();
        } else if(window.ActiveXObject) {
                reqpormo = new ActiveXObject("Microsoft.XMLHTTP");
        }
        reqpormo.open("GET", urlpormo, true);
        reqpormo.onreadystatechange = calback_pormo;
        reqpormo.send(null);
}


/* News Navigation Functions */


var reqnews;

function nav_news(GetPageNo) {
        var urlnews = "/ajax_news.aspx?page="+GetPageNo;
        if(window.XMLHttpRequest) {
                reqnews = new XMLHttpRequest();
        } else if(window.ActiveXObject) {
                reqnews = new ActiveXObject("Microsoft.XMLHTTP");
        }
        reqnews.open("GET", urlnews, true);
        reqnews.onreadystatechange = calback_news;
        reqnews.send(null);
}

function calback_news() {        
        objnews = document.getElementById("news");
		if(reqnews.readyState == 4) {
                if(reqnews.status == 200) {
                        response = reqnews.responseText;
                        $(objnews).hide();
                        $(objnews).html(response);
                        $(objnews).fadeIn(500);
                } else {
                        alert("There was a problem retrieving the data:\n" + req.statusText);
                }
        }
}

/*End News Ajax*/


/* Blogs Navigation Functions */


var reqblogs;

function nav_blogs(GetPageNo) {
        var urlblogs = "/ajax_blogs.aspx?page="+GetPageNo;
        if(window.XMLHttpRequest) {
                reqblogs = new XMLHttpRequest();
        } else if(window.ActiveXObject) {
                reqblogs = new ActiveXObject("Microsoft.XMLHTTP");
        }
        reqblogs.open("GET", urlblogs, true);
        reqblogs.onreadystatechange = calback_blogs;
        reqblogs.send(null);
}

function calback_blogs() {        
        objblogs = document.getElementById("blog");
      
		if(reqblogs.readyState == 4) {
		    if (reqblogs.status == 200) {
                        response = reqblogs.responseText;
                        $(objblogs).hide();
                        $(objblogs).html(response);
                        $(objblogs).fadeIn(500);
                } else {
                        alert("There was a problem retrieving the data:\n" + reqblogs.statusText);
                }
        }
}

/*End Blogs Ajax*/

/* Events Navigation Functions */


var reqrss;

function nav_rss(GetPageNo) {
        var urlrss = "/ajax_events.aspx?page="+GetPageNo;
        if(window.XMLHttpRequest) {
                reqrss = new XMLHttpRequest();
        } else if(window.ActiveXObject) {
                reqrss = new ActiveXObject("Microsoft.XMLHTTP");
        }
        reqrss.open("GET", urlrss, true);
        reqrss.onreadystatechange = calback_rss;
        reqrss.send(null);
}

function calback_rss() {        
        objrss = document.getElementById("rss");
        
		if(reqrss.readyState == 4) {
                if(reqrss.status == 200) {
                        response = reqrss.responseText;
                        $(objrss).hide();
                        $(reqrss).html(response);
                        $(objrss).fadeIn(500);
                } else {
                        alert("There was a problem retrieving the data:\n" + req.statusText);
                }
        }
}
/*End Events Ajax*/


/* QuickLInks Navigation Functions */


var reqquicklinks;

function nav_quicklinks(GetPageNo) {
    var urlquicklinks = "/ajax_quicklinks.aspx?page=" + GetPageNo;
    if (window.XMLHttpRequest) {
        reqquicklinks = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
    reqquicklinks = new ActiveXObject("Microsoft.XMLHTTP");
    }
    reqquicklinks.open("GET", urlquicklinks, true);
    reqquicklinks.onreadystatechange = calback_quicklinks;
    reqquicklinks.send(null);
}

function calback_quicklinks() {
    objquicklinks = document.getElementById("quicklinks");

    if (reqquicklinks.readyState == 4) {
        if (reqquicklinks.status == 200) {
            response = reqquicklinks.responseText;
            $(objquicklinks).hide();
            $(reqquicklinks).html(response);
            $(objquicklinks).fadeIn(500);
        } else {
            alert("There was a problem retrieving the data:\n" + req.statusText);
        }
    }
}
/*End QuickLInks Ajax*/

/* Functions */

function ytVideoURL(id) {
    //Video: http://www.youtube.com/v/VIDEO_ID&hl=en&enablejsapi=1
    return "http://www.youtube.com/v/" + id + "&hl=en&enablejsapi=1";
}

function ytImageURL(id) {
    //Image: http://img.youtube.com/vi/VIDEO_ID/default.jpg
    return "http://img.youtube.com/vi/" + id + "/default.jpg";
}

////display Tabs results
function drawResults_Tabs(data) {

   $("#cardmenu").html(data);
}


//display PROMOTION results
function drawResults_Pormotions(data) {
    $("#pormo").removeClass('loading').html(data);
}

//display BLOG results
function drawResults_Blog(data) {

   $("#blog").html(data);
}

//display NEWS results
function drawResults_News(data) {

   $("#news").html(data);
}

//display RSS results
function drawResults_Event(data) {

   $("#rss").html(data);
}

//display Quick Links results
function drawResults_QuickLinks(data) {

    $("#quicklinks").html(data);
}


/* Load init */
$(document).ready(HomeAjaxInit);


    /*
        Send the page to friend
    */
        
       var emailformdiaplay=false;
        
       function showEmailform() {
       
       var iframe = document.getElementById("iframeEmailForm");
       if (!emailformdiaplay)
       {
       iframe.style.display="";
       emailformdiaplay=true;   
       }
       else{
       iframe.style.display="none";
       emailformdiaplay=false;
       iframe.src=iframe.src;
       }
       
    }