symphonia 4.2.0 → 5.0.3

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 (59) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +31 -1
  4. data/app/assets/javascripts/symphonia/application.js +3 -3
  5. data/app/assets/stylesheets/symphonia/_font_awesome.scss +8 -6
  6. data/app/assets/stylesheets/symphonia/_layout.scss +33 -1
  7. data/app/assets/stylesheets/symphonia/application.css +1 -1
  8. data/app/assets/stylesheets/symphonia/basic.scss +3 -99
  9. data/app/assets/stylesheets/symphonia/filters.scss +3 -5
  10. data/app/assets/stylesheets/symphonia/symphonia_bootstrap.scss +1 -1
  11. data/app/controllers/symphonia/accounts_controller.rb +7 -3
  12. data/app/controllers/symphonia/application_controller.rb +2 -1
  13. data/app/controllers/symphonia/users_controller.rb +17 -29
  14. data/app/helpers/symphonia/application_helper.rb +48 -26
  15. data/app/models/symphonia/preference.rb +5 -5
  16. data/app/models/symphonia/user.rb +3 -35
  17. data/app/models/symphonia/user_ability.rb +46 -0
  18. data/app/views/common/403.html.erb +4 -3
  19. data/app/views/layouts/symphonia/application.html.erb +4 -4
  20. data/app/views/symphonia/accounts/_detail.html.erb +21 -18
  21. data/app/views/symphonia/common/_filters.html.erb +15 -15
  22. data/app/views/symphonia/common/_share_links.html.erb +2 -3
  23. data/app/views/symphonia/users/_form.html.erb +1 -6
  24. data/app/views/symphonia/users/show.html.erb +15 -20
  25. data/config/locales/cs.yml +3 -2
  26. data/db/migrate/20130714140500_create_users.rb +0 -2
  27. data/db/seeds.rb +3 -3
  28. data/lib/generators/symphonia/entity_controller/entity_controller_generator.rb +2 -2
  29. data/lib/generators/symphonia/entity_controller/templates/{controller.rb → controller.rb.tt} +0 -0
  30. data/lib/symphonia/admin_constraint.rb +1 -1
  31. data/lib/symphonia/base_controller.rb +9 -17
  32. data/lib/symphonia/controller_extensions.rb +5 -15
  33. data/lib/symphonia/engine.rb +10 -42
  34. data/lib/symphonia/form_builder.rb +17 -16
  35. data/lib/symphonia/menu_manager.rb +15 -11
  36. data/lib/symphonia/object.rb +9 -9
  37. data/lib/symphonia/spec_helper.rb +8 -4
  38. data/lib/symphonia/user_management.rb +1 -1
  39. data/lib/symphonia/version.rb +1 -1
  40. data/lib/symphonia.rb +12 -9
  41. data/spec/factories/factories.rb +0 -4
  42. data/spec/models/user_spec.rb +39 -2
  43. data/spec/spec_helper.rb +0 -1
  44. data/spec/support/stub_users.rb +7 -7
  45. metadata +54 -111
  46. data/app/controllers/symphonia/roles_controller.rb +0 -39
  47. data/app/models/symphonia/role.rb +0 -55
  48. data/app/views/symphonia/roles/_form.html.erb +0 -26
  49. data/app/views/symphonia/roles/edit.html.erb +0 -5
  50. data/app/views/symphonia/roles/index.html.erb +0 -6
  51. data/app/views/symphonia/roles/new.html.erb +0 -4
  52. data/app/views/symphonia/roles/show.html.erb +0 -11
  53. data/db/migrate/20130714140501_create_roles.rb +0 -18
  54. data/db/migrate/20210509141420_roles_change_permissions_to_json.rb +0 -18
  55. data/db/migrate/20210509180525_roles_change_permissions_to_native_json.rb +0 -7
  56. data/lib/symphonia/permissions.rb +0 -93
  57. data/spec/controllers/roles_controller_spec.rb +0 -12
  58. data/spec/models/role_spec.rb +0 -13
  59. data/spec/requests/roles_spec.rb +0 -10
@@ -1,26 +1,26 @@
1
1
  module Symphonia
2
2
  class FormBuilder < ::BootstrapForm::FormBuilder
3
3
 
4
+ delegate :tag, :t, to: :@template
5
+
4
6
  def error_messages
