//REDIRECTION TO DOWNLOAD PROCESS
function CheckToolbar() {
	if( typeof( oToolbarController ) == "undefined" || !oToolbarController.bInstalled ) {
		location.href = "http://www.kazulah.com/dl/index.jhtml?partner="+partnerID+"&successurl="+escape(location.href);
		return false;
	} else {
		return true;
	}
}

function todaysFullDate(){
	var finalDate = '';
	calendar = new Date();
	day = calendar.getDay();
	month = calendar.getMonth(); 
	date = calendar.getDate();
	year = calendar.getYear();
	if (year < 1000){
		year+=1900
	}
	cent = parseInt(year/100);
	g = year % 19;
	k = parseInt((cent - 17)/25);
	i = (cent - parseInt(cent/4) - parseInt((cent - k)/3) + 19*g + 15) % 30;
	i = i - parseInt(i/28)*(1 - parseInt(i/28)*parseInt(29/(i+1))*parseInt((21-g)/11));
	j = (year + parseInt(year/4) + i + 2 - cent + parseInt(cent/4)) % 7;
	l = i - j;
	emonth = 3 + parseInt((l + 40)/44);
	edate = l + 28 - 31*parseInt((emonth/4));
	emonth--;
	var dayname = new Array ("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");
	var monthname = new Array ("January","February","March","April","May","June","July","August","September","October","November","December" );
	finalDate += dayname[day] + ", ";
	finalDate += monthname[month] + " ";
	if (date< 10){
		finalDate += "0" + date + ", ";
	}
	else{
		finalDate += date + ", ";
	}
	finalDate += year;
	return finalDate;
}

function getGreeting(a_name){
	var greeting = "";
	var fullGreeting= "";
	var title ="";
	var now = new Date();
	var hour = now.getHours();
	if(hour > 5 && hour <= 11){  
		greeting += "Morning";
	} 
	else if(hour >= 11 && hour <= 16){
		greeting += "Afternoon";
	} 
	else if(hour >= 16 || hour <= 5){
		greeting +=	"Evening"
	} 
	else{
		greeting += "Day";
	} 
	switch(hour){
		case 0:
			title = "It seems to be the witching hour";
		break;
		case 1:
			title = "Bit late isn't it?";
		break;
		case 2:
			title = "It is happy hour somewhere right now.";
		break;
		case 3:
			title = "What are you still doing up??";
		break;
		case 4:
			title = "Four score and you're sleeping alone.";
		break;
		case 5:
			title = "I can hear your dreams";
		break;
		case 6:
			title = "Are you awake yet?";
		break;
		case 7:
			title = "I know what your going to eat for breakfast";
		break;
		case 8:
			title = "Um, I can smell you... maybe its time for a shower?";
		break;
		case 9:
			title = "... and so begins the 9 - 5";
		break;
		case 10:
			title = "It is 10 o'clock do you know where your children are?";
		break;
		case 11:
			title = "Please let me out.  I'm trapped in your RAM.";
		break;
		case 12:
			title = "How was your lunch?";
		break;
		case 13:
			title = "Whatever happened to nap time?";
		break;
		case 14:
			title = "It is time you started asking some serious questions.";
		break;
		case 15:
			title = "I vote for a nap";
		break;
		case 16:
			title = "Tea time!";
		break;
		case 17:
			title = "You shouldn't have cook, order pizza";
		break;
		case 18:
			title = "If jimmy cracks corn, and no one ares... why still do it???";
		break;
		case 19:
			title = "I let the dogs out.";
		break;
		case 20:
			title = "Everybody needs somebody sometimes.";
		break;
		case 21:
			title = "I know what your thinking, and no I will not wear an eye patch";
		break;
		case 22:
			title = "When mountains are in labor a ridiculous mouse is born";
		break;
		case 23:
			title = "Is it not it your bed time yet?";
		break;		
	}
	fullGreeting = '<span title="' + title + '">Good ' + greeting + ', ' + parseUserName(a_name) +'</span>';
	
	return fullGreeting;
}

