publinator 0.0.2 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (143) hide show
  1. data/README.rdoc +7 -1
  2. data/app/assets/javascripts/publinator/manage/sections.js +2 -0
  3. data/app/assets/stylesheets/publinator/manage/sections.css +4 -0
  4. data/app/controllers/publinator/application_controller.rb +5 -5
  5. data/app/controllers/publinator/home_controller.rb +4 -4
  6. data/app/controllers/publinator/manage/publishable_controller.rb +14 -10
  7. data/app/controllers/publinator/manage/sections_controller.rb +29 -0
  8. data/app/controllers/publinator/publishable_controller.rb +3 -3
  9. data/app/controllers/publinator/section_controller.rb +36 -0
  10. data/app/helpers/publinator/manage/sections_helper.rb +4 -0
  11. data/app/models/publinator/domain_name.rb +13 -0
  12. data/app/models/publinator/page.rb +7 -0
  13. data/app/models/publinator/publication.rb +19 -16
  14. data/app/models/publinator/publishable.rb +52 -11
  15. data/app/models/publinator/publishable_type.rb +1 -1
  16. data/app/models/publinator/section.rb +25 -0
  17. data/app/models/publinator/site.rb +5 -4
  18. data/app/views/publinator/home/index.html.erb +1 -1
  19. data/app/views/publinator/manage/publishable/_form.html.erb +4 -1
  20. data/app/views/publinator/manage/sections/_form.html.erb +10 -0
  21. data/app/views/publinator/manage/sections/edit.html.erb +3 -0
  22. data/app/views/publinator/manage/sections/index.html.erb +16 -0
  23. data/app/views/publinator/manage/sections/new.html.erb +3 -0
  24. data/app/views/publinator/manage/sections/show.html.erb +2 -0
  25. data/config/routes.rb +41 -25
  26. data/db/migrate/20121011191348_create_publinator_sections.rb +13 -0
  27. data/db/migrate/20121017134533_create_publinator_pages.rb +14 -0
  28. data/lib/generators/publishable/publishable_generator.rb +1 -1
  29. data/lib/generators/publishable/templates/app/models/publishable_migration.rb.erb +5 -3
  30. data/lib/publinator/engine.rb +1 -0
  31. data/lib/publinator/version.rb +1 -1
  32. metadata +68 -228
  33. data/test/dummy/README.rdoc +0 -261
  34. data/test/dummy/Rakefile +0 -7
  35. data/test/dummy/app/assets/javascripts/application.js +0 -15
  36. data/test/dummy/app/assets/stylesheets/application.css +0 -13
  37. data/test/dummy/app/controllers/application_controller.rb +0 -3
  38. data/test/dummy/app/helpers/application_helper.rb +0 -2
  39. data/test/dummy/app/models/article.rb +0 -5
  40. data/test/dummy/app/views/layouts/application.html.erb +0 -14
  41. data/test/dummy/config/application.rb +0 -56
  42. data/test/dummy/config/boot.rb +0 -10
  43. data/test/dummy/config/database.yml +0 -25
  44. data/test/dummy/config/environment.rb +0 -5
  45. data/test/dummy/config/environments/development.rb +0 -37
  46. data/test/dummy/config/environments/production.rb +0 -67
  47. data/test/dummy/config/environments/test.rb +0 -37
  48. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
  49. data/test/dummy/config/initializers/inflections.rb +0 -15
  50. data/test/dummy/config/initializers/mime_types.rb +0 -5
  51. data/test/dummy/config/initializers/secret_token.rb +0 -7
  52. data/test/dummy/config/initializers/session_store.rb +0 -8
  53. data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
  54. data/test/dummy/config/locales/en.yml +0 -5
  55. data/test/dummy/config/routes.rb +0 -3
  56. data/test/dummy/config.ru +0 -4
  57. data/test/dummy/db/development.sqlite3 +0 -0
  58. data/test/dummy/db/migrate/20120725204706_create_publinator_sites.publinator.rb +0 -17
  59. data/test/dummy/db/migrate/20120725204707_create_publinator_domain_names.publinator.rb +0 -14
  60. data/test/dummy/db/migrate/20120725204708_create_publinator_publications.publinator.rb +0 -16
  61. data/test/dummy/db/migrate/20120725204709_create_publinator_publication_states.publinator.rb +0 -10
  62. data/test/dummy/db/migrate/20120725204710_create_publinator_workflows.publinator.rb +0 -10
  63. data/test/dummy/db/migrate/20120725204711_create_publinator_workflow_steps.publinator.rb +0 -15
  64. data/test/dummy/db/migrate/20120725204712_create_publinator_site_workflows.publinator.rb +0 -12
  65. data/test/dummy/db/migrate/20120725204713_create_publinator_publishables.publinator.rb +0 -10
  66. data/test/dummy/db/migrate/20120727005853_create_versions.publinator.rb +0 -19
  67. data/test/dummy/db/migrate/20120727005854_create_publinator_publishable_types.publinator.rb +0 -10
  68. data/test/dummy/db/migrate/20120824145846_create_articles.rb +0 -19
  69. data/test/dummy/db/schema.rb +0 -113
  70. data/test/dummy/db/seeds.rb +0 -39
  71. data/test/dummy/db/test.sqlite3 +0 -0
  72. data/test/dummy/features/multiple_home_pages.feature +0 -14
  73. data/test/dummy/log/development.log +0 -40231
  74. data/test/dummy/log/test.log +0 -7
  75. data/test/dummy/public/404.html +0 -26
  76. data/test/dummy/public/422.html +0 -26
  77. data/test/dummy/public/500.html +0 -25
  78. data/test/dummy/public/favicon.ico +0 -0
  79. data/test/dummy/script/rails +0 -6
  80. data/test/dummy/tmp/cache/assets/C4F/360/sprockets%2F8f1f223e5a170f82017965822b6f7430 +0 -0
  81. data/test/dummy/tmp/cache/assets/C50/CE0/sprockets%2F76132a75085ce5f547460e8535ca5340 +0 -0
  82. data/test/dummy/tmp/cache/assets/C63/990/sprockets%2F11618b29357ca8c1c450722c20c91a00 +0 -0
  83. data/test/dummy/tmp/cache/assets/C72/990/sprockets%2F8be9281634a42c7a01308b333b17737b +0 -0
  84. data/test/dummy/tmp/cache/assets/C85/060/sprockets%2F95985a6ff38f2781686e6429e569778b +0 -0
  85. data/test/dummy/tmp/cache/assets/CA9/470/sprockets%2F0407014b0507e7755ef657d61f712ebc +0 -0
  86. data/test/dummy/tmp/cache/assets/CC0/FC0/sprockets%2F3c56105da246486092d2bbe0a4a0d033 +0 -0
  87. data/test/dummy/tmp/cache/assets/CC2/7B0/sprockets%2Fc4c32d2ab19d396689f357ef76364436 +0 -0
  88. data/test/dummy/tmp/cache/assets/CDE/040/sprockets%2Fba0451e56a8d59da297777a7280ab063 +0 -0
  89. data/test/dummy/tmp/cache/assets/D03/310/sprockets%2F525cf5b3d9e3504ba06702b64e0c681e +0 -0
  90. data/test/dummy/tmp/cache/assets/D08/DE0/sprockets%2Ff4a1d4922a38c27425da2e144e59c6d3 +0 -0
  91. data/test/dummy/tmp/cache/assets/D0B/2F0/sprockets%2Ff8b70628b691a6a3ecb709217a326a8b +0 -0
  92. data/test/dummy/tmp/cache/assets/D0C/310/sprockets%2Ffadeb95307575f00dda19890ec423415 +0 -0
  93. data/test/dummy/tmp/cache/assets/D12/780/sprockets%2F89400fbaf52d569e932128a538e6bf0a +0 -0
  94. data/test/dummy/tmp/cache/assets/D13/710/sprockets%2Fa59760c5818192f8007fec314febb7b3 +0 -0
  95. data/test/dummy/tmp/cache/assets/D17/C20/sprockets%2F706c0f4966a7c7fdd66a074d94a57d11 +0 -0
  96. data/test/dummy/tmp/cache/assets/D32/E40/sprockets%2F7ced78249d4c98d883ae91f492668a6b +0 -0
  97. data/test/dummy/tmp/cache/assets/D34/C20/sprockets%2Fed4da822bde7632ba05dae4472824813 +0 -0
  98. data/test/dummy/tmp/cache/assets/D39/EA0/sprockets%2F81ec8f71e453a02b8c9a40157afe0f71 +0 -0
  99. data/test/dummy/tmp/cache/assets/D3A/FA0/sprockets%2F6d1270d85395029a2c06c5c2eb4dece8 +0 -0
  100. data/test/dummy/tmp/cache/assets/D3B/EA0/sprockets%2F539fc0d8da407130f2f1f2bf088b85d3 +0 -0
  101. data/test/dummy/tmp/cache/assets/D42/9F0/sprockets%2F5eca1a27a78455737f92e6af1ade0448 +0 -0
  102. data/test/dummy/tmp/cache/assets/D42/B60/sprockets%2Fac22072df4e4aeae78d396f60468d227 +0 -0
  103. data/test/dummy/tmp/cache/assets/D42/DE0/sprockets%2Faadf8c86a222ee8e83d2821583ea0593 +0 -0
  104. data/test/dummy/tmp/cache/assets/D43/F50/sprockets%2Fc5e61a881bfc3b9e25f72694535ec40a +0 -0
  105. data/test/dummy/tmp/cache/assets/D4D/390/sprockets%2Ffe227bf86af573e51927e4d2e7436c4c +0 -0
  106. data/test/dummy/tmp/cache/assets/D5E/540/sprockets%2F00723322beecdc3eea7481c3ca15683f +0 -0
  107. data/test/dummy/tmp/cache/assets/D61/700/sprockets%2Ff5caf7e7779724575d9ad98e18e9c1e0 +0 -0
  108. data/test/dummy/tmp/cache/assets/D64/970/sprockets%2Fc82da8e1a6ea89aa065031be36b2c576 +0 -0
  109. data/test/dummy/tmp/cache/assets/D68/2E0/sprockets%2F0c4374b9e9b2aaaaa263b17b9a77f088 +0 -0
  110. data/test/dummy/tmp/cache/assets/D6C/C50/sprockets%2F712fd91829ab4f5c53bb6fa3b3d245a9 +0 -0
  111. data/test/dummy/tmp/cache/assets/D70/C60/sprockets%2Fca98bff3da133a465c5b4748a3b38f37 +0 -0
  112. data/test/dummy/tmp/cache/assets/D7B/730/sprockets%2Fa90b20db3a5c66c85d7986f4d91c9eb6 +0 -0
  113. data/test/dummy/tmp/cache/assets/D81/D70/sprockets%2F6a010131cebe8c0543864eba3cc3fdb0 +0 -0
  114. data/test/dummy/tmp/cache/assets/DA4/020/sprockets%2Fb7f430f48a4573d8975b2fb4b2ba5def +0 -0
  115. data/test/dummy/tmp/cache/assets/DA6/300/sprockets%2Fb8cef7a3ac9c4221e9c5bc582c86e149 +0 -0
  116. data/test/dummy/tmp/cache/assets/DAA/5B0/sprockets%2F9ac396884b5f7f4085dbfbf1f3bd82b0 +0 -0
  117. data/test/dummy/tmp/cache/assets/DAB/000/sprockets%2F3c9acfeb145fc77ef7932bc7b498a118 +0 -0
  118. data/test/dummy/tmp/cache/assets/DD7/DB0/sprockets%2F2e3dee6c113e8b9d5c3ffd508ea3e829 +0 -0
  119. data/test/dummy/tmp/cache/assets/DDC/610/sprockets%2Fb7e49f851b32a93fa0af9cf7be9fc283 +0 -0
  120. data/test/dummy/tmp/cache/assets/E08/B70/sprockets%2F682afca4b65d8e03784ff5da7fae4e6a +0 -0
  121. data/test/dummy/tmp/cache/assets/E38/BE0/sprockets%2Ffb2fafc55f60fd5d9a99e12a0fc53f9d +0 -0
  122. data/test/dummy/tmp/restart.txt +0 -0
  123. data/test/fixtures/publinator/publication_states.yml +0 -7
  124. data/test/fixtures/publinator/publications.yml +0 -19
  125. data/test/fixtures/publinator/publishable_types.yml +0 -7
  126. data/test/fixtures/publinator/publishables.yml +0 -7
  127. data/test/fixtures/publinator/site_workflows.yml +0 -11
  128. data/test/fixtures/publinator/workflow_steps.yml +0 -17
  129. data/test/fixtures/publinator/workflows.yml +0 -7
  130. data/test/functional/publinator/home_controller_test.rb +0 -16
  131. data/test/integration/navigation_test.rb +0 -10
  132. data/test/publinator_test.rb +0 -7
  133. data/test/test_helper.rb +0 -10
  134. data/test/unit/helpers/publinator/home_helper_test.rb +0 -6
  135. data/test/unit/publinator/domain_name_test.rb +0 -9
  136. data/test/unit/publinator/publication_state_test.rb +0 -9
  137. data/test/unit/publinator/publication_test.rb +0 -9
  138. data/test/unit/publinator/publishable_test.rb +0 -9
  139. data/test/unit/publinator/publishable_type_test.rb +0 -9
  140. data/test/unit/publinator/site_test.rb +0 -9
  141. data/test/unit/publinator/site_workflow_test.rb +0 -9
  142. data/test/unit/publinator/workflow_step_test.rb +0 -9
  143. data/test/unit/publinator/workflow_test.rb +0 -9
@@ -1,17 +0,0 @@
1
- # This migration comes from publinator (originally 20120725194854)
2
- class CreatePublinatorSites < ActiveRecord::Migration
3
- def change
4
- create_table :publinator_sites do |t|
5
- t.string :name
6
- t.string :title
7
- t.text :description
8
- t.integer :parent_id
9
- t.string :state
10
- t.string :abbr
11
- t.string :type
12
- t.boolean :default
13
-
14
- t.timestamps
15
- end
16
- end
17
- end
@@ -1,14 +0,0 @@
1
- # This migration comes from publinator (originally 20120725200404)
2
- class CreatePublinatorDomainNames < ActiveRecord::Migration
3
- def change
4
- create_table :publinator_domain_names do |t|
5
- t.boolean :shared
6
- t.boolean :default
7
- t.string :name
8
- t.string :subdomain
9
- t.integer :site_id
10
-
11
- t.timestamps
12
- end
13
- end
14
- end
@@ -1,16 +0,0 @@
1
- # This migration comes from publinator (originally 20120725201842)
2
- class CreatePublinatorPublications < ActiveRecord::Migration
3
- def change
4
- create_table :publinator_publications do |t|
5
- t.integer :site_id
6
- t.integer :publication_state_id
7
- t.integer :parent_id
8
- t.string :custom_slug
9
- t.string :slug
10
- t.string :publishable_type
11
- t.integer :publishable_id
12
-
13
- t.timestamps
14
- end
15
- end
16
- end
@@ -1,10 +0,0 @@
1
- # This migration comes from publinator (originally 20120725202042)
2
- class CreatePublinatorPublicationStates < ActiveRecord::Migration
3
- def change
4
- create_table :publinator_publication_states do |t|
5
- t.string :name
6
-
7
- t.timestamps
8
- end
9
- end
10
- end
@@ -1,10 +0,0 @@
1
- # This migration comes from publinator (originally 20120725202127)
2
- class CreatePublinatorWorkflows < ActiveRecord::Migration
3
- def change
4
- create_table :publinator_workflows do |t|
5
- t.string :name
6
-
7
- t.timestamps
8
- end
9
- end
10
- end
@@ -1,15 +0,0 @@
1
- # This migration comes from publinator (originally 20120725202425)
2
- class CreatePublinatorWorkflowSteps < ActiveRecord::Migration
3
- def change
4
- create_table :publinator_workflow_steps do |t|
5
- t.integer :workflow_id
6
- t.integer :position
7
- t.string :role
8
- t.boolean :notify
9
- t.boolean :require
10
- t.string :publishable_type
11
-
12
- t.timestamps
13
- end
14
- end
15
- end
@@ -1,12 +0,0 @@
1
- # This migration comes from publinator (originally 20120725202718)
2
- class CreatePublinatorSiteWorkflows < ActiveRecord::Migration
3
- def change
4
- create_table :publinator_site_workflows do |t|
5
- t.integer :site_id
6
- t.integer :workflow_id
7
- t.string :publishable_type
8
-
9
- t.timestamps
10
- end
11
- end
12
- end
@@ -1,10 +0,0 @@
1
- # This migration comes from publinator (originally 20120725204133)
2
- class CreatePublinatorPublishables < ActiveRecord::Migration
3
- def change
4
- create_table :publinator_publishables do |t|
5
- t.integer :publication_id
6
-
7
- t.timestamps
8
- end
9
- end
10
- end
@@ -1,19 +0,0 @@
1
- # This migration comes from publinator (originally 20120726234227)
2
- class CreateVersions < ActiveRecord::Migration
3
- def self.up
4
- create_table :versions do |t|
5
- t.string :item_type, :null => false
6
- t.integer :item_id, :null => false
7
- t.string :event, :null => false
8
- t.string :whodunnit
9
- t.text :object
10
- t.datetime :created_at
11
- end
12
- add_index :versions, [:item_type, :item_id]
13
- end
14
-
15
- def self.down
16
- remove_index :versions, [:item_type, :item_id]
17
- drop_table :versions
18
- end
19
- end
@@ -1,10 +0,0 @@
1
- # This migration comes from publinator (originally 20120726234703)
2
- class CreatePublinatorPublishableTypes < ActiveRecord::Migration
3
- def change
4
- create_table :publinator_publishable_types do |t|
5
- t.string :name
6
- t.string :sluggable, :default => true
7
- t.timestamps
8
- end
9
- end
10
- end
@@ -1,19 +0,0 @@
1
- class CreateArticles < ActiveRecord::Migration
2
- def self.up
3
- create_table :articles do |t|
4
- t.string :title
5
- t.text :body
6
-
7
- #t.string :teaser
8
- # t.string :author_name
9
- # t.text :extra_body
10
- # t.string :kicker
11
-
12
- t.timestamps
13
- end
14
- end
15
-
16
- def self.down
17
- drop_table :articles
18
- end
19
- end
@@ -1,113 +0,0 @@
1
- # encoding: UTF-8
2
- # This file is auto-generated from the current state of the database. Instead
3
- # of editing this file, please use the migrations feature of Active Record to
4
- # incrementally modify your database, and then regenerate this schema definition.
5
- #
6
- # Note that this schema.rb definition is the authoritative source for your
7
- # database schema. If you need to create the application database on another
8
- # system, you should be using db:schema:load, not running all the migrations
9
- # from scratch. The latter is a flawed and unsustainable approach (the more migrations
10
- # you'll amass, the slower it'll run and the greater likelihood for issues).
11
- #
12
- # It's strongly recommended to check this file into your version control system.
13
-
14
- ActiveRecord::Schema.define(:version => 20120824145846) do
15
-
16
- create_table "articles", :force => true do |t|
17
- t.string "title"
18
- t.text "body"
19
- t.datetime "created_at", :null => false
20
- t.datetime "updated_at", :null => false
21
- end
22
-
23
- create_table "publinator_domain_names", :force => true do |t|
24
- t.boolean "shared"
25
- t.boolean "default"
26
- t.string "name"
27
- t.string "subdomain"
28
- t.integer "site_id"
29
- t.datetime "created_at", :null => false
30
- t.datetime "updated_at", :null => false
31
- end
32
-
33
- create_table "publinator_publication_states", :force => true do |t|
34
- t.string "name"
35
- t.datetime "created_at", :null => false
36
- t.datetime "updated_at", :null => false
37
- end
38
-
39
- create_table "publinator_publications", :force => true do |t|
40
- t.integer "site_id"
41
- t.integer "publication_state_id"
42
- t.integer "parent_id"
43
- t.string "custom_slug"
44
- t.string "slug"
45
- t.string "publishable_type"
46
- t.integer "publishable_id"
47
- t.datetime "created_at", :null => false
48
- t.datetime "updated_at", :null => false
49
- end
50
-
51
- create_table "publinator_publishable_types", :force => true do |t|
52
- t.string "name"
53
- t.string "sluggable", :default => "t"
54
- t.datetime "created_at", :null => false
55
- t.datetime "updated_at", :null => false
56
- end
57
-
58
- create_table "publinator_publishables", :force => true do |t|
59
- t.integer "publication_id"
60
- t.datetime "created_at", :null => false
61
- t.datetime "updated_at", :null => false
62
- end
63
-
64
- create_table "publinator_site_workflows", :force => true do |t|
65
- t.integer "site_id"
66
- t.integer "workflow_id"
67
- t.string "publishable_type"
68
- t.datetime "created_at", :null => false
69
- t.datetime "updated_at", :null => false
70
- end
71
-
72
- create_table "publinator_sites", :force => true do |t|
73
- t.string "name"
74
- t.string "title"
75
- t.text "description"
76
- t.integer "parent_id"
77
- t.string "state"
78
- t.string "abbr"
79
- t.string "type"
80
- t.boolean "default"
81
- t.datetime "created_at", :null => false
82
- t.datetime "updated_at", :null => false
83
- end
84
-
85
- create_table "publinator_workflow_steps", :force => true do |t|
86
- t.integer "workflow_id"
87
- t.integer "position"
88
- t.string "role"
89
- t.boolean "notify"
90
- t.boolean "require"
91
- t.string "publishable_type"
92
- t.datetime "created_at", :null => false
93
- t.datetime "updated_at", :null => false
94
- end
95
-
96
- create_table "publinator_workflows", :force => true do |t|
97
- t.string "name"
98
- t.datetime "created_at", :null => false
99
- t.datetime "updated_at", :null => false
100
- end
101
-
102
- create_table "versions", :force => true do |t|
103
- t.string "item_type", :null => false
104
- t.integer "item_id", :null => false
105
- t.string "event", :null => false
106
- t.string "whodunnit"
107
- t.text "object"
108
- t.datetime "created_at"
109
- end
110
-
111
- add_index "versions", ["item_type", "item_id"], :name => "index_versions_on_item_type_and_item_id"
112
-
113
- end
@@ -1,39 +0,0 @@
1
- Publinator::Site.create(:name => "dummy", :default => true)
2
- Publinator::DomainName.create(:site_id => 1, :name => 'dummy.dev', :shared => true, :default => true)
3
- Publinator::Site.create(:name => "dummy2", :default => false)
4
- Publinator::DomainName.create(:site_id => 2, :name => 'dummy.dev', :shared => false, :default => true, :subdomain => "dummy2")
5
-
6
- # Article.create(:site_id => 1, :slug => "alphabits", :title => "Alphabits are not a Complete Breakfast")
7
-
8
- # publication_state
9
- #
10
- # string :name
11
- # boolean :system
12
-
13
- # publishable_type
14
- #
15
- # string :name
16
- @article = Publinator::PublishableType.create(:name => "Article")
17
-
18
- # workflows
19
- #
20
- # string :name
21
- # Workflow.create
22
- #@workflow = Workflow.create(:name => "")
23
-
24
- # workflow_steps
25
- #
26
- # integer :workflow_id
27
- # integer :position
28
- # string :role
29
- # boolean :notify
30
- # boolean :require
31
- # string :publishable_type
32
- # WorkflowStep.create
33
-
34
- # site_workflows
35
- #
36
- # integer :site_id
37
- # integer :workflow_id
38
- # string :publishable_type
39
- # SiteWorkflow.create(:site_id => , :workflow_id => , :publishable_id => )
File without changes
@@ -1,14 +0,0 @@
1
- Feature: Multiple Domain Names
2
- In order to publish multiple web sites
3
- As a visitor
4
- I want to see the home page I requested
5
-
6
- Scenario: Visit example.com
7
- When I am using "example.com"
8
- And I visit the home page
9
- Then I should see "Example Home Page"
10
-
11
- Scenario: Visit dummy.dev
12
- When I am using "dummy.dev"
13
- When I visit the home page
14
- I should see "Dummy Home Page"