
var args = getQueryStringArgs();
//Create args object containing key value pairs of each element in querystring.
function getQueryStringArgs(){
	var args = new Object();
	var query = location.search.substring(1);
	var pairs = query.split("&");
	for (var i=0; i<pairs.length; i++){
		var pos = pairs[i].indexOf('=');
		if (pos==-1) continue;
		var argname = pairs[i].substring(0,pos);
		var value = pairs[i].substring(pos+1);
		args[argname] = unescape(value);
	}
	return args;
}
//classifies user and retains information regarding user type
function getUserType(){
	var UserType = "";
	var location = "";
	
	var date = new Date();
	date.setTime(date.getTime()+(5*365*24*60*60*1000));	
	
	if (getCookie("UserType")==''){
		UserType = "Browser";	
	}else{
		UserType = getCookie("UserType")
		location = UserType.indexOf('Seeker');
			if (getQueryString("query") != "" && location == -1){
				UserType = UserType + ": Seeker";
			}
	}
	document.cookie = 'UserType=' + UserType + '; expires='+date + '; path=/';
	return(UserType);
}
//User ID is tied to users first session id (unless they clear cookeis)
function getUserID(){
	if (getCookie("UserID")==''){
		var UserID = getCookie("JSESSIONID");
		var date = new Date();
		date.setTime(date.getTime()+(5*365*24*60*60*1000));
		document.cookie = 'UserID=' + UserID + '; expires='+date + '; path=/';
		return UserID;
	}else{
		return(getCookie("UserID"));
	}
}
//for any of the campaign items (eadid, partnerid, etc...) gets from querystring if exists, cookie if not.
function getCampaignValue(campaign){
	var result="";
	if (args[campaign]){
		result = args[campaign];
		setCookie(campaign, result);
	}else if(args[campaign.toLowerCase()]){
		result = args[campaign.toLowerCase()];
		setCookie(campaign, result);
	}else{
		result = getCookie(campaign);
	} 
	return result;
}
//confirm there is a campaign id...if not return ""
function isCampaign(campaign, s_account, pagename){
	if (campaign == null || campaign == ""){
		return("");
	}else{
		return(campaign + " / " + s_account + " / " + pagename);
	}
}

//get cookie value based on name passed.
function getCookie(name){
		
		if(name == '') return('');
        
		thisCookie = document.cookie;
		 
		var start = thisCookie.indexOf(name + '=');
		
		if(start == -1) return('');
         
		var end = thisCookie.indexOf(';', start);
		if (end == -1) end = thisCookie.length;
		var cookieval = thisCookie.substring(start, end);
		var pair = cookieval.split("=");
		var value = unescape(pair[1]);
         return(value);
}
//set cookie based on name and value passed.
function setCookie(name, value){
         if(name != '')
            document.cookie = name + '=' + escape(value) + '; path=/';
}
//retriends querystring value from args object, returns empty string for conveniece (rather than undefined)
function getQueryString(name){
	if (args[name]){
		return args[name];
	}else{
		return('');
	}
}
//checks for both upper and lower case version of querysting names
function getCiQueryString(name){
	if (getQueryString(name.toUpperCase())==''){
		return(getQueryString(name.toLowerCase()));
	}else{
		return(getQueryString(name.toUpperCase()));
	}
}
//clean up search string so it is easier to read in Omniture
function cleanSearchString(pString){
	if (pString == ''){
		return('');
	}else{
		return pString.replace(/\+/g, ' ');
	}
}

//IBA specific...gets first part of vanity url as it's the brand in iba...only return if known brand
function getBrand(account,urlLocation){
	var myregex = /\.com\/(.*)/g;
	var match = myregex.exec(urlLocation);
	if (match != null) {
		var paperBrand = ""
		if (match[1].indexOf('/') == -1){
			paperBrand = match[1];
		}else{
			paperBrand = match[1].substring(0,match[1].indexOf('/'));
		}

		switch(paperBrand){
			case 'trivalleyherald':
			case 'oaklandtribune':
			case 'sanmateocountytimes':
			case 'argus':
			case 'review':
			case 'timesstar':
				return account + " " + paperBrand;
				break;
			default:
				return account;
				break;
		}
	}else{
		return account;
	}
	
}
//clean up breadcrumb so it is easier to read in omniture.
function cleanBreadcrumbs(pString){
	if (pString == ''){
		return('');
	}else{
		pString = pString.replace(/~\^/g, ':');
		pString = pString.replace(/\+|~/g, ' ');
		pString = pString.replace(/\$\|/g, ' /');
		return pString;
	}
}
//clean category so it is easier to read in omniture
function cleanCategory(pString){
	if (pString == ''){
		return('');
	}else{
		pString = pString.replace(/\+/g, ' ');
		return pString;
	}
}
//check for specific page load events and report back to omniture
function getEvents(ArticleTitle){
	var offset = getQueryString("offset");
	var thisEvent = "event1";
	
	if (getQueryString("query")!="" && (offset=="" || offset=="0") && (getQueryString("breadcrumbs")=="" && getQueryString("category")=="")){
		thisEvent = "event10" + ", " + thisEvent;
	}
	
	if (getQueryString("breadcrumbs")!="" || getQueryString("category")!=""){
		thisEvent = "event13" + ", " + thisEvent;
	}

	if (document.referrer.indexOf("query=")!=-1 && ArticleTitle!="null"){
		thisEvent = "event14" + ", " + thisEvent;
	}
	return(thisEvent);
}
//check for specific page loads and report back to omniture
function getArticleHelperPage(articleId, urlLocation, articleTitle){
	var result = "";
	
	if (urlLocation.indexOf('link_to_article.jsp') >= 0){
		result = articleId + " / Link to Article / " + articleTitle;
	}
	
	if (urlLocation.indexOf('print_article.jsp') >= 0){
		result = articleId + " / Print Article / " + articleTitle;
	}
	
	if (urlLocation.indexOf('email_article') >= 0){
		result = articleId + " / Email Article / " + articleTitle;
	}		
	return result;
}
//returns search page number
function getSearchPgNumber(){
	var offset = getQueryString("offset");
	var pageNumber = 1;
	
	if (getQueryString("query")!="") {
		if ((offset!="" && offset!="0")){
			pageNumber += offset/10;
		}
	return("Pg: " + pageNumber);
	}
return("");
}

//returns search page number
function getWithSlash(s){
	if (s==""){
		return("");
	}else{
		return(" / " + s);
	}
}