$(function(){


window.App = Backbone.View.extend({
	el: $('body'),
	winprizeid: null,
	questionid: null,
	events: {
		'click #clickzone': 'clickzone',
		'click #bg': 'hideCards',
		'click #winsubmit': 'winsubmit',
		'click #loosesubmit': 'loosesubmit',
		'click #failclose': 'failclose'
		
	},
	initialize: function(){
		var that = this;
		
		/*$(window).resize(function(){
			that.setLayout();
		});*/
		that.setLayout();
	},
	failclick: function(){
		$('#fail').show();
		$('#cards').fadeIn();
		return false;
	},
	failclose: function(){
		$('#fail').fadeOut();
		$('#cards').fadeOut();
		return false;
	},
	clickzone: function(e){
		var playfieldoff = $('#clickzone').offset();
		var x = e.pageX - playfieldoff.left;
		var y = e.pageY - playfieldoff.top;
		var data = {x: x, y: y};
		
		$.getJSON('ajax/click', data, function(res){
			console.log(["received > ", res]);
			var rnd = Math.round(Math.random()*1000000);
			$('#clickimg').attr('src','img/clickmap.gif?u='+rnd);
			if(res.result){
				if(res.data.winner){
					$('#winner .vyhra h2').html(res.data.prize.name);
					$('#winner .vyhra img').attr('src',res.data.prize.img);
					$('#winner .vyhra p').html(res.data.prize.description);
					$('#winner .vyhra2 h2').html(res.data.weekprize.name);
					app.winprize = res.data.prize.id;
					app.winnerCard();
				} else {
					$('#looser .vyhra h2').html(res.data.weekprize.name);
					$('#looser .vyhra img').attr('src',res.data.weekprize.img);
					$('#looser .vyhra p').html(res.data.weekprize.description);
					$('#looser .quest p').html(res.data.question.question);
					console.log([$('#looser .quest .a span'),res.data.question.A,res.data.question]);
					$('#looser .quest .a em').html(res.data.question.A);
					$('#looser .quest .b em').html(res.data.question.B);
					$('#looser .quest .c em').html(res.data.question.C);
					app.questionid = res.data.question.id;
					app.looseCard();
				}
			} else {
				$('#fail p').html(res.message);
				app.failclick();
			}
		});
		
		console.log(["clicked > ",x,y]);
		
		return false;
	},
	winnerCard: function(){
		$('#winner').show();
		$('#cards').fadeIn();
		$('#clickzone').hide();
		return false;
	},
	looseCard: function(){
		$('#looser').show();
		$('#cards').fadeIn();
		$('#clickzone').hide();
		return false;
	},
	hideCards: function(){
		$('#winner').fadeOut();
		$('#looser').fadeOut();
		$('#cards').fadeOut();
		$('#fail').fadeOut();
		return false;
	},
	winsubmit: function(){
		data = {
			email: $('#winmail').val(),
			prize_id: app.winprizeid
		}
		$.getJSON('ajax/winner', data, function(res){
			console.log(["received > ", res]);
			if(res.result){
				app.hideCards();
				$('#fail p').html('<strong>Fajn</strong><br/>dáme ti vědět a držíme palce ve slosování.');
				app.failclick();
			} else {
				app.hideCards();
				$('#fail p').html(res.message);
				app.failclick();
			}
		});
		return false;
	},
	loosesubmit: function(){
		data = {
			email: $('#loosemail').val(),
			answer: $("input[name='quest']:checked").val(),
			question_id: app.questionid
		}
		//console.log(data);
		$.getJSON('ajax/answer', data, function(res){
			console.log(["received > ", res]);
			if(res.result){
				app.hideCards();
				$('#fail p').html('<strong>Fajn</strong><br/>držíme palce ve slosování.');
				app.failclick();
			} else {
				app.hideCards();
				$('#fail p').html(res.message);
				app.failclick();
			}
		});
		return false;
	},
	setLayout: function(){
		$('#bg').height($(document).height()).css('opacity', .5);
		$('#clickimg').css('opacity', .5);
	}
	
	
	
});


var app = new App();




jQuery.extend({
   postJSON: function( url, data, callback) {
	  return jQuery.post(url, data, callback, "json");
   }
});


});

