// *** JSF Check
// *** (c) feel by fish 
// *** http://www.imagen.pl
// *** 2000.10.04
// *** GNU GPL distribution

// -> walidacja lancuchow
// na bazie wyrazen regularnych

var reWhitespace = /^\s+$/
var reInteger = /^\d+$/
var reSignedInteger = /^(\+|\-)?\d+$/
var reFloat = /^((\d+(\.\d*)?)|((\d*\.)?\d+))$/
var reSignedFloat = /^(((\+|\-)?\d+(\.\d*)?)|((\+|\-)?(\d*\.)?\d+))$/
var reAlphabetic = /^[a-zA-Z辨瓿耋都俊剖Ｑ应箿煡審]+$/
var reAlphanumeric = /^[a-zA-Z0-9辨瓿耋都俊剖Ｑ应箿煡審]+$/
var reAlphanumericNoPL = /^[a-zA-Z0-9]+$/
var rePassword = /^[a-zA-Z0-9!@#$%^&*()\[\],.;:]+$/
var reEmail = /\b(^(\S+@)([a-zA-Z0-9\-]+\.)+(com|net|edu|mil|gov|org|int|([a-zA-Z]{2}))$)\b/i
var reNazwisko = /^([a-zA-Z辨瓿耋都俊剖Ｑ应箿煡審']+[ \-]{0,1})+[a-zA-Z辨瓿耋都俊剖Ｑ应箿煡審']+$/gi
var reTelefon = /^[\(\+]{0,1}([0-9 ]+[\/\-\(\)]{0,1})+[0-9]$/
var reKod = /^\d{2}\-\d{3}$/


function isEmpty(s) {return ((s == null) || (s.length == 0))}
function isWhitespace(s) {return (isEmpty(s) || reWhitespace.test(s));}
function isInteger(s) {return reInteger.test(s);}
function isSignedInteger(s) {return reSignedInteger.test(s);}
function isFloat(s) {return reFloat.test(s);}
function isSignedFloat(s) {return reSignedFloat.test(s);}
function isAlphabetic(s) {return reAlphabetic.test(s);}
function isAlphanumeric(s) {return reAlphanumeric.test(s);}
function isAlphanumericNoPL(s) {return reAlphanumericNoPL.test(s);}
function isPassword(s) {return rePassword.test(s);}
function isEmail(s) {return reEmail.test(s);}
function isNazwisko(s) {return reNazwisko.test(s);}
function isTelefon(s) {return reTelefon.test(s);}
function isKod(s) {return reKod.test(s);}

function isChecked(obj) {
	multi = true;
	if (obj.type == 'radio' || obj.type == 'checkbox') multi = false;
	
	var checked = false;
	if (multi) {
	   	for (var i = 0; i < obj.length; i++)
	   		if (obj[i].checked) {checked = true; break}
	}
	else checked = obj.checked;
	return checked;
}

// modfish: load part
if (window.Modules!=null) {
	Modules[Modules.length] = "jsf-check";
	loadModules();
}
