Commit ceba359f authored by Petrus J.v.Rensburg's avatar Petrus J.v.Rensburg

Make use of built-in 'current_user' template variable.

parent 0fa65bad
...@@ -87,27 +87,6 @@ def init_login(): ...@@ -87,27 +87,6 @@ def init_login():
# Create customized model view class # Create customized model view class
class MyModelView(sqla.ModelView): class MyModelView(sqla.ModelView):
# make current_user available in template
@expose('/')
def index_view(self):
self._template_args['user'] = login.current_user
return super(MyModelView, self).index_view()
@expose('/new/', methods=('GET', 'POST'))
def create_view(self):
self._template_args['user'] = login.current_user
return super(MyModelView, self).create_view()
@expose('/edit/', methods=('GET', 'POST'))
def edit_view(self):
self._template_args['user'] = login.current_user
return super(MyModelView, self).edit_view()
@expose('/delete/', methods=('POST',))
def delete_view(self):
self._template_args['user'] = login.current_user
return super(MyModelView, self).delete_view()
def is_accessible(self): def is_accessible(self):
return login.current_user.is_authenticated() return login.current_user.is_authenticated()
...@@ -119,9 +98,6 @@ class MyAdminIndexView(admin.AdminIndexView): ...@@ -119,9 +98,6 @@ class MyAdminIndexView(admin.AdminIndexView):
def index(self): def index(self):
if not login.current_user.is_authenticated(): if not login.current_user.is_authenticated():
return redirect(url_for('.login_view')) return redirect(url_for('.login_view'))
# make current_user available in template
user = login.current_user
self._template_args['user'] = user
return super(MyAdminIndexView, self).index() return super(MyAdminIndexView, self).index()
@expose('/login/', methods=('GET', 'POST')) @expose('/login/', methods=('GET', 'POST'))
...@@ -135,7 +111,6 @@ class MyAdminIndexView(admin.AdminIndexView): ...@@ -135,7 +111,6 @@ class MyAdminIndexView(admin.AdminIndexView):
if login.current_user.is_authenticated(): if login.current_user.is_authenticated():
return redirect(url_for('.index')) return redirect(url_for('.index'))
link = '<p>Don\'t have an account? <a href="' + url_for('.register_view') + '">Click here to register.</a></p>' link = '<p>Don\'t have an account? <a href="' + url_for('.register_view') + '">Click here to register.</a></p>'
self._template_args['user'] = None
self._template_args['form'] = form self._template_args['form'] = form
self._template_args['link'] = link self._template_args['link'] = link
return super(MyAdminIndexView, self).index() return super(MyAdminIndexView, self).index()
...@@ -154,7 +129,6 @@ class MyAdminIndexView(admin.AdminIndexView): ...@@ -154,7 +129,6 @@ class MyAdminIndexView(admin.AdminIndexView):
login.login_user(user) login.login_user(user)
return redirect(url_for('.index')) return redirect(url_for('.index'))
link = '<p>Already have an account? <a href="' + url_for('.login_view') + '">Click here to log in.</a></p>' link = '<p>Already have an account? <a href="' + url_for('.login_view') + '">Click here to log in.</a></p>'
self._template_args['user'] = None
self._template_args['form'] = form self._template_args['form'] = form
self._template_args['link'] = link self._template_args['link'] = link
return super(MyAdminIndexView, self).index() return super(MyAdminIndexView, self).index()
...@@ -168,7 +142,7 @@ class MyAdminIndexView(admin.AdminIndexView): ...@@ -168,7 +142,7 @@ class MyAdminIndexView(admin.AdminIndexView):
# Flask views # Flask views
@app.route('/') @app.route('/')
def index(): def index():
return render_template('index.html', user=login.current_user) return render_template('index.html')
# Initialize flask-login # Initialize flask-login
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<div class="row-fluid"> <div class="row-fluid">
<div> <div>
{% if user and user.is_authenticated() %} {% if current_user.is_authenticated() %}
<h1>Flask-Admin example</h1> <h1>Flask-Admin example</h1>
<p class="lead"> <p class="lead">
Authentication Authentication
......
{% extends 'admin/base.html' %} {% extends 'admin/base.html' %}
{% block access_control %} {% block access_control %}
{% if user %} {% if current_user.is_authenticated() %}
<div class="btn-group pull-right"> <div class="btn-group pull-right">
<a class="btn dropdown-toggle" data-toggle="dropdown" href="#"> <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
<i class="icon-user"></i> {{ user.login }} <span class="caret"></span> <i class="icon-user"></i> {{ current_user.login }} <span class="caret"></span>
</a> </a>
<ul class="dropdown-menu"> <ul class="dropdown-menu">
<li><a href="{{ url_for('admin.logout_view') }}">Log out</a></li> <li><a href="{{ url_for('admin.logout_view') }}">Log out</a></li>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment