var currentStep = 1;
//var currentbagId = 0;
var numBattles = 0; 
var currentInz = 0;
var currentStage = 'intro';
var inzending = {};
var shareInz = {};
var hasFlash = false;
var interval = '';
var blacklist = /[§@%$&;=+*<>~`{(\[)}\/\\\]#^_-]|/g;	
var firstTime = true;
var mainFlash = false;
var formFlash = false;
var mainStageLoaded = false;
var formLoaded = false;


$.History.bind(function(hash){	
	if(hash == 'battle'){
		if(!hasFlash){
			startBattle();
		}
			
	}else if(hash == 'inzending'){
		showForm('Start');
		navToForm();	
	}
	return false;
});

$(function() {
	hasFlash = swfobject.getFlashPlayerVersion().major == 0? false : true;
	
		if(hasFlash){ 
			$('body').addClass('hasFlash');
			showFlashForm()
		};
	
	
	//getTeller();
	$('#teller').hide();
	showStage(currentStage);
	getLatestTaste();
	getFeed();

/*buttons*/
$('a[name="bekijkvoorbeeld"]').live('click',function(){
	showMsg('Mijn smaak gaat het maken omdat deze geurige chipssmaak, een combinatie van appels met een vleugje honing, nog ontbreekt in de schappen.', 'Voorbeeld');
	return false;
});

$('a[name="showVideo"]').click(function(){
	GA_trackPageview('video_'+$(this).attr('id'));
	showPopup($(this).attr('href'),'video')
	return false;
});

$('a[name="popupText"]').live('click',function(){
	GA_trackPageview('popup_'+$(this).attr('id'));
	showPopup($(this).attr('href'),'text')
	return false;
});

$('#close_overlay').live('click', function(){
	$(".overlay").remove();
	
	if(mainFlash){
			mainFlash.unmute();	
	}
	return false;
});

$('a[name="home"]').click(function(){
	showStage('home');
	navToHome();
	
	
	switch(currentStep){
		case 1 : 
				inzending.taste_name = $('#smaaknaam').val();
				inzending.taste_description = $('#leus').val();
				inzending.bag_id = currentbagId;
			return false;
		break;
		case 2 : 
				inzending.motivation = $('#omdat').val();
			return false;
		break;
		case 3 : 
				inzending.name = $('#name').val();
				inzending.email = $('#email').val();
				inzending.telephone = $('#tel').val();
				inzending.keep_me_posted = $('#kmp').attr('checked')? 1 : 0;
				inzending.age = $('#age').attr('checked')? 1 : 0;	
			return false;
		break;
		case 4 :
			//send object
			return false
		break;
	}
	
	
	
});

$('a[name="startbattle"]').live('click', function(){
	$('a.home').hide();
	if(hasFlash){
		if(mainFlash){
				mainFlash.navToBattle();	
			}
	}else{
		startBattle();
	}
	navToHome();
	return false;
});

$('a[name="maaksmaak"]').live('click', function(){
	navToForm();
	return false;
});

$('a[name="nogeensmaak"]').live('click', function(){
	showForm('herstart')
	return false;
});



$('a[name="select"]').live('click', function(){


	var direction = $(this).attr('id');
	
	switch(direction){
		case 'car_right':
			currentbagId --;
			if(currentbagId < 0) currentbagId = 7;
		break;
		case 'car_left':
			currentbagId ++;
			if(currentbagId > 7) currentbagId = 0;
		break;
	}
	
	if(!hasFlash){
		$('#selectBag').attr('src', 'img/wb/bags/select/big/'+currentbagId+'.png')
	}else{
		if(formFlash){
				formFlash.setBagId(currentbagId);
		}				
	}
	
	
	
	return false;
});



$('a[name="nextForm"]').live('click', function(){
	var msg = '';
	var success = false;
	var email = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	var phone = /^[0-9\(\)\+\./\/\s-]{8,}$/;
		
	
	
	switch(currentStep){
		case 1 : 
			if($('#smaaknaam').val() == '' || $('#smaaknaam').val() == 'Verzin een lekkere, creatieve en pakkende naam die jouw smaak in één keer beschrijft.') msg = 'Je hebt geen naam ingevuld!';
				else success = true;
				inzending.taste_name = $('#smaaknaam').val().replace(/(\r\n|\n\r|\r|\n)/g, ' ');
			if($('#leus').val() == 'Verzin een originele strijdleus om jouw smaak kracht bij te zetten (niet verplicht, Inzendingen worden niet op strijdleus beoordeeld).') 
				inzending.taste_description = '';
			else
				inzending.taste_description = $('#leus').val();
				inzending.bag_id = currentbagId;
		break;
		case 2 : 
			if($('#omdat').val() == '' || $('#omdat').val() == 'Geef aan waarom jij vindt dat jouw smaak in de winkel moet komen.') msg = 'Vul een goede motivatie in. Inzendingen worden namelijk beoordeeld op smaaknaam en motivatie.';
				else success = true;
			if($('#omdat').val() == 'Geef aan waarom jij vindt dat jouw smaak in de winkel moet komen.')
				inzending.motivation = '';
			else
				inzending.motivation = $('#omdat').val();
		break;
		case 3 : 
			if($('#name').val() == ''){ msg = 'Je moet je naam opgeven';}
				else if($('#email').val() == '' || !$('#email').val().match(email)){ msg = 'Je hebt geen geldig email adres ingevuld!';}
				else if($('#tel').val() != '' && !$('#tel').val().match(phone)){ msg = 'Je hebt geen geldig telefoonnummer ingevuld!';}
				else if(!$('#terms').attr('checked')){ msg = 'Je moet akkoord gaan met de actievoorwaarden';}
				else if(!$('#age').attr('checked')){msg = 'Geef aan of je 16 jaar of ouder bent.'}
					else{ success = true};	
					inzending.name = $('#name').val();
					inzending.email = $('#email').val();
					inzending.telephone = $('#tel').val();
					inzending.keep_me_posted = $('#kmp').attr('checked')? 1 : 0;
					inzending.age = $('#age').attr('checked')? 1 : 0;	
		break;
		case 4 :
			//send object
		break;
	}
	
	if(success){
		if(currentStep == 3){ 
				//sending form!
				inzending.type = source.type;
				inzending.src = source.src;
				inzending.med = source.med;
				inzending.cam = source.cam;
				GA_trackPageview('inzending_verzenden');
				
			
				
				$.ajax({
					type: "POST",
					url: handlers.postTaste+"?t=" + gt(),
					data: inzending,
					dataType: "jsonp",
					jsonp: "callback",
					jsonpCallback: "inzendingCb"
				});
				
				$('a[name="nextForm"]').hide();
				
			}else if(currentStep == 1){
			
			checkFilter(inzending)
			
			}else{
				showForm('next');	
			}
	}else{
		GA_trackPageview('inzending_fout');
		showMsg(msg, 'let op!')	
	}
	
	return false;
});

$('a[name="prevForm"]').live('click', function(){
		switch(currentStep){
		case 1 : 
				inzending.taste_name = $('#smaaknaam').val();
				inzending.taste_description = $('#leus').val();
				inzending.bag_id = currentbagId;
		break;
		case 2 : 
				inzending.motivation = $('#omdat').val();
		break;
		case 3 : 
				inzending.name = $('#name').val();
				inzending.email = $('#email').val();
				inzending.telephone = $('#tel').val();
				inzending.keep_me_posted = $('#kmp').attr('checked')? 1 : 0;
				inzending.age = $('#age').attr('checked')? 1 : 0;	
		break;
		case 4 :
				inzending.name = $('#name').val();
				inzending.email = $('#email').val();
				inzending.telephone = $('#tel').val();
				inzending.keep_me_posted = $('#kmp').attr('checked')? 1 : 0;
				inzending.age = $('#age').attr('checked')? 1 : 0;	
		break;
	}
	showForm('prev');
	return false;
});


$('a[name="kiesWinnaar"]').live('click', function(){
	GA_trackPageview('winnaar_verzenden');
	var data = $(this).tmplItem().data;
		winner = {
				battleid : $('#battleId').val()
			}
		
		switch($(this).attr('id')){
				case 'winnerA':
					winner.taste = 1;
					winner.name = data.taste1;
					winner.description = data.description1;
					winner.img = data.img1;
				break;
				case 'winnerB':
					winner.taste = 2;
					winner.name = data.taste2;
					winner.description = data.description2;
					winner.img = data.img2;
				break;
				case 'chooseA':
					winner.taste = 1;
					winner.name = data.taste1;
					winner.description = data.description1;
					winner.img = data.img1;
				break;
				case 'chooseB':
					winner.taste = 2;
					winner.name = data.taste2;
					winner.description = data.description2;
					winner.img = data.img2;
				break;
		}
		
		winner.type = source.type;
		winner.src = source.src;
		winner.med = source.med;
		winner.cam = source.cam;
		
		$.ajax({
				type: "POST",
				url: handlers.postBattle+"?t=" + gt(),
				data: winner,
				dataType: "jsonp",
				jsonp: "callback",
				jsonpCallback: "showWinnerCb"
		});

		return false;
});
$('.notokmsg').live('click', function(){
	GA_trackPageview('notok_toon');
		$('.notokmsg').hide();	
});

$('a[name="notOk"]').live('click', function(){
	GA_trackPageview('notok_sluit');
	$('.notokmsg').hide();
	if($(this).hasClass('notokA')){
		$('#notokA').fadeIn()
	}else{
		$('#notokB').fadeIn();	
		}
	
	return false;
});


$('a[name="notokmsg"]').live('click', function(){
	GA_trackPageview('notok_verzenden');
	var data = $(this).tmplItem().data;
		var id = 1;
		if($(this).attr('id') == '0') id = 1;
			else id = 2;
		
			$.ajax({
					type: "POST",
					url: handlers.postNotok+"?t=" + gt(),
					data: {
						battleid: $('#battleId').val(),
						taste: id,
						newbattle: 1,
						type : source.type,
						src : source.src,
						med : source.med,
						cam : source.cam
					},
					dataType: "jsonp",
					jsonp: "callback",
					jsonpCallback: "getnotOkCb"
			});
		
		
		return false;
});


$('textarea[name="smaaknaam"]').live('keyup', function(){
	
	var input = $(this).val().substr(0,appVars.maxName).replace(blacklist, '');
	var selectionStart = $(this).prop('selectionStart');
	var selectionEnd = $(this).prop('selectionEnd');
	$('textarea[name="smaaknaam"]').val(input);
	$(this).prop({selectionStart:selectionStart,selectionEnd:selectionEnd}); 
	
		input = input.replace(/(\r\n|\n\r|\r|\n)/g, ' ');
		var string = input.split('');
				var spaces = [];
				for(var i=0;i<string.length;i++){
					if(string[i] == ' '){
						spaces.push(i)	
					}
				}
				var mid = spaces.length == 0 ? 0 : spaces[Math.floor(spaces.length/2)];
			
		input = [input.slice(0,mid), input.slice(mid)];
		
		
		if(input[0] == ''){
			inzending.taste_name1 = input[1];
			inzending.taste_name2 = '';
		}else{
			inzending.taste_name1 = input[0];
			inzending.taste_name2 = input[1];
		}
	
	
	if(!hasFlash){

				if(input[0] == ''){
						$('#zaknaam').find('div:first-child').html(input[1]);	
						$('#zaknaam').find('div:last-child').html('');
				}else{
						$('#zaknaam').find('div:first-child').html(input[0]);	
						$('#zaknaam').find('div:last-child').html(input[1]);
				}
				
				$("#zaknaam").bigtext({maxfontsize: 32,minfontsize: 15});
				
				
				
			}else{
				if(formFlash){
						
						formFlash.setFlavourName(input[0]+''+input[1]);
						
					}
			}	
	
	
return false;
});

if(!hasFlash){
	$('textarea[name="smaaknaam"]').live('focus', function(){
		$('#tipname').show();
		$('#tipleus').hide();
	});
	$('textarea[name="leus"]').live('focus', function(){
		$('#tipleus').show();
		$('#tipname').hide();
	});
	$('textarea[name="smaaknaam"]').live('focusout', function(){
		$('#tipname').hide();
		$('#tipleus').hide();
	});
	$('textarea[name="leus"]').live('focusout', function(){
		$('#tipleus').hide();
		$('#tipname').hide();
	});
}

	$('textarea[name="smaaknaam"]').live('focus', function(){
		if($(this).val() == 'Verzin een lekkere, creatieve en pakkende naam die jouw smaak in één keer beschrijft.') $(this).val('');
	});
	$('textarea[name="leus"]').live('focus', function(){
		if($(this).val() == 'Verzin een originele strijdleus om jouw smaak kracht bij te zetten (niet verplicht, Inzendingen worden niet op strijdleus beoordeeld).') $(this).val('');
	});
	$('textarea[name="smaaknaam"]').live('focusout', function(){
		if($(this).val() == '') $(this).val('Verzin een lekkere, creatieve en pakkende naam die jouw smaak in één keer beschrijft.');
	});
	$('textarea[name="leus"]').live('focusout', function(){
		if($(this).val() == '') $(this).val('Verzin een originele strijdleus om jouw smaak kracht bij te zetten (niet verplicht, Inzendingen worden niet op strijdleus beoordeeld).');
	});
	$('textarea[name="omdat"]').live('focus', function(){
		if($(this).val() == 'Geef aan waarom jij vindt dat jouw smaak in de winkel moet komen.') $(this).val('');
	});
	$('textarea[name="omdat"]').live('focusout', function(){
		if($(this).val() == '') $(this).val('Geef aan waarom jij vindt dat jouw smaak in de winkel moet komen.');
	});

$('textarea[name="leus"]').live('keyup',function(){
	var input = $(this).val().substr(0,appVars.maxLeus).replace(blacklist, '');	
	var selectionEnd = $(this).prop('selectionEnd');
	var selectionStart = $(this).prop('selectionStart');
	$('textarea[name="leus"]').val(input)
	$(this).prop({selectionStart:selectionStart,selectionEnd:selectionEnd})
	
	$('#countcar').html('('+(appVars.maxLeus-$(this).val().length)+' letters over)')
	
	if(!hasFlash){
				$('#leusinput').html(input);	
			}else{
				if(formFlash){
						
						formFlash.setDescription(input);
					
					}
				
			}	
});


$('.share').live('click',function(){
		shareThis($(this).attr('name'),shareInz);
		return false;
});

});

function getLatestTaste(){
	$.ajax({
				type: "POST",
				url: handlers.latestTaste+"?t=" + gt(),
				dataType: "jsonp",
				data : {
					type : source.type,
					src : source.src,
					med : source.med,
					cam : source.cam	
				},
				jsonp: "callback",
				jsonpCallback: "showLatestTaste"
		});		
}
function showLatestTaste(response){
		var i = 0;
		if(response.data[i] && response.data[i] != ''){
			$('#latest').tmpl(response.data[i]).appendTo('#latestHolder');
		}
		$(document).everyTime(appVars.latestCheck, function(b) {
			i++;
			
			$('#latestHolder').html('');
			
			if(response.data[i] && response.data[i] != ''){
				$('body').append('<img id="loadimage" style="display:none;" src="'+response.data[i].img+'&width=142" />')
				
				$('#loadimage').load(function(){
					$('#latest').tmpl(response.data[i]).appendTo('#latestHolder').hide().fadeIn();
					$('#loadimage').remove();
				});
			}
			//console.log(i,response.data.length)
		}, response.data.length-1);
}



function getFeed(){
			$.ajax({
				type: "POST",
				url: handlers.getFeed+"?t=" + gt(),
				dataType: "jsonp",
				data : {
					type : source.type,
					src : source.src,
					med : source.med,
					cam : source.cam	
				},
				jsonp: "callback",
				jsonpCallback: "showFeed"
			});
}

function showFeed(response){
	var i = 0;
	for(var a = 0;a<5;a++){
		if(response.feed[i] && response.feed[i] != ''){
			$('#feed').tmpl(response.feed[i]).appendTo('#feedHolder');
		}
		i++;
	}
	
	//$('.scroll-pane').jScrollPane();
	
	$(document).everyTime(appVars.feedCheck, function(b) {
		i++;
		if(response.feed[i] && response.feed[i] != ''){
			//console.log(response.feed[i].type)
			if(response.feed[i].type == 't' || response.feed[i].type == 'f' || response.feed[i].type == 'l' ){
				$('body').append('<img id="loadfeedImage" style="display:none;" src="'+response.feed[i].img+'" />')
			}else if(response.feed[i].type == 'b'){
				$('body').append('<img id="loadfeedImage" style="display:none;" src="'+response.feed[i].img+'&width=142" />')
				$('body').append('<img id="loadfeedImageb" style="display:none;" src="'+response.feed[i].img2+'&width=142" />')
			}else{
				$('body').append('<img id="loadfeedImage" style="display:none;" src="'+response.feed[i].img+'&width=142" />')
			}
			
			$('#loadfeedImage').load(function(){
					$('#loadfeedImage').remove();
					$('#loadfeedImageb').remove();
					$('#feed').tmpl(response.feed[i]).prependTo('#feedHolder').hide().fadeIn();
					$('#feedHolder li:last-child').remove();
			});
			
		}
		//$('.scroll-pane').jScrollPane();		
	}, response.feed.length-4);	
}

function startBattle() {
		GA_trackPageview('battle_ophalen');
			$.ajax({
				type: "POST",
				url: handlers.getBattle+"?t=" + gt(),
				dataType: "jsonp",
				data : {
					type : source.type,
					src : source.src,
					med : source.med,
					cam : source.cam	
				},
				jsonp: "callback",
				jsonpCallback: "getBattleCb"
			});
		}
		
function showWinnerCb(response){
	GA_trackPageview('winnaar_ontvangen'); 
	showStage('winner',winner);	
}

function getBattleCb(response){
					$('body').append('<img id="loadfighter" style="display:none;" src="'+response.img1+'&width=213" />')
					$('body').append('<img id="loadfighterb" style="display:none;" src="'+response.img2+'&width=213" />')
				
					$('#loadfighter').load(function(){
						GA_trackPageview('battle_ontvangen');
							$('#loadfighter').remove();
							$('#loadfighterb').remove();
							response.description1 = response.description1.substr(0,55)+'..';
							response.description2 = response.description2.substr(0,55)+'..';
						showStage('fight', response);	
					
						
					});
}

function getnotOkCb(response){
	GA_trackPageview('notok_ontvangen');
	$('.notokmsg').html('<h2>Bedankt!</h2><p>we gaan er werk van maken!</p>')
	
	$(document).everyTime(2000, function(i) {
		showStage('fight', response)
	}, 1);
}


function inzendingCb(response){	
	if(response.taste_filter && response.description_filter ){
		GA_trackPageview('inzending_ontvangen');
		shareInz = inzending;
		shareInz.img = response.img;
		inzending = {};
		showForm('next');
	}else{
		GA_trackPageview('inzending_geweigerd');
		showMsg('Je smaaknaam of beschrijving is niet toegelaten!', 'oeps')	
	}
}

function gt() { return new Date().getTime(); }



function showMsg(msg, title){
	$('#errorpopup').tmpl({msg : msg, title : title}).appendTo('body');
}

function showPopup(url,type){
	
	
	$('#popup').tmpl().appendTo('body');	
	
	if(type == 'video'){
		jwplayer("videocontent").setup({
				flashplayer: " js/libs/jwplayer/player.swf",
				file: url,
				width: 638,
				height : 359,
				events : {
					onReady : function(){
						//doet het niet met display:none..		
					},
					onPlay : function(data){
						
					},
					onComplete : function(){
						
					}
				}
		});
		
	if(mainFlash){
			mainFlash.mute();	
	}
			
		
		jwplayer("videocontent").play();
	}else{
		$('#popcontent').append($(url).html())	
	}
return false;
	
}
function checkFilter(inzending){
	$.ajax({
				type: "POST",
				url: handlers.filter+"?t=" + gt(),
				dataType: "jsonp",
				data : inzending,
				jsonp: "callback",
				jsonpCallback: "filterCb"
	});
}

function filterCb(response){
	if(response.taste_filter && response.description_filter ){
		showForm('next');
	}else{
		GA_trackPageview('inzending_geweigerd');
		if(!response.taste_scheld){
			showMsg('Je smaaknaam bevat een scheldwoord!', 'oeps')	
		}else if(!response.taste_merk){
			showMsg('Je smaaknaam bevat een merknaam!', 'oeps')	
		}else if(!response.description_scheld){
			showMsg('Jouw strijdleus bevat een scheldwoord!', 'oeps')	
		}else if(!response.description_merk){
			showMsg('Jouw strijdleus bevat een merknaam!', 'oeps')	
		}else{
			showMsg('je inzending is geweigerd!', 'oeps')	
		}
	}
}



function getTeller(){
	$.ajax({
				type: "POST",
				url: handlers.tasteCount+"?t=" + gt(),
				dataType: "jsonp",
				data : {
					type : source.type,
					src : source.src,
					med : source.med,
					cam : source.cam	
				},
				jsonp: "callback",
				jsonpCallback: "showTeller"
			});	
}
function hideTeller(){
	$('#teller').hide();		
}

function showTeller(num){
		
		var pad = function(b,a){
			return(eval('1e'+b)+a+'').slice(1)
		}
		
		var draw = function(num){
				num = pad(7,Number(num));
				num = String(num).split('');
				
				var i = 0;
				$('#teller span').each(function(){
					var x = '';
					switch(num[i]){
						case '1':
							x = 'a';
						break;
						case '2':
							x = 'b';
						break;
						case '3':
							x = 'c';
						break;
						case '4':
							x = 'd';
						break;
						case '5':
							x = 'e';
						break;
						case '6':
							x = 'f';
						break;
						case '7':
							x = 'g';
						break;
						case '8':
							x = 'h';
						break;
						case '9':
							x = 'i';
						break;	
					}
					$(this).attr('class', x);
					i++;
				});
		}
	
	if(num == null || num == 'undefined'){
		//$('#teller').show();		
	}else{
		if(currentInz == 0){
				draw(num.count)
				currentInz = num.count;
				setTimeout('getTeller()', appVars.tellerCheck);
		}else if(num.count == currentInz){
				setTimeout('getTeller()',appVars.tellerCheck);
		}else{
			count = num.count - currentInz;
				$(document).everyTime(200, function(i) {
					currentInz++;
			
					draw(currentInz);
					if(count === i){
						setTimeout('getTeller()',appVars.tellerCheck);	
					}	
				}, count);
		}
	}
		
}

function navToHome(){
	$('.main').to({left : '0px'}, 2000);
	$('.form').to({left : '100%'}, 2000);	
}

function navToForm(){
	$('.form').to({left : '0px'}, 2000);	
	$('.main').to({left : '-100%'}, 2000,null,function(){
		currentStage = 'inzending';
		if(!hasFlash){$('a.home').show()}
		else if(hasFlash && currentStep == 1){
				if(formFlash && formLoaded){
						formFlash.setState(0);
				}
		}
		$('a.home').show();	
	});
	$('a.stuursmaak').hide();
	showForm('start');
}

function showStage(stageName, data){
	clearInterval(interval)
	if(data == null) data = {};
	if(stageName == null) stageName = 'home';
	
	if($('#stage_'+stageName).length != 0){
		currentStage = stageName;	

		if(!hasFlash){
			$('#stageHolder').empty();
			$('#stage_'+stageName).tmpl(data).appendTo('#stageHolder');	
		}
		/*Stage settings*/
		switch(stageName){
		case 'intro' :
			GA_trackPageview('stage_intro');
			
			//$('#teller').show()
			
			if(hasFlash){
				showFlash();
			}else{
			/*animation*/
				$('#intA').css('top', '-200px').to({top:'100px'},1000,null,function(){$(this).to({opacity:0,delay:1000},300)});
				$('#intB').css('top', '-200px').to({top:'100px', delay:3000},1000,null,function(){$(this).to({opacity:0,delay:1000},300)});
				$('#intC').css('top', '-200px').to({top:'100px', delay:5000},1000,null,function(){$(this).to({opacity:0,delay:1000},300)});
				$('#intD').css('top', '-200px').to({top:'100px', delay:8000},1000,null,function(){$(this).to({opacity:0,delay:1000},300,null,function(){showStage()})}); 	
			}
		break;
		case 'home' :
			GA_trackPageview('stage_startpage');
		
			//$('#teller').hide();
			/*animation*/
			
		if(hasFlash){
			$('a.stuursmaak').hide();
			$('a.home').hide();
				if(mainFlash){
						mainFlash.navToHome();
					
				}
		}else{
			$('a.stuursmaak').hide();
			$('a.home').hide();
			$('#a .tv-screen')	.css('top', '-400px').to({top:'0px' ,delay:200},500,'easeOutCubic');
			$('#a h2')				.css('top', '-200px').to({top:'100px',delay:200},500,'easeOutCubic');
			$('#a .battlemee')	.css('top', '-200px').to({top:'290px',delay:0},500,'easeOutCubic');
			$('#a .stuurjesmaak').css('top', '-200px').to({top:'320px',delay:0},500,'easeOutCubic');
			$('#a .visual')		.css('top', '-400px').to({top:'100px',delay:200},500,'easeOutCubic');	
		}
		break;
		case 'fight':
			GA_trackPageview('stage_battle');
			
		
			if(!hasFlash){
				interval = setInterval('$(\'#b h1\').fadeToggle(\'slow\')',5000);
				
				$('#teller').hide();		
				$('a.stuursmaak').show();
				$('a.home').show();
				/*animation  $('#b .left')		.css({--}).to({--},500,'easeOutCubic'); cubic-bezier(0.100, 0.905, 0.455, 1);*/ 
				$('#b h1')			.css({opacity : 0, scale:2}).to({opacity:1, scale:1, delay:0},500);
				$('#b #fighterA')	.css({left : '0px', opacity : 0, scale : 0.5}).to({left:'190px', opacity:1 ,delay:200, scale : 1},500);
				$('#b h2')			.css({opacity : 0, scale:2}).to({opacity:1, scale:1, delay:300},500);
				$('#b #fighterB')	.css({right : '0px', opacity : 0, scale : 0.5}).to({right:'190px', opacity:1 ,delay:500, scale : 1},500);
				$('#b .left')		.css({rotate: '-90deg', opacity : 0}).to({rotate: '0deg', opacity : 1, delay:1000},300,'easeOutElastic');
				$('#b .right')		.css({rotate: '90deg', opacity : 0}).to({rotate: '0deg', opacity : 1, delay:1000},300,'easeOutElastic');
				$('#b .notok')		.css({opacity : 0}).to({opacity : 1, delay:1300},500);
				$('#b .kies')		.css({opacity : 0, scale:2}).to({opacity : 1, scale:1, delay:1300},200,'easeInCubic');
			}
		break;
		case 'winner':
		GA_trackPageview('stage_winner');
		
		
			if(!hasFlash){
				if(numBattles != appVars.battles && firstTime || numBattles != appVars.secbattles && !firstTime){
					numBattles ++;
					setTimeout('startBattle()', appVars.winnerDur); 
				}else{
					firstTime = false;
					numBattles = 0;
					setTimeout('showStage(\'reminder\')', appVars.winnerDur); 
				}
			}
		break;
		case 'reminder':
			GA_trackPageview('stage_reminder');
		break;
		}
		
	
	}else{
		//console.log(stageName+' bestaat niet!')	
	}
	
}

function showFlash(){
	var battle = source.med != '' &&  battleMed.search(source.med) != -1? true : false;
	
	
	var flashvars = {
			type : source.type,
			src: source.src,
			med: source.med,
			cam: source.cam,
			battle : battle
	}
	
	var params = {};
	params.menu = "false";
	params.height = 460;
	params.width = 1050;
	params.base = 'flash'; 
	params.wmode = 'transparent';
	params.allowscriptaccess = true;
	
	var attributes = {};
	attributes.id = "flashHolder";
	attributes.name = "flashHolder";
	
	
	swfobject.embedSWF("flash/Preloader.swf", "flashHolder", "1050", "460", "9.0.0","expressInstall.swf", flashvars, params, attributes,function(){
		mainFlash = document.getElementById('flashHolder');
	});

}



function showFlashForm(){
	
	
	var flashvars = {
			type : source.type,
			src: source.src,
			med: source.med,
			cam: source.cam
	}

	
	var params = {};
	params.menu = "false";
	params.height = 520;
	params.width = 700;
	params.base = 'flash'; 
	params.wmode = 'transparent';
	params.allowscriptaccess = true;
	
	var attributes = {};
	attributes.id = "flashFormHolder";
	attributes.name = "flashFormHolder";

	swfobject.embedSWF("flash/FlavourPreview.swf?bagId="+initialBagId, "flashFormHolder", "700", "520", "9.0.0","expressInstall.swf", flashvars, params, attributes,function(){
		formFlash = document.getElementById("flashFormHolder");
	});
	
}

function flashPreviewerReady(){
		formLoaded = true;
		
		if(currentStage == 'inzending'){
			formFlash.setState(0);
		}
}

function flashMainStage(){
	if(currentStage == 'inzending'){
		if (mainFlash) {
				mainFlash.playSoftMusic(); 
		}
	}
	mainStageLoaded = true;	
}


function showForm(direction){
	currentStage == 'inzending';
	
	if(direction == 'next')currentStep ++;
		else if(direction == 'prev') currentStep --;
			//else currentStep = 1;
	
	switch(currentStep){
		case 0:
			currentStep = 4;
		break;
		case 1:
		
			currentbagId = initialBagId;
			$('#formNav').show();
			$('.form').removeClass('batlebg'); 
			
			if(!hasFlash){
				$('#form').removeClass('end'); 
				$('#selectBag').attr('src', 'img/wb/bags/select/big/'+currentbagId+'.png')
			}else{
				
					if (formFlash && formLoaded) {
						formFlash.setBagId(currentbagId);
					  if(direction == 'herstart'){
							formFlash.setState(0);	
						}
					}
			
					if (mainFlash && mainStageLoaded) {
				 	 	mainFlash.playSoftMusic(); 
					}
			}
			
			$('a.prev').hide();
				GA_trackPageview('inzending_1');
		break;
		case 2:
			GA_trackPageview('inzending_2');
			$('#formNav').show();
			$('a.prev').show();
		break;
		case 3:
			GA_trackPageview('inzending_3');
			$('#formNav').show();
			$('a.prev').show();
		break;
		case 4:
			GA_trackPageview('inzending_klaar');
			$('#formNav').hide();
			$('.form').addClass('batlebg'); 
			if(!hasFlash){
				$('#form').addClass('end')
			}else{
				if (formFlash) {
						formFlash.setState(1);
				}
				
				if(mainFlash && mainStageLoaded){
						mainFlash.playLoudMusic();
				}
			}
			$('a.prev').hide();
		break;
	}
	
	$('#formHolder').empty();
	inzending.nameA = inzending.name;
	//console.log(currentStep)
	$('#form'+currentStep).tmpl(inzending).appendTo('#formHolder');
	if($('#countcar').length == 1) $('#countcar').html('('+(appVars.maxLeus-$('#leus').val().length)+' letters over)');
	
	if(currentStep == 4){
		inzending = {};
		currentStep = 1;
	}
	
	if(currentStep == 3){
		$('.next').html('Verstuur');
	}else{
		$('.next').html('Volgende >')
	}
	
	
	$('#count').html('Stap '+currentStep+'/3');	
	setupCarousel()
}


function setupCarousel(){
	if($('#carousel').length == 1){
		$("#carousel").CloudCarousel(		
		{			
			xPos: 128,
			yPos: 32,
			buttonLeft: $("#car_left"),
			buttonRight: $("#car_right"),
			xRadius : 80,
			yRadius : 5
		}
	);	
	}
}

function shareThis(type, inz){
	switch(type){
		case 'tw':
			GA_trackPageview('share_tw');
			var url = 'https://twitter.com/intent/tweet?source=webclient&text='+encodeURIComponent(share.tw.replace('%smaak%', inz.taste_name)+' #maakdesmaak '+share.tw_url);
			popitup(share.title,url,210,500); 
		break;
		case 'fb':
			
			
			var publish = {
			  	method: 'feed',
			  	link :  share.fb_url,
				name: share.title,
				description: share.desc,
			  	caption: share.cap.replace('%smaak%', inz.taste_name),
				picture : inz.img,
			  	source : appVars.baseUrlSsl+'flash/share.swf?type='+source.type+'&src='+source.src+'&cam='+source.cam+'&med='+source.med,
				privacy: {value : share.privacy},
			  	actions : [{ name: 'Start The Battle!', link: share.fb_url}]
			};
	
			FB.ui(publish, function(response){GA_trackPageview('share_fb');});
		break;	
		case 'hy':
			GA_trackPageview('share_hy');
			var url = 'http://www.hyves.nl/hyvesconnect/smartbutton?title='+share.title+'&body='+share.cap.replace('%smaak%', inz.taste_name)+' '+share.desc+' [url='+encodeURIComponent(share.hy_url)+']Doe nu mee![/url]&type=9'
			popitup(share.title,url,450,600); 
		break;		
	}	
}

function popitup(title,url,height,width) {
	newwindow=window.open(url,title,'height='+height+',width='+width);
	if (window.focus) {newwindow.focus()}
	return false;
}




