Exemple #1
0
 def register(self):
     # register a new player account
     email = self.get_post('em', '')
     name = self.get_post('nm', '')
     password = self.get_post('pw', '')
     
     if len(email)<3 or not game._email_re.match(email) or not mail.is_email_valid(email):
         self.respond("0Please enter a valid e-mail address. This is important to retrieve your password if you forget it."); return
     if len(password)<5 or len(password)>15:
         self.respond("0Please enter a password of between 5 and 15 characters."); return
     if len(name)<5 or len(name)>15 or not game._name_re.match(name):
         self.respond("0Please enter a public name of between 5 and 15 characters. Only letters and numbers allowed."); return
     
     email = email.lower()
     success, info = User.create_user(auth_id='own:' + email,
                                      unique_properties=['name_lower'],
                                      password_raw=password, 
                                      email=email,
                                      name=name,
                                      name_lower=name.lower()
                                      )
     if success:
         self.respond("1"); return
     else:
         if 'auth_id' in info: # email is used as auth_id/user/login name
             self.respond('0That e-mail address is in use. Use password recovery if you forgot your password.'); return
         if 'name_lower' in info:
             self.respond('0That public name is in use, please choose another one.'); return
     
     self.respond('0')