Class: MaquinaNewsletters::NewslettersController

Inherits:
ApplicationController show all
Defined in:
app/controllers/maquina_newsletters/newsletters_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject

POST /backstage/newsletters/newsletters



29
30
31
32
33
34
35
36
# File 'app/controllers/maquina_newsletters/newsletters_controller.rb', line 29

def create
  @newsletter = ::MaquinaNewsletters::Newsletter.new(newsletter_params)
  if @newsletter.save
    redirect_to(newsletter_path(@newsletter), notice: t(".created"), status: :see_other)
  else
    render :new, status: :unprocessable_entity
  end
end

#destroyObject

DELETE /backstage/newsletters/newsletters/:id



56
57
58
59
# File 'app/controllers/maquina_newsletters/newsletters_controller.rb', line 56

def destroy
  @newsletter.destroy
  redirect_to(newsletters_path, notice: t(".deleted"), status: :see_other)
end

#editObject

GET /backstage/newsletters/newsletters/:id/edit



43
44
# File 'app/controllers/maquina_newsletters/newsletters_controller.rb', line 43

def edit
end

#indexObject

GET /backstage/newsletters/newsletters



8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'app/controllers/maquina_newsletters/newsletters_controller.rb', line 8

def index
  scope = ::MaquinaNewsletters::Newsletter.order(created_at: :desc)
  # Optional status filter (spec ยง10 filter pills). Ignore unknown values
  # so a bad ?status= param degrades to "All" rather than erroring.
  @status = params[:status].presence
  if @status && ::MaquinaNewsletters::Newsletter::STATUSES.include?(@status)
    scope = scope.where(status: @status)
  else
    @status = nil
  end
  @newsletters = scope
  # Pagination will be added in T42 (deployment phase). Once a Pagy
  # instance is available, pass it to pagination_nav in the index view.
end

#newObject

GET /backstage/newsletters/newsletters/new



24
25
26
# File 'app/controllers/maquina_newsletters/newsletters_controller.rb', line 24

def new
  @newsletter = ::MaquinaNewsletters::Newsletter.new
end

#showObject

GET /backstage/newsletters/newsletters/:id



39
40
# File 'app/controllers/maquina_newsletters/newsletters_controller.rb', line 39

def show
end

#updateObject

PATCH/PUT /backstage/newsletters/newsletters/:id



47
48
49
50
51
52
53
# File 'app/controllers/maquina_newsletters/newsletters_controller.rb', line 47

def update
  if @newsletter.update(newsletter_params)
    redirect_to(newsletter_path(@newsletter), notice: t(".updated"), status: :see_other)
  else
    render :edit, status: :unprocessable_entity
  end
end