[web2py] Re: Validating Registration fields

2012-03-28 Thread Anthony
On Wednesday, March 28, 2012 5:34:05 AM UTC-4, Peter G. wrote:
>
> Thank you so much! That worked like a charm :). I'm guessing this type of 
> construct is valid for other validators as well?
>

Yes, it's documented here: 
http://web2py.com/books/default/chapter/29/7#Validators
 


[web2py] Re: Validating Registration fields

2012-03-28 Thread Peter G.
Thank you so much! That worked like a charm :). I'm guessing this type of 
construct is valid for other validators as well?

On Tuesday, March 27, 2012 5:57:28 PM UTC-7, Anthony wrote:
>
> Try
>
> IS_EMPTY_OR(IS_IMAGE())
>
>
> Anthony
>
> On Tuesday, March 27, 2012 7:12:45 PM UTC-4, Peter G. wrote:
>>
>> Thanks for the code snippets Anthony--but a minor caveat I didn't realize 
>> ahead of time is that the user is free to either upload an image or not. If 
>> the user does not upload an image, the IS_IMAGE() validators barks at the 
>> user. Is there a easy way of implementing such a logic: "if a file is 
>> uploaded, check for IS_IMAGE(), otherwise ignore."?
>>
>>
>> On Thursday, March 22, 2012 3:38:01 PM UTC-7, Anthony wrote:
>>>
>>> On Thursday, March 22, 2012 6:09:25 PM UTC-4, Peter G. wrote:

 I'm using the auth.settengs.extra_fields to add an extra upload field 
 for the user to upload an avatar, how can I add an IS_IMAGE validator to 
 the upload field so that the user can't upload random files?
>>>
>>>
>>> When you define the field, you can do:
>>>
>>> Field('avatar', 'upload', requires=IS_IMAGE())
>>>
>>> or after the tables have been defined:
>>>
>>> db.auth_user.avatar.requires = IS_IMAGE()
>>>  
>>>

 Also, how would I add an IS_ALPHANUMERIC to the built in First name and 
 Last name form fields? Right now there are users registering with names 
 like "!@#$%^~" and some such...

>>>
>>> After the tables have been defined, you can do:
>>>
>>> db.auth_user.first_name.requires.append(IS_ALPHANUMERIC())
>>>
>>> That adds the validator to the existing IS_NOT_EMPTY validator.
>>>
>>> However, I wouldn't use that validator for names because it doesn't 
>>> allow valid name characters such as spaces, hyphens, and apostrophes. 
>>> Anyway, if you prevent fake names with special characters, those users will 
>>> just create fake names with alphanumeric characters, so either way you 
>>> don't have a real name.
>>>
>>> Anthony
>>>
>>

[web2py] Re: Validating Registration fields

2012-03-27 Thread Anthony
Try

IS_EMPTY_OR(IS_IMAGE())


Anthony

On Tuesday, March 27, 2012 7:12:45 PM UTC-4, Peter G. wrote:
>
> Thanks for the code snippets Anthony--but a minor caveat I didn't realize 
> ahead of time is that the user is free to either upload an image or not. If 
> the user does not upload an image, the IS_IMAGE() validators barks at the 
> user. Is there a easy way of implementing such a logic: "if a file is 
> uploaded, check for IS_IMAGE(), otherwise ignore."?
>
>
> On Thursday, March 22, 2012 3:38:01 PM UTC-7, Anthony wrote:
>>
>> On Thursday, March 22, 2012 6:09:25 PM UTC-4, Peter G. wrote:
>>>
>>> I'm using the auth.settengs.extra_fields to add an extra upload field 
>>> for the user to upload an avatar, how can I add an IS_IMAGE validator to 
>>> the upload field so that the user can't upload random files?
>>
>>
>> When you define the field, you can do:
>>
>> Field('avatar', 'upload', requires=IS_IMAGE())
>>
>> or after the tables have been defined:
>>
>> db.auth_user.avatar.requires = IS_IMAGE()
>>  
>>
>>>
>>> Also, how would I add an IS_ALPHANUMERIC to the built in First name and 
>>> Last name form fields? Right now there are users registering with names 
>>> like "!@#$%^~" and some such...
>>>
>>
>> After the tables have been defined, you can do:
>>
>> db.auth_user.first_name.requires.append(IS_ALPHANUMERIC())
>>
>> That adds the validator to the existing IS_NOT_EMPTY validator.
>>
>> However, I wouldn't use that validator for names because it doesn't allow 
>> valid name characters such as spaces, hyphens, and apostrophes. Anyway, if 
>> you prevent fake names with special characters, those users will just 
>> create fake names with alphanumeric characters, so either way you don't 
>> have a real name.
>>
>> Anthony
>>
>

[web2py] Re: Validating Registration fields

2012-03-27 Thread Peter G.
Thanks for the code snippets Anthony--but a minor caveat I didn't realize 
ahead of time is that the user is free to either upload an image or not. If 
the user does not upload an image, the IS_IMAGE() validators barks at the 
user. Is there a easy way of implementing such a logic: "if a file is 
uploaded, check for IS_IMAGE(), otherwise ignore."?


On Thursday, March 22, 2012 3:38:01 PM UTC-7, Anthony wrote:
>
> On Thursday, March 22, 2012 6:09:25 PM UTC-4, Peter G. wrote:
>>
>> I'm using the auth.settengs.extra_fields to add an extra upload field for 
>> the user to upload an avatar, how can I add an IS_IMAGE validator to the 
>> upload field so that the user can't upload random files?
>
>
> When you define the field, you can do:
>
> Field('avatar', 'upload', requires=IS_IMAGE())
>
> or after the tables have been defined:
>
> db.auth_user.avatar.requires = IS_IMAGE()
>  
>
>>
>> Also, how would I add an IS_ALPHANUMERIC to the built in First name and 
>> Last name form fields? Right now there are users registering with names 
>> like "!@#$%^~" and some such...
>>
>
> After the tables have been defined, you can do:
>
> db.auth_user.first_name.requires.append(IS_ALPHANUMERIC())
>
> That adds the validator to the existing IS_NOT_EMPTY validator.
>
> However, I wouldn't use that validator for names because it doesn't allow 
> valid name characters such as spaces, hyphens, and apostrophes. Anyway, if 
> you prevent fake names with special characters, those users will just 
> create fake names with alphanumeric characters, so either way you don't 
> have a real name.
>
> Anthony
>


[web2py] Re: Validating Registration fields

2012-03-22 Thread Anthony
On Thursday, March 22, 2012 6:09:25 PM UTC-4, Peter G. wrote:
>
> I'm using the auth.settengs.extra_fields to add an extra upload field for 
> the user to upload an avatar, how can I add an IS_IMAGE validator to the 
> upload field so that the user can't upload random files?


When you define the field, you can do:

Field('avatar', 'upload', requires=IS_IMAGE())

or after the tables have been defined:

db.auth_user.avatar.requires = IS_IMAGE()
 

>
> Also, how would I add an IS_ALPHANUMERIC to the built in First name and 
> Last name form fields? Right now there are users registering with names 
> like "!@#$%^~" and some such...
>

After the tables have been defined, you can do:

db.auth_user.first_name.requires.append(IS_ALPHANUMERIC())

That adds the validator to the existing IS_NOT_EMPTY validator.

However, I wouldn't use that validator for names because it doesn't allow 
valid name characters such as spaces, hyphens, and apostrophes. Anyway, if 
you prevent fake names with special characters, those users will just 
create fake names with alphanumeric characters, so either way you don't 
have a real name.

Anthony