
var topsoftWhiteLabeling = {
		
		// constructor [static] singelton
		getInstance: function() {
			if (this._instance == null)
			{
				this._instance = this;
				this.iFrameUrl = ''
				this.category = '';
				this.affiliate = '';
				this.sbsId = '';
				this.eventId = '';
				this.bookmark = '';
				this.init();
			}
			return this._instance;
		},
		
		//method for initializing external variables
		init: function()
		{
			if (typeof(iCategory) != 'undefined' && iCategory != '')
			{
				this.category = iCategory;
			}
			if (typeof(iAffiliate) != 'undefined' && iAffiliate != '')
			{
				this.affiliate = iAffiliate;
			}
			if(typeof(iSbsId) != 'undefined' && iSbsId != '')
			{
				this.sbsId = iSbsId;
			}
			if(typeof(iEventId) != 'undefined' && iEventId != '')
			{
				this.eventId = iEventId;
			}
			if (typeof(iBookmark) != 'undefined' && iBookmark != '')
			{
				this.bookmark = iBookmark;
			}
			
			if (parseInt(iHeight) > 0) 
				{
					this.iframeHeight = parseInt(iHeight);
					this.ioverflow = 'auto';
				} 
				else 
				{
					this.iframeHeight = '850';
					this.ioverflow = 'no';
				}
				
			if (parseInt(iWidth) > 0) 
			{
				this.iframeWidth = parseInt(iWidth);
				this.ioverflow = 'auto';
			} 
			else 
			{
				this.iframeWidth = '760';
				this.ioverflow = 'no';
			}
		},
		
		/**
		** methods for white-label applications
		*/
		
		evaluation: function()
		{
			var addCategoryParam = true;
			var addSbsParam = false;
			var addEventParam = false;
			var addBookmarkParam = false;
			urlParams = this.getUrlParameters(addCategoryParam, addSbsParam, addEventParam, addBookmarkParam);
			this.set_iFrameUrl('http://www.topsoft.ch/de/whitelabeling/evaluation.html' + urlParams);
			this.create_iFrame();
		},
		
		anbieterListe: function()
		{
			var addCategoryParam = true;
			var addSbsParam = false;
			var addEventParam = false;
			var addBookmarkParam = false;
			urlParams = this.getUrlParameters(addCategoryParam, addSbsParam, addEventParam, addBookmarkParam);
			this.set_iFrameUrl('http://www.topsoft.ch/de/whitelabeling/anbieterliste.html' + urlParams);
			this.create_iFrame();
		},
		
		produkteListe: function()
		{
			var addCategoryParam = true;
			var addSbsParam = false;
			var addEventParam = false;
			var addBookmarkParam = true;
			urlParams = this.getUrlParameters(addCategoryParam, addSbsParam, addEventParam, addBookmarkParam);
			this.set_iFrameUrl('http://www.topsoft.ch/de/whitelabeling/produktliste.html' + urlParams);
			this.create_iFrame();
		},
		
		austellerListe: function()
		{
			var addCategoryParam = false;
			var addSbsParam = false;
			var addEventParam = true;
			var addBookmarkParam = false;
			urlParams = this.getUrlParameters(addCategoryParam, addSbsParam, addEventParam, addBookmarkParam);
			this.set_iFrameUrl('http://www.topsoft.ch/de/whitelabeling/ausstellerliste.html' + urlParams);
			this.create_iFrame();
		},
		
		ausgestellteProdukte: function()
		{
			var addCategoryParam = true;
			var addSbsParam = false;
			var addEventParam = true;
			var addBookmarkParam = true;
			urlParams = this.getUrlParameters(addCategoryParam, addSbsParam, addEventParam, addBookmarkParam);
			this.set_iFrameUrl('http://www.topsoft.ch/de/whitelabeling/ausgestellte_produkte.html' + urlParams);
			this.create_iFrame();
		},
		
		referenzen: function()
		{
			var addCategoryParam = true;
			var addSbsParam = false;
			var addEventParam = false;
			var addBookmarkParam = false;
			urlParams = this.getUrlParameters(addCategoryParam, addSbsParam, addEventParam, addBookmarkParam);
			this.set_iFrameUrl('http://www.topsoft.ch/de/whitelabeling/referenzen.html' + urlParams);
			this.create_iFrame();
		},
		
		stepbystepSuche: function()
		{
			var addCategoryParam = false;
			var addSbsParam = true;
			var addEventParam = false;
			var addBookmarkParam = false;
			urlParams = this.getUrlParameters(addCategoryParam, addSbsParam, addEventParam, addBookmarkParam);
			this.set_iFrameUrl('http://www.topsoft.ch/de/whitelabeling/step_by_step_suche.html' + urlParams);
			this.create_iFrame();
		},
		
		getUrlParameters: function(addCategoryParam, addSbsParam, addEventParam, addBookmarkParam)
		{
			var urlParams = '';
			if(addCategoryParam && this.category != '')
			{
				var categoryUrlParam = 'categoryId=' + this.category;
				urlParams = categoryUrlParam;
			}
			if(addSbsParam && this.sbsId != '')
			{
				var sbsUrlParam = '&sbsId=' + this.sbsId;
				urlParams = urlParams + sbsUrlParam;
			}
			if(addEventParam && this.eventId != '')
			{
				var eventUrlParam = '&eventId=' + this.eventId;
				urlParams = urlParams + eventUrlParam;
			}			
			if(addBookmarkParam && this.bookmark != '')
			{
				var bookmarkUrlParam = '&objects.bookmarkID=' + this.bookmark;
				urlParams = urlParams + bookmarkUrlParam;
			}
			if(this.affiliate != '')
			{
				var affiliateUrlParam = '&affiliate=' + this.affiliate;
				urlParams = urlParams + affiliateUrlParam;
			}
			urlParams = '?' + urlParams;
			if(urlParams == '?')
			{
				urlParams = '';
			}
			return urlParams;
		},
		
		//setter method for iframe url
		set_iFrameUrl: function(uri)
		{
			 if (uri != '') this.iFrameUrl = uri;
		},
		
		//getter method for iframe url
		get_iFrameUrl: function()
		{
			 return this.iFrameUrl;
		},
		
		//method to create iframe
		create_iFrame: function()
		{
			iframeCnt = '<iframe name="topsoft" id="topfsoft" src="' + this.get_iFrameUrl() + '" scrolling="' + this.ioverflow + '" marginwidth="0" width="' + this.iframeWidth + '" height="' + this.iframeHeight + '" marginheight="0" frameborder="0"></iframe>';
			document.write(iframeCnt);
		}
}