|
|
|
@ -186,22 +186,6 @@ class User(flask_login.UserMixin):
|
|
|
|
|
|
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
def login_absolutely_required(func):
|
|
|
|
|
@wraps(func)
|
|
|
|
|
def decorated_view(*args, **kwargs):
|
|
|
|
|
|
|
|
|
|
has_password_enabled = datastore.data['settings']['application'].get('password') or os.getenv("SALTED_PASS", False)
|
|
|
|
|
if request.method in flask_login.config.EXEMPT_METHODS:
|
|
|
|
|
return func(*args, **kwargs)
|
|
|
|
|
elif app.config.get('LOGIN_DISABLED'):
|
|
|
|
|
return func(*args, **kwargs)
|
|
|
|
|
elif has_password_enabled and not current_user.is_authenticated:
|
|
|
|
|
return app.login_manager.unauthorized()
|
|
|
|
|
|
|
|
|
|
return func(*args, **kwargs)
|
|
|
|
|
|
|
|
|
|
return decorated_view
|
|
|
|
|
|
|
|
|
|
def login_optionally_required(func):
|
|
|
|
|
@wraps(func)
|
|
|
|
|
def decorated_view(*args, **kwargs):
|
|
|
|
@ -214,7 +198,6 @@ def login_optionally_required(func):
|
|
|
|
|
# Permitted
|
|
|
|
|
elif request.endpoint == 'diff_history_page' and datastore.data['settings']['application'].get('shared_diff_access'):
|
|
|
|
|
return func(*args, **kwargs)
|
|
|
|
|
|
|
|
|
|
elif request.method in flask_login.config.EXEMPT_METHODS:
|
|
|
|
|
return func(*args, **kwargs)
|
|
|
|
|
elif app.config.get('LOGIN_DISABLED'):
|
|
|
|
@ -1445,8 +1428,8 @@ def changedetection_app(config=None, datastore_o=None):
|
|
|
|
|
# paste in etc
|
|
|
|
|
return redirect(url_for('index'))
|
|
|
|
|
|
|
|
|
|
@login_absolutely_required
|
|
|
|
|
@app.route("/highlight_submit_ignore_url", methods=['POST'])
|
|
|
|
|
@login_optionally_required
|
|
|
|
|
def highlight_submit_ignore_url():
|
|
|
|
|
import re
|
|
|
|
|
mode = request.form.get('mode')
|
|
|
|
|