Skip to content
Open

Done #1230

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 34 additions & 7 deletions app/controllers/application_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,29 @@ class ApplicationController < Sinatra::Base
end

post "/signup" do
#your code here

if params[:username] == "" || params[:password] == ""
redirect to "/failure"
else
user = User.create(:username => params[:username],
:password => params[:password])

end
redirect to "/login"
end
end

#or
#post "/signup" do
#if params[:username] == "" || params[:password] == ""
#redirect '/failure'
#else
#User.create(username: params[:username], password: params[#:password])
#redirect '/login'
#end
#end

get '/account' do
@user = User.find(session[:user_id])
@user = User.find(session[:user_id])
erb :account
end

Expand All @@ -31,9 +48,18 @@ class ApplicationController < Sinatra::Base
erb :login
end

post "/login" do
##your code here
post "/login" do
@user = User.find_by(username: params[:username])
if @user && @user.authenticate(params[:password])
session[:user_id] = @user.id

redirect to "/account"
else

redirect to "/failure"
end
end


get "/failure" do
erb :failure
Expand All @@ -52,6 +78,7 @@ def logged_in?
def current_user
User.find(session[:user_id])
end
end
end
end


end
2 changes: 2 additions & 0 deletions app/models/user.rb
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
class User < ActiveRecord::Base
has_secure_password

end
1 change: 1 addition & 0 deletions app/views/failure.erb
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@

<h1>Flatiron Bank Error</h1>
<p>It seems there was a problem. Please return to <a href="/">the home page</a> and try again.</p>
9 changes: 9 additions & 0 deletions db/migrate/001_users.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
class Users < ActiveRecord::Migration[4.2]

def change
create_table :users do |t|
t.string :username
t.string :password_digest
end
end
end
20 changes: 20 additions & 0 deletions db/schema.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# This file is auto-generated from the current state of the database. Instead
# of editing this file, please use the migrations feature of Active Record to
# incrementally modify your database, and then regenerate this schema definition.
#
# Note that this schema.rb definition is the authoritative source for your
# database schema. If you need to create the application database on another
# system, you should be using db:schema:load, not running all the migrations
# from scratch. The latter is a flawed and unsustainable approach (the more migrations
# you'll amass, the slower it'll run and the greater likelihood for issues).
#
# It's strongly recommended that you check this file into your version control system.

ActiveRecord::Schema.define(version: 1) do

create_table "users", force: :cascade do |t|
t.string "username"
t.string "password_digest"
end

end