/* QN 11.15.06: function to update the links and text in util bar based on user cookie values */
var remember = getUserCookieValue('REMEMBER');
function updateLinksBasedOnCookieValues(toSonyStyle, notYou, logout, userImpersonated,storeId,catalogId,langId)
{
	if (remember == null)
		remember = '0';

	var recognized = false;
    var loggedIn = false;

    /*
    var logonCookie = getCookie('SY_REC_LOGON');
    if (logonCookie != null && logonCookie == "true")
    	loggedIn = true;
    */
    loggedIn = isUserLoggedIn(); // isUserLoggedIn() is defined in cookies.js, so utilBar.js has to be imported after cookies.js

    if (remember == '1' && !loggedIn)
    {
        recognized = true;
    }

    /* Setting the greeting message */
    if (recognized || loggedIn)
    {
        var userName = getUserCookieValue('NAME');
        if (userName == null || userName.length == 0)
            userName = toSonyStyle;
        document.getElementById("greetingElement").innerHTML = userName;
    }

    if (recognized) {
        document.LogoffForm.remember.value = 'false';
        document.getElementById("greetingElement").innerHTML =
        document.getElementById("greetingElement").innerHTML + "&nbsp;" +
            "(<a href='#' onClick='javascript: logOutRecognizedUser()' >" + notYou + "</a>)";
    }
    /* Setting the Register/Logout link */
    else if (loggedIn)
    {
        // Change the Login link to Logout
        changeLoginToLogoutLink(remember, logout);

        // Change My Account link to go to MyAccountView
        changeMyAcountLinks(userImpersonated,storeId,catalogId,langId);

        /*
        document.getElementById("registerElement").innerHTML =
            "<div><a class='logout'  onClick='javascript: if ( parent.CSR_ACTIONS ){ this.target='_top';}'  href='<c:out value='${LogoffURL}'/>&remember="
            + remember +
            "' title='<fmt:message key='Logout' bundle='${sonyStyleText}'/>'><span><fmt:message key='Logout' bundle='${sonyStyleText}'/></span></a></div>";
        */
    }

}

function updateHeaderLinksBasedOnCookieValues(toSonyStyle,userImpersonated,storeId,catalogId,langId)
{
	if (remember == null)
		remember = '0';

	var recognized = false;
    var loggedIn = false;
    var isName = true; //flag to see, if user have complete profile, SJANI 09/08/2009

    loggedIn = isUserLoggedIn(); // isUserLoggedIn() is defined in cookies.js, so utilBar.js has to be imported after cookies.js

    if (remember == '1' && !loggedIn)
    {
        recognized = true;
    }

    /* Setting the greeting message */
    if (recognized || loggedIn)
    {
	    var userName = getUserCookieValue('NAME');
	    if (userName == null || userName.length == 0) {
	    	userName = toSonyStyle;
	    	isName = false;
	    }
    }

    if (recognized) {
        document.LogoffForm.remember.value = 'false';
        if (!isName) userName = 'you';
        document.getElementById("headerLoginMesssageTab").innerHTML = "Welcome, "+
				"<a href='#' onClick='javascript: logOutRecognizedUser()' id='notYouHeaderLink' class='topHeaderLink'>Not "+ userName +"?</a>";
    }
    else
    {
	    if (loggedIn)
	    {
			changeLoginToLogoutHeaderLink(remember,userName, isName);
	            // Change My Account link to go to MyAccountView
	        changeMyAcountHeaderLinks(userImpersonated,storeId,catalogId,langId);
	    }
    }
}


/* Switch the Register/Login link to Logout */
function changeLoginToLogoutLink(remember, logout)
{
    document.LogoffForm.remember.value = remember;
    document.getElementById("logonLink").className = "logout";
    document.getElementById("logonLink").href = "#";
    document.getElementById("logonLink").title = logout;
    document.getElementById("logonLink").innerHTML = "<span>" + logout + "</span>";
    document.getElementById("logonLink").onclick = logoutUser;
}

