function p_o(o){return document.getElementById(o);}

// Body onload activity
function template_init(){
    createCanvasChanger();
    jQuery('#canvascarousel').jcarousel({
        scroll:10, 
        animation: 2000, 
        wrap: "circular" 
     });
            //search functions
	      var ghostText = "Find Something Awesome";
	      $("#GH_search_field").focus(function(eventObject) { if (this.value == ghostText) { this.value = ""; } }).blur(function(eventObject) { if (this.value == "") { this.value = ghostText; } });
	      $("#FT_search_field").focus(function(eventObject) { if (this.value == ghostText) { this.value = ""; } }).blur(function(eventObject) { if (this.value == "") { this.value = ghostText; } });
             $("#games_search_field").focus(function(eventObject) { if (this.value == ghostText) { this.value = ""; } }).blur(function(eventObject) { if (this.value == "") { this.value = ghostText; } });
             $("#mid_search_field").focus(function(eventObject) { if (this.value == ghostText) { this.value = ""; } }).blur(function(eventObject) { if (this.value == "") { this.value = ghostText; } }); 
             $("#vgSearchField").focus(function(eventObject) { if (this.value == ghostText) { this.value = ""; } }).blur(function(eventObject) { if (this.value == "") { this.value = ghostText; } }); 

	jQuery('#TopSliderwrap').addClass('TopSliderwrap');
	jQuery("#topjcarousel").css("display","block");
	jQuery('#topjcarousel').jcarousel({scroll:3,animation: 2000,wrap:"circular"});
	jQuery('#mycarousel').jcarousel({scroll:4,animation: 2000,wrap:"circular"});
	jQuery("#contentBtImgMod > div:eq(3)").add("#contentBtImgMod > div:eq(4)").addClass("secondRowTop");
	//jQuery('#topjcarousel').jcarousel({scroll:3,animation: 2000,wrap:"circular"});
	jQuery("#GH_nav > li").hover(function(){
		$LI_ID = "#" + jQuery(this).attr("id");
		$LI_DD_ID = $LI_ID + "_listDiv";
		$NAV_ARROW = $LI_ID + "_arrowActive";
		jQuery($LI_DD_ID).show();
		jQuery($LI_ID).css({'background':'#282828'});
		jQuery($NAV_ARROW).addClass("arrowActive");
	},function(){
		jQuery($LI_DD_ID).hide();
		jQuery($LI_ID).css({'background':'#1D1D1D'});
		jQuery($NAV_ARROW).removeClass("arrowActive");
	});	
	jQuery("#GH_hat_more_link").hover(function(){
		jQuery("#GH_more_list").show();
	},function(){
		jQuery("#GH_more_list").hide();
	});	
	/*Be sure to use the appropriate list IDs*/
	jQuery('#vGSlider_A_Tab_A').add('#vGSlider_B_Tab_A').add('#vGSlider_C_Tab_A')
		  .add('#vGSlider_D_Tab_A').add('#vGSlider_E_Tab_A')

		  .add('#vGSlider_A_Tab_B').add('#vGSlider_B_Tab_B')
		  .add('#vGSlider_C_Tab_B').add('#vGSlider_D_Tab_B')
		  .add('#vGSlider_E_Tab_B')

                   .add('#vGSlider_A_Tab_C').add('#vGSlider_B_Tab_C').add('#vGSlider_C_Tab_C')
		  .add('#vGSlider_D_Tab_C').add('#vGSlider_E_Tab_C')

		  .add('#vGSlider_A_Tab_D').add('#vGSlider_B_Tab_D')
		  .add('#vGSlider_C_Tab_D').add('#vGSlider_D_Tab_D')
		  .add('#vGSlider_E_Tab_D')

		  .add('#vGSlider_A_Tab_E').add('#vGSlider_B_Tab_E')
		  .add('#vGSlider_C_Tab_E').add('#vGSlider_D_Tab_E')
		  .add('#vGSlider_E_Tab_E')

		  .jcarousel({
				scroll:5, /*# of visible images on the carousel*/
				animation: 2000, /*scroll speed*/
				wrap: "circular" /*circular navigation when the end or start is reached*/
		  });
        /*Be sure to use the appropriate list IDs for Music, stars and TV hub pages*/
	jQuery('#hGSlider_A_Tab_A').add('#hGSlider_B_Tab_A').add('#hGSlider_C_Tab_A')
		  .add('#hGSlider_D_Tab_A').add('#hGSlider_E_Tab_A')
		  .add('#hGSlider_A_Tab_B').add('#hGSlider_B_Tab_B')
		  .add('#hGSlider_C_Tab_B').add('#hGSlider_D_Tab_B')
		  .add('#hGSlider_E_Tab_B')
		  .jcarousel({
				scroll:3, /*# of visible images on the carousel*/
				animation: 2000, /*scroll speed*/
				wrap: "circular" /* circular navigation when the end or start is reached*/
		  });

	/*The following is to deal with the sprite images*/         
	jQuery("div.vGTabs div[class$='jcarousel-container-horizontal']").addClass('gamesSprite');
	jQuery("div.vGTabs div[class*='jcarousel-prev-horizontal']").addClass('gamesSprite');
	jQuery("div.vGTabs div[class*='jcarousel-next-horizontal']").addClass('gamesSprite');
	/*Tabs handler*/
        jQuery("div.vGCarouselHolder").css({"visibility":"visible"});
	var $tabContainers = $('div.vGTabs > div');
	$tabContainers.hide().filter(':first').show();
	$('div.vGTabs ul.vGTabNavigation li:first').removeClass('gamesSprite').addClass('selected');
	$('div.vGTabs ul.vGTabNavigation li').click(function () {
		$tabContainers.hide();
		$($(this).find('a').attr('href')).show();
		$('div.vGTabs ul.vGTabNavigation li').removeClass('selected').addClass('gamesSprite');
		$(this).removeClass('gamesSprite').addClass('selected');
		return false;
	});
	$('div.vGTabs ul.vGTabNavigation li a').click(function(){javascript:void(0);});
}

