require_dependency "full_and_mountable/application_controller"

module FullAndMountable
  class UsersController < ApplicationController
    # GET /users
    # GET /users.json
    def index
      @users = User.all
  
      respond_to do |format|
        format.json { render json: @users }
      end
    end
  
    # GET /users/1
    # GET /users/1.json
    def show
      @user = User.find(params[:id])
  
      respond_to do |format|
         format.json { render json: @user }
      end
    end
  
    # GET /users/new
    # GET /users/new.json
    def new
      @user = User.new
  
      respond_to do |format|
        format.json { render json: @user }
      end
    end

    # GET /users/1/edit
    def edit
      @user = User.find(params[:id])
    end

    # POST /users
    # POST /users.json
    def create
      @user = User.new(params[:user])
  
      respond_to do |format|
        if @user.save
          format.json { render json: @user, status: :created, location: @user }
        else
          format.json { render json: @user.errors, status: :unprocessable_entity }
        end
      end
    end
  
    # PUT /users/1
    # PUT /users/1.json
    def update
      @user = User.find(params[:id])
  
      respond_to do |format|
        if @user.update_attributes(params[:user])
          format.json { head :no_content }
        else
          format.json { render json: @user.errors, status: :unprocessable_entity }
        end
      end
    end
  
    # DELETE /users/1
    # DELETE /users/1.json
    def destroy
      @user = User.find(params[:id])
      @user.destroy
  
      respond_to do |format|
        format.json { head :no_content }
      end
    end
  end
end
