﻿// JScript File

//PinkClub.masterPage, position of the triangle indicator;
var TriPosX = new Array(102,200,298,394,490,579,658);


//string trim functions
function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}
function ltrim(stringToTrim) {
	return stringToTrim.replace(/^\s+/,"");
}
function rtrim(stringToTrim) {
	return stringToTrim.replace(/\s+$/,"");
}

//Inject Time Zone Offset of client to server
function SetTimeZoneOffset()
{
    if(GetCookie("TimeZoneOffset") == null)
    {
        var mydate=new Date();
        var expdate=new Date();
        var offset = mydate.getTimezoneOffset();
        FixCookieDate (expdate); // Correct for Mac date bug (call only once)
        expdate.setTime (expdate.getTime() + (365 * 24 * 60 * 60 * 1000)); // 365 days
        SetCookie('TimeZoneOffset', offset, expdate, '/');
        document.location=document.URL;
    }
}







// JScript File
//
// Cookie Functions -- "Night of the Living Cookie" Version (25-Jul-96)
//
// Written by: Bill Dortch, hIdaho Design
// The following functions are released to the public domain.
//
// This version takes a more aggressive approach to deleting
// cookies. Previous versions set the expiration date to one
// millisecond prior to the current time; however, this method
// did not work in Netscape 2.02 (though it does in earlier and
// later versions), resulting in "zombie" cookies that would not
// die. DeleteCookie now sets the expiration date to the earliest
// usable date (one second into 1970), and sets the cookie’s value
// to null for good measure.
//
// Also, this version adds optional path and domain parameters to
// the DeleteCookie function. If you specify a path and/or domain
// when creating (setting) a cookie**, you must specify the same
// path/domain when deleting it, or deletion will not occur.
//
// The FixCookieDate function must now be called explicitly to
// correct for the 2.x Mac date bug. This function should be
// called *once* after a Date object is created and before it
// is passed (as an expiration date) to SetCookie. Because the
// Mac date bug affects all dates, not just those passed to
// SetCookie, you might want to make it a habit to call
// FixCookieDate any time you create a new Date object:
//
// var theDate = new Date();
// FixCookieDate (theDate);
//
// Calling FixCookieDate has no effect on platforms other than
// the Mac, so there is no need to determine the user’s platform
// prior to calling it.
//
// This version also incorporates several minor coding improvements.
//
// **Note that it is possible to set multiple cookies with the same
// name but different (nested) paths. For example:
//
// SetCookie ("color","red",null,"/outer");
// SetCookie ("color","blue",null,"/outer/inner");
//
// However, GetCookie cannot distinguish between these and will return
// the first cookie that matches a given name. It is therefore
// recommended that you *not* use the same name for cookies with
// different paths. (Bear in mind that there is *always* a path
// associated with a cookie; if you don’t explicitly specify one,
// the path of the setting document is used.)
//
// Revision History:
//
// "Toss Your Cookies" Version (22-Mar-96)
// - Added FixCookieDate() function to correct for Mac date bug
//
// "Second Helping" Version (21-Jan-96)
// - Added path, domain and secure parameters to SetCookie
// - Replaced home-rolled encode/decode functions with Netscape’s
// new (then) escape and unescape functions
//
// "Free Cookies" Version (December 95)
//
//
// For information on the significance of cookie parameters,
// and on cookies in general, please refer to the official cookie
// spec, at:
//
// http://www.netscape.com/newsref/std/cookie_spec.html
//
//******************************************************************
//
// "Internal" function to return the decoded value of a cookie
//
function getCookieVal (offset) {
    var endstr = document.cookie.indexOf (";", offset);
    if (endstr == -1) {
        endstr = document.cookie.length;
    }
    return unescape(document.cookie.substring(offset, endstr));
}
//
// Function to correct for 2.x Mac date bug. Call this function to
// fix a date object prior to passing it to SetCookie.
// IMPORTANT: This function should only be called *once* for
// any given date object! See example at the end of this document.
//
function FixCookieDate (date) {
    var base = new Date(0);
    var skew = base.getTime(); // dawn of (Unix) time - should be 0
    if (skew > 0) { // Except on the Mac - ahead of its time
        date.setTime (date.getTime() - skew);
    }
}
//
// Function to return the value of the cookie specified by "name".
// name - String object containing the cookie name.
// returns - String object containing the cookie value, or null if
// the cookie does not exist.
//
function GetCookie (name) {
    var arg = name + "=";
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;
    while (i < clen) {
        var j = i + alen;
        if (document.cookie.substring(i, j) == arg) {
            return getCookieVal (j);
        }
        i = document.cookie.indexOf(" ", i) + 1;
        if (i == 0) {
            break;
        }
    }
    return null;
}
//
// Function to create or update a cookie.
// name - String object containing the cookie name.
// value - String object containing the cookie value. May contain
// any valid string characters.
// [expires] - Date object containing the expiration data of the
// cookie. If omitted or null, expires the cookie at the end of the
// current session.
// [path] - String object indicating the path for which the cookie is
// valid.
// If omitted or null, uses the path of the calling document.
// [domain] - String object indicating the domain for which the cookie
// is valid. If omitted or null, uses the domain of the calling
// document.
// [secure] - Boolean (true/false) value indicating whether cookie
// transmission requires a secure channel (HTTPS).
//
// The first two parameters are required. The others, if supplied, must
// be passed in the order listed above. To omit an unused optional
// field, use null as a place holder. For example, to call SetCookie
// using name, value and path, you would code:
//
// SetCookie ("myCookieName", "myCookieValue", null, "/");
//
// Note that trailing omitted parameters do not require a placeholder.
//
// To set a secure cookie for path "/myPath", that expires after the
// current session, you might code:
//
// SetCookie (myCookieVar, cookieValueVar, null, "/myPath", null,
// true);
//
function SetCookie (name,value,expires,path,domain,secure) {
    document.cookie = name + "=" + escape (value) +
    ((expires) ? "; expires=" + expires.toGMTString() : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}
// Function to delete a cookie. (Sets expiration date to start of epoch)
// name - String object containing the cookie name
// path - String object containing the path of the cookie to delete.
// This MUST be the same as the path used to create the
// cookie, or null/omitted if
// no path was specified when creating the cookie.
// domain - String object containing the domain of the cookie to
// delete. This MUST be the same as the domain used to
// create the cookie, or null/omitted if no domain was
// specified when creating the cookie.
//
function DeleteCookie (name,path,domain) {
    if (GetCookie(name)) {
        document.cookie = name + "=" +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}
//

function FeedCookie(pid)
{
    if(GetCookie("Merchandise")!=null)
    {
        var cookieVal=GetCookie("Merchandise");
        if(cookieVal.indexOf(pid)==-1)
        {
            cookieVal = cookieVal + "|" + pid;
            SetCookie("Merchandise",cookieVal);
        }
    }
   else
    {
        var expdate = new Date ();
        FixCookieDate (expdate); // Correct for Mac date bug (call only once)
        expdate.setTime (expdate.getTime() + (24 * 60 * 60 * 1000)); // 24 hrs
        SetCookie("Merchandise",pid,expdate, "/");
    }
   RefreshAmount();
}

function RefreshAmount()
{
    if(GetCookie("Merchandise")!=null)
    {
        var cookieVal = GetCookie("Merchandise");
        var products = cookieVal.split("|");
        document.getElementById("GoodsAmount").innerText=products.length;
    }
    else
    {
        document.getElementById("GoodsAmount").innerText = "0";
    }
}