mirror of
https://github.com/indentlabs/notebook.git
synced 2025-10-26 11:19:22 +00:00
60 lines
1.4 KiB
Ruby
60 lines
1.4 KiB
Ruby
# Controller for the User model
|
|
#todo not sure this is even needed with devise
|
|
class UsersController < ApplicationController
|
|
# GET /users/new
|
|
# GET /users/new.json
|
|
def new
|
|
@user = User.new
|
|
|
|
respond_to do |format|
|
|
format.html # new.html.erb
|
|
format.json { render json: @user }
|
|
end
|
|
end
|
|
|
|
# GET /users/1/edit
|
|
def edit
|
|
@user = current_user #todo just use current_user in view
|
|
end
|
|
|
|
# POST /users
|
|
# POST /users.json
|
|
def create
|
|
@user = User.new(user_params)
|
|
|
|
respond_to do |format|
|
|
if @user.save
|
|
log_in @user
|
|
notice = t(:create_success, model_name: User.model_name.human)
|
|
format.html { redirect_to root_url, notice: notice }
|
|
format.json { render json: @user, status: :created }
|
|
else
|
|
format.html { render action: 'new' }
|
|
format.json { render json: @user.errors, status: :unprocessable_entity }
|
|
end
|
|
end
|
|
end
|
|
|
|
# PUT /users/1
|
|
# PUT /users/1.json
|
|
def update
|
|
@user = current_user
|
|
|
|
respond_to do |format|
|
|
if @user.update_attributes(user_params)
|
|
format.html { redirect_to root_url, notice: 'Successfully updated.' }
|
|
format.json { head :no_content }
|
|
else
|
|
format.html { render action: 'edit' }
|
|
format.json { render json: @user.errors, status: :unprocessable_entity }
|
|
end
|
|
end
|
|
end
|
|
|
|
private
|
|
|
|
def user_params
|
|
params.require(:user).permit(:name, :email, :password, :password_confirmation)
|
|
end
|
|
end
|