示例#1
0
 def post(self, request, *args, **kwargs):
     form = SignUpForm(request.POST)
     response = redirect('tracker:home')
     error1 = ''
     if form.is_valid():
         raw_password = form.cleaned_data.get('password1')
         email = form.cleaned_data.get('email')
         users = UserStorage.get_all_users()
         have = False
         for u in users:
             if email == u.email:
                 have = True
                 error1 = "An account with this name is already registered"
         if not have:
             user = form.save()
             user.refresh_from_db()
             user.save()
             user = authenticate(username=user.username,
                                 password=raw_password)
             login(request, user)
             UserController.reg(user.username, user.password, email)
             response.set_cookie(key='have_account', value='1')
             return response
     return render(request, 'accounts/signup.html', {
         'form': form,
         'error1': error1
     })
示例#2
0
 def reg(cls, username, password, email):
     """
     User registration with the specified data
     :param username: desired user name
     :param password: desired password
     :param email: desired e-mail
     :return:
     """
     log = logger.get_logger(UserController.log_tag)
     user = User(username, password, email)
     users = UserStorage.get_all_users()
     have = False
     for i in users:
         if i[0] == user.username:
             have = True
     if not have:
         UserStorage.add_user_to_db(user)
         return user
     else:
         log.error("User with this name is already exist")
         raise UserAlreadyExist