Class: RiddlerAdmin::PublishRequestsController

Inherits:
ApplicationController show all
Defined in:
app/controllers/riddler_admin/publish_requests_controller.rb

Instance Method Summary collapse

Methods inherited from ApplicationController

#riddler_current_user, #riddler_user_can_approve?, #riddler_user_can_deploy?

Instance Method Details

#approveObject



16
17
18
# File 'app/controllers/riddler_admin/publish_requests_controller.rb', line 16

def approve
  @publish_request.approve riddler_current_user
end

#createObject



36
37
38
39
40
41
42
43
44
# File 'app/controllers/riddler_admin/publish_requests_controller.rb', line 36

def create
  @publish_request = PublishRequest.new publish_request_params

  if @publish_request.save
    redirect_to @publish_request, notice: "Publish request was successfully created."
  else
    render :new
  end
end

#destroyObject



65
66
67
68
# File 'app/controllers/riddler_admin/publish_requests_controller.rb', line 65

def destroy
  @publish_request.destroy
  redirect_to publish_requests_url, notice: "Publish request was successfully destroyed."
end

#editObject



46
47
48
49
50
51
52
# File 'app/controllers/riddler_admin/publish_requests_controller.rb', line 46

def edit
  if @publish_request.approved? || @publish_request.published?
    redirect_to @publish_request, notice: "Editing of approved requests is not allowed"
  end

  @definition = @publish_request.content.definition_hash.to_yaml
end

#indexObject



8
9
10
# File 'app/controllers/riddler_admin/publish_requests_controller.rb', line 8

def index
  @publish_requests = PublishRequest.all
end

#newObject



24
25
26
27
28
29
30
31
32
33
34
# File 'app/controllers/riddler_admin/publish_requests_controller.rb', line 24

def new
  hash = {}

  if step = Step.find_by_id(params["step_id"])
    hash[:content] = step
    @publish_request = PublishRequest.new hash
    @definition = step.definition_hash.to_yaml
  else
    redirect_to publish_requests_path, notice: "Content must be provided in step_id"
  end
end

#publishObject



20
21
22
# File 'app/controllers/riddler_admin/publish_requests_controller.rb', line 20

def publish
  @publish_request.publish
end

#showObject



12
13
14
# File 'app/controllers/riddler_admin/publish_requests_controller.rb', line 12

def show
  @preview_contexts = ::RiddlerAdmin::PreviewContext.all
end

#updateObject



54
55
56
57
58
59
60
61
62
63
# File 'app/controllers/riddler_admin/publish_requests_controller.rb', line 54

def update
  if @publish_request.approved? || @publish_request.published?
    redirect_to @publish_request, notice: "Editing of approved requests is not allowed"

  elsif @publish_request.update publish_request_params
    redirect_to @publish_request, notice: "Publish request was successfully updated."
  else
    render :edit
  end
end