//onload trigger
if (window.addEventListener)
      window.addEventListener("DOMContentLoaded",template_init,false);
else
      window.attachEvent("onload",template_init);


/*styles or canvas code */
function setActiveStyleSheet(title) {
   var i, a, main;
   for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
     if(a.getAttribute("rel").indexOf("mystyle") != -1 && a.getAttribute("title")) {
       a.disabled = true;
       if(a.getAttribute("title") == title) a.disabled = false;
     }
   }
   createCookie("mystyle",title,90);
}

function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
  	if(a.getAttribute("rel").indexOf("mystyle") != -1 && a.getAttribute("title") && !a.disabled) 
  		return a.getAttribute("title");
  }
  return null;
}

function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}

function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("mystyle") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}

var cookie = readCookie("mystyle");
if(cookie != null && cookie.length > 0)
     setActiveStyleSheet(cookie);


//DL JS
function v2_dl_f()
{
	for (var i=1; i<=dln; i++){
		if (p_o('v2_dl'+i).style.display=='block' && p_o('v2_cs'+i) != 'undefined' && p_o('v2_cs'+i).className=='active')
		{
			if (i==dln)
			{

                               $("#v2_dl"+i).hide("slow");
				p_o('v2_dl1').style.display='block';
				p_o('v2_cs'+i).className='';
				p_o('v2_cs1').className='active';
				return;
			}
			else
			{
				var active_dl=i+1;
                               $("#v2_dl"+i).hide("slow");
				p_o('v2_dl'+active_dl).style.display='block';
				p_o('v2_cs'+i).className='';
				p_o('v2_cs'+active_dl).className='active';
				return;
			}
		}
	}
}