function parseUserName(a_username){

	if(a_username.length > 18){
		return a_username.substr(6,18) + "..."; 
	}
	return a_username;
	
}


function checkBirthDate(a_month, a_day, a_year, a_div){
	
	if($("#" + a_month).val() == "" ||$("#" + a_day).val() == "" || $("#" + a_year).val() == ""){
		$('#' + a_div).html("**Please complete your birthday");
		return false;	
	}
	return true;
}

//LOGIN CODE
function checkForm(type) {
	
	//get toolbar id
	if(type == 'register') {
		/*
		var xpiParentPartnerID = $("tsox_tbck").attr("cbid");
		if(xpiParentPartnerID!=null){
			xpiParentPartnerID = xpiParentPartnerID.split("_");
			xpiParentPartnerID = xpiParentPartnerID[xpiParentPartnerID.length-1];
		}
		
		var toolbarID=oToolbarController.sParentPartnerID||xpiParentPartnerID;
		*/
		TOOLBAR.DEBUG("checkForm: oToolbarController.sParentPartnerID = " + oToolbarController.sParentPartnerID);
		document.getElementById('toolbarID').value = oToolbarController.sParentPartnerID;
		//alert(document.getElementById('toolbarID').value);
	}

		// make sure password (> x chars) and hash it using the above function 
		// validate login form
		var loginPassword = document.getElementById("loginPassword");
		var loginEmailAddr = document.getElementById("loginEmail");
		var loginPasswordPlainText = document.getElementById("loginPasswordPlainText");
		if(loginPasswordPlainText.value != ""){
			loginPassword.value = HMAC_SHA256_MAC(loginEmailAddr.value.toUpperCase(), loginPasswordPlainText.value);

		}
		else{
			return false;
		}
		
		loginPasswordPlainText.value = "";
		
		if(type =='login'){
		
			$('#frmLogin').submit();
		}
}	
//end login code




$(document).ready(function(){
	/*handle the hover for the left nav bar*/
	$("#main #leftNav div.leftNavigationBar p").hover(
		function(){
			$(this).find("img").css('visibility', 'visible');
			$(this).addClass("hasBGForRollover");
			$(this).removeClass("hasNOBGForRollover");
			$(this).find('a').css('color', '#a2dce9');
		}, function(){
			$(this).find("img").css('visibility', 'hidden');
			$(this).addClass("hasNOBGForRollover");
			$(this).removeClass("hasBGForRollover");
			$(this).find('a').css('color', '#f6cc46');			
		});
	/*handle the stars for left nav bar*/
	$("#main #leftNav div.leftNavigationBar p").click(function(){
			window.location = $(this).find('a').attr('href');	
		});
	/*handle roll over for left nav bar*/
	$("#main #leftNav div.leftNavigationBar img").css('visibility', 'hidden');

	/**handles the rollovers on pages with sub navs**/
	$("#main #Content div.header div.contentNavBar a").hover(
		function(){
			$(this).css('cursor', 'pointer');
		}, function(){
			$(this).css('cursor', 'default ');	
		});
});

/**used for toggling the welcome from personal to static**/
function toggleWelcome(a_isPersonal){
	if(a_isPersonal){
		$('#main #leftNav div.signedOut').hide();
		$('#main #leftNav div.signedIn').show();
	}
	else{
		$('#main #leftNav div.signedOut').show();
		$('#main #leftNav div.signedIn').hide();
	}
}

function DreamGo() {
	if(CheckToolbar() ) {
		if($("#keyword").val() == ""){
			$("#dreamErr").html("**Your dream is blank? You are boring...");
		}
		else{
			location.href = $("#dictionary_url").val()+"?keyword="+$("#keyword").val();
		}
	}
}

