/*Intermec Omniture helper file*/



/*Site Object

 * Intermec uses Javascript objects to track all sites for Omniture reporting

 * 

 */



/*SITE CONFIGURATION

 * 

 * 

 * @param {Object} name

 */

/*Site Domain Configuration*/



	var referringUrl=window.location.href;

	

	


var inspectDomain =domainQuery(referringUrl);

var page = {

		pageName: "",channel: "",prop1: "",prop2: "",prop3: "",type:"",

		url:"",

		nameFormat:"",

		successEvent: "", prop4: "", prop5: "", prop6: "", prop7: "", prop8: "",

		prop9: "", prop10: "", prop11: "", prop12: "", prop13: "", prop14: "", prop15: "", prop16: "", prop17: "", prop18: "", prop19: "", prop20: "", prop21: "", prop22: "", prop23: "", prop24: "", prop25: "",eVar1: "", eVar2: "", eVar3: "", eVar4: "", eVar5: "", eVar6: "", eVar7: "", eVar8: "", eVar9: "", eVar10: "", eVar11: "", eVar12: "", eVar13: "", eVar14: "", eVar15: "", events:"",isSearch:false,searchType:"",isReqPodCastStart:false,isReqPodCastComplete:false,isWhitePaperStart:false,isWhitePaperComplete:false,isNewsletterStart:false,isNewsletterComplete:false,isMagazineStart:false,isMagazineComplete:false,WPID:"",PD:""};

var domain = {

		name: "",

		siteID: "",

		domain: "",

		defaultPage: "",

		domainDelimiter: ".",

		pathDelimeter: "-",

		pageNameDelimeter: ".",

		queryStringDelimeter: ":",

		hierarchyDelim: "-",

		page: page

	};



/*Report Suite Configuration*/

var reportSuite = {

		name: "Intermec Dev Report Suite",

		account: "intermecusdev",

		Type: "development",

		visitorNamespace: "intermec",

		dc: "112",

		siteDomain: "dev.intermec.com",

		charSet: "ISO-8859-1",

		currencyCode: "USD",

		trackDownloadLinks: "true",

		trackExternalLinks: "true",

		trackInlineStats: "true",

		linkDownloadFileTypes: "exe,zip,wav,mp3,mov,mpg,avi,wmv,doc,pdf,xls",

		linkInternalFilters: "javascript:,intermec,mktpoint.com,phx.corporate-ir.net,ipartner.intermecrsvp.com,intermec.custhelp.com,intermec-spanish.custhelp.com,bulldogsolutions.net",

		linkLeaveQueryString: "false",

		linkTrackVars: "None",

		linkTrackEvents: "None",

		usePlugins: "true",

		trackingServer: "",

		trackingServerSecure: ""

	}



//Create site object that holds domain, report suites and campaigns

var site ={name: "Default",domain:domain,reportSuite:reportSuite}

