Class: Jigsaw::LayoutTemplatesController

Inherits:
ApplicationController show all
Defined in:
app/controllers/jigsaw/layout_templates_controller.rb

Constant Summary collapse

DEFAULT_GRID_CONFIG =
{
  "type"        => "grid",
  "areas"       => [["main"]],
  "columns"     => ["1fr"],
  "rows"        => ["1fr"],
  "gridWidth"   => "100%",
  "gridHeight"  => "100%",
  "rowGap"      => 8,
  "colGap"      => 8,
  "rowGapUnit"  => "px",
  "colGapUnit"  => "px"
}.freeze

Instance Method Summary collapse

Instance Method Details

#createObject



26
27
28
29
30
31
32
33
34
# File 'app/controllers/jigsaw/layout_templates_controller.rb', line 26

def create
  @layout_template = LayoutTemplate.new(layout_template_params)
  @layout_template.config = DEFAULT_GRID_CONFIG.deep_dup if @layout_template.config.blank?
  if @layout_template.save
    redirect_to edit_layout_template_path(@layout_template), notice: "Layout template created"
  else
    render :new, status: :unprocessable_entity
  end
end

#destroyObject



47
48
49
50
# File 'app/controllers/jigsaw/layout_templates_controller.rb', line 47

def destroy
  @layout_template.destroy!
  redirect_to layout_templates_path, notice: "Layout template deleted"
end

#editObject



36
37
# File 'app/controllers/jigsaw/layout_templates_controller.rb', line 36

def edit
end

#indexObject



18
19
20
# File 'app/controllers/jigsaw/layout_templates_controller.rb', line 18

def index
  @layout_templates = LayoutTemplate.order(:name)
end

#newObject



22
23
24
# File 'app/controllers/jigsaw/layout_templates_controller.rb', line 22

def new
  @layout_template = LayoutTemplate.new
end

#updateObject



39
40
41
42
43
44
45
# File 'app/controllers/jigsaw/layout_templates_controller.rb', line 39

def update
  if @layout_template.update(layout_template_params)
    redirect_to edit_layout_template_path(@layout_template), notice: "Layout template updated"
  else
    render :edit, status: :unprocessable_entity
  end
end