function v2_sq_active(e)
{
	if (dln>1)
	{
		var list=p_o('v2_ctrl_sqr').getElementsByTagName('li');
		for (var i=0; i<dln; i++)
		{
			list[i].className='';
		}
		var targ_ele;
		if (!e) var e = window.event;
		if (e.target) targ_ele = e.target;
		else if (e.srcElement) targ_ele = e.srcElement;
		if (targ_ele.nodeType == 3) 
		targ_ele = targ_ele.parentNode;
		targ_ele.className='active';

		var targid=targ_ele.id;
		var dlc_act=targid.substring(5);

		for (var i=1; i<=dln; i++)
		{
                      if(dlc_act != i){
			   $("#v2_dl"+i).hide("slow");
                      }
		}

		p_o('v2_dl'+dlc_act).style.display='block';
		//v2_cl_int();		
	}
}

function v2_st_int()
{
	b_int=setInterval('v2_dl_f()',dl_speed);	
}

function v2_cl_int()
{
	b_int=clearInterval(b_int);
	//Uncomment below to make the DL to rotate non-stop.
	v2_st_int() 
}

var canvasArray= new Array(3);
function createCanvasChanger(){
    var canvasChStr = "<li><a href=\"javascript:quickSetActiveStyleSheet('');\" title=\"Surprise Me\"><img src=\"http://o.aolcdn.com/os/kol/CSS/images/Thu_SurpriseMe.gif\" width=\"78\" height=\"78\" alt=\"Surprise Me\" /></a></li>";;
	for(i=1;i<canvasArray.length;i++){
	    canvasChStr += "<li><a href=\"javascript:quickSetActiveStyleSheet('"+ canvasArray[i][2] +"');\" title=\""+ canvasArray[i][0] +"\"><img src=\""+ canvasArray[i][1] +"\" width=\"78\" height=\"78\" alt=\""+ canvasArray[i][0] +"\" /></a></li>";
    }
     p_o('canvascarousel').innerHTML=canvasChStr;
}



var cssfileURL = readCookie("mystyle");
var origCssfileURL = cssfileURL;

if(cssfileURL != null && cssfileURL.length > 0)
     useCss(cssfileURL);
else {
        origCssfileURL = defaultcss;
        useCss(defaultcss);
     }

function playFreshVid(videoNum){
   if ( p_o('freshFiveVideo') )
       p_o('freshFiveVideo').innerHTML = videos[videoNum-1]; 
   for(i=0;i<5;i++){
       p_o('video'+(i+1)).setAttribute("class", "");
       p_o('video'+(i+1)).setAttribute("className", "");
   }
   p_o('video'+videoNum).setAttribute("class", "active");
   p_o('video'+videoNum).setAttribute("className", "active");
}

function hoverstate_targetR(){
    document.getElementById("target_right_arrow").setAttribute("class", "activeSectionR");
    document.getElementById("target_right_arrow").setAttribute("className", "activeSectionR");
} 
var closeChanger=0;
function displaybgopts(){
     $("#canvasChanger").slideToggle(400);
     closeChanger++;
     if(closeChanger%2>0){
         p_o('changebglink').setAttribute("class", "changebgText");
         p_o('changebglink').setAttribute("className", "changebgText");
         p_o('changebglink').innerHTML="Close";
     }else{
         p_o('changebglink').setAttribute("class", "");
         p_o('changebglink').setAttribute("className", "");
         p_o('changebglink').innerHTML="More";
     }
}

function setKolActiveCSS(cssfile) {
   origCssfileURL = cssfileURL;
   createCookie("mystyle",cssfileURL,90);
   p_o('canvasChanger').style.display='none';
}

function quickSetActiveStyleSheet(cssFile) {
   cssfileURL = cssFile;origCssfileURL = cssfileURL;
   if(cssfileURL.length<1){
	  var randomnumber=Math.floor(Math.random()*canvasArray.length);
      cssfileURL = canvasArray[randomnumber][2];
   	  useCss(cssfileURL);
   }else{
   	  useCss(cssfileURL);
   }
   createCookie("mystyle",cssfileURL,90);
}

function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
  	if(a.getAttribute("rel").indexOf("mystyle") != -1 && a.getAttribute("title") && !a.disabled) 
  		return a.getAttribute("title");
  }
  return null;
}

