archangel 0.0.7 → 0.0.8

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.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +10 -2
  3. data/Gemfile +1 -1
  4. data/README.md +3 -3
  5. data/Rakefile +10 -7
  6. data/app/controllers/archangel/backend/sites_controller.rb +1 -2
  7. data/app/controllers/archangel/backend/users_controller.rb +1 -1
  8. data/app/controllers/concerns/archangel/seoable_concern.rb +1 -2
  9. data/app/models/archangel/entry.rb +1 -1
  10. data/app/models/archangel/page.rb +2 -4
  11. data/app/models/archangel/site.rb +0 -4
  12. data/app/models/archangel/template.rb +9 -0
  13. data/app/themes/default/assets/javascripts/default/backend.js +1 -0
  14. data/app/themes/default/assets/javascripts/default/backend/templates.js +26 -0
  15. data/app/themes/default/assets/stylesheets/default/auth/core.scss +10 -5
  16. data/app/themes/default/assets/stylesheets/default/backend/bootstrap/_tables.scss +40 -0
  17. data/app/themes/default/assets/stylesheets/default/backend/core.scss +11 -10
  18. data/app/themes/default/assets/stylesheets/default/frontend/core.scss +10 -5
  19. data/app/themes/default/views/layouts/auth.html.erb +0 -2
  20. data/app/themes/default/views/layouts/backend.html.erb +0 -2
  21. data/app/views/archangel/backend/assets/_asset.html.erb +12 -0
  22. data/app/views/archangel/backend/assets/index.html.erb +1 -14
  23. data/app/views/archangel/backend/collections/_collection.html.erb +10 -0
  24. data/app/views/archangel/backend/collections/index.html.erb +1 -12
  25. data/app/views/archangel/backend/entries/_entry.html.erb +13 -0
  26. data/app/views/archangel/backend/entries/index.html.erb +1 -15
  27. data/app/views/archangel/backend/pages/_page.html.erb +17 -0
  28. data/app/views/archangel/backend/pages/index.html.erb +1 -19
  29. data/app/views/archangel/backend/sites/_form.html.erb +0 -6
  30. data/app/views/archangel/backend/templates/_template.html.erb +10 -0
  31. data/app/views/archangel/backend/templates/index.html.erb +1 -12
  32. data/app/views/archangel/backend/users/_user.html.erb +11 -0
  33. data/app/views/archangel/backend/users/index.html.erb +1 -13
  34. data/app/views/archangel/backend/widgets/_widget.html.erb +10 -0
  35. data/app/views/archangel/backend/widgets/index.html.erb +1 -12
  36. data/bin/citest +3 -0
  37. data/bin/test +4 -0
  38. data/config/locales/active_record.en.yml +0 -2
  39. data/config/locales/en.yml +3 -3
  40. data/db/migrate/20171003191001_create_archangel_sites.rb +0 -1
  41. data/docs/Developers.md +2 -11
  42. data/docs/Extension/Developers.md +1 -1
  43. data/docs/Release.md +7 -1
  44. data/lib/archangel.rb +13 -0
  45. data/lib/archangel/command/templates/extension/Gemfile +0 -1
  46. data/lib/archangel/command/templates/extension/README.md +2 -11
  47. data/lib/archangel/command/templates/extension/Rakefile +4 -0
  48. data/lib/archangel/config.rb +5 -3
  49. data/lib/archangel/engine.rb +1 -1
  50. data/lib/archangel/liquid/drop.rb +1 -67
  51. data/lib/archangel/liquid/drops/site_drop.rb +0 -8
  52. data/lib/archangel/testing_support/factories/archangel_assets.rb +0 -5
  53. data/lib/archangel/testing_support/factories/archangel_sites.rb +0 -4
  54. data/lib/archangel/testing_support/support.rb +0 -4
  55. data/lib/archangel/version.rb +1 -1
  56. data/lib/generators/archangel/dummy/dummy_generator.rb +49 -27
  57. data/lib/generators/archangel/dummy/templates/config/database.yml +1 -1
  58. data/lib/generators/archangel/install/templates/config/archangel.yml +1 -18
  59. data/spec/controllers/archangel/backend/assets_controller_spec.rb +0 -11
  60. data/spec/controllers/archangel/backend/sites_controller_spec.rb +0 -16
  61. data/spec/features/backend/{duplicate_page_slugs_spec.rb → pages/duplicate_slugs_spec.rb} +0 -0
  62. data/spec/features/frontend/{drop_variables_spec.rb → liquid_drop_variables_spec.rb} +0 -2
  63. data/spec/features/frontend/{homepage_redirect_spec.rb → pages/homepage_redirect_spec.rb} +0 -0
  64. data/spec/lib/archangel/liquid/drops/site_drop_spec.rb +0 -5
  65. data/spec/lib/archangel/liquid/tags/asset_tag_spec.rb +2 -1
  66. data/spec/models/archangel/entry_spec.rb +4 -4
  67. data/spec/models/archangel/page_spec.rb +4 -4
  68. data/spec/models/archangel/template_spec.rb +14 -0
  69. data/spec/support/.keep +0 -0
  70. data/spec/uploaders/archangel/asset_uploader_spec.rb +1 -24
  71. data/vendor/assets/stylesheets/daterangepicker/_daterangepicker.scss +0 -2
  72. metadata +17 -10
  73. data/app/assets/images/archangel/fallback/favicon.ico +0 -0
  74. data/app/uploaders/archangel/favicon_uploader.rb +0 -38
  75. data/docs/Extension/Ideas.md +0 -133
  76. data/spec/support/coveralls.rb +0 -5
  77. data/spec/uploaders/archangel/favicon_uploader_spec.rb +0 -39
