1
0
mirror of https://github.com/mail-in-a-box/mailinabox.git synced 2024-12-24 07:37:04 +00:00

Actual implementation of the Relay setup daemon

This commit is contained in:
David Duque 2020-04-16 22:16:02 +01:00
parent d9397a026b
commit 430f6dab38
No known key found for this signature in database
GPG Key ID: 2F327738A3C0AE3A
3 changed files with 27 additions and 8 deletions

View File

@ -523,18 +523,31 @@ def privacy_status_set():
@app.route('/system/smtp/relay', methods=["GET"])
@authorized_personnel_only
def smtp_relay_get():
# Just return something for now.
return {
"enabled": False,
"host": "",
"auth_enabled": True,
"user": ""
"enabled": (env["SMTP_RELAY_ENABLED"] == "true"),
"host": env["SMTP_RELAY_HOST"],
"auth_enabled": (env["SMTP_RELAY_AUTH"] == "true"),
"user": env["SMTP_RELAY_USER"]
}
@app.route('/system/smtp/relay', methods=["POST"])
@authorized_personnel_only
def smtp_relay_set():
pass
config = utils.load_settings(env)
newconf = request.form
try
# Write on Postfix config
# Write on daemon env
config["SMTP_RELAY_ENABLED"] = "true" if newconf.get("enabled") else "false"
config["SMTP_RELAY_HOST"] = newconf.get("host")
config["SMTP_RELAY_AUTH"] = "true" if newconf.get("auth_enabled") else "false"
config["SMTP_RELAY_USER"] = newconf.get("user")
utils.write_settings(config, env)
# Restart Postfix
return "OK"
except Exception e:
return (str(e), 500)
# MUNIN

View File

@ -341,7 +341,7 @@
return output;
}
function default_error(text, xhr) {
function default_error(_, xhr) {
if (xhr.status != 403) // else handled below
show_modal_error("Error", "Something went wrong, sorry.")
}
@ -371,7 +371,8 @@
// Credentials are no longer valid. Try to login again.
var p = current_panel;
show_panel('login');
switch_back_to_panel = p;
// No use of going back
switch_back_to_panel = current_panel;
}
}
})

View File

@ -129,6 +129,11 @@
show_modal_error("Done!", "The configuration has been updated and Postfix was restarted successfully. Please make sure everything is functioning as intended.", () => {
return false
})
},
(text, xhr) => {
if (xhr.status != 403) {
show_modal_error("Error", `<h5>${xhr}</h5><br><pre>${text}</pre><br>Welp, oof`)
}
}
)
}