function OmnitureParams() {
	this.pageName = ""; 
	this.channel = ""; 
	this.prop1 = "";
	this.prop2 = "";
	this.prop3 = "";
	this.hier1 = "";
	this.prop4 = "";
	this.prop5 = "";
	this.prop6 = "";
}
var delimiter = ":" ;
var delimiterReplaceChar = " " ; 

function getOmnitureParams(  ) {
	var p = new OmnitureParams();
	var channel = "forum";
	var pageName = getPageName(location.href) ; 
	switch ( pageName ){
		case "default.aspx" : 
			p = mainPageParams(channel, "main page");
		break;
		case "categories.aspx" : 
			p = catPageParams(channel, getCategoryTitle(), "categories", getCategoryTitle(), getQueryParam("catid"));
		break;
		case "messageview.aspx":
			p = catContentPageParams(channel, "thread", getCategoryTitle(), getThreadName(), getQueryParam("threadid"));
		break;
		default : 
			p = mainPageParams(channel, pageName.substr(0, pageName.indexOf(".")));
		break;
	}

	//debug (p)
	return p;
}
function mainPageParams(channel, section ){
	var params = new OmnitureParams();
	params.pageName = channel + delimiter + section;
	params.channel = channel ; 
	params.prop1 = "" ; 
	params.prop2 = "" ; 
	params.prop3 = "" ; 
	params.hier1 = channel + delimiter + section ; 
	params.prop4 = "" ; 
	params.prop5 = "" ; 
	params.prop6 = "" ; 	
	params.prop15 = getUserInfoString();
	params.eVar15 = s.prop21;	

	return params ;
}
function catPageParams(channel, category, contentType, title, contentID ){
	var params = new OmnitureParams();
	category = clearCategoryUrl( category );
	params.pageName = channel + delimiter + category;
	params.channel = channel ; 
	params.prop1 = channel + delimiter + category ; 
	params.prop2 = channel + delimiter + category ; 
	params.prop3 = channel + delimiter + category ; 
	params.hier1 = channel + delimiter + category ; 
	params.prop4 = contentType ; 
	params.prop5 = title ; 
	params.prop6 = contentID ; 	
	params.prop15 = getUserInfoString();
	params.eVar15 = s.prop21;
	return params ;
}

function catContentPageParams( channel, section, category, title, contentID ){
	var params = new OmnitureParams();
	category = clearCategoryUrl( category );
	var contentPageName = section + " page" ; 
	params.pageName = channel + delimiter + category + delimiter + contentPageName ;
	params.channel = channel ; 
	params.prop1 = channel + delimiter + category ; 
	params.prop2 = channel + delimiter + category + delimiter + contentPageName ; 
	params.prop3 = channel + delimiter + category + delimiter + contentPageName; 
	params.hier1 = channel + delimiter + category + delimiter + contentPageName; 
	params.prop4 = section ; 
	params.prop5 = title ; 
	params.prop6 = contentID ; 	
	params.prop15 = getUserInfoString();
	params.eVar15 = s.prop21;	
	return params ; 
}
function getPageName(url){
	url = url.substring(url.lastIndexOf("/") + 1 );
	if ( url == "" )
		return "default.aspx" ; 
	return url.substring(0, url.indexOf("?") > 0 ? url.indexOf("?") : url.length );	
}
function getTextFromElement(name){
	var l = document.getElementsByName(name)[0];
	var title = ( l ? l.innerText || l.textContent : "" ) ;
	return trim(title.toLowerCase()); 	
}
function getCategoryTitle(){
	return getTextFromElement("ftheaderbarlink") ; 
}
function getThreadName(){
	return getTextFromElement("threadname");
}
function getUserInfoString(){
	var e = document.getElementById("ivelum_user_info_string");
	return ( e ? ( e.innerText || e.textContent ).toLowerCase(): "" );
}
function getQueryParam(param ){
	var re = new RegExp(param + "=([a-zA-Z0-9]+)&?", "ig" );
	re.test(location.href);
	return RegExp.$1; 
}
function debug( obj, pageType ){
	dbgDiv = document.getElementById("omniture-dbg"); 
	for ( prop in obj ){
		dbgDiv.innerHTML += prop + "=" + obj[prop] + "; <br>";
	}
	dbgDiv.innerHTML += "<br><br>(" + pageType + ")";
	dbgDiv.style.border = "1px solid black";
	dbgDiv.style.display = "none";
	dbgDiv.style.padding = "4px";
	dbgDiv.style.position = "absolute";
	dbgDiv.style.right = "0px";
	dbgDiv.style.textAlign = "left";
	dbgDiv.style.top = "150px";
	dbgDiv.style.width = "200px";
	dbgDiv.style.fontSize = "11px";
	dbgDiv.style.backgroundColor = "black";
	 
	if ( dbgDiv.innerHTML > ""  ) dbgDiv.style.display = "block";
}
function clearCategoryUrl( url ){
	var reMinus = /-/ig
	var reSlash = /\//ig
	url = url.replace(reMinus, delimiterReplaceChar);
	url = url.replace(reSlash, delimiterReplaceChar); // replace slashes into url to spaces
	return trim(url) ; 
}
function trim(string){ return string.replace(/(^\s+)|(\s+$)/g, ""); }