$(document).ready(function(){

  if (/MSIE 6/i.test(navigator.userAgent) || /MSIE 7/i.test(navigator.userAgent)) {
    $("hr").remove();
  }
  if (/MSIE 6/i.test(navigator.userAgent) == false) {
    Cufon.replace("#menu a", {hover: true});
    Cufon.replace(".alasivu h2");
  }
  
  $("ul").each(function(){
    $(this).find("li").last().addClass("last");
    $(this).find("li").first().addClass("first");
  });
  
  $("tr").each(function(){
    if ( $(this).find("td").size() > 1 ) {
      $(this).find("td").last().addClass("last");
    }
    $(this).find("td").first().addClass("first");
  });
  
  $(".kuvagalleria .gallery-img:nth-child(6n)").addClass("last");
  $(".fancy").fancybox({titleShow: false});
  
  //inputdefaultin alustus
  $(".text, textarea").inputDefault();
  
  //lomakkeen validointi palautteelle
  $("#palaute_form").validate({
    rules: {
      pnimi: "required",
      ppuhelin: "required",
      pemail: "required",
      pviesti: "required"
    },
    success: "valid",
    submitHandler: function(form){
      $(form).ajaxSubmit({
        success: function() 
		{
          $(form).slideUp();  
		  if (window.location.href.indexOf("en/") > 0) 
			{
				$(form).html("<h4>Thank you!</h4><p>Your feedback was received succesfully.</p>");
			} 
		  else 
			{
				$(form).html("<h4>Kiitos palautteestanne!</h4><p>Viesti vastaanotettiin onnistuneesti.</p>");
			}   
          $(form).slideDown();
        }
      });
    }
  });
  
  
  
  
  
  
  /* //lomakkeen validointi tarjouspyynnölle 
  $("#tp").validate({
 
    rules: {
      lahto: "required",
      kohde: "required",
      //tyyppi: "required",
      korkeus: "required",
	  leveys: "required",
      paino: "required",
      masto: "required",
      nimi: "required",
      puhelin: "required",
      email: "required"
    },
    success: "valid",
    submitHandler: function(form){
      $(form).ajaxSubmit({
        success: function() {
          $(form).slideUp();
          $(form).html("<h4>Kiitos tarjouspyynn&ouml;st&auml;nne!</h4><p>Viesti vastaanotettiin onnistuneesti.</p>");
          $(form).slideDown();
        }
      });
    }
  });
   */
  //console.log(window.location.href.indexOf("eng"));
  var formVals = [];
  if (window.location.href.indexOf("en/") > 0) 
  {
    var errorMsg = '<span class="errormsg">This field is mandatory</span>';
	var successMsg = '<h4>Thank you!</h4><p>Your quotation request was received succesfully.</p>';
  } 
  
  else 
  {
	var errorMsg = '<span class="errormsg">Tämä kenttä on pakollinen</span>';
	var successMsg = '<h4>Kiitos tarjouspyynnöstänne!</h4><p>Viesti vastaanotettiin onnistuneesti.</p>';
  }
  
  $("#tp").each(function(e){
    formVals.push(e);
    formVals[e] = [];
    $(this).find(".mandatory").each(function(){
      formVals[e].push($(this).attr("value"));
    });
    //console.log(formVals[e]);
    $(this).submit(function() {
        var _thisF = $(this);
        //console.log($(this).closest(".form_container"));
        var formOk = 0;
        var okLength = 0;
        $(this).find(".error").removeClass("error");
        $(this).find(".errormsg").remove();
        $(this).find(".mandatory").each(function(i){
          if (!$(this).hasClass("text")) {
            
          } else { // text
            oldval = $(this).attr("value");
            okLength++;
            if ($(this).attr("value") != "" && $(this).attr("value") != formVals[e][i]) {
              formOk++;
            } else {
              $(this).closest(".field_wrapper").addClass("error");
              $(this).closest(".field_wrapper").append(errorMsg);
            }
            $(this).change(function(){
              if ($(this).attr("value") != "" && $(this).attr("value") != formVals[e][i]) {
                $(this).closest(".field_wrapper").addClass("ok");
                $(this).closest(".field_wrapper").removeClass("error");
                $(this).closest(".field_wrapper").find(".errormsg").remove();
              }
            });
          }
        });
        if (formOk == okLength) {
          $.ajax({
            type: "POST",
            url: $(this).attr("action"),
            data: $(this).serialize(),
            success: function(msg){
                _thisF.closest(".form_container").slideUp(300, function(){
                $(this).closest(".form_container").html(successMsg);
                $(this).closest(".form_container").slideDown(300);
              });
            }
          });
        }         
      return false;
    });
  });

  
  
//slider
  var pos = 0;
  $("#counter .total").html($("#slider img").size()); 
  function updateCounter() {
    $("#counter .current").html(pos+1);
  }
  updateCounter();
  $("#slider .next").click(function(){
    pos++;
    if (pos > 13) pos = 0;
    updateCounter();
    $("#slider #inner").stop(true,true).animate({
      marginLeft: -(pos * 420)
    });
  });
  $("#slider .prev").click(function(){
    pos--;
    if (pos < 0) pos = 13;
    updateCounter();
    $("#slider #inner").stop(true,true).animate({
      marginLeft: -(pos * 420)
    });
  });
  
  
  //preloader
  $.fn.preloader = function(opt) {
  	var def = {
  	  delay:200,
  	  parent:"a",
  	  checkTimer: 300,
  	  ondone: function() {},
  	  oneachload: function(image) {},
  	  fadeDur: 500
  	}
  	//variables
  	var opt = $.extend(def,opt),
  			root = $(this),
  			images = root.find("img").css({visibility: "hidden", opacity: 0}),
  			timer,
  			counter,
  			i = 0,
  			checkFlag = [],
  			delaySum = opt.delay,
  			init = function(){
  				timer = setInterval(function(){
  					if (counter >= checkFlag.length) {
  						clearInterval(timer);
  						opt.ondone();
  						return;
  					}
  					
  					for (i=0; i < images.length; i++) {
  					  if (images[i].complete == true) {
  					    if (checkFlag[i] == false) {
  					      checkFlag[i] = true;
  					      opt.oneachload(images[i]);
  					      counter++;
  					      delaySum = delaySum + opt.delay;
  					    }
  					    
  					    $(images[i]).css({visibility: "visible"}).delay(delaySum).animate({
  					      opacity: 1
  					    },opt.fadeDur, function() {
  					      $(this).parent().removeClass("preloader");
  					    });
  					  }
  					}
  				},opt.checkTimer);
  			}
  	
  	images.each(function(){
  		var $this = $(this);
  		if ($this.parent(opt.parent).length==0) {
  			$this.wrap("<a> class='preloader' />");
  		} else {
  			$this.parent().addClass("preloader");
  		}
  		
  		checkFlag[i++] = false;
  	});
  	
  	images = $.makeArray(images);
  	
  	var icon = jQuery("<img />", {
  	  id: 'loadingicon',
  	  src: '../images/35.gif'
  	}).hide().appendTo("body");
  	
  	timer = setInterval(function(){
  		if (icon[0].complete == true) {
				clearInterval(timer);
				init();
				icon.remove;
				return;  		
  		}
  	},100);

  }
  
  $("div.kuvagalleria").preloader({
    fadeDur:200,
    delay: 50,
    checkTimer: 200
  });
  
  $("div.kuvagalleria-mob").preloader({
    fadeDur:200,
    delay: 50,
    checkTimer: 200,
    parent: "span"
  });
  
});
