/*
  JS useful key tools
	  Ladislav Capka lcapka@gmail.com
*/
function strpos(a,b,c){var i=(a+'').indexOf(b,c);return i===-1?false:i}function getkey(e){if(window.event)return window.event.keyCode;else if(e.which)return e.which;return undefined}function RealOnly(e,o,a){var k=getkey(e);if(k!=undefined){var c=String.fromCharCode(k);if(a==undefined)var r=/\d/;else var r=/[\d-]/;if(o!==undefined){var s=/^[-]?\d*$/;if((k==46)||(k==44))return s.test(o.value)}return r.test(c)||(k==8)||(k==27)||(k==13)||(e.ctrlKey&&((k==99)||(k==67)||(k==118)||(k==86)))}else return true}function RealOnlyValid(e,a){if(e===undefined)return;if(a==undefined)var r=/^\d*$/,s=/^\d+[,\.]\d+$/;else var r=/^[-]?\d*$/,s=/^[-]?\d+[,\.]\d+$/;e.valid=r.test(e.value)||s.test(e.value);if(e.onvalid)e.onvalid(e)}function NumOnly(e,a){var k=getkey(e);if(k!=undefined){var c=String.fromCharCode(k);if(a==undefined)var r=/\d/;else var r=/[\d-]/;return r.test(c)||(k==8)||(k==27)||(k==13)||(e.ctrlKey&&((k==99)||(k==67)||(k==118)||(k==86)))}else return true}function NumOnlyValid(e,a){if(e===undefined)return;if(a==undefined)var r=/^\d*$/;else var r=/^[-]?\d*$/;e.valid=r.test(e.value);if(e.onvalid)e.onvalid(e)}function TimeOnly(e){var k;if(window.event)k=window.event.keyCode;else if(e.which)k=e.which;if(k!=undefined){var c=String.fromCharCode(k);var r=/[\d:,\.]/;return r.test(c)||(k==8)||(k==27)||(k==13)||(e.ctrlKey&&((k==99)||(k==67)||(k==118)||(k==86)))}else return true}function TimeOnlyValid(i){if(i===undefined)return;if(i.value===undefined)return;var v=true,s=i.value;if(s.length>0){s=s.replace(/[,\.]/,':');i.value=s;var a=/^(\d\d?):(\d\d)$/;v=a.test(s);if(v){h=s.replace(a,"$1");m=s.replace(a,"$2");v=(h<=24)&&(h>=0)&&(m>=0)&&(m<=59);if(h==24)v&=(m==0)}}i.valid=v;if(i.onvalid)i.onvalid(i)}