spina-admin-conferences-blog 0.1.4 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -0
  3. data/app/controllers/spina/admin/conferences/blog/categories_controller.rb +5 -4
  4. data/app/controllers/spina/admin/conferences/blog/posts_controller.rb +4 -4
  5. data/app/views/layouts/default/application.html.erb +1 -0
  6. data/app/views/spina/admin/conferences/blog/categories/_category.html.erb +13 -0
  7. data/app/views/spina/admin/conferences/blog/categories/_form.html.erb +38 -0
  8. data/app/views/spina/admin/conferences/blog/categories/edit.html.erb +1 -0
  9. data/app/views/spina/admin/conferences/blog/categories/index.html.erb +19 -0
  10. data/app/views/spina/admin/conferences/blog/categories/new.html.erb +1 -0
  11. data/app/views/spina/admin/conferences/blog/posts/_form.html.erb +66 -0
  12. data/app/views/spina/admin/conferences/blog/posts/_form_post_configuration.html.erb +46 -0
  13. data/app/views/spina/admin/conferences/blog/posts/_form_post_content.html.erb +59 -0
  14. data/app/views/spina/admin/conferences/blog/posts/_form_post_seo.html.erb +7 -0
  15. data/app/views/spina/admin/conferences/blog/posts/_post.html.erb +30 -0
  16. data/app/views/spina/admin/conferences/blog/posts/edit.html.erb +1 -0
  17. data/app/views/spina/admin/conferences/blog/posts/index.html.erb +33 -0
  18. data/app/views/spina/admin/conferences/blog/posts/new.html.erb +1 -0
  19. data/app/views/spina/admin/hooks/conferences/blog/_primary_navigation.html.erb +14 -0
  20. data/config/locales/en.yml +7 -0
  21. data/config/locales/nl.yml +7 -0
  22. data/config/locales/pt-BR.yml +7 -0
  23. data/lib/spina/admin/conferences/blog/engine.rb +4 -1
  24. data/lib/spina/admin/conferences/blog/version.rb +1 -1
  25. data/spec/controllers/spina/admin/conferences/blog/categories_controller_spec.rb +1 -0
  26. data/spec/controllers/spina/admin/conferences/blog/posts_controller_spec.rb +1 -0
  27. data/spec/dummy/app/assets/config/manifest.js +2 -1
  28. data/spec/dummy/app/assets/stylesheets/default/{application.css.sass → application.css} +0 -0
  29. data/spec/dummy/config/environments/development.rb +3 -0
  30. data/spec/dummy/config/environments/test.rb +4 -0
  31. data/spec/dummy/config/initializers/mobility.rb +1 -0
  32. data/spec/dummy/config/storage.yml +7 -0
  33. data/spec/dummy/db/migrate/20210403091403_add_url_title_to_spina_page_translations.spina.rb +6 -0
  34. data/spec/dummy/db/migrate/20210403091404_add_json_attributes_to_spina_accounts.spina.rb +6 -0
  35. data/spec/dummy/db/migrate/20210403091405_add_json_attributes_to_spina_pages.spina.rb +6 -0
  36. data/spec/dummy/db/migrate/20210403091406_add_slug_to_spina_resources.spina.rb +6 -0
  37. data/spec/dummy/db/migrate/20210404093002_create_active_storage_tables.active_storage.rb +36 -0
  38. data/spec/dummy/db/schema.rb +35 -1
  39. data/spec/factories/spina/admin/conferences/blog/posts.rb +1 -0
  40. data/spec/factories/spina/users.rb +10 -0
  41. data/spec/support/controller_helpers.rb +4 -3
  42. data/spec/support/system_tests.rb +1 -1
  43. data/spec/system/spina/admin/conferences/blog/posts_spec.rb +5 -7
  44. metadata +134 -117
  45. data/app/views/layouts/spina/admin/conferences/blog/blog.html.haml +0 -29
  46. data/app/views/layouts/spina/admin/conferences/blog/categories.html.haml +0 -10
  47. data/app/views/spina/admin/conferences/blog/categories/_category.html.haml +0 -8
  48. data/app/views/spina/admin/conferences/blog/categories/_form.html.haml +0 -42
  49. data/app/views/spina/admin/conferences/blog/categories/edit.html.haml +0 -3
  50. data/app/views/spina/admin/conferences/blog/categories/index.html.haml +0 -23
  51. data/app/views/spina/admin/conferences/blog/categories/new.html.haml +0 -2
  52. data/app/views/spina/admin/conferences/blog/posts/_form.html.haml +0 -43
  53. data/app/views/spina/admin/conferences/blog/posts/_form_post_configuration.html.haml +0 -50
  54. data/app/views/spina/admin/conferences/blog/posts/_form_post_content.html.haml +0 -46
  55. data/app/views/spina/admin/conferences/blog/posts/_form_post_seo.html.haml +0 -14
  56. data/app/views/spina/admin/conferences/blog/posts/_post.html.haml +0 -15
  57. data/app/views/spina/admin/conferences/blog/posts/edit.html.haml +0 -3
  58. data/app/views/spina/admin/conferences/blog/posts/index.html.haml +0 -23
  59. data/app/views/spina/admin/conferences/blog/posts/new.html.haml +0 -2
  60. data/app/views/spina/admin/hooks/conferences/blog/_primary_navigation.html.haml +0 -10
