binda 0.1.9 → 0.1.10
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.
- checksums.yaml +4 -4
- data/README.md +17 -5
- data/app/models/binda/board.rb +20 -0
- data/app/models/binda/component.rb +11 -1
- data/app/views/binda/fieldable/form_item_selections/_form_item_radio.html.erb +1 -1
- data/db/migrate/1_create_binda_tables.rb +2 -2
- data/lib/binda/version.rb +1 -1
- data/lib/tasks/create_missing_field_instances_task.rake +6 -4
- data/lib/tasks/remove_orphan_boards.rake +10 -0
- data/lib/tasks/remove_orphan_components.rake +10 -0
- metadata +9 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 52614555a658b18ef7f5328235b412ac4af9fda4
|
4
|
+
data.tar.gz: a8f26c65b1fa0cf4bb7381105966d778b1d058ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 76995be7b669677cb3d9c03ff3c6e0c711c8aa523e6f3c50b632a5b505d15021998da8f4075eaf1918fdb915309c8a8afe5577fcd71e95cc90076fc703b4e261
|
7
|
+
data.tar.gz: 61011c78f26c1c5fd94dd6cded81968ab38ccd4af583777786f7de41198970c61ea1053db7bbf383d9d5dabf185f9022c56a49a66b036cd609bffd8b61a4c237
|
data/README.md
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
A modular CMS for Ruby on Rails 5.1.
|
3
3
|
|
4
4
|
[](https://badge.fury.io/rb/binda)
|
5
|
-
[](https://codeclimate.com/github/BindaCMS/binda/maintainability)
|
6
|
+
[](https://codeclimate.com/github/BindaCMS/binda/test_coverage)
|
7
7
|
[](http://inch-ci.org/github/lacolonia/binda)
|
8
8
|
|
9
9
|
> This documentation has been written for the [Official Documentation](http://www.rubydoc.info/gems/binda), not the Github README.
|
@@ -613,7 +613,8 @@ rails binda:remove_orphan_fields
|
|
613
613
|
|
614
614
|
Here a list of useful plugins:
|
615
615
|
|
616
|
-
- [Binda
|
616
|
+
- [Binda API](https://github.com/lacolonia/binda-api)
|
617
|
+
- [Binda Shopify](https://github.com/lacolonia/binda-shopify)
|
617
618
|
|
618
619
|
---
|
619
620
|
|
@@ -967,7 +968,7 @@ $ curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-0.1.4-da
|
|
967
968
|
$ chmod +x ./cc-test-reporter
|
968
969
|
$ ./cc-test-reporter before-build
|
969
970
|
$ rspec
|
970
|
-
$ ./cc-test-reporter after-build -r
|
971
|
+
$ ./cc-test-reporter after-build -r 7bffb1da50f35979ea3ef4fc205aa03c6b3c10fa603d5b66f19f81ab06d2ab97
|
971
972
|
```
|
972
973
|
|
973
974
|
`cc-test-reporter` is ignored by the repo, so it want be pushed.
|
@@ -1003,8 +1004,19 @@ If you need direct help you can join [Binda Slack Channel](https://bindacms.slac
|
|
1003
1004
|
### License
|
1004
1005
|
The gem is available as open source under the terms of the [GNU General Public License v3.0](https://github.com/a-barbieri/binda/blob/master/LICENSE).
|
1005
1006
|
|
1007
|
+
|
1008
|
+
Binda is a headless CMS with an intuitive out-of-the-box interface.
|
1009
|
+
|
1010
|
+
Copyright (C) 2017 Alessandro Barbieri
|
1011
|
+
|
1012
|
+
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License.
|
1013
|
+
|
1014
|
+
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
1015
|
+
|
1016
|
+
Find the GNU General Public License here <http://www.gnu.org/licenses/>.
|
1017
|
+
|
1006
1018
|
### Credits
|
1007
|
-
Binda is inspired by [Spina CMS](https://github.com/
|
1019
|
+
Binda is inspired by [Spina CMS](https://github.com/SpinaCMS/Spina).
|
1008
1020
|
|
1009
1021
|
We give also credit to authors and contributors of the gems that Binda uses. Huge thank you to all of them.
|
1010
1022
|
|
data/app/models/binda/board.rb
CHANGED
@@ -20,5 +20,25 @@ module Binda
|
|
20
20
|
slug.blank?
|
21
21
|
end
|
22
22
|
|
23
|
+
def self.remove_orphans
|
24
|
+
Board
|
25
|
+
.includes(:structure)
|
26
|
+
.where(binda_structures: {id: nil})
|
27
|
+
.each do |b|
|
28
|
+
b.destroy!
|
29
|
+
puts "Binda::Board with id ##{b.id} successfully destroyed"
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
# Create field instances for the current component
|
34
|
+
def create_field_instances
|
35
|
+
instance_field_settings = FieldSetting
|
36
|
+
.includes(field_group: [ :structure ])
|
37
|
+
.where(binda_structures: { id: self.structure.id })
|
38
|
+
instance_field_settings.each do |field_setting|
|
39
|
+
field_setting.create_field_instance_for(self)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
23
43
|
end
|
24
44
|
end
|
@@ -60,7 +60,17 @@ module Binda
|
|
60
60
|
instance_field_settings.each do |field_setting|
|
61
61
|
field_setting.create_field_instance_for(self)
|
62
62
|
end
|
63
|
-
|
63
|
+
end
|
64
|
+
|
65
|
+
def self.remove_orphans
|
66
|
+
Component
|
67
|
+
.includes(:structure)
|
68
|
+
.where(binda_structures: {id: nil})
|
69
|
+
.each do |c|
|
70
|
+
c.destroy!
|
71
|
+
puts "Binda::Component with id ##{c.id} successfully destroyed"
|
72
|
+
end
|
73
|
+
end
|
64
74
|
|
65
75
|
private
|
66
76
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<% current = f.object.find_or_create_a_field_by( field_setting.id, 'radio' ) %>
|
2
2
|
<%= f.simple_fields_for "radios_attributes[]", current do |ff| %>
|
3
3
|
<% if ff.object.choices.any? %>
|
4
|
-
<%= ff.input :choice_ids,
|
4
|
+
<%= ff.input :choice_ids,
|
5
5
|
label: field_setting.name.capitalize,
|
6
6
|
hint: prepare_description_for_selections_form_hint(field_setting),
|
7
7
|
as: :radio_buttons,
|
@@ -47,8 +47,8 @@ class CreateBindaTables < ActiveRecord::Migration[5.0]
|
|
47
47
|
t.index :slug, unique: true
|
48
48
|
t.text :description
|
49
49
|
t.integer :position
|
50
|
-
t.boolean :required
|
51
|
-
t.boolean :read_only
|
50
|
+
t.boolean :required, default: false
|
51
|
+
t.boolean :read_only, default: false
|
52
52
|
t.text :default_text
|
53
53
|
t.string :field_type
|
54
54
|
t.belongs_to :field_group
|
data/lib/binda/version.rb
CHANGED
@@ -1,10 +1,12 @@
|
|
1
1
|
namespace :binda do
|
2
2
|
desc "Create missing field instances for each component and board"
|
3
3
|
task :create_missing_field_instances => :environment do
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
4
|
+
%w( Component Board ).each do |instance_class|
|
5
|
+
"Binda::#{instance_class}".constantize.all.each do |instance|
|
6
|
+
puts "Checking Binda::#{instance_class} with id = #{instance.id} ..."
|
7
|
+
instance.create_field_instances
|
8
|
+
puts "Check completed"
|
9
|
+
end
|
8
10
|
end
|
9
11
|
end
|
10
12
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: binda
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alessandro Barbieri
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-09-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
version: '5.0'
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: '5.
|
22
|
+
version: '5.3'
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,7 +29,7 @@ dependencies:
|
|
29
29
|
version: '5.0'
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: '5.
|
32
|
+
version: '5.3'
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: jquery-rails
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -107,7 +107,7 @@ dependencies:
|
|
107
107
|
version: '3.3'
|
108
108
|
- - "<"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
110
|
+
version: '4.1'
|
111
111
|
type: :runtime
|
112
112
|
prerelease: false
|
113
113
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -117,7 +117,7 @@ dependencies:
|
|
117
117
|
version: '3.3'
|
118
118
|
- - "<"
|
119
119
|
- !ruby/object:Gem::Version
|
120
|
-
version: '
|
120
|
+
version: '4.1'
|
121
121
|
- !ruby/object:Gem::Dependency
|
122
122
|
name: tinymce-rails
|
123
123
|
requirement: !ruby/object:Gem::Requirement
|
@@ -904,6 +904,8 @@ files:
|
|
904
904
|
- lib/tasks/add_default_helpers_class_task.rake
|
905
905
|
- lib/tasks/add_video_feature_task.rake
|
906
906
|
- lib/tasks/create_missing_field_instances_task.rake
|
907
|
+
- lib/tasks/remove_orphan_boards.rake
|
908
|
+
- lib/tasks/remove_orphan_components.rake
|
907
909
|
- lib/tasks/remove_orphan_fields_task.rake
|
908
910
|
- lib/tasks/set_repeater_position_task.rake
|
909
911
|
- lib/tasks/update_image_details_task.rake
|
@@ -1120,7 +1122,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1120
1122
|
version: '0'
|
1121
1123
|
requirements: []
|
1122
1124
|
rubyforge_project:
|
1123
|
-
rubygems_version: 2.
|
1125
|
+
rubygems_version: 2.5.1
|
1124
1126
|
signing_key:
|
1125
1127
|
specification_version: 4
|
1126
1128
|
summary: Binda CMS
|