File tree Expand file tree Collapse file tree 2 files changed +23
-1
lines changed
Expand file tree Collapse file tree 2 files changed +23
-1
lines changed Original file line number Diff line number Diff line change @@ -191,6 +191,28 @@ def update
191191 } , status : :bad_request
192192 end
193193
194+ def destroy
195+ unauthorize_guest! if current_user . guest?
196+
197+ user = User . find ( params [ :id ] )
198+ authorize! :destroy , user
199+
200+ if user . destroy
201+ RecentlyChangedUserDetail . where ( username : user . login ) . delete_all
202+ RecentlyChangedUserDetail . deleted . create! (
203+ new_value : true ,
204+ email : user . email ,
205+ username : user . login ,
206+ user_id : user . id
207+ )
208+ Doorkeeper ::AccessToken . where ( resource_owner_id : user . id ) . delete_all
209+
210+ render json : { success : true , message : 'User deleted.' }
211+ else
212+ render json : { success : false , errors : user . errors } , status : :bad_request
213+ end
214+ end
215+
194216 def set_password_managed_by_courses_mooc_fi
195217 only_admins!
196218
Original file line number Diff line number Diff line change 5555 resources :recently_changed_user_details , only : :index
5656 end
5757
58- resources :users , only : %i[ show create update ] do
58+ resources :users , only : %i[ show create update destroy ] do
5959 resources :request_deletion , only : [ :create ] , module : :users
6060 resources :assistantships , module : :users , only : :index
6161 resources :teacherships , module : :users , only : :index
You can’t perform that action at this time.
0 commit comments