
function getCookie( check_name ) {
    // first we'll split this cookie up into name/value pairs
    // note: document.cookie only returns name=value, not the other components
    var a_all_cookies = document.cookie.split( ';' );
    var a_temp_cookie = '';
    var cookie_name = '';
    var cookie_value = '';
    var b_cookie_found = false; // set boolean t/f default f

    for ( i = 0; i < a_all_cookies.length; i++ )
    {
        // now we'll split apart each name=value pair
        a_temp_cookie = a_all_cookies[i].split( '=' );


        // and trim left/right whitespace while we're at it
        cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

        // if the extracted name matches passed check_name
        if ( cookie_name == check_name )
        {
            b_cookie_found = true;
            // we need to handle case where cookie has no value but exists (no = sign, that is):
            if ( a_temp_cookie.length > 1 )
            {
                cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
            }
            // note that in cases where cookie is initialized but no value, null is returned
            return cookie_value;
            break;
        }
        a_temp_cookie = null;
        cookie_name = '';
    }
    if ( !b_cookie_found )
    {
        return null;
    }
}


function setCookie( Name, value, expires, path, domain, secure )
{   
    // set time, it's in milliseconds
    var today = new Date();
    
    today.setTime( today.getTime() );   
    /*
    if the expires variable is set, make the correct
    expires time, the current script below will set
    it for x number of days, to make it for hours,
    delete * 24, for minutes, delete * 60 * 24
    */
    if ( expires )
    {
    expires = expires * 1000 * 60 * 60 * 24;
    }
    var expires_date = new Date( today.getTime() + (expires) );
    
    var oUId= value.oUId;
    
    if (oUId)
    {       
        deleteCookie(oUId, '/', '');
    }
    
    document.cookie = 'shim_' + value.uniqueId + "=" +escape($.JSON.encode(value)) +
    ( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
    ( ( path ) ? ";path=" + path : "" ) +
    ( ( domain ) ? ";domain=" + domain : "" ) +
    ( ( secure ) ? ";secure" : "" );
}

function getCookieCount() 
{    
    var allCookies = document.cookie.split( ';' );
    var tempCookie = '';
    var cookieName = '';
    var cookieCount = 0;
    for ( i = 0; i < allCookies.length; i++ )
    {
        // now we'll split apart each name=value pair
        tempCookie = allCookies[i].split( '=' );
        
        // and trim left/right whitespace while we're at it
        cookieName = tempCookie[0].replace(/^\s+|\s+$/g, '');
        
        // if the extracted name matches passed check_name
        if ( cookieName.indexOf("shim_") == 0)
        {
            ++cookieCount;
        }       
    } 
    // set time, it's in milliseconds
    var today = new Date();    
    today.setTime( today.getTime() );  
    var expires = 1 * 1000 * 60 * 60 * 24;
    var expires_date = new Date( today.getTime() + (expires) );
    var path = "/";
    var domain = "";
    document.cookie = "cookieCount=" + escape(cookieCount) +
    ( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
    ( ( path ) ? ";path=" + path : "" ) +
    ( ( domain ) ? ";domain=" + domain : "" );

    document.getElementById('jsCartCount').innerHTML =  '(' + cookieCount + ')';
   
    if(cookieCount == '0')
    {
    	document.getElementById('cartWithItems').style.display =  'none';
    	document.getElementById('cartWithNoItems').style.display =  '';
    }
}

function deleteAllCookies()
{
	var allCookies = document.cookie.split( ';' );
	var tempCookie = '';
    var cookieName = '';
	for ( i = 0; i < allCookies.length; i++ )
    {
        // now we'll split apart each name=value pair
        tempCookie = allCookies[i].split( '=' );
        
        // and trim left/right whitespace while we're at it
        cookieName = tempCookie[0].replace(/^\s+|\s+$/g, '');
        
        // if the extracted name matches passed check_name
        if ( cookieName.indexOf("shim_") == 0)
        {
            
        	deleteCookie(cookieName, '/', '');
        }       
    } 
	getCookieCount();

}

//this deletes the cookie when called
function deleteCookie( name, path, domain )
{
	document.cookie = name + "=" +
    ( ( path ) ? ";path=" + path : "") +
    ( ( domain ) ? ";domain=" + domain : "" ) +
    ";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}