function canvasPreview(cssTitle,cssFile,cssLargeImg){
	p_o('featured').getElementsByTagName('img')[0].src=cssLargeImg;
	p_o('featured').getElementsByTagName('h2')[0].getElementsByTagName('a')[0].innerHTML=cssTitle;
    useCss(cssFile);
    cssfileURL = cssFile;
}

function closeChanger(){ 
    if(!origCssfileURL || origCssfileURL.length<1)origCssfileURL=defaultcss;
    useCss(origCssfileURL);
    p_o('canvasChanger').style.display='none';
}

function useCss(fileURL){
	var headID = document.getElementsByTagName("head")[0];         
	var cssNode = document.createElement('link');
	cssNode.type = 'text/css';
	cssNode.rel = 'stylesheet';
	cssNode.href = fileURL;
	cssNode.media = 'screen';
	headID.appendChild(cssNode);
}


   // Skin info.
   var animatedSkin = new Array("themecaranim","themebfliesanim","themeflowersanim","themesportsanim","thememusicanim","themedefaultanim","themepilaranim","themeskyanim");
   //Gets the browser specific XmlHttpRequest Object
   function getXmlHttpRequestObject() {
      if (window.XMLHttpRequest) {
         return new XMLHttpRequest(); //Not IE
      } else if(window.ActiveXObject) {
         return new ActiveXObject("Microsoft.XMLHTTP"); //IE
      } else {
         //Display your error message here. 
         //and inform the user they might want to upgrade
         //their browser.
         return null;
      }
   }        


   function changeDisplay(visible, invisible){
      changeVisibility(invisible,false);
      changeVisibility(visible,true);
   }

   function changeVisibility(objId, isVisible){
       var display = "none";
       if(isVisible){
           display = "block";
       }
       getObjectById(objId).style.display = display;
       
   }
   var themeIDs = new Array();
   function addThemeID( id ){
       themeIDs[themeIDs.length] = id;
   }

   function changeStyle(color,id){
      var style = getObjectById("changableStyle");
      if(style){
          style.href="/KOL/css/"+color+".css";
          setCookie('themeColor',color+"~"+id,365,"/");
      }
      var skin = getObjectById("changableSkin");
      if(skin){
         skin.className = "skin_"+id;
         chnageAnimatedSkin(id);
      }
      setCookie('themeColor',color+"`"+id,365,"/");
   }

    function getObjectById(id){
       var obj;
       if(document.getElementById){
          obj = document.getElementById(id);
       } else {
          obj = eval('document.all.'+id);
       }
       return obj;
    }
    
   function getCookie(NameOfCookie){ 
      if (document.cookie.length > 0){ 
         begin = document.cookie.indexOf(NameOfCookie+"=");
         if (begin != -1){ 
            begin += NameOfCookie.length+1;
            end = document.cookie.indexOf(";", begin);
            if (end == -1) end = document.cookie.length;
            return unescape(document.cookie.substring(begin, end)); 
         }
      }
      return null;
   }
   
   
   
   function setCookie(NameOfCookie, value, expiredays, path){ 
      var expireDate = new Date ();
      expireDate.setTime(expireDate.getTime() + (expiredays * 24 * 3600 * 1000));
      document.cookie = NameOfCookie + "=" + escape(value) +
      ((expiredays == null) ? "" : "; expires=" + expireDate.toGMTString()) +
      ((path == null) ? "" : "; path="+path);
   }
      
   
   function delCookie (NameOfCookie){ 
      if (getCookie(NameOfCookie)) {
         document.cookie = NameOfCookie + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT";
      }
   }
   
   function chnageAnimatedSkin(id){
      var objAni = getObjectById("animation");
      if(objAni){
        var aniFlash = new FlashTag("http://www.aolcdn.com/_media/kol/"+animatedSkin[id - 1]+".swf", "980", "74", "9,0,0,0" );
        aniFlash.setId("animation");
        aniFlash.setAlign("l");
        aniFlash.setQuality("high");
        aniFlash.setWmode("transparent");
        aniFlash.setPlay("true");
        aniFlash.setLoop("false");
        aniFlash.setScale("showall");
        aniFlash.setMenu("true");
        aniFlash.setBgcolor("#ffffff");

        var objStr = aniFlash.toString();
       objAni.innerHTML = objStr;
      }
   }