function toggleCompatibility(a_div, a_anchor){
	$("#Romantic, #Friend, #Celebrity, #Coworker").hide();
	if(a_div == "#Romantic"){
		$("div.compatLove").css("background", "url(http://ak.imgfarm.com/images/funwebproducts/horoscope/horoscope/Love_Image.jpg) no-repeat");	
	}
	else if(a_div == "#Friend"){
		$("div.compatLove").css("background", "url(http://ak.imgfarm.com/images/funwebproducts/horoscope/compat/friendship.jpg) no-repeat");
	}
	else if(a_div == "#Celebrity"){
		$("div.compatLove").css("background", "url(http://ak.imgfarm.com/images/funwebproducts/horoscope/compat/celebrity.jpg) no-repeat");
	}
	else if(a_div == "#Coworker"){
		$("div.compatLove").css("background", "url(http://ak.imgfarm.com/images/funwebproducts/horoscope/compat/coworkers.jpg) no-repeat");
	} 
	$(a_div).show();
	if( a_anchor ) handleSubNavRollOver(a_anchor);
}

function handleSubNavRollOver(a_anchor){
	$("#Content div.header div.contentNavBar").find('a').attr('enabled', 'true');
	$("#Content div.header div.contentNavBar").find('a').removeClass('selected');
	$(a_anchor).addClass("selected");
	$(a_anchor).attr('enabled', 'false');
}

function todaysDate(){
	var today=new Date()
	var month = today.getMonth()+1;
	var day = today.getDate();
	if(today.getMonth()+1 < 10) month = '0' + month;
	if(today.getDate() < 10) day = '0' + day; 
	return( month+"/"+day+"/"+(today.getYear() + 1900));
}

var currLink = "";
var lastDiv = 0;
/**
Takes a Div, hides all the divs inside of that one div, thens shows the one that we need
**/
function toggleDivs(a_masterDiv, a_div, a_anchor, a_isSetBySystem){
	if(a_masterDiv.indexOf('#') == -1){
		a_masterDiv = "#" + a_masterDiv;
	}
	if(a_div.indexOf('#') == -1){
		a_div = "#" + a_div;
	}

	$(a_masterDiv).find('div').hide();
	if(a_anchor != null)handleSubNavRollOver(a_anchor);
	$(a_div).show();
	$(a_div).find('div').show();
	return;	
	
	
/**	if($(a_anchor).attr("id") != currLink){ 
		currLink = $(a_anchor).attr("id");
		$(a_masterDiv).find('div').fadeOut(200, function(){
			if($(a_masterDiv + ' div').size()-1 == lastDiv){
				$(a_div).fadeIn(200, function(){
					
					$(a_div).find('div').fadeIn("normal");
				});
				lastDiv=0;
			}
			else{
				lastDiv++;
			}
		});
	}
**/	
/**	if($(a_anchor).attr("id") != currLink){ 
		currLink = $(a_anchor).attr("id");
		$(a_masterDiv).find('div').not('#minHeight, ' + a_masterDiv).fadeOut(200, function(){
			if($(a_masterDiv + ' div').size()-1 == lastDiv){
				$(a_div).fadeIn(200, function(){
					
					$(a_div).find('div').fadeIn("normal");
				});
				lastDiv=0;
			}
			else{
				lastDiv++;
			}
		});
	}
	
	**/
}

function toggleLoveCouple(a_masterDiv, a_div, a_anchor){
	if(a_masterDiv.indexOf('#') == -1){
		a_masterDiv = "#" + a_masterDiv;
	}
	if(a_div.indexOf('#') == -1){
		a_div = "#" + a_div;
	}
	if(a_anchor != null){
		$("div.subCats a").removeClass('selected');
		$(a_anchor).addClass("selected");
		$(a_anchor).attr('enabled', 'false');
	}
	
	$(a_masterDiv).find('div').hide();
	$(a_div).show();
	$(a_div).find('div').show();
	return;	

}

function clearTextBox(a_textBox, a_defaultText){
	if($(a_textBox).attr('value') == a_defaultText){
		$(a_textBox).attr('value', '');
	}
}

function getCurrYear(){
	var d = new Date(); 
	var y = d.getYear();
	return y;
}

function newPageGo(a_month, a_day, a_year, a_hiddenElement){
	var dob = $("#" + a_month).val() + "/" + $("#" + a_day).val() + "/" + $("#" + a_year).val();
	if( CheckToolbar() ) location.href=$("#" + a_hiddenElement).val()+"?dateOfBirth=" + dob;
}

