web47core 2.2.18 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -3
- data/app/controllers/status_controller.rb +7 -1
- data/app/views/system_configurations/_show.html.haml +1 -2
- data/lib/app/controllers/concerns/core_system_configuration_controller.rb +5 -16
- data/lib/app/jobs/application_job.rb +0 -1
- data/lib/app/jobs/cron/tab.rb +1 -1
- data/lib/app/models/concerns/api_tokenable.rb +1 -1
- data/lib/app/models/concerns/aws_configuration.rb +1 -26
- data/lib/app/models/concerns/cdn_url.rb +7 -2
- data/lib/app/models/concerns/core_smtp_configuration.rb +1 -1
- data/lib/app/models/concerns/core_system_configuration.rb +3 -3
- data/lib/app/models/concerns/delayed_job_configuration.rb +1 -1
- data/lib/app/models/concerns/email_able.rb +1 -1
- data/lib/app/models/concerns/server_process_able.rb +1 -1
- data/lib/app/models/concerns/standard_model.rb +3 -7
- data/lib/app/models/delayed/jobs/worker.rb +1 -1
- data/lib/app/models/notification_template.rb +1 -1
- data/lib/app/models/smtp_configuration.rb +3 -3
- data/lib/web47core/version.rb +1 -1
- data/lib/web47core.rb +0 -1
- metadata +59 -176
- data/lib/app/models/concerns/google_sso_configuration.rb +0 -32
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 566b3144e56826da109dad9c9aae596d8ae7f875d92d253f846dda027a44911b
|
4
|
+
data.tar.gz: 1e3688dcb0aea6d837b27a9417f085f6c0243577c2cc012cb65946ae22a3564f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d355f655ffa529310e5b482b9cf24aec78dee43058214b48804f71db4aab8998bca051f5a6bff384dc5e3d4aa3f593b0ef65d6ff345598cb9dc2b03cdf556240
|
7
|
+
data.tar.gz: 2b57edd50900933a14f46bc39c8e382d5562cc422e542a5380b357544789972a2af1d3bbc636a5c118b17210086cc20fc1276613930d3b09dfacbe9a5adea7c9
|
data/README.md
CHANGED
@@ -188,9 +188,7 @@ The following routes should be added to the correct namespace for your applicait
|
|
188
188
|
#
|
189
189
|
# System configuration
|
190
190
|
#
|
191
|
-
resource :system_configurations, only: %i[edit update show]
|
192
|
-
get :sync
|
193
|
-
end
|
191
|
+
resource :system_configurations, only: %i[edit update show]
|
194
192
|
#
|
195
193
|
# Delayed jobs
|
196
194
|
#
|
@@ -96,7 +96,13 @@ class StatusController < ActionController::Base
|
|
96
96
|
#
|
97
97
|
def delayed_jobs_status
|
98
98
|
count = Delayed::Backend::Mongoid::Job.count
|
99
|
-
|
99
|
+
oldest = Delayed::Backend::Mongoid::Job.asc(:_id).limit(1).first
|
100
|
+
job_age = if oldest.present?
|
101
|
+
Time.now.utc.to_i - oldest.created_at.to_i
|
102
|
+
else
|
103
|
+
0
|
104
|
+
end
|
105
|
+
report_success "#{count} Jobs", count: count, job_age: job_age
|
100
106
|
rescue StandardError => error
|
101
107
|
report_error(error)
|
102
108
|
end
|
@@ -7,7 +7,6 @@
|
|
7
7
|
.card-title=SystemConfiguration.environment.titleize
|
8
8
|
.card-tray
|
9
9
|
= edit_link_tag(SystemConfiguration, class_action_path(:edit))
|
10
|
-
= replay_link_tag(SystemConfiguration, class_action_path(:sync))
|
11
10
|
.card
|
12
11
|
.card-content.section-data-tables
|
13
12
|
%table.highlight.striped.data-table
|
@@ -16,7 +15,7 @@
|
|
16
15
|
=table_header_tag :field
|
17
16
|
=table_header_tag :value
|
18
17
|
%tbody
|
19
|
-
- SystemConfiguration.allowed_param_names.
|
18
|
+
- SystemConfiguration.allowed_param_names.each do |field|
|
20
19
|
%tr
|
21
20
|
%td=field
|
22
21
|
%td=mask_system_configuration(field)
|
@@ -10,26 +10,15 @@ module CoreSystemConfigurationsController
|
|
10
10
|
# Edit the system configuration
|
11
11
|
#
|
12
12
|
def edit
|
13
|
-
|
14
|
-
end
|
15
|
-
|
16
|
-
# @abstract Cause the system configuration to be synced with the switchboard server
|
17
|
-
def sync
|
18
|
-
raise 'System Configuration not configured to sync' unless SystemConfiguration.switchboard_configured?
|
19
|
-
|
20
|
-
Cron::SwitchboardSyncConfiguration.perform_later
|
21
|
-
flash[:info] = 'System Configuration Refreshing in the Background'
|
22
|
-
redirect_to index_path
|
23
|
-
rescue StandardError => error
|
24
|
-
log_controller_error error, true
|
25
|
-
redirect_to index_path
|
13
|
+
load_configuration
|
26
14
|
end
|
27
15
|
|
28
16
|
#
|
29
17
|
# Update and log the system configuration changes
|
30
18
|
#
|
31
19
|
def update
|
32
|
-
system_configuration.
|
20
|
+
# @system_configuration.update_attributes_and_log! @current_admin_user, system_configuration_params
|
21
|
+
SystemConfiguration.configuration.update! system_configuration_params
|
33
22
|
if SystemConfiguration.switchboard_configured?
|
34
23
|
flash[:info] = 'System Configuration Updated, sync job running in the background'
|
35
24
|
Cron::SwitchboardSyncConfiguration.perform_later
|
@@ -39,7 +28,7 @@ module CoreSystemConfigurationsController
|
|
39
28
|
redirect_to index_path
|
40
29
|
rescue StandardError => error
|
41
30
|
log_controller_error error
|
42
|
-
|
31
|
+
load_configuration
|
43
32
|
render :edit
|
44
33
|
end
|
45
34
|
|
@@ -55,7 +44,7 @@ module CoreSystemConfigurationsController
|
|
55
44
|
#
|
56
45
|
# Load the current system configuration
|
57
46
|
#
|
58
|
-
def
|
47
|
+
def load_configuration
|
59
48
|
@system_configuration = SystemConfiguration.configuration
|
60
49
|
end
|
61
50
|
end
|
data/lib/app/jobs/cron/tab.rb
CHANGED
@@ -18,7 +18,7 @@ module Cron
|
|
18
18
|
# Fields
|
19
19
|
#
|
20
20
|
field :name, type: String
|
21
|
-
field :enabled, type: Boolean, default: true
|
21
|
+
field :enabled, type: Mongoid::Boolean, default: true
|
22
22
|
field :min, type: String, default: 0
|
23
23
|
field :hour, type: String, default: 0
|
24
24
|
field :wday, type: String, default: WILDCARD
|
@@ -11,7 +11,7 @@ module ApiTokenable
|
|
11
11
|
# store api token
|
12
12
|
field :api_token, type: String
|
13
13
|
# if the api token should be reset
|
14
|
-
field :reset_api_token, type: Boolean, default: true
|
14
|
+
field :reset_api_token, type: Mongoid::Boolean, default: true
|
15
15
|
field :last_authenticated_at, type: Time
|
16
16
|
field :last_authenticated_ip, type: String
|
17
17
|
# call back to reset the api token.
|
@@ -15,7 +15,6 @@ module AwsConfiguration
|
|
15
15
|
field :aws_access_key_id, type: String
|
16
16
|
field :aws_secret_access_key, type: String
|
17
17
|
field :aws_auto_scaling_group_name, type: String
|
18
|
-
field :aws_bucket_name, type: String
|
19
18
|
end
|
20
19
|
end
|
21
20
|
|
@@ -23,7 +22,7 @@ module AwsConfiguration
|
|
23
22
|
# Make sure the password doesn't get blanked out on an update
|
24
23
|
#
|
25
24
|
def secure_fields
|
26
|
-
super + %i[
|
25
|
+
super + %i[aws_access_secret]
|
27
26
|
end
|
28
27
|
|
29
28
|
#
|
@@ -39,28 +38,4 @@ module AwsConfiguration
|
|
39
38
|
def aws_auto_scaling_configured?
|
40
39
|
aws_configured? && aws_auto_scaling_group_name.present?
|
41
40
|
end
|
42
|
-
|
43
|
-
#
|
44
|
-
# AWS client.
|
45
|
-
#
|
46
|
-
def aws_ec2_client
|
47
|
-
return nil unless aws_configured?
|
48
|
-
|
49
|
-
@aws_ec2_client ||= Aws::EC2::Client.new(region: aws_region,
|
50
|
-
credentials: Aws::Credentials.new(aws_access_key_id,
|
51
|
-
aws_secret_access_key))
|
52
|
-
end
|
53
|
-
|
54
|
-
#
|
55
|
-
# S3 Client
|
56
|
-
#
|
57
|
-
def aws_s3_client
|
58
|
-
return nil unless aws_configured?
|
59
|
-
|
60
|
-
# We want this to remake itself each time because it is possible that the
|
61
|
-
# => user would change the access keys in between actions. Huh?
|
62
|
-
@aws_s3_client ||= Aws::S3::Client.new(region: aws_region,
|
63
|
-
access_key_id: aws_access_key_id,
|
64
|
-
secret_access_key: aws_secret_access_key)
|
65
|
-
end
|
66
41
|
end
|
@@ -17,9 +17,14 @@
|
|
17
17
|
#
|
18
18
|
module CdnUrl
|
19
19
|
extend ActiveSupport::Concern
|
20
|
+
#
|
21
|
+
# Constants
|
22
|
+
#
|
23
|
+
STYLE_S3_FILE_PATH = ':class/:attachment/:id/:style.:extension' unless defined? STYLE_S3_FILE_PATH
|
24
|
+
STYLE_FILE_PATH = 'public/system/:class/:attachment/:id/:style.:extension' unless defined? STYLE_FILE_PATH
|
25
|
+
STYLE_S3_FILE_URL = ':s3_domain_url' unless defined? STYLE_S3_FILE_URL
|
26
|
+
STYLE_FILE_URL = ':rails_root/public/system/:class/:attachment/:id/:style.:extension' unless defined? STYLE_FILE_URL
|
20
27
|
|
21
|
-
# @abstract Catch methods started with `cdn_` and respond to those requests if there is a
|
22
|
-
# matching method ending in `_url`
|
23
28
|
def method_missing(method, *args)
|
24
29
|
if method.to_s.start_with? 'cdn_'
|
25
30
|
url = if args.blank?
|
@@ -19,7 +19,7 @@ module CoreSmtpConfiguration
|
|
19
19
|
field :smtp_port, type: Integer, default: 587
|
20
20
|
field :smtp_user_name, type: String
|
21
21
|
field :smtp_password, type: String
|
22
|
-
field :smtp_enable_starttls_auto, type: Boolean, default: false
|
22
|
+
field :smtp_enable_starttls_auto, type: Mongoid::Boolean, default: false
|
23
23
|
field :mailgun_api_key, type: String
|
24
24
|
field :email_notification_ttl, type: Integer, default: 180
|
25
25
|
end
|
@@ -23,7 +23,7 @@ module CoreSystemConfiguration
|
|
23
23
|
# Fields
|
24
24
|
#
|
25
25
|
field :environment, type: String, default: 'test'
|
26
|
-
field :fips_mode, type: Boolean, default: false
|
26
|
+
field :fips_mode, type: Mongoid::Boolean, default: false
|
27
27
|
field :fav_icon_path, { type: String, default: '/favicon.ico' }
|
28
28
|
field :stack_logo_path, { type: String, default: 'ui-company-logo.png' }
|
29
29
|
field :primary_stylesheet, { type: String, default: 'app47' }
|
@@ -58,9 +58,9 @@ module CoreSystemConfiguration
|
|
58
58
|
#
|
59
59
|
# NOTE: Currently ignored Codacy issue: When using 'method_missing', fall back on 'super'
|
60
60
|
#
|
61
|
-
def method_missing(method,
|
61
|
+
def method_missing(method, ...)
|
62
62
|
if configuration.respond_to?(method)
|
63
|
-
configuration.send(method,
|
63
|
+
configuration.send(method, ...)
|
64
64
|
else
|
65
65
|
super
|
66
66
|
end
|
@@ -13,7 +13,7 @@ module DelayedJobConfiguration
|
|
13
13
|
#
|
14
14
|
field :delayed_job_max_allowed_method, type: String, default: 'max'
|
15
15
|
field :delayed_job_max_allowed_factor, type: Integer, default: 5
|
16
|
-
field :delayed_job_restart_orphaned, type: Boolean, default: false
|
16
|
+
field :delayed_job_restart_orphaned, type: Mongoid::Boolean, default: false
|
17
17
|
#
|
18
18
|
# Validations
|
19
19
|
#
|
@@ -17,7 +17,7 @@ module EmailAble
|
|
17
17
|
field :email_bounced_at, type: Time
|
18
18
|
field :email_bounce_reason, type: String
|
19
19
|
field :unconfirmed_email, type: String
|
20
|
-
field :email_enabled, type: Boolean, default: true
|
20
|
+
field :email_enabled, type: Mongoid::Boolean, default: true
|
21
21
|
#
|
22
22
|
# Validations
|
23
23
|
#
|
@@ -13,7 +13,7 @@ module ServerProcessAble
|
|
13
13
|
#
|
14
14
|
field :host_name, type: String
|
15
15
|
field :pid, type: Integer
|
16
|
-
field :running, type: Boolean, default: false
|
16
|
+
field :running, type: Mongoid::Boolean, default: false
|
17
17
|
field :last_check_in_at, type: Time
|
18
18
|
#
|
19
19
|
# Validations
|
@@ -69,7 +69,7 @@ module StandardModel
|
|
69
69
|
names = field_names(filter_names)
|
70
70
|
names += associations if include_relationships
|
71
71
|
names.delete_if { |name| filter_names.include?(name) }
|
72
|
-
rescue StandardError
|
72
|
+
rescue StandardError => error
|
73
73
|
attribute_names.delete_if { |name| filter_names.include?(name) }
|
74
74
|
end
|
75
75
|
|
@@ -87,12 +87,8 @@ module StandardModel
|
|
87
87
|
#
|
88
88
|
def many_to_many_associations
|
89
89
|
associations = []
|
90
|
-
reflect_on_all_associations.each do |association|
|
91
|
-
|
92
|
-
next unless association.relation == Mongoid::Association::Referenced::HasAndBelongsToMany::Proxy
|
93
|
-
else
|
94
|
-
next unless association.macro == :has_and_belongs_to_many
|
95
|
-
end
|
90
|
+
reflect_on_all_associations(:has_and_belongs_to_many).each do |association|
|
91
|
+
next unless association.relation == Mongoid::Association::Referenced::HasAndBelongsToMany::Proxy
|
96
92
|
|
97
93
|
associations << { association.key => [] }
|
98
94
|
end
|
@@ -10,10 +10,10 @@ class SmtpConfiguration
|
|
10
10
|
field :port, type: Integer, default: 587
|
11
11
|
field :authentication_method, type: String
|
12
12
|
field :confirmation_token, type: String
|
13
|
-
field :confirmed, type: Boolean, default: false
|
13
|
+
field :confirmed, type: Mongoid::Boolean, default: false
|
14
14
|
field :verification_message, type: String
|
15
|
-
field :active, type: Boolean, default: false
|
16
|
-
field :ssl, type: Boolean, default: false
|
15
|
+
field :active, type: Mongoid::Boolean, default: false
|
16
|
+
field :ssl, type: Mongoid::Boolean, default: false
|
17
17
|
field :server_name, type: String
|
18
18
|
field :username, type: String
|
19
19
|
field :password, type: String
|
data/lib/web47core/version.rb
CHANGED
data/lib/web47core.rb
CHANGED
@@ -9,7 +9,6 @@ require 'app/models/concerns/cdn_url'
|
|
9
9
|
require 'app/models/concerns/delayed_job_configuration'
|
10
10
|
require 'app/models/concerns/email_able'
|
11
11
|
require 'app/models/concerns/encrypted_password'
|
12
|
-
require 'app/models/concerns/google_sso_configuration'
|
13
12
|
require 'app/models/concerns/search_able'
|
14
13
|
require 'app/models/concerns/role_able'
|
15
14
|
require 'app/models/concerns/time_zone_able'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: web47core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Schroeder
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-12-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activemodel
|
@@ -44,100 +44,70 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
48
|
-
- - "<"
|
49
|
-
- !ruby/object:Gem::Version
|
50
|
-
version: '2'
|
47
|
+
version: '0'
|
51
48
|
type: :runtime
|
52
49
|
prerelease: false
|
53
50
|
version_requirements: !ruby/object:Gem::Requirement
|
54
51
|
requirements:
|
55
52
|
- - ">="
|
56
53
|
- !ruby/object:Gem::Version
|
57
|
-
version: '
|
58
|
-
- - "<"
|
59
|
-
- !ruby/object:Gem::Version
|
60
|
-
version: '2'
|
54
|
+
version: '0'
|
61
55
|
- !ruby/object:Gem::Dependency
|
62
56
|
name: cancancan
|
63
57
|
requirement: !ruby/object:Gem::Requirement
|
64
58
|
requirements:
|
65
59
|
- - ">="
|
66
60
|
- !ruby/object:Gem::Version
|
67
|
-
version: '
|
68
|
-
- - "<"
|
69
|
-
- !ruby/object:Gem::Version
|
70
|
-
version: '4'
|
61
|
+
version: '0'
|
71
62
|
type: :runtime
|
72
63
|
prerelease: false
|
73
64
|
version_requirements: !ruby/object:Gem::Requirement
|
74
65
|
requirements:
|
75
66
|
- - ">="
|
76
67
|
- !ruby/object:Gem::Version
|
77
|
-
version: '
|
78
|
-
- - "<"
|
79
|
-
- !ruby/object:Gem::Version
|
80
|
-
version: '4'
|
68
|
+
version: '0'
|
81
69
|
- !ruby/object:Gem::Dependency
|
82
70
|
name: daemons
|
83
71
|
requirement: !ruby/object:Gem::Requirement
|
84
72
|
requirements:
|
85
73
|
- - ">="
|
86
74
|
- !ruby/object:Gem::Version
|
87
|
-
version:
|
88
|
-
- - "<"
|
89
|
-
- !ruby/object:Gem::Version
|
90
|
-
version: '2'
|
75
|
+
version: '0'
|
91
76
|
type: :runtime
|
92
77
|
prerelease: false
|
93
78
|
version_requirements: !ruby/object:Gem::Requirement
|
94
79
|
requirements:
|
95
80
|
- - ">="
|
96
81
|
- !ruby/object:Gem::Version
|
97
|
-
version:
|
98
|
-
- - "<"
|
99
|
-
- !ruby/object:Gem::Version
|
100
|
-
version: '2'
|
82
|
+
version: '0'
|
101
83
|
- !ruby/object:Gem::Dependency
|
102
84
|
name: delayed_job_mongoid
|
103
85
|
requirement: !ruby/object:Gem::Requirement
|
104
86
|
requirements:
|
105
87
|
- - ">="
|
106
88
|
- !ruby/object:Gem::Version
|
107
|
-
version: '
|
108
|
-
- - "<"
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '3'
|
89
|
+
version: '0'
|
111
90
|
type: :runtime
|
112
91
|
prerelease: false
|
113
92
|
version_requirements: !ruby/object:Gem::Requirement
|
114
93
|
requirements:
|
115
94
|
- - ">="
|
116
95
|
- !ruby/object:Gem::Version
|
117
|
-
version: '
|
118
|
-
- - "<"
|
119
|
-
- !ruby/object:Gem::Version
|
120
|
-
version: '3'
|
96
|
+
version: '0'
|
121
97
|
- !ruby/object:Gem::Dependency
|
122
98
|
name: email_format
|
123
99
|
requirement: !ruby/object:Gem::Requirement
|
124
100
|
requirements:
|
125
101
|
- - ">="
|
126
102
|
- !ruby/object:Gem::Version
|
127
|
-
version: '
|
128
|
-
- - "<"
|
129
|
-
- !ruby/object:Gem::Version
|
130
|
-
version: '2'
|
103
|
+
version: '0'
|
131
104
|
type: :runtime
|
132
105
|
prerelease: false
|
133
106
|
version_requirements: !ruby/object:Gem::Requirement
|
134
107
|
requirements:
|
135
108
|
- - ">="
|
136
109
|
- !ruby/object:Gem::Version
|
137
|
-
version: '
|
138
|
-
- - "<"
|
139
|
-
- !ruby/object:Gem::Version
|
140
|
-
version: '2'
|
110
|
+
version: '0'
|
141
111
|
- !ruby/object:Gem::Dependency
|
142
112
|
name: haml
|
143
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -158,94 +128,70 @@ dependencies:
|
|
158
128
|
requirements:
|
159
129
|
- - ">="
|
160
130
|
- !ruby/object:Gem::Version
|
161
|
-
version:
|
162
|
-
- - "<"
|
163
|
-
- !ruby/object:Gem::Version
|
164
|
-
version: '3'
|
131
|
+
version: '0'
|
165
132
|
type: :runtime
|
166
133
|
prerelease: false
|
167
134
|
version_requirements: !ruby/object:Gem::Requirement
|
168
135
|
requirements:
|
169
136
|
- - ">="
|
170
137
|
- !ruby/object:Gem::Version
|
171
|
-
version:
|
172
|
-
- - "<"
|
173
|
-
- !ruby/object:Gem::Version
|
174
|
-
version: '3'
|
138
|
+
version: '0'
|
175
139
|
- !ruby/object:Gem::Dependency
|
176
140
|
name: liquid
|
177
141
|
requirement: !ruby/object:Gem::Requirement
|
178
142
|
requirements:
|
179
143
|
- - ">="
|
180
144
|
- !ruby/object:Gem::Version
|
181
|
-
version: '
|
182
|
-
- - "<"
|
183
|
-
- !ruby/object:Gem::Version
|
184
|
-
version: '6'
|
145
|
+
version: '0'
|
185
146
|
type: :runtime
|
186
147
|
prerelease: false
|
187
148
|
version_requirements: !ruby/object:Gem::Requirement
|
188
149
|
requirements:
|
189
150
|
- - ">="
|
190
151
|
- !ruby/object:Gem::Version
|
191
|
-
version: '
|
192
|
-
- - "<"
|
193
|
-
- !ruby/object:Gem::Version
|
194
|
-
version: '6'
|
152
|
+
version: '0'
|
195
153
|
- !ruby/object:Gem::Dependency
|
196
154
|
name: materialize-sass
|
197
155
|
requirement: !ruby/object:Gem::Requirement
|
198
156
|
requirements:
|
199
157
|
- - ">="
|
200
158
|
- !ruby/object:Gem::Version
|
201
|
-
version:
|
202
|
-
- - "<"
|
203
|
-
- !ruby/object:Gem::Version
|
204
|
-
version: '2'
|
159
|
+
version: '0'
|
205
160
|
type: :runtime
|
206
161
|
prerelease: false
|
207
162
|
version_requirements: !ruby/object:Gem::Requirement
|
208
163
|
requirements:
|
209
164
|
- - ">="
|
210
165
|
- !ruby/object:Gem::Version
|
211
|
-
version:
|
212
|
-
- - "<"
|
213
|
-
- !ruby/object:Gem::Version
|
214
|
-
version: '2'
|
166
|
+
version: '0'
|
215
167
|
- !ruby/object:Gem::Dependency
|
216
168
|
name: mongoid
|
217
169
|
requirement: !ruby/object:Gem::Requirement
|
218
170
|
requirements:
|
219
|
-
- - "
|
171
|
+
- - "~>"
|
220
172
|
- !ruby/object:Gem::Version
|
221
|
-
version:
|
173
|
+
version: 7.5.2
|
222
174
|
type: :runtime
|
223
175
|
prerelease: false
|
224
176
|
version_requirements: !ruby/object:Gem::Requirement
|
225
177
|
requirements:
|
226
|
-
- - "
|
178
|
+
- - "~>"
|
227
179
|
- !ruby/object:Gem::Version
|
228
|
-
version:
|
180
|
+
version: 7.5.2
|
229
181
|
- !ruby/object:Gem::Dependency
|
230
182
|
name: rails
|
231
183
|
requirement: !ruby/object:Gem::Requirement
|
232
184
|
requirements:
|
233
|
-
- - "
|
234
|
-
- !ruby/object:Gem::Version
|
235
|
-
version: '5'
|
236
|
-
- - "<"
|
185
|
+
- - "~>"
|
237
186
|
- !ruby/object:Gem::Version
|
238
|
-
version:
|
187
|
+
version: 6.1.7
|
239
188
|
type: :runtime
|
240
189
|
prerelease: false
|
241
190
|
version_requirements: !ruby/object:Gem::Requirement
|
242
191
|
requirements:
|
243
|
-
- - "
|
244
|
-
- !ruby/object:Gem::Version
|
245
|
-
version: '5'
|
246
|
-
- - "<"
|
192
|
+
- - "~>"
|
247
193
|
- !ruby/object:Gem::Version
|
248
|
-
version:
|
194
|
+
version: 6.1.7
|
249
195
|
- !ruby/object:Gem::Dependency
|
250
196
|
name: railties
|
251
197
|
requirement: !ruby/object:Gem::Requirement
|
@@ -266,60 +212,28 @@ dependencies:
|
|
266
212
|
requirements:
|
267
213
|
- - ">="
|
268
214
|
- !ruby/object:Gem::Version
|
269
|
-
version: '
|
270
|
-
- - "<"
|
271
|
-
- !ruby/object:Gem::Version
|
272
|
-
version: '5'
|
273
|
-
type: :runtime
|
274
|
-
prerelease: false
|
275
|
-
version_requirements: !ruby/object:Gem::Requirement
|
276
|
-
requirements:
|
277
|
-
- - ">="
|
278
|
-
- !ruby/object:Gem::Version
|
279
|
-
version: '4.2'
|
280
|
-
- - "<"
|
281
|
-
- !ruby/object:Gem::Version
|
282
|
-
version: '5'
|
283
|
-
- !ruby/object:Gem::Dependency
|
284
|
-
name: redis-rails
|
285
|
-
requirement: !ruby/object:Gem::Requirement
|
286
|
-
requirements:
|
287
|
-
- - ">="
|
288
|
-
- !ruby/object:Gem::Version
|
289
|
-
version: '5'
|
290
|
-
- - "<"
|
291
|
-
- !ruby/object:Gem::Version
|
292
|
-
version: '6'
|
215
|
+
version: '0'
|
293
216
|
type: :runtime
|
294
217
|
prerelease: false
|
295
218
|
version_requirements: !ruby/object:Gem::Requirement
|
296
219
|
requirements:
|
297
220
|
- - ">="
|
298
221
|
- !ruby/object:Gem::Version
|
299
|
-
version: '
|
300
|
-
- - "<"
|
301
|
-
- !ruby/object:Gem::Version
|
302
|
-
version: '6'
|
222
|
+
version: '0'
|
303
223
|
- !ruby/object:Gem::Dependency
|
304
224
|
name: rest-client
|
305
225
|
requirement: !ruby/object:Gem::Requirement
|
306
226
|
requirements:
|
307
227
|
- - ">="
|
308
228
|
- !ruby/object:Gem::Version
|
309
|
-
version:
|
310
|
-
- - "<"
|
311
|
-
- !ruby/object:Gem::Version
|
312
|
-
version: '3'
|
229
|
+
version: '0'
|
313
230
|
type: :runtime
|
314
231
|
prerelease: false
|
315
232
|
version_requirements: !ruby/object:Gem::Requirement
|
316
233
|
requirements:
|
317
234
|
- - ">="
|
318
235
|
- !ruby/object:Gem::Version
|
319
|
-
version:
|
320
|
-
- - "<"
|
321
|
-
- !ruby/object:Gem::Version
|
322
|
-
version: '3'
|
236
|
+
version: '0'
|
323
237
|
- !ruby/object:Gem::Dependency
|
324
238
|
name: sass
|
325
239
|
requirement: !ruby/object:Gem::Requirement
|
@@ -354,14 +268,14 @@ dependencies:
|
|
354
268
|
requirements:
|
355
269
|
- - ">="
|
356
270
|
- !ruby/object:Gem::Version
|
357
|
-
version: '
|
271
|
+
version: '0'
|
358
272
|
type: :runtime
|
359
273
|
prerelease: false
|
360
274
|
version_requirements: !ruby/object:Gem::Requirement
|
361
275
|
requirements:
|
362
276
|
- - ">="
|
363
277
|
- !ruby/object:Gem::Version
|
364
|
-
version: '
|
278
|
+
version: '0'
|
365
279
|
- !ruby/object:Gem::Dependency
|
366
280
|
name: tzinfo
|
367
281
|
requirement: !ruby/object:Gem::Requirement
|
@@ -382,20 +296,14 @@ dependencies:
|
|
382
296
|
requirements:
|
383
297
|
- - ">="
|
384
298
|
- !ruby/object:Gem::Version
|
385
|
-
version: '
|
386
|
-
- - "<"
|
387
|
-
- !ruby/object:Gem::Version
|
388
|
-
version: '2'
|
299
|
+
version: '0'
|
389
300
|
type: :runtime
|
390
301
|
prerelease: false
|
391
302
|
version_requirements: !ruby/object:Gem::Requirement
|
392
303
|
requirements:
|
393
304
|
- - ">="
|
394
305
|
- !ruby/object:Gem::Version
|
395
|
-
version: '
|
396
|
-
- - "<"
|
397
|
-
- !ruby/object:Gem::Version
|
398
|
-
version: '2'
|
306
|
+
version: '0'
|
399
307
|
- !ruby/object:Gem::Dependency
|
400
308
|
name: valid_url
|
401
309
|
requirement: !ruby/object:Gem::Requirement
|
@@ -428,36 +336,30 @@ dependencies:
|
|
428
336
|
name: codacy-coverage
|
429
337
|
requirement: !ruby/object:Gem::Requirement
|
430
338
|
requirements:
|
431
|
-
- -
|
339
|
+
- - ">="
|
432
340
|
- !ruby/object:Gem::Version
|
433
|
-
version:
|
341
|
+
version: '0'
|
434
342
|
type: :development
|
435
343
|
prerelease: false
|
436
344
|
version_requirements: !ruby/object:Gem::Requirement
|
437
345
|
requirements:
|
438
|
-
- -
|
346
|
+
- - ">="
|
439
347
|
- !ruby/object:Gem::Version
|
440
|
-
version:
|
348
|
+
version: '0'
|
441
349
|
- !ruby/object:Gem::Dependency
|
442
350
|
name: database_cleaner-mongoid
|
443
351
|
requirement: !ruby/object:Gem::Requirement
|
444
352
|
requirements:
|
445
353
|
- - ">="
|
446
354
|
- !ruby/object:Gem::Version
|
447
|
-
version: '
|
448
|
-
- - "<"
|
449
|
-
- !ruby/object:Gem::Version
|
450
|
-
version: '3'
|
355
|
+
version: '0'
|
451
356
|
type: :development
|
452
357
|
prerelease: false
|
453
358
|
version_requirements: !ruby/object:Gem::Requirement
|
454
359
|
requirements:
|
455
360
|
- - ">="
|
456
361
|
- !ruby/object:Gem::Version
|
457
|
-
version: '
|
458
|
-
- - "<"
|
459
|
-
- !ruby/object:Gem::Version
|
460
|
-
version: '3'
|
362
|
+
version: '0'
|
461
363
|
- !ruby/object:Gem::Dependency
|
462
364
|
name: factory_bot
|
463
365
|
requirement: !ruby/object:Gem::Requirement
|
@@ -492,20 +394,14 @@ dependencies:
|
|
492
394
|
requirements:
|
493
395
|
- - ">="
|
494
396
|
- !ruby/object:Gem::Version
|
495
|
-
version: '
|
496
|
-
- - "<"
|
497
|
-
- !ruby/object:Gem::Version
|
498
|
-
version: '4'
|
397
|
+
version: '0'
|
499
398
|
type: :development
|
500
399
|
prerelease: false
|
501
400
|
version_requirements: !ruby/object:Gem::Requirement
|
502
401
|
requirements:
|
503
402
|
- - ">="
|
504
403
|
- !ruby/object:Gem::Version
|
505
|
-
version: '
|
506
|
-
- - "<"
|
507
|
-
- !ruby/object:Gem::Version
|
508
|
-
version: '4'
|
404
|
+
version: '0'
|
509
405
|
- !ruby/object:Gem::Dependency
|
510
406
|
name: minitest
|
511
407
|
requirement: !ruby/object:Gem::Requirement
|
@@ -524,16 +420,16 @@ dependencies:
|
|
524
420
|
name: minitest-rails
|
525
421
|
requirement: !ruby/object:Gem::Requirement
|
526
422
|
requirements:
|
527
|
-
- - "
|
423
|
+
- - ">="
|
528
424
|
- !ruby/object:Gem::Version
|
529
|
-
version: '
|
425
|
+
version: '0'
|
530
426
|
type: :development
|
531
427
|
prerelease: false
|
532
428
|
version_requirements: !ruby/object:Gem::Requirement
|
533
429
|
requirements:
|
534
|
-
- - "
|
430
|
+
- - ">="
|
535
431
|
- !ruby/object:Gem::Version
|
536
|
-
version: '
|
432
|
+
version: '0'
|
537
433
|
- !ruby/object:Gem::Dependency
|
538
434
|
name: minitest-reporters
|
539
435
|
requirement: !ruby/object:Gem::Requirement
|
@@ -566,16 +462,16 @@ dependencies:
|
|
566
462
|
name: shoulda
|
567
463
|
requirement: !ruby/object:Gem::Requirement
|
568
464
|
requirements:
|
569
|
-
- - "
|
465
|
+
- - "~>"
|
570
466
|
- !ruby/object:Gem::Version
|
571
|
-
version:
|
467
|
+
version: 4.0.0
|
572
468
|
type: :development
|
573
469
|
prerelease: false
|
574
470
|
version_requirements: !ruby/object:Gem::Requirement
|
575
471
|
requirements:
|
576
|
-
- - "
|
472
|
+
- - "~>"
|
577
473
|
- !ruby/object:Gem::Version
|
578
|
-
version:
|
474
|
+
version: 4.0.0
|
579
475
|
- !ruby/object:Gem::Dependency
|
580
476
|
name: shoulda-matchers
|
581
477
|
requirement: !ruby/object:Gem::Requirement
|
@@ -591,7 +487,7 @@ dependencies:
|
|
591
487
|
- !ruby/object:Gem::Version
|
592
488
|
version: '0'
|
593
489
|
- !ruby/object:Gem::Dependency
|
594
|
-
name:
|
490
|
+
name: shoulda-context
|
595
491
|
requirement: !ruby/object:Gem::Requirement
|
596
492
|
requirements:
|
597
493
|
- - ">="
|
@@ -605,7 +501,7 @@ dependencies:
|
|
605
501
|
- !ruby/object:Gem::Version
|
606
502
|
version: '0'
|
607
503
|
- !ruby/object:Gem::Dependency
|
608
|
-
name:
|
504
|
+
name: simplecov
|
609
505
|
requirement: !ruby/object:Gem::Requirement
|
610
506
|
requirements:
|
611
507
|
- - ">="
|
@@ -619,45 +515,33 @@ dependencies:
|
|
619
515
|
- !ruby/object:Gem::Version
|
620
516
|
version: '0'
|
621
517
|
- !ruby/object:Gem::Dependency
|
622
|
-
name:
|
518
|
+
name: test-unit
|
623
519
|
requirement: !ruby/object:Gem::Requirement
|
624
520
|
requirements:
|
625
521
|
- - ">="
|
626
522
|
- !ruby/object:Gem::Version
|
627
|
-
version: '
|
628
|
-
- - "<"
|
629
|
-
- !ruby/object:Gem::Version
|
630
|
-
version: '7'
|
523
|
+
version: '0'
|
631
524
|
type: :development
|
632
525
|
prerelease: false
|
633
526
|
version_requirements: !ruby/object:Gem::Requirement
|
634
527
|
requirements:
|
635
528
|
- - ">="
|
636
529
|
- !ruby/object:Gem::Version
|
637
|
-
version: '
|
638
|
-
- - "<"
|
639
|
-
- !ruby/object:Gem::Version
|
640
|
-
version: '7'
|
530
|
+
version: '0'
|
641
531
|
- !ruby/object:Gem::Dependency
|
642
532
|
name: webmock
|
643
533
|
requirement: !ruby/object:Gem::Requirement
|
644
534
|
requirements:
|
645
535
|
- - ">="
|
646
536
|
- !ruby/object:Gem::Version
|
647
|
-
version: '
|
648
|
-
- - "<"
|
649
|
-
- !ruby/object:Gem::Version
|
650
|
-
version: '4'
|
537
|
+
version: '0'
|
651
538
|
type: :development
|
652
539
|
prerelease: false
|
653
540
|
version_requirements: !ruby/object:Gem::Requirement
|
654
541
|
requirements:
|
655
542
|
- - ">="
|
656
543
|
- !ruby/object:Gem::Version
|
657
|
-
version: '
|
658
|
-
- - "<"
|
659
|
-
- !ruby/object:Gem::Version
|
660
|
-
version: '4'
|
544
|
+
version: '0'
|
661
545
|
description: Core components used in all our web products.
|
662
546
|
email:
|
663
547
|
- chris@app47.com
|
@@ -762,7 +646,6 @@ files:
|
|
762
646
|
- lib/app/models/concerns/delayed_job_configuration.rb
|
763
647
|
- lib/app/models/concerns/email_able.rb
|
764
648
|
- lib/app/models/concerns/encrypted_password.rb
|
765
|
-
- lib/app/models/concerns/google_sso_configuration.rb
|
766
649
|
- lib/app/models/concerns/role_able.rb
|
767
650
|
- lib/app/models/concerns/search_able.rb
|
768
651
|
- lib/app/models/concerns/secure_fields.rb
|
@@ -812,14 +695,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
812
695
|
requirements:
|
813
696
|
- - "~>"
|
814
697
|
- !ruby/object:Gem::Version
|
815
|
-
version:
|
698
|
+
version: 3.0.2
|
816
699
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
817
700
|
requirements:
|
818
701
|
- - ">="
|
819
702
|
- !ruby/object:Gem::Version
|
820
703
|
version: '0'
|
821
704
|
requirements: []
|
822
|
-
rubygems_version: 3.
|
705
|
+
rubygems_version: 3.2.22
|
823
706
|
signing_key:
|
824
707
|
specification_version: 4
|
825
708
|
summary: App47 Web Core Library.
|
@@ -1,32 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
#
|
4
|
-
# Google SSO Configuration
|
5
|
-
#
|
6
|
-
module GoogleSsoConfiguration
|
7
|
-
extend ActiveSupport::Concern
|
8
|
-
|
9
|
-
def self.included(base)
|
10
|
-
base.class_eval do
|
11
|
-
#
|
12
|
-
# Fields
|
13
|
-
#
|
14
|
-
field :google_client_id, type: String
|
15
|
-
field :google_client_secret, type: String
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
#
|
20
|
-
# Make sure the password doesn't get blanked out on an update
|
21
|
-
#
|
22
|
-
def secure_fields
|
23
|
-
super + %i[google_client_secret]
|
24
|
-
end
|
25
|
-
|
26
|
-
#
|
27
|
-
# Determine if AWS is configured
|
28
|
-
#
|
29
|
-
def google_sso_configured?
|
30
|
-
google_client_id.present? && google_client_secret.present?
|
31
|
-
end
|
32
|
-
end
|