Thank you. I will add an alterEgo entry.
On Nov 30, 4:44 pm, Fran <[EMAIL PROTECTED]> wrote:
> I have a need to validate Geographic Coordinates.
> I've therefore added 2 new validators based on the existing
> IS_FLOAT_IN_RANGE.
> Makes it just a little easier when coding & provides a nicer error
> message to users.
> Of any interest to others? (I'd love to see this added by default to
> make my apps portable & save me re-hacking it in to my copy)
>
> F
>
> Procedure:
> * add code below to gluon/validators.py
> * add these functions to __all__ in the same file
> * delete validators.pyc
> * close web2py & start it up again
>
> class IS_LAT(object):
> """
> example:
>
> INPUT(_type='text',_name='name',requires=IS_LAT())
>
> latitude has to be in degrees between -90 & 90
> """
> def __init__(self, error_message='Latitude/Northing should be
> between -90 & 90!'):
> self.minimum=-90
> self.maximum=90
> self.error_message = error_message
> def __call__(self, value):
> try:
> value = float(value)
> if self.minimum <= value <= self.maximum: return (value,
> None)
> except ValueError: pass
> return (value, self.error_message)
>
> class IS_LON(object):
> """
> example:
>
> INPUT(_type='text',_name='name',requires=IS_LON())
>
> longitude has to be in degrees between -180 & 180
> """
> def __init__(self, error_message='Longitude/Easting should be
> between -180 & 180!'):
> self.minimum=-180
> self.maximum=180
> self.error_message = error_message
> def __call__(self, value):
> try:
> value = float(value)
> if self.minimum <= value <= self.maximum: return (value,
> None)
> except ValueError: pass
> return (value, self.error_message)
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"web2py Web Framework" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---