Class: Buttercms::BlogController

Inherits:
ApplicationController
  • Object
show all
Includes:
API
Defined in:
app/controllers/buttercms/blog_controller.rb

Constant Summary

Constants included from API

API::API_URL

Instance Method Summary collapse

Methods included from API

#butter_not_found, #get_butter_token, #make_butter_request

Instance Method Details

#butter_authorObject



116
117
118
119
120
121
122
123
124
125
# File 'app/controllers/buttercms/blog_controller.rb', line 116

def butter_author
  response = make_butter_request("authors/#{params[:author_slug]}")
  response_json = JSON.parse(response)
  @first_name = response_json['first_name']
  @last_name = response_json['last_name']
  @email = response_json['email']
  @recent_posts = response_json['recent_posts']

  render template: "blog/author"
end

#butter_categoryObject



127
128
129
130
131
132
133
134
# File 'app/controllers/buttercms/blog_controller.rb', line 127

def butter_category
  response = make_butter_request("categories/#{params[:category_slug]}")
  response_json = JSON.parse(response)
  @name = response_json['name']
  @recent_posts = response_json['recent_posts']

  render template: "blog/category"
end

#butter_feedObject



137
138
139
140
141
142
143
144
145
# File 'app/controllers/buttercms/blog_controller.rb', line 137

def butter_feed
  response = make_butter_request("posts/")
  response_json = JSON.parse(response)
  @recent_posts = response_json['results']
  respond_to do |format|
    format.rss { render layout: false }
    format.atom { render layout: false }
  end
end

#butter_homeObject



92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# File 'app/controllers/buttercms/blog_controller.rb', line 92

def butter_home
  # Check for pagination
  if params[:page]
    page_param = "?page=#{params[:page]}"
  else
    page_param = ''
  end

  response = make_butter_request("posts/#{page_param}")
  response_json = JSON.parse(response)
  @next_page = response_json['next_page']
  @previous_page = response_json['previous_page']
  @recent_posts = response_json['results']

  render template: "blog/home"
end

#butter_postObject



109
110
111
112
113
114
# File 'app/controllers/buttercms/blog_controller.rb', line 109

def butter_post
  response = make_butter_request("posts/#{params[:slug]}")
  @post = JSON.parse(response)

  render template: "blog/post"
end

#butter_sitemapObject



147
148
149
150
151
# File 'app/controllers/buttercms/blog_controller.rb', line 147

def butter_sitemap
  response = make_butter_request("sitemap/")
  response_json = JSON.parse(response)
  @recent_posts = response_json
end

#get_butter_layoutObject



81
82
83
84
85
86
87
88
89
90
# File 'app/controllers/buttercms/blog_controller.rb', line 81

def get_butter_layout
  if defined? Buttercms.configuration
    if !Buttercms.configuration.layout.nil?
      return Buttercms.configuration.layout
    end
  end

  # Default to the included layout.
  return "buttercms/application"
end