kolsearch = {
    init:function(){},
    searchTypes:{kol:{action:'/KOL/2/SubPages/Search',target:'_self'},web:{action:'http://search.kids.kol.com/search/search?invocationType=enus-kids-1_-kol-web',target:'_new'}},
    postions:{top:'top',bottom:'bottom'},
    select:function(type, position){
        var id = "";
        for(searchType in this.searchTypes){
           id = "select_"+searchType+"_"+position;
           var liObj = this.getObjectByID(id);
           if(liObj){
               if(searchType == type){
                   liObj.className = "selected";
               } else {
                   liObj.className = "";
               }
           }
        }
        id = position+'Search';
        var formObj = this.getObjectByID(id);
        if(formObj){
            formObj.action = this.searchTypes[type].action;
            formObj.target = this.searchTypes[type].target;
        }
    },
    getObjectByID:function(id){
      var obj;
       if(document.getElementById){
          obj = document.getElementById(id);
       } else {
          obj = eval('document.all.'+id);
       }
       return obj;
     }
}


   //Gets the browser specific XmlHttpRequest Object
   function getXmlHttpRequestObject() {
      if (window.XMLHttpRequest) {
         return new XMLHttpRequest(); //Not IE
      } else if(window.ActiveXObject) {
         return new ActiveXObject("Microsoft.XMLHTTP"); //IE
      } else {
         //Display your error message here. 
         //and inform the user they might want to upgrade
         //their browser.
         return null;
      }
   }

   function getObjectById(id){
       var obj;
       if(document.getElementById){
          obj = document.getElementById(id);
       } else {
          obj = eval('document.all.'+id);
       }
       return obj;
    }
    
   
   
   var weatherReq = getXmlHttpRequestObject();
   function getWeather() {
      //alert("start from the get weather function");  
      var zip = getObjectById('zip');
      if (weatherReq != null && (weatherReq.readyState == 4 || weatherReq.readyState == 0)) {
         weatherReq.open("GET", 'include/weatherBox.jsp'+(zip?"?zip="+zip.value:""), true);
         weatherReq.onreadystatechange = handleWeather; 
         weatherReq.send(null);
      }
   }

   function handleWeather() {
      if (weatherReq.readyState == 4) {
         var obj = document.getElementById('weather_box');
         if(obj) obj.innerHTML = weatherReq.responseText.replace("Get Weather","");
      }
   }

   var myFavReq = getXmlHttpRequestObject();

   function addMyFavorite() {
      var siteName = getObjectById('siteName');
      var siteAddress = getObjectById('siteAddress');
      if (siteName.value != '' && siteAddress.value != '' && myFavReq != null && (myFavReq.readyState == 4 || myFavReq.readyState == 0)) {
         getObjectById('notkidsafetext').style.display = "none";
         myFavReq.open("GET", 'favs/addMyFav.jsp?siteName='+siteName.value+'&siteAddress='+siteAddress.value, true);
         myFavReq.onreadystatechange = handleMyFavorite; 
         myFavReq.send(null);
      }        
   }
   
   function handleMyFavorite() {
      if (myFavReq.readyState == 4) {
         var obj = getObjectById('myfavLink');
         var sc = true;
         obj.innerHTML = myFavReq.responseText;
         changeDisplay("myfavLink","myfavAdd");
         var serverError = getObjectById('serverError');
         var notKidSafe = getObjectById('notkidsafe');
         if(notKidSafe != null){
            changeDisplay('myfavAdd','myfavLink');
            changeDisplay('forAdd','forEdit');
            getObjectById('notkidsafetext').style.display = "block";
         } else {
           if(serverError != null) {
              if(serverError.className == "myfav_mid hide"){
              } else { 
                se = true;
              }
           }   
           if(se){  
              changeDisplay('servererrormessage','myfavLink');
           } else {
	           getObjectById('siteName').value = '';
	           getObjectById('siteAddress').value = 'http://';
	        }
	      }
      }
   }

   function delMyFavorite(siteName){
      if (siteName != '' && myFavReq != null && (myFavReq.readyState == 4 || myFavReq.readyState == 0)) {
         myFavReq.open("GET", 'favs/delMyFav.jsp?siteName='+siteName, true);
         myFavReq.onreadystatechange = handleDelMyFavorite; 
         myFavReq.send(null);
      }        
   }

   function handleDelMyFavorite() {
      if (myFavReq.readyState == 4) {
         var obj = getObjectById('myfavLink');
         obj.innerHTML = myFavReq.responseText;
         changeDisplay("myfavLink","myfavAdd");
         changeMyFavEdit(true);
      }
   }

   function editMyFavorite() {
      var siteName = getObjectById('siteName');
      var siteAddress = getObjectById('siteAddress');
      var orgSiteName = getObjectById('orgSiteName');
      if (siteName.value != '' && siteAddress.value != '' && myFavReq != null && (myFavReq.readyState == 4 || myFavReq.readyState == 0)) {
         getObjectById('notkidsafetext').style.display = "none";
         myFavReq.open("GET", 'favs/editMyFav.jsp?siteName='+siteName.value+'&siteAddress='+siteAddress.value+'&orgSiteName='+orgSiteName.value, true);
         myFavReq.onreadystatechange = handleEditMyFavorite; 
         myFavReq.send(null);
      }        
   }

   function handleEditMyFavorite() {
      if (myFavReq.readyState == 4) {
         var obj = getObjectById('myfavLink');
         obj.innerHTML = myFavReq.responseText;
         var se = false;
         var serverError = getObjectById('serverError');
         var notKidSafe = getObjectById('notkidsafe');
         if(notKidSafe != null){
            changeMyFavEdit(true);
            changeDisplay('myfavAdd','myfavLink');
            changeDisplay('forEdit','forAdd');
            getObjectById('notkidsafetext').style.display = "block";
         } else {
           if(serverError != null) {
              if(serverError.className == "myfav_mid hide"){
              } else { 
                se = true;
              }
           }   
           if(se){  
             changeDisplay('servererrormessage','myfavAdd');
            } else {
	            changeDisplay("myfavLink","myfavAdd");
	            getObjectById('siteName').value = '';
	            getObjectById('siteAddress').value = 'http://';
	            getObjectById('orgSiteName').value = '';
	            changeMyFavEdit(true);
            }
         }
      }
   }
   
   function changeMyFavEdit(isEdit){
      var obj = getObjectById("myfavLink");
      if(obj != null){
          var spanObj = obj.getElementsByTagName("span");
          var i = 0;
          var display = isEdit?"block":"none"; 
          for(i = 0; i < spanObj.length ; i++){
             spanObj[i].style.display = display;
          }
          changeVisibility("addButton",!isEdit);
          changeVisibility("editButton",!isEdit);
          changeVisibility("doneButton",isEdit);
      }
   }
   
   function editDisplayMyFavorite(name,address){
      var siteName = getObjectById('siteName');
      var siteAddress = getObjectById('siteAddress');
      var orgSiteName = getObjectById('orgSiteName');
      siteName.value = name;
      orgSiteName.value = name;
      siteAddress.value = address;
      changeDisplay('myfavAdd','myfavLink');
      changeDisplay('forEdit','forAdd');
   }

   function cancleMyFavorite(){
     getObjectById('notkidsafetext').style.display = "none";
     getObjectById('siteName').value = '';
     getObjectById('siteAddress').value = 'http://';
     getObjectById('orgSiteName').value = '';
     changeDisplay('myfavLink','myfavAdd');
   }
   
   function cancleServerError(){
      changeDisplay('myfavLink','servererrormessage');
   }

   function addMyFavButton(){
       if(isLoggedIn){
           changeDisplay('myfavAdd','myfavLink');
           changeDisplay('forAdd','forEdit');
       } else {
           alert("Please login before adding sites to My Favorite");
       }
   }

if(navigator.userAgent.indexOf('AOL') >= 0 ){
   var toolMail = getObjectById('toolmail');
   toolMail.className = '';
}