/*Domain Retrival function*/



	





	

	//get domain and set variables based on it

	

	switch (inspectDomain) {

		

		case "mktpoint.com":

			site.name = "Marketpoint";

			site.domain.name = "mktpoint";

			site.domain.siteID = "intermecus";

			site.reportSuite.account = "intermecus";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;

		

		case "intermec.com":

			site.name = "Intermec";

			site.domain.name = "intermec";

			site.domain.siteID = "intermecus";

			site.reportSuite.account = "intermecus";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;

			

		case "www.intermec.com.au":

			site.name = "Intermec australia";

			site.domain.name = "intermec australia";

			site.domain.siteID = "intermecaustralia";

			site.reportSuite.account = "intermecaustralia";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;

			

		case "www.intermec.com.br":

			site.name = "Intermec brazil";

			site.domain.name = "intermec brazil";

			site.domain.siteID = "intermecbrazil";

			site.reportSuite.account = "intermecbrazil";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;


		
		case "www.intermec.ca":

			site.name = "Intermec canada";

			site.domain.name = "intermec canada";

			site.domain.siteID = "intermeccanada";

			site.reportSuite.account = "intermeccanada";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;
		

		case "fr.intermec.ca":

			site.name = "Intermec canada french";

			site.domain.name = "intermec canada french";

			site.domain.siteID = "intermeccanadafr";

			site.reportSuite.account = "intermeccanadafr";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;



		case "www.intermec.com.cn":

			site.name = "Intermec china";

			site.domain.name = "intermec china";

			site.domain.siteID = "intermecchina";

			site.reportSuite.account = "intermecchina";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;


		case "www.intermec.dk":

			site.name = "Intermec denmark";

			site.domain.name = "intermec denmark";

			site.domain.siteID = "intermecdenmark";

			site.reportSuite.account = "intermecdenmark";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;


		case "www.intermec.fr":

			site.name = "Intermec france";

			site.domain.name = "intermec france";

			site.domain.siteID = "intermecfrance";

			site.reportSuite.account = "intermecfrance";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;

		
		case "www.intermec.de":

			site.name = "Intermec germany";

			site.domain.name = "intermec germany";

			site.domain.siteID = "intermecgermany";

			site.reportSuite.account = "intermecgermany";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;
		

		case "www.intermec.it":

			site.name = "Intermec italy";

			site.domain.name = "intermec italy";

			site.domain.siteID = "intermecitaly";

			site.reportSuite.account = "intermecitaly";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;
		

		case "www.intermec.com.mx":

			site.name = "Intermec mexico";

			site.domain.name = "intermec mexico";

			site.domain.siteID = "intermecmexico";

			site.reportSuite.account = "intermecmexico";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;
		

		case "www.intermec.nl":

			site.name = "Intermec netherlands";

			site.domain.name = "intermec netherlands";

			site.domain.siteID = "intermecnetherlands";

			site.reportSuite.account = "intermecnetherlands";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;

		
		case "www.intermec.com.sg":

			site.name = "Intermec singapore";

			site.domain.name = "intermec singapore";

			site.domain.siteID = "intermecsingapore";

			site.reportSuite.account = "intermecsingapore";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;

		

		case "www.intermec.es":

			site.name = "Intermec spain";

			site.domain.name = "intermec spain";

			site.domain.siteID = "intermecspain";

			site.reportSuite.account = "intermecspain";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;


		case "www.intermec.se":

			site.name = "Intermec sweden";

			site.domain.name = "intermec sweden";

			site.domain.siteID = "intermecsweden";

			site.reportSuite.account = "intermecsweden";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;

		
		case "www.intermec.co.uk":

			site.name = "Intermec uk";

			site.domain.name = "intermec uk";

			site.domain.siteID = "intermecuk";

			site.reportSuite.account = "intermecuk";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";



			break;


		case "intermec.custhelp.com":

			site.name = "Intermec KB Dev";

			site.domain.name = "Intermec KB dev";

			site.domain.siteID = "intermecus";

			site.reportSuite.account = "intermecus";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="kb";



			break;

		

		case"home.comcast.net":

			site.name = "Intermec dec Dev";

			site.domain.name = "Intermec dec dev";

			site.domain.siteID = "intermecusdev";

			site.reportSuite.account = "intermecusdev";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";

		break;

		

		case "localhost":

            site.name = "localhost";

			site.domain.name = "local";

	        site.domain.siteID = "Local";

            site.reportSuite.account = "intermecusdev";

	        site.domain.page.type="web page";

	        site.domain.page.nameFormat = "pageAssign";

            break;

		



			

		default:

			site.name = "Default Site Name";

			site.domain.name = "intermecus";

			site.domain.siteID = "intermecus";

			site.domain.domain = domainQuery(window.location.href);

			site.reportSuite.account = "intermecus";

			site.domain.page.nameFormat = "pageAssign";

			site.domain.page.type="web page";

	}//end switch

	/*Set Page level variables outside of domains*/

	

	site.domain.domain = inspectDomain;

	site.domain.page.url = referringUrl;

	

	switch(site.reportSuite.account){



		case "intermecusdev":

			site.reportSuite.visitorNamespace="intermec";

			site.reportSuite.cookieDomain="112";

			site.reportSuite.trackingServer="omniture.intermec.com";

			site.reportSuite.trackingServerSecure="";





		break;

		



		default:

			site.reportSuite.visitorNamespace="intermec";

			site.reportSuite.cookieDomain="112";

			site.reportSuite.trackingServer="omniture.intermec.com";

			site.reportSuite.trackingServerSecure="";

		

	}



		//check if page is in a blog or forum or regular page

	

		site.domain.page.type = checkPageType(inspectDomain, site.domain.page.url, site.domain.page.type);

		site.domain.page.nameFormat = checkPageNameFormat(site.domain.page.nameFormat, site.domain.page.type);

		

		/*Set page naming type*/

		

		if (site.domain.page.nameFormat == "pageAssign") {

			urlTag();

		}





/** VARIABLE CONFIGURATION*

 * Configure all variables here that don't need to be set by a particular domain

 * @param {Object} url

 */











/**CUSTOM FUNCTIONS CONFIG AREA** 

 * Put all non-Omniture helper functions here.

 * DO NOT PUT ANY MORE VARIABLES BELOW. FUNCTIONS ONLY TO KEEP THINGS CLEAN.

 * @param {Object} url

 */