5
- if object.respond_to?(:errors) && object.errors.any?
6
- list = content_tag(:p, I18n.t('activerecord.errors.template.body')).html_safe
7
- list += content_tag(:ul) do
8
- object.errors.full_messages.collect do |error|
9
- content_tag(:li, error)
10
- end.join.html_safe
11
- end
12
- content_tag(:div, list, class: 'error_explanation')
7
+ return if !object.respond_to?(:errors) || object.errors.blank?
8
+
9
+ list = tag.p(@template.icon("circle-exclamation", t('activerecord.errors.template.body')))
10
+ list += tag.ul do
11
+ object.errors.full_messages.collect do |error|
12
+ tag.li error
13
+ end.join.html_safe
13
14
  end
15
+ tag.div(list, class: 'alert alert-danger error_explanation')
14
16
  end
15
17
 
16
18
  def calendar_field(name, options = {})
17
- options[:data] ||= {} #{'date-clear-btn': true, 'date-format': 'yyyy-mm-dd'}
18
- options[:data][:'date-clear-btn'] ||= true
19
- # options[:data][:'date-format'] ||= 'yyyy-mm-dd'
20
- text_field(name, options.merge({
21
- class: 'form-control datepicker',
22
- append: @template.fa_icon('calendar')
23
- }))
19
+ options[:type] ||= "date"
20
+ text_field(name, options.merge(
21
+ class: 'form-control datepicker',
22
+ append: @template.icon('calendar'),
23
+ ))
24
24
  end
25
25
 
26
26
  # def form_group_builder(method, options, html_options = nil)
@@ -91,6 +91,7 @@ module Symphonia
91
91
  options[:text]
92
92
  end
93
93
  end
94
+
94
95
  # def generate_label(id, name, options, custom_label_col, group_layout)
95
96
  # return if options.blank?
96
97
  # # id is the caller's options[:id] at the only place this method is called.
@@ -134,4 +135,4 @@ module Symphonia
134
135
  end
135
136
 
136
137
  end
137
- end
138
+ end
@@ -1,23 +1,27 @@
1
1
  module Symphonia
2
- module MenuManager
3
- @@mapper = {}
4
- mattr_accessor :mapper
2
+ # Store in-app menu super-global object for all instances/workers
3
+ class MenuManager
4
+ class << self
5
5
 
6
- def self.menu(name)
7
- return mapper[name.to_sym] || {}
8
- end
6
+ def mapper
7
+ $mapper ||= {}
8
+ end
9
+
10
+ # @param [Symbol] name
11
+ def menu(name)
12
+ mapper[name] || {}
13
+ end
9
14
 
10
- class << self
11
15
  def map(menu_name)
12
16
  mapper[menu_name] ||= {}
13
- if block_given?
14
- yield mapper[menu_name]
15
- end
17
+ yield mapper[menu_name]
16
18
  end
17
19
 
18
20
  def clear(menu_name)
19
- !mapper.delete(menu_name.to_sym).nil?
21
+ !mapper.delete(menu_name).nil?
20
22
  end
23
+
21
24
  end
25
+
22
26
  end
23
27
  end
@@ -1,31 +1,31 @@
1
- class Object
2
- # def to_boolean
3
- # return true if self.is_a?(TrueClass)
4
-
5
- # respond_to?(:downcase) && ['true', 1, '1', 'yes', 't', 'y'].include?(self.downcase)
6
- # end
7
- end
8
-
9
1
  class String
2
+
10
3
  def to_boolean
11
- ['true', 1, '1', 'yes', 't', 'y'].include?(self.downcase)
4
+ ['true', 1, '1', 'yes', 't', 'y'].include?(downcase)
12
5
  end
6
+
13
7
  end
14
8
 
15
9
  class NilClass
10
+
16
11
  def to_boolean
17
12
  false
18
13
  end
14
+
19
15
  end
20
16
 
21
17
  class FalseClass
18
+
22
19
  def to_boolean
23
20
  false
24
21
  end
22
+
25
23
  end
26
24
 
27
25
  class TrueClass
26
+
28
27
  def to_boolean
29
28
  true
30
29
  end
30
+
31
31
  end
