
function validInt(arg)
{
	return /^[-]?\d+$/.test(arg);
}

function validFloat(arg)
{
	return /^[-]?\d(\.\d+)*$/.test(arg);
}

function validBoolean(arg)
{
	return (arg==true||arg==false||arg=='true'||arg=='false'||arg==1||arg==0||arg=='1'||arg=='0');
}

function validPromoID(arg)
{
	return /^[a-zA-Z0-9]{4,30}$/.test(arg);
}

function validVersion(arg)
{
	return /^\d+(\.\d+){1,2}$/.test(arg);
}

function validHexColor(arg)
{
	return /^[a-fA-F0-9]{3}([a-fA-F0-9]{3})?$/.test(arg);
}

function validGenericAlphaString(arg)
{
	return /^[a-zA-Z]{1}\w+$/.test(arg);
}

function validVideoId(arg)
{
	return /^[0-9a-zA-Z-_]+$/.test(arg);
}

function validLoginId(arg)
{
	return /^[a-zA-Z]{1}\w{5,29}$/.test(arg);
}

function validLoginPass(arg)
{
	return /^[a-zA-Z0-9]{6,30}$/.test(arg);
}

function validAlphaName(arg)
{
	return /^\w{3,}$/.test(arg);
}

function validAlphaNameFull(arg)
{
	return /^[a-zA-Z0-9]{1}[\w ]{2,}$/.test(arg);
}

function validIdent(arg)
{
	return /^[a-zA-Z0-9]{1}[-a-zA-Z0-9_]*$/.test(arg);
}

function validNamePart(arg)
{
	return /^[a-zA-Z]+$/.test(arg);
}

function validAddressPart(arg)
{
	return /^[^""]+$/.test(arg);
}

function validCity(arg)
{
	return /^[a-zA-Z]{1}[a-zA-Z ]+$/.test(arg);
}

function validState(arg)
{
	return /^[a-zA-Z]{1}[a-zA-Z ]+$/.test(arg);
}

function validStateCode(arg)
{
	return /^[a-zA-Z]{2}$/.test(arg);
}

function validCountry(arg)
{
	return /^[a-zA-Z]{1}[a-zA-Z0-9\(\) ]+$/.test(arg);
}

function validCountryCode(arg)
{
	return /^[a-zA-Z]{2}$/.test(arg);
}

function validTelephone(arg)
{
	return /^[0-9-\(\)\+\. ]+$/.test(arg);
}

function validZip(arg)
{
	return /^[a-zA-Z0-9- ]+$/.test(arg);
}

function validUSZip(arg)
{
	return /^[0-9]{5}([- ]?[0-9]{4})?$/.test(arg);
}

function validTitle(arg)
{
	return /^.+$/i.test(arg);
}

function validText(arg)
{
	return /.{3,}/.test(arg);
}

function validTextareaInput(arg)
{
	return /[a-zA-Z]{1}.{2,}/.test(arg);
}

function validCatalog(arg)
{
	return /^[a-zA-Z0-9]+$/i.test(arg);
}

function validFormatName(arg)
{
	return /^[^£$\^\*#~\|@\{\}%]{1,30}$/i.test(arg);
}

function validFormatAbbr(arg)
{
	return /^[a-zA-Z0-9]{1,7}$/i.test(arg);
}

function validFormatCode(arg)
{
	return /^[a-zA-Z0-9]{2}$/i.test(arg);
}

function validDir(arg)
{
	return /^([-a-zA-Z0-9_]+){1}(\/[-a-zA-Z0-9_]+\/?)?$/i.test(arg);
}

function validDirName(arg)
{
	return /^[a-zA-Z0-9]{1}[-a-zA-Z0-9_]?$/i.test(arg);
}

function validOption(arg)
{
	return /^[^ ]+$/i.test(arg);
}

function validStock(arg)
{
	return /^[0-9]+$/i.test(arg);
}

function validPrice(arg)
{
	return /^[0-9]+(\.[0-9]+)*$/i.test(arg);
}

function validPercentage(arg)
{
	var x = parseInt(arg);
	if (isNaN(x) || x < 1 || x > 100){
	    return false;
	}
	return true;
	//return /^100|([1-9]{1}([0-9]{1})?)$/i.test(arg);
}

function validCouponCode(arg)
{
	return /^[a-zA-Z0-1]{5,}$/.test(arg);
}

function validCDTitle(arg)
{
	return /^[-a-zA-Z0-9_\(\)\[\] ]{1,}$/.test(arg);
}

function validIP(arg)
{
	return /^([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(\.([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])){3}$/.test(arg);
}

/*
function validFilename(arg)
{
	return /^[^<>:?*\/""]+$/i.test(arg);
}
*/

function validFilename(arg)
{
	return /^[^\O\/]+(\.(.{2,4}))?$/i.test(arg);
}

function validEmail(arg)
{
	var emailRegEx = /^((?:(?:(?:[a-zA-Z0-9][\.\-\+_]?)*)[a-zA-Z0-9])+)\@((?:(?:(?:[a-zA-Z0-9][\.\-_]?){0,62})[a-zA-Z0-9])+)\.(co(m|\.uk{1})|org|edu|gov([\.a-z]*)|mil|net(\.au)?|biz|info|name|museum|us|ca|uk\.com|be|tv|ru|de|it|fr|es|cz|pl|jp|fm|bg|cc|ws|au(\.com)?|(ac|me)\.uk){1}$/;
	return emailRegEx.test(arg);
}

function validUri(arg)
{
	var uriRegEx = /^(http(s?):\/\/{1})(www\.)?([a-zA-Z0-9]{1}[-a-zA-Z0-9]{1,62}[a-zA-Z0-9]{1}){1}(\.[a-zA-Z0-9]{1}[-a-zA-Z0-9]{1,63})*(\.(co(m|\.uk{1})|org|edu|gov([\.a-z]*)|mil|net(\.au)?|biz|info|name|museum|us|ca|uk\.com|be|tv|ru|de|it|fr|es|cz|pl|jp|fm|bg|cc|ws|se|au(\.com)?|(ac|me)\.uk)){1}(.+)*$/i;
	return uriRegEx.test(arg);
}

function validAudioFile(arg)
{
	var extensions = /\.wav|\.mp3|\.mp4/i;
	if(arg.search(extensions) == -1)
    { 
        return false;
	}
	return true;
}

function validWavFile(arg)
{
	var extensions = /\.wav/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validFlacFile(arg)
{
	var extensions = /\.flac/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validMp3File(arg)
{
	var extensions = /\.mp3/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validMp4File(arg)
{
	var extensions = /\.mp4/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validImageFile(arg)
{
	var extensions = /\.gif|\.jpg|\.png/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validTextFile(arg)
{
	var extensions = /\.txt/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validWordFile(arg)
{
	var extensions = /\.doc/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validPdfFile(arg)
{
	var extensions = /\.pdf/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validXmlFile(arg)
{
	var extensions = /\.xml/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validRarFile(arg)
{
	var extensions = /\.rar/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validZipFile(arg)
{
	var extensions = /\.zip/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

function validDocumentFile(arg)
{
	var extensions = /\.doc|\.txt|\.pdf|\.xml/i;
	if(arg.search(extensions) == -1)
    {
        return false;
	}
	return true;
}

