Sha256: c3709c31c33a8154cd93ce4f9115d61a1c7a07f997415e976518bd470e258576

Contents?: true

Size: 1.2 KB

Versions: 10

Compression:

Stored size: 1.2 KB

Contents

# frozen_string_literal: true

class Comfy::Blog::PostsController < Comfy::Cms::BaseController

  include Comfy::Paginate

  def index
    scope =
      if params[:year]
        scope = @cms_site.blog_posts.published.for_year(params[:year])
        params[:month] ? scope.for_month(params[:month]) : scope
      else
        @cms_site.blog_posts.published
      end

    scope = scope.for_category(params[:category]) if params[:category]
    scope = scope.order(:published_at).reverse_order

    @blog_posts = comfy_paginate(scope, per_page: ComfyBlog.config.posts_per_page)
    render layout: ComfyBlog.config.app_layout
  end

  def show
    load_post

    render layout: app_layout

  rescue ActiveRecord::RecordNotFound
    render cms_page: "/404", status: 404
  end

private

  def load_post
    post_scope = @cms_site.blog_posts.published.where(slug: params[:slug])
    @cms_post =
      if params[:year] && params[:month]
        post_scope.where(year: params[:year], month: params[:month]).first!
      else
        post_scope.first!
      end
    @cms_layout = @cms_post.layout
  end

  def app_layout
    return false unless @cms_layout
    @cms_layout.app_layout.present? ? @cms_layout.app_layout : false
  end

end

Version data entries

10 entries across 10 versions & 6 rubygems

Version Path
PixelForce_FyBlog-0.0.2 app/controllers/comfy/blog/posts_controller.rb
PixelForce_FyBlog-0.0.1 app/controllers/comfy/blog/posts_controller.rb
PixelForce_ComfyBlog-0.0.1 app/controllers/comfy/blog/posts_controller.rb
EtsComfyBlog-0.0.4 app/controllers/comfy/blog/posts_controller.rb
EtsComfyBlog-0.0.3 app/controllers/comfy/blog/posts_controller.rb
EtsComfyBlog-0.0.2 app/controllers/comfy/blog/posts_controller.rb
EtsComfyBlog-0.0.1 app/controllers/comfy/blog/posts_controller.rb
ets_comfy_blog-0.0.1 app/controllers/comfy/blog/posts_controller.rb
kcy_comfy_blog-2.0.7 app/controllers/comfy/blog/posts_controller.rb
comfy_blog-2.0.7 app/controllers/comfy/blog/posts_controller.rb