Page Menu
Home
GRNET
Search
Configure Global Search
Log In
Files
F5492744
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Tue, Sep 29, 4:48 PM
Size
4 KB
Mime Type
text/x-diff
Expires
Thu, Oct 1, 4:48 PM (15 h, 40 m)
Engine
blob
Format
Raw Data
Handle
458421
Attached To
rWEBDNS WebDNS (edet4)
View Options
diff --git a/app/controllers/admin/users_controller.rb b/app/controllers/admin/users_controller.rb
index d6ac2c0..6442315 100644
--- a/app/controllers/admin/users_controller.rb
+++ b/app/controllers/admin/users_controller.rb
@@ -1,32 +1,39 @@
module Admin
class UsersController < ApplicationController
before_action :authenticate_user!
before_action :admin_only!
# GET /users/orphans
def orphans
@users = User.orphans
end
+ # DELETE /users/:id
+ def destroy
+ @user = User.find(params[:id])
+ @user.destroy
+ redirect_to orphans_admin_users_path, notice: "#{@user.email} was deleted."
+ end
+
def update_groups
additions = 0
params.each_pair { |k, group_id|
next if !k.start_with?('orphan-')
_, id = k.split('-', 2)
user = User.orphans.find_by_id(id)
next if !user
group = Group.find_by_id(group_id)
next if !group
user.groups << group
additions += 1
}
redirect_to :back, notice: "#{additions} users were assigned to groups"
end
end
end
diff --git a/app/views/admin/users/orphans.html.erb b/app/views/admin/users/orphans.html.erb
index c08cd7d..793bcd9 100644
--- a/app/views/admin/users/orphans.html.erb
+++ b/app/views/admin/users/orphans.html.erb
@@ -1,10 +1,16 @@
<div>
<p>
<%= bootstrap_form_tag(url: update_groups_admin_users_path, method: 'PUT', layout: :horizontal, label_col: 'col-sm-2', control_col: 'col-sm-4') do |f| %>
- <% @users.each do |u| %>
- <%= f.collection_select "orphan-#{u.id}", Group.all, :id, :name, label: u.email, prompt: 'Assign to group' %>
- <% end %>
- <%= f.submit 'Add', class: 'btn btn-primary' %>
+ <table class="table" style="width:70%">
+ <% @users.each do |u| %>
+ <tr>
+ <td><%= u.email %></td>
+ <td><%= f.collection_select "orphan-#{u.id}", Group.all, :id, :name, hide_label: true, prompt: 'Group' %></td>
+ <td><%= link_to 'Delete', admin_user_path(u), method: :delete, data: { confirm: "Are sure you want to delete #{u.email}?"} %></td>
+ <% end %>
+ </tr>
+ </table>
+ <%= f.submit 'Apply', class: 'btn btn-primary' %>
<% end %>
</p>
</div>
diff --git a/config/routes.rb b/config/routes.rb
index 4297194..5334499 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -1,57 +1,57 @@
Rails.application.routes.draw do
# Override devise user removal
devise_scope :users do
delete :users, to: redirect('/')
end
devise_for :users
get '/auth/saml', to: 'auth#saml'
root to: redirect('/domains')
resources :groups, only: [:show] do
get :search_member,
to: 'groups#search_member', on: :member
post :members,
to: 'groups#create_member', as: :create_member, on: :member
delete 'member/:user_id',
to: 'groups#destroy_member', as: :destroy_member, on: :member
end
resources :domains do
get :edit_dnssec, to: 'domains#edit_dnssec', on: :member
resources :records, except: [:index, :show] do
# Reuse records#update instead of introducing new controller actions
#
# rubocop:disable Style/AlignHash
put :disable, to: 'records#update', on: :member,
defaults: { record: { disabled: true } }
put :enable, to: 'records#update', on: :member,
defaults: { record: { disabled: false } }
put :editable, to: 'records#editable', on: :collection
post :valid, to: 'records#valid', on: :collection
post :bulk, to: 'records#bulk', on: :collection
# rubocop:enable Style/AlignHash
end
end
get '/records/search', to: 'records#search'
# Admin
namespace :admin do
root to: redirect('/admin/groups')
resources :groups, except: [:show]
resources :jobs, only: [:index, :destroy]
- resources :users, only: [] do
+ resources :users, only: [:destroy] do
get :orphans, to: 'users#orphans', on: :collection
put :update_groups, to: 'users#update_groups', on: :collection
end
end
# Private
put 'private/replace_ds', to: 'private#replace_ds'
put 'private/trigger_event', to: 'private#trigger_event'
end
Event Timeline
Log In to Comment