$(function(){
var duration,
 pause = 3200,
 bool = false,
 item_height=0,
 up_interval,
 down_interval,
 topper=0,
 $curr,
 new_src,
 hrefV,
 k=0,
 pixSize,
 hashy = location.hash,
 idm,
 whichID='',
 feedT='http://twitter.com/statuses/user_timeline/46364066.rss',
 twitter = $('#twitter').attr('id'),
 feedS='http://rss.stumbleupon.com/user/alexwebgr/favorites',
 stumble = $('#stumble').attr('id'),
 dir;

	$('#pix span').hide();
	$('.item')
		.css({
			position:'absolute',
			top:'70px',
			left:'252px',
			padding:'0px',
			margin:'0px'
		})
		.hide();
	$('.menu-bar').css({
		margin:'70px 0px 0px 0px',
		position:'relative',
		top:'0px'
		
	});
	$('#respect span').css({
		position:'absolute',
		bottom:'-35px',
		left:'20px'
	});
	if(hashy==''){
		$('#about').fadeIn(1000);
	}else{
		$(hashy).fadeIn(1000);
	}

	$(window).bind( 'hashchange', function(){
		hashy = location.hash;
		if(hashy==''){
			hashy = '#about';
		}
		if(hashy == '#alex-web'){
			document.title = 'alex-web ';
		}else{
			document.title = 'alex-web - ' +hashy.replace( /^#/, '' );
		}
		$('.menu-bar a').each(function(){
			var that = $(this);
			var id=that.attr( 'href' );
			that[ id === hashy ? 'addClass' : 'removeClass' ]( 'selected' );
		})
		$('#about .links a').each(function(){
			var that = $(this);
			var id=that.attr( 'href' );
		})
	})
	$(window).trigger( 'hashchange' );

	$('.menu-bar a,#about .links a').click(function(){
		topper=0;
		idm= $(this).attr('href');
		whichID = idm;
		if(idm=='#portfolio'){
			$('#largeImg-wrapper').fadeOut(1000,function(){
				$('#imgLoader').html('');
			}); 
		}
		$('.content').fadeOut(1000,function(){
			$('.item').hide();
			$(idm).show();
			$(this).fadeIn(1000,function(){
				if(idm=='#twitter'){
					loadRss(feedT,twitter);
				}
				if(idm=='#stumble'){
					loadRss(feedS,stumble);
				}
			});
		})
		//$('.cont').html('menu : '+whichID+'--idm--'+idm+'<br />');
	})
	
	$('.lang-switch span').animate({opacity:'0',left:'0px'},1).text('it is all greek to me !');
	$('.english').hide();
	
	$('.lang-switch').hover(
		function(){
			$(this).find('span')
				.animate({
					opacity:'1',
					left:'10px'
				},{queue:false,duration:'slow'});
		},
		function(){
			$(this).find('span')
				.animate({
					opacity:'0',
					left:'0px'
				},{queue:false,duration:'slow'});
		}
	)
	.click(function(){
		if($(this).hasClass('en')){
			$('.english').fadeOut(function(){
				$('.greek').fadeIn();
				$('.lang-switch')
					.css('background-position','top right')
					.removeClass('en')
					.find('span')
						.animate({
							opacity:'0',
							left:'0px'
						},1000,function(){
							$('.lang-switch span').text('it is all greek to me !');
						});
			})
		}else{
			$('.greek').fadeOut(function(){
				$('.english').fadeIn();
				$('.lang-switch')
					.css('background-position','bottom right')
					.addClass('en')
					.find('span')
						.animate({
							opacity:'0',
							left:'0px'
						},1000,function(){
							$('.lang-switch span').text('greek lover here !');
						});
						
			})
		}
	})
	
	$('#respect span').animate({opacity:'0'},1);
	
	$('#respect img').hover(
		function(){
			$(this).next()
				//.stop()
				.animate({
					opacity:'1',
					left:'10px'
				},{queue:false,duration:'slow'});
		},
		function(){
			$(this).next()
				//.stop()
				.animate({
					opacity:'0',
					left:'20px'
				},{queue:false,duration:'slow'});
		}
	)
	//	$('.cont').append('out menu hashy: '+hashy+'  idm  : '+idm+'<br />');
	
	$('#submit').click(function(){
		var hasError = false;
		var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
		var name = $('#name').val();
		var email = $('#email').val();
		var subject = $('#subject').val();
		var message = $('#message').val();
		var dataString = 'name='+ name + '&email=' + email + '&message=' + message + '&subject=' + subject;
		if(name.length<2|| $('#name').val().length>14){
			if($('.n').length){
				$('.n').show();
			}else{
				$('#name').parent().append('<div class="msgBox n"></div>');
			}
			$('.n').text('Το ονομα πρεπει να ειναι απο 2 εως 25 χαρακτηρες').css('color','red').fadeOut(2000,function(){
				$('#name').css('border','1px solid #777');
			});
			//.delay(3000)
			$('#name').css('border','1px solid red');
		//alert('error'); 
			hasError = true;
			
		}else{
			$('#name').css('border','1px solid green');
		}
		if(email.length<2 || !emailReg.test(email)){
			if($('.e').length){
				$('.e').show();
			}else{
				$('#email').parent().append('<div class="msgBox e"></div>');
			}
			$('.e').text('Η διευθυνση email δεν ειναι εγκυρη').css('color','red').fadeOut(2000,function(){
				$('#email').css('border','1px solid #777');
			});
			$('#email').css('border','1px solid red');
			hasError= true;
		}else{
			$('#email').css('border','1px solid green');
		}
		if(message.length< 2){
			if($('.m').length){
				$('.m').show();
			}else{
				$('#message').parent().append('<div class="msgBox m"></div>');
			}
			$('.m').text('Παρακαλω αφηστε ενα σχολιο').css('color','red').fadeOut(2000,function(){
				$('#message').css('border','1px solid #777');
			});
			$('#message').css('border','1px solid red');
			hasError= true;
		}else{
			$('#message').css('border','1px solid green');
		}
		if (hasError == false ){
			$.ajax({
				type: 'POST',
				url: 'email.php',
				data: dataString,
				success: function(){
					$('<div class="mailState">Success !</div>').appendTo('#contact').css('background','green').delay(3000).fadeOut(2000);;
					//alert(dataString);
					name = '';
					email = '';
					message = '';
				}
			});
		}
		return false;
	})
	
	
	pixSize = $('#pix li img').size();

	//$('.cont').text('k : '+k);
	
	$('.prev').hover(
		function(){
			$('.prev span').fadeIn('slow');
		},function(){
			$('.prev span').hide();
		}
	)
	.click(function(){
		k--;
		//$('.cont').text('k : '+k);
		
		$(this).fadeOut('fast',function(){
			if(k<=1){
				$(this).hide();
			}else{
				$(this).delay(500).fadeIn('fast');
			}
		})
		$('.next').show();

		$curr = $('.sel').prev('li').find('img');
		imgLoader($curr);
		$('.sel')
			.prev('li').addClass('sel')
			.next('li').removeClass('sel');
		return false;
	});
	$('.next').hover(
		function(){
			$('.next span').fadeIn('slow');
		},function(){
			$('.next span').hide();
		}
	)
	.click(function(){
		k++;
		//$('.cont').text('k : '+k);
		$(this).fadeOut('fast',function(){
			if(k>=pixSize){
				$(this).hide();
			}else{
				$(this).delay(500).fadeIn('fast');
			}
		})
		
		$('.prev').fadeIn('slow');

		$curr = $('.sel').next('li').find('img');
		imgLoader($curr);
		$('.sel')
			.next('li').addClass('sel')
			.prev('li').removeClass('sel');
			return false;
	})

	$('#pix li img').click(function(){
		$('#pix li').removeClass('sel');
		$(this).parent().parent().addClass('sel');
		k=$('#pix li img').index(this)+1;
		//$('.cont').text('k b : '+k);
		if(k<=1){
			$('.prev').hide();
		}else{
			$('.prev').show();
		}
		if(k>=pixSize){
			$('.next').hide();
		}else{
			$('.next').show();
		}
		$curr = $(this);
		imgLoader($curr);
		return false;
	}).hover(function(){
		$(this).animate({
			opacity:'1'
		})
		},function(){
		$(this).animate({
				opacity:'0.7'
			})
		}
	).animate({
		opacity:'0.7'
	})

	$('.close').click(function(){
		$(this).parent().fadeOut('slow',function(){
			$('#imgLoader').html('');
		});
		
	})
	$('.warning').hide();
	$('.hide-strip').click(function(){
		$('.warning').slideToggle(2000,function(){
			if($('.hide-strip span').text()=='Διαβάστε περισσότερα'){
				$('.hide-strip span').text('Κλείσιμο παραθύρου');
			}else{
				$('.hide-strip span').text('Διαβάστε περισσότερα');
			}
		});
	})

	$(whichID+' .roller').hover(		function(){			bool = true;			dir = $(this).attr('class');			//$('.cont').append('--dir = '+dir+'-----on='+bool+'<br />');			again();//todo -> custom hoverIntent			down_interval = setInterval(again, pause+duration);		},		function(){			bool=false;			//$('.cont').append('-----off='+bool+'<br />');			clearInterval(down_interval);		}	)	function again(){		//$('.cont').append('----again='+bool+'<br />');		if(bool==true){			//$('.cont').append('----if='+bool+'<br />');			scrollMeDown(hashy,dir);		}		//else{			//$('.cont').append('----else='+bool+'<br />');		//}	}	function scrollMeDown(which,direc){		//$('.cont').append('direc = '+direc+' <br />');		if(direc=='roller down'){			if(topper>=-$(which+' .widget-body ul.pullMe').height()+(item_height*2)){				topper=topper-item_height;				$(which+' .widget-body ul.pullMe').animate({marginTop:topper},duration);				//$('.cont').append('direc = '+direc+'--- down : '+topper+' <br />');			}		}		if(direc=='roller up'){			if(topper<=-item_height){				topper=topper+item_height;				$(which+' .widget-body ul.pullMe').animate({marginTop:topper},duration);				//$('.cont').append('direc = '+direc+'--- up : '+topper+' <br />');			}		}	}
	
	function loadRss(feedURL,container){
		item_height=0;
		duration=pause;
		var dataString = 'id='+feedURL;
		$.ajax({
			type: 'POST',
			url: container+'.php',
			data: dataString,
			success: function(id){
				$('#'+container+' .container').html(id)
				item_height = $('#'+container+' .widget-body .litem').height()+10;
				duration=(item_height/50)*1200;
				//$('.cont').append(' item_height loadF: '+item_height+' <br />');
			}
		});
		
	}
	//$('.cont').append('item_height onL : '+item_height+'<br />');

	if(hashy=='#twitter'){
		loadRss(feedT,twitter);
	}
	if(hashy=='#stumble'){
		loadRss(feedS,stumble);
	}

	function imgLoader(pixImg){
		hrefV = pixImg.parent().attr('href');
		$('.loader').fadeIn('slow');
		$('#largeImg-wrapper').fadeIn('slow'); 
		var img = new Image();
		new_src = pixImg.attr('src').replace('images/thumbs','images');
		$(img).load(function () {
			//$(this).css('display', 'none'); // .hide() doesn't work in Safari when the element isn't on the DOM already
			$(this).hide();
			$('#imgLoader')
				.html(this)
				.wrapInner('<a href="'+hrefV+'" target="blank" />');
				$('.loader').fadeOut('slow');
			$(this).fadeIn(2000);
			//$('.prev span ,.next span').show();
		}).error(function () {
			$('.cont').text('oops !');
			return false;
		})
		.attr('src', new_src);
		//$('.cont').text('hrefV : '+hrefV);
		return false;
	}
})

$(document).keyup(function(e) {
  if (e.keyCode == 27) { $('.close').click(); }   // esc
});

