function ge(id){return document.getElementById(id);}
function tonum(v){var r=parseFloat(v);if(r+""=="NaN")r=0;return(r);}

function isEmail(str){var p=str.split("@");var pred=p[0];var za=p[1]==undefined?"":p[1];if(pred=="" || za=="" || p.length>2)return(0);var zaa=za.split(".");if(zaa[zaa.length-1]=="" || zaa.length<=1)return(0);if(zaa.join("").length-zaa[zaa.length-1].length==0)return(0);var povolene="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-.@";return obsahujePovolene(str,povolene);}
function isNumber(str){return isNumber(str,false);}
function isPhoneNumber(str){var cisla="+0123456789 ";return obsahujePovolene(str,cisla);}
function isNumber(str,mezery){var cisla="0123456789"+(mezery?" ":"");return obsahujePovolene(str,cisla);}
function obsahujePovolene(str,povolene){for(var i=0;i<str.length;i++){var c=str.charAt(i);if(povolene.indexOf(c)==-1)return false;}return true;}
function checkDate(strdate)
{
 var dny=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
 var parts=strdate.split(".");
 if(parts.length!=3)return false;
 var d=parts[0];
 var m=parts[1];
 var y=parts[2];
 if(y<1900)return false;
 if(y%4==0)dny[1]=dny[1]+1;
 if(m<1 || m>12)return(false);
 if(d<1 || d>dny[m-1])return(false);
 return(true);
}