function switchCookies(a_div){
	$('#cookie1, #cookie2, #cookie3, #cookie4, #cookie5, #CookieSelect').hide();
	$('#'+a_div).show(); 
	$('#CookieResponse').show();
}






//ADOBE'S CODE
//v1.7
// Flash Player Version Detection
// Detect Client Browser type
// Copyright 2005-2007 Adobe Systems Incorporated.  All rights reserved.
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;

function ControlVersion()
{
	var version;
	var axo;
	var e;

	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry

	try {
		// version will be set for 7.X or greater players
		axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
		version = axo.GetVariable("$version");
	} catch (e) {
	}

	if (!version)
	{
		try {
			// version will be set for 6.X players only
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
			
			// installed player is some revision of 6.0
			// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
			// so we have to be careful. 
			
			// default to the first public version
			version = "WIN 6,0,21,0";

			// throws if AllowScripAccess does not exist (introduced in 6.0r47)		
			axo.AllowScriptAccess = "always";

			// safe to call for 6.0r47 or greater
			version = axo.GetVariable("$version");

		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 4.X or 5.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 3.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = "WIN 3,0,18,0";
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 2.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			version = "WIN 2,0,0,11";
		} catch (e) {
			version = -1;
		}
	}
	
	return version;
}

// JavaScript helper required to detect Flash Player PlugIn version information
function GetSwfVer(){
	// NS/Opera version >= 3 check for Flash plugin in plugin array
	var flashVer = -1;
	
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
			var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
			var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
			var descArray = flashDescription.split(" ");
			var tempArrayMajor = descArray[2].split(".");			
			var versionMajor = tempArrayMajor[0];
			var versionMinor = tempArrayMajor[1];
			var versionRevision = descArray[3];
			if (versionRevision == "") {
				versionRevision = descArray[4];
			}
			if (versionRevision[0] == "d") {
				versionRevision = versionRevision.substring(1);
			} else if (versionRevision[0] == "r") {
				versionRevision = versionRevision.substring(1);
				if (versionRevision.indexOf("d") > 0) {
					versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
				}
			}
			var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
		}
	}
	// MSN/WebTV 2.6 supports Flash 4
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	// WebTV 2.5 supports Flash 3
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	// older WebTV supports Flash 2
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	else if ( isIE && isWin && !isOpera ) {
		flashVer = ControlVersion();
	}	
	return flashVer;
}

// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
	versionStr = GetSwfVer();
	if (versionStr == -1 ) {
		return false;
	} else if (versionStr != 0) {
		if(isIE && isWin && !isOpera) {
			// Given "WIN 2,0,0,11"
			tempArray         = versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
			tempString        = tempArray[1];			// "2,0,0,11"
			versionArray      = tempString.split(",");	// ['2', '0', '0', '11']
		} else {
			versionArray      = versionStr.split(".");
		}
		var versionMajor      = versionArray[0];
		var versionMinor      = versionArray[1];
		var versionRevision   = versionArray[2];

        	// is the major.revision >= requested major.revision AND the minor version >= requested minor
		if (versionMajor > parseFloat(reqMajorVer)) {
			return true;
		} else if (versionMajor == parseFloat(reqMajorVer)) {
			if (versionMinor > parseFloat(reqMinorVer))
				return true;
			else if (versionMinor == parseFloat(reqMinorVer)) {
				if (versionRevision >= parseFloat(reqRevision))
					return true;
			}
		}
		return false;
	}
}

function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '';
  if (isIE && isWin && !isOpera)
  {
    str += '<object ';
    for (var i in objAttrs)
    {
      str += i + '="' + objAttrs[i] + '" ';
    }
    str += '>';
    for (var i in params)
    {
      str += '<param name="' + i + '" value="' + params[i] + '" /> ';
    }
    str += '</object>';
  }
  else
  {
    str += '<embed ';
    for (var i in embedAttrs)
    {
      str += i + '="' + embedAttrs[i] + '" ';
    }
    str += '> </embed>';
  }

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
		ret.embedAttrs["src"] = args[i+1];
		ret.params[srcParamName] = args[i+1];
		break;
      case "movie":	
		
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblclick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
      case "id":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}



