Sha256: 30fea0499db9f46fe60655ba04aefb9486425f907d5cd90a5f9683a051601d02

Contents?: true

Size: 1.13 KB

Versions: 1

Compression:

Stored size: 1.13 KB

Contents

class ProjectsController < ApplicationController
  before_filter :authorize_admin
  layout Saucy::Layouts.to_proc

  def new
    @project = current_account.projects.build
    render
  end

  def create
    @project = current_account.projects.build(params[:project])
    if @project.save
      flash[:notice] = "Project successfully created"
      redirect_to edit_project_url(@project)
    else
      render :action => :new
    end
  end

  def edit
    @project = Project.find(params[:id])
    render
  end

  def update
    @project = Project.find(params[:id])
    if @project.update_attributes params[:project]
      flash[:success] = 'Project was updated.'
      redirect_to account_projects_url(current_account)
    else
      render :action => :edit
    end
  end

  def destroy
    @project = Project.find(params[:id])
    @project.destroy
    flash[:success] = "Project has been deleted"
    redirect_to account_projects_url(@project.account)
  end

  def index
    @projects = current_account.projects
    render
  end

  private

  def current_account
    if params[:id]
      Project.find(params[:id]).account
    else
      super
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
saucy-0.1.1 app/controllers/projects_controller.rb