Class: Cms::TasksController

Inherits:
BaseController show all
Defined in:
app/controllers/cms/tasks_controller.rb

Instance Method Summary collapse

Methods inherited from BaseController

allow_guests_to

Methods inherited from ApplicationController

#no_browser_caching

Instance Method Details

#completeObject



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'app/controllers/cms/tasks_controller.rb', line 21

def complete
  if params[:task_ids]
    Task.where(["id in (?)", params[:task_ids]]).each do |t|
      if t.assigned_to == current_user
        t.mark_as_complete!
      end
    end
    flash[:notice] = "Tasks marked as complete"
    redirect_to dashboard_path
  else
    @task = Task.find(params[:id])
    if @task.assigned_to == current_user
      if @task.mark_as_complete!
        flash[:notice] = "Task was marked as complete"
      end
    else
      flash[:error] = "You cannot complete tasks that are not assigned to you"
    end
    redirect_to @task.page.path
  end
rescue ActiveRecord::RecordNotFound
  flash[:error] = "No tasks were marked for completion"
  redirect_to dashboard_path
end

#createObject



10
11
12
13
14
15
16
17
18
19
# File 'app/controllers/cms/tasks_controller.rb', line 10

def create
  @task = @page.tasks.build(task_params())
  @task.assigned_by = current_user
  if @task.save
    flash[:notice] = "Page was assigned to '#{@task.assigned_to.}'"
    redirect_to @page.path
  else
    render :action => 'new'
  end
end

#newObject



6
7
8
# File 'app/controllers/cms/tasks_controller.rb', line 6

def new
  @task = @page.tasks.build(:assigned_by => current_user)
end