/* Switch the Login link to Welcome/Logout */
/* added topHeaderLinkId id to anchor tags per defect 4585  AJ 12.24.2009 */
function changeLoginToLogoutHeaderLink(remember,userName, isName)
{
    document.LogoffForm.remember.value = remember;
    if (isName) {
		document.getElementById("headerLoginMesssageTab").innerHTML = "<span class='toggleLoginSection'>Welcome, "+ userName+"</span>" +
				"<span class='toggleLoginSection hidden'>"+ userName+", <a href='#' onClick='javascript:logoutUser()' rel='' class='topHeaderLink' id='topHeaderLinkId'>Logout</a></span>";
	}else{
		document.getElementById("headerLoginMesssageTab").innerHTML = "<span class='toggleLoginSection'>Welcome Back,</span>" +
				"<span class='toggleLoginSection hidden'>Welcome Back, <a href='#' onClick='javascript:logoutUser()' rel='' class='topHeaderLink' id='topHeaderLinkId'>Logout</a></span>";
	}
}


/* QN 5/27/08 - #10475 */
function logOutRecognizedUser()
{
	remember = '0';
	logoutUser();
}

function logoutUser()
{
	/* QN 5/27/08 - #10475 */
	if (remember == '1')
		document.LogoffForm.rememberMe.value = 'true';
	else
		document.LogoffForm.rememberMe.value = 'false';

	if ( parent.CSR_ACTIONS ) {
		return false ;
	}
    document.LogoffForm.submit();
}

/* Switch the My Acount links for logged in users */
function changeMyAcountLinks(userImpersonated,storeId,catalogId,langId)
{
    //document.getElementById("myAccountLink").href = "javascript:document.MyAccountForm.submit();";
//    var storeId = getURLParam("storeId");
//    var catalogId = getURLParam("catalogId");
//    var langId = getURLParam("langId");

    var storeId = storeId;
    var catalogId = catalogId;
    var langId = langId;

    var nvps = '?storeId=' + storeId + '&catalogId=' + catalogId + '&langId=' + langId;

    document.getElementById("userProfileLink").href = 'SYAccountProfileView' + nvps;
	if (userImpersonated != 'true') {
	    document.getElementById("billingInfoLink").href = 'SYUserPaymentListView' + nvps;
    }
    document.getElementById("emailSubLink").href = 'SYUserNewslettersView' + nvps;
    document.getElementById("orderInfoLink").href = 'SYOrderHistoryView' + nvps;
    document.getElementById("addressBookLink").href = 'AddressBookForm' + nvps;
}

/* Switch the My Acount links for logged in users */
function changeMyAcountHeaderLinks(userImpersonated,storeId,catalogId,langId)
{
    var nvps = '?storeId=' + storeId + '&catalogId=' + catalogId + '&langId=' + langId;

    document.getElementById("userProfileLink").href = 'SYAccountProfileView' + nvps;
	if (userImpersonated != 'true') {
	    document.getElementById("billingInfoLink").href = 'SYUserPaymentListView' + nvps;
    }
    document.getElementById("emailSubLink").href = 'SYUserNewslettersView' + nvps;
    document.getElementById("orderInfoLink").href = 'SYOrderHistoryView' + nvps;
    document.getElementById("addressBookLink").href = 'AddressBookForm' + nvps;
}

// getURLParam() assumes URL parameters are name-value-pairs
// A valid URL would be http://domain/page?name1=value1&name2=value2
// Any similar, more (or less) robust function can be substituted here
function getURLParam(name) {
	var pairs = window.location.search.substr(1).split("&");
	for(var i = 0; i < pairs.length; i++) {
		var nvp = pairs[i].split("=");
		if((nvp.length == 2) && (nvp[0] == name)) {
			return nvp[1];
		}
	}
	return "";
}




function displayLogoffMessage()
{
    var flag = getURLParam("displayLogoffMsg");
    if (flag == '1')
        alertMsg('logged-out');
}

function popOpenMiniWishlist()
{
        o=document.getElementById('wishlist_dropdown');
        path=o.parentNode.parentNode;
        if (path.className == '') {
            utilityReset(liNodes);
            o.parentNode.parentNode.className = 'on';
            selectBoxFlag++;
            hideSelectBoxes('hidden');
            }
        window.scrollTo(0,0);
}

function warnUserBeforeCheckout(myURI, ctoJSP, ctoCheckoutWarning){

	var URI = myURI;
	var bProceed = true;

	var ctoPage = ctoJSP;

	if (URI.indexOf(ctoPage)!=(-1)){
		bProceed = confirm(ctoCheckoutWarning);
	}

	return bProceed;
}