diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 69a90b619e..e1e4bf6770 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -247,13 +247,14 @@ class UsersController < ApplicationController format.js { render(:update) {|page| page.replace_html "tab-content-memberships", :partial => 'users/memberships' + page.insert_html :top, "tab-content-memberships", :partial => "members/common_notice", :locals => {:message => l(:notice_successful_update)} page.visual_effect(:highlight, "member-#{@membership.id}") } } else format.js { render(:update) {|page| - page.alert(l(:notice_failed_to_save_members, :errors => @membership.errors.full_messages.join(', '))) + page.insert_html :top, "tab-content-memberships", :partial => "members/member_errors", :locals => {:member => @membership} } } end @@ -295,7 +296,12 @@ class UsersController < ApplicationController end respond_to do |format| format.html { redirect_to :controller => '/users', :action => 'edit', :id => @user, :tab => 'memberships' } - format.js { render(:update) {|page| page.replace_html "tab-content-memberships", :partial => 'users/memberships'} } + format.js { + render(:update) { |page| + page.replace_html "tab-content-memberships", :partial => 'users/memberships' + page.insert_html :top, "tab-content-memberships", :partial => "members/common_notice", :locals => {:message => l(:notice_successful_delete)} + } + } end end diff --git a/app/views/members/_common_notice.html.erb b/app/views/members/_common_notice.html.erb new file mode 100644 index 0000000000..2cd57545d5 --- /dev/null +++ b/app/views/members/_common_notice.html.erb @@ -0,0 +1,38 @@ +<%#-- copyright +OpenProject is a project management system. +Copyright (C) 2012-2014 the OpenProject Foundation (OPF) + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License version 3. + +OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows: +Copyright (C) 2006-2013 Jean-Philippe Lang +Copyright (C) 2010-2013 the ChiliProject Team + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +See doc/COPYRIGHT.rdoc for more details. + +++#%> + +
+
diff --git a/app/views/users/_memberships.html.erb b/app/views/users/_memberships.html.erb index c88a5b9b1f..2a15880440 100644 --- a/app/views/users/_memberships.html.erb +++ b/app/views/users/_memberships.html.erb @@ -29,6 +29,7 @@ See doc/COPYRIGHT.rdoc for more details. <% roles = Role.find_all_givable %> <% projects = Project.active.find(:all, :order => 'lft') %> +<%= javascript_include_tag "activate_error_messages" %>
<% if @user.memberships.any? %>