$(function(){
	//.overdiv de inaltimea body.........................
	var x = $('body').height();
	$('.overdiv').height(x);
	$('.overwrapp').height(x);
	
	//deschide butonul ce contine linkul catre toate relatarile..........................................
	$(".toate").addClass('inchis');
	$('.toate span').click(function(){
		$(this).parent().removeClass('inchis',1000);
	});
	
	//afiseaza submeniul..................................................
	$('.main a').hover(function(){
		var parinte = $(this).parent();
		$('.submenu',parinte).show();
	}, function(){
		var parinte = $(this).parent();
		$('.submenu',parinte).hide();
	});
	$('.submenu').hover(function(){
		$(this).show();
	}, function(){
		$(this).hide();
	});

	//adauga rel="2" la 'citeste mai mult' din a doua relatare
	$('#wrap .relatare:eq(1) a.more').attr('rel','2');
	
	//hover deasupra unei casute goale....................................
	$('.gol').hover(function(){
		//reseteaza pozitia liniilor si ascunde mesajele 'spune povestea ta'
		$('.vertical-line').css('height','0');
		$('.horizontal-line').css('width','0');
		$('.povestea-ta').hide();
		
		//afiseaza mesajul 'spune mesajul tau'
		var parinte = $(this).parent();
		$('a.povestea-ta, .transparent-layer',parinte).show();
	},function(){
		var parinte = $(this).parent();
		$('.transparent-layer',parinte).hide();
	});
	
	//un div transparent care inconjoara 'spune povestea ta' 
	//pentru a mari suprafata de hover
	$('.transparent-layer').hover(function(){
		$(this).show();
	},function(){
		$(this).hide();
	});
	
	//animatia liniilor si a box-urilor la hover pe o casuta care are relatare.................
	$('.block-transparent').click(function(){
		//reseteaza pozitia liniilor si ascunde mesajele 'spune povestea ta'
		$('.vertical-line').css('height','0');
		$('.horizontal-line').css('width','0');
		$('.povestea-ta').hide();
		
		//seteaza culoarea cutiutei
		$(this).removeAttr('style').removeClass('hovered').addClass('transparent');
		
		//inchide toate relatarile, ascunde X si rating 
		$('.relatare').removeClass('expandat');
		$('.rating, .close').fadeOut();
		
		//afiseaza linkul 'citeste mai mult' in toate relatarile
		$('.relatare .more').fadeIn('slow');
		
		//calculeaza coordonatele de unde vor porni liniile
		var position = $(this).position();
		var distanceFromTop = position.top +15;
		var verticalLineLength = 545 - distanceFromTop; 
		var horizontalLineLength = position.left - 87;
		
		//pozitioneaza si animeaza liniile
		$('.vertical-line')
			.stop()
			.css('top',distanceFromTop + 'px')
			.animate({
				height:verticalLineLength+'px'
			},700);
		$('.horizontal-line')
			.stop()
			.css('top',distanceFromTop-2 + 'px')
			.animate({
				width:horizontalLineLength+'px'
			},700);
		
		//slide la relatarea potrivita
		var linkRel = $(this).attr('rel');
		linkRel = parseInt(linkRel);
		var element = $('#cell'+linkRel);
		$('#slide').scrollTo(element,1000,{axis:'x'});
		
		//daca se face slide pe ultima cutiuta dezactiveaza linkul go-right
		maxNumber = $('#slide #wrap').children().size();
		if (linkRel == maxNumber){
			$('.go-right').attr('id','no-right').fadeOut('slow');
		}else if(linkRel<maxNumber){
			$('.go-right').attr('id','go-right').fadeIn('slow');
		}
		
		//updateaza rel-urile link-urilor de navigare a slide-ului
		if(linkRel>1){
			$('.go-left').attr('id','go-left').attr('rel',linkRel);
			$('.go-right').attr('rel',linkRel);
		}else if(linkRel==1){
			$('.go-left').attr('id','no-left').removeAttr('rel');
			$('.go-right').attr('rel','1');
		}
		
		//update rel-urile linkurilor din fiecare relatare
		updateRelCaseta(linkRel);
		return false;
	});
	
	//expandeaza o relatare in momentul in care se da click pe linkul 'citeste mai mult'..............................
	$( ".relatare a.more" ).click(function() {
		//reseteaza pozitia liniilor si ascunde mesajele 'spune povestea ta'
		$('.vertical-line').css('height','0');
		$('.horizontal-line').css('width','0');
		$('.povestea-ta').hide();
		
		//deschide incet relatarea si ascunde linkul
		$(this).parent().addClass( "expandat", 1000);
		$(this).fadeOut('slow');
		
		//afizeaza ratingul si butonul de inchidere
		var parinte = $(this).parent();
		$('.rating, .close',parinte).fadeIn();
		
		/* daca utilizatorul vrea sa expandeze caseta din dreapta
		 * se face un slide la stanga pentru a da impresia ca box-ul isi mareste
		 * latimea catre stanga. Implicit, jQuery mareste latimea doar de la stanga
		 * la dreapta 
		 **/
		var storyNr = $(this).attr('rel');
		var storyNr = parseInt(storyNr);
		if(storyNr){
			slideToStory(storyNr);
			updateRelCaseta(storyNr);
		}
		
		//updateaza rel-urile linkurilor de navigare
		if(storyNr){
			$('.go-left').attr('rel',storyNr).attr('id','go-left');
			$('.go-right').attr('rel',storyNr);
			
			//vezi daca am ajuns la limita maxima si disable go-right
			maxNumber = $('#slide #wrap').children().size();
			if (storyNr == maxNumber){
				$('.go-right').attr('id','no-right').fadeOut('slow');
			}
		}
		return false;
	});
	
	//inchide relatarea la click pe close..................
	$( ".relatare a.close" ).click(function() {
		$(this).parent().parent().removeClass( "expandat", 1000);
		
		var parinte = $(this).parent().parent();
		$('.more', parinte).fadeIn('slow');
		$('.rating, .close',parinte).fadeOut();
		return false;
	});
	
	//slide la click pe butoanele de navigare a relatarilor........................
	$('#nav>a').click(function(){
		//reseteaza pozitia liniilor si ascunde mesajele 'spune povestea ta'
		$('.vertical-line').css('height','0');
		$('.horizontal-line').css('width','0');
		$('.povestea-ta').hide();
		
		//inchide toate butoanele close, rating-urile si 
		$('.close').hide();
		$('.rating').hide();
		$('.relatare .more').fadeIn('slow');
		
		//inchide toate relatarile
		$('.relatare').removeClass('expandat');
		
		//afla directia dorita apoi scrol la element
		var leftOrRight = $(this).attr('id');
		if(leftOrRight == 'go-left'){
			var noLeft = $(this).attr('id');
			if (noLeft != 'no-left'){
				var linkRel = $(this).attr('rel');
				linkRel = parseInt(linkRel) - 1;
				if (linkRel == 1){
					$(this).attr('id','no-left');
				}
				var element = $('#cell'+linkRel);
				$('#slide').scrollTo(element,500,{axis:'x'});
				$(this).attr('rel', linkRel);
				$('#nav a.go-right').attr('rel',linkRel).attr('id','go-right').fadeIn('slow');
				
				
				//activeaza rel-ul doar pentru linkul 
				//'citeste mai mult' corespunzator casetei din dreapta
				updateRelCasetaMinus(linkRel);
			}
		} else if (leftOrRight == 'go-right') {
			var noRight = $(this).attr('id');
			if (noRight != 'no-right'){
				maxNumber = $('#slide #wrap').children().size();
				var linkRel = $(this).attr('rel');
				linkRel = parseInt(linkRel) + 1;
				if (linkRel == maxNumber){
					$(this).attr('id','no-right').fadeOut('slow');
				}
				var element = $('#cell'+linkRel);
				$('#slide').scrollTo(element,500,{axis:'x'});
				$(this).attr('rel', linkRel);
				$('#nav a.go-left').attr('rel',linkRel).attr('id','go-left');
				
				//activeaza rel-ul doar pentru linkul 
				//'citeste mai mult' corespunzator casetei din dreapta
				var relNr ="";
				$('#slide .relatare').each(function(){
					var rel = $('a.more', this).attr('rel');
					if(rel){
						relNr = rel;
					}
				});
				relNr = parseInt(relNr);
				updateRelCaseta(relNr);
			}
		}
		return false;
	});
	
	
	
	//scroll la termeni si conditii in participare lightbox...................
	$('#show-terms').click(function(){
		$(this).parent().parent().parent().parent().parent().addClass('zero', 1000);
		return false;
	});
	$('.extra-content a.inapoi').click(function(){
		$('#storyForm').removeClass('zero',1000);
		return false;
	});
	$("#storyForm .submit").click(function(){
		$('#err_name').hide();
		$('#err_email').hide();
		$('#err_phone').hide();
		$('#err_location').hide();
		$('#err_story').hide();
		$('#err_terms').hide();
		$.ajax({
			type: 'POST', 
			url: 'campanie/add',
			data: $('#storyForm').serialize(), 
			success: function(response) {
				var response_array = response.split('-');
				for (var i=0; i<response_array.length; i++) {
					switch (parseInt(response_array[i]))
					{
						case 1:
							$('#err_name').show();
							break;
						case 2:
							$('#err_email').show();
							break;
						case 3:
							$('#err_phone').show();
							break;
						case 4:
							$('#err_location').show();
							break;
						case 5:
							$('#err_story').show();
							break;
						case 6:
							$('#err_terms').show();
							break;
						case 200:
							$('#storyFormFieldset').hide();
							$('.success').show();
							$('#storyForm').get(0).reset();
							setTimeout("$('.success').hide();$('#storyFormFieldset').show();", 5000);
						  break;
					}
				}
			}
		});
		return false;
	});
	
	$("#contactForm .submit").click(function(){
		$('#err_cname').hide();
		$('#err_cemail').hide();
		$('#err_cmessage').hide();
		$.ajax({
			type: 'POST', 
			url: '/campanie/contact',
			data: $('#contactForm').serialize(), 
			success: function(response) {
				var response_array = response.split('-');
				for (var i=0; i<response_array.length; i++) {
					switch (parseInt(response_array[i]))
					{
						case 1:
							$('#err_cname').show();
							break;
						case 2:
							$('#err_cemail').show();
							break;
						case 3:
							$('#err_cmessage').show();
							break;
						case 200:
							$('#contactFormFieldset').hide();
							$('.success').show();
							$('#contactForm').get(0).reset();
							setTimeout("$('.success').hide();$('#contactFormFieldset').show();", 5000);
						  break;
					}
				}
			}
		});
		return false;
	});
	
	//rating.............................
	$('.rating a').hover(function(){
		var starNumber = $(this).index();
		//functia index() incepe numaratoarea de la 0 asa ca facem un update:
		starNumber = starNumber+1;
		
		//calculam pozitia backgroundului
		theWidth = -130 + starNumber * 26; 
		$(this).parent().css('backgroundPosition',theWidth+'px '+'0px');
	}, function(){
		var valoare = $(this).parent().attr('id');
		
		if(valoare != 0){
			valoare = valoare.split('-');
			valoare = valoare[valoare.length-1] - 130;
			$(this).parent().css('backgroundPosition',valoare + 'px 0px');
		}else{
			$(this).parent().css('backgroundPosition','-130px 0px');
		}
	});
	
	//voting stuff
	$('.rating a').click(function(){
    return false;
		var hook = $(this).attr('class').split('-');
		var parinte = $(this).parent();
		var userrating = hook[1];
		var mesaj = '<strong style="display:none;" id="star-'+hook[2]+'">Ati acordat nota '+userrating + '</strong>';
		
		$(this).unbind();
		$(this).parent().css('backgroundPosition','-130px 0');
		
		//ascunde stelutele
		$(this).parent().fadeOut();
		$('a', parinte).delay(90).fadeOut();
		$(this).parent().delay(110).fadeIn();
		
		
		//ataseaza mesajul
		$(this).parent().delay(120).append(mesaj);
		
		//afiseaza mesajul la o secunda dupa ce au disparut stelutele
		setTimeout("$('.rating strong').fadeIn()",1000);
		
		//ascunde mesajul 2.5 secunde dupa ce a aparut
		setTimeout("$('.rating strong').fadeOut()",3500);
		
		//chestii care se intampla dupa ce informatiile au fost primite de la server
		$.ajax({
			type: 'POST', 
			url: '/campanie/vote',
			data: "points="+ hook[1] +"&id="+ hook[2],
			context: $(this).parent(),
			success: function(response) {
				
				var rating = parseInt(response);
				if (rating > 0) {
					$(this).css('backgroundPosition','-130px 0px');
					var spans = '<div class="nota-finala" style="display:none;"><span></span><span></span><span></span><span></span><span></span><div class="clear"></div></div>';
					var beuri = '<b style="display:none">Nota finala este: '+rating +'</b>';
					$(this).append(spans);
					$(this).append(beuri);
					$('b',this).delay(3500).fadeIn().delay(1000).fadeOut();
					$('.nota-finala',this).delay(5500).fadeIn();
					var theWidth = rating*26 - 130;
					$('.nota-finala',this).delay(4700).css('backgroundPosition',theWidth+'px '+'0px');
				}
			}
		});
		return false;
	});
	
	//hover pe cta pe index
	$('a.cta').hover(function(){
		$('.spune-ne').show();
	}, function(){
		$('.spune-ne').hide();
	});
	
	//clasa last la meniul din footer pe ultimul li
	$('.footer ul li:last').addClass('last');
	
	//slide toggle la intrebari frecvente.........................
	$('#faq ul li a').click(function(){
		var parinte = $(this).parent(),
			rel = $(this).attr('rel');
		$('.raspuns', parinte).slideToggle();
		if(!rel){
			$(this).addClass('minus').attr('rel','1');
		}else{
			$(this).removeClass('minus').removeAttr('rel');
		}
		return false;
	});
});
function updateRelCaseta(relNr){
	$('.relatare').each(function(){
		$('a.more',this).removeAttr('rel');
	});
	var casetaDreapta = $('.relatare:eq('+relNr+')');
	relNr = relNr+1;
	$('a.more',casetaDreapta).attr('rel',relNr);
}
function updateRelCasetaMinus(relNr){
	$('.relatare').each(function(){
		$('a.more',this).removeAttr('rel');
	});
	var casetaStanga = $('.relatare:eq('+relNr+')');
	relNr = relNr+1;
	$('a.more',casetaStanga).attr('rel',relNr);
}
function scrollThePage(){
	$("html, body").animate({scrollTop:100},2000);
}
function slideToStory(storyNr){
	var element = $('#cell'+storyNr);
	$('#slide').scrollTo(element,1000,{axis:'x'});
}
