// Start Functie Scroll Verticala ########################

$(function() {		
		
	// initialize scrollable 
	$("div.scrollable").scrollable({
		vertical:true, 
		size: 2,
		easing: "swing",
		speed: 400
		
	// use mousewheel plugin
	}).mousewheel();

	$("div.scrollable_mic").scrollable({
		vertical:true, 
		size: 2,
		easing: "swing",
		speed: 400
		
	// use mousewheel plugin
	}).mousewheel();
	
});

// Sfarsit Functie Scroll Verticala #########################



// Start Functie Meniu ----------------------------------------------------------------

$.fn.delay = function(time, callback){
    // Empty function:
    jQuery.fx.step.delay = function(){};
    // Return meaningless animation, (will be added to queue)
    return this.animate({delay:1}, time, callback);
}

$(function(){
	$('#menu a')
		.css( {backgroundPosition: "0 0"} )
		.mouseover(function(e){
			var el = $(this);
			var position = el.offset();
			var pageCoords = "( " + e.pageX + ", " + e.pageY + " )";
			var mouse_entrance = el.width()-(e.pageX-position.left);
			var element_mid = el.width()/2;
			var eid = el.attr('id');
			if($("#menu_disposal").text().length <= 0){
				  if(mouse_entrance >= element_mid){
					mouse_direction = "R";
				  }
				  else{
					mouse_direction = "L";
				  }
				$("#menu_disposal").text(eid);
				$("#menu_mdir").text(mouse_direction);
			}
			if(oid != eid){
				if(mouse_entrance >= element_mid){
					mouse_direction = "R";
					$(this).stop().animate({backgroundPosition:"(150px 0)"}, {duration:500})
				}
				else{
					mouse_direction = "L";
					$(this).stop().animate({backgroundPosition:"(-150px 0)"}, {duration:500})
				}
			}
			var oid = $("#menu_disposal").text();
			//$("#stats").html("( e.pageX, e.pageY ) - " + pageCoords + " / element: [" + eid + "/" + oid + "] W:" + el.width() + " L:" + position.left + " / " + mouse_entrance + " - " + element_mid + " direction: " + mouse_direction);
			$("#menu_disposal").text(eid);

			$(this).delay(1, function(){
				$(this).css({
					color: "#FFFFFF"
				});
			});
		})
		.mouseout(function(){
			var el = $(this);
			var position = el.offset();
			var eid = el.attr('id');
			var oid = $("#menu_disposal").text();
			var dir = $("#menu_mdir").text();
			if(oid != eid){
				$("#menu_disposal").text(oid);
			}
			var oid = $("#menu_disposal").text();
			if(dir == "R"){
				$(this).stop().animate({backgroundPosition:"(300px 0)"}, {duration:200, complete:function(){
					$(this).css({backgroundPosition: "0 0"});
					$(this).css({color: "#93C2D0"});
				}})
			}
			else{
				$(this).stop().animate({backgroundPosition:"(-300px 0)"}, {duration:200, complete:function(){
					$(this).css({backgroundPosition: "0 0"});
					$(this).css({color: "#93C2D0"});
				}})
			}
			$("#menu_disposal").text("");
		})
});

// Sfarsit Functie Meniu ----------------------------------------------------------------


// Start Functie Carusel Orizontal xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

$(function(){
	$("div.foo").carousel({
		effect: "fade",
		pagination: true
	});
});

// Sfarsit Functie Carusel Orizontal xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx



// Start Functie Schimba continut <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

function schimba(stare, pagina){

	var valoare;

	valoare = "p_" + pagina + "_" + stare + ".php";

	$('#proiect_holder').css({display: 'block', background: '#D7EAF1 url(/images/loader.gif) 312px 212px no-repeat'});
	$('#proiect').load(valoare, function(){
		$('#proiect_holder').delay(300, function(){
			$('#proiect_holder').fadeOut("slow", function(){
				$('#proiect_holder').css({
					display: 'none',
					background: ''
				});
				$('#img1').css({
					display: 'block'
				});
				$('#img2').css({
					display: 'block'
				});
			});
		});
	});


}

// Sfarsit Functie Schimba continut <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<


document.onmousedown = function()
{
	for (a in document.links) document.links[a].onfocus = document.links[a].blur;
}

function base64_decode (data) {
    // Decodes string using MIME base64 algorithm  
    // 
    // version: 909.322
    // discuss at: http://phpjs.org/functions/base64_decode
    // +   original by: Tyler Akins (http://rumkin.com)
    // +   improved by: Thunder.m
    // +      input by: Aman Gupta
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   bugfixed by: Onno Marsman
    // +   bugfixed by: Pellentesque Malesuada
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +      input by: Brett Zamir (http://brett-zamir.me)
    // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // -    depends on: utf8_decode
    // *     example 1: base64_decode('S2V2aW4gdmFuIFpvbm5ldmVsZA==');
    // *     returns 1: 'Kevin van Zonneveld'
    // mozilla has this native
    // - but breaks in 2.0.0.12!
    //if (typeof this.window['btoa'] == 'function') {
    //    return btoa(data);
    //}

    var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    var o1, o2, o3, h1, h2, h3, h4, bits, i = 0, ac = 0, dec = "", tmp_arr = [];

    if (!data) {
        return data;
    }

    data += '';

    do {  // unpack four hexets into three octets using index points in b64
        h1 = b64.indexOf(data.charAt(i++));
        h2 = b64.indexOf(data.charAt(i++));
        h3 = b64.indexOf(data.charAt(i++));
        h4 = b64.indexOf(data.charAt(i++));

        bits = h1<<18 | h2<<12 | h3<<6 | h4;

        o1 = bits>>16 & 0xff;
        o2 = bits>>8 & 0xff;
        o3 = bits & 0xff;

        if (h3 == 64) {
            tmp_arr[ac++] = String.fromCharCode(o1);
        } else if (h4 == 64) {
            tmp_arr[ac++] = String.fromCharCode(o1, o2);
        } else {
            tmp_arr[ac++] = String.fromCharCode(o1, o2, o3);
        }
    } while (i < data.length);

    dec = tmp_arr.join('');
    dec = this.utf8_decode(dec);

    return dec;
}

function utf8_decode ( str_data ) {
    // Converts a UTF-8 encoded string to ISO-8859-1  
    // 
    // version: 909.322
    // discuss at: http://phpjs.org/functions/utf8_decode
    // +   original by: Webtoolkit.info (http://www.webtoolkit.info/)
    // +      input by: Aman Gupta
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Norman "zEh" Fuchs
    // +   bugfixed by: hitwork
    // +   bugfixed by: Onno Marsman
    // +      input by: Brett Zamir (http://brett-zamir.me)
    // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: utf8_decode('Kevin van Zonneveld');
    // *     returns 1: 'Kevin van Zonneveld'
    var tmp_arr = [], i = 0, ac = 0, c1 = 0, c2 = 0, c3 = 0;
    
    str_data += '';
    
    while ( i < str_data.length ) {
        c1 = str_data.charCodeAt(i);
        if (c1 < 128) {
            tmp_arr[ac++] = String.fromCharCode(c1);
            i++;
        } else if ((c1 > 191) && (c1 < 224)) {
            c2 = str_data.charCodeAt(i+1);
            tmp_arr[ac++] = String.fromCharCode(((c1 & 31) << 6) | (c2 & 63));
            i += 2;
        } else {
            c2 = str_data.charCodeAt(i+1);
            c3 = str_data.charCodeAt(i+2);
            tmp_arr[ac++] = String.fromCharCode(((c1 & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
            i += 3;
        }
    }

    return tmp_arr.join('');
}
