Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Video AG Infrastruktur
website
Commits
c8209fbc
Commit
c8209fbc
authored
Aug 26, 2016
by
Julian Rother
Browse files
Extended login and added login_required decorator
parent
56e1dfcb
Changes
2
Hide whitespace changes
Inline
Side-by-side
server.py
View file @
c8209fbc
#!/bin/python
from
flask
import
*
from
functools
import
wraps
import
sqlite3
import
os
import
re
...
...
@@ -109,6 +110,16 @@ def ldapget(user):
else
:
return
notldap
[
user
][
2
]
def
login_required
(
func
):
@
wraps
(
func
)
def
decorator
(
*
args
,
**
kwargs
):
if
not
'user'
in
session
:
flash
(
'Diese Funktion ist nur für Moderatoren verfügbar!'
)
return
redirect
(
url_for
(
'login'
,
ref
=
request
.
url
))
else
:
return
func
(
*
args
,
**
kwargs
)
return
decorator
@
app
.
route
(
'/'
)
def
index
():
return
render_template
(
'index.html'
,
latestvideos
=
query
(
'''
...
...
@@ -172,8 +183,10 @@ def course():
else
:
return
redirect
(
url_for
(
'index'
))
@
app
.
route
(
'/login'
,
methods
=
[
'POST'
])
@
app
.
route
(
'/login'
,
methods
=
[
'GET'
,
'POST'
])
def
login
():
if
request
.
method
==
'GET'
:
return
render_template
(
'login.html'
)
user
,
groups
=
ldapauth
(
request
.
form
.
get
(
'user'
),
request
.
form
.
get
(
'password'
))
if
user
and
'users'
in
groups
:
session
[
'user'
]
=
ldapget
(
user
)
...
...
templates/login.html
0 → 100644
View file @
c8209fbc
{% extends "base.html" %}
{% block content %}
<div
class=
"row"
>
<div
class=
"col-xs-offset-1 col-xs-10"
>
<div
class=
"panel panel-default"
>
<div
class=
"panel-heading"
>
<h1
class=
"panel-title"
>
Login für Moderatoren
</h1>
</div>
<div
class=
"panel-body"
>
<form
method=
"post"
action=
"login"
>
<input
placeholder=
"User"
name=
"user"
type=
"text"
><br>
<input
placeholder=
"Password"
name=
"password"
type=
"password"
><br>
{% if 'ref' in request.values %}
<input
type=
"hidden"
name=
"ref"
value=
"{{ request.values.ref|e }}"
>
{% endif %}
<input
type=
"submit"
value=
"Login"
>
</form>
</div>
</div>
</div>
</div>
{% endblock %}
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment