Merge branch '28655-current-path-text-is-not-updated-after-setting-the-new-username' into 'master'
Update profiles/account view to display new username Closes #28655 See merge request !9650
This commit is contained in:
commit
f965cb96b3
5 changed files with 26 additions and 12 deletions
|
@ -47,11 +47,14 @@ class ProfilesController < Profiles::ApplicationController
|
|||
end
|
||||
|
||||
def update_username
|
||||
@user.update_attributes(username: user_params[:username])
|
||||
|
||||
respond_to do |format|
|
||||
format.js
|
||||
if @user.update_attributes(username: user_params[:username])
|
||||
options = { notice: "Username successfully changed" }
|
||||
else
|
||||
message = @user.errors.full_messages.uniq.join('. ')
|
||||
options = { alert: "Username change failed - #{message}" }
|
||||
end
|
||||
|
||||
redirect_back_or_default(default: { action: 'show' }, options: options)
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
@ -93,7 +93,7 @@
|
|||
%p
|
||||
Changing your username will change path to all personal projects!
|
||||
.col-lg-9
|
||||
= form_for @user, url: update_username_profile_path, method: :put, remote: true, html: {class: "update-username"} do |f|
|
||||
= form_for @user, url: update_username_profile_path, method: :put, html: {class: "update-username"} do |f|
|
||||
.form-group
|
||||
= f.label :username, "Path", class: "label-light"
|
||||
.input-group
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
- if @user.valid?
|
||||
:plain
|
||||
new Flash("Username successfully changed", "notice")
|
||||
- else
|
||||
- error = @user.errors.full_messages.first
|
||||
:plain
|
||||
new Flash("Username change failed - #{escape_javascript error.html_safe}", "alert")
|
|
@ -0,0 +1,4 @@
|
|||
---
|
||||
title: Update account view to display new username
|
||||
merge_request:
|
||||
author:
|
|
@ -61,4 +61,18 @@ describe 'Profile account page', feature: true do
|
|||
expect(find('#incoming-email-token').value).not_to eq(previous_token)
|
||||
end
|
||||
end
|
||||
|
||||
describe 'when I change my username' do
|
||||
before do
|
||||
visit profile_account_path
|
||||
end
|
||||
|
||||
it 'changes my username' do
|
||||
fill_in 'user_username', with: 'new-username'
|
||||
|
||||
click_button('Update username')
|
||||
|
||||
expect(page).to have_content('new-username')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue