spree_wordsmith 0.1.0
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.
- data/README.markdown +121 -0
- data/app/controllers/admin/pages_controller.rb +22 -0
- data/app/controllers/admin/posts_controller.rb +20 -0
- data/app/controllers/admin/wordsmith_settings_controller.rb +13 -0
- data/app/controllers/pages_controller.rb +19 -0
- data/app/controllers/posts_controller.rb +30 -0
- data/app/helpers/wordsmith_helper.rb +21 -0
- data/app/models/ability_decorator.rb +23 -0
- data/app/models/page.rb +4 -0
- data/app/models/post.rb +11 -0
- data/app/models/ws_item.rb +80 -0
- data/app/stylesheets/wordsmith.less +76 -0
- data/app/views/admin/pages/_form.html.erb +60 -0
- data/app/views/admin/pages/edit.html.erb +3 -0
- data/app/views/admin/pages/index.html.erb +25 -0
- data/app/views/admin/pages/new.html.erb +4 -0
- data/app/views/admin/posts/_form.html.erb +59 -0
- data/app/views/admin/posts/edit.html.erb +5 -0
- data/app/views/admin/posts/index.html.erb +25 -0
- data/app/views/admin/posts/new.html.erb +6 -0
- data/app/views/admin/posts/show.html.erb +27 -0
- data/app/views/admin/shared/_wordsmith_sub_menu.html.erb +8 -0
- data/app/views/admin/users/_display_name.html.erb +4 -0
- data/app/views/admin/wordsmith_settings/edit.html.erb +34 -0
- data/app/views/admin/wordsmith_settings/show.html.erb +37 -0
- data/app/views/content/show.html.erb +5 -0
- data/app/views/pages/index.html.erb +6 -0
- data/app/views/pages/show.html.erb +4 -0
- data/app/views/posts/_post.html.erb +11 -0
- data/app/views/posts/index.html.erb +13 -0
- data/app/views/posts/index.rss.builder +19 -0
- data/app/views/posts/show.html.erb +10 -0
- data/app/views/posts/tags.html.erb +18 -0
- data/app/views/shared/_recent_articles.html.erb +7 -0
- data/app/views/shared/_wordsmith_content_for.html.erb +7 -0
- data/lib/extensions/string.rb +20 -0
- data/lib/spree_wordsmith.rb +72 -0
- data/lib/spree_wordsmith_hooks.rb +8 -0
- data/lib/tasks/install.rake +33 -0
- data/lib/tasks/spree_wordsmith.rake +21 -0
- data/spec/controllers/admin/pages_controller_spec.rb +10 -0
- data/spec/controllers/admin/posts_controller_spec.rb +10 -0
- data/spec/controllers/posts_controller_spec.rb +27 -0
- data/spec/factories.rb +34 -0
- data/spec/models/posts_spec.rb +9 -0
- data/spec/spec_helper.rb +39 -0
- metadata +326 -0
@@ -0,0 +1,72 @@
|
|
1
|
+
require 'spree_core'
|
2
|
+
require 'spree_wordsmith_hooks'
|
3
|
+
require 'disqus'
|
4
|
+
require 'RedCloth'
|
5
|
+
|
6
|
+
module SpreeWordsmith
|
7
|
+
class Engine < Rails::Engine
|
8
|
+
|
9
|
+
config.autoload_paths += %W(#{config.root}/lib)
|
10
|
+
|
11
|
+
def self.activate
|
12
|
+
Dir.glob(File.join(File.dirname(__FILE__), "../app/**/*_decorator*.rb")) do |c|
|
13
|
+
Rails.env.production? ? require(c) : load(c)
|
14
|
+
end
|
15
|
+
|
16
|
+
if config = WORDSMITH_CONFIG[Rails.env.to_sym]
|
17
|
+
disqus_config = config[:disqus]
|
18
|
+
Disqus::defaults[:account], Disqus::defaults[:api_key], Disqus::defaults[:developer] =
|
19
|
+
disqus_config[:account], disqus_config[:api_key], disqus_config[:developer] if disqus_config && !disqus_config[:disable]
|
20
|
+
end
|
21
|
+
|
22
|
+
# Add your extension tab to the admin.
|
23
|
+
# Requires that you have defined an admin controller:
|
24
|
+
# app/controllers/admin/yourextension_controller
|
25
|
+
# and that you mapped your admin in config/routes
|
26
|
+
|
27
|
+
# make your helper avaliable in all views
|
28
|
+
Spree::BaseController.class_eval do
|
29
|
+
helper WordsmithHelper
|
30
|
+
|
31
|
+
before_filter :render_page_if_exists
|
32
|
+
|
33
|
+
def render_page_if_exists
|
34
|
+
# Using request.path allows us to override dynamic pages including
|
35
|
+
# the home page, product and taxon pages. params[:path] is only good
|
36
|
+
# for requests that get as far as content_controller. params[:path]
|
37
|
+
# query left in for backwards compatibility for slugs that don't start
|
38
|
+
# with a slash.
|
39
|
+
@page = Page.publish.find_by_permalink(params[:path]) if params[:path]
|
40
|
+
@page = Page.publish.find_by_permalink(request.path) unless @page
|
41
|
+
render :template => 'content/show' if @page
|
42
|
+
end
|
43
|
+
|
44
|
+
# # Returns post.title for use in the <title> element.
|
45
|
+
# def title_with_wordsmith_post_check
|
46
|
+
# return "#{@post.title} - #{Spree::Config[:site_name]}" if @post && !@post.title.blank?
|
47
|
+
# title_without_wordsmith_post_check
|
48
|
+
# end
|
49
|
+
# alias_method_chain :title, :wordsmith_post_check
|
50
|
+
end
|
51
|
+
|
52
|
+
AppConfiguration.class_eval do
|
53
|
+
preference :wordsmith_permalink, :string, :default => 'blog'
|
54
|
+
preference :wordsmith_posts_per_page, :integer, :default => 5
|
55
|
+
preference :wordsmith_posts_recent, :integer, :default => 15
|
56
|
+
preference :wordsmith_post_comment_default, :integer, :default => 1
|
57
|
+
preference :wordsmith_post_status_default, :integer, :default => 0
|
58
|
+
preference :wordsmith_page_status_default, :integer, :default => 0
|
59
|
+
preference :wordsmith_page_comment_default, :integer, :default => 0
|
60
|
+
preference :wordsmith_rss_description, :string, :default => 'description about your main post rss.'
|
61
|
+
end
|
62
|
+
|
63
|
+
User.class_eval do
|
64
|
+
has_many :ws_items
|
65
|
+
|
66
|
+
attr_accessible :display_name
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
config.to_prepare &method(:activate).to_proc
|
71
|
+
end
|
72
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
namespace :spree_wordsmith do
|
2
|
+
desc "Copies all migrations and assets (NOTE: This will be obsolete with Rails 3.1)"
|
3
|
+
task :install do
|
4
|
+
Rake::Task['spree_wordsmith:install:migrations'].invoke
|
5
|
+
Rake::Task['spree_wordsmith:install:config'].invoke
|
6
|
+
Rake::Task['spree_wordsmith:install:assets'].invoke
|
7
|
+
end
|
8
|
+
|
9
|
+
namespace :install do
|
10
|
+
desc "Copies all migrations (NOTE: This will be obsolete with Rails 3.1)"
|
11
|
+
task :migrations do
|
12
|
+
source = File.join(File.dirname(__FILE__), '..', '..', 'db')
|
13
|
+
destination = File.join(Rails.root, 'db')
|
14
|
+
Spree::FileUtilz.mirror_files(source, destination)
|
15
|
+
end
|
16
|
+
|
17
|
+
desc "Copies all assets (NOTE: This will be obsolete with Rails 3.1)"
|
18
|
+
task :assets do
|
19
|
+
source = File.join(File.dirname(__FILE__), '..', '..', 'public')
|
20
|
+
destination = File.join(Rails.root, 'public')
|
21
|
+
puts "INFO: Mirroring assets from #{source} to #{destination}"
|
22
|
+
Spree::FileUtilz.mirror_files(source, destination)
|
23
|
+
end
|
24
|
+
|
25
|
+
desc "Copies all configuration files (NOTE: This will be obsolete with Rails 3.1)"
|
26
|
+
task :config do
|
27
|
+
wordsmith_example_filename = 'spree_wordsmith.yml.example'
|
28
|
+
source = File.join(File.dirname(__FILE__), '..', '..', 'config', wordsmith_example_filename)
|
29
|
+
destination = File.join(Rails.root, 'config', wordsmith_example_filename)
|
30
|
+
Spree::FileUtilz.mirror_files(source, destination)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# add custom rake tasks here
|
2
|
+
namespace :spree_wordsmith do
|
3
|
+
desc "Bootstrap your database for Spree."
|
4
|
+
task :bootstrap => :environment do
|
5
|
+
# load initial database fixtures (in db/sample/*.yml) into the current environment's database
|
6
|
+
ActiveRecord::Base.establish_connection(RAILS_ENV.to_sym)
|
7
|
+
Dir.glob(File.join(WordsmithExtension.root, "db", 'sample', '*.{yml,csv}')).each do |fixture_file|
|
8
|
+
Fixtures.create_fixtures("#{WordsmithExtension.root}/db/sample", File.basename(fixture_file, '.*'))
|
9
|
+
end
|
10
|
+
end
|
11
|
+
namespace :less do
|
12
|
+
desc 'Compile the ebagoo less stylesheet files'
|
13
|
+
task :compile do
|
14
|
+
`lessc #{File.dirname(__FILE__)}/../../app/stylesheets/wordsmith.less #{Rails.root}/public/stylesheets/wordsmith.css`
|
15
|
+
end
|
16
|
+
desc 'Watch and compile changes of the ebagoo less stylesheet files'
|
17
|
+
task :watch do
|
18
|
+
`lessc #{File.dirname(__FILE__)}/../../app/stylesheets/wordsmith.less #{Rails.root}/public/stylesheets/wordsmith.css --watch`
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper'
|
2
|
+
|
3
|
+
describe Admin::PagesController do
|
4
|
+
|
5
|
+
#Delete this example and add some real ones
|
6
|
+
it "should use Admin::PagesController" do
|
7
|
+
controller.should be_an_instance_of(Admin::PagesController)
|
8
|
+
end
|
9
|
+
|
10
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper'
|
2
|
+
|
3
|
+
describe Admin::PostsController do
|
4
|
+
|
5
|
+
#Delete this example and add some real ones
|
6
|
+
it "should use Admin::PostsController" do
|
7
|
+
controller.should be_an_instance_of(Admin::PostsController)
|
8
|
+
end
|
9
|
+
|
10
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../spec_helper'
|
2
|
+
|
3
|
+
describe PostsController do
|
4
|
+
|
5
|
+
it "index action should render index template" do
|
6
|
+
get :index
|
7
|
+
response.should render_template(:index)
|
8
|
+
end
|
9
|
+
|
10
|
+
it "index action should render index template for rss with xml" do
|
11
|
+
get :index, :format => 'rss'
|
12
|
+
response.should render_template(:index)
|
13
|
+
response.content_type.should == 'application/rss+xml'
|
14
|
+
response.should have_tag('title', :text => Spree::Config[:site_name])
|
15
|
+
end
|
16
|
+
|
17
|
+
it "show action should render show template" do
|
18
|
+
get :show, :id => Post.first.to_param
|
19
|
+
response.should render_template(:show)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "show action should not find post when is not active" do
|
23
|
+
post = Factory(:post_draft)
|
24
|
+
lambda { get :show, :id => post.to_param }.should raise_error(ActiveRecord::RecordNotFound)
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
data/spec/factories.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
Factory.define(:user) do |record|
|
2
|
+
record.email { Faker::Internet.email }
|
3
|
+
record.login { Faker::Internet.user_name }
|
4
|
+
record.password "spree"
|
5
|
+
record.password_confirmation "spree"
|
6
|
+
|
7
|
+
#record.bill_address { Factory(:address) }
|
8
|
+
#record.ship_address { Factory(:address) }
|
9
|
+
end
|
10
|
+
|
11
|
+
|
12
|
+
Factory.define :post do |p|
|
13
|
+
p.title {Faker::Lorem.words(4)}
|
14
|
+
p.body {Faker::Lorem.paragraphs(4)}
|
15
|
+
p.user { |user| user.association(:user) }
|
16
|
+
end
|
17
|
+
|
18
|
+
Factory.define :post_draft, :parent => :post do |p|
|
19
|
+
p.is_active {true}
|
20
|
+
end
|
21
|
+
|
22
|
+
|
23
|
+
Factory.define :comment do |c|
|
24
|
+
c.name { Faker::Name.name}
|
25
|
+
c.email { Faker::Internet.email }
|
26
|
+
c.url "http://#{Faker::Internet.domain_name}"
|
27
|
+
c.post { |post| post.association(:post) }
|
28
|
+
c.body { Faker::Lorem.paragraphs(2) }
|
29
|
+
c.user_ip "1.1.1.1"
|
30
|
+
c.user_agent "MyAgent"
|
31
|
+
c.referrer "referrer"
|
32
|
+
end
|
33
|
+
|
34
|
+
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
unless defined? SPREE_ROOT
|
2
|
+
ENV["RAILS_ENV"] = "test"
|
3
|
+
case
|
4
|
+
when ENV["SPREE_ENV_FILE"]
|
5
|
+
require ENV["SPREE_ENV_FILE"]
|
6
|
+
when File.dirname(__FILE__) =~ %r{vendor/SPREE/vendor/extensions}
|
7
|
+
require "#{File.expand_path(File.dirname(__FILE__) + "/../../../../../../")}/config/environment"
|
8
|
+
else
|
9
|
+
require "#{File.expand_path(File.dirname(__FILE__) + "/../../../../")}/config/environment"
|
10
|
+
end
|
11
|
+
end
|
12
|
+
require "#{SPREE_ROOT}/spec/spec_helper"
|
13
|
+
|
14
|
+
if File.directory?(File.dirname(__FILE__) + "/scenarios")
|
15
|
+
Scenario.load_paths.unshift File.dirname(__FILE__) + "/scenarios"
|
16
|
+
end
|
17
|
+
if File.directory?(File.dirname(__FILE__) + "/matchers")
|
18
|
+
Dir[File.dirname(__FILE__) + "/matchers/*.rb"].each {|file| require file }
|
19
|
+
end
|
20
|
+
|
21
|
+
require File.expand_path(File.dirname(__FILE__) + "/factories")
|
22
|
+
|
23
|
+
Spec::Runner.configure do |config|
|
24
|
+
# config.use_transactional_fixtures = true
|
25
|
+
# config.use_instantiated_fixtures = false
|
26
|
+
# config.fixture_path = RAILS_ROOT + '/spec/fixtures'
|
27
|
+
|
28
|
+
# You can declare fixtures for each behaviour like this:
|
29
|
+
# describe "...." do
|
30
|
+
# fixtures :table_a, :table_b
|
31
|
+
#
|
32
|
+
# Alternatively, if you prefer to declare them only once, you can
|
33
|
+
# do so here, like so ...
|
34
|
+
#
|
35
|
+
# config.global_fixtures = :table_a, :table_b
|
36
|
+
#
|
37
|
+
# If you declare global fixtures, be aware that they will be declared
|
38
|
+
# for all of your examples, even those that don't use them.
|
39
|
+
end
|
metadata
ADDED
@@ -0,0 +1,326 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: spree_wordsmith
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease:
|
5
|
+
version: 0.1.0
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Tonka Park
|
9
|
+
- Gyorgy Frivolt
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
|
14
|
+
date: 2011-03-03 00:00:00 +01:00
|
15
|
+
default_executable:
|
16
|
+
dependencies:
|
17
|
+
- !ruby/object:Gem::Dependency
|
18
|
+
name: spree_wordsmith
|
19
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
20
|
+
none: false
|
21
|
+
requirements:
|
22
|
+
- - ">="
|
23
|
+
- !ruby/object:Gem::Version
|
24
|
+
version: "0"
|
25
|
+
type: :runtime
|
26
|
+
prerelease: false
|
27
|
+
version_requirements: *id001
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: rspec
|
30
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
31
|
+
none: false
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: "0"
|
36
|
+
type: :development
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: *id002
|
39
|
+
- !ruby/object:Gem::Dependency
|
40
|
+
name: factory_girl
|
41
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: "0"
|
47
|
+
type: :development
|
48
|
+
prerelease: false
|
49
|
+
version_requirements: *id003
|
50
|
+
- !ruby/object:Gem::Dependency
|
51
|
+
name: rspec
|
52
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
53
|
+
none: false
|
54
|
+
requirements:
|
55
|
+
- - ">="
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: "0"
|
58
|
+
type: :development
|
59
|
+
prerelease: false
|
60
|
+
version_requirements: *id004
|
61
|
+
- !ruby/object:Gem::Dependency
|
62
|
+
name: factory_girl
|
63
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
64
|
+
none: false
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: "0"
|
69
|
+
type: :development
|
70
|
+
prerelease: false
|
71
|
+
version_requirements: *id005
|
72
|
+
- !ruby/object:Gem::Dependency
|
73
|
+
name: rspec
|
74
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
75
|
+
none: false
|
76
|
+
requirements:
|
77
|
+
- - ">="
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: "0"
|
80
|
+
type: :development
|
81
|
+
prerelease: false
|
82
|
+
version_requirements: *id006
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: factory_girl
|
85
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
86
|
+
none: false
|
87
|
+
requirements:
|
88
|
+
- - ">="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: "0"
|
91
|
+
type: :development
|
92
|
+
prerelease: false
|
93
|
+
version_requirements: *id007
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: rspec
|
96
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ">="
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: "0"
|
102
|
+
type: :development
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: *id008
|
105
|
+
- !ruby/object:Gem::Dependency
|
106
|
+
name: factory_girl
|
107
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
108
|
+
none: false
|
109
|
+
requirements:
|
110
|
+
- - ">="
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: "0"
|
113
|
+
type: :development
|
114
|
+
prerelease: false
|
115
|
+
version_requirements: *id009
|
116
|
+
- !ruby/object:Gem::Dependency
|
117
|
+
name: rspec
|
118
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
119
|
+
none: false
|
120
|
+
requirements:
|
121
|
+
- - ">="
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: "0"
|
124
|
+
type: :development
|
125
|
+
prerelease: false
|
126
|
+
version_requirements: *id010
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
name: factory_girl
|
129
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
130
|
+
none: false
|
131
|
+
requirements:
|
132
|
+
- - ">="
|
133
|
+
- !ruby/object:Gem::Version
|
134
|
+
version: "0"
|
135
|
+
type: :development
|
136
|
+
prerelease: false
|
137
|
+
version_requirements: *id011
|
138
|
+
- !ruby/object:Gem::Dependency
|
139
|
+
name: rspec
|
140
|
+
requirement: &id012 !ruby/object:Gem::Requirement
|
141
|
+
none: false
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: "0"
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: *id012
|
149
|
+
- !ruby/object:Gem::Dependency
|
150
|
+
name: factory_girl
|
151
|
+
requirement: &id013 !ruby/object:Gem::Requirement
|
152
|
+
none: false
|
153
|
+
requirements:
|
154
|
+
- - ">="
|
155
|
+
- !ruby/object:Gem::Version
|
156
|
+
version: "0"
|
157
|
+
type: :development
|
158
|
+
prerelease: false
|
159
|
+
version_requirements: *id013
|
160
|
+
- !ruby/object:Gem::Dependency
|
161
|
+
name: spree_core
|
162
|
+
requirement: &id014 !ruby/object:Gem::Requirement
|
163
|
+
none: false
|
164
|
+
requirements:
|
165
|
+
- - ~>
|
166
|
+
- !ruby/object:Gem::Version
|
167
|
+
version: 0.40.0
|
168
|
+
type: :runtime
|
169
|
+
prerelease: false
|
170
|
+
version_requirements: *id014
|
171
|
+
- !ruby/object:Gem::Dependency
|
172
|
+
name: spree_auth
|
173
|
+
requirement: &id015 !ruby/object:Gem::Requirement
|
174
|
+
none: false
|
175
|
+
requirements:
|
176
|
+
- - ~>
|
177
|
+
- !ruby/object:Gem::Version
|
178
|
+
version: 0.40.0
|
179
|
+
type: :runtime
|
180
|
+
prerelease: false
|
181
|
+
version_requirements: *id015
|
182
|
+
- !ruby/object:Gem::Dependency
|
183
|
+
name: is_taggable
|
184
|
+
requirement: &id016 !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
186
|
+
requirements:
|
187
|
+
- - ~>
|
188
|
+
- !ruby/object:Gem::Version
|
189
|
+
version: 0.1.0
|
190
|
+
type: :runtime
|
191
|
+
prerelease: false
|
192
|
+
version_requirements: *id016
|
193
|
+
- !ruby/object:Gem::Dependency
|
194
|
+
name: RedCloth
|
195
|
+
requirement: &id017 !ruby/object:Gem::Requirement
|
196
|
+
none: false
|
197
|
+
requirements:
|
198
|
+
- - ~>
|
199
|
+
- !ruby/object:Gem::Version
|
200
|
+
version: 4.2.3
|
201
|
+
type: :runtime
|
202
|
+
prerelease: false
|
203
|
+
version_requirements: *id017
|
204
|
+
- !ruby/object:Gem::Dependency
|
205
|
+
name: disqus
|
206
|
+
requirement: &id018 !ruby/object:Gem::Requirement
|
207
|
+
none: false
|
208
|
+
requirements:
|
209
|
+
- - ~>
|
210
|
+
- !ruby/object:Gem::Version
|
211
|
+
version: 1.0.4
|
212
|
+
type: :runtime
|
213
|
+
prerelease: false
|
214
|
+
version_requirements: *id018
|
215
|
+
- !ruby/object:Gem::Dependency
|
216
|
+
name: rspec
|
217
|
+
requirement: &id019 !ruby/object:Gem::Requirement
|
218
|
+
none: false
|
219
|
+
requirements:
|
220
|
+
- - ">="
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
version: "0"
|
223
|
+
type: :development
|
224
|
+
prerelease: false
|
225
|
+
version_requirements: *id019
|
226
|
+
- !ruby/object:Gem::Dependency
|
227
|
+
name: factory_girl
|
228
|
+
requirement: &id020 !ruby/object:Gem::Requirement
|
229
|
+
none: false
|
230
|
+
requirements:
|
231
|
+
- - ">="
|
232
|
+
- !ruby/object:Gem::Version
|
233
|
+
version: "0"
|
234
|
+
type: :development
|
235
|
+
prerelease: false
|
236
|
+
version_requirements: *id020
|
237
|
+
description: Have blog posts and pages with information about your spree shop!
|
238
|
+
email: fifigyuri@gmail.com
|
239
|
+
executables: []
|
240
|
+
|
241
|
+
extensions: []
|
242
|
+
|
243
|
+
extra_rdoc_files:
|
244
|
+
- README.markdown
|
245
|
+
files:
|
246
|
+
- app/controllers/admin/pages_controller.rb
|
247
|
+
- app/controllers/admin/posts_controller.rb
|
248
|
+
- app/controllers/admin/wordsmith_settings_controller.rb
|
249
|
+
- app/controllers/pages_controller.rb
|
250
|
+
- app/controllers/posts_controller.rb
|
251
|
+
- app/helpers/wordsmith_helper.rb
|
252
|
+
- app/models/ability_decorator.rb
|
253
|
+
- app/models/page.rb
|
254
|
+
- app/models/post.rb
|
255
|
+
- app/models/ws_item.rb
|
256
|
+
- app/stylesheets/wordsmith.less
|
257
|
+
- app/views/admin/pages/_form.html.erb
|
258
|
+
- app/views/admin/pages/edit.html.erb
|
259
|
+
- app/views/admin/pages/index.html.erb
|
260
|
+
- app/views/admin/pages/new.html.erb
|
261
|
+
- app/views/admin/posts/_form.html.erb
|
262
|
+
- app/views/admin/posts/edit.html.erb
|
263
|
+
- app/views/admin/posts/index.html.erb
|
264
|
+
- app/views/admin/posts/new.html.erb
|
265
|
+
- app/views/admin/posts/show.html.erb
|
266
|
+
- app/views/admin/shared/_wordsmith_sub_menu.html.erb
|
267
|
+
- app/views/admin/users/_display_name.html.erb
|
268
|
+
- app/views/admin/wordsmith_settings/edit.html.erb
|
269
|
+
- app/views/admin/wordsmith_settings/show.html.erb
|
270
|
+
- app/views/content/show.html.erb
|
271
|
+
- app/views/pages/index.html.erb
|
272
|
+
- app/views/pages/show.html.erb
|
273
|
+
- app/views/posts/_post.html.erb
|
274
|
+
- app/views/posts/index.html.erb
|
275
|
+
- app/views/posts/index.rss.builder
|
276
|
+
- app/views/posts/show.html.erb
|
277
|
+
- app/views/posts/tags.html.erb
|
278
|
+
- app/views/shared/_recent_articles.html.erb
|
279
|
+
- app/views/shared/_wordsmith_content_for.html.erb
|
280
|
+
- lib/extensions/string.rb
|
281
|
+
- lib/spree_wordsmith.rb
|
282
|
+
- lib/spree_wordsmith_hooks.rb
|
283
|
+
- lib/tasks/install.rake
|
284
|
+
- lib/tasks/spree_wordsmith.rake
|
285
|
+
- README.markdown
|
286
|
+
- spec/controllers/admin/pages_controller_spec.rb
|
287
|
+
- spec/controllers/admin/posts_controller_spec.rb
|
288
|
+
- spec/controllers/posts_controller_spec.rb
|
289
|
+
- spec/factories.rb
|
290
|
+
- spec/models/posts_spec.rb
|
291
|
+
- spec/spec_helper.rb
|
292
|
+
has_rdoc: true
|
293
|
+
homepage: http://github.com/fifigyuri/spree-wordsmith
|
294
|
+
licenses: []
|
295
|
+
|
296
|
+
post_install_message:
|
297
|
+
rdoc_options: []
|
298
|
+
|
299
|
+
require_paths:
|
300
|
+
- lib
|
301
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
302
|
+
none: false
|
303
|
+
requirements:
|
304
|
+
- - ">="
|
305
|
+
- !ruby/object:Gem::Version
|
306
|
+
version: 1.8.7
|
307
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
308
|
+
none: false
|
309
|
+
requirements:
|
310
|
+
- - ">="
|
311
|
+
- !ruby/object:Gem::Version
|
312
|
+
version: "0"
|
313
|
+
requirements:
|
314
|
+
- none
|
315
|
+
rubyforge_project:
|
316
|
+
rubygems_version: 1.5.2
|
317
|
+
signing_key:
|
318
|
+
specification_version: 3
|
319
|
+
summary: A blog/cms extension for spree.
|
320
|
+
test_files:
|
321
|
+
- spec/controllers/admin/pages_controller_spec.rb
|
322
|
+
- spec/controllers/admin/posts_controller_spec.rb
|
323
|
+
- spec/controllers/posts_controller_spec.rb
|
324
|
+
- spec/factories.rb
|
325
|
+
- spec/models/posts_spec.rb
|
326
|
+
- spec/spec_helper.rb
|