function getCategory() {
	var myCategory;
	var myCategoryTmp;
	var myCategoryTmp2;
	var myCategoryTmp3;
	if ((homePage == "true") || (homePageOutlet == "true") || (thankYouPaypal == "true")) {		
		myCategory = "";
	} else {
		myCategoryTmp = "";
		if (document.getElementById("category")){
		myCategoryTmp = document.getElementById("category").innerHTML;
		}
		myCategoryTmp2 = myCategoryTmp.replace(new RegExp(/,/g),":");
		myCategoryTmp3 = myCategoryTmp2.replace(new RegExp(/®/g),"");
		myCategory = myCategoryTmp3.replace(new RegExp(/™/g),"");
	}
	return myCategory;
}

function getProductDetail() {
    var myProductDetailTmp = document.getElementById("productdetail").innerHTML;  
	var myProductDetailTmp2 = myProductDetailTmp.replace(new RegExp(/,/g),":");
	var myProductDetailTmp3 = myProductDetailTmp2.replace(new RegExp(/®/g),"");
	var myProductDetail = myProductDetailTmp3.replace(new RegExp(/™/g),"");
	return myProductDetail;
}

function getSubCategory() {
    var mySubCategoryTmp = document.getElementById("subcategory").innerHTML;  
	var mySubCategoryTmp2 = mySubCategoryTmp.replace(new RegExp(/,/g),":");
	var mySubCategoryTmp3 = mySubCategoryTmp2.replace(new RegExp(/®/g),"");
	var mySubCategory = mySubCategoryTmp3.replace(new RegExp(/™/g),"");
	return mySubCategory;
}


function searchSku()  {
	if (thankYouPaypal != "true") {
		var links = document.getElementsByTagName("a");	
		var thisCategory = getCategory();
		
		for(var i=0; i<links.length;i++){
			var temp = links[i].href;
			if (temp.indexOf("sku") == -1){
			 // DO NOTHING
			} else {
				skusArray[skusArray.length] = temp;
			}
		}
		
		for(var i=0;i<skusArray.length;i++){
			temp = skusArray[i];
			temp = temp.replace("http://cableorganizer.com/cgi-cableorganizer/sb/order.cgi?storeid=*2ad1efba8697f324607a540c07bf145c80c44dcb7f1484&dbname=products&sku=","");
			temp = temp.replace("https://cableorganizer.com/cgi-cableorganizer/sb/order.cgi?storeid=*2ad1efba8697f324607a540c07bf145c80c44dcb7f1484&dbname=products&sku=",""); 
			//temp = temp.replace("http://wireless.cableorganizer.com/cgi-cableorganizer/sb/order.cgi?storeid=*2ad1efba8697f324607a540c07bf145c80c44dcb7f1484&dbname=products&sku=",""); 											
			//temp = temp.replace("http://cableorganizer.com/cgi-cableorganizer/sb/order.cgi?storeid=*24efb634a4deb1747c188540f5b679071c4c4fc9&dbname=products&sku=","");
			//temp = temp.replace("http://cableorganizer.com/cgi-cableorganizer/sb/order.cgi?storeid=*2c0a6b68dfca71322af5eb45407ff145ed0847be4c9b414b&dbname=products&sku=","");			
			temp = temp.replace("/cgi-cableorganizer/sb/order.cgi?storeid=*2ad1efba8697f324607a540c07bf145c80c44dcb7f1484&dbname=products&sku=","");
			//temp = temp.replace("/cgi-cableorganizer/sb/order.cgi?storeid=*24efb634a4deb1747c188540f5b679071c4c4fc9&dbname=products&sku=","");
			//temp = temp.replace("/cgi-cableorganizer/sb/order.cgi?storeid=*2c0a6b68dfca71322af5eb45407ff145ed0847be4c9b414b&dbname=products&sku=","");			
			temp = temp.replace("&function=add","");
			skusArray[i] = temp;	
		}
		
		for(var i=0; i<skusArray.length;i++){
			var foundIt = false;
			for(var j =0; j<cleanedArray.length;j++){
				if (skusArray[i] == cleanedArray[j]){
					 foundIt = true;
				}
			}
			
			if(foundIt == false){
				cleanedArray[cleanedArray.length] = skusArray[i];
			}
			foundIt = false;	
		}	
		
		myProduct = "";
		for(var i=0;i<cleanedArray.length;i++){
			if (i == 0){
			myProduct = ";" + cleanedArray[i] + ";;;;eVar2=" + thisCategory;
			} else {
			myProduct = myProduct + ",;" + cleanedArray[i] + ";;;;eVar2=" + thisCategory;
			}
		}
	}
}


