diff --git a/app/models/event.rb b/app/models/event.rb index 5cb9c4ba..92bfeb15 100644 --- a/app/models/event.rb +++ b/app/models/event.rb @@ -205,6 +205,7 @@ class Event < ActiveRecord::Base end alert end + private def abstract_limit diff --git a/app/models/event_user.rb b/app/models/event_user.rb index be44a003..2f71d330 100644 --- a/app/models/event_user.rb +++ b/app/models/event_user.rb @@ -5,10 +5,4 @@ class EventUser < ActiveRecord::Base belongs_to :event belongs_to :user - - def self.create_deleted_eventuser(user,event) - event_role = event.event_users.where(user: user).first.event_role - event.event_users.where(user: user).destroy_all - EventUser.create(user: User.find_by(email: 'deleted@localhost.osem'), event: event, event_role: event_role) - end end diff --git a/app/models/user.rb b/app/models/user.rb index 88cbf054..547900e5 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -130,7 +130,9 @@ class User < ActiveRecord::Base if event.start_time.nil? || event.start_time > DateTime.now event.destroy else - EventUser.create_deleted_eventuser(self,event) + event_role = event.event_users.where(user: self).first.event_role + event.event_users.where(user: self).destroy_all + EventUser.create(user: User.find_by(email: 'deleted@localhost.osem'), event: event, event_role: event_role) end end super diff --git a/app/views/admin/users/index.html.haml b/app/views/admin/users/index.html.haml index 032c7d8e..d604f5b6 100644 --- a/app/views/admin/users/index.html.haml +++ b/app/views/admin/users/index.html.haml @@ -63,4 +63,3 @@ "bLengthChange": false } ); } ); ->>>>>>> User deletion diff --git a/spec/features/user_spec.rb b/spec/features/user_spec.rb index e105cbf1..2ee21353 100644 --- a/spec/features/user_spec.rb +++ b/spec/features/user_spec.rb @@ -1,7 +1,6 @@ require 'spec_helper' feature User do - shared_examples 'admin ability' do scenario 'deletes a user', feature: true, js: true do sign_in(create(:admin)) @@ -17,7 +16,7 @@ feature User do scenario 'deletes a user with scheduled events', feature: true, js: true do sign_in(create(:admin)) @user = create(:user) - deleted_user = create(:user, email: 'deleted@localhost.osem', name: 'User deleted', biography: 'Data is no longer available for deleted user.') + deleted_user = create(:deleted_user, email:'deleted@localhost.osem') @user.events << create(:event, start_time: DateTime.now) event = @user.events.first visit admin_users_path