google.load("jquery","1.3.2");
google.load("jqueryui","1.7.2");
google.load("swfobject", "2.2");

// FUNCTIONS
var buildNavi;
var buildSliders;
var initFullSearch;
var initTripSearch;
var initSelectedTripList;
var shortText;
var formatPrice;
var by;
var initFlashMap;
var openEbook;
var initFlashBanner;
var checkAgency;
var printTrip;
var initMindAndCompareList;
var showAvailableThemes;

//global settings and variables BEGIN
var flash = 1; // flashCheck;
var cookieName = 'gebeco-reiseMerken';	// cookie-name for stored trips
var cookieAgency = 'agenturMerken';	// cookie-name for agency-id
var cookieTrips = 'gebeco-reiseliste';	// cookie-name for triplist
var rows = {}; // for all trip data
var find = {};
var cur = {};
var meta; //	for meta-data, e.g. country-isocodes, style-shorts
var setRegion;	// for flash-control
var setCountry;	// for flash-control
var tripUrl = '/trips/search.json';	// default trip-JSON
var tripUrlSG = '/trips/special_groups.json';	// JSON "Sondergruppenreisen"
var sg = false; // page contains "Sondergruppen"-Content

var tripLinkPref = '';

google.setOnLoadCallback(function(){
	//lazy loader
	;(function($){$.xLazyLoader=function(method,options){if(typeof method=='object'){options=method;method='init';};new xLazyLoader()[method](options);};$.xLazyLoader.defaults={js:[],css:[],img:[],name:null,timeout:20000,success:function(){},error:function(){},complete:function(){},each:function(){}};var head=document.getElementsByTagName("head")[0];function xLazyLoader()
	{var self=this,s,loaded=[],errors=[],tTimeout,cssTimeout,toLoad,files=[];this.init=function(options)
	{if(!options)return;s=$.extend({},$.xLazyLoader.defaults,options);toLoad={js:s.js,css:s.css,img:s.img};$.each(toLoad,function(type,f){if(typeof f=='string')
	f=f.split(',');files=files.concat(f);});if(!files.length){dispatchCallbacks('error');return;};if(s.timeout){tTimeout=setTimeout(function(){var handled=loaded.concat(errors);$.each(files,function(i,file){$.inArray(file,handled)==-1&&errors.push(file);});dispatchCallbacks('error');},s.timeout);};$.each(toLoad,function(type,urls){if($.isArray(urls))
	$.each(urls,function(i,url){load(type,url);});else if(typeof urls=='string')
	load(type,urls);});};this.js=function(src,callback,name)
	{var $script=$('script[src*="'+src+'"]');if($script.length){$script.attr('pending')?$script.bind('scriptload',callback):callback();return;};var s=document.createElement('script');s.setAttribute("type","text/javascript");s.setAttribute("src",src);s.setAttribute('id',name);s.setAttribute('pending',1);s.onerror=addError;$(s).bind('scriptload',function(){$(this).removeAttr('pending');callback();setTimeout(function(){$(s).unbind('scriptload');},10);});var done=false;s.onload=s.onreadystatechange=function(){if(!done&&(!this.readyState||/loaded|complete/.test(this.readyState))){done=true;s.onload=s.onreadystatechange=null;$(s).trigger('scriptload');};};head.appendChild(s);};this.css=function(href,callback,name)
	{if($('link[href*="'+href+'"]').length){callback();return;};var link=$('<link rel="stylesheet" type="text/css" media="all" href="'+href+'" id="'+name+'"></link>')[0];if($.browser.msie){link.onreadystatechange=function(){/loaded|complete/.test(link.readyState)&&callback();};}else if($.browser.opera){link.onload=callback;}else{var hostname=location.hostname.replace('www.',''),hrefHostname=/http:/.test(href)?/^(\w+:)?\/\/([^\/?#]+)/.exec(href)[2]:hostname;hostname!=hrefHostname&&$.browser.mozilla?callback():(function(){try{link.sheet.cssRules;}catch(e){cssTimeout=setTimeout(arguments.callee,20);return;};callback();})();};head.appendChild(link);};this.img=function(src,callback)
	{var img=new Image();img.onload=callback;img.onerror=addError;img.src=src;};this.disable=function(name)
	{$('#lazy-loaded-'+name,head).attr('disabled','disabled');};this.enable=function(name)
	{$('#lazy-loaded-'+name,head).removeAttr('disabled');};this.destroy=function(name)
	{$('#lazy-loaded-'+name,head).remove();};function load(type,url){self[type](url,function(status){status=='error'?errors.push(url):loaded.push(url)&&s.each(url);checkProgress();},'lazy-loaded-'+(s.name?s.name:new Date().getTime()));};function dispatchCallbacks(status){s.complete(status,loaded,errors);s[status](status=='error'?errors:loaded);clearTimeout(tTimeout);clearTimeout(cssTimeout);};function checkProgress(){if(loaded.length==files.length)dispatchCallbacks('success')
	else if(loaded.length+errors.length==files.length)dispatchCallbacks('error');};function addError(){errors.push(this.src);checkProgress();};};})(jQuery);

	
// additional jQuery-functions BEGIN	
	// get url-params
	jQuery.urlParam = function(name){
		var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
		if (results != null) return results[1];
		return 0;
	};
	// checks, if an element exists, before starting to work on it
	jQuery.fn.doOnce = function(func){
		this.length && func.apply(this);
		return this;
	};
	// shorts an string by length-param and appends "..."
	shortText = function(str,l){
		if (str.length <= l) return str;
		return str.substring(0,(l-3)) + '...';
	};
	// formats prices
	formatPrice = function(bp){
		if (bp === null) return '---&nbsp;&nbsp;';
		bp = bp.toString();
		l = bp.length;
		if (bp.indexOf('.') !== -1) {l = bp.indexOf('.');}
		if (bp.indexOf(',') !== -1) {l = bp.indexOf(',');}
		if (l > 3)  {bp = bp.substring(0,l-3) + '.' + bp.substring(l-3,l);}
		return bp;
	};
	// sorting
	by = function (name, minor){
		return function (o, p){
			var a, b;
			if (o && p && typeof o === 'object' && typeof p === 'object'){
				a = o[name]; b = p[name];
				if (a === b){return typeof minor === 'function' ? minor(o, p) : 0;}
				if (typeof a === typeof b){return a < b ? -1 : 1;}
				return typeof a < typeof b ? -1 : 1;
			}else{throw {name: 'Error',message: 'Expected an object when sorting by ' + name};}
		};
	};
	// additional jQuery-functions END
	
	
	jQuery(document).ready(function(){
		if (jQuery('.SONDERGRUPPEN').length) {
			sg = true;
			// das haben wir für die Unterseiten "SG" unter gebeco.de gebraucht
			// bei eigener subdomain nicht mehr notwendig
			//tripLinkPref = '/sondergruppen';
		}
		jQuery.xLazyLoader({
			js: ['/javascripts/smsCommon/libs.js','/javascripts/smsCommon/jqprint.js'],
			success: function(){
				checkLogin();	//
				handleLogin();	// 
				checkAgency();	// transport agency-number through page
				// page countryInfos
				jQuery("#countryInfoTabs").doOnce(function(){this.tabs({'selected':'0'})});
				// load scripts for detailPage
				jQuery("#dpTabs").doOnce(function(){
					jQuery.xLazyLoader({
						js: ['/javascripts/smsG/detailPage.js']
					});
				});	
				// get meta-Data and build Navi
				jQuery.getJSON(
					'/trips/meta.json',
					function(data){
						// load page-controller (sidebar etc.)
						jQuery.xLazyLoader({js: ['/javascripts/smsG/generalContents.js']});
						meta = data;
						// add meta-datas
						meta.l = [
					  	    {n:'bis 7 Tage',c:'7'},
							{n:'bis 14 Tage',c:'14'},
							{n:'bis 21 Tage',c:'21'},
							{n:'l&auml;nger als 21 Tage',c:'>21'}];
						meta.bp = [
							{n:'bis 999 &euro;',c:'999'},
							{n:'bis 1.500 &euro;',c:'1500'},
							{n:'bis 2.000 &euro;',c:'2000'},
							{n:'bis 2.500 &euro;',c:'2500'},
							{n:'bis 3.000 &euro;',c:'3000'},
							{n:'mehr als 3.000 &euro;',c:'>3000'}];
						// build main-navi
						buildNavi();
						// load expressFinder
						jQuery('#exFiStyles,#exFiCtr').doOnce(function(){jQuery.xLazyLoader({js: ['/javascripts/smsG/expressFinder.js']});});
						// page trip-styles, themes
						jQuery(".themeContainer").doOnce(function(){showAvailableThemes(this)});
						// trip search
						initTripSearch();
						// trips of week
						initSelectedTripList();
						initMindAndCompareList();
					}
				);			
				buildSliders();
				initFullSearch();
			} 
		});
		// Flash-Map		
		jQuery('#worldMapControl').doOnce(function(){
			swfobject.embedSWF (
				'/flash/sms/weltkarteIcon/mapIcon.swf',
				'worldMapIconFlash',
				'30',
				'30',
				'9.0.0',
				'expressInstall.swf',
				{},
				{wmode:'transparent'},
				{}
			);
		});
			
		jQuery('#worldMapCon').doOnce(function(){
			var map = jQuery(this);
			
			jQuery('#dummyOverlay:not(".justLink")').live('click',function(){
				initFlashMap(map);
				var that = jQuery(this);
				jQuery('#mapCloser').show('slow');
				jQuery('#exFiStyles').addClass('dn');
				jQuery('#exFiCtr').removeClass('dn');
			});
			jQuery('#mapCloser').live('click',function(){
				map.css({left:-10000});			
				var that = jQuery(this);
				that.hide('slow');
				jQuery('#exFiStyles').removeClass('dn');
				jQuery('#exFiCtr').addClass('dn');
			});
			jQuery('#dummyOverlay.justLink').live('click',function(){
				window.location = '/reiseziele';
			});
			jQuery('.mapPermanent').doOnce(function(){
				initFlashMap(map);
				jQuery('#exFiCtr').removeClass('dn');
			});
			jQuery('#exFiCtr.showPermanent').doOnce(function(){
				this.removeClass('dn');
			});
		});
		
		// FlashObjects
		jQuery('.flash').doOnce(function(){
			jQuery.each(this,function(){
				var flObj = eval(jQuery(this).attr('id'));
				swfobject.embedSWF(
					flObj.src,
					jQuery(this).attr('id'),
					flObj.width,
					flObj.height,
					'9.0.0',
					'expressInstall.swf',
					{},
					{wmode:'opaque'},
					{}
				);
			});
		});
		
		// Flash-Banner
		jQuery('#eBookBanner').doOnce(function(){initFlashBanner(this);});
		jQuery('#eBookBanner_sa').doOnce(function(){initFlashBanner_sa(this);});
	});
});

var checkLogin = function(){
	jQuery.ajax({type:'GET',url:'/sessions/query.json',success:loginUser,dataType:'json'});
};

var loginUser = function(data){
	if (data.logged_in && data.type === 'agency_light')	{
		jQuery('#headerLogin .loggedInfo').removeClass('dn').find('span').html(data.user.lastname);
		jQuery('#headerLogin .loggedMenu, #headerLogin .logoutBt').removeClass('dn');
		jQuery('#headerLogin .loginBt').addClass('dn');
		var info = jQuery('#headerServiceMenu');
		info.find('.agency').html(data.user.lastname);
		info.find('.agencyNo').html(data.user.customer_number);
		info.find('.street').html(data.user.street);
		info.find('.city').html(data.user.zip + ' ' + data.user.city);		
	} else {
		jQuery('#headerLogin .loggedInfo').addClass('dn').find('span').html('');
		jQuery('#headerLogin .loggedMenu, #headerLogin .logoutBt').addClass('dn');
		jQuery('#headerLogin .loginBt').removeClass('dn');
		var info = jQuery('#headerServiceMenu');
		info.find('.agency').html('');
		info.find('.agencyNo').html('');
		info.find('.street').html('');
		info.find('.city').html('');
	}
};

var handleLogin = function(){
	jQuery('#headerLogin .loginBt a.bt').live('click',function(){
		jQuery(this).toggleClass('open');
		jQuery('#headerLoginForm').toggleClass('dn');
		return false;		
	});
	jQuery('#headerLoginForm form, #loginForm').submit(function(){
		jQuery.ajax({type:'POST',data:jQuery(this).serialize(),url:'/sessions/create.json',success: function(data){
			loginUser(data);
			window.location = location.href.substr(0,location.href.indexOf('#'));
		},dataType:'json'});
		return false;
	});
	jQuery('#headerLogin .logoutBt a.bt').live('click',function(){
		jQuery.ajax({type:'DELETE',url:'/sessions/destroy.json',success: function(data){
			loginUser(data);
			window.location = location.href.substr(0,location.href.indexOf('#'));
		},dataType:'json'});
		return false;
	});
	jQuery('#headerLogin .loggedMenu a.bt').live('click',function(){
		jQuery(this).toggleClass('open');
		jQuery('#headerServiceMenu').toggleClass('dn');
		return false;		
	});
};

openEbook = function(){
	if (jQuery('#openSA').length) {
		openEbook_sa();
		return;
	}
	window.open("/flash/sms/eBookChina/gbc-emag.html", "GEBECO", "toolbar=no,location=no,status=no,menubar=no,scrollbars=0,resizable=1,width=980,height=580");
};
openEbook_sa = function(){window.open("/flash/sms/eBookSuedafrika/gbc-emag.html", "GEBECO", "toolbar=no,location=no,status=no,menubar=no,scrollbars=0,resizable=1,width=980,height=580");};

printTrip = function(part){
	if (part === 'trip') {
		if (!mapRendered) {renderMap();}
		if (!tablesRendered) {renderAllTables();}
		if (!galleryRendered) {renderGallery();}
		if (!countryInfoRendered) {renderCountryInfo();}
		jQuery(':not(.dn) .pr:not(.pr2),.jpr:not(.pr2),#prHeader').jqprint();		
		return false;
	}
	jQuery(
		'#' + part + ' .pr,' +
		'#' + part + ' .jpr,' + 
		'#prHeader')
	.jqprint();
	return false;	
};

// show flash-map
initFlashMap = function(dom){
	jQuery('#worldMap').html(jQuery('<img/>').attr({src:'/images/sms/i/fallback.jpg',width:'963',height:'328'}));
	swfobject.embedSWF (
		'/flash/sms/weltkarte/karte.swf',
		'worldMap',
		'963',
		'328',
		'9.0.0',
		'expressInstall.swf',
		{},
		{wmode:'opaque'},
		{}
	);
	flash = jQuery('#worldMap img').length;
	dom.css({left:0});
};

// show flash-banner
initFlashBanner = function(dom){
	jQuery(dom).html(
		jQuery('<a/>').attr({href:'#',onClick:"openEbook();return false;",className:"hoverTdn clearfix",title:"Zum eBook China"}).append(
			jQuery('<img/>').attr({src:'/flash/sms/eBookChinaBanner/banner_china.jpg',width:'640',height:'165'})
		)
	);
	swfobject.embedSWF (
		'/flash/sms/eBookChinaBanner/banner_china.swf',
		'eBookBanner',
		'640',
		'165',
		'9.0.0',
		'expressInstall.swf',
		{},
		{wmode:'opaque'},
		{}
	);
};
// show flash-banner
initFlashBanner_sa = function(dom){
	jQuery(dom).html(
		jQuery('<a/>').attr({href:'#',onClick:"openEbook_sa();return false;",className:"hoverTdn clearfix",title:"Zum eBook S&uumk;dafrika"}).append(
				jQuery('<img/>').attr({src:'/flash/sms/eBookSuedafrika/banner_suedafrika.jpg',width:'640',height:'165'})
		)
	);
	swfobject.embedSWF (
			'/flash/sms/eBookSuedafrika/banner_suedafrika.swf',
			'eBookBanner_sa',
			'640',
			'165',
			'9.0.0',
			'expressInstall.swf',
			{},
			{wmode:'opaque'},
			{}
	);
};

//build MainNavi
buildNavi = function(){
	// load meta-data to mainNavi
	jQuery('#navCtrTabRow').doOnce(function(){
		var that = this;
		var i=0;
		var tabs = jQuery(that).find('li');
		var l= tabs.length;
		for (i;i<l;i+=1){
			var tab = jQuery(tabs[i]);
			var reg = meta.regions[i];
			// tab with region-name
			tab.attr('id','navTab' + reg.c);
			var a = tab.find('a').attr('href','/reisesuche?reiseziel='+reg.c).text(reg.n);
			if (a.height()>49) a.css({lineHeight:'20px'});
			
			// countries at region-tab
			var j=0;
			var ctrs = jQuery('<ul/>').addClass('clearfix');
			var c;
			var k=reg.ctrs.length;
			for (j;j<k;j+=1){
				var c = reg.ctrs[j];
				ctrs
					.append(jQuery('<li/>')
						.append(jQuery('<a/>')
							.attr('href','/reisesuche?land=' + c.g)
							.addClass('bold')
							.text(c.n)
						)
					);
			}
			var margin = -152*i;
			// no margin at IE6
			if (jQuery.browser.msie && parseInt(jQuery.browser.version.substr(0, 1)) <= 6) {
				margin = 0;
			}
			tab.find('.naviCtrTabCt')
				.attr('id',reg.c)
				.css({marginLeft:margin + 'px'})
				.find('.box').append(ctrs);
			if (jQuery.browser.msie && parseInt(jQuery.browser.version.substr(0, 1)) <= 6) {
				jQuery('#ie6Helper').append(tab.find('.naviCtrTabCt'));
			}	
		}
		// themes at style-tab (gebeco)
		jQuery('#naviThemesAfterMe').doOnce(					
			function(){
				var that = this;
				for (i=0;i<meta.styles.length;i+=1){					
					var st = meta.styles[i];
					if (st.s == '2'){
						var li = jQuery('<li/>').append(
							jQuery('<a/>').attr({
								className:'arrLi g200',
								href:'/reisesuche?thema=' + st.c
							}).html(st.n)
						);
						that.after(li);
					}
				}		
			}
		);
		// themes at ideas-tab (special groups)
		jQuery('#specialGroupThemes').doOnce(
			function(){
				var themesExist = false;
				var that = this;
				var list = that.find('ul.sMList');
				for (i=0;i<meta.styles.length;i+=1){					
					var st = meta.styles[i];
					if (st.s == '2'){
						themesExist = true;
						var li = jQuery('<li/>').addClass('grid g200').append(
							jQuery('<a/>').attr({
								className:'arrLi',
								href:'/reisesuche?thema=' + st.c
							}).html(st.n)
						);
						list.append(li);
					}
				}
				if (themesExist){
					that.removeClass('dn');
					jQuery('.bgIfThemes').addClass('bg');
				}		
			}
		);
		
	});

	jQuery('#mainNavi li:not(.png)').mouseenter(function(){
		jQuery('#mainNavi li.cur').removeClass('cur');
		jQuery(this).addClass('cur');
	});
	jQuery('#mainNavi li:not(.png)').mouseleave(function(){
		jQuery(this).removeClass('cur');
	});
	jQuery(".sMCt").mouseenter(function(){
		jQuery(this).css({left:'0'});
		jQuery(this).parent().addClass('curH');
	});
	jQuery(".sMCt").mouseleave(function(){
		jQuery(this).css({left:''});
		jQuery(this).parent().removeClass('curH');
	});
	
	// IE lt 6 only
	if (jQuery.browser.msie && parseInt(jQuery.browser.version.substr(0, 1)) <= 6) {
		// close IE6-Warning
		jQuery('.dontUseThisBrowser .icRem').click(function(){
			jQuery('.dontUseThisBrowser').remove();
		});
		jQuery('#navCtrTabRow li.png').mouseenter(function(){
			jQuery('.liImg').css({backgroundPosition:''});
			jQuery('.liImg a').css({color:''});
			jQuery(this).find('.liImg').css({backgroundPosition: '0 -60px'});
			jQuery(this).find('.liImg a').css({color:'#FFFFFF'});
			var id = jQuery(this).attr('id').replace('navTab','');
			jQuery('#ie6Helper .naviCtrTabCt').hide();
			jQuery('#ie6Helper #' + id).show();
		});
		jQuery('#navCtrTabRow li.png').mouseleave(function(){
			jQuery(this).find('.liImg').css({backgroundPosition:''});
			jQuery(this).find('.liImg a').css({color:''});
		});
		jQuery('#navCtrTabs').mouseleave(function(){
			jQuery('#ie6Helper .naviCtrTabCt').hide();
		});
		jQuery('#ie6Helper .naviCtrTabCt').mouseenter(function(){
			var tab = jQuery('#navTab' + jQuery(this).attr('id') + ' .liImg');
			tab.css({backgroundPosition: '0 -60px'});
			tab.find('a').css({color:'#FFFFFF'});
		});
	}
};

showAvailableThemes = function(that){
	for (var i=0;i<meta.styles.length;i+=1){
		jQuery(that).find('.teaserTheme.' + meta.styles[i].c).removeClass('dn');
	}
};

buildSliders = function(){
	// Slider Styles	
	jQuery('#sliStyles').doOnce(function(){
		this.find('.sliderItem:last').addClass('lastItem');
		this.slidebar({stepWidth:300});
		// Tooltips Style-Slider
		this.find('.sliderItem').mouseenter(function(){
			jQuery('.slyHover').remove();
			var info = jQuery(this).find('a span').text();
			var pos = jQuery(this).position();
			var left = jQuery('#sliStyles .sliderItems').css('left');
			var v = ((typeof(left)===undefined || left==='auto') ? 0 : parseInt(left.replace('px','')));			
			jQuery('#sliStyles')
				.append(
					jQuery('<span/>')
						.addClass('slyHover')
						.css('left',(pos.left+30+v)+'px')
						.html(info)
						.show()
				);			
		});
		this.find('.sliderItem').mouseleave(function(){jQuery('.slyHover').remove();});		
	});
	
	
	// Slider Push-Trips Home//Sidebar
	jQuery('#sliPush').doOnce(function(){
		this.slidebar({stepWidth:217});
	});
};

initFullSearch = function(){
	// Full-Text-Search
	jQuery('form[name=fullSearch]').submit(function(){
		window.location = '/suche?term=' + escape(jQuery('#fullSearch').val());
	});	
	jQuery('#fullSearchRes').doOnce(function(){
 		jQuery.xLazyLoader({
			js: ['/javascripts/smsG/renderLists.js',
			     '/javascripts/smsG/fullSearch.js'],
			success: function(){
 			    var term = jQuery.urlParam('term');  
	 			if (term !== 0) {
	 				jQuery('#fullSearchFormInp').val(unescape(term));
	 				searchByTerm(unescape(term));
	 			}
 			}			
		});
	});
};

initTripSearch = function(){	
	// load all trip-data and libs to search and render
	if (sg) {tripUrl = tripUrlSG;}
	jQuery('#seaAdv').doOnce(function(){
		jQuery.get(
			tripUrl,
			function(data){
				var search_callback = function(data){
					var i;var l=data.length;
					var j;var ml = meta.regions.length;
					var z;
					
					for (i=0;i<l;i+=1){												
						data[i].lInt = parseInt(data[i].l);
						for (var j=0;j<ml;j+=1){
							if (data[i].region == meta.regions[j].c){
								for (z=0;z<meta.regions[j].ctrs.length;z+=1){
									if (data[i].ctrs[0] == meta.regions[j].ctrs[z].g){
										data[i].fc = meta.regions[j].ctrs[z].n;
										data[i].fc = data[i].fc.replace('Ä','Ae');
										data[i].fc = data[i].fc.replace('Ö','Oe');
										data[i].fc = data[i].fc.replace('Ü','Ue');
										break;
									}
								}
								break;
							}
						}
					}
					cur.travels = rows.travels = data;
				};
				eval(data);
				jQuery.xLazyLoader({
					js: ['/javascripts/smsG/metaData.js',
					    '/javascripts/smsG/renderLists.js',
					    '/javascripts/smsG/tripSearch.js'],
					success: function(){
						prepareAdvancedSearch();
						initSearch();
						updateJSON(find);
					}
				});
		});
	});
};

initSelectedTripList = function(){
	jQuery('#selectedTrips').doOnce(function(){
		var type = jQuery(this).attr('rel');
		jQuery.get(
			'/trips/search.json',
			function(data){
				cur.travels = [];
				var search_callback = function(data){
					var i;var l=data.length;
					switch (type) {
						case 'ReisenDerWoche':
							for(i=0;i<l;i+=1){if (data[i].push === true) {cur.travels.push(data[i]);}}
							break;
						case 'EigeneReiseliste':
							var nr = ownTrips.replace(' ','').split(',');
							for(i=0;i<l;i+=1){if (jQuery.inArray(data[i].nr, nr) !== -1) {cur.travels.push(data[i]);}}
							break;
						default: break;
					}
				};
				eval(data);
				jQuery.xLazyLoader({
					js: ['/javascripts/smsG/renderLists.js'],
					success: function(){renderJSON(1);}
				});
			}
		);
	});
};

initMindAndCompareList = function(){
	jQuery('#merkenVergleichen').doOnce(function(){
		cur.travels = [];
		var cookie = jQuery.cookie(cookieName);
		if (cookie != null && cookie.length) {
			var el = cookie.split('@@');
			var trips = [];
			for (var i=0;i<el.length;i+=1){
				trips.push(el[i].split('||')[0]);
			}
			trips = trips.join(',');
		}
		jQuery.xLazyLoader({
			js: ['/javascripts/smsG/renderLists.js'],
			success: function(){
				if (typeof(trips) == 'undefined') {
					jQuery('#smallList').html("");
					return;	
				}
				if (trips.length) {
					jQuery.get('/trips/compare.json?trip_nrs=' + trips, 
						function(data){				
							var search_callback = function(data){
								cur.travels = data; 
							};
							eval(data);							
							//cur.travels = [];
							renderSmallTeaser();					
					});
				} else {renderSmallTeaser();}
			}
		});
	});
};

checkAgency = function(){
	var anr = jQuery.urlParam('anr');
	if (anr !== null && anr !== 0) {jQuery.cookie(cookieAgency,anr,{path:'/'});}	// store anr at cookie		 
	jQuery('.anr').doOnce(function(){		// extend booking-href with stored agency-nr
		var cookie = jQuery.cookie(cookieAgency);
		if (cookie !== null && cookie.length){
			jQuery(this).attr('href',function(){return jQuery(this).attr('href') + '&anr=' + cookie;});
		}
	});	
};
