diff options
author | Tiago Botelho <tiagonbotelho@hotmail.com> | 2017-02-23 17:47:06 +0000 |
---|---|---|
committer | Tiago Botelho <tiagonbotelho@hotmail.com> | 2017-02-28 22:15:40 +0000 |
commit | 9f2e4742e354f5548b4956060f1bfa5ee3bd6657 (patch) | |
tree | 45067268ebbcfb48d51c627ef13c2820cad2ad1f /app/controllers/admin | |
parent | f0ea7130f7bf0e7a3702d863b4d246f524b6c14a (diff) | |
download | gitlab-ce-9f2e4742e354f5548b4956060f1bfa5ee3bd6657.tar.gz |
applies relevant changes to the code and code structure
Diffstat (limited to 'app/controllers/admin')
-rw-r--r-- | app/controllers/admin/impersonation_tokens_controller.rb | 49 | ||||
-rw-r--r-- | app/controllers/admin/personal_access_tokens_controller.rb | 49 |
2 files changed, 49 insertions, 49 deletions
diff --git a/app/controllers/admin/impersonation_tokens_controller.rb b/app/controllers/admin/impersonation_tokens_controller.rb new file mode 100644 index 00000000000..43e718bcc97 --- /dev/null +++ b/app/controllers/admin/impersonation_tokens_controller.rb @@ -0,0 +1,49 @@ +class Admin::ImpersonationTokensController < Admin::ApplicationController + before_action :user + + def index + set_index_vars + end + + def create + # We never want to non-impersonate a user + @impersonation_token = user.personal_access_tokens.build(impersonation_token_params.merge(impersonation: true)) + + if @impersonation_token.save + flash[:impersonation_token] = @impersonation_token.token + redirect_to admin_user_impersonation_tokens_path, notice: "A new impersonation token has been created." + else + set_index_vars + render :index + end + end + + def revoke + @impersonation_token = user.personal_access_tokens.impersonation.find(params[:id]) + + if @impersonation_token.revoke! + flash[:notice] = "Revoked impersonation token #{@impersonation_token.name}!" + else + flash[:alert] = "Could not revoke impersonation token #{@impersonation_token.name}." + end + + redirect_to admin_user_impersonation_tokens_path + end + + private + + def user + @user ||= User.find_by!(username: params[:user_id]) + end + + def impersonation_token_params + params.require(:personal_access_token).permit(:name, :expires_at, :impersonation, scopes: []) + end + + def set_index_vars + @impersonation_token ||= user.personal_access_tokens.build + @scopes = Gitlab::Auth::SCOPES + @active_impersonation_tokens = user.personal_access_tokens.impersonation.active.order(:expires_at) + @inactive_impersonation_tokens = user.personal_access_tokens.impersonation.inactive + end +end diff --git a/app/controllers/admin/personal_access_tokens_controller.rb b/app/controllers/admin/personal_access_tokens_controller.rb deleted file mode 100644 index f32a4160433..00000000000 --- a/app/controllers/admin/personal_access_tokens_controller.rb +++ /dev/null @@ -1,49 +0,0 @@ -class Admin::PersonalAccessTokensController < Admin::ApplicationController - before_action :user - - def index - set_index_vars - end - - def create - # We never want to non-impersonate a user - @personal_access_token = user.personal_access_tokens.generate(personal_access_token_params.merge(impersonation: true)) - - if @personal_access_token.save - flash[:personal_access_token] = @personal_access_token.token - redirect_to admin_user_personal_access_tokens_path, notice: "A new personal access token has been created." - else - set_index_vars - render :index - end - end - - def revoke - @personal_access_token = user.personal_access_tokens.find(params[:id]) - - if @personal_access_token.revoke! - flash[:notice] = "Revoked personal access token #{@personal_access_token.name}!" - else - flash[:alert] = "Could not revoke personal access token #{@personal_access_token.name}." - end - - redirect_to admin_user_personal_access_tokens_path - end - - private - - def user - @user ||= User.find_by!(username: params[:user_id]) - end - - def personal_access_token_params - params.require(:personal_access_token).permit(:name, :expires_at, :impersonation, scopes: []) - end - - def set_index_vars - @personal_access_token ||= user.personal_access_tokens.build - @scopes = Gitlab::Auth::SCOPES - @active_personal_access_tokens = PersonalAccessToken.and_impersonation_tokens.where(user_id: user.id).active.order(:expires_at) - @inactive_personal_access_tokens = PersonalAccessToken.and_impersonation_tokens.where(user_id: user.id).inactive - end -end |