tududi/app/helpers/authentication_helper.rb
Chris Veleris dfcb97a355 Move to React
Add .gitignore

Removed node_modules from previous commit

Fix task modes

Fix task modes

Fix task modes

Remove node_modules

Update basic task modal

Add notes functionality

Improve UI

Setup views

Add scopes

Fix projects layout

Restructure

Fix rest of the UI issues

Cleanup old views

Add .env to .gitignore
2024-10-25 21:03:43 +03:00

23 lines
714 B
Ruby

module AuthenticationHelper
def logged_in?
!!session[:user_id]
end
def current_user
@current_user ||= User.find(session[:user_id]) if session[:user_id]
end
def require_login
# Allow requests to '/login' and '/logout' without checking for login
return if ['/login', '/logout', '/api/current_user'].include? request.path
# If the user is not logged in and the request is not an API request, redirect to login
return if logged_in?
if request.xhr? || request.path.start_with?('/api/')
halt 401, { error: 'You must be logged in' }.to_json # For API calls, return a 401 status
else
redirect '/login' # For non-API calls, redirect to login page
end
end
end