/* author: Mingo Twingou */
/* Creation date: 02/12/2002 */

var reWhitespace = /^\s+$/
//var reEmail = /^.+\@.+\..+$/
var reInteger = /^\d+$/

function isEmpty(s)
{   return ((s == null) || (s.length == 0))
}

// Returns true if string s is empty or 
// whitespace characters only.

/*
function isEmail (s){   
   if (isEmpty(s)) 
       return false;  
    else {
       return reEmail.test(s)
    }
}*/


function isEmail(sValue) {
 sCharactersTmp = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_"
 sTopDomains =  ".ad.ae.af.ag.ai.al.am.an.ao.aq.ar.arpa.arts.as.at.au.aw.az.ba.bb.bd.be"
 sTopDomains += ".bf.bg.bh.bi.bj.bm.bn.bo.br.bs.bt.bv.bw.by.bz.ca.cc.cd.cf.cg.ch.ci.ck.cl"
 sTopDomains += ".cm.cn.co.com.cr.cu.cv.cy.cx.cz.de.dj.dm.do.dk.dz.ec.edu.ee.eg.eh.er.es"
 sTopDomains += ".et.eu.fi.firm.fk.fm.fo.fr.fx.ga.gb.gd.ge.gf.gg.gh.gi.gl.gm.gn.gov.gp.gq"
 sTopDomains += ".gr.gs.gt.gu.gy.gw.hm.hn.hk.hr.ht.hu.id.ie.il.im.in.info.int.io.iq.ir.is"
 sTopDomains += ".it.je.jm.jo.jp.ke.kg.ki.km.kn.kp.kr.ky.kw.kz.la.lb.lc.li.lk.lr.ls.lt.lu"
 sTopDomains += ".lv.ly.ma.mc.md.mh.mg.mil.mk.ml.mm.mn.mo.mp.mq.mr.ms.mt.mu.mv.mw.mx.my.mz"
 sTopDomains += ".na.nc.ne.net.nf.ng.ni.nl.no.nom.np.nr.nu.nz.om.org.pa.pe.pf.pg.ph.pk.pl"
 sTopDomains += ".pm.pn.pr.pt.pw.py.qa.re.rec.ro.ru.rw.sa.sb.sc.sd.se.sg.sh.shop.si.sj.sk"
 sTopDomains += ".sl.sm.sn.so.sr.st.store.su.sv.sy.sz.tc.td.tf.tg.th.tj.tk.tm.tn.to.tp"
 sTopDomains += ".tr.tt.tv.tw.ua.ug.us.uk.um.uy.uz.va.vc.ve.vg.vi.vn.vu.web.wf.ws.ye.yt.yu"
 sTopDomains += ".za.zm.zr.zw."
 
 iTmp = -1
 do {
   iPointPos = iTmp
   iTmp = sValue.indexOf("." , iTmp+1)
 } while (iTmp != -1)
 iAtPos = sValue.indexOf("@")

 sDomain = sValue.substr(iPointPos).toLowerCase() + "."
 if (sTopDomains.indexOf(sDomain) == -1) return false

 if (iPointPos == -1 || iAtPos == -1 || iPointPos < iAtPos) return false
 sValue = sValue.substr(0 , iAtPos) + "." + sValue.substr(iAtPos + 1)
 aValueTmp = sValue.split(".")
 for (sTmp in aValueTmp) {
   if (aValueTmp[sTmp]=="") return false
   for (iTmp=0; iTmp<=aValueTmp[sTmp].length; iTmp++) {
     if (sCharactersTmp.indexOf(aValueTmp[sTmp].charAt(iTmp)) == -1) return false
   }
 }
 return true
}

function isInteger (s){   
if (!isEmpty(s)) 
    return reInteger.test(s)
else
	return (false)
}

function isPhoneNumber (s) {   
if (!isEmpty(s)) 
	return (isInteger(s) && s.length == 9) //digitsInPhoneNumber
else
	return(false)
}

function isCodiPostal (s) {   
if (!isEmpty(s)) 
	return (isInteger(s) && s.length == 5) 
else
	return(false)
}
function isWhitespace (s){   // Is s empty?
    return (isEmpty(s) || reWhitespace.test(s));
}


function chgAction(form,nova_action){
form.action = nova_action
form.submit()
}