@@ -1,6 +1,10 @@
1
- if Rails.env.test?
2
- require File.expand_path('../../../spec/spec_helper', __FILE__)
3
- Dir.glob(File.expand_path('../../../spec/{factories,support}/*.rb', __FILE__)).each do |file|
4
- require file
1
+ module Symphonia
2
+ module SpecHelper
3
+ if Rails.env.test?
4
+ require File.expand_path('../../../spec/spec_helper', __FILE__)
5
+ Dir.glob(File.expand_path('../../../spec/{factories,support}/*.rb', __FILE__)).each do |file|
6
+ require file
7
+ end
8
+ end
5
9
  end
6
10
  end
@@ -29,7 +29,7 @@ module Symphonia
29
29
  end
30
30
 
31
31
  def name=(string)
32
- words = string.split(" ")
32
+ words = string.split
33
33
  self.first_name = words[0..-2].join(" ")
34
34
  self.last_name = words[-1]
35
35
  end
@@ -1,5 +1,5 @@
1
1
  module Symphonia
2
2
 
3
- VERSION = '4.2.0'
3
+ VERSION = '5.0.3'
4
4
 
5
5
  end
data/lib/symphonia.rb CHANGED
@@ -2,15 +2,18 @@ module Symphonia
2
2
 
3
3
  include ::ActiveSupport::Configurable
4
4
 
5
- autoload :BaseController, 'symphonia/base_controller'
6
- autoload :BootstrapLinkRender, 'symphonia/bootstrap_link_render'
7
- autoload :ControllerExtensions, 'symphonia/controller_extensions'
8
- autoload :EntityDecorator, 'symphonia/entity_decorator'
9
- autoload :FormBuilder, 'symphonia/form_builder'
10
- autoload :ModelAttributes, 'symphonia/model_attributes'
11
- autoload :ModelFilters, 'symphonia/model_filters'
12
- autoload :Query, 'symphonia/query'
13
- autoload :QueryColumns, 'symphonia/query_columns'
5
+ # autoload :BaseController, 'symphonia/base_controller'
6
+ # autoload :BootstrapLinkRender, 'symphonia/bootstrap_link_render'
7
+ # autoload :ControllerExtensions, 'symphonia/controller_extensions'
8
+ # autoload :EntityDecorator, 'symphonia/entity_decorator'
9
+ # autoload :FormBuilder, 'symphonia/form_builder'
10
+ # autoload :MenuManager, 'symphonia/menu_manager'
11
+ # autoload :ModelAttributes, 'symphonia/model_attributes'
12
+ # autoload :ModelFilters, 'symphonia/model_filters'
13
+ # autoload :Permissions, 'symphonia/permissions'
14
+ # autoload :Query, 'symphonia/query'
15
+ # autoload :QueryColumns, 'symphonia/query_columns'
16
+ # autoload :UserManagement, 'symphonia/user_management'
14
17
 
15
18
  module ActionCable
16
19
 
@@ -23,10 +23,6 @@ FactoryBot.define do
23
23
  factory :admin_user, traits: [:admin]
24
24
  end
25
25
 
26
- factory :role, class: 'Symphonia::Role' do
27
- sequence(:name) { |n| "#{Faker::Job.title} #{n}" }
28
- end
29
-
30
26
  factory :preference, class: 'Symphonia::Preference' do
31
27
 
32
28
  factory :email_preference, class: 'Symphonia::EmailPreference' do
@@ -1,7 +1,8 @@
1
1
  RSpec.describe Symphonia::User do
2
2
  subject { FactoryBot.create(:user, email: "test@dummy.com") }
3
+
3
4
  it "#like" do
4
- expect(Symphonia::User.like(subject.mail)).to be_all Symphonia::User
5
+ expect(described_class.like(subject.mail)).to be_all described_class
5
6
  end
6
7
 
7
8
  it "#to_s" do
@@ -22,14 +23,50 @@ RSpec.describe Symphonia::User do
22
23
  end
23
24
  end
24
25
 
25
-
26
26
  describe "#required_password" do
27
27
  it "require password for internal" do
28
28
  expect { FactoryBot.create(:user, password: nil) }.to raise_error ActiveRecord::RecordInvalid
29
29
  end
30
+
30
31
  it "do not require password for external_ids" do
31
32
  expect { FactoryBot.create(:user, password: nil, external_id: "ex1") }.not_to raise_error
32
33
  end
33
34
  end
34
35
 
