# -*- coding: utf-8 -*-

from fungiform.forms import FormBase, TextField, DateField, \
ChoiceField, PasswordField, ValidationError

class UserData(FormBase):

    def is_valid_name(self,value):
        if value in ['admin','superuser']:
            message = u'unerlaubter Benutzername'
            raise ValidationError(message)

    name = TextField(label=u'Name', required=True, 
        validators=[is_valid_name])
    birthday = DateField(label=u'Geburtsdatum')
    gender = ChoiceField(label=u'Geschlecht',
        choices=[u'männlich',u'weiblich'])

   
class LoginForm(FormBase):

    def is_valid_email(self,value):
        if '@' not in value:
            message = u'ungültige E-Mail Adresse'
            raise ValidationError()
            
    email = TextField(label=u'Email', required=True,
        min_length=6, max_length=120)
    pass1 = PasswordField(label='Passwort', required=True)
    pass2 = PasswordField(label='Wiederholung', required=True)
            
    def context_validate(self, data):
        if data['pass1'] != data['pass2']:
            message = u'Passwörter stimmen nicht überein'
            raise ValidationError(message)

