Allow members to view self profile

master
q3k 2015-01-04 20:35:46 +01:00
parent 14edc06d26
commit 4bbe9ca162
2 changed files with 25 additions and 3 deletions

View File

@ -1,6 +1,11 @@
{% extends "root.html" %}
{% if admin %}
{% set active_page = "admin" %}
{% block title %}{{member.username}}{% endblock %}
{% else %}
{% set active_page = "profile" %}
{% endif %}
{% block title %}{% if admin %}{{member.ldap_username}}{%else%}Profile{%endif%}{% endblock %}
{% block content %}
<div class="container">
<div class="row">
@ -15,10 +20,17 @@
<span class="label label-danger">Inactive</span><br/><br/>
{% endif %}
</p>
{% if admin %}
<h4>Payment Policy</h4>
{% include "button_payment_policy.html" %}
<h4>Membership Type</h4>
{% include "button_membership_type.html" %}
{% else %}
<h4>Payment Policy</h4>
<h5>{{status.payment_policy}}</h5>
<h4>Membership Type</h4>
<h5>{{status.type}}</h5>
{% endif %}
</div>
<div class="col-md-9">
<h3>Judgement Engine™</h3>

View File

@ -8,7 +8,7 @@ from email.mime.text import MIMEText
from subprocess import Popen, PIPE
from webapp import app, forms, User, db, models, mc, cache_enabled, admin_required
from flask.ext.login import login_user, login_required, logout_user
from flask.ext.login import login_user, login_required, logout_user, current_user
from flask import request, redirect, flash, render_template, url_for, abort, g
import banking
import logic
@ -35,6 +35,16 @@ def memberlist():
return render_template('memberlist.html',
active_members=cache_data)
@app.route('/profile')
@login_required
def self_profile():
member = models.Member.get_members(True).filter_by(ldap_username=current_user.username).first()
if not member:
abort(404)
status = member.get_status()
cn = directory.get_member_fields(g.ldap, member.ldap_username, 'cn')['cn']
return render_template("admin_member.html", member=member, status=status,
cn=cn, admin=False)
@app.route("/admin")
@admin_required
@ -165,7 +175,7 @@ def admin_member(username):
status = member.get_status()
cn = directory.get_member_fields(g.ldap, member.ldap_username, 'cn')['cn']
return render_template("admin_member.html", member=member, status=status,
cn=cn)
cn=cn, admin=True)
@app.route("/add/<type>/<username>")
@admin_required