Ejemplo n.º 1
0
def register(request):
    if request.method == 'GET':
        return httputils.render_html(request,'gobang/register.html', {})
    else:
        email = request.POST.get('email', default = None)
        passwd = request.POST.get('passwd', default = None)
        username = request.POST.get('username', default = None)
        validation_code = request.POST.get('validation_code', default = None)
        #check input not none
        for item in (email, passwd,username,validation_code):
            if item is None:
                return render(request, 'gobang/register.html',{'error_msg':'input has none'})
        #check validation code right
        server_validation_code = validation_cache.get(email)
        if server_validation_code is None or server_validation_code != validation_code:
            return render(request, 'gobang/register.html',{'error_msg':'validation code not right'})

        #insert db and use model to check input format right
        added_person = Person(username=username,passwd=passwd,email=email)
        try:
            added_person.save()
        except Exception as e:
            #record exception
            gobang_logger.error("insert db error, {0}".format(e))
            return render(request, 'gobang/register.html',{'error_msg':str(e)})

        #set sessions and redirect
        request.session['login'] = True
        request.session['pk'] = added_person.pk
        request.session['username'] = added_person.username
        return HttpResponseRedirect('/gobang/index')
Ejemplo n.º 2
0
def register(request):
    if request.method == 'GET':
        return httputils.render_html(request, 'gobang/register.html', {})
    else:
        email = request.POST.get('email', default=None)
        passwd = request.POST.get('passwd', default=None)
        username = request.POST.get('username', default=None)
        validation_code = request.POST.get('validation_code', default=None)
        #check input not none
        for item in (email, passwd, username, validation_code):
            if item is None:
                return render(request, 'gobang/register.html',
                              {'error_msg': 'input has none'})
        #check validation code right
        server_validation_code = validation_cache.get(email)
        if server_validation_code is None or server_validation_code != validation_code:
            return render(request, 'gobang/register.html',
                          {'error_msg': 'validation code not right'})

        #insert db and use model to check input format right
        added_person = Person(username=username, passwd=passwd, email=email)
        try:
            added_person.save()
        except Exception as e:
            #record exception
            gobang_logger.error("insert db error, {0}".format(e))
            return render(request, 'gobang/register.html',
                          {'error_msg': str(e)})

        #set sessions and redirect
        request.session['login'] = True
        request.session['pk'] = added_person.pk
        request.session['username'] = added_person.username
        return HttpResponseRedirect('/gobang/index')
Ejemplo n.º 3
0
def index(request):
    person = Person.objects.get(pk=request.session['pk'])
    online_people = list(settings.online_people)
    return httputils.render_html(request, 'gobang/index.html', {
        'person': person,
        'people': online_people
    })
Ejemplo n.º 4
0
def login(request):
    if request.method == 'POST':
        #check post data login
        username = request.POST.get("username", default = None)
        passwd = request.POST.get("passwd", default = None)
        #check parameters in
        if username is None or passwd is None:
            return Http404('parameters wrong')
        person = list(Person.objects.filter(username = username, passwd = utils.encrypt_passwd(passwd)))
        if len(person) == 0:
            #validation wrong so relogin
            return HttpResponseRedirect('/gobang/login')
        else:
            person = person[0]

        #set session
        request.session['pk'] = person.pk
        request.session['username'] = person.username
        request.session['login'] = True
        return HttpResponseRedirect('/gobang/index')
    else:
        return httputils.render_html(request,'gobang/login.html', {})
Ejemplo n.º 5
0
def login(request):
    if request.method == 'POST':
        #check post data login
        username = request.POST.get("username", default=None)
        passwd = request.POST.get("passwd", default=None)
        #check parameters in
        if username is None or passwd is None:
            return Http404('parameters wrong')
        person = list(
            Person.objects.filter(username=username,
                                  passwd=utils.encrypt_passwd(passwd)))
        if len(person) == 0:
            #validation wrong so relogin
            return HttpResponseRedirect('/gobang/login')
        else:
            person = person[0]

        #set session
        request.session['pk'] = person.pk
        request.session['username'] = person.username
        request.session['login'] = True
        return HttpResponseRedirect('/gobang/index')
    else:
        return httputils.render_html(request, 'gobang/login.html', {})
Ejemplo n.º 6
0
def index(request):
    person = Person.objects.get(pk=request.session['pk'])
    online_people = list(settings.online_people)
    return httputils.render_html(request,'gobang/index.html',{'person':person, 'people':online_people})