36
+ require "cancan/matchers"
37
+
38
+ describe "abilities" do
39
+ subject(:ability) { Symphonia::UserAbility.new(user) }
40
+
41
+ let(:admin) { create(:admin_user) }
42
+ let(:franta) { create(:user, login: "franta", status: :pending) }
43
+ let(:user) { nil }
44
+
45
+ context "when is an admin" do
46
+ let(:user) { create(:admin_user) }
47
+
48
+ it { is_expected.to be_able_to(:show, admin) }
49
+ it { is_expected.to be_able_to(:edit, admin) }
50
+ it { is_expected.to be_able_to(:edit, user) }
51
+ it { is_expected.not_to be_able_to(:activate, described_class.new(status: :active)) }
52
+ it { is_expected.to be_able_to(:activate, described_class.new(status: :pending)) }
53
+ it { is_expected.not_to be_able_to(:activate, described_class.new(status: :archived)) }
54
+ it { is_expected.to be_able_to(:archive, described_class.new(status: :active)) }
55
+ it { is_expected.not_to be_able_to(:archive, described_class.new(status: :archived)) }
56
+
57
+ end
58
+
59
+ context "regular user" do
60
+ let(:user) { create(:user) }
61
+
62
+ it { is_expected.not_to be_able_to(:show, franta) }
63
+ it { is_expected.to be_able_to(:show, user) }
64
+ it { is_expected.to be_able_to(:edit, user) }
65
+ it { is_expected.not_to be_able_to(:edit, franta) }
66
+ it { is_expected.to be_able_to(:update, user) }
67
+ it { is_expected.not_to be_able_to(:destroy, described_class.new) }
68
+ it { is_expected.not_to be_able_to(:create, described_class.new) }
69
+ it { is_expected.not_to be_able_to(:update, described_class.new) }
70
+ end
71
+ end
35
72
  end
data/spec/spec_helper.rb CHANGED
@@ -3,7 +3,6 @@ require 'pry-rails'
3
3
  require 'faker'
4
4
  require 'factory_bot_rails'
5
5
  require 'database_cleaner'
6
- require 'sass-rails'
7
6
  require 'authlogic/test_case'
8
7
 
9
8
  Dir.glob(File.join(__dir__, 'support', '*.rb')).sort.each { |f| require f }
@@ -6,10 +6,10 @@ def regular_user
6
6
  @regular_user ||= FactoryBot.create :user
7
7
  end
8
8
 
9
- def add_permission *args
10
- @role ||= FactoryBot.build_stubbed :role
11
- @role.permissions = args
12
- regular_user.role = @role
13
- # allow(regular_user).to receive(:role).and_return @role
14
- @role
15
- end
9
+ # def add_permission *args
10
+ # # @role ||= FactoryBot.build_stubbed :role
11
+ # # @role.permissions = args
12
+ # # regular_user.role = @role
13
+ # # # allow(regular_user).to receive(:role).and_return @role
14
+ # # @role
15
+ # end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: symphonia
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.0
4
+ version: 5.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lukas Pokorny
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-04-08 00:00:00.000000000 Z
11
+ date: 2022-09-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: api-pagination
@@ -39,89 +39,75 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: 6.4.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: bootstrap
42
+ name: bootstrap_form
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 4.6.0
47
+ version: 4.4.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 4.6.0
55
- - !ruby/object:Gem::Dependency
56
- name: bootstrap-datepicker-rails
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
54
+ version: 4.4.0
69
55
  - !ruby/object:Gem::Dependency
70
- name: bootstrap_form
56
+ name: cancancan
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
59
  - - "~>"
74
60
  - !ruby/object:Gem::Version
75
- version: 4.4.0
61
+ version: '3.4'
76
62
  type: :runtime
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
66
  - - "~>"
81
67
  - !ruby/object:Gem::Version
82
- version: 4.4.0
68
+ version: '3.4'
83
69
  - !ruby/object:Gem::Dependency
84
- name: font-awesome-rails
70
+ name: net-smtp
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
73
  - - "~>"
88
74
  - !ruby/object:Gem::Version
89
- version: 4.7.0.5
75
+ version: 0.3.1
90
76
  type: :runtime
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
80
  - - "~>"
95
81
  - !ruby/object:Gem::Version
96
- version: 4.7.0.5
82
+ version: 0.3.1
97
83
  - !ruby/object:Gem::Dependency
