You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
			
		
		
		
		
			
		
			
				
					
					
						
							42 lines
						
					
					
						
							1.0 KiB
						
					
					
				
			
		
		
	
	
							42 lines
						
					
					
						
							1.0 KiB
						
					
					
				| import colander | |
| import deform | |
| 
 | |
| 
 | |
| from . import CSRFSchema | |
| from .helpers import ( | |
|     deferred_unique_email_validator, | |
|     deferred_unique_username_validator, | |
|     ) | |
| 
 | |
| 
 | |
| # schema for user registration | |
| 
 | |
| class RegistrationSchema(CSRFSchema): | |
|     ''' new user registration ''' | |
| 
 | |
|     username = colander.SchemaNode( | |
|         colander.String(), | |
|         widget=deform.widget.TextInputWidget( | |
|             readonly=True | |
|             ), | |
|         description='automagically generated for you', | |
|         validator=deferred_unique_username_validator,  | |
|         oid='registration_username' | |
|         ) | |
|     first_name = colander.SchemaNode( | |
|         colander.String(),  | |
|         oid='registration_first_name' | |
|         ) | |
|     last_name = colander.SchemaNode( | |
|         colander.String(),  | |
|         oid='registration_last_name' | |
|         ) | |
|     email = colander.SchemaNode( | |
|         colander.String(), | |
|         validator=deferred_unique_email_validator | |
|         ) | |
|     password = colander.SchemaNode( | |
|         colander.String(), | |
|         widget=deform.widget.CheckedPasswordWidget() | |
|         ) | |
| 
 | |
| 
 |