@@ -0,0 +1,6 @@
1
+ # This migration comes from spina (originally 15)
2
+ class AddSlugToSpinaResources < ActiveRecord::Migration[5.2]
3
+ def change
4
+ add_column :spina_resources, :slug, :jsonb
5
+ end
6
+ end
@@ -0,0 +1,36 @@
1
+ # This migration comes from active_storage (originally 20170806125915)
2
+ class CreateActiveStorageTables < ActiveRecord::Migration[5.2]
3
+ def change
4
+ create_table :active_storage_blobs do |t|
5
+ t.string :key, null: false
6
+ t.string :filename, null: false
7
+ t.string :content_type
8
+ t.text :metadata
9
+ t.string :service_name, null: false
10
+ t.bigint :byte_size, null: false
11
+ t.string :checksum, null: false
12
+ t.datetime :created_at, null: false
13
+
14
+ t.index [ :key ], unique: true
15
+ end
16
+
17
+ create_table :active_storage_attachments do |t|
18
+ t.string :name, null: false
19
+ t.references :record, null: false, polymorphic: true, index: false
20
+ t.references :blob, null: false
21
+
22
+ t.datetime :created_at, null: false
23
+
24
+ t.index [ :record_type, :record_id, :name, :blob_id ], name: "index_active_storage_attachments_uniqueness", unique: true
25
+ t.foreign_key :active_storage_blobs, column: :blob_id
26
+ end
27
+
28
+ create_table :active_storage_variant_records do |t|
29
+ t.belongs_to :blob, null: false, index: false
30
+ t.string :variation_digest, null: false
31
+
32
+ t.index %i[ blob_id variation_digest ], name: "index_active_storage_variant_records_uniqueness", unique: true
33
+ t.foreign_key :active_storage_blobs, column: :blob_id
34
+ end
35
+ end
36
+ end
@@ -10,11 +10,39 @@
10
10
  #
11
11
  # It's strongly recommended that you check this file into your version control system.
12
12
 
13
- ActiveRecord::Schema.define(version: 2019_05_13_103739) do
13
+ ActiveRecord::Schema.define(version: 2021_04_04_093002) do
14
14
 
15
15
  # These are extensions that must be enabled in order to support this database
16
16
  enable_extension "plpgsql"
17
17
 
18
+ create_table "active_storage_attachments", force: :cascade do |t|
19
+ t.string "name", null: false
20
+ t.string "record_type", null: false
21
+ t.bigint "record_id", null: false
22
+ t.bigint "blob_id", null: false
23
+ t.datetime "created_at", null: false
24
+ t.index ["blob_id"], name: "index_active_storage_attachments_on_blob_id"
25
+ t.index ["record_type", "record_id", "name", "blob_id"], name: "index_active_storage_attachments_uniqueness", unique: true
26
+ end
27
+
28
+ create_table "active_storage_blobs", force: :cascade do |t|
29
+ t.string "key", null: false
30
+ t.string "filename", null: false
31
+ t.string "content_type"
32
+ t.text "metadata"
33
+ t.string "service_name", null: false
34
+ t.bigint "byte_size", null: false
35
+ t.string "checksum", null: false
36
+ t.datetime "created_at", null: false
37
+ t.index ["key"], name: "index_active_storage_blobs_on_key", unique: true
38
+ end
39
+
40
+ create_table "active_storage_variant_records", force: :cascade do |t|
41
+ t.bigint "blob_id", null: false
42
+ t.string "variation_digest", null: false
43
+ t.index ["blob_id", "variation_digest"], name: "index_active_storage_variant_records_uniqueness", unique: true
44
+ end
45
+
18
46
  create_table "friendly_id_slugs", id: :serial, force: :cascade do |t|
19
47
  t.string "slug", null: false
20
48
  t.integer "sluggable_id", null: false
@@ -38,6 +66,7 @@ ActiveRecord::Schema.define(version: 2019_05_13_103739) do
38
66
  t.datetime "created_at", null: false
39
67
  t.datetime "updated_at", null: false
40
68
  t.boolean "robots_allowed", default: false
69
+ t.jsonb "json_attributes"
41
70
  end
42
71
 
