foodsoft/app/controllers/admin/users_controller.rb

42 lines
1.2 KiB
Ruby
Raw Normal View History

class Admin::UsersController < Admin::BaseController
2011-06-09 22:03:27 +02:00
inherit_resources
def index
@users = params[:show_deleted] ? User.deleted : User.undeleted
@users = @users.sort_by_param(params["sort"])
@users = @users.includes(:mail_delivery_status)
2011-06-09 22:03:27 +02:00
2021-03-07 18:13:10 +01:00
if request.format.csv?
send_data UsersCsv.new(@users).to_csv, filename: 'users.csv', type: 'text/csv'
end
2011-06-09 22:03:27 +02:00
# if somebody uses the search field:
@users = @users.natural_search(params[:user_name]) unless params[:user_name].blank?
2011-06-09 22:03:27 +02:00
@users = @users.page(params[:page]).per(@per_page)
end
def destroy
@user = User.find(params[:id])
@user.mark_as_deleted
redirect_to admin_users_url, notice: t('admin.users.destroy.notice')
rescue => error
redirect_to admin_users_url, alert: t('admin.users.destroy.error', error: error.message)
end
def restore
@user = User.find(params[:id])
@user.restore
redirect_to admin_users_url, notice: t('admin.users.restore.notice')
rescue => error
redirect_to admin_users_url, alert: t('admin.users.restore.error', error: error.message)
end
2014-10-18 17:52:06 +02:00
def sudo
@user = User.find(params[:id])
login @user
redirect_to root_path, notice: I18n.t('admin.users.controller.sudo_done', user: @user.name)
end
end