98
- name: jquery-rails
84
+ name: net-pop
99
85
  requirement: !ruby/object:Gem::Requirement
100
86
  requirements:
101
- - - ">="
87
+ - - "~>"
102
88
  - !ruby/object:Gem::Version
103
- version: '0'
89
+ version: 0.1.1
104
90
  type: :runtime
105
91
  prerelease: false
106
92
  version_requirements: !ruby/object:Gem::Requirement
107
93
  requirements:
108
- - - ">="
94
+ - - "~>"
109
95
  - !ruby/object:Gem::Version
110
- version: '0'
96
+ version: 0.1.1
111
97
  - !ruby/object:Gem::Dependency
112
- name: jquery-ui-rails
98
+ name: net-imap
113
99
  requirement: !ruby/object:Gem::Requirement
114
100
  requirements:
115
- - - ">="
101
+ - - "~>"
116
102
  - !ruby/object:Gem::Version
117
- version: '0'
103
+ version: 0.2.3
118
104
  type: :runtime
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
107
  requirements:
122
- - - ">="
108
+ - - "~>"
123
109
  - !ruby/object:Gem::Version
124
- version: '0'
110
+ version: 0.2.3
125
111
  - !ruby/object:Gem::Dependency
126
112
  name: rails
127
113
  requirement: !ruby/object:Gem::Requirement
@@ -140,16 +126,16 @@ dependencies:
140
126
  name: rails-i18n
141
127
  requirement: !ruby/object:Gem::Requirement
142
128
  requirements:
143
- - - ">="
129
+ - - "~>"
144
130
  - !ruby/object:Gem::Version
145
- version: '0'
131
+ version: '6.0'
146
132
  type: :runtime
147
133
  prerelease: false
148
134
  version_requirements: !ruby/object:Gem::Requirement
149
135
  requirements:
150
- - - ">="
136
+ - - "~>"
151
137
  - !ruby/object:Gem::Version
152
- version: '0'
138
+ version: '6.0'
153
139
  - !ruby/object:Gem::Dependency
154
140
  name: rake
155
141
  requirement: !ruby/object:Gem::Requirement
@@ -178,20 +164,6 @@ dependencies:
178
164
  - - ">="
179
165
  - !ruby/object:Gem::Version
180
166
  version: '0'
181
- - !ruby/object:Gem::Dependency
182
- name: sass-rails
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: '0'
188
- type: :runtime
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - ">="
193
- - !ruby/object:Gem::Version
194
- version: '0'
195
167
  - !ruby/object:Gem::Dependency
196
168
  name: scrypt
197
169
  requirement: !ruby/object:Gem::Requirement
@@ -212,28 +184,28 @@ dependencies:
212
184
  requirements:
213
185
  - - "~>"
214
186
  - !ruby/object:Gem::Version
215
- version: 6.4.1
187
+ version: '6.5'
216
188
  type: :runtime
217
189
  prerelease: false
218
190
  version_requirements: !ruby/object:Gem::Requirement
219
191
  requirements:
220
192
  - - "~>"
221
193
  - !ruby/object:Gem::Version
222
- version: 6.4.1
194
+ version: '6.5'
223
195
  - !ruby/object:Gem::Dependency
224
196
  name: sidekiq-cron
225
197
  requirement: !ruby/object:Gem::Requirement
226
198
  requirements:
227
199
  - - "~>"
228
200
  - !ruby/object:Gem::Version
229
- version: '1.3'
201
+ version: '1.7'
230
202
  type: :runtime
231
203
  prerelease: false
232
204
  version_requirements: !ruby/object:Gem::Requirement
233
205
  requirements:
234
206
  - - "~>"
235
207
  - !ruby/object:Gem::Version
236
- version: '1.3'
208
+ version: '1.7'
237
209
  - !ruby/object:Gem::Dependency
238
210
  name: sortable-table
239
211
  requirement: !ruby/object:Gem::Requirement
@@ -248,20 +220,6 @@ dependencies:
248
220
  - - ">="
249
221
  - !ruby/object:Gem::Version
250
222
  version: 0.1.1