43
72
  create_table "spina_attachment_collections", id: :serial, force: :cascade do |t|
@@ -182,6 +211,7 @@ ActiveRecord::Schema.define(version: 2019_05_13_103739) do
182
211
  t.string "materialized_path"
183
212
  t.datetime "created_at", null: false
184
213
  t.datetime "updated_at", null: false
214
+ t.string "url_title"
185
215
  t.index ["locale"], name: "index_spina_page_translations_on_locale"
186
216
  t.index ["spina_page_id"], name: "index_spina_page_translations_on_spina_page_id"
187
217
  end
@@ -202,6 +232,7 @@ ActiveRecord::Schema.define(version: 2019_05_13_103739) do
202
232
  t.integer "position"
203
233
  t.boolean "active", default: true
204
234
  t.integer "resource_id"
235
+ t.jsonb "json_attributes"
205
236
  t.index ["resource_id"], name: "index_spina_pages_on_resource_id"
206
237
  end
207
238
 
@@ -213,6 +244,7 @@ ActiveRecord::Schema.define(version: 2019_05_13_103739) do
213
244
  t.string "order_by"
214
245
  t.datetime "created_at", null: false
215
246
  t.datetime "updated_at", null: false
247
+ t.jsonb "slug"
216
248
  t.index ["parent_page_id"], name: "index_spina_resources_on_parent_page_id"
217
249
  end
218
250
 
@@ -283,6 +315,8 @@ ActiveRecord::Schema.define(version: 2019_05_13_103739) do
283
315
  t.datetime "password_reset_sent_at"
284
316
  end
285
317
 
318
+ add_foreign_key "active_storage_attachments", "active_storage_blobs", column: "blob_id"
319
+ add_foreign_key "active_storage_variant_records", "active_storage_blobs", column: "blob_id"
286
320
  add_foreign_key "spina_blog_posts", "spina_images", column: "image_id"
287
321
  add_foreign_key "spina_blog_posts", "spina_users", column: "user_id"
288
322
  end
@@ -5,6 +5,7 @@ FactoryBot.define do
5
5
  sequence(:title) { |n| "Blog Post #{n}" }
6
6
  content { 'Some content for my post' }
7
7
  association :category, factory: :spina_blog_category
8
+ association :user, factory: :spina_user
8
9
 
9
10
  seo_title { 'Some title for SEO' }
10
11
  description { 'Some description for SEO' }
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ FactoryBot.define do
4
+ factory :spina_user, class: Spina::User do
5
+ sequence(:email) { |n| "user#{n}@someaddress.com" }
6
+ name { 'Marcus Atherton' }
7
+ password_digest { BCrypt::Password.create('password') }
8
+ admin { true }
9
+ end
10
+ end
@@ -2,20 +2,21 @@
2
2
 
3
3
  module ControllerHelpers
4
4
  def sign_in
5
- @account = Spina::Account.create name: 'My Website', preferences: { theme: 'default' }
5
+ @account = Spina::Account.create name: 'My Website', preferences: {theme: 'default'}
6
6
  @user = Spina::User.create name: 'admin', email: 'admin@example.com', password: 'password', admin: true
7
- request.session[:user_id] = @user.id
7
+ request.session[:spina_user_id] = @user.id
8
8
  end
9
9
  end
10
10
 
11
11
  module FeatureHelpers
12
12
  def sign_in
13
- @account = Spina::Account.create name: 'My Website', preferences: { theme: 'default' }
13
+ @account = Spina::Account.create name: 'My Website', preferences: {theme: 'default'}
14
14
  @user = Spina::User.create name: 'admin', email: 'admin@example.com', password: 'password', admin: true
15
15
  visit '/admin/login'
16
16
  fill_in :email, with: @user.email
17
17
  fill_in :password, with: 'password'
18
18
  click_button 'Login'
19
+ expect(page).to have_content("Pages")
19
20
  end
20
21
  end
21
22
 
@@ -6,6 +6,6 @@ RSpec.configure do |c|
6
6
  end
7
7
 
8
8
  c.before(:each, type: :system, js: true) do
9
- driven_by :selenium
9
+ driven_by :selenium, using: :headless_firefox, screen_size: [1400, 800]
10
10
  end
11
11
  end
@@ -10,25 +10,23 @@ RSpec.feature 'Admin Posts', type: :system do
10
10
 
11
11
  it 'shows all the posts' do
12
12
  visit '/admin/conferences/blog/posts'
13
- expect(page).to have_css 'tbody tr', count: 3
13
+ expect(page).to have_content "Blog Post"
14
14
  end
15
15
  end
16
16
 
17
17
  describe 'creating a post' do
18
18
  it 'creates a post', js: true do
19
19
  visit '/admin/conferences/blog/posts'
