about summary refs log tree commit diff
path: root/app/controllers/settings/sessions_controller.rb
diff options
context:
space:
mode:
authorYamagishi Kazutoshi <ykzts@desire.sh>2017-07-19 11:59:04 +0900
committerEugen Rochko <eugen@zeonfederated.com>2017-07-19 04:59:04 +0200
commit716f4cb11c0a1cafd4def7beeba5c938abe56fc5 (patch)
tree39fc660ad10318fc4b2ec88c3a9b752d0a3e3001 /app/controllers/settings/sessions_controller.rb
parenta5a07da8926589647160ac642a8e082bbeca4451 (diff)
Add feature to revoke sessions (#4259)
Diffstat (limited to 'app/controllers/settings/sessions_controller.rb')
-rw-r--r--app/controllers/settings/sessions_controller.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/app/controllers/settings/sessions_controller.rb b/app/controllers/settings/sessions_controller.rb
new file mode 100644
index 000000000..0da1b027b
--- /dev/null
+++ b/app/controllers/settings/sessions_controller.rb
@@ -0,0 +1,17 @@
+# frozen_string_literal: true
+
+class Settings::SessionsController < ApplicationController
+  before_action :set_session, only: :destroy
+
+  def destroy
+    @session.destroy!
+    flash[:notice] = I18n.t('sessions.revoke_success')
+    redirect_to edit_user_registration_path
+  end
+
+  private
+
+  def set_session
+    @session = current_user.session_activations.find(params[:id])
+  end
+end