Fix user redirects to go to the correct URL
`/user` no longer works and returns a 404; we now need to redirect to the specific user page
This commit is contained in:
parent
1c3012a538
commit
0e24f6b40a
2 changed files with 8 additions and 12 deletions
|
@ -15,7 +15,6 @@ from endpoints.web import render_page_template_with_routedata
|
||||||
from util.security.jwtutil import decode, InvalidTokenError
|
from util.security.jwtutil import decode, InvalidTokenError
|
||||||
from util.validation import generate_valid_usernames
|
from util.validation import generate_valid_usernames
|
||||||
|
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
client = app.config['HTTPCLIENT']
|
client = app.config['HTTPCLIENT']
|
||||||
oauthlogin = Blueprint('oauthlogin', __name__)
|
oauthlogin = Blueprint('oauthlogin', __name__)
|
||||||
|
@ -229,7 +228,7 @@ def google_oauth_attach():
|
||||||
username, app.config['REGISTRY_TITLE_SHORT'])
|
username, app.config['REGISTRY_TITLE_SHORT'])
|
||||||
return render_ologin_error('Google', err)
|
return render_ologin_error('Google', err)
|
||||||
|
|
||||||
return redirect(url_for('web.user'))
|
return redirect(url_for('web.user_view', path=user_obj.username, tab='external'))
|
||||||
|
|
||||||
|
|
||||||
@oauthlogin.route('/github/callback/attach', methods=['GET'])
|
@oauthlogin.route('/github/callback/attach', methods=['GET'])
|
||||||
|
@ -258,7 +257,7 @@ def github_oauth_attach():
|
||||||
|
|
||||||
return render_ologin_error('GitHub', err)
|
return render_ologin_error('GitHub', err)
|
||||||
|
|
||||||
return redirect(url_for('web.user'))
|
return redirect(url_for('web.user_view', path=user_obj.username, tab='external'))
|
||||||
|
|
||||||
|
|
||||||
def decode_user_jwt(token, oidc_provider):
|
def decode_user_jwt(token, oidc_provider):
|
||||||
|
@ -344,4 +343,5 @@ def dex_oauth_attach():
|
||||||
app.config['REGISTRY_TITLE_SHORT'])
|
app.config['REGISTRY_TITLE_SHORT'])
|
||||||
return render_ologin_error(dex_login.public_title, err)
|
return render_ologin_error(dex_login.public_title, err)
|
||||||
|
|
||||||
return redirect(url_for('web.user'))
|
return redirect(url_for('web.user_view', path=user_obj.username, tab='external'))
|
||||||
|
|
||||||
|
|
|
@ -126,12 +126,6 @@ def organizations():
|
||||||
return index('')
|
return index('')
|
||||||
|
|
||||||
|
|
||||||
@web.route('/user/')
|
|
||||||
@no_cache
|
|
||||||
def user():
|
|
||||||
return index('')
|
|
||||||
|
|
||||||
|
|
||||||
@web.route('/superuser/')
|
@web.route('/superuser/')
|
||||||
@no_cache
|
@no_cache
|
||||||
@route_show_if(features.SUPER_USERS)
|
@route_show_if(features.SUPER_USERS)
|
||||||
|
@ -405,8 +399,10 @@ def confirm_email():
|
||||||
common_login(user)
|
common_login(user)
|
||||||
if model.user.has_user_prompts(user):
|
if model.user.has_user_prompts(user):
|
||||||
return redirect(url_for('web.updateuser'))
|
return redirect(url_for('web.updateuser'))
|
||||||
|
elif new_email:
|
||||||
|
return redirect(url_for('web.user_view', path=user.username, tab='settings'))
|
||||||
else:
|
else:
|
||||||
return redirect(url_for('web.user', tab='email') if new_email else url_for('web.index'))
|
return redirect(url_for('web.index'))
|
||||||
|
|
||||||
|
|
||||||
@web.route('/recovery', methods=['GET'])
|
@web.route('/recovery', methods=['GET'])
|
||||||
|
@ -418,7 +414,7 @@ def confirm_recovery():
|
||||||
|
|
||||||
if user is not None:
|
if user is not None:
|
||||||
common_login(user)
|
common_login(user)
|
||||||
return redirect(url_for('web.user'))
|
return redirect(url_for('web.user_view', path=user.username, tab='settings', action='password'))
|
||||||
else:
|
else:
|
||||||
message = 'Invalid recovery code: This code is invalid or may have already been used.'
|
message = 'Invalid recovery code: This code is invalid or may have already been used.'
|
||||||
return render_page_template_with_routedata('message.html', message=message)
|
return render_page_template_with_routedata('message.html', message=message)
|
||||||
|
|
Reference in a new issue