buttercms 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Rakefile +1 -39
- data/app/controllers/buttercms/blog_controller.rb +24 -6
- data/app/views/buttercms/blog/author.html.erb +19 -0
- data/app/views/buttercms/blog/home.html.erb +19 -2
- data/app/views/buttercms/blog/post.html.erb +6 -3
- data/buttercms.gemspec +1 -0
- data/config/routes.rb +4 -0
- data/lib/buttercms/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 55f6699fcd36b9e43d3e71e61efd09f864bc5766
|
4
|
+
data.tar.gz: 1735ef0367b65646be7a234be8ad6985581ef23f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8fc98f77fc5e32a8839921dc91c67f136ae9c01912669f973c1518cf192b69a6f201424a92140a4f260706bd930150014488a7867c04891049acdaccc053778f
|
7
|
+
data.tar.gz: c7fdd1b97b1fca18a552fd709ceecbc2274671d6a43be85d1a2d5a341812a82413d4fb0056b44cbb8f4cbec2c0ee14b87d86465c0310745a603990bef4d9253b
|
data/Rakefile
CHANGED
@@ -1,39 +1 @@
|
|
1
|
-
require "bundler/gem_tasks"
|
2
|
-
|
3
|
-
# begin
|
4
|
-
# require 'bundler/setup'
|
5
|
-
# rescue LoadError
|
6
|
-
# puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
7
|
-
# end
|
8
|
-
|
9
|
-
# require 'rdoc/task'
|
10
|
-
|
11
|
-
# RDoc::Task.new(:rdoc) do |rdoc|
|
12
|
-
# rdoc.rdoc_dir = 'rdoc'
|
13
|
-
# rdoc.title = 'Buttercms'
|
14
|
-
# rdoc.options << '--line-numbers'
|
15
|
-
# rdoc.rdoc_files.include('README.rdoc')
|
16
|
-
# rdoc.rdoc_files.include('lib/**/*.rb')
|
17
|
-
# end
|
18
|
-
|
19
|
-
# APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__)
|
20
|
-
# load 'rails/tasks/engine.rake'
|
21
|
-
|
22
|
-
|
23
|
-
# load 'rails/tasks/statistics.rake'
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
# Bundler::GemHelper.install_tasks
|
28
|
-
|
29
|
-
# require 'rake/testtask'
|
30
|
-
|
31
|
-
# Rake::TestTask.new(:test) do |t|
|
32
|
-
# t.libs << 'lib'
|
33
|
-
# t.libs << 'test'
|
34
|
-
# t.pattern = 'test/**/*_test.rb'
|
35
|
-
# t.verbose = false
|
36
|
-
# end
|
37
|
-
|
38
|
-
|
39
|
-
# task default: :test
|
1
|
+
require "bundler/gem_tasks"
|
@@ -5,7 +5,7 @@ require 'rest-client'
|
|
5
5
|
module Buttercms
|
6
6
|
|
7
7
|
# Displays a default blog post with instructions on getting a personal token.
|
8
|
-
DEFAULT_TOKEN = '
|
8
|
+
DEFAULT_TOKEN = 'f97d131d955f48af0769a4c827bb47728cbd5d05'
|
9
9
|
API_URL = 'https://buttercms.com/api/'
|
10
10
|
|
11
11
|
class BlogController < ApplicationController
|
@@ -42,15 +42,33 @@ module Buttercms
|
|
42
42
|
end
|
43
43
|
|
44
44
|
def home
|
45
|
-
|
46
|
-
|
45
|
+
# Check for pagination
|
46
|
+
if params[:page]
|
47
|
+
page_param = "?page=#{params[:page]}"
|
48
|
+
else
|
49
|
+
page_param = ''
|
50
|
+
end
|
51
|
+
|
52
|
+
p "#{API_URL}posts/#{page_param}"
|
53
|
+
|
54
|
+
response = make_request("#{API_URL}posts/#{page_param}")
|
55
|
+
response_json = JSON.parse(response)
|
56
|
+
@next_page = response_json['next_page']
|
57
|
+
@previous_page = response_json['previous_page']
|
58
|
+
@recent_posts = response_json['results']
|
47
59
|
end
|
48
60
|
|
49
61
|
def post
|
50
62
|
response = make_request("#{API_URL}posts/#{params[:slug]}")
|
51
|
-
@
|
63
|
+
@post = JSON.parse(response)
|
64
|
+
end
|
65
|
+
|
66
|
+
def author
|
67
|
+
response = make_request("#{API_URL}authors/#{params[:author_slug]}")
|
68
|
+
response_json = JSON.parse(response)
|
69
|
+
@first_name = response_json['first_name']
|
70
|
+
@last_name = response_json['last_name']
|
71
|
+
@recent_posts = response_json['recent_posts']
|
52
72
|
end
|
53
73
|
end
|
54
74
|
end
|
55
|
-
|
56
|
-
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<h2>Recent posts from <%=@first_name %> <%=@last_name %></h2>
|
2
|
+
|
3
|
+
<% @recent_posts.each do |post| %>
|
4
|
+
<div class="post-preview">
|
5
|
+
<h2 class="post-title">
|
6
|
+
<%= link_to(post['title'], blog_post_path(:slug => post['slug'])) %>
|
7
|
+
</h2>
|
8
|
+
|
9
|
+
<p class="post-meta">
|
10
|
+
Posted by
|
11
|
+
<%= link_to("#{post['author']['first_name']} #{post['author']['last_name']}", blog_author_path(:author_slug => post['author']['slug'])) %>
|
12
|
+
on <%= post['created'] %></p>
|
13
|
+
|
14
|
+
<p class="post-summary">
|
15
|
+
<%= post['summary'] %>
|
16
|
+
</p>
|
17
|
+
</div>
|
18
|
+
<hr>
|
19
|
+
<% end %>
|
@@ -4,11 +4,28 @@
|
|
4
4
|
<%= link_to(post['title'], blog_post_path(:slug => post['slug'])) %>
|
5
5
|
</h2>
|
6
6
|
|
7
|
-
<p class="post-meta">
|
7
|
+
<p class="post-meta">
|
8
|
+
Posted by
|
9
|
+
<%= link_to("#{post['author']['first_name']} #{post['author']['last_name']}", blog_author_path(:author_slug => post['author']['slug'])) %>
|
10
|
+
on <%= post['created'] %></p>
|
8
11
|
|
9
12
|
<p class="post-summary">
|
10
13
|
<%= post['summary'] %>
|
11
14
|
</p>
|
12
15
|
</div>
|
13
16
|
<hr>
|
14
|
-
<% end %>
|
17
|
+
<% end %>
|
18
|
+
|
19
|
+
<ul class="pager">
|
20
|
+
<% if @next_page %>
|
21
|
+
<li class="previous">
|
22
|
+
<%= link_to("← Older Posts".html_safe, archive_path(:page => @next_page)) %>
|
23
|
+
</li>
|
24
|
+
<% end %>
|
25
|
+
|
26
|
+
<% if @previous_page %>
|
27
|
+
<li class="previous">
|
28
|
+
<%= link_to("Newer Posts →".html_safe, archive_path(:page => @previous_page)) %>
|
29
|
+
</li>
|
30
|
+
<% end %>
|
31
|
+
</ul>
|
@@ -1,12 +1,15 @@
|
|
1
1
|
<div class="post-preview">
|
2
2
|
|
3
3
|
<h2 class="post-title">
|
4
|
-
<%= @
|
4
|
+
<%= @post['title'] %>
|
5
5
|
</h2>
|
6
6
|
|
7
|
-
<p class="post-meta">
|
7
|
+
<p class="post-meta">
|
8
|
+
Posted by
|
9
|
+
<%= link_to("#{@post['author']['first_name']} #{@post['author']['last_name']}", blog_author_path(:author_slug => @post['author']['slug'])) %>
|
10
|
+
on <%= @post['created'] %></p>
|
8
11
|
|
9
12
|
<p class="post-body">
|
10
|
-
<%= @
|
13
|
+
<%= @post['body'].html_safe %>
|
11
14
|
</p>
|
12
15
|
</div>
|
data/buttercms.gemspec
CHANGED
@@ -16,6 +16,7 @@ Gem::Specification.new do |spec|
|
|
16
16
|
|
17
17
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
18
|
spec.require_paths = ["lib"]
|
19
|
+
# Note that files like new views must be commited and tracked via git for them to be included when building.
|
19
20
|
spec.files = `git ls-files -z`.split("\x0")
|
20
21
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
21
22
|
|
data/config/routes.rb
CHANGED
@@ -1,4 +1,8 @@
|
|
1
1
|
Buttercms::Engine.routes.draw do
|
2
2
|
get '/' => 'blog#home', as: :blog
|
3
|
+
get '/page/:page' => 'blog#home', as: :archive
|
4
|
+
get '/author/:author_slug' => 'blog#author', as: :blog_author
|
5
|
+
|
6
|
+
# This must appear last since it's a catch all
|
3
7
|
get '/:slug' => 'blog#post', as: :blog_post
|
4
8
|
end
|
data/lib/buttercms/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: buttercms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ButterCms
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-05-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -87,6 +87,7 @@ files:
|
|
87
87
|
- app/controllers/buttercms/application_controller.rb
|
88
88
|
- app/controllers/buttercms/blog_controller.rb
|
89
89
|
- app/helpers/buttercms/application_helper.rb
|
90
|
+
- app/views/buttercms/blog/author.html.erb
|
90
91
|
- app/views/buttercms/blog/home.html.erb
|
91
92
|
- app/views/buttercms/blog/post.html.erb
|
92
93
|
- app/views/layouts/buttercms/application.html.erb
|