mirror of
https://github.com/peeringdb/peeringdb.git
synced 2024-05-11 05:55:09 +00:00
Pr 482 534 (#535)
* fix oauth redirect if login is required, fix login redirect getting lost on auth failure * fix bad rdap test (#534)
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
{% csrf_token %}
|
||||
<div class="col-md-4 col-sm-3 col-xs-12"></div>
|
||||
<div class="col-md-4 col-sm-6 col-xs-12 panel">
|
||||
<input type="hidden" name="next" id="next" value="{{ request.GET.next }}" />
|
||||
<input type="hidden" name="next" id="next" value="{{ next }}" />
|
||||
<div class="form-group">
|
||||
<input placeholder="{% trans "Username" %}" class="form-control" type="text" id="username" name="username" />
|
||||
</div>
|
||||
|
@@ -71,6 +71,12 @@ BASE_ENV = {
|
||||
}
|
||||
|
||||
|
||||
def is_oauth_authorize(url):
|
||||
if url.find("/oauth2/authorize/") == 0:
|
||||
return True
|
||||
return False
|
||||
|
||||
|
||||
def export_permissions(user, entity):
|
||||
"""
|
||||
returns dict of permission bools for the specified user and entity
|
||||
@@ -709,8 +715,10 @@ def view_login(request, errors=None):
|
||||
|
||||
template = loader.get_template('site/login.html')
|
||||
|
||||
redir = request.GET.get("next", request.POST.get("next"))
|
||||
|
||||
env = BASE_ENV.copy()
|
||||
env.update({'errors': errors})
|
||||
env.update({'errors': errors, "next": redir})
|
||||
return HttpResponse(template.render(env, request))
|
||||
|
||||
|
||||
@@ -1598,7 +1606,8 @@ def request_login(request):
|
||||
try:
|
||||
resolve(redir)
|
||||
except Resolver404:
|
||||
redir = "/"
|
||||
if not is_oauth_authorize(redir):
|
||||
redir = "/"
|
||||
|
||||
user = authenticate(username=username, password=password)
|
||||
if user is not None:
|
||||
|
@@ -43,7 +43,7 @@ def test_recurse_contacts(rdap):
|
||||
asn = rdap.get_asn(3333)
|
||||
assert rdap == asn._rdapc
|
||||
assert len(asn.emails) > 1
|
||||
assert len(rdap.history) > len(asn.emails)
|
||||
assert len(rdap.history) > 1
|
||||
|
||||
def test_renumber_ipaddress():
|
||||
ip4 = renumber_ipaddress(
|
||||
|
Reference in New Issue
Block a user