20
- click_on 'New Post'
21
- fill_in 'Post title', with: 'Title of Blog post'
20
+ find(:css, 'a[href="/admin/conferences/blog/posts/new"]').click
21
+ fill_in 'Title', with: 'Title of Blog post'
22
22
  find(
23
23
  :css, 'trix-editor[input*="content_input"]'
24
24
  ).set('Foobar')
25
25
  click_on 'Save post'
26
- within '#header' do
26
+ within 'nav[data-controller="navigation"]' do
27
27
  click_on 'Posts'
28
28
  end
29
- within 'tbody' do
30
- expect(page).to have_content 'Title of Blog post'
31
- end
29
+ expect(page).to have_content 'Title of Blog post'
32
30
  end
33
31
  end
34
32
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spina-admin-conferences-blog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Louis Van Steene
@@ -9,92 +9,96 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-11-08 00:00:00.000000000 Z
12
+ date: 2022-01-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: draper
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - "~>"
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: 3.0.0
21
+ - - "<="
19
22
  - !ruby/object:Gem::Version
20
- version: 4.0.0
23
+ version: '5.0'
21
24
  type: :runtime
22
25
  prerelease: false
23
26
  version_requirements: !ruby/object:Gem::Requirement
24
27
  requirements:
25
- - - "~>"
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ version: 3.0.0
31
+ - - "<="
26
32
  - !ruby/object:Gem::Version
27
- version: 4.0.0
33
+ version: '5.0'
28
34
  - !ruby/object:Gem::Dependency
29
35
  name: friendly_id
30
36
  requirement: !ruby/object:Gem::Requirement
31
37
  requirements:
32
38
  - - "~>"
33
39
  - !ruby/object:Gem::Version
34
- version: '5.4'
35
- type: :runtime
36
- prerelease: false
37
- version_requirements: !ruby/object:Gem::Requirement
38
- requirements:
39
- - - "~>"
40
- - !ruby/object:Gem::Version
41
- version: '5.4'
42
- - !ruby/object:Gem::Dependency
43
- name: kaminari
44
- requirement: !ruby/object:Gem::Requirement
45
- requirements:
46
- - - "~>"
40
+ version: '5.2'
41
+ - - ">="
47
42
  - !ruby/object:Gem::Version
48
- version: '1.2'
43
+ version: 5.2.1
49
44
  type: :runtime
50
45
  prerelease: false
51
46
  version_requirements: !ruby/object:Gem::Requirement
52
47
  requirements:
53
48
  - - "~>"
54
49
  - !ruby/object:Gem::Version
55
- version: '1.2'
50
+ version: '5.2'
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 5.2.1
56
54
  - !ruby/object:Gem::Dependency
57
- name: rails
55
+ name: kaminari
58
56
  requirement: !ruby/object:Gem::Requirement
59
57
  requirements:
60
- - - "~>"
58
+ - - ">="
61
59
  - !ruby/object:Gem::Version
62
- version: '6.0'
60
+ version: 1.0.1
63
61
  type: :runtime
64
62
  prerelease: false
65
63
  version_requirements: !ruby/object:Gem::Requirement
66
64
  requirements:
67
- - - "~>"
65
+ - - ">="
68
66
  - !ruby/object:Gem::Version
69
- version: '6.0'
67
+ version: 1.0.1
70
68
  - !ruby/object:Gem::Dependency
71
69
  name: spina
72
70
  requirement: !ruby/object:Gem::Requirement
73
71
  requirements:
74
- - - "~>"
72
+ - - ">="
75
73
  - !ruby/object:Gem::Version
76
- version: 2.0.0
74
+ version: 2.1.0
77
75
  type: :runtime
78
76
  prerelease: false
79
77
  version_requirements: !ruby/object:Gem::Requirement
80
78
  requirements:
81
- - - "~>"
79
+ - - ">="
82
80
  - !ruby/object:Gem::Version
83
- version: 2.0.0
81
+ version: 2.1.0
84
82
  - !ruby/object:Gem::Dependency
85
83
  name: nokogiri
86
84
  requirement: !ruby/object:Gem::Requirement
87
85
  requirements:
88
86
  - - "~>"
89
87
  - !ruby/object:Gem::Version
90
- version: '1.12'
88
+ version: '1.10'
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: 1.10.0
91
92
  type: :runtime
92
93
  prerelease: false
93
94
  version_requirements: !ruby/object:Gem::Requirement
94
95
  requirements:
95
96
  - - "~>"
96
97
  - !ruby/object:Gem::Version
97
- version: '1.12'
98
+ version: '1.10'
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ version: 1.10.0
98
102
  - !ruby/object:Gem::Dependency
99
103
  name: capybara
100
104
  requirement: !ruby/object:Gem::Requirement
@@ -213,14 +217,14 @@ dependencies:
213
217
  requirements:
