Ver código fonte

Provide means to login/logout in user auth concern

Andrew Swistak 5 anos atrás
pai
commit
8dbe448c80
1 arquivos alterados com 12 adições e 0 exclusões
  1. 12 0
      app/controllers/concerns/user_authentication.rb

+ 12 - 0
app/controllers/concerns/user_authentication.rb

@@ -7,6 +7,8 @@ module UserAuthentication
 
   included do
     def current_user
+      return unless jwt
+
       @current_user ||=
         begin
           result = JsonWebToken.decode(jwt)
@@ -25,6 +27,16 @@ module UserAuthentication
     def logged_in?
       !current_user.nil?
     end
+
+    def login(user)
+      self.current_user = user
+    end
+
+    def logout
+      cookies.delete(:jwt)
+      cookies.delete(:_csrf_token)
+      cookies.delete('x-csrf-token')
+    end
   end
 
   private