/*
function callGetMyBasketCountHandler(action, language) {
	var xwtObj = new XWTObject();
	xwtObj.setParameter('AJAX_HANDLER', 'basket');
	xwtObj.setParameter('action', action);
	xwtObj.setParameter('language', language);
	var callback = new NewBasketCallbackForCount();
	xwtObj.setCallbackHandler(callback);
	var path = getContext()+'/AJAXControllerServlet';
	xwtObj.submit(path + '?' + xwtObj.getQuery(xwtObj));
}
function header_refreshMyBasketCount(language) {
	callGetMyBasketCountHandler('getMyBasketCount', language);
}

function NewBasketCallbackForCount() {
	this.callback = function(reqResponseXML) {
	    var count = reqResponseXML.getElementsByTagName("count")[0].childNodes[0].nodeValue;
	    	    
		var basketCountObj = document.getElementById("header_myBasketCount");
		
		//if (!basketCountObj) {
		//	alert("not basketCountObj");
		//}
		//else if(!count) {
		//	alert("no count");
		//}
		
		if (basketCountObj && count) {
			basketCountObj.innerHTML = count + "";
		}
	}
}	
*/

function changeURLWithParm(url_str, param_str){
	var url = url_str
	
	if (url && "" !=url ) {
		if (url.indexOf('&') == -1) {
			url+="?"
		}
		else {
			url+="&"
		}
	}
	url+=param_str
	
	return url;
}

function openMyBasketWindowWithLocale(url_str, locale_str){	
	var url = changeURLWithParm(url_str, 'locale='+locale_str);	
	window.open(url, "mybasket");
}

function reloadWindowWithLocale(url_str, locale_str){	
	reloadWindowWithParam(url_str, 'locale='+locale_str)
}

function openWindowWithLocale(url_str, locale_str){	
	openWindowWithParam(url_str, 'locale='+locale_str)
}

function openWindowWithParam(url_str, param_str){
	var url = changeURLWithParm(url_str, param_str);	
	window.open(url,"");
}

function reloadWindowWithParam(url_str, param_str){
	var url = changeURLWithParm(url_str, param_str);	
	window.location = url ;
}

function openWindow(url){
	window.open(url,"new_" + (new Date()).getTime() );
}

function addRecentHistoryCookie(cookieName, keyName, url, locale) {
	addRecentHistoryExpiresCookieValue(cookieName, keyName+"#"+ url, locale, (3 * 24) );
}

function addRecentHistoryExpiresCookie(cookieName, keyName, url, locale, expireHours ) {
	addRecentHistoryExpiresCookieValue(cookieName, keyName +"#"+ url, locale, expireHours );
}

function addRecentHistoryExpiresCookieValue(cookieName, cookieValue, locale, expireHours ) {

   	if(expireHours > 0){
      	var aDate = new Date();
   		aDate.setTime(aDate.getTime()+expireHours*3600*1000);
        cookieValue=cookieValue+";expires=" + aDate.toGMTString();             
    }
	else {
		cookieValue=cookieValue+";expires=0";
    }       

	document.cookie = cookieName + "_" + locale + "_" + (new Date()).getTime()  +  '=' + cookieValue + ";path=/";
	
	getCookie(cookieName, locale);
}

    var PRODUCTS_COOKIE_PREFIX = "pq"; 
    var COMPANIES_COOKIE_PREFIX = "cq"; 
    var BUYINGLEADS_COOKIE_PREFIX = "bq"; 
    var CATEGORIES_COOKIE_PREFIX = "tq"; 
    var VIDEOS_COOKIE_PREFIX = "vq";     
    var NEWS_COOKIE_PREFIX = "nq";
    var EVENTS_COOKIE_PREFIX = "eq"; 
    var KEYWORDS_COOKIE_PREFIX = "kq";
    var MAX_COOKIE_COUNT = 5;
    
function getCookie(cookieType, locale){
	var result_cookie_names = new Array();

//alert(document.cookie);
	if(document.cookie !=null && document.cookie!=''){
		var a_all_cookies = document.cookie.split('; ');		
		var a_all_cookie_names = new Array();
		var cookie_values = new Array();
		
		var i = 0;
		var cookie_name = '';
	
		if (a_all_cookies && a_all_cookies.length > 0) {

			for (i = 0; i < a_all_cookies.length; i++ )
			{	
				cookie_name = a_all_cookies[i].split('=')[0];	
				
				if (cookie_name.substr(0,(cookieType.length + locale.length + 1))  == (cookieType + "_" + locale)) {			
					a_all_cookie_names[a_all_cookie_names.length] = cookie_name;
				}
			}	
			//sorting cookies
			a_all_cookie_names.sort();
			a_all_cookie_names.reverse();
			
			//alert("All COOKIE: " + a_all_cookie_names);
			
			//remove duplicated and excess cookies
			var count=0;
	
			for(i = 0;  i < a_all_cookie_names.length; i++){
				if(count < MAX_COOKIE_COUNT){
				     if(i == 0){
				         cookie_values[count]=getCookieValueAndUrl(a_all_cookie_names[i]);				         
				         result_cookie_names[count] = a_all_cookie_names[i];
				         count++
				     }
				     else{
				     	//check duplication
				     	var dup = false;
				     	var tempValue = getCookieValueAndUrl(a_all_cookie_names[i]);
				     	var tempKey = getCookieKeyValue(a_all_cookie_names[i]);				     	
				     	
				     	for(j=0;j<count;j++){
				     	    if(tempValue==cookie_values[j]){
				     	        dup = true;
				     	        break;
				     	    }
				     	    if(tempKey==cookie_values[j].split('#')[0]){
				     	        dup = true;
				     	        break;
				     	    }				     	    
				     	}
				     	if(dup){
				     	    eraseCookie(a_all_cookie_names[i]);
				     	}
				     	else{
					         cookie_values[count]=getCookieValueAndUrl(a_all_cookie_names[i]);				         
					         result_cookie_names[count] = a_all_cookie_names[i];
					         count++				     	
				     	}
				     }	
				 }
				 //remove excess
				 else{
				     eraseCookie(a_all_cookie_names[i]);
				 }
			}
		}        
	}
//	else{
//		return null;
//	}



	return result_cookie_names;
}