@@ -1,38 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Archangel
4
- ##
5
- # Favicon uploader
6
- #
7
- class FaviconUploader < ApplicationUploader
8
- process resize_to_fill: [32, 32]
9
- process convert: :ico
10
-
11
- ##
12
- # Uploaded path for file
13
- #
14
- # @return [String] upload path
15
- #
16
- def default_path
17
- "archangel/fallback/" + [version_name, "favicon.ico"].compact.join("_")
18
- end
19
-
20
- ##
21
- # File extension whitelist
22
- #
23
- # @return [Array] file extension whitelist
24
- #
25
- def extension_whitelist
26
- Archangel.config.favicon_extension_whitelist
27
- end
28
-
29
- ##
30
- # Uploaded file name
31
- #
32
- # @return [String] file name
33
- #
34
- def filename
35
- "favicon.ico" if original_filename.present?
36
- end
37
- end
38
- end
@@ -1,133 +0,0 @@
1
- # Extension Ideas
2
-
3
- Feeling bored? Looking for ideas?
4
-
5
- _ \* In no particular order_
6
-
7
- * GDPR
8
- * https://github.com/prey/gdpr_rails
9
- * Preview
10
- * Page preview
11
- * Angular
12
- * Helper extension to include for themes built with Angular
13
- * React
14
- * Helper extension to include for themes built with React
15
- * Vue
16
- * Helper extension to include for themes built with Vue
17
- * Aurelia
18
- * Helper extension to include for themes built with Aurelia
19
- * Search
20
- * Elasticsearch
21
- * Ransack
22
- * Comments
23
- * Facebook
24
- * Disqus
25
- * Database
26
- * Auto approve
27
- * Manual approve
28
- * Migrate
29
- * Export for Wordpress
30
- * Export for Refinary
31
- * Import from Wordpress
32
- * Import from Refinary
33
- * Forms
34
- * WYSIWYG for custom form builder
35
- * Honeypot
36
- * Time
37
- * Captcha
38
- * Multi-tenant
39
- * Types
40
- * Domain
41
- * Subdomain
42
- * Schema switching
43
- * Manage domains
44
- * CLI to create schemas
45
- * Background worker to create schemas
46
- * Notifications
47
- * json_ld
48
- * API
49
- * CORS
50
- * Rate limits
51
- * GraphQL
52
- * Social Like
53
- * Types
54
- * Facebook
55
- * Database
56
- * Toggle enabled/disabled by default
57
- * Toggle enabled/disabled per page
58
- * Social Share
59
- * Toggle enabled/disabled by default
60
- * Toggle enabled/disabled per page
61
- * robots.txt
62
- * RSS feed
63
- * Sitemap
64
- * Columns
65
- * changefreq
66
- * always
67
- * hourly
68
- * daily
69
- * weekly
70
- * monthly
71
- * yearly
72
- * never
73
- * priority
74
- * 0.0..1.0
75
- * sitemap.xml
76
- * sitemap.xml.gz
77
- * Update robots.txt
78
- * Rebuild on Page save (background worker)
79
- * Notify search engines (background worker)
80
- * 2FA
81
- * Opt-in
82
- * Force all
83
- * Oauth
84
- * Splash Page
85
- * Types
86
- * Overlay
87
- * Redirect
88
- * Start At
89
- * End At
90
- * Remember with Javascript cookie
91
- * Cookie lifetime
92
- * Pixel trackers
93
- * Location
94
- * Head
95
- * Body (top)
96
- * Body (bottom)
97
- * Statistics/Analytics
98
- * Google Analytics
99
- * Graphs/Charts
100
- * History/Versions
101
- * Roll back to previous versions
102
- * Activity
103
- * Log activity in backend
104
- * Icons
105
- * favicon
106
- * Apple
107
- * Android
108
- * Windows
109
- * Stylesheet
110
- * Site Stylesheet
111
- * Per page Stylesheet
112
- * Javascript
113
- * Site Javascript
114
- * Per page Javascript
115
- * Community
116
- * Allow registering
117
- * User listing
118
- * User profile
119
- * User search/filter
120
- * Friends/Followers
121
- * Events
122
- * Calendar
123
- * Reoccurring events
124
- * Reminders
125
- * sms
126
- * email
127
- * Google Calendar integration
128
- * iCloud Calendar integration
129
- * Static
130
- * Generate static frontend site
131
- * Help
132
- * Help and instructions for each section in Backend
133
- * Monetize YouTube videos
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "coveralls"
4
-
5
- Coveralls.wear! if ENV["CI"]
@@ -1,39 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "rails_helper"
4
-
5
- module Archangel
6
- RSpec.describe FaviconUploader, type: :uploader do
7
- let(:site) { create(:site) }
8
- let(:uploader) { described_class.new(site, :favicon) }
9
-
10
- before do
11
- described_class.enable_processing = true
12
-
13
- uploader.store!(fixture_file_upload(uploader_test_favicon))
14
- end
15
-
16
- after do
17
- described_class.enable_processing = false
18
-
19
- uploader.remove!
20
- end
21
-
22
- it "uses default image" do
23
- expect(subject.default_url)
24
- .to include("assets/archangel/fallback/favicon")
25
- end
26
-
27
- it "allows certain extensions" do
28
- expect(subject.extension_whitelist).to eq %i[gif ico jpeg jpg png]
29
- end
30
-
31
- it "scales an original image to be no larger than 32 by 32 pixels" do
32
- expect(uploader).to be_no_larger_than(32, 32)
33
- end
34
-
35
- it "makes the image with 666 permissions" do
36
- expect(uploader).to have_permissions(0o666)
37
- end
38
- end
39
- end