Class: PlanMyStuff::Issues::WaitingsController
- Inherits:
-
ApplicationController
- Object
- ApplicationController
- ApplicationController
- PlanMyStuff::Issues::WaitingsController
- Defined in:
- app/controllers/plan_my_stuff/issues/waitings_controller.rb
Overview
Toggles the waiting-on-user state on an issue via CRUD-style routes. Backs the “Mark waiting” / “Mark replied” button on the issue show view.
POST /issues/:issue_id/waiting -> create (enters waiting-on-user) DELETE /issues/:issue_id/waiting -> destroy (clears waiting-on-user)
Instance Method Summary collapse
-
#create ⇒ Object
POST /issues/:issue_id/waiting.
-
#destroy ⇒ Object
DELETE /issues/:issue_id/waiting.
Instance Method Details
#create ⇒ Object
POST /issues/:issue_id/waiting
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'app/controllers/plan_my_stuff/issues/waitings_controller.rb', line 13 def create unless support_user? (plan_my_stuff.issue_path(params[:issue_id], repo: params[:repo])) return end issue = PMS::Issue.find(params[:issue_id].to_i, repo: params[:repo]) issue.enter_waiting_on_user!(user: pms_current_user) flash[:success] = 'Issue marked as waiting on user reply.' redirect_to(plan_my_stuff.issue_path(issue.number, repo: issue.repo.full_name)) rescue PMS::Error, ArgumentError => e flash[:error] = e. redirect_to(plan_my_stuff.issue_path(params[:issue_id], repo: params[:repo])) end |
#destroy ⇒ Object
DELETE /issues/:issue_id/waiting
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'app/controllers/plan_my_stuff/issues/waitings_controller.rb', line 30 def destroy unless support_user? (plan_my_stuff.issue_path(params[:issue_id], repo: params[:repo])) return end issue = PMS::Issue.find(params[:issue_id].to_i, repo: params[:repo]) issue.clear_waiting_on_user! flash[:success] = 'Waiting-on-user state cleared.' redirect_to(plan_my_stuff.issue_path(issue.number, repo: issue.repo.full_name)) rescue PMS::Error, ArgumentError => e flash[:error] = e. redirect_to(plan_my_stuff.issue_path(params[:issue_id], repo: params[:repo])) end |