function eraseCookie(name) {
	var date = new Date();
	date.setTime(date.getTime()+(-1*24*60*60*1000));
	var expires = "; expires="+date.toGMTString();
	document.cookie = name+"="+expires+"; path=/";
}

function getCookieValueAndUrl(name){
    if(document.cookie !=null && document.cookie!=''){
        var index=document.cookie.indexOf(name);
		if(index != -1){
		    var temp=document.cookie.substr(index+name.length+1);
		    if(temp !=null){
		        temp = temp.split(';')[0];
	                return temp;
	        }
		}
    }	
}

function getCookieKeyValue(name){

    if(document.cookie !=null && document.cookie!=''){
        var index=document.cookie.indexOf(name);
		if(index != -1){
		    var temp=document.cookie.substr(index+name.length+1);
		    if(temp !=null){
		        temp = temp.split('#')[0];
		        //alert("TEMP 1: " + temp);
		        temp = temp.split(';')[0];
		        //alert("TEMP 2: " + temp);
	                return temp;
	        }
		}
    }	
}

function getCookieUrl(name){
    if(document.cookie !=null && document.cookie!=''){
        var index=document.cookie.indexOf(name);
		if(index != -1){
		    var temp=document.cookie.substr(index+name.length+1);
		    index=temp.indexOf('#');
		    
		    if(index !=-1){
		    	temp=temp.substr(index+1);		    
			    if(temp !=null){
			        temp = temp.split(';')[0];
		                return temp;
		        }
	        }
		}
    }	
}

// check login status
function callSSOLoginHandler(sLanguage, context) {
	var xwtObj = new XWTObject();
	xwtObj.setParameter('AJAX_HANDLER', 'ssoLoginCheck');
	xwtObj.setParameter('language', sLanguage);
	var callback = new SSOLoginCallback();
	xwtObj.setCallbackHandler(callback);
	var path = context + '/AJAXControllerServlet';
	xwtObj.submit(path + '?' + xwtObj.getQuery(xwtObj));		
}

function SSOLoginCallback() {
	this.callback = function(reqResponseXML) {
		var nLoginStatus = reqResponseXML.getElementsByTagName("login")[0];
		var nAdminGroup = reqResponseXML.getElementsByTagName("isAdminGroup")[0];
		var nUserGreetings = reqResponseXML.getElementsByTagName("userGreetings")[0];
		var nUserLoginId = reqResponseXML.getElementsByTagName("userLoginId")[0];				
				
		if (nLoginStatus) {

			var loginStatus = nLoginStatus.childNodes[0].nodeValue;
			var adminGroupStatus = nAdminGroup.childNodes[0].nodeValue;			
			var userGreetings = "";
			var userLoginId = "";
			
			if (nUserGreetings && nUserGreetings.childNodes[0]) {
				userGreetings = nUserGreetings.childNodes[0].nodeValue;		
			}
			if (nUserLoginId && nUserLoginId.childNodes[0]) {
				userLoginId = nUserLoginId.childNodes[0].nodeValue;					
			}						

			if (loginStatus == "true") {
				document.getElementById("header_logout_url").style.display = "inline";
				document.getElementById("header_login_url").style.display = "none";							
				document.getElementById("header_register_url").style.display = "none";		
				
				if (document.getElementById("header_admin_url")) {
					if (adminGroupStatus == "true") {
						document.getElementById("header_admin_url").style.display = "inline";		
					}
					else {
						document.getElementById("header_admin_url").style.display = "none";						
					}
				}
				if (document.getElementById("header_login_welcome_message")) {
					document.getElementById("header_login_welcome_message").style.display = "inline";	
					document.getElementById("header_user_greetings").style.display = "inline";				
					document.getElementById("header_user_greetings").innerHTML=userGreetings;
//					document.getElementById("header_user_login_id").style.display = "inline";	
//					document.getElementById("header_user_login_id").innerHTML=userLoginId;
				}				
			}
			else {
				document.getElementById("header_logout_url").style.display = "none";
				document.getElementById("header_login_url").style.display = "inline";				
				document.getElementById("header_register_url").style.display = "inline";
				if (document.getElementById("header_admin_url")) {		
					document.getElementById("header_admin_url").style.display = "none";				
				}
				if (document.getElementById("header_login_welcome_message")) {
					document.getElementById("header_login_welcome_message").style.display = "none";				
					document.getElementById("header_user_greetings").innerHTML="";
//					document.getElementById("header_user_login_id").innerHTML="";					
				}
			}
		}
	}
}		

function gotoFeedback(host,path1,sourceUrl){

	//alert("gotoFeedback(3):"+host + path1 + '?source_url=' + sourceUrl);
	window.location=(host + path1 + '?source_url=' + escape(sourceUrl));

}
function gotoFeedback2(host,path1){

	//alert("gotoFeedback(2):"+host + path1 + '?source_url=' + escape(encodeURI(this.location)));
	window.location=(host + path1 + '?source_url=' + escape(encodeURI(this.location)));

}




