var d = document;
var offsetfromcursorY=15 // y offset of tooltip
var ie=d.all && !window.opera;
var ns6=d.getElementById && !d.all;
var tipobj,op;
 
function tooltip(el,txt) {
tipobj=d.getElementById('mess');
tipobj.innerHTML = txt;
op = 0.1;  
tipobj.style.opacity = op;
tipobj.style.visibility="visible";
el.onmousemove=positiontip;
appear();
}
 
function hide_info(el) {
d.getElementById('mess').style.visibility='hidden';
el.onmousemove='';
}
 
function ietruebody(){
return (d.compatMode && d.compatMode!="BackCompat")? d.documentElement : d.body
}
 
function positiontip(e) {
var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
var winwidth=ie? ietruebody().clientWidth : window.innerWidth-20
var winheight=ie? ietruebody().clientHeight : window.innerHeight-20
 
var rightedge=ie? winwidth-event.clientX : winwidth-e.clientX;
var bottomedge=ie? winheight-event.clientY-offsetfromcursorY : winheight-e.clientY-offsetfromcursorY;
 
if (rightedge < tipobj.offsetWidth)  tipobj.style.left=curX-tipobj.offsetWidth+"px";
else tipobj.style.left=curX+"px";
 
if (bottomedge < tipobj.offsetHeight) tipobj.style.top=curY-tipobj.offsetHeight-offsetfromcursorY+"px"
else tipobj.style.top=curY+offsetfromcursorY+"px";
}

function appear() {
if(op < 1) {
op += 0.1;
tipobj.style.opacity = op;
tipobj.style.filter = 'alpha(opacity='+op*100+')';
t = setTimeout('appear()', 30);
}
}

function getSummRange(obj, num) { 
	var summRangeV1 = 300000;
	var summRangeV2 = 5000000;
	
	switch (obj) {
		case "1":
		// Диапазон Рубли
			summRangeV1 = 300000;
			summRangeV2 = 5000000;
		break;
		case "2":
		// Диапазон Доллары
			summRangeV1 = 10000;
			summRangeV2 = 170000;
		break;
		case "3":
		// Диапазон Евро
			summRangeV1 = 7500;
			summRangeV2 = 125000;
		break;
	}
	//alert(summRangeV2);
	if (num == 1) {
		return summRangeV1;
	} else {
		return summRangeV2;
	}
}
function getSummRange2(obj, num) { 
	var summRangeV1 = 1;
	
	switch (obj) {
		case "1":
		// Диапазон Рубли
			summRangeV1 = 5000;
		break;
		case "2":
		// Диапазон Доллары
			summRangeV1 = 500;
		break;
		case "3":
		// Диапазон Евро
			summRangeV1 = 500;
		break;
	}
	return summRangeV1;
}

jQuery.validator.addMethod( 
  "summRange", 
  function(value, element) { 
  	var v1 = getSummRange(jQuery("#currency").val(), 1);
  	var v2 = getSummRange(jQuery("#currency").val(), 2);
	jQuery.validator.messages.summRange = "Укажите значение большее или равное "+v1;
	return this.optional(element) || ( value >= v1 );
  }
); 
jQuery.validator.addMethod( 
  "summRange2", 
  function(value, element) { 
  	var v1 = getSummRange2(jQuery("#currency").val(), 1);
	jQuery.validator.messages.summRange2 = "Укажите значение большее или равное " +v1;
	return this.optional(element) || ( value >= v1 );
  }
); 
jQuery.validator.addMethod( 
  "summRange3", 
  function(value, element) { 
  	var v1 = getSummRange(jQuery("#currency").val(), 1);
  	var v2 = getSummRange(jQuery("#currency").val(), 2);
	jQuery.validator.messages.summRange3 = "Укажите значение между "+v1+" и "+v2;
	return this.optional(element) || ( value >= v1 && value <= v2 );
  }
); 
jQuery.validator.addMethod( 
  "checkAdd", 
  function(value, element) { 
	var chk = (jQuery("#add1").attr('checked') == false) && (jQuery("#add2").attr('checked')==false) && (jQuery("#add3").attr('checked')==false);
	return this.optional(element) || ( !chk );
  }
  ,  "Нужно выбрать хотя бы один из пунктов"
); 
	 
jQuery(document).ready(function() {
  var options = {
    target: "#output",
	type: "POST",
    timeout: 6000 // тайм-аут
  };

  jQuery("#calc-form-1").validate({
    submitHandler: function(form) {
      // вызываем метод ajaxSubmit
      // плагина jquery.form.js
	  jQuery('#output').html('<img src="/images/calc/ajax-loader.gif" border="0">');
      jQuery(form).ajaxSubmit(options);
    },
	focusInvalid: false,
	focusCleanup: true,
							 
							 
	rules: {
	  summ: {
		required: true,
		summRange: true
	  },
	  rate: {
		required: true,
		range: [0.01,100]
	  },
	  deadline: {
		required: true,
		range: [1, 36]
	  }
	  
	},
	messages: {
      summ: {
        required: "Укажите сумму кредита"
 		//summRange: "Укажите значение между " +getSummRange($("#currency").val(), 1)+" и "+getSummRange($("#currency").val(), 2)
     },
      rate: {
        required: "Укажите годовую процентную ставку",
        range: "Укажите значение между 0,01 и 100"
      },
      deadline: {
        required: "Укажите срок кредита",
        range: "Укажите значение между 1 и 36"
      }
	},
	errorPlacement: function(error, element) {
      var er = element.attr("name");
      error.appendTo( jQuery("#er-"+er) );
    }
	
  });
  
  jQuery("#calc-form-2").validate({
    submitHandler: function(form) {
      // вызываем метод ajaxSubmit
      // плагина jquery.form.js
	  jQuery('#output').html('<img src="/images/calc/ajax-loader.gif" border="0">');
      jQuery(form).ajaxSubmit(options);
    },
	focusInvalid: false,
	focusCleanup: true,
							 
							 
	rules: {
	  summ: {
		required: true,
		summRange3: true
	  },
	  deadline: {
		required: true,
		range: [1, 36]
	  }
	  
	},
	messages: {
      summ: {
        required: "Укажите сумму кредита"
 		//summRange: "Укажите значение между " +getSummRange($("#currency").val(), 1)+" и "+getSummRange($("#currency").val(), 2)
     },
      deadline: {
        required: "Укажите срок кредита",
        range: "Укажите значение между 1 и 36"
      }
	},
	errorPlacement: function(error, element) {
      var er = element.attr("name");
      error.appendTo( jQuery("#er-"+er) );
    }
	
  });
  
  jQuery("#calc-form-3").validate({
    submitHandler: function(form) {
      // вызываем метод ajaxSubmit
      // плагина jquery.form.js
	  jQuery('#output').html('<img src="/images/calc/ajax-loader.gif" border="0">');
      jQuery(form).ajaxSubmit(options);
    },
	focusInvalid: false,
	focusCleanup: true,
							 
							 
	rules: {
	  summ: {
		required: true,
		summRange2: true
	  },
	  checkadd: {
		required: true,
		checkAdd: true
	  }
	  
	},
	messages: {
      summ: {
        required: "Укажите сумму кредита"
 		//summRange: "Укажите значение между " +getSummRange($("#currency").val(), 1)+" и "+getSummRange($("#currency").val(), 2)
     }
	},
	errorPlacement: function(error, element) {
      var er = element.attr("name");
      error.appendTo( jQuery("#er-"+er) );
    }
	
  });
  
});

