Merge branch 'hohoTT-dev' into virusdefender-dev

* hohoTT-dev:
  实现根据用户登录状态的来确定首页页面跳转问题
  首页增加登录选项,之后实现页面之间的跳转问题
This commit is contained in:
virusdefender 2015-09-14 11:00:31 +08:00
commit c1da65283c
3 changed files with 50 additions and 3 deletions

View File

@ -36,11 +36,24 @@ class UserLoginAPIView(APIView):
else:
return serializer_invalid_response(serializer)
@login_required
def logout(request):
auth.logout(request)
return http.HttpResponseRedirect("/")
def page_jump(request):
if not request.user.is_authenticated():
return render(request, "oj/index.html")
try:
if request.META['HTTP_REFERER']:
return render(request, "oj/index.html")
except KeyError:
return http.HttpResponseRedirect('/problems/')
class UserRegisterAPIView(APIView):
def post(self, request):
"""

View File

@ -26,7 +26,7 @@ from contest_submission.views import contest_problem_my_submissions_list_page
urlpatterns = [
url(r'^install/$', "install.views.install"),
url("^$", TemplateView.as_view(template_name="oj/index.html"), name="index_page"),
url("^$", "account.views.page_jump", name="page_jump_api"),
url(r'^docs/', include('rest_framework_swagger.urls')),
url(r'^admin/$', TemplateView.as_view(template_name="admin/admin.html"), name="admin_spa_page"),
url(r'^admin/contest/$', TemplateView.as_view(template_name="admin/contest/add_contest.html"),

View File

@ -29,6 +29,36 @@
padding: 20px 20px 0 20px;
}
#login {
float: right;
position: relative;
height: 30px;
line-height: 64px;
margin-right: 30px;
z-index: 10;
margin-top: 4px;
}
.login-zone .button:first-child {
margin-right: 5px;
}
.button {
display: inline-block;
padding: 0 2em;
text-transform: none;
line-height: 2em;
height: 2em;
border-radius: 2em;
border: 1px solid #FFF;
outline: 0;
cursor: pointer;
}
.button:first-child {
margin-right: 5px;
}
#name {
font-size: 45px;
margin-right: 20px;
@ -86,8 +116,6 @@
loopBottom: true
});
});
</script>
</head>
@ -100,6 +128,12 @@
<a href="/groups/">小组</a>&nbsp;&nbsp;
<a href="/about/">关于</a>
{% if not request.user.is_authenticated %}
<div id="login">
<a href="/login/" class="login button">登录</a>
<a href="/register/" class="register button">注册</a>
</div>
{% endif %}
</div>