/* ------------ BEGIN COOKIECHIP ------------ */

	function getCookieVal(offset){
	  var endstr = document.cookie.indexOf (";", offset);
	  if (endstr == -1) { endstr = document.cookie.length; }
	  return unescape(document.cookie.substring(offset, endstr));  
	}
	
	function setCookie(name,value,expires,path,domain,secure){
		document.cookie = name + "=" +escape( value ) +
		( ( expires ) ? ";expires=" + expires.toGMTString() : "" ) + 
		( ( path ) ? ";path=" + path : "" ) + 
		";domain=.kazulah.com" +
		( ( secure ) ? ";secure" : "" );		
	}
	
	function getCookie(name){
		var arg = name + "=";
		var alen = arg.length;
		var clen = document.cookie.length;
		var ii = 0;
		while (ii < clen) {
			var jj = ii + alen;
			if (document.cookie.substring(ii, jj) == arg) {
				return getCookieVal (jj);
			}
			ii = document.cookie.indexOf(" ", ii) + 1;
			if (ii === 0) break; 
		}
	}

	function newCookieParse(sChip,sCookVal){
		var c = new RegExp("(?:\\&|^)"+sChip+"=(?:\\w|\.)+(\\&|$)");
		var tmp = sCookVal;
		var b = 0;
		if ((tmp  !== null) && (tmp !== "")) {	
			var rtmp = c.exec(tmp);
			if ((rtmp  !== null) && (typeof rtmp.length == 'number')){
				b = rtmp[0];
				if(b.indexOf("&")!=-1){//remove &
					b=b.substring(1,(b.length-1));
				}
				b=b.substring(sChip.length+1);
			}
		}	
		return b;
	}
	function setCookieChip(sCookieName,sChipName,sChipVal){	
		var sCookieVal=getCookie(sCookieName);
		
		var fSetChip=function(){
			var s=sChipName+'='+sChipVal+'&';
			//format if first chip or just append
			(sCookieVal===null||typeof(sCookieVal)=="undefined")?sCookieVal='&'+s:sCookieVal+=s;
			//set
			setCookie(sCookieName,sCookieVal,getPermDate(),'/');
		
		};
		if(sCookieVal===null || !sCookieVal ){//no cookie
			
			fSetChip();
		}else{
			
			var sExistChipVal=newCookieParse(sChipName,sCookieVal);
			if((!sExistChipVal) && (sCookieVal.indexOf(sChipName+'=')==-1)){//cookie is set, not the chip
				fSetChip();
			}//else its already set - we're good
		}
	}
	function getPermDate(){
		var dExp = new Date();
		dExp.setTime(dExp.getTime() + (1825*24*60*60*1000));//5 yrs
		return dExp;
	}
	function getToolbarObj(){
		var oCntrl=document.getElementById('ToolbarCtlMWS');
		if(oCntrl===null){//try another name
			oCntrl=document.getElementById('SettingsControl');
		}
		return oCntrl;
	}
	
	function testForTrkParams(){	
		var sSHARED_COOKIE_NAME='cssP';
		var sUID_CHIP='uid';
		var sP_CHIP='p';
		
		var oCntrl=getToolbarObj();
		
		//UID
		if(oCntrl!==null && typeof(oCntrl.I)=='string'){
			
			var sUID=oCntrl.I;
			setCookieChip(sSHARED_COOKIE_NAME,sUID_CHIP,sUID);
		}
		//partner
		if(oCntrl!==null && typeof(oCntrl.P)=='string'){
			var sPartner=oCntrl.P;
			setCookieChip(sSHARED_COOKIE_NAME,sP_CHIP,sPartner);
		}
	}
	//moved testForTrkParams() call and setting uid to header.jsp, need to be below toolbarControl include
	
/* ------------ END COOKIECHIP ------------ */