fixed defunct forwarding feature
This commit is contained in:
parent
c72a2d3ff5
commit
c30c50ec37
11
app.py
11
app.py
|
@ -109,10 +109,10 @@ def get_domains():
|
||||||
return [ user['domain'] for user in users ]
|
return [ user['domain'] for user in users ]
|
||||||
|
|
||||||
# get forwarding alias for user
|
# get forwarding alias for user
|
||||||
def get_forward(username):
|
def get_forwards(username):
|
||||||
a = requests.get(miab_url + "/mail/aliases?format=json", auth=(miab_admin, miab_passwd))
|
a = requests.get(miab_url + "/mail/aliases?format=json", auth=(miab_admin, miab_passwd))
|
||||||
aliases = a.json()
|
aliases = a.json()
|
||||||
return [alias['forwards_to'][0][0] for domains in aliases for alias in domains['aliases'] if alias['address'] == username]
|
return [ alias['forwards_to'][0] for domains in aliases for alias in domains['aliases'] if alias['address'] == username ]
|
||||||
|
|
||||||
# routing
|
# routing
|
||||||
|
|
||||||
|
@ -123,7 +123,7 @@ def home():
|
||||||
message = request.get_cookie(cookie_name + "_message", secret=cookie_secret)
|
message = request.get_cookie(cookie_name + "_message", secret=cookie_secret)
|
||||||
if username:
|
if username:
|
||||||
aliases = get_aliases(username)
|
aliases = get_aliases(username)
|
||||||
forward = get_forward(username)
|
forward = get_forwards(username)
|
||||||
# render homepage
|
# render homepage
|
||||||
return template('default', username=username, app_name=app_name, message=message, aliases=aliases, max_aliases=max_aliases, forward=forward)
|
return template('default', username=username, app_name=app_name, message=message, aliases=aliases, max_aliases=max_aliases, forward=forward)
|
||||||
else:
|
else:
|
||||||
|
@ -263,7 +263,7 @@ def add_forward():
|
||||||
username = logged_in()
|
username = logged_in()
|
||||||
forward = request.forms.get('forward')
|
forward = request.forms.get('forward')
|
||||||
if username:
|
if username:
|
||||||
if get_forward(username):
|
if get_forwards(username):
|
||||||
message = { "message": "Email forwarding is already configured", "alert": "danger" }
|
message = { "message": "Email forwarding is already configured", "alert": "danger" }
|
||||||
response.set_cookie(cookie_name + "_message", message, secret=cookie_secret, max_age=5, path="/")
|
response.set_cookie(cookie_name + "_message", message, secret=cookie_secret, max_age=5, path="/")
|
||||||
redirect('/')
|
redirect('/')
|
||||||
|
@ -287,8 +287,7 @@ def delete_forward():
|
||||||
username = logged_in()
|
username = logged_in()
|
||||||
forward = request.forms.get('forward')
|
forward = request.forms.get('forward')
|
||||||
if username:
|
if username:
|
||||||
forwarded = get_forward(username)
|
if forward == get_forwards(username)[0]:
|
||||||
if forward == forwarded:
|
|
||||||
data = { "address": username, }
|
data = { "address": username, }
|
||||||
d = requests.post(miab_url + "/mail/aliases/remove", data=data, auth=(miab_admin, miab_passwd))
|
d = requests.post(miab_url + "/mail/aliases/remove", data=data, auth=(miab_admin, miab_passwd))
|
||||||
if d.status_code == 200:
|
if d.status_code == 200:
|
||||||
|
|
|
@ -95,8 +95,8 @@
|
||||||
%if forward:
|
%if forward:
|
||||||
<form class="form-inline" action="/forward/delete" method="post">
|
<form class="form-inline" action="/forward/delete" method="post">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<input type="email" class="form-control" id="forwardemailInput" value="{{ forward }}" disabled>
|
<input type="email" class="form-control" id="forwardemailInput" value="{{ forward[0] }}" disabled>
|
||||||
<input name="forward" type="hidden" class="form-control" id="forwardemailInput2" value="{{ forward }}">
|
<input name="forward" type="hidden" class="form-control" id="forwardemailInput2" value="{{ forward[0] }}">
|
||||||
</div>
|
</div>
|
||||||
<button type="submit" class="btn btn-primary btn-danger">delete</button>
|
<button type="submit" class="btn btn-primary btn-danger">delete</button>
|
||||||
</form>
|
</form>
|
||||||
|
|
Reference in New Issue