function omnitureLoad() {
var nameCategory = "Category: ";
var nameSubCategory = "SubCategory : ";
var nameProductDetail = "Product Detail: ";	
var thisCategory;
var thisProductDetail;
var thisSubCategory;
		
	// Home Page
	if (homePage == "true") {		
		myPageName = "Home Page";
		myChannel = "";	
		myEvent = "";
	}
	else if (homePageOutlet == "true") {
		myPageName = "Home Page Outlet";
		myChannel = "";	
		myEvent = "";
	}
	else if (page404 == "true") {
		myPageName = "";
		s.pageType = "errorPage";
		myChannel = "";	
		myEvent = "";		
	}
	else if (thankYouPaypal == "true") {
		myPageName = "Checkout: Confirmation Page";
		myChannel = "";
		myEvent = "purchase";
		myProduct = getCookie("paypalproducts");		
		s.zip = getCookie("paypalzip");	
		s.state = getCookie("paypalstate");	
		s.purchaseID = mypaypalordernumber;				
	}
	// Product Details Pages
	else if (document.getElementById("productdetail")) {				
		thisCategory = getCategory();
		thisProductDetail = getProductDetail();		
		myPageName = nameProductDetail + thisProductDetail;
		myChannel = thisCategory;
		myEvent = "prodView";	
    } 
	// Category Pages
	else {   	
		thisCategory = getCategory();		
		myChannel = thisCategory;				
			if (document.getElementById("subcategory")) {
				var thisSubCategory = getSubCategory();
				myPageName = nameSubCategory + thisCategory + " - " + thisSubCategory;
				myEvent = "prodView";
			}
			else {
				myPageName = nameCategory + thisCategory;
				myEvent = "";
			}
    }
			
}

/*
   name - name of the cookie
   value - value of the cookie
   [expires] - expiration date of the cookie
     (defaults to end of current session)
   [path] - path for which the cookie is valid
     (defaults to path of calling document)
   [domain] - domain for which the cookie is valid
     (defaults to domain of calling document)
   [secure] - Boolean value indicating if the cookie transmission requires
     a secure transmission
   * an argument defaults when it is assigned null as a placeholder
   * a null placeholder is not required for trailing omitted arguments
*/

function setCookie(name, value, expires, path, domain, secure) {
  var curCookie = name + "=" + escape(value) +
      ((expires) ? "; expires=" + expires.toGMTString() : "") +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      ((secure) ? "; secure" : "");
  document.cookie = curCookie;
}


/*
  name - name of the desired cookie
  return string containing value of specified cookie or null
  if cookie does not exist
*/

function getCookie(name) {
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  } else
    begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}


/*
   name - name of the cookie
   [path] - path of the cookie (must be same as path used to create cookie)
   [domain] - domain of the cookie (must be same as domain used to
     create cookie)
   path and domain default if assigned null or omitted if no explicit
     argument proceeds
*/

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";
  }
}

// date - any instance of the Date object
// * hand all instances of the Date object to this function for "repairs"

function fixDate(date) {
  var base = new Date(0);
  var skew = base.getTime();
  if (skew > 0)
    date.setTime(date.getTime() - skew);
}

function rand(start, end) {   
  return Math.floor(Math.random()*((end+1)-start)) + start;
}


/* Decimal to Hex */
var hD="0123456789ABCDEF";
function d2h(d) {
	var h = hD.substr(d&15,1);
	while(d>15) {d>>=4;h=hD.substr(d&15,1)+h;}
	return h;
}

/* Hex to Decimal */
function h2d(h) {return parseInt(h,16);} 

/* Any base */
function toRadix(N,radix) {
 var HexN="", Q=Math.floor(Math.abs(N)), R;
 while (true) {
  R=Q%radix;
  HexN = "0123456789abcdefghijklmnopqrstuvwxyz".charAt(R)+HexN;
  Q=(Q-R)/radix; if (Q==0) break;
 }
 return ((N<0) ? "-"+HexN : HexN);
}

/* Base 36 to Decimal */
function t2d(t) {return parseInt(t,36);} 

/* Is Integer ? */
function isInteger(value) {
  return (parseInt(value) == value);
}
