function ispropername(dat)
{
var data = rmspaces(dat.toLowerCase());
var isalpha ;
var isdot;
var isvowel = false;
var isspace;
var isapostrophe;
var stringlen1 = data.length;

var flag = ((ispropername.arguments.length == 1) ? true:( data.length >= ispropername.arguments[1])) && data.length > 0 && ( data.indexOf('a') > -1 || data.indexOf('e') > -1 || data.indexOf('i') > -1 || data.indexOf('o') > -1 || data.indexOf('u') > -1 || data.indexOf('y') > -1) ;

for(i=0;i<stringlen1 && flag;i++)
{ // begin loop

if (  (data.charAt(i) < "a") || (data.charAt(i) >"z") ) isalpha = false
else  isalpha = true;

if (data.charAt(i) != "'") isapostrophe = false
else isapostrophe = true;

if (data.charAt(i) != ".")  isdot= false
 else isdot = true;

if (data.charAt(i) != " ")  isspace= false
 else isspace = true;

if ( !(isalpha || isdot || isspace || isapostrophe) )    flag = false;

}; // end loop
return (flag) ;
}

function isname(dat)
{
var data = rmspaces(dat.toLowerCase());
var isalpha ;
var isdot;
var isvowel = false;
var isspace;
var stringlen1 = data.length;
var flag = ((isname.arguments.length == 1) ? true:( data.length >= isname.arguments[1])) && data.length > 0;

for(i=0;i<stringlen1 && flag;i++)
{ // begin loop

if (  (data.charAt(i) < "a") || (data.charAt(i) >"z") ) isalpha = false
else  isalpha = true;


if (data.charAt(i) != ".")  isdot= false
 else isdot = true;

if (data.charAt(i) != " ")  isspace= false
 else isspace = true;

if ( !(isalpha || isdot || isspace) )    flag = false;

}; // end loop
return (flag) ;
};



function checkfield(data)
{
var flag = false;
if (rmspaces(data) != "") flag = true;
return flag;
};

function isloginname(dat){
var data = rmspaces(dat);
var flag = ((isloginname.arguments.length == 1) ? true:( data.length >= isloginname.arguments[1])) && data.length > 0;
var islower  ;
var isupper  ;
var isno;
var isunderscore;

for(i=0;i<data.length && flag;i++)
{ // begin loop
if (  (data.charAt(i) < "a") || (data.charAt(i) >"z") ) islower = false
else  islower = true;

if (  (data.charAt(i) < "A") || (data.charAt(i) >"Z") ) isupper = false
else  isupper = true;

if ((data.charAt(i) < "0") || (data.charAt(i) >"9")) isno = false
 else isno = true;

if (data.charAt(i) != "_")  isunderscore = false
 else isunderscore = true;


if ( !( isupper || islower || isno || isunderscore ) )
    flag = false;

}; // end loop
return (flag) ;
};


function isemail(dat)
{
var data = rmspaces(dat);
var dotflag = true;

//check for @ conditions
if ( data.length == 0 || data.indexOf(':')  != -1 || data.indexOf(';')  != -1  || data.indexOf(',')  != -1 || data.indexOf('@') == -1 || data.indexOf('@') == 0 || data.indexOf('@') == data.length -1 ||data.indexOf('@')!= data.lastIndexOf('@') )  return false;
var tmp = data.indexOf('@');
if ( data.charAt(tmp - 1) == '.' || data.charAt(tmp + 1) == '.' )
 return false;

//check for . conditions
tmp = data.length  - data.lastIndexOf('.') -1 ;

if ( data.indexOf('.') == -1 ||  tmp < 2 || tmp >3 )
 return false;

tmp = 0;
var p;
var q;

while(dotflag && tmp != data.lastIndexOf('.') )
{
p = data.indexOf('.',tmp);
q = ( data.indexOf('.',(p+1)) == -1 ) ? p : data.indexOf('.',p +1);
if ( q == p+1 ) dotflag = false
else tmp = q ;
}
return  ( dotflag );
};


// this function can be used to trim any string by removing the right and left side spaces.
function rmspaces(x) {
var leftx = 0;
var rightx = x.length -1;
while ( x.charAt(leftx) == ' ') leftx++;
while ( x.charAt(rightx) == ' ') --rightx;
var q = x.substring(leftx,rightx+1);
if ( (leftx == x.length) && (rightx == -1) ) q ='';
return(q)
};

function isage(data)
{
var flag =  ( data.length  > 0 && data.length < 3) ? true:false;
for (i=0;i<data.length && flag;i++)
if ( data.charAt(i) > '9' || data.charAt(i) < '0') flag = false;
return flag;
};


function isvalidstr(dat)
{
var data = rmspaces(dat);
var isapostrophe;
var stringlen1 = data.length;
var flag = true;

for(i=0;i<stringlen1 && flag;i++)
{ // begin loop
  if (data.charAt(i) != "'") isapostrophe = false
  else isapostrophe = true;

  if ( !(isapostrophe) )    flag = false;
}; // end loop
return (flag) ;
}

// function checks if data is valid telephone no else returns false
function istel(data){
if (data == '')data = '     ';
var flag = true;
var cond1;
var cond2;
var stringlen = data.length;
for (i=0;i<stringlen && flag!= false;i++)
if( (data.charAt(i) < "0") || ( data.charAt(i) > '9') )
      if (data.charAt(i) != '-' && data.charAt(i) != '+'  && data.charAt(i) != '(' && data.charAt(i) != ')' && data.charAt(i) != ' ' )
        flag =false;
  return flag;
}

function isnotempty(data)
{
return (checkfield(data))
}

function isnumeric(data)
{
var flag = true;
if ( data == '' ) flag = false;
for (i=0;i<data.length && flag;i++)
if ( data.charAt(i) > '9' || data.charAt(i) < '0') flag = false;
return flag
}

function isdate(day,month,year) {
    var today = new Date();
    //year = ((!year) ? y2k(today.getYear()):year);
    //month = ((!month) ? today.getMonth():month-1);

    if (!day) return false
    if (!month) return false
    if (!year) return false
    var test = new Date(year,month - 1,day);
    if ( (y2k(test.getYear()) == year) &&
         (month == test.getMonth()+1) &&
         (day == test.getDate()) )
        return true;
    else
        return false

}

function isdate1(dt) {
  x = (dt+ "///").split("/");
  return isdate(x[1], x[0], x[2] );

}

function y2k(number) { return (number < 1000) ? number + 1900 : number; }


function selDefault(obj,val){
   	var len = obj.options.length;
   	for ( var cntr = 0; cntr < len; cntr++){
   		if ( obj.options[cntr].value == val ) {
   			obj.options[cntr].selected = true;
   		}
   	}
}

function radioDefault(obj,val){
   	var len = obj.length;
   	for ( var cntr = 0; cntr < len; cntr++){
   		
   		if ( obj[cntr].value == val ) {
   			
   			obj[cntr].checked = true;
   		}
   	}
}