function domainQuery(url){

		var urlstr = unescape(location);

		var url = url;

		var domainArray = new Array();

		var domain = '';

		domainArray = url.substring(url.indexOf('//') + 2, url.indexOf('/', url.indexOf('//') + 2)).split('.');

		domain = domainArray[0];

		if (domainArray.length == 1) {

			return domain;

		}

		else {

		

			var iDomain = domainArray[domainArray.length - 1]

			for (var i = 1; i < domainArray.length - 1; i++) {

				domain = domain + "." + domainArray[i]

			}

			domain = domain + "." + iDomain;

		

			return domain;

		}

		

}//END domainQuery

	

function checkPageNameFormat(nameFormat,type)

{  

	var pgn=nameFormat;

	var pgType=type;

	

	if(pgn=="pageAssign"){

	

	

	return pgn;

	

	}

	



	

}



//site.domain.page.pageName=pageAssign(window.location.href,site.domain.domain);



/*checkPageType()  

	 * Verify if page is regular web page, blog, forums page, etc.

	 * If you need to add a new page type, pass it to this variable and add a new checking mechanism

	 */

function checkPageType(domain, url, type){

		var pageDomain = domain;

		var pageUrl = url;

		var pageType = type;

		

				

				return pageType;

				

/*end checkPageType(url)*/

}



/*Page Naming helper*/

function urlTag(){



var pType=site.domain.page.type;



if(pType=="kb"){

	site.domain.page.pageName="knowledge base";

	site.domain.page.channel="knowledge base";

	site.domain.page.hier1="knowledge base";

	return;

	

}		

	var u = site.domain.page.url;



	

	//var pgExt = pgExt;

	if (u.indexOf("http:") > -1) {

		u = u.substring(u.indexOf('//') + 2, u.length);

	}

	var temp = u.substring(u.indexOf('/') + 1, (u.length));

	var strsp = temp.split(".");

	var sr = strsp[0];

	

	var sp = sr.split("/");

	var str = sp[0];

	if (str == '') {

		site.domain.page.pageName="home";

		site.domain.page.hier1="home";

		return;

	}

	if(str=="intermec"){

		site.domain.page.pageName="home";

		site.domain.page.hier1="home";

		return;

	}

	

	var iStr = sp[sp.length - 1]

		

		for (var i = 1; i < sp.length - 1; i++) {

			str = str + "," + sp[i]

		}

		

		if (iStr == "index") {

			

			site.domain.page.pageName = str;

			shr=str.split(",");

			

			var hier=shr[0];

			for(var g=1;g< shr.length-2;g++){

				

				hier= hier+","+shr[g];

				

			}

			site.domain.page.hier1="home,"+  hier;

			

		}

		else {



		site.domain.page.hier1=str;

		

		if (str == iStr) {

			site.domain.page.pageName = str;

		}

		else {

			str = str + "," + iStr;

			site.domain.page.pageName = str;

		}

		

		}

		site.domain.page.channel=sp[0];

		if (sp[1]) {

			site.domain.page.prop4 = sp[1];

			if (sp[2]) {

				site.domain.page.prop5 = sp[2];

				if(site.domain.page.prop5=="index"){

					site.domain.page.prop5="";

				}

				

			}

		if(str==''){

		str="home";

		site.domain.page.pageName="home";

		site.domain.page.hier1="home";

		

	}

//PRODUCT SECTION

		if(site.domain.page.channel=="products"){	

		//product page remove a,b,c,d from string

		if (site.domain.page.pageName.indexOf("a,b,c,d,") > -1) {

		u=site.domain.page.pageName;

		u = u.substring(u.indexOf('d,') + 2, u.length);

		site.domain.page.pageName="products,"+u;

		site.domain.page.hier1="home,"+site.domain.page.pageName;

		}

	//var temp = u.substring(u.indexOf('/') + 1, (u.length));

	//var strsp = temp.split(".");

	//var sr = strsp[0];

	//var sp = sr.split("/");

	//var str = sp[0];

		

		

			if (site.domain.page.prop4) {

				if (site.domain.page.prop4 == "rfid") {

				//do nothing

				}

				else 

				if (site.domain.page.prop4 == "Printers") {

				//do nothing

				}

				else 

					if (site.domain.page.prop4 == "Media") {

					//do nothing

					}

					else 

						if (site.domain.page.prop4 == "Bar Code Scanners") {

						//do nothing

						}

						else 

							if (site.domain.page.prop4 == "Computers") {

							//do nothing

							}

							else 

								if (site.domain.page.prop4 == "Networking") {

								//do nothing

								}

								else 

									if (site.domain.page.prop4 == "Applications and Software") {

									//do nothing

									}

									else 

										if (site.domain.page.prop4 == "OEM") {

										//do nothing

										}

										else {

											site.domain.page.prop3 = site.domain.page.prop4;

											site.domain.page.products = ";" + site.domain.page.prop4;

										}

		}

		}

		}

		

		/*check for podcast start page*/

		if(site.domain.page.pageName.toLowerCase()=="intermec,podcastleadcapture,podcastlogin"){

			site.domain.page.isReqPodCastStart=true;

			

			

		}

		if(site.domain.page.pageName.toLowerCase()=="intermec,podcastleadcapture,thanks"){

			site.domain.page.isReqPodCastStart=true;

			

		}

		if(site.domain.page.pageName.toLowerCase()=="intermec,whitepaperleadcapture,whitepaper%20login"){

			site.domain.page.isWhitePaperStart=true;

			

		}

		if(site.domain.page.pageName.toLowerCase()=="intermec,whitepaperleadcapture,thanks"){

			site.domain.page.isWhitePaperComplete=true;

			

		}

		if(site.domain.page.pageName.toLowerCase()=="about_us,enewsletters"){

			site.domain.page.isNewsletterStart=true;

			

		}

		if(site.domain.page.pageName.toLowerCase()=="about_us,realtime_magazine,confirmation"){

			site.domain.page.isMagazineComplete=true;

			

		}

		if(site.domain.page.pageName.toLowerCase()=="partners,finder"){



			

		}

		

		

	}





function doSearch(q){

var kw=q;

		site.domain.page.isSearchPage=true;

		site.domain.page.prop1 = kw;

		site.domain.page.eVar2= kw;





return;

}

function doWhitePaper(WPID){

	var tmpWPID=WPID;

	site.domain.page.WPID=tmpWPID;

	return;

}

function doPodcast(PD){

var tmpPD=PD;

	site.domain.page.PD=tmpPD;

	return;

}

function doEvents(){

//page views

site.domain.page.events = s.apl(site.domain.page.events, "event11", ",", 0);



//search

if (site.domain.page.isSearchPage == true) {

	site.domain.page.events = s.apl(site.domain.page.events, "event10", ",", 0)

}

if(site.domain.page.prop3!=''){

site.domain.page.events = s.apl(site.domain.page.events, "prodView", ",", 0)

	

}



if(site.domain.page.isWhitePaperComplete==true){

site.domain.page.events = s.apl(site.domain.page.events, "event12", ",", 0)

}

if(site.domain.page.isReqPodCastStart==true){

site.domain.page.events = s.apl(site.domain.page.events, "event6", ",", 0)

}

if(site.domain.page.isReqPodCastComplete==true){

site.domain.page.events = s.apl(site.domain.page.events, "event7", ",", 0)

}

if(site.domain.page.isNewsletterStart==true){

site.domain.page.events = s.apl(site.domain.page.events, "event2", ",", 0)

}

if(site.domain.page.isNewsletterComplte==true){

site.domain.page.events = s.apl(site.domain.page.events, "event3", ",", 0)

}



if(site.domain.page.isMagazineComplete==true){

site.domain.page.events = s.apl(site.domain.page.events, "event9", ",", 0)

}



return;

}









function trim(str){

		var s = str.replace(/^(\s)*/, '');

		s = s.replace(/(\s)*$/, '');

		return s;

	}//end trim()





//function to extract a value from a query

function _getQueryParam(qParam){

	var queryString = window.location.search; //query string part of a URL, taken directly from browser

	//var queryString = _queryStr; //for offline testing

	var qParams = queryString.slice(1);

	

	var pairs = qParams.split("&");

	var targetParam = qParam;

	var searchString;

	

	for (var i=0; i<pairs.length; i++) {

		var keyValues = pairs[i].split('=');

		if (keyValues[0] == targetParam) {

			searchString = keyValues[1];

		}

	}

	

	return searchString;

}



function getElementsByClassName(className, tag, elm){ //get DOM objects by their class name

	var testClass = new RegExp("(^|\\s)" + className + "(\\s|$)");

	var tag = tag || "*";

	var elm = elm || document;

	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);

	var returnElements = [];

	var current;

	var length = elements.length;

	for(var i=0; i<length; i++){

		current = elements[i];

		if(testClass.test(current.className)){

			returnElements.push(current);

		}	

	}

	return returnElements;

}