
// MOSNE FUNCTIONS

$(document).ready(function(){
		
	var mydesc = $(".longdesc").html();
	$("#album, .longdesc").jTypeWriter({onComplete:function (){
		$(".longdesc").html(mydesc);
		}
	});
	
	
   //preload image;
	
	var img1 = new Image();	
	var img2 = new Image();	
	var img3 = new Image();	
	var img4 = new Image();	
	
	$(img1).load().attr("src", "/09/img/Mosne_09.png");
	$(img4).load().attr("src", "/09/img/ajax/4-2.gif");
	$(img2).load().attr("src", "/09/img/push2.png");
	$(img3).load().attr("src", "/09/img/webicons.png");
	
	$("#progressbar").progressbar({value:0});
	
	
	
	
	
	$.scrollTo.defaults.axis = 'x';

function simple_tooltip(target_items, name){
 $(target_items).each(function(i){
		$("body").append("<div class='"+name+"' id='"+name+i+"'><img src='"+$(this).attr('rel')+"'></div>");
		var my_tooltip = $("#"+name+i);
		
		if($(this).attr("title") != "" && $(this).attr("title") != "undefined" ){
		
		$(this).removeAttr("title").mouseover(function(){
					my_tooltip.css({opacity:0.9, display:"none"}).fadeIn(200);
		}).mousemove(function(kmouse){
				//var border_top = $(window).scrollTop(); 
				//var border_right = $(window).width();
				var left_pos;
				var top_pos;
				var koffset = 25;
				/*				
				left_pos = kmouse.pageX+offset;
				top_pos = kmouse.pageY - (my_tooltip.height()/2);
				*/
				left_pos = kmouse.pageX + 16;// - (my_tooltip.width()/2);
				
				//left_pos = kmouse.pageX +8;
				top_pos = kmouse.pageY + koffset;
				//top_pos = $(this).parent().parent().height()+$(this).parent().parent().offset().top + 30;
			
				my_tooltip.css({left:left_pos, top:top_pos});
		}).mouseout(function(){
				my_tooltip.stop().fadeOut(400);	
				//my_tooltip.stop().animate({top:480,easing:"easeOutQuart",duration:900, opacity:0});				  
		});
		
		}
		
		
		
	});
}

		simple_tooltip("ul.list>li>a","tooltip");
						   
		var $pane = $('#slidebox');
		var $prev = $('#prev');
		var $next = $('#next');
		var tw = 1940;
		var lded = 1;		

	$("ul#port li").each(function(i){
		
		var currimg = $(this).find("img");
		var the_src= $(currimg).attr("src");
		tw += 5+$(currimg).attr("width");
		var curr = $(this);
		var img = new Image();					
							
		$(img).load(function () {
	       
	        $(currimg).css({"opacity":0}).css("visibility","visible");
	        $(currimg).attr("src", the_src);
	        $(currimg).animate({"opacity":1},function(){
	        	$(curr).removeClass("loading");
	        	var pro = (((lded)/$("ul#port li").length)*100);
	    		$("#progressbar .ui-progressbar-value").stop().animate({"width":pro+"%"});
	    			//$("#progressbar .ui-progressbar-value").html(parseInt(pro)+"%");
	    		lded++;
	    		if(pro>=99){
	    			setTimeout(function(){
	    				$("#progressbar").animate({"opacity":0},function(){
																		 
						 $(this).hide();
						 $("#mosne").animate({top:16,easing:"easeOutQuart"});
						 });//fadeOut("slow");
	    			
					},500);
	    		};
	        });
	    
	    }).attr("src",the_src);	
	    
	
	});	
	
	$("ul#port li:last").width($(window).width());
	
	$("ul#port").css("width",tw);
	
		
		if( location.hash ){
			
			idtar=location.hash;
			
			setTimeout(function(){
	    		$(idtar).trigger("click");
				location.hash=idtar;
	    	},1000);
				
		}	
	
			$pane.serialScroll({
				items:'li',
				//prev:$prev,
				//next:$next,
				offset:-30, 
				//start:$startandgo,
				duration:900,
				force:true,
				stop:true,
				lock:false,
				lazy:true,
				constant:false,
				step:1,
				cycle:false, //don't pull back once you reach the end
				easing:'easeOutQuart', //use this easing equation for a funny effect
				jump: true, //click on the images to scroll to them,
				onAfter:function( elem ){
					
					var the_title = $(elem).find("img").attr("title");
					var the_desc = $(elem).find("img").attr("alt");
					
					//$("#title").empty().html(the_title);
					//$("#desc").empty().html(the_desc);
					location.hash = "pic"+$("ul#port > li").index(elem);
				}

	    	});
			
				    
	    $(document).keyup(function(e){
        switch( e.keyCode ){
        	case 39://right (->)
        		$pane.trigger('next');
        	break;
        	case 78://right (->)
        		$pane.trigger('next');
        	break;
        	case 37://left (<-)
        		$pane.trigger('prev');
        	break;
        	
        	case 80://left (<-)
        		$pane.trigger('prev');
        	break;
        	}
    	});
    	
    	$('body').mousewheel(function(event, delta) {
										 
			if (delta < 0){
				$pane.trigger('next');       
			}else if (delta > 0){
				$pane.trigger('prev');

			}
		});

		
		
		
		$(window).resize(function(){
 		
			$("ul#menuslider li.slide").each(function(){
			
				$(this).width($(document).width());
			
			});
			
			$(location.hash).trigger("click");
			
		});
		
		$("ul#menuslider li.slide").each(function(){
			
			$(this).width($(document).width());
		
		});
        
       
		var all = $("#navigation li a").length;
		
		$("#anext").click(function(){
		
			var idx = 1+ $("#navigation li a").index($("#navigation li a.selected"));
			if (idx>=all){
				location = $("#navigation li a:eq(0)").attr("href");
			}else{
				location = $("#navigation li a:eq("+idx+")").attr("href");
			}
		});
		
		$("#aprev").click(function(){
			
			var idx = 0 - 1 + $("#navigation li a").index($("#navigation li a.selected"));
			if (idx<0){
				location = $("#navigation li a:eq("+(all-1)+")").attr("href");
			}else{
				location = $("#navigation li a:eq("+idx+")").attr("href");
			}
		});
		
		
		$("#the_next").mouseover(function(){
			
			$(this).stop().animate({backgroundPosition:"(0 0)"},200);
			
			$(this).oneTime(900, "tscroll", function() {
    			$pane.trigger("next");
			 });
		
		}).mouseout(function(){
		
			$(this).stop().animate({backgroundPosition:"(70px 0)"});
			$(this).stopTime("tscroll");
		});
		
		$("#the_prev").mouseover(function(){
			
			$(this).stop().animate({backgroundPosition:"(0 0)"},200);
			
			$(this).oneTime(900, "tscroll", function() {
    			$pane.trigger("prev");
		 	});
		
		}).mouseout(function(){
		
			$(this).stop().animate({backgroundPosition:"(-70px 0)"});
			$(this).stopTime("tscroll");
		
		});
		
		$("#the_next").click(function(){
			$pane.trigger("next");
			$(this).stopTime("tscroll");
		});
		
		$("#the_prev").click(function(){
			$pane.trigger("prev");
			$(this).stopTime("tscroll");
		});
		
		
		$("#navigation").data("status", {op: "none"});
			
		
function mosnemenu(id,aclass){
			
			if( $("#navigation").data("status").op == aclass ){
					
					$("#navigation").hide("blind",{easing:"easeOutQuart"}, 900);
					$("#navigation").data("status", {op: "none"});
				    $("#infobox").fadeIn({easing:"easeOutQuart"}, 2000);
				    
				}else{
				
					
					if( $("#navigation").data("status").op == "none" ){
						$("#navigation").show("blind",{easing:"easeOutQuart"}, 900);
						$("#infobox").fadeOut({easing:"easeOutQuart"}, 900);
					}
					
					var t=$("#overf").find("."+aclass);
					$("#overf").scrollTo(t,900,{easing:"easeOutQuart"});
			    	$("#navigation").data("status", {op: aclass});
				}
			
			
			}
		
		$("#projects").click(function(){ mosnemenu("#projects","prj"); });
		$("#about").click(function(){ mosnemenu("#about","about"); });
		$("#contacts").click(function(){ mosnemenu("#contacts","contacts"); });
		$("#publications").click(function(){ mosnemenu("#publications","publications"); });
		
		$("#close").click(function(){
			
			$("#navigation").hide("blind",{easing:"easeOutQuart"}, 900);
			$("#navigation").data("status", {op: "none"});
			$("#infobox").fadeIn({easing:"easeOutQuart"}, 2000);
			
		});

		
		
		
		var oldhue = 360;
		var bw = $("body").width();
		var bh = $("body").height();
				
		var diagonal = Math.pow(bw,2)+Math.pow(bh,2);
	    var diag = Math.sqrt(diagonal);
		var sat = 20;
		var bright = 90;
		
		
		$(".longdesc a").each(function(){
									   
			$(this).attr({"target":"_blank"});
			
			});
	
		$('#navigation,#mainnav').mousemove(function(e){
 		
 			var cursorpos = Math.pow(e.pageX,2)+Math.pow(e.pageY,2)
			var cursorp = Math.sqrt(cursorpos);
			var hue = Math.round(((360/diag)*(cursorp))+160);
			var arry = hsbToRgb(hue, sat, bright);
			
			$("#navigation").css("background","rgb("+arry+")");
									
	  });
   	
       $("#qrcode").toggle(
      function () {
        $(this).animate({width:328,height:328, opacity:1});
      },
      function () {
       $(this).animate({width:70,height:70, opacity:.7});
      }
    );


function hsbToRgb (hue, sat, bright){
	var br = Math.round(bright / 100 * 255);
	if (hue == 0){
		return [br, br, br];
	} else {
		var huee = hue % 360;
		var f = huee % 60;
		var p = Math.round((bright * (100 - sat)) / 10000 * 255);
		var q = Math.round((bright * (6000 - sat * f)) / 600000 * 255);
		var t = Math.round((bright * (6000 - sat * (60 - f))) / 600000 * 255);
		switch(Math.floor(huee / 60)){
			case 0: return [br, t, p];
			case 1: return [q, br, p];
			case 2: return [p, br, t];
			case 3: return [p, q, br];
			case 4: return [t, p, br];
			case 5: return [br, p, q];
		}
	}
	return false;
}


		

}); //scope 