Ejemplo n.º 1
0
 def get_user(self):
     '''取得User,注意,不是WebUser'''
     if self.is_anonymous_user():
         return None
     if self.web_user.email:
         user = User.all().filter('email', self.web_user.email)
         if user.count() == 1:
             return user[0]
     return None
     
Ejemplo n.º 2
0
def join(request):
    if request.method == 'POST':
        form = UserRegForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            user_exist = User.all().filter('email', user.email)
            if user_exist.count():
                return render_to_response('user/join.html', {'form':form, 'error_msg':u'该email已经注册'}, context_instance=RequestContext(request))
            user.password = hashlib.sha1(user.password).hexdigest()
            user.put()
            # auto login
            response = HttpResponseRedirect('/user/join_success/')
            response.set_cookie(ymgconst.YMG_COOKIE, build_ymg_cookie(user.email, user.password))
            return response
    else:
        form = UserRegForm()
    return render_to_response('user/join.html', {'form':form}, context_instance=RequestContext(request))
Ejemplo n.º 3
0
def login(request):
    redirect_to = request.GET.get('redirect_to', None)
    if request.method == 'POST':
        form = UserLoginForm(request.POST)
        if form.is_valid():
            user = form.save(commit=False)
            exist_user = User.all().filter('email', user.email)
            if exist_user.count() == 1 and exist_user[0].password == hashlib.sha1(user.password).hexdigest():
                response = HttpResponseRedirect('/')
                redirect_to = request.POST.get('redirect_to', None)
                if redirect_to:
                    response = HttpResponseRedirect(redirect_to)
                response.set_cookie(ymgconst.YMG_COOKIE, build_ymg_cookie(exist_user[0].email, exist_user[0].password))
                return response
            else:
                return render_to_response('user/login.html', {'form':form, 'error_msg':u'错误的用户名或密码'},
                    context_instance=RequestContext(request))
    else:
        form = UserLoginForm()
    return render_to_response('user/login.html', {'form':form, 'redirect_to':redirect_to})