Skip to content
Snippets Groups Projects
Commit 388e0433 authored by Stephan Porada's avatar Stephan Porada :speech_balloon:
Browse files

Add searchable User table.

parent 14b64f86
No related branches found
No related tags found
No related merge requests found
......@@ -60,6 +60,7 @@ def dashboard():
def for_admins_only():
users = User.query.order_by(User.username).all()
items = [AdminUserItem(u.username, u.email, u.role_id, u.confirmed) for u in users]
table = AdminUserTable(items)
table = AdminUserTable(items).__html__() # converts table object to html string
table = table.replace('tbody', 'tbody class="list"', 1) # add class list to tbody element. Needed by list.js
return render_template('main/admin.html.j2', title='Administration tools',
table=table.__html__())
table=table)
......@@ -6,10 +6,10 @@ class AdminUserTable(Table):
Declares the table describing colum by column.
"""
classes = ['highlight', 'responsive-table']
username = Col('Username')
email = Col('Email')
role_id = Col('Role')
confirmed = Col('Confrimed Status')
username = Col('Username', column_html_attrs={'class': 'username'})
email = Col('Email', column_html_attrs={'class': 'email'})
role_id = Col('Role', column_html_attrs={'class': 'role'})
confirmed = Col('Confrimed Status', column_html_attrs={'class': 'confirmed'})
class AdminUserItem(object):
......
......@@ -5,8 +5,24 @@
<div class="card large">
<div class="card-content">
<span class="card-title">User list</span>
{{ table }}
<div id="users">
<div class="input-field">
<i class="material-icons prefix">search</i>
<input id="search-corpus" class="search" type="text"></input>
<label for="search-corpus">Search users</label>
</div>
{{ table }}
<ul class="pagination"></ul>
</div>
</div>
</div>
</div>
<script type="text/javascript">
var options = {
valueNames: ['username', 'email', 'role', 'confirmed'],
page: 3,
pagination: true
};
var userList = new List('users', options);
</script>
{% endblock %}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment