var TrackingHandler = 
{				
		trackingSystems : [],
		
		pageContext : 
		{
			error : "",
			channel : "",
			subChannel : "",
			pageName : "",
			openSelection : "",
			pageNumber : "",
			destinationCountry : "",
			autoName : "",
		
			toString : function()
			{
				/*
					[E] +<Wert der Variable Channel> +"_"+ <Name der Buchungsstrecke>+":" + <Klingender NAME>+ [geoffneter Reiter im Contentbereich] + <Seitennummer bei Listseiten in [ ]> +<Zielland, wenn es eine Wellnessreise ist>
				*/
				
				var pageContextString = this.error + "_" + this.channel + "_" + this.subChannel + "_" + this.pageName + "_" + this.openSelection + "_" + this.pageNumber + "_" + this.destinationCountry;
				return pageContextString;
			}
		},
		
		registerEvent : function(eventType, eventValue)
		{
			//console.debug("trackingEvent: "+eventType+" : "+eventValue);
			
			for (i=0;i<this.trackingSystems.length;i++)
			{
				this.trackingSystems[i].sendEvent(eventType,eventValue);
			}
		},
		
		registerPageViewEvent : function()
		{
			//console.debug("tracking PageViewEvent");	
			
			this.setPageNameFromMeta();
			this.setAutoName();
			
			for (i=0;i<this.trackingSystems.length;i++)
			{
				this.trackingSystems[i].sendEvent("pageView",this.pageContext.toString());
			}
		},
		
		setAutoName : function()
		{
			if (this.pageContext.pageName.length==0)
				if (this.pageContext.autoName.length>0)		
				{
					this.pageContext.pageName=this.pageContext.autoName;
				}
				else
				{
					this.pageContext.pageName=window.location.pathname;
				}
		},
		
		setPageNameFromMeta : function()
		{			
			var metaElements = document.all ? document.all.tags('META') : document.getElementsByTagName ? document.getElementsByTagName ('META') : new Array(); var metaKeywords = new Array();			
			for (var m = 0; m < metaElements.length; m++)
			{
				if (metaElements[m].name.indexOf('omniture_')!=-1)
				{
					if (metaElements[m].name.indexOf('omniture_channel')!=-1)
					{
						if (metaElements[m].content.length>0)
							this.pageContext.channel=metaElements[m].content;
					}
					if (metaElements[m].name.indexOf('omniture_subchannel')!=-1)
					{
						if (metaElements[m].content.length>0)
							this.pageContext.subChannel=metaElements[m].content;
					}
					if (metaElements[m].name.indexOf('omniture_pagename')!=-1)
					{
						if (metaElements[m].content.length>0)
							this.pageContext.pageName=metaElements[m].content;
					}
					if (metaElements[m].name.indexOf('omniture_openselection')!=-1)
					{
						if (metaElements[m].content.length>0)
							this.pageContext.openSelection=metaElements[m].content;
					}					
				}
			}
		}
};
 
