function isLong(n,x,y) {
   return (n.length >= x) && (n.length <= y);
}
function isEmpty(t) {
   return (t == "");
}
function isNum(n) {
   return (n.search(/[^0-9]/) == -1);
}
function isId(t) {
   return (t.search(/[^a-z_0-9]/i) == -1);
}
function isText(t) {
   return (t.search(/[a-z0-9А-Я]/i) != -1);
}
function isEmail(t) {
   return (t.search(/.+@.+\..+/i) != -1)
}
function isFloat(t){
	return (t.search(/^\d*[.|,]{0,1}\d+$/ig) != -1);
}

function cleanNumber(c) {
  temp="";
  for (i=c.value.length-1; i>=0;i--) {
    ch = c.value.charAt(i);
    if (ch>='0' && ch<='9')
	  temp=ch + temp;
    else if (temp.length<=2 && (ch==',' || ch=='.'))
      temp="";
  }
  c.value = temp;  
  return true;
}
function cleanID(c) {
  c.value.replace(/[^0-9a-z_]/ig,"");
  return true;
}
function filterNumber(e) {
	if(e.keyCode != null) {
	    if(((e.keyCode >= 48) && (e.keyCode  < 58)) || (e.keyCode < 32) || (e.keyCode == 127)) //digits for MSIE + special symbols
	 		return e;
		else 
			return false;
	} else if (e.which != null) {
  	    if(((e.which >= 48) && (e.which  < 58)) || (e.which < 32) || (e.which == 127))    //digits for Netscape
	 		return e;
		else 
			return false;
	} else {
		return true;
	}
}
function filterID(e) {
	if(e.keyCode != null) { //MSIE
	    if( ((e.keyCode >= 48) && (e.keyCode < 58)) || //digits
			((e.keyCode >= 65) && (e.keyCode < 91)) || //capital letters
			((e.keyCode >= 97) && (e.keyCode < 123)) || //small letters
			 (e.keyCode == 95) || (e.keyCode < 32) || (e.keyCode == 127))// underscore + special symbols
	 		return e;
		else 
			return false;
	} else if (e.which != null) { //Netscape
	    if( ((e.which >= 48) && (e.which < 58)) ||  //digits 
			((e.which >= 65) && (e.which < 91)) || //capital letters
			((e.which >= 97) && (e.which < 123)) || //small letters
			 (e.which == 95) || (e.which < 32) || (e.which == 127))// underscore + special symbols
	 		return e;
		else 
			return false;
	} else {
		return true;
	}
}
function checkLogin(c) {
	if(isEmpty(c.value) || !isId(c.value)) {
       alert('Veuillez retaper correctement le login. Merci')
       c.select();
       c.focus();
       return false;
	} 
	return true;
}
function checkPassword(c) {
	if(isEmpty(c.value) || !isId(c.value)) {
       alert('Veuillez retaper correctement le mot de passe. Merci')
       c.select();
       c.focus();
       return false;
	}
	return true;
}
function checkName(c) {
	if(isEmpty(c.value) || !isText(c.value)) {
       alert('Полето Име е задължително!')
       c.select();
       c.focus();
       return false;
	} 
	return true;
}
function checkNameMsg(c, msg) {
	if(isEmpty(c.value) || !isText(c.value)) {
			 alert(msg);
       c.select();
       c.focus();
       return false;
	} 
	return true;
}


function checkFirstName(c) {
	if(isEmpty(c.value) || !isText(c.value)) {
       alert('Veuillez retaper correctement le prйnom. Merci')
       c.select();
       c.focus();
       return false;
	} 
	return true;
}
function checkMessage(c) {
	if(isEmpty(c.value) || !isText(c.value)) {
       alert('Veuillez retaper correctement le message. Merci')
       c.select();
       c.focus();
       return false;
	} 
	return true;
}
function checkEmail(c) {
	if(isEmpty(c.value) || !isEmail(c.value)) {
       alert('Please, enter valid e-mail.')
       c.select();
       c.focus();
       return false;
	}
	return true;
}
function checkPasswordMatch(c1,c2) {
	if(c1.value != c2.value) {
       alert('Veuillez retaper correctement le mot de passe. Merci')
       c2.select();
       c2.focus();
       return false;
	}
	return true;
}
function checkRNum(c,message) {
    if (isEmpty(c.value) || !isNum(c.value)) {
	    alert(message);
    	c.select();
	    c.focus();
    	return false;
	}
	return true;
}
function checkNum(c,message) {
    if (!isEmpty(c.value) && !isNum(c.value)) {
	    alert(message);
    	c.select();
	    c.focus();
    	return false;
	}
	return true;
}
function checkRT(c,message,mn,mx) {
    if (isEmpty(c.value) || !isText(c.value) || !isLong(c.value,mn,mx)) {
	    alert(message);
    	c.select();
	    c.focus();
    	return false;
	}
	return true;
}
function checkFloat(c, message) {
	if(!isEmpty(c.value) && !isFloat(c.value)) {
		alert(message);
		c.select();
		c.focus();
		return false;
	} 
	return true;
}
function checkRadio(c) {
    for (i = 0; i<c.length; i++) {
	   if (c[i].checked) return true;
	}
    alert("Моля, изберете една от възможностите!");
   	c[0].select();
    c[0].focus();
	return false;
}
function checkAccesClient(f) {
	if(!checkLogin(f.ClientID)) return false;
	if(!checkPassword(f.Password)) return false;
	return true;
}
function checkModifyAnnonces(f) {
	if(!checkLogin(f.username)) return false;
	if(!checkPassword(f.password)) return false;
	return true;
}
function checkModifyLoginAnnonces(f) {
	if(!checkLogin(f.username1)) return false;
	if(!checkPassword(f.password1)) return false;
	if(!checkPassword(f.password2)) return false;
    if(!checkPasswordMatch(f.password1,f.password2)) return false;
	return true;
}
function checkNewsletter(f) {
	if(!checkEmail(f.newsletter)) return false;
	return true;
}

function checkCombo(obj)
{
	return (isNum(obj.options[obj.selectedIndex].value));
}

function checkCombo2(obj)
{
  if (obj.options[obj.selectedIndex].value != "notselected")
   return true;
  else
   return false;
}

function checkDate(c, msg) {
	if(isEmpty(c.value) || !isValidDate(c.value)) {
       alert(msg);
       c.select();
       c.focus();
       return false;
	}
	return true;
}

function DisplayError( obj, action, txt, dis )
{
  if (dis)
  {
    if (!action)
    {
      alert(txt);
      obj.focus();
      return false;
    }
    return true;
 }
 return false;
}

function verifyDate(d, m, year)
{
 var days=0;

 if ( m > 12) return false;
 if (year.length < 4 ) return false;
 if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12) {
  days = 31;
 }
 else{
  days = 30;
 }              
 
 if (m == 2) 
  if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
   days = 29;
  else 
   days = 28;

 if ((d > 0 )&&(d > days))
  return false;
 else
  return true; 
}

function isValidDate( str )
{
  var d = new String(str), ok;
  date_string = d.split("/");
  if (date_string.length != 3){
   return false;
  }
  else{
   ok = verifyDate(date_string[1],date_string[0],date_string[2]);
  }
 return ok;
}