251
- - !ruby/object:Gem::Dependency
252
- name: turbolinks
253
- requirement: !ruby/object:Gem::Requirement
254
- requirements:
255
- - - ">="
256
- - !ruby/object:Gem::Version
257
- version: '0'
258
- type: :runtime
259
- prerelease: false
260
- version_requirements: !ruby/object:Gem::Requirement
261
- requirements:
262
- - - ">="
263
- - !ruby/object:Gem::Version
264
- version: '0'
265
223
  - !ruby/object:Gem::Dependency
266
224
  name: will_paginate
267
225
  requirement: !ruby/object:Gem::Requirement
@@ -318,7 +276,6 @@ files:
318
276
  - app/controllers/symphonia/application_controller.rb
319
277
  - app/controllers/symphonia/filters_controller.rb
320
278
  - app/controllers/symphonia/login_controller.rb
321
- - app/controllers/symphonia/roles_controller.rb
322
279
  - app/controllers/symphonia/user_sessions_controller.rb
323
280
  - app/controllers/symphonia/users_controller.rb
324
281
  - app/helpers/symphonia/application_helper.rb
@@ -330,8 +287,8 @@ files:
330
287
  - app/models/symphonia/application_record.rb
331
288
  - app/models/symphonia/email_preference.rb
332
289
  - app/models/symphonia/preference.rb
333
- - app/models/symphonia/role.rb
334
290
  - app/models/symphonia/user.rb
291
+ - app/models/symphonia/user_ability.rb
335
292
  - app/models/symphonia/user_session.rb
336
293
  - app/views/base/_form.html.erb
337
294
  - app/views/base/edit.html.erb
@@ -377,11 +334,6 @@ files:
377
334
  - app/views/symphonia/notifier/user_change_to_active.text.erb
378
335
  - app/views/symphonia/notifier/user_registered.html.erb
379
336
  - app/views/symphonia/notifier/user_registered.text.erb
380
- - app/views/symphonia/roles/_form.html.erb
381
- - app/views/symphonia/roles/edit.html.erb
382
- - app/views/symphonia/roles/index.html.erb
383
- - app/views/symphonia/roles/new.html.erb
384
- - app/views/symphonia/roles/show.html.erb
385
337
  - app/views/symphonia/users/_form.html.erb
386
338
  - app/views/symphonia/users/edit.html.erb
387
339
  - app/views/symphonia/users/edit.js.erb
@@ -393,16 +345,13 @@ files:
393
345
  - config/locales/en.yml
394
346
  - config/routes.rb
395
347
  - db/migrate/20130714140500_create_users.rb
396
- - db/migrate/20130714140501_create_roles.rb
397
348
  - db/migrate/20130714140502_create_preferences.rb
398
349
  - db/migrate/20190706130409_add_external_id_to_users.rb
399
350
  - db/migrate/20200428180001_add_uuid_to_users.rb
400
351
  - db/migrate/20200428180008_add_avatar_to_users.rb
401
- - db/migrate/20210509141420_roles_change_permissions_to_json.rb
402
- - db/migrate/20210509180525_roles_change_permissions_to_native_json.rb
403
352
  - db/seeds.rb
404
353
  - lib/generators/symphonia/entity_controller/entity_controller_generator.rb
405
- - lib/generators/symphonia/entity_controller/templates/controller.rb
354
+ - lib/generators/symphonia/entity_controller/templates/controller.rb.tt
406
355
  - lib/generators/symphonia/query/query_generator.rb
407
356
  - lib/generators/symphonia/setup/setup_generator.rb
408
357
  - lib/generators/symphonia/setup/templates/Gemfile
@@ -434,7 +383,6 @@ files:
434
383
  - lib/symphonia/model_filters/select_filter.rb
435
384
  - lib/symphonia/model_filters/string_filter.rb
436
385
  - lib/symphonia/object.rb
437
- - lib/symphonia/permissions.rb
438
386
  - lib/symphonia/query.rb
439
387
  - lib/symphonia/query_columns.rb
440
388
  - lib/symphonia/query_columns/attribute_column.rb
@@ -446,7 +394,6 @@ files:
446
394
  - spec/controllers/base_controller_spec.rb
447
395
  - spec/controllers/filters_controller_spec.rb
448
396
  - spec/controllers/login_controller_spec.rb
449
- - spec/controllers/roles_controller_spec.rb
450
397
  - spec/controllers/users_controller_spec.rb
451
398
  - spec/factories/factories.rb
452
399
  - spec/helpers/symphonia/application_helper_spec.rb
