diff options
-rw-r--r-- | sonar-server/src/main/webapp/WEB-INF/app/controllers/users_controller.rb | 13 | ||||
-rw-r--r-- | sonar-server/src/main/webapp/WEB-INF/app/views/users/index.html.erb | 10 |
2 files changed, 22 insertions, 1 deletions
diff --git a/sonar-server/src/main/webapp/WEB-INF/app/controllers/users_controller.rb b/sonar-server/src/main/webapp/WEB-INF/app/controllers/users_controller.rb index bd04170ee35..d39d7fda380 100644 --- a/sonar-server/src/main/webapp/WEB-INF/app/controllers/users_controller.rb +++ b/sonar-server/src/main/webapp/WEB-INF/app/controllers/users_controller.rb @@ -74,6 +74,19 @@ class UsersController < ApplicationController render :action => 'index', :id => params[:id] end + def update_password + user = User.find(params[:id]) + + if params[:user][:password].blank? + flash[:error] = 'Password required.' + + elsif user.update_attributes(:password => params[:user][:password], :password_confirmation => params[:user][:password_confirmation]) + flash[:notice] = 'Password was successfully updated.' + end + + to_index(user.errors, nil); + end + def update user = User.find(params[:id]) diff --git a/sonar-server/src/main/webapp/WEB-INF/app/views/users/index.html.erb b/sonar-server/src/main/webapp/WEB-INF/app/views/users/index.html.erb index a3856382d2b..15fad13ebab 100644 --- a/sonar-server/src/main/webapp/WEB-INF/app/views/users/index.html.erb +++ b/sonar-server/src/main/webapp/WEB-INF/app/views/users/index.html.erb @@ -42,6 +42,7 @@ action_name = 'update' title = 'Edit user' if params[:action] == 'change_password' + action_name = 'update_password' title = 'Change password' end end @@ -69,13 +70,20 @@ <td class="left" valign="top">Email:<br/><%= f.text_field :email, :size => 30, :maxLength => 100 %></td> </tr> <% end %> - <% if params[:action] == 'change_password' || !@user.id %> + <% if !@user.id %> <tr> <td class="left" valign="top">Password:<br/><%= f.password_field :password, :size => 30, :maxLength => 50 %></td> </tr> <tr> <td class="left" valign="top">Confirm password:<br/><%= f.password_field :password_confirmation, :size => 30, :maxLength => 50 %></td> </tr> + <% elsif params[:action] == 'change_password' %> + <tr> + <td class="left" valign="top">New password:<br/><%= f.password_field :password, :size => 30, :maxLength => 50 %></td> + </tr> + <tr> + <td class="left" valign="top">Confirm new password:<br/><%= f.password_field :password_confirmation, :size => 30, :maxLength => 50 %></td> + </tr> <% end %> <tr> <td class="left" nowrap="nowrap" valign="top" colspan="2"> |