diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index fbecce2..a2a7003 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -3,5 +3,6 @@ // Configure your import map in config/importmap.rb. Read more: https://github.com/rails/importmap-rails import "@hotwired/turbo-rails" -import "sample_app/app/assets/javascripts/controllers" +// import "sample_app/app/assets/javascripts/controllers" +//= require "controllers" //= require bootstrap-sprockets \ No newline at end of file diff --git a/app/controllers/sessions_controller.rb b/app/controllers/sessions_controller.rb new file mode 100644 index 0000000..dbdb886 --- /dev/null +++ b/app/controllers/sessions_controller.rb @@ -0,0 +1,20 @@ +class SessionsController < ApplicationController + include SessionsHelper + def new + end + + def create + user = User.find_by(email: params[:session][:email].downcase) + if user && user.authenticate(params[:session][:password]) + reset_session + log_in user + redirect_to user + else + flash.now[:danger] = 'Invalid email/password combination' + render 'new' + end + end + + def destroy + end +end diff --git a/app/helpers/sessions_helper.rb b/app/helpers/sessions_helper.rb new file mode 100644 index 0000000..f81bc8e --- /dev/null +++ b/app/helpers/sessions_helper.rb @@ -0,0 +1,15 @@ +module SessionsHelper + def log_in(user) + session[:user_id] = user.id + end + + def current_user + if session[:user_id] + @current_user ||= User.find_by(id: session[:user_id]) + end + end + + def logged_in? + !current_user.nil? + end +end diff --git a/app/views/layouts/_header.html.erb b/app/views/layouts/_header.html.erb index 8352757..aa77b92 100644 --- a/app/views/layouts/_header.html.erb +++ b/app/views/layouts/_header.html.erb @@ -5,7 +5,24 @@
diff --git a/app/views/sessions/new.html.erb b/app/views/sessions/new.html.erb new file mode 100644 index 0000000..29df465 --- /dev/null +++ b/app/views/sessions/new.html.erb @@ -0,0 +1,18 @@ +<% provide(:title, "Log in") %> + +New user? <%= link_to "SIgn up now!", signup_path %>
+