function findObj(n, d)
{
  var p,i,x;
  if(!d) d=document;
  if((p=n.indexOf("?"))>0&&parent.frames.length)
  {
	d=parent.frames[n.substring(p+1)].document;
	n=n.substring(0,p);
  }
  if(!(x=d[n]) && d.all)
	x=d.all[n];
  for (i=0;!x&&i<d.forms.length;i++)
	x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++)
	x=findObj(n,d.layers[i].document);
  if(!x && d.getElementById)
	x=d.getElementById(n);
  return x;
}

function isValidAlphaNum(text)
{
	var i;

	for(i=0;i<text.length;i++)
	{
	ch=text.substr(i,1);
	if (!((ch>="a" && ch<="z") || (ch>="A" && ch<="Z") || (ch>="0" && ch<="9") || ch=="-" || ch=="_" || ch=="." || ch==" " || (ch>="À" && ch<="ý")))
	{
		return false;
	}
	}
	return true;
}



function isValidGeneral(text)
{
    var i;

    for(i=0;i<text.length;i++)
    {
	ch=text.substr(i,1);
	if (!((ch>="a" && ch<="z") || (ch>="A" && ch<="Z") || (ch>="0" && ch<="9") || ch=="?" || ch=="-" || ch=="_" || ch=="." || ch=="," || ch==" " || ch=="@" || ch=="!" || ch=="*" || ch=='$' || ch=='#' || ch=='&' || ch=='/' || ch=="æ" || ch=="Æ" || ch=="ø" || ch=="Ø" || ch=="å" || ch=="Å"))
	{
	    return false;
	}
    }
    return true;
}

function isValidAlphaNumSpec(text)
{
    var i;

    for(i=0;i<text.length;i++)
    {
	ch=text.substr(i,1);
	if (!((ch>="a" && ch<="z") || (ch>="A" && ch<="Z") || (ch>="0" && ch<="9") || ch=="-" || ch=="_" || ch=="." || ch==" " || ch=="æ" || ch=="Æ" || ch=="ø" || ch=="Ø" || ch=="å" || ch=="Å"))
	{
	    return false;
	}
    }
    return true;
}

function isValidEmail(str)
{
  // are regular expressions supported?
  var supported = 0;
  if (window.RegExp)
  {
    var tempStr = "a";
    var tempReg = new RegExp(tempStr);
    if (tempReg.test(tempStr)) supported = 1;
  }
  if (!supported)
    return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
  var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
 return (!r1.test(str) && r2.test(str));
}

function isValidNum(text)
{
    var i;
    for(i=0;i<text.length;i++)
    {
	ch=text.substr(i,1);
	if (!((ch>="0" && ch<="9") || ch=="-" || ch=="_" || ch=="." || ch==" "))
	{
	    return false;
	}
    }

    return true;
}
