Sha256: cc2600c47ef351921a49df955733fced4bba9569cd08cf0a07ebd51162cccbfd

Contents?: true

Size: 1.4 KB

Versions: 1

Compression:

Stored size: 1.4 KB

Contents

module TinyCore
  module Controllers
    module Users
      def self.included(receiver)
        receiver.before_filter :login_required, :only => [:index, :show, :edit, :update]
      end

      def index
        redirect_to account_path(current_user.current_account)
      end

      def new
        @user = User.new
      end

      def create
        if logged_in? && current_user.respond_to?(:current_account)
          @user = current_user.current_account.users.build(params[:user])
          @user.current_account = current_user.current_account
        else
          @user = User.new(params[:user])
        end

        if @user.save
          flash[:notice] = I18n.t('flash.notice.created_user')

          if logged_in?
            @user.accounts << current_user.current_account if current_user.respond_to?(:current_account)
            redirect_to new_user_path
          else
            redirect_back_or_default root_path
          end
        else
          render :action => :new
        end
      end

      def show
        @user = User.find(params[:id])
      end

      def edit
        @user = User.find(params[:id])
      end

      def update
        @user = User.find(params[:id])
        if @user.update_attributes(params[:user])
          flash[:notice] = I18n.t('flash.notice.updated_user')
          redirect_to root_path
        else
          render :action => :edit
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tiny_core_users-0.0.1 lib/tiny_core/controllers/users.rb