content_engine 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/.gitignore +4 -0
- data/Gemfile +40 -0
- data/README.md +43 -0
- data/Rakefile +86 -0
- data/VERSION +1 -0
- data/app/controllers/content_engine/articles_controller.rb +54 -0
- data/app/controllers/content_engine/pages_controller.rb +76 -0
- data/app/controllers/content_engine_controller.rb +14 -0
- data/app/helpers/application_helper.rb +2 -0
- data/app/models/article.rb +29 -0
- data/app/models/content.rb +64 -0
- data/app/models/page.rb +40 -0
- data/app/models/site.rb +26 -0
- data/app/models/tag.rb +53 -0
- data/app/models/user.rb +5 -0
- data/app/views/content_engine/articles/_form.erb +8 -0
- data/app/views/content_engine/articles/edit.html.erb +7 -0
- data/app/views/content_engine/articles/index.html.erb +10 -0
- data/app/views/content_engine/articles/new.html.erb +6 -0
- data/app/views/content_engine/articles/show.html.erb +9 -0
- data/app/views/content_engine/pages/_form.erb +8 -0
- data/app/views/content_engine/pages/edit.html.erb +7 -0
- data/app/views/content_engine/pages/index.html.erb +10 -0
- data/app/views/content_engine/pages/new.html.erb +6 -0
- data/app/views/content_engine/pages/show.html.erb +9 -0
- data/app/views/layouts/application.html.erb +16 -0
- data/config/application.rb +1 -0
- data/config/locales/en.yml +5 -0
- data/config/routes.rb +25 -0
- data/content_engine.gemspec +167 -0
- data/db/migrate/20100225105011_create_contents.rb +22 -0
- data/db/migrate/20100225105903_create_users.rb +8 -0
- data/db/migrate/20100225110024_create_sites.rb +15 -0
- data/db/migrate/20100225110037_create_memberships.rb +12 -0
- data/db/migrate/20100225112236_acts_as_taggable_on.rb +26 -0
- data/db/schema.rb +58 -0
- data/lib/content_engine.rb +24 -0
- data/lib/tasks/content_engine.rake +24 -0
- data/spec/blueprint.rb +41 -0
- data/spec/models/article_spec.rb +56 -0
- data/spec/models/page_spec.rb +158 -0
- data/spec/models/site_spec.rb +32 -0
- data/spec/rails_app/.gitignore +4 -0
- data/spec/rails_app/Rakefile +10 -0
- data/spec/rails_app/app/controllers/admins_controller.rb +6 -0
- data/spec/rails_app/app/controllers/application_controller.rb +6 -0
- data/spec/rails_app/app/controllers/home_controller.rb +4 -0
- data/spec/rails_app/app/controllers/sessions_controller.rb +6 -0
- data/spec/rails_app/app/controllers/users_controller.rb +12 -0
- data/spec/rails_app/app/helpers/application_helper.rb +3 -0
- data/spec/rails_app/app/views/home/index.html.erb +1 -0
- data/spec/rails_app/app/views/layouts/application.html.erb +19 -0
- data/spec/rails_app/config/application.rb +30 -0
- data/spec/rails_app/config/boot.rb +9 -0
- data/spec/rails_app/config/database.yml +16 -0
- data/spec/rails_app/config/environment.rb +5 -0
- data/spec/rails_app/config/environments/development.rb +19 -0
- data/spec/rails_app/config/environments/production.rb +33 -0
- data/spec/rails_app/config/environments/test.rb +29 -0
- data/spec/rails_app/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/rails_app/config/initializers/cookie_verification_secret.rb +7 -0
- data/spec/rails_app/config/initializers/inflections.rb +2 -0
- data/spec/rails_app/config/initializers/session_store.rb +15 -0
- data/spec/rails_app/config/routes.rb +21 -0
- data/spec/rails_app/config.ru +4 -0
- data/spec/rails_app/db/migrate/20100225105011_create_contents.rb +22 -0
- data/spec/rails_app/db/migrate/20100225105903_create_users.rb +8 -0
- data/spec/rails_app/db/migrate/20100225110024_create_sites.rb +15 -0
- data/spec/rails_app/db/migrate/20100225110037_create_memberships.rb +12 -0
- data/spec/rails_app/db/migrate/20100225112236_acts_as_taggable_on.rb +26 -0
- data/spec/rails_app/db/schema.rb +59 -0
- data/spec/rails_app/public/404.html +26 -0
- data/spec/rails_app/public/422.html +26 -0
- data/spec/rails_app/public/500.html +26 -0
- data/spec/rails_app/public/favicon.ico +0 -0
- data/spec/rails_app/public/images/rails.png +0 -0
- data/spec/rails_app/public/javascripts/application.js +2 -0
- data/spec/rails_app/public/javascripts/controls.js +963 -0
- data/spec/rails_app/public/javascripts/dragdrop.js +973 -0
- data/spec/rails_app/public/javascripts/effects.js +1128 -0
- data/spec/rails_app/public/javascripts/prototype.js +4320 -0
- data/spec/rails_app/public/javascripts/rails.js +110 -0
- data/spec/rails_app/public/robots.txt +5 -0
- data/spec/rails_app/public/stylesheets/.gitkeep +0 -0
- data/spec/rails_app/script/rails +10 -0
- data/spec/requests/user_manage_articles_spec.rb +85 -0
- data/spec/requests/user_manage_pages_spec.rb +92 -0
- data/spec/requests/webrat.log +17 -0
- data/spec/spec.opts +2 -0
- data/spec/spec_helper.rb +36 -0
- metadata +226 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
document.observe("dom:loaded", function() {
|
|
2
|
+
var authToken = $$('meta[name=csrf-token]').first().readAttribute('content'),
|
|
3
|
+
authParam = $$('meta[name=csrf-param]').first().readAttribute('content'),
|
|
4
|
+
formTemplate = '<form method="#{method}" action="#{action}">\
|
|
5
|
+
#{realmethod}<input name="#{param}" value="#{token}" type="hidden">\
|
|
6
|
+
</form>',
|
|
7
|
+
realmethodTemplate = '<input name="_method" value="#{method}" type="hidden">';
|
|
8
|
+
|
|
9
|
+
function handleRemote(element) {
|
|
10
|
+
var method, url, params;
|
|
11
|
+
|
|
12
|
+
if (element.tagName.toLowerCase() == 'form') {
|
|
13
|
+
method = element.readAttribute('method') || 'post';
|
|
14
|
+
url = element.readAttribute('action');
|
|
15
|
+
params = element.serialize(true);
|
|
16
|
+
} else {
|
|
17
|
+
method = element.readAttribute('data-method') || 'get';
|
|
18
|
+
// TODO: data-url support is going away, just use href
|
|
19
|
+
url = element.readAttribute('data-url') || element.readAttribute('href');
|
|
20
|
+
params = {};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
var event = element.fire("ajax:before");
|
|
24
|
+
if (event.stopped) return false;
|
|
25
|
+
|
|
26
|
+
new Ajax.Request(url, {
|
|
27
|
+
method: method,
|
|
28
|
+
parameters: params,
|
|
29
|
+
asynchronous: true,
|
|
30
|
+
evalScripts: true,
|
|
31
|
+
|
|
32
|
+
onLoading: function(request) { element.fire("ajax:loading", {request: request}); },
|
|
33
|
+
onLoaded: function(request) { element.fire("ajax:loaded", {request: request}); },
|
|
34
|
+
onInteractive: function(request) { element.fire("ajax:interactive", {request: request}); },
|
|
35
|
+
onComplete: function(request) { element.fire("ajax:complete", {request: request}); },
|
|
36
|
+
onSuccess: function(request) { element.fire("ajax:success", {request: request}); },
|
|
37
|
+
onFailure: function(request) { element.fire("ajax:failure", {request: request}); }
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
element.fire("ajax:after");
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
$(document.body).observe("click", function(event) {
|
|
44
|
+
var message = event.element().readAttribute('data-confirm');
|
|
45
|
+
if (message && !confirm(message)) {
|
|
46
|
+
event.stop();
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
var element = event.findElement("a[data-remote=true]");
|
|
51
|
+
if (element) {
|
|
52
|
+
handleRemote(element);
|
|
53
|
+
event.stop();
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
var element = event.findElement("a[data-method]");
|
|
57
|
+
if (element && element.readAttribute('data-remote') != 'true') {
|
|
58
|
+
var method = element.readAttribute('data-method'),
|
|
59
|
+
piggyback = method.toLowerCase() != 'post',
|
|
60
|
+
formHTML = formTemplate.interpolate({
|
|
61
|
+
method: 'POST',
|
|
62
|
+
realmethod: piggyback ? realmethodTemplate.interpolate({ method: method }) : '',
|
|
63
|
+
action: element.readAttribute('href'),
|
|
64
|
+
token: authToken,
|
|
65
|
+
param: authParam
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
var form = new Element('div').update(formHTML).down().hide();
|
|
69
|
+
this.insert({ bottom: form });
|
|
70
|
+
|
|
71
|
+
form.submit();
|
|
72
|
+
event.stop();
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
// TODO: I don't think submit bubbles in IE
|
|
77
|
+
$(document.body).observe("submit", function(event) {
|
|
78
|
+
var message = event.element().readAttribute('data-confirm');
|
|
79
|
+
if (message && !confirm(message)) {
|
|
80
|
+
event.stop();
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
var inputs = event.element().select("input[type=submit][data-disable-with]");
|
|
85
|
+
inputs.each(function(input) {
|
|
86
|
+
input.disabled = true;
|
|
87
|
+
input.writeAttribute('data-original-value', input.value);
|
|
88
|
+
input.value = input.readAttribute('data-disable-with');
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
var element = event.findElement("form[data-remote=true]");
|
|
92
|
+
if (element) {
|
|
93
|
+
handleRemote(element);
|
|
94
|
+
event.stop();
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
$(document.body).observe("ajax:complete", function(event) {
|
|
99
|
+
var element = event.element();
|
|
100
|
+
|
|
101
|
+
if (element.tagName.toLowerCase() == 'form') {
|
|
102
|
+
var inputs = element.select("input[type=submit][disabled=true][data-disable-with]");
|
|
103
|
+
inputs.each(function(input) {
|
|
104
|
+
input.value = input.readAttribute('data-original-value');
|
|
105
|
+
input.writeAttribute('data-original-value', null);
|
|
106
|
+
input.disabled = false;
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
});
|
|
File without changes
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
|
|
3
|
+
|
|
4
|
+
ENV_PATH = File.expand_path('../../config/environment', __FILE__)
|
|
5
|
+
BOOT_PATH = File.expand_path('../../config/boot', __FILE__)
|
|
6
|
+
APP_PATH = File.expand_path('../../config/application', __FILE__)
|
|
7
|
+
ROOT_PATH = File.expand_path('../..', __FILE__)
|
|
8
|
+
|
|
9
|
+
require BOOT_PATH
|
|
10
|
+
require 'rails/commands'
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe "Manage articles" do
|
|
4
|
+
|
|
5
|
+
before do
|
|
6
|
+
@site = Site.make do |s|
|
|
7
|
+
s.articles.make :title => 'news announcement'
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
@article = @site.articles.first
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
it "View all articles" do
|
|
14
|
+
# When
|
|
15
|
+
visit articles_path
|
|
16
|
+
|
|
17
|
+
# Then
|
|
18
|
+
should_see "All articles"
|
|
19
|
+
should_see "news announcement"
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
it "View a single article" do
|
|
23
|
+
# Given
|
|
24
|
+
visit articles_path
|
|
25
|
+
click_link @article.title
|
|
26
|
+
|
|
27
|
+
# Then
|
|
28
|
+
should_see @article.title
|
|
29
|
+
should_see @article.body_source
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
it "Create a new article" do
|
|
33
|
+
visit articles_path
|
|
34
|
+
click_link 'New article'
|
|
35
|
+
should_see 'New Article'
|
|
36
|
+
|
|
37
|
+
# When
|
|
38
|
+
fill_in "Title", :with => "My awesome about article"
|
|
39
|
+
fill_in "Body", :with => "Hello world"
|
|
40
|
+
click_button 'Create article'
|
|
41
|
+
|
|
42
|
+
# Then
|
|
43
|
+
should_see 'Article was successfully created'
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
it "Update a article" do
|
|
47
|
+
visit articles_path
|
|
48
|
+
click_link @article.title
|
|
49
|
+
click_link "Edit"
|
|
50
|
+
|
|
51
|
+
# When
|
|
52
|
+
fill_in "Title", :with => "My awesome about article update"
|
|
53
|
+
fill_in "Body", :with => "Hello world update"
|
|
54
|
+
click_button "Update article"
|
|
55
|
+
|
|
56
|
+
# Then
|
|
57
|
+
should_see 'Article was successfully update'
|
|
58
|
+
should_see 'Hello world update'
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
it "Publish a article" do
|
|
62
|
+
visit articles_path
|
|
63
|
+
click_link @article.title
|
|
64
|
+
click_link "Edit"
|
|
65
|
+
|
|
66
|
+
select 'publish', :from => 'Status'
|
|
67
|
+
click_button "Update article"
|
|
68
|
+
|
|
69
|
+
should_see "Article was successfully update"
|
|
70
|
+
should_see "Published at"
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
it "delete a article" do
|
|
74
|
+
article_title = @article.title.dup
|
|
75
|
+
|
|
76
|
+
visit articles_path
|
|
77
|
+
click_link article_title
|
|
78
|
+
click_link "Edit"
|
|
79
|
+
|
|
80
|
+
click_link "Destroy"
|
|
81
|
+
|
|
82
|
+
# Rails 3 delete link are js submission
|
|
83
|
+
# response.should_not contain(article_title)
|
|
84
|
+
end
|
|
85
|
+
end
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe "Manage pages" do
|
|
4
|
+
|
|
5
|
+
before do
|
|
6
|
+
@site = Site.make do |s|
|
|
7
|
+
s.pages.make :title => 'homepage'
|
|
8
|
+
s.pages.make :title => 'about us'
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
@page = @site.pages.first
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
it "View all tasks items" do
|
|
16
|
+
# Given
|
|
17
|
+
|
|
18
|
+
visit pages_path
|
|
19
|
+
# When
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# Then
|
|
23
|
+
should_see "All pages"
|
|
24
|
+
should_see "homepage"
|
|
25
|
+
should_see "about us"
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
it "View a single page" do
|
|
29
|
+
|
|
30
|
+
# Given
|
|
31
|
+
visit pages_path
|
|
32
|
+
click_link @page.title
|
|
33
|
+
|
|
34
|
+
# Then
|
|
35
|
+
should_see @page.title
|
|
36
|
+
should_see @page.body_source
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
it "Create a new page" do
|
|
40
|
+
visit pages_path
|
|
41
|
+
click_link 'New page'
|
|
42
|
+
should_see 'New page'
|
|
43
|
+
|
|
44
|
+
# When
|
|
45
|
+
fill_in "Title", :with => "My awesome about page"
|
|
46
|
+
fill_in "Body", :with => "Hello world"
|
|
47
|
+
click_button 'Create page'
|
|
48
|
+
|
|
49
|
+
# Then
|
|
50
|
+
should_see 'Page was successfully created'
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
it "Update a page" do
|
|
54
|
+
visit pages_path
|
|
55
|
+
click_link @page.title
|
|
56
|
+
click_link "Edit"
|
|
57
|
+
|
|
58
|
+
# When
|
|
59
|
+
fill_in "Title", :with => "My awesome about page update"
|
|
60
|
+
fill_in "Body", :with => "Hello world update"
|
|
61
|
+
click_button "Update page"
|
|
62
|
+
|
|
63
|
+
# Then
|
|
64
|
+
should_see 'Page was successfully update'
|
|
65
|
+
should_see 'Hello world update'
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
it "Publish a page" do
|
|
69
|
+
visit pages_path
|
|
70
|
+
click_link @page.title
|
|
71
|
+
click_link "Edit"
|
|
72
|
+
|
|
73
|
+
select 'publish', :from => 'Status'
|
|
74
|
+
click_button "Update page"
|
|
75
|
+
|
|
76
|
+
should_see "Page was successfully update"
|
|
77
|
+
should_see "Published at"
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
it "delete a page" do
|
|
81
|
+
page_title = @page.title.dup
|
|
82
|
+
|
|
83
|
+
visit pages_path
|
|
84
|
+
click_link page_title
|
|
85
|
+
click_link "Edit"
|
|
86
|
+
|
|
87
|
+
click_link "Destroy"
|
|
88
|
+
|
|
89
|
+
# Rails 3 delete link are js submission
|
|
90
|
+
# response.should_not contain(page_title)
|
|
91
|
+
end
|
|
92
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Logfile created on Fri Feb 26 14:04:18 +1100 2010 by /
|
|
2
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
3
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
4
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
5
|
+
REQUESTING PAGE: GET /pages/1 with {} and HTTP headers {}
|
|
6
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
7
|
+
REQUESTING PAGE: GET /pages/1 with {} and HTTP headers {}
|
|
8
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
9
|
+
REQUESTING PAGE: GET /pages/1 with {} and HTTP headers {}
|
|
10
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
11
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
12
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
13
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
14
|
+
REQUESTING PAGE: GET /pages/1 with {} and HTTP headers {"HTTP_REFERER"=>"/pages"}
|
|
15
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
16
|
+
REQUESTING PAGE: GET /pages with {} and HTTP headers {}
|
|
17
|
+
REQUESTING PAGE: GET /pages/1 with {} and HTTP headers {"HTTP_REFERER"=>"/pages"}
|
data/spec/spec.opts
ADDED
data/spec/spec_helper.rb
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# This file is copied to ~/spec when you run 'ruby script/generate rspec'
|
|
2
|
+
# from the project root directory.
|
|
3
|
+
ENV["RAILS_ENV"] ||= 'test'
|
|
4
|
+
|
|
5
|
+
require File.expand_path('../rails_app/config/application', __FILE__)
|
|
6
|
+
require File.expand_path('../rails_app/config/environment', __FILE__)
|
|
7
|
+
|
|
8
|
+
# Run migration
|
|
9
|
+
ActiveRecord::Migration.verbose = false
|
|
10
|
+
require File.expand_path('../../db/schema', __FILE__)
|
|
11
|
+
|
|
12
|
+
require 'rspec/rails'
|
|
13
|
+
# Requires supporting files with custom matchers and macros, etc,
|
|
14
|
+
# in ./support/ and its subdirectories.
|
|
15
|
+
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
|
16
|
+
|
|
17
|
+
# Load ContentEngine
|
|
18
|
+
require 'content_engine'
|
|
19
|
+
|
|
20
|
+
Rspec.configure do |config|
|
|
21
|
+
require File.dirname(__FILE__) + '/blueprint'
|
|
22
|
+
|
|
23
|
+
# Remove this line if you don't want Rspec's should and should_not
|
|
24
|
+
# methods or matchers
|
|
25
|
+
require 'rspec/expectations'
|
|
26
|
+
config.include Rspec::Matchers
|
|
27
|
+
|
|
28
|
+
# == Mock Framework
|
|
29
|
+
config.mock_with :rspec
|
|
30
|
+
|
|
31
|
+
include Webrat::Methods
|
|
32
|
+
|
|
33
|
+
def should_see (pattern)
|
|
34
|
+
response.should contain(pattern)
|
|
35
|
+
end
|
|
36
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: content_engine
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
prerelease: false
|
|
5
|
+
segments:
|
|
6
|
+
- 0
|
|
7
|
+
- 1
|
|
8
|
+
- 0
|
|
9
|
+
version: 0.1.0
|
|
10
|
+
platform: ruby
|
|
11
|
+
authors:
|
|
12
|
+
- Taylor Luk
|
|
13
|
+
autorequire:
|
|
14
|
+
bindir: bin
|
|
15
|
+
cert_chain: []
|
|
16
|
+
|
|
17
|
+
date: 2010-02-28 00:00:00 +11:00
|
|
18
|
+
default_executable:
|
|
19
|
+
dependencies:
|
|
20
|
+
- !ruby/object:Gem::Dependency
|
|
21
|
+
name: will_paginate
|
|
22
|
+
prerelease: false
|
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
|
24
|
+
requirements:
|
|
25
|
+
- - ">="
|
|
26
|
+
- !ruby/object:Gem::Version
|
|
27
|
+
segments:
|
|
28
|
+
- 0
|
|
29
|
+
version: "0"
|
|
30
|
+
type: :runtime
|
|
31
|
+
version_requirements: *id001
|
|
32
|
+
- !ruby/object:Gem::Dependency
|
|
33
|
+
name: rdiscount
|
|
34
|
+
prerelease: false
|
|
35
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
|
36
|
+
requirements:
|
|
37
|
+
- - ">="
|
|
38
|
+
- !ruby/object:Gem::Version
|
|
39
|
+
segments:
|
|
40
|
+
- 0
|
|
41
|
+
version: "0"
|
|
42
|
+
type: :runtime
|
|
43
|
+
version_requirements: *id002
|
|
44
|
+
- !ruby/object:Gem::Dependency
|
|
45
|
+
name: formtastic
|
|
46
|
+
prerelease: false
|
|
47
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
|
48
|
+
requirements:
|
|
49
|
+
- - ">="
|
|
50
|
+
- !ruby/object:Gem::Version
|
|
51
|
+
segments:
|
|
52
|
+
- 0
|
|
53
|
+
version: "0"
|
|
54
|
+
type: :runtime
|
|
55
|
+
version_requirements: *id003
|
|
56
|
+
- !ruby/object:Gem::Dependency
|
|
57
|
+
name: rspec
|
|
58
|
+
prerelease: false
|
|
59
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
|
60
|
+
requirements:
|
|
61
|
+
- - ">="
|
|
62
|
+
- !ruby/object:Gem::Version
|
|
63
|
+
segments:
|
|
64
|
+
- 1
|
|
65
|
+
- 2
|
|
66
|
+
- 9
|
|
67
|
+
version: 1.2.9
|
|
68
|
+
type: :development
|
|
69
|
+
version_requirements: *id004
|
|
70
|
+
description: Extracted from shop2, site-rest
|
|
71
|
+
email: taylor.luk@idealian.net
|
|
72
|
+
executables: []
|
|
73
|
+
|
|
74
|
+
extensions: []
|
|
75
|
+
|
|
76
|
+
extra_rdoc_files:
|
|
77
|
+
- README.md
|
|
78
|
+
files:
|
|
79
|
+
- .gitignore
|
|
80
|
+
- Gemfile
|
|
81
|
+
- README.md
|
|
82
|
+
- Rakefile
|
|
83
|
+
- VERSION
|
|
84
|
+
- app/controllers/content_engine/articles_controller.rb
|
|
85
|
+
- app/controllers/content_engine/pages_controller.rb
|
|
86
|
+
- app/controllers/content_engine_controller.rb
|
|
87
|
+
- app/helpers/application_helper.rb
|
|
88
|
+
- app/models/article.rb
|
|
89
|
+
- app/models/content.rb
|
|
90
|
+
- app/models/page.rb
|
|
91
|
+
- app/models/site.rb
|
|
92
|
+
- app/models/tag.rb
|
|
93
|
+
- app/models/user.rb
|
|
94
|
+
- app/views/content_engine/articles/_form.erb
|
|
95
|
+
- app/views/content_engine/articles/edit.html.erb
|
|
96
|
+
- app/views/content_engine/articles/index.html.erb
|
|
97
|
+
- app/views/content_engine/articles/new.html.erb
|
|
98
|
+
- app/views/content_engine/articles/show.html.erb
|
|
99
|
+
- app/views/content_engine/pages/_form.erb
|
|
100
|
+
- app/views/content_engine/pages/edit.html.erb
|
|
101
|
+
- app/views/content_engine/pages/index.html.erb
|
|
102
|
+
- app/views/content_engine/pages/new.html.erb
|
|
103
|
+
- app/views/content_engine/pages/show.html.erb
|
|
104
|
+
- app/views/layouts/application.html.erb
|
|
105
|
+
- config/application.rb
|
|
106
|
+
- config/locales/en.yml
|
|
107
|
+
- config/routes.rb
|
|
108
|
+
- content_engine.gemspec
|
|
109
|
+
- db/migrate/20100225105011_create_contents.rb
|
|
110
|
+
- db/migrate/20100225105903_create_users.rb
|
|
111
|
+
- db/migrate/20100225110024_create_sites.rb
|
|
112
|
+
- db/migrate/20100225110037_create_memberships.rb
|
|
113
|
+
- db/migrate/20100225112236_acts_as_taggable_on.rb
|
|
114
|
+
- db/schema.rb
|
|
115
|
+
- lib/content_engine.rb
|
|
116
|
+
- lib/tasks/content_engine.rake
|
|
117
|
+
- spec/blueprint.rb
|
|
118
|
+
- spec/models/article_spec.rb
|
|
119
|
+
- spec/models/page_spec.rb
|
|
120
|
+
- spec/models/site_spec.rb
|
|
121
|
+
- spec/rails_app/.gitignore
|
|
122
|
+
- spec/rails_app/Rakefile
|
|
123
|
+
- spec/rails_app/app/controllers/application_controller.rb
|
|
124
|
+
- spec/rails_app/app/controllers/home_controller.rb
|
|
125
|
+
- spec/rails_app/app/helpers/application_helper.rb
|
|
126
|
+
- spec/rails_app/app/views/home/index.html.erb
|
|
127
|
+
- spec/rails_app/app/views/layouts/application.html.erb
|
|
128
|
+
- spec/rails_app/config.ru
|
|
129
|
+
- spec/rails_app/config/application.rb
|
|
130
|
+
- spec/rails_app/config/boot.rb
|
|
131
|
+
- spec/rails_app/config/database.yml
|
|
132
|
+
- spec/rails_app/config/environment.rb
|
|
133
|
+
- spec/rails_app/config/environments/development.rb
|
|
134
|
+
- spec/rails_app/config/environments/production.rb
|
|
135
|
+
- spec/rails_app/config/environments/test.rb
|
|
136
|
+
- spec/rails_app/config/initializers/backtrace_silencers.rb
|
|
137
|
+
- spec/rails_app/config/initializers/cookie_verification_secret.rb
|
|
138
|
+
- spec/rails_app/config/initializers/inflections.rb
|
|
139
|
+
- spec/rails_app/config/initializers/session_store.rb
|
|
140
|
+
- spec/rails_app/config/routes.rb
|
|
141
|
+
- spec/rails_app/db/migrate/20100225105011_create_contents.rb
|
|
142
|
+
- spec/rails_app/db/migrate/20100225105903_create_users.rb
|
|
143
|
+
- spec/rails_app/db/migrate/20100225110024_create_sites.rb
|
|
144
|
+
- spec/rails_app/db/migrate/20100225110037_create_memberships.rb
|
|
145
|
+
- spec/rails_app/db/migrate/20100225112236_acts_as_taggable_on.rb
|
|
146
|
+
- spec/rails_app/db/schema.rb
|
|
147
|
+
- spec/rails_app/public/404.html
|
|
148
|
+
- spec/rails_app/public/422.html
|
|
149
|
+
- spec/rails_app/public/500.html
|
|
150
|
+
- spec/rails_app/public/favicon.ico
|
|
151
|
+
- spec/rails_app/public/images/rails.png
|
|
152
|
+
- spec/rails_app/public/javascripts/application.js
|
|
153
|
+
- spec/rails_app/public/javascripts/controls.js
|
|
154
|
+
- spec/rails_app/public/javascripts/dragdrop.js
|
|
155
|
+
- spec/rails_app/public/javascripts/effects.js
|
|
156
|
+
- spec/rails_app/public/javascripts/prototype.js
|
|
157
|
+
- spec/rails_app/public/javascripts/rails.js
|
|
158
|
+
- spec/rails_app/public/robots.txt
|
|
159
|
+
- spec/rails_app/public/stylesheets/.gitkeep
|
|
160
|
+
- spec/rails_app/script/rails
|
|
161
|
+
- spec/requests/user_manage_articles_spec.rb
|
|
162
|
+
- spec/requests/user_manage_pages_spec.rb
|
|
163
|
+
- spec/requests/webrat.log
|
|
164
|
+
- spec/spec.opts
|
|
165
|
+
- spec/spec_helper.rb
|
|
166
|
+
has_rdoc: true
|
|
167
|
+
homepage: http://github.com/idealian/content_engine
|
|
168
|
+
licenses: []
|
|
169
|
+
|
|
170
|
+
post_install_message:
|
|
171
|
+
rdoc_options:
|
|
172
|
+
- --charset=UTF-8
|
|
173
|
+
require_paths:
|
|
174
|
+
- lib
|
|
175
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
176
|
+
requirements:
|
|
177
|
+
- - ">="
|
|
178
|
+
- !ruby/object:Gem::Version
|
|
179
|
+
segments:
|
|
180
|
+
- 0
|
|
181
|
+
version: "0"
|
|
182
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
183
|
+
requirements:
|
|
184
|
+
- - ">="
|
|
185
|
+
- !ruby/object:Gem::Version
|
|
186
|
+
segments:
|
|
187
|
+
- 0
|
|
188
|
+
version: "0"
|
|
189
|
+
requirements: []
|
|
190
|
+
|
|
191
|
+
rubyforge_project:
|
|
192
|
+
rubygems_version: 1.3.6
|
|
193
|
+
signing_key:
|
|
194
|
+
specification_version: 3
|
|
195
|
+
summary: A Rails 3 Engine for sexier site and content management
|
|
196
|
+
test_files:
|
|
197
|
+
- spec/blueprint.rb
|
|
198
|
+
- spec/models/article_spec.rb
|
|
199
|
+
- spec/models/page_spec.rb
|
|
200
|
+
- spec/models/site_spec.rb
|
|
201
|
+
- spec/rails_app/app/controllers/admins_controller.rb
|
|
202
|
+
- spec/rails_app/app/controllers/application_controller.rb
|
|
203
|
+
- spec/rails_app/app/controllers/home_controller.rb
|
|
204
|
+
- spec/rails_app/app/controllers/sessions_controller.rb
|
|
205
|
+
- spec/rails_app/app/controllers/users_controller.rb
|
|
206
|
+
- spec/rails_app/app/helpers/application_helper.rb
|
|
207
|
+
- spec/rails_app/config/application.rb
|
|
208
|
+
- spec/rails_app/config/boot.rb
|
|
209
|
+
- spec/rails_app/config/environment.rb
|
|
210
|
+
- spec/rails_app/config/environments/development.rb
|
|
211
|
+
- spec/rails_app/config/environments/production.rb
|
|
212
|
+
- spec/rails_app/config/environments/test.rb
|
|
213
|
+
- spec/rails_app/config/initializers/backtrace_silencers.rb
|
|
214
|
+
- spec/rails_app/config/initializers/cookie_verification_secret.rb
|
|
215
|
+
- spec/rails_app/config/initializers/inflections.rb
|
|
216
|
+
- spec/rails_app/config/initializers/session_store.rb
|
|
217
|
+
- spec/rails_app/config/routes.rb
|
|
218
|
+
- spec/rails_app/db/migrate/20100225105011_create_contents.rb
|
|
219
|
+
- spec/rails_app/db/migrate/20100225105903_create_users.rb
|
|
220
|
+
- spec/rails_app/db/migrate/20100225110024_create_sites.rb
|
|
221
|
+
- spec/rails_app/db/migrate/20100225110037_create_memberships.rb
|
|
222
|
+
- spec/rails_app/db/migrate/20100225112236_acts_as_taggable_on.rb
|
|
223
|
+
- spec/rails_app/db/schema.rb
|
|
224
|
+
- spec/requests/user_manage_articles_spec.rb
|
|
225
|
+
- spec/requests/user_manage_pages_spec.rb
|
|
226
|
+
- spec/spec_helper.rb
|