﻿$(function(){
	var $state = $('#state'), $custom = $('#custom'), $overloading = $('#overloading');	
		$.History.bind(function(state){
			
			$state.text(state);

			if(state == "!"){
				$(".box").hide();
				$("[href*='#'].active").removeClass("active");
				return false;
			};
			
			
			
			if( lang == "est" ){
				
				pageTracker._trackPageview("/"+state);
	
			}
			else{
	
				pageTracker._trackPageview("/rus/"+state);
	
			}
			
			
			
			var content = $("#"+state).html();
			
			$(".holder .inline").html( content );
			$(".box").append("<a class='close'>&nbsp;</a>")
			
			$(".box, .inline").show();
			$(".sub a").removeClass("active");
			$(".sub a[href='#"+state+"']").addClass("active");
			$(".holder").jScrollPane({showArrows : true});
			
			$("form").forms();
			
			$(".box .close").click(function(){
														  
				$(".inline").empty();
				$(".box").hide();
				$(".sub a").removeClass("active");
				window.location = '#!';	
				getFlashMovieObject("my_flash").videoplay();
				
	
														  
			});
			if( state == "nimekiri"){
				$("#phone_list").jScrollPane({showArrows : false});
			};
			getFlashMovieObject("my_flash").videopause();
			
		});
	
		
	function content_loaded(){
		
		$("[href*='#']").click(function(e){

			if( location.hash == $(this).attr("href") ){
				
				e.preventDefault();
				location.hash = "!";
				getFlashMovieObject("my_flash").videoplay();
				
			};
			
		});
		if( !window.location.hash || window.location.hash == "#!"){window.location.hash = "teenuse_info";};
		
		
		$("a[href][rel='play_game']").live("click", function(){
			
			$("#videooo").show();

			
		});
		
		
	};
	
	

	
	$(".sub a").each(function(){
		var posLeft = ($(this).outerWidth() - 25)/2;
		$(this).find("span").css({
			left: posLeft
		});
		
	});
	
	var total = $("[href*='#']").size();
	var counting = 0; 
	var flag = 1;
	
	$("[href*='#']").each(function(){
		counting++;
		var id = $(this).attr("href").split("#")[1];
		var prefix = "est_data";
		
		if( lang == "rus" ){
			
			prefix = "rus_data";	
			
		};
		
		$.ajax({
			scriptCharset: "utf-8",
			cache: false,
			url: "static/"+prefix+"/"+id+".html",
			success: function( content ){
				
				
				$("body").append('<div class="hidden" id="'+id+'">'+content+'</div>');
				if( counting == total && flag == 1){
					flag = 0;
					setTimeout(content_loaded, 2000);
					
				};
			}
				 
		});
		
		
	});

	$(".sub a").click(function(ev){
		
		var hash = window.location.hash;
		
		if( $(this).attr("href") ==  hash ){
		
			$(".box").hide();
			$(this).removeClass("active");
			
			window.location = '#!';

			getFlashMovieObject("my_flash").videoplay();

			return false;
		};
		

												 
	});

});





function getFlashMovieObject(movieName){
  if (window.document[movieName]){
      return window.document[movieName];
  };
  
  if (navigator.appName.indexOf("Microsoft Internet")==-1){
    if (document.embeds && document.embeds[movieName])
      return document.embeds[movieName]; 
  }
  else{
    return document.getElementById(movieName);
  };

};

function osale_loosimises(){
	window.location.hash = "mangi_ja_voida";
};

function saada_sobrale(){
	window.location.hash = "saada_sobrale";	
};
$.fn.forms = function(){
	$(this).each(function(){
		$.forms( $(this) );
	});
};

$.forms = function( form ){
	
	form[0].reset();

	
	
	form.submit(function( ev ){
		ev.preventDefault();
		if( $.forms.check( form ) == false ){
			return;
		}
		else{
			var values = form.serialize();
			var action = form.attr("action");
			var method = form.attr("method");
			
			$.ajax({
				type: method,
				url: action,
				data: values,
				success: function(){
					
					form.hide();
					form.next(".submitted").show();	
					
				}
				
			});
		};

		
	});
	
	
	
};

$.forms.check = function( form ){
	
	form.data("flag", "0");
	
	form.find("[validate]").each(function(){
		
		var input = $(this);
		
		/*Error class lisamine nii inputile, kui tema parentile "label" */
		if( $.forms.cases( input ) == false ){
			input.addClass("error").parent(".label").addClass("error");
		}
		else{
			input.removeClass("error").parent(".label").removeClass("error");
		};
		
	});
	
	if( form.data("flag") == "1" ){return false;}
	else{ return true; }
};

$.forms.cases = function( input ){
	
	var type = input.attr("validate");
	var value = input.attr("value");
	var form = input.parents("form");
	var minimum = input.attr("minimum") || 0;
	var maximum = input.attr("maximum") || 999999999;
	
	
	/*RegeExpide tegemine, siin olev "case" PEAB vastama inputi küljes oleva validate väärtusega*/
	switch( type ){
		
		case "default" : {
			var reg_exp = '';
			break;
		}
		case "email" : {
			var reg_exp = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
			break;
		}
		case "numbers" : {
			var reg_exp = new RegExp(/^[0-9]+$/);	
			break;
		}
		case "letters" : {
			var reg_exp = new RegExp(/^[A-Z]+$/i);	
			break;
		}
		case "alphanum" : {
			var reg_exp = new RegExp(/^\w+$/i);	
			break;
		}
		
	};
	
	if(!value.match(reg_exp) ||
		value.length < minimum ||
		value.length > maximum ||
		value == input.attr("defaultValue")
	){  form.data("flag", "1"); return false;}
	else{ return true; }
	
	
};

