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( pageType, channel, category, contentType, title, contentID ) {
	var p = new OmnitureParams();

	pageType = clearInputString(pageType) ;  
	channel = clearInputString( channel );  
	category =  clearInputString( category );  
	contentType = clearInputString( contentType ) ;  
	title = clearInputString( title ) ;  
	contentID = clearInputString( contentID ) ;    

	switch ( pageType ){
		case "main_page" :
			p = mainPageParams(channel, category );
		break;
		case "cat_page" :
			p = catPageParams(channel, category, contentType, title, contentID );
		break;
		case "cat_content_page" :
			p = catContentPageParams( channel, category, contentType, title, contentID );
		break;
		default : p = null;
	}
	return p;
}
function mainPageParams(channel, category ){
	var params = new OmnitureParams();
	params.pageName = channel + delimiter + category;
	params.channel = channel ; 
	params.prop1 = "" ; 
	params.prop2 = "" ; 
	params.prop3 = "" ; 
	params.hier1 = channel + delimiter + category ; 
	params.prop4 = "" ; 
	params.prop5 = "" ; 
	params.prop6 = "" ; 	

	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 ; 	

	return params ;
}

function catContentPageParams( channel, category, contentType, title, contentID ){
	var params = new OmnitureParams();
	category = clearCategoryUrl( category );
	var contentPageName = contentType + " 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 = contentType ; 
	params.prop5 = title ; 
	params.prop6 = contentID ; 	
	
	return params ; 
}

function clearInputString(string){
	var reDelim = new RegExp(delimiter, "ig") ; 
	return ( string > "" ? string.toLowerCase().replace(reDelim, delimiterReplaceChar) : "" ) 
}

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, ""); }
