mò ñƒCc@sædZdklZlZdklZlZlZlZl Z l Z dk l Z dk lZde fd„ƒYZde fd„ƒYZd e fd „ƒYZd e fd „ƒYZd e fd„ƒYZde fd„ƒYZdS(s$Revision: 1.1.1.1 $(sletterssdigits(sValidationFailures FieldMissingsValidationErrors DefaultFieldsSelectsInput(sUSStates(s isZipCodet StateSelectcBstZdeZRS(NtNNsNon US or Canada(RsNon US or Canada((RsNon US or Canada(t__name__t __module__tUSStatestOPTIONS(((t6/usr/home/thanos/public_html/pso-example/pso/fields.pyRstZipInputcBstZd„ZRS(NcCsdti||ƒ}|pdSnyt|ƒWn.tj o"}t|i ƒd|ƒ‚nX|S(Nts%s( tInputtvalidatetselfthandlertvaluet isZipCodet ExceptiontetValidationErrortgetName(R R RR ((RR 's(RRR (((RR&st PhoneInputcBstZd„ZRS(NcCs%ti||ƒ}|pdSndS(NR(R R R R R (R R R ((RR 2s(RRR (((RR1st EmailInputcBstZd„ZRS(NcCs…ti||ƒ}t|ƒob|idƒdjot|iƒdƒ‚n|idƒdjot|iƒdƒ‚qn|S(Nt@isinvalid e-mailt.( R R R R R tlentcountRR(R R R ((RR ;s (RRR (((RR:stUrlInputcBstZd„ZRS(NcCs[ti||ƒ}|o>dkl}y||ƒWqWt|iƒdƒ‚qWXn|S(N(surlopens invalide url( R R R R R turllibturlopenRR(R R RR ((RR Es (RRR (((RRDst UserIdInputcBs'tZdZeeZdZd„ZRS(NiicCs¶ti||ƒ}g}|D]!}||ijo ||qq~}|ot |dƒ‚nt |i ƒi dt |iƒƒƒ}t|ƒ|jot |d|ƒ‚n|S(Ns.login id must be alphnumerical [a-z, A-Z, 0-9]tsizes(login id must be %d character or longer(R R R R R t_[1]tcht VALIDCHARtvRtinttgetAttrstgettstrtSIZERR(R R RR RR!R((RR Us5'(RRR&tletterstdigitsR tREQUIREDR (((RROs N(t __version__tstringR'R(tformtValidationFailuret FieldMissingRt DefaultFieldtSelectR tisocodesRt validationRRRRRRR(R(RR'RR.RRRRR-RRR RR/R*R0((Rt?s+