@@ -458,12 +405,10 @@ files:
458
405
  - spec/models/query/attribute_spec.rb
459
406
  - spec/models/query/filters_spec.rb
460
407
  - spec/models/query/symphonia_query_spec.rb
461
- - spec/models/role_spec.rb
462
408
  - spec/models/user_spec.rb
463
409
  - spec/rails_helper.rb
464
410
  - spec/requests/accounts_spec.rb
465
411
  - spec/requests/login_spec.rb
466
- - spec/requests/roles_spec.rb
467
412
  - spec/requests/users_spec.rb
468
413
  - spec/spec_helper.rb
469
414
  - spec/support/query.rb
@@ -477,7 +422,8 @@ files:
477
422
  homepage: https://github.com/luk4s
478
423
  licenses:
479
424
  - GPL-3.0
480
- metadata: {}
425
+ metadata:
426
+ rubygems_mfa_required: 'true'
481
427
  post_install_message: 'run: rails g symphonia:setup'
482
428
  rdoc_options: []
483
429
  require_paths:
@@ -493,41 +439,38 @@ required_rubygems_version: !ruby/object:Gem::Requirement
493
439
  - !ruby/object:Gem::Version
494
440
  version: '0'
495
441
  requirements: []
496
- rubygems_version: 3.3.9
442
+ rubygems_version: 3.3.7
497
443
  signing_key:
498
444
  specification_version: 4
499
445
  summary: My administration
500
446
  test_files:
501
- - spec/spec_helper.rb
502
- - spec/mailers/symphonia/notifier_spec.rb
447
+ - spec/controllers/account_controller_spec.rb
448
+ - spec/controllers/admin_controller_spec.rb
449
+ - spec/controllers/base_controller_spec.rb
450
+ - spec/controllers/filters_controller_spec.rb
451
+ - spec/controllers/login_controller_spec.rb
452
+ - spec/controllers/users_controller_spec.rb
453
+ - spec/factories/factories.rb
454
+ - spec/helpers/symphonia/application_helper_spec.rb
455
+ - spec/helpers/symphonia/entity_decorator_spec.rb
456
+ - spec/helpers/symphonia/renderer_helper_spec.rb
457
+ - spec/libs/some_lib_spec.rb
503
458
  - spec/mailers/previews/symphonia/notifier_preview.rb
504
- - spec/version_spec.rb
459
+ - spec/mailers/symphonia/notifier_spec.rb
505
460
  - spec/models/query/attribute_spec.rb
506
- - spec/models/query/symphonia_query_spec.rb
507
461
  - spec/models/query/filters_spec.rb
462
+ - spec/models/query/symphonia_query_spec.rb
508
463
  - spec/models/user_spec.rb
509
- - spec/models/role_spec.rb
510
- - spec/requests/roles_spec.rb
511
- - spec/requests/login_spec.rb
464
+ - spec/rails_helper.rb
512
465
  - spec/requests/accounts_spec.rb
466
+ - spec/requests/login_spec.rb
513
467
  - spec/requests/users_spec.rb
514
- - spec/libs/some_lib_spec.rb
515
- - spec/support/stub_users.rb
468
+ - spec/spec_helper.rb
469
+ - spec/support/query.rb
516
470
  - spec/support/shared.rb
517
- - spec/support/wait_for_ajax.rb
518
471
  - spec/support/shared_controllers.rb
519
472
  - spec/support/shared_requests.rb
520
- - spec/support/query.rb
521
- - spec/factories/factories.rb
522
- - spec/controllers/roles_controller_spec.rb
523
- - spec/controllers/login_controller_spec.rb
524
- - spec/controllers/users_controller_spec.rb
525
- - spec/controllers/filters_controller_spec.rb
526
- - spec/controllers/admin_controller_spec.rb
527
- - spec/controllers/account_controller_spec.rb
528
- - spec/controllers/base_controller_spec.rb
473
+ - spec/support/stub_users.rb
474
+ - spec/support/wait_for_ajax.rb
475
+ - spec/version_spec.rb
529
476
  - spec/views/filters/options.html.erb_spec.rb
530
- - spec/rails_helper.rb
531
- - spec/helpers/symphonia/application_helper_spec.rb
532
- - spec/helpers/symphonia/renderer_helper_spec.rb
533
- - spec/helpers/symphonia/entity_decorator_spec.rb