214
218
  - - "~>"
215
219
  - !ruby/object:Gem::Version
216
- version: '3.142'
220
+ version: '4.0'
217
221
  type: :development
218
222
  prerelease: false
219
223
  version_requirements: !ruby/object:Gem::Requirement
220
224
  requirements:
221
225
  - - "~>"
222
226
  - !ruby/object:Gem::Version
223
- version: '3.142'
227
+ version: '4.0'
224
228
  - !ruby/object:Gem::Dependency
225
229
  name: simplecov
226
230
  requirement: !ruby/object:Gem::Requirement
@@ -269,22 +273,21 @@ files:
269
273
  - app/models/spina/admin/conferences/blog/application_record.rb
270
274
  - app/models/spina/admin/conferences/blog/category.rb
271
275
  - app/models/spina/admin/conferences/blog/post.rb
272
- - app/views/layouts/spina/admin/conferences/blog/blog.html.haml
273
- - app/views/layouts/spina/admin/conferences/blog/categories.html.haml
274
- - app/views/spina/admin/conferences/blog/categories/_category.html.haml
275
- - app/views/spina/admin/conferences/blog/categories/_form.html.haml
276
- - app/views/spina/admin/conferences/blog/categories/edit.html.haml
277
- - app/views/spina/admin/conferences/blog/categories/index.html.haml
278
- - app/views/spina/admin/conferences/blog/categories/new.html.haml
279
- - app/views/spina/admin/conferences/blog/posts/_form.html.haml
280
- - app/views/spina/admin/conferences/blog/posts/_form_post_configuration.html.haml
281
- - app/views/spina/admin/conferences/blog/posts/_form_post_content.html.haml
282
- - app/views/spina/admin/conferences/blog/posts/_form_post_seo.html.haml
283
- - app/views/spina/admin/conferences/blog/posts/_post.html.haml
284
- - app/views/spina/admin/conferences/blog/posts/edit.html.haml
285
- - app/views/spina/admin/conferences/blog/posts/index.html.haml
286
- - app/views/spina/admin/conferences/blog/posts/new.html.haml
287
- - app/views/spina/admin/hooks/conferences/blog/_primary_navigation.html.haml
276
+ - app/views/layouts/default/application.html.erb
277
+ - app/views/spina/admin/conferences/blog/categories/_category.html.erb
278
+ - app/views/spina/admin/conferences/blog/categories/_form.html.erb
279
+ - app/views/spina/admin/conferences/blog/categories/edit.html.erb
280
+ - app/views/spina/admin/conferences/blog/categories/index.html.erb
281
+ - app/views/spina/admin/conferences/blog/categories/new.html.erb
282
+ - app/views/spina/admin/conferences/blog/posts/_form.html.erb
283
+ - app/views/spina/admin/conferences/blog/posts/_form_post_configuration.html.erb
284
+ - app/views/spina/admin/conferences/blog/posts/_form_post_content.html.erb
285
+ - app/views/spina/admin/conferences/blog/posts/_form_post_seo.html.erb
286
+ - app/views/spina/admin/conferences/blog/posts/_post.html.erb
287
+ - app/views/spina/admin/conferences/blog/posts/edit.html.erb
288
+ - app/views/spina/admin/conferences/blog/posts/index.html.erb
289
+ - app/views/spina/admin/conferences/blog/posts/new.html.erb
290
+ - app/views/spina/admin/hooks/conferences/blog/_primary_navigation.html.erb
288
291
  - config/initializers/friendly_id.rb
289
292
  - config/locales/en.yml
290
293
  - config/locales/nl.yml
@@ -309,7 +312,7 @@ files:
309
312
  - spec/dummy/app/assets/javascripts/application.js
310
313
  - spec/dummy/app/assets/javascripts/cable.js
311
314
  - spec/dummy/app/assets/stylesheets/application.css
312
- - spec/dummy/app/assets/stylesheets/default/application.css.sass
315
+ - spec/dummy/app/assets/stylesheets/default/application.css
313
316
  - spec/dummy/app/channels/application_cable/channel.rb
314
317
  - spec/dummy/app/channels/application_cable/connection.rb
315
318
  - spec/dummy/app/controllers/application_controller.rb
@@ -356,6 +359,7 @@ files:
356
359
  - spec/dummy/config/routes.rb
357
360
  - spec/dummy/config/secrets.yml
358
361
  - spec/dummy/config/spring.rb
362
+ - spec/dummy/config/storage.yml
359
363
  - spec/dummy/db/migrate/20190513103729_create_spina_tables.spina.rb
360
364
  - spec/dummy/db/migrate/20190513103730_create_spina_translation_tables.spina.rb
361
365
  - spec/dummy/db/migrate/20190513103731_create_spina_navigations.spina.rb
@@ -367,6 +371,11 @@ files:
367
371
  - spec/dummy/db/migrate/20190513103737_create_spina_images.spina.rb
368
372
  - spec/dummy/db/migrate/20190513103738_create_spina_image_collections.spina.rb
369
373
  - spec/dummy/db/migrate/20190513103739_create_spina_resources.spina.rb
374
+ - spec/dummy/db/migrate/20210403091403_add_url_title_to_spina_page_translations.spina.rb
375
+ - spec/dummy/db/migrate/20210403091404_add_json_attributes_to_spina_accounts.spina.rb
376
+ - spec/dummy/db/migrate/20210403091405_add_json_attributes_to_spina_pages.spina.rb
377
+ - spec/dummy/db/migrate/20210403091406_add_slug_to_spina_resources.spina.rb
378
+ - spec/dummy/db/migrate/20210404093002_create_active_storage_tables.active_storage.rb
370
379
  - spec/dummy/db/schema.rb
371
380
  - spec/dummy/db/seeds.rb
372
381
  - spec/dummy/public/404.html
@@ -377,6 +386,7 @@ files:
377
386
  - spec/dummy/public/favicon.ico
378
387
  - spec/factories/spina/admin/conferences/blog/categories.rb
379
388
  - spec/factories/spina/admin/conferences/blog/posts.rb
389
+ - spec/factories/spina/users.rb
380
390
  - spec/models/spina/admin/conferences/blog/category_spec.rb
381
391
  - spec/models/spina/admin/conferences/blog/post_spec.rb
382
392
  - spec/rails_helper.rb
@@ -415,90 +425,97 @@ signing_key:
415
425
  specification_version: 4
416
426
  summary: Blog Engine for Spina CMS
417
427
  test_files:
418
- - spec/support/system_tests.rb
419
- - spec/support/capybara.rb
420
- - spec/support/controller_routes.rb
421
- - spec/support/controller_helpers.rb
422
- - spec/support/factory_bot.rb
423
- - spec/support/rails_controller_testing.rb
424
- - spec/dummy/config.ru
425
- - spec/dummy/bin/setup
426
- - spec/dummy/bin/bundle
427
- - spec/dummy/bin/rake
428
- - spec/dummy/bin/update
429
- - spec/dummy/bin/rails
430
- - spec/dummy/Rakefile
431
- - spec/dummy/db/schema.rb
432
- - spec/dummy/db/seeds.rb
433
- - spec/dummy/db/migrate/20190513103729_create_spina_tables.spina.rb
434
- - spec/dummy/db/migrate/20190513103736_create_spina_media_folders.spina.rb
435
- - spec/dummy/db/migrate/20190513103731_create_spina_navigations.spina.rb
436
- - spec/dummy/db/migrate/20190513103737_create_spina_images.spina.rb
437
- - spec/dummy/db/migrate/20190513103738_create_spina_image_collections.spina.rb
438
- - spec/dummy/db/migrate/20190513103734_create_spina_options.spina.rb
439
- - spec/dummy/db/migrate/20190513103732_add_password_reset_token_to_spina_users.spina.rb
440
- - spec/dummy/db/migrate/20190513103739_create_spina_resources.spina.rb
441
- - spec/dummy/db/migrate/20190513103735_create_spina_settings.spina.rb
442
- - spec/dummy/db/migrate/20190513103730_create_spina_translation_tables.spina.rb
443
- - spec/dummy/db/migrate/20190513103733_remove_translated_columns.spina.rb
428
+ - spec/models/spina/admin/conferences/blog/category_spec.rb
429
+ - spec/models/spina/admin/conferences/blog/post_spec.rb
430
+ - spec/controllers/spina/admin/conferences/blog/categories_controller_spec.rb
431
+ - spec/controllers/spina/admin/conferences/blog/posts_controller_spec.rb
432
+ - spec/factories/spina/users.rb
433
+ - spec/factories/spina/admin/conferences/blog/posts.rb
434
+ - spec/factories/spina/admin/conferences/blog/categories.rb
435
+ - spec/system/spina/admin/conferences/blog/posts_spec.rb
436
+ - spec/system/support/image.png
437
+ - spec/rails_helper.rb
444
438
  - spec/dummy/public/apple-touch-icon-precomposed.png
445
439
  - spec/dummy/public/422.html
440
+ - spec/dummy/public/apple-touch-icon.png
441
+ - spec/dummy/public/404.html
446
442
  - spec/dummy/public/favicon.ico
447
443
  - spec/dummy/public/500.html
448
- - spec/dummy/public/404.html
449
- - spec/dummy/public/apple-touch-icon.png
444
+ - spec/dummy/bin/setup
445
+ - spec/dummy/bin/update
446
+ - spec/dummy/bin/bundle
447
+ - spec/dummy/bin/rails
448
+ - spec/dummy/bin/rake
449
+ - spec/dummy/config.ru
450
+ - spec/dummy/config/application.rb
451
+ - spec/dummy/config/environment.rb
452
+ - spec/dummy/config/database.yml
450
453
  - spec/dummy/config/spring.rb
451
- - spec/dummy/config/puma.rb
452
- - spec/dummy/config/cable.yml
453
- - spec/dummy/config/secrets.yml
454
- - spec/dummy/config/environments/test.rb
455
- - spec/dummy/config/environments/production.rb
456
454
  - spec/dummy/config/environments/development.rb
457
- - spec/dummy/config/boot.rb
458
- - spec/dummy/config/routes.rb
455
+ - spec/dummy/config/environments/production.rb
456
+ - spec/dummy/config/environments/test.rb
457
+ - spec/dummy/config/cable.yml
459
458
  - spec/dummy/config/locales/en.yml
460
- - spec/dummy/config/application.rb
461
- - spec/dummy/config/database.yml
462
- - spec/dummy/config/environment.rb
463
- - spec/dummy/config/initializers/cookies_serializer.rb
464
- - spec/dummy/config/initializers/wrap_parameters.rb
465
- - spec/dummy/config/initializers/inflections.rb
459
+ - spec/dummy/config/boot.rb
460
+ - spec/dummy/config/storage.yml
466
461
  - spec/dummy/config/initializers/session_store.rb
467
- - spec/dummy/config/initializers/assets.rb
468
- - spec/dummy/config/initializers/new_framework_defaults.rb
469
462
  - spec/dummy/config/initializers/backtrace_silencers.rb
470
- - spec/dummy/config/initializers/spina.rb
471
- - spec/dummy/config/initializers/mime_types.rb
472
- - spec/dummy/config/initializers/filter_parameter_logging.rb
473
- - spec/dummy/config/initializers/themes/default.rb
463
+ - spec/dummy/config/initializers/assets.rb
474
464
  - spec/dummy/config/initializers/mobility.rb
475
465
  - spec/dummy/config/initializers/application_controller_renderer.rb
476
- - spec/dummy/app/helpers/application_helper.rb
466
+ - spec/dummy/config/initializers/wrap_parameters.rb
467
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
468
+ - spec/dummy/config/initializers/inflections.rb
469
+ - spec/dummy/config/initializers/cookies_serializer.rb
470
+ - spec/dummy/config/initializers/themes/default.rb
471
+ - spec/dummy/config/initializers/spina.rb
472
+ - spec/dummy/config/initializers/new_framework_defaults.rb
473
+ - spec/dummy/config/initializers/mime_types.rb
474
+ - spec/dummy/config/routes.rb
475
+ - spec/dummy/config/puma.rb
476
+ - spec/dummy/config/secrets.yml
477
477
  - spec/dummy/app/jobs/application_job.rb
478
+ - spec/dummy/app/models/application_record.rb
479
+ - spec/dummy/app/helpers/application_helper.rb
480
+ - spec/dummy/app/controllers/application_controller.rb
478
481
  - spec/dummy/app/mailers/application_mailer.rb
479
- - spec/dummy/app/views/default/pages/homepage.html.haml
480
- - spec/dummy/app/views/default/pages/show.html.haml
481
- - spec/dummy/app/views/default/shared/_navigation.html.haml
482
+ - spec/dummy/app/channels/application_cable/channel.rb
483
+ - spec/dummy/app/channels/application_cable/connection.rb
482
484
  - spec/dummy/app/views/layouts/application.html.erb
483
485
  - spec/dummy/app/views/layouts/mailer.text.erb
484
- - spec/dummy/app/views/layouts/default/application.html.haml
485
486
  - spec/dummy/app/views/layouts/mailer.html.erb
486
- - spec/dummy/app/controllers/application_controller.rb
487
- - spec/dummy/app/models/application_record.rb
488
- - spec/dummy/app/channels/application_cable/connection.rb
489
- - spec/dummy/app/channels/application_cable/channel.rb
487
+ - spec/dummy/app/views/layouts/default/application.html.haml
488
+ - spec/dummy/app/views/default/shared/_navigation.html.haml
489
+ - spec/dummy/app/views/default/pages/homepage.html.haml
490
+ - spec/dummy/app/views/default/pages/show.html.haml
490
491
  - spec/dummy/app/assets/javascripts/application.js
491
492
  - spec/dummy/app/assets/javascripts/cable.js
492
493
  - spec/dummy/app/assets/stylesheets/application.css
493
- - spec/dummy/app/assets/stylesheets/default/application.css.sass
494
+ - spec/dummy/app/assets/stylesheets/default/application.css
494
495
  - spec/dummy/app/assets/config/manifest.js
495
- - spec/factories/spina/admin/conferences/blog/categories.rb
496
- - spec/factories/spina/admin/conferences/blog/posts.rb
497
- - spec/rails_helper.rb
498
- - spec/system/support/image.png
499
- - spec/system/spina/admin/conferences/blog/posts_spec.rb
496
+ - spec/dummy/Rakefile
497
+ - spec/dummy/db/schema.rb
498
+ - spec/dummy/db/seeds.rb
499
+ - spec/dummy/db/migrate/20190513103734_create_spina_options.spina.rb
500
+ - spec/dummy/db/migrate/20190513103731_create_spina_navigations.spina.rb
501
+ - spec/dummy/db/migrate/20190513103736_create_spina_media_folders.spina.rb
502
+ - spec/dummy/db/migrate/20190513103733_remove_translated_columns.spina.rb
503
+ - spec/dummy/db/migrate/20210403091405_add_json_attributes_to_spina_pages.spina.rb
504
+ - spec/dummy/db/migrate/20210403091406_add_slug_to_spina_resources.spina.rb
505
+ - spec/dummy/db/migrate/20210403091404_add_json_attributes_to_spina_accounts.spina.rb
506
+ - spec/dummy/db/migrate/20190513103732_add_password_reset_token_to_spina_users.spina.rb
507
+ - spec/dummy/db/migrate/20190513103737_create_spina_images.spina.rb
508
+ - spec/dummy/db/migrate/20210404093002_create_active_storage_tables.active_storage.rb
509
+ - spec/dummy/db/migrate/20210403091403_add_url_title_to_spina_page_translations.spina.rb
510
+ - spec/dummy/db/migrate/20190513103730_create_spina_translation_tables.spina.rb
511
+ - spec/dummy/db/migrate/20190513103738_create_spina_image_collections.spina.rb
512
+ - spec/dummy/db/migrate/20190513103739_create_spina_resources.spina.rb
513
+ - spec/dummy/db/migrate/20190513103729_create_spina_tables.spina.rb
514
+ - spec/dummy/db/migrate/20190513103735_create_spina_settings.spina.rb
515
+ - spec/support/capybara.rb
516
+ - spec/support/controller_routes.rb
517
+ - spec/support/system_tests.rb
518
+ - spec/support/factory_bot.rb
519
+ - spec/support/rails_controller_testing.rb
520
+ - spec/support/controller_helpers.rb
500
521
  - spec/spec_helper.rb
501
- - spec/controllers/spina/admin/conferences/blog/categories_controller_spec.rb
502
- - spec/controllers/spina/admin/conferences/blog/posts_controller_spec.rb
503
- - spec/models/spina/admin/conferences/blog/category_spec.rb
504
- - spec/models/spina/admin/conferences/blog/post_spec.rb
@@ -1,29 +0,0 @@
1
- - content_for(:permanent_notice) do
2
- - unless current_account.robots_allowed?
3
- .permanent-notice.permanent-notice-info
4
- = icon('search')
5
- %p
6
- =t 'spina.pages.invisible_to_search_engines'
7
- %small=t 'spina.pages.invisible_to_search_engines_description'
8
-
9
- - content_for :application do
10
- %header#header
11
- #header_actions
12
- = yield(:header_actions) if content_for?(:header_actions)
13
-
14
- .breadcrumbs= render_breadcrumbs separator: '<div class="divider"></div>'
15
-
16
- %nav#secondary.tabs
17
- %ul
18
- %li{class: ('active' if controller_name == 'posts' and action_name == 'index')}
19
- = link_to t('spina.blog.posts.all_posts'), spina.admin_conferences_blog_posts_path
20
- %li{class: ('active' if controller_name == 'posts' and action_name == 'live')}
21
- = link_to t('spina.blog.posts.live_posts'), spina.live_admin_conferences_blog_posts_path
22
- %li{class: ('active' if controller_name == 'posts' and action_name == 'draft')}
23
- = link_to t('spina.blog.posts.draft_posts'), spina.draft_admin_conferences_blog_posts_path
24
- %li{class: ('active' if controller_name == 'posts' and action_name == 'future')}
25
- = link_to t('spina.blog.posts.scheduled_posts'), spina.future_admin_conferences_blog_posts_path
26
-
27
- = yield
28
-
29
- = render template: "layouts/spina/admin/admin"
@@ -1,10 +0,0 @@
1
- - content_for :application do
2
- %header#header
3
- #header_actions
4
- = yield(:header_actions) if content_for?(:header_actions)
5
-
6
- .breadcrumbs= render_breadcrumbs separator: '<div class="divider"></div>'
7
-
8
- = yield
9
-
10
- = render template: "layouts/spina/admin/admin"