web47core 0.1.11 → 0.3.0

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 (53) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +29 -27
  3. data/{lib/app → app}/helpers/core_helper.rb +25 -9
  4. data/{lib/app → app}/helpers/core_link_helper.rb +3 -1
  5. data/app/views/admin/cron/edit.html.haml +1 -0
  6. data/app/views/admin/cron/index.html.haml +1 -0
  7. data/app/views/admin/delayed_jobs/index.html.haml +1 -0
  8. data/app/views/admin/delayed_jobs/show.html.haml +1 -0
  9. data/app/views/admin/system_configurations/edit.html.haml +1 -0
  10. data/app/views/admin/system_configurations/show.html.haml +1 -0
  11. data/app/views/common/_form_actions.html.haml +11 -0
  12. data/app/views/cron/_edit.html.haml +21 -0
  13. data/app/views/cron/_index.html.haml +70 -0
  14. data/app/views/cron/edit.html.haml +1 -0
  15. data/app/views/cron/index.html.haml +1 -0
  16. data/app/views/delayed_jobs/_index.html.haml +54 -0
  17. data/app/views/delayed_jobs/_show.html.haml +58 -0
  18. data/app/views/delayed_jobs/index.html.haml +1 -0
  19. data/app/views/delayed_jobs/show.html.haml +1 -0
  20. data/app/views/stack/cron/edit.html.haml +1 -0
  21. data/app/views/stack/cron/index.html.haml +1 -0
  22. data/app/views/stack/system_configurations/edit.html.haml +5 -0
  23. data/app/views/stack/system_configurations/show.html.haml +3 -0
  24. data/{lib/app/views/system_configurations/edit.html.haml → app/views/system_configurations/_edit.html.haml} +2 -10
  25. data/{lib/app/views/system_configurations/show.html.haml → app/views/system_configurations/_show.html.haml} +3 -3
  26. data/app/views/system_configurations/edit.html.haml +1 -0
  27. data/app/views/system_configurations/show.html.haml +1 -0
  28. data/config/locales/en.yml +75 -2
  29. data/config/routes.rb +1 -1
  30. data/lib/app/controllers/concerns/core_controller.rb +22 -0
  31. data/lib/app/controllers/concerns/core_cron_controller.rb +79 -0
  32. data/lib/app/controllers/concerns/core_delayed_jobs_controller.rb +87 -0
  33. data/lib/app/controllers/concerns/core_system_configuration_controller.rb +3 -3
  34. data/lib/app/jobs/cron/command.rb +5 -2
  35. data/lib/app/jobs/cron/job_tab.rb +4 -6
  36. data/lib/app/jobs/cron/server.rb +6 -3
  37. data/lib/app/jobs/cron/switchboard_sync_models.rb +1 -1
  38. data/lib/app/jobs/cron/tab.rb +3 -3
  39. data/lib/app/models/concerns/core_account.rb +1 -10
  40. data/lib/app/models/concerns/core_system_configuration.rb +13 -13
  41. data/lib/app/models/delayed_job.rb +1 -1
  42. data/lib/app/models/email_notification.rb +6 -6
  43. data/lib/app/models/email_template.rb +4 -1
  44. data/lib/app/models/notification.rb +12 -11
  45. data/lib/app/models/redis_configuration.rb +1 -1
  46. data/lib/app/models/template.rb +1 -1
  47. data/lib/templates/slack/error_message.liquid +3 -1
  48. data/lib/web47core/config.rb +4 -6
  49. data/lib/web47core/engine.rb +1 -1
  50. data/lib/web47core/version.rb +1 -1
  51. data/lib/web47core.rb +4 -5
  52. metadata +50 -12
  53. /data/{lib/app → app}/helpers/core_form_helper.rb +0 -0
@@ -0,0 +1,79 @@
1
+ # frozen_string_literal: true
2
+
3
+ #
4
+ # Manage cron job servers
5
+ #
6
+ module CoreCronController
7
+ include CoreController
8
+ #
9
+ # Table to display cron job servers
10
+ #
11
+ def index
12
+ authorize! :read, Cron::Server
13
+ authorize! :read, Cron::Tab
14
+ end
15
+
16
+ #
17
+ # Run the crontab entry now
18
+ #
19
+ def run_now
20
+ authorize! :read, cron_tab
21
+ cron_tab.run
22
+ redirect_to index_path
23
+ rescue StandardError => error
24
+ log_controller_error error, true
25
+ redirect_to index_path
26
+ end
27
+
28
+ #
29
+ # Update a crontab entry
30
+ #
31
+ def update
32
+ authorize! :update, cron_tab
33
+ cron_tab.update! cron_tab_params
34
+ redirect_to index_path
35
+ rescue StandardError => error
36
+ log_controller_error error
37
+ render :edit
38
+ end
39
+
40
+ #
41
+ # Demote a cron job server
42
+ #
43
+ def demote
44
+ authorize! :edit, cron_server
45
+ cron_server.become_secondary
46
+ redirect_to index_path
47
+ rescue StandardError => error
48
+ log_controller_error error, true
49
+ redirect_to index_path
50
+ end
51
+
52
+ #
53
+ # Destroy a cron job server
54
+ #
55
+ def destroy
56
+ authorize! :destroy, cron_server
57
+ cron_server.destroy!
58
+ redirect_to index_path
59
+ rescue StandardError => error
60
+ log_controller_error error, true
61
+ redirect_to index_path
62
+ end
63
+
64
+ private
65
+
66
+ def cron_tab
67
+ @cron_tab ||= Cron::Tab.find(params[:id])
68
+ end
69
+
70
+ def cron_server
71
+ @cron_server ||= Cron::Server.find(params[:id])
72
+ end
73
+
74
+ def cron_tab_params
75
+ p = params['cron/job_tab']
76
+ p[:enabled] ||= false
77
+ p.permit(Cron::Tab.allowed_param_names)
78
+ end
79
+ end
@@ -0,0 +1,87 @@
1
+ # frozen_string_literal: true
2
+
3
+ #
4
+ # Manage access to delayed jobs
5
+ #
6
+ module CoreDelayedJobsController
7
+ include CoreController
8
+ #
9
+ # Show a list of jobs currently in the system
10
+ #
11
+ def index
12
+ authorize! :read, Delayed::Backend::Mongoid::Job
13
+ @delayed_jobs = Delayed::Backend::Mongoid::Job.asc(%i[priority run_at]).limit(100)
14
+ end
15
+
16
+ def show
17
+ delayed_job
18
+ end
19
+
20
+ #
21
+ # Destroy all jobs
22
+ #
23
+ def destroy_all
24
+ authorize! :manage, Delayed::Backend::Mongoid::Job
25
+ failed_only = params[:failed_only].eql?('true')
26
+ Delayed::Backend::Mongoid::Job.each do |job|
27
+ next if failed_only && !job.failed?
28
+
29
+ job.destroy
30
+ end
31
+ flash.now[:info] = 'All DelayJobs has been destroyed'
32
+ redirect_to index_path
33
+ rescue StandardError => error
34
+ log_controller_error error, true
35
+ redirect_to index_path
36
+ end
37
+
38
+ #
39
+ # Resubmit all jobs that have failed
40
+ #
41
+ def resubmit_all
42
+ authorize! :read, Delayed::Backend::Mongoid::Job
43
+ failed_only = params[:failed_only].eql?('true')
44
+ Delayed::Backend::Mongoid::Job.each do |job|
45
+ next if failed_only && !job.failed?
46
+
47
+ job.resubmit
48
+ end
49
+ flash.now[:info] = 'All DelayJobs has been resubmitted'
50
+ redirect_to index_path
51
+ rescue StandardError => error
52
+ log_controller_error error, true
53
+ redirect_to index_path
54
+ end
55
+
56
+ #
57
+ # Resubmit the delayed job via update method
58
+ #
59
+ def resubmit
60
+ authorize! :read, delayed_job
61
+ delayed_job.resubmit
62
+ flash.now[:info] = 'DelayJob has been resubmitted'
63
+ redirect_to index_path
64
+ rescue StandardError => error
65
+ log_controller_error error, true
66
+ redirect_to index_path
67
+ end
68
+
69
+ #
70
+ # Destroy the selected delayed job
71
+ #
72
+ def destroy
73
+ authorize! :manage, delayed_job
74
+ delayed_job.destroy!
75
+ flash.now[:info] = 'DelayJob has been destroyed'
76
+ redirect_to index_path
77
+ rescue StandardError => error
78
+ log_controller_error error, true
79
+ redirect_to index_path
80
+ end
81
+
82
+ private
83
+
84
+ def delayed_job
85
+ @delayed_job ||= Delayed::Backend::Mongoid::Job.find(params[:id])
86
+ end
87
+ end
@@ -4,7 +4,7 @@
4
4
  # Manage the system configuration page
5
5
  #
6
6
  module CoreSystemConfigurationsController
7
- authorize_resource :system_configuration
7
+ include CoreController
8
8
 
9
9
  #
10
10
  # Edit the system configuration
@@ -21,7 +21,7 @@ module CoreSystemConfigurationsController
21
21
  SystemConfiguration.configuration.update! system_configuration_params
22
22
  flash[:info] = 'System Configuration Updated, sync job running in the background'
23
23
  Cron::SwitchboardSyncConfiguration.perform_later
24
- redirect_to system_configuration_path
24
+ redirect_to index_path
25
25
  rescue StandardError => error
26
26
  log_controller_error error
27
27
  load_configuration
@@ -34,7 +34,7 @@ module CoreSystemConfigurationsController
34
34
  # Get the system configuration properties from the request
35
35
  #
36
36
  def system_configuration_params
37
- params.require(:system_configuration).permit(SystemConfiguration.allowed_param_names)
37
+ params[:system_configuration].permit(%i[switchboard_base_url switchboard_stack_id switchboard_stack_api_token])
38
38
  end
39
39
 
40
40
  #
@@ -10,6 +10,9 @@ require 'optparse'
10
10
  require 'pathname'
11
11
 
12
12
  module Cron
13
+ #
14
+ # Provide a friendly command structure for managing the cron server
15
+ #
13
16
  class Command
14
17
 
15
18
  DIR_PWD = Pathname.new Dir.pwd
@@ -21,11 +24,11 @@ module Cron
21
24
  opt.banner = "Usage: #{File.basename($PROGRAM_NAME)} [options] start|stop|restart|run"
22
25
 
23
26
  opt.on('-h', '--help', 'Show this message') do
24
- puts opt
27
+ warn opt
25
28
  exit 1
26
29
  end
27
30
  opt.on('-e', '--environment=NAME', 'Specifies the environment to run this delayed jobs under (test/development/production).') do |_e|
28
- STDERR.puts 'The -e/--environment option has been deprecated and has no effect. Use RAILS_ENV and see http://github.com/collectiveidea/delayed_job/issues/7'
31
+ warn 'The -e/--environment option has been deprecated and has no effect. Use RAILS_ENV and see http://github.com/collectiveidea/delayed_job/issues/7'
29
32
  end
30
33
  opt.on('--pid-dir=DIR', 'Specifies an alternate directory in which to store the process ids.') do |dir|
31
34
  @options[:pid_dir] = dir
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- #
4
- # Value object for a cron tab entry
5
- #
6
3
  module Cron
4
+ #
5
+ # Value object for a cron tab entry
6
+ #
7
7
  class JobTab < Tab
8
8
  FRAMEWORK_CLASSES = %w[Job TrimCollection Command Server Tab JobTab].freeze unless defined? FRAMEWORK_CLASSES
9
9
  #
@@ -38,9 +38,7 @@ module Cron
38
38
  def job_names
39
39
  @job_names ||= Cron.constants.collect do |job|
40
40
  job_name = job.to_s
41
- next if FRAMEWORK_CLASSES.include?(job_name) ||
42
- job_name.end_with?('Test') ||
43
- job_name.start_with?('Base')
41
+ next if FRAMEWORK_CLASSES.include?(job_name) || job_name.end_with?('Test') || job_name.start_with?('Base')
44
42
 
45
43
  job_name.underscore
46
44
  end.compact
@@ -1,7 +1,9 @@
1
- #
2
- # Handle the coordination of which server should be running the cron jobs
3
- #
1
+ # frozen_string_literal: true
2
+
4
3
  module Cron
4
+ #
5
+ # Handle the coordination of which server should be running the cron jobs
6
+ #
5
7
  class Server
6
8
  include StandardModel
7
9
  #
@@ -108,6 +110,7 @@ module Cron
108
110
 
109
111
  #
110
112
  # Become secondary node
113
+ # TODO: [CMS] Update when auditing in place
111
114
  #
112
115
  def become_secondary(user = nil)
113
116
  if user.present?
@@ -5,7 +5,7 @@ module Cron
5
5
  #
6
6
  # Cycle through all members and tell them to sync with with switchboard
7
7
  #
8
- class SwitchboardSyncModels <Job
8
+ class SwitchboardSyncModels < Job
9
9
  cron_tab_entry :daily
10
10
 
11
11
  #
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- #
4
- # Value object for a cron tab entry
5
- #
6
3
  module Cron
4
+ #
5
+ # Value object for a cron tab entry
6
+ #
7
7
  class Tab
8
8
  include StandardModel
9
9
  include SearchAble
@@ -1,16 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  #
4
- # The System configuration. Various configuration items that can be updated/defined at run time
5
- #
6
- # Use of this class allows you to simply ask for the configuration parameter directly without
7
- # first having to get an instance of it.
8
- #
9
- # SystemConfiguration.queue_impl #=> 'RedisQueue'
10
- #
11
- # This method only is allowed for accessors, you should NEVER set values on the SystemConfiguration
12
- # unless you are updating via the Admin or Stack UI, or during testing to setup a specific configuration
13
- # for that.
4
+ # The Base Account
14
5
  #
15
6
  module CoreAccount
16
7
  extend ActiveSupport::Concern
@@ -1,18 +1,18 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- #
4
- # The System configuration. Various configuration items that can be updated/defined at run time
5
- #
6
- # Use of this class allows you to simply ask for the configuration parameter directly without
7
- # first having to get an instance of it.
8
- #
9
- # SystemConfiguration.queue_impl #=> 'RedisQueue'
10
- #
11
- # This method only is allowed for accessors, you should NEVER set values on the SystemConfiguration
12
- # unless you are updating via the Admin or Stack UI, or during testing to setup a specific configuration
13
- # for that.
14
- #
15
3
  module CoreSystemConfiguration
4
+ #
5
+ # The System configuration. Various configuration items that can be updated/defined at run time
6
+ #
7
+ # Use of this class allows you to simply ask for the configuration parameter directly without
8
+ # first having to get an instance of it.
9
+ #
10
+ # SystemConfiguration.queue_impl #=> 'RedisQueue'
11
+ #
12
+ # This method only is allowed for accessors, you should NEVER set values on the SystemConfiguration
13
+ # unless you are updating via the Admin or Stack UI, or during testing to setup a specific configuration
14
+ # for that.
15
+ #
16
16
  extend ActiveSupport::Concern
17
17
 
18
18
  def self.included(base)
@@ -110,7 +110,7 @@ module CoreSystemConfiguration
110
110
  # NOTE: Currently ignored Codacy issue: When using 'method_missing', fall back on 'super'
111
111
  #
112
112
  # rubocop:disable Style/MethodMissingSuper
113
- def method_missing(method, *args, &block)
113
+ def method_missing(method, *args, &_block)
114
114
  configuration.send method, *args
115
115
  end
116
116
 
@@ -11,7 +11,7 @@ module Delayed
11
11
  def status_description
12
12
  return 'Failed' if failed?
13
13
 
14
- locked_by.present? ? locked_by : "Scheduled (#{attempts})"
14
+ locked_by.presence || "Scheduled (#{attempts})"
15
15
  end
16
16
 
17
17
  #
@@ -192,9 +192,9 @@ class EmailNotification < Notification
192
192
  authentication: smtp.authentication_method.to_sym,
193
193
  enable_starttls_auto: smtp.ssl.eql?(true)
194
194
  }
195
- config[:domain] = smtp.domain unless smtp.domain.nil? || smtp.domain.empty?
196
- config[:user_name] = smtp.username unless smtp.username.nil? || smtp.username.empty?
197
- config[:password] = smtp.password unless smtp.password.nil? || smtp.password.empty?
195
+ config[:domain] = smtp.domain if smtp.domain.present?
196
+ config[:user_name] = smtp.username if smtp.username.present?
197
+ config[:password] = smtp.password if smtp.password.present?
198
198
  config
199
199
  end
200
200
 
@@ -231,8 +231,8 @@ class EmailNotification < Notification
231
231
 
232
232
  def subject_from_template(template_name, locals)
233
233
  subject = account_subject_template(template_name) ||
234
- default_subject_template(template_name) ||
235
- template_from_file(template_name, prefix: 'subject')
234
+ default_subject_template(template_name) ||
235
+ template_from_file(template_name, prefix: 'subject')
236
236
  return subject_from_liquid_text(subject, locals) if subject.present?
237
237
 
238
238
  subject = template_from_file(template_name, format: 'haml', prefix: 'subject')
@@ -240,7 +240,7 @@ class EmailNotification < Notification
240
240
  end
241
241
 
242
242
  def account_subject_template(template_name)
243
- self.account.templates.emails.find_by(name: template_name.to_s).subject
243
+ account.templates.emails.find_by(name: template_name.to_s).subject
244
244
  rescue StandardError
245
245
  nil
246
246
  end
@@ -1,6 +1,9 @@
1
+ #
2
+ # Support an email template for an account
3
+ #
1
4
  class EmailTemplate < Template
2
5
 
3
6
  field :subject, type: String
4
7
 
5
8
  validates_presence_of :subject
6
- end
9
+ end
@@ -1,20 +1,21 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  #
4
+ # Base class for notification
4
5
  #
5
6
  class Notification
6
7
  include StandardModel
7
8
  #
8
9
  # Constants
9
10
  #
10
- STATE_INVALID = 'invalid'.freeze unless defined? STATE_INVALID
11
- STATE_NEW = 'new'.freeze unless defined? STATE_NEW
12
- STATE_PROCESSED = 'processed'.freeze unless defined? STATE_PROCESSED
13
- STATE_PROCESSING = 'processing'.freeze unless defined? STATE_PROCESSING
14
- STATE_RESUBMITTED = 'resubmitted'.freeze unless defined? STATE_RESUBMITTED
15
- STATE_RETRYING = 'retrying'.freeze unless defined? STATE_RETRYING
16
- STATE_SUBMITTED = 'submitted'.freeze unless defined? STATE_SUBMITTED
17
- STATE_VIEWED = 'viewed'.freeze unless defined? STATE_VIEWED
11
+ STATE_INVALID = 'invalid' unless defined? STATE_INVALID
12
+ STATE_NEW = 'new' unless defined? STATE_NEW
13
+ STATE_PROCESSED = 'processed' unless defined? STATE_PROCESSED
14
+ STATE_PROCESSING = 'processing' unless defined? STATE_PROCESSING
15
+ STATE_RESUBMITTED = 'resubmitted' unless defined? STATE_RESUBMITTED
16
+ STATE_RETRYING = 'retrying' unless defined? STATE_RETRYING
17
+ STATE_SUBMITTED = 'submitted' unless defined? STATE_SUBMITTED
18
+ STATE_VIEWED = 'viewed' unless defined? STATE_VIEWED
18
19
  unless defined? ALL_STATES
19
20
  ALL_STATES = [STATE_INVALID,
20
21
  STATE_NEW,
@@ -28,9 +29,9 @@ class Notification
28
29
  #
29
30
  # Channels
30
31
  #
31
- DELIVERY_EMAIL = 'email'.freeze unless defined? DELIVERY_EMAIL
32
- DELIVERY_SLACK = 'slack'.freeze unless defined? DELIVERY_SLACK
33
- DELIVERY_SMS = 'sms'.freeze unless defined? DELIVERY_SMS
32
+ DELIVERY_EMAIL = 'email' unless defined? DELIVERY_EMAIL
33
+ DELIVERY_SLACK = 'slack' unless defined? DELIVERY_SLACK
34
+ DELIVERY_SMS = 'sms' unless defined? DELIVERY_SMS
34
35
  #
35
36
  # Fields
36
37
  #
@@ -130,7 +130,7 @@ class RedisConfiguration
130
130
 
131
131
  config
132
132
  rescue StandardError => error
133
- puts "Error loading #{config_file_path} file", error
133
+ App47Logger.log_warn "Error loading #{config_file_path} file", error
134
134
  nil # return nothing if there is an error
135
135
  end
136
136
  end
@@ -15,7 +15,7 @@ class Template
15
15
  #
16
16
  # Validations
17
17
  #
18
- validates :name, uniqueness: {scope: :account_id}
18
+ validates :name, uniqueness: { scope: :account_id }
19
19
  validates :name, presence: true
20
20
  validates :template, presence: true
21
21
  end
@@ -1 +1,3 @@
1
- *ERROR:* `{{message}}`{% if exception != blank %} - ```{{exception}}``` {% endif %}
1
+ *ERROR:* `{{message}}`{% if exception != blank %} -
2
+ ```ruby {{exception}}```
3
+ {% endif %}
@@ -1,14 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- #
4
- # Configuration for the Web47Core platform
5
- #
6
3
  module Web47core
4
+ #
5
+ # Configuration for the Web47Core platform
6
+ #
7
7
  class Config
8
8
  include Singleton
9
- attr_accessor :email_able_models,
10
- :switchboard_able_models,
11
- :system_configuration_namespace
9
+ attr_accessor :email_able_models, :switchboard_able_models
12
10
 
13
11
  def initialize
14
12
  @email_able_models = []
@@ -1,3 +1,3 @@
1
1
  module Web47core
2
2
  class Engine < Rails::Engine; end
3
- end
3
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Web47core
4
- VERSION = '0.1.11'
4
+ VERSION = '0.3.0'
5
5
  end
data/lib/web47core.rb CHANGED
@@ -1,5 +1,3 @@
1
- VERSION = '0.1.6'
2
-
3
1
  require 'app/models/concerns/app47_logger'
4
2
  require 'app/models/concerns/cdn_url'
5
3
  require 'app/models/concerns/email_able'
@@ -38,7 +36,8 @@ require 'app/jobs/cron/trim_failed_delayed_jobs'
38
36
  # Controllers
39
37
  #
40
38
  require 'web47core/engine'
41
- require 'app/controllers/concerns/core_system_configuration_controller'
42
39
  require 'app/controllers/concerns/restful_controller'
43
-
44
-
40
+ require 'app/controllers/concerns/core_controller'
41
+ require 'app/controllers/concerns/core_system_configuration_controller'
42
+ require 'app/controllers/concerns/core_cron_controller'
43
+ require 'app/controllers/concerns/core_delayed_jobs_controller'
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: 0.1.11
4
+ version: 0.3.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: 2020-03-29 00:00:00.000000000 Z
11
+ date: 2020-03-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -39,19 +39,19 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: delayed_job_mongoid
42
+ name: cancancan
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '2.3'
47
+ version: '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: '2.3'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: daemons
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: delayed_job_mongoid
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '2.3'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '2.3'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: email_format
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -545,16 +559,42 @@ files:
545
559
  - app/controllers/exceptions_controller.rb
546
560
  - app/controllers/notifications_controller.rb
547
561
  - app/controllers/status_controller.rb
562
+ - app/helpers/core_form_helper.rb
563
+ - app/helpers/core_helper.rb
564
+ - app/helpers/core_link_helper.rb
565
+ - app/views/admin/cron/edit.html.haml
566
+ - app/views/admin/cron/index.html.haml
567
+ - app/views/admin/delayed_jobs/index.html.haml
568
+ - app/views/admin/delayed_jobs/show.html.haml
569
+ - app/views/admin/system_configurations/edit.html.haml
570
+ - app/views/admin/system_configurations/show.html.haml
571
+ - app/views/common/_form_actions.html.haml
572
+ - app/views/cron/_edit.html.haml
573
+ - app/views/cron/_index.html.haml
574
+ - app/views/cron/edit.html.haml
575
+ - app/views/cron/index.html.haml
576
+ - app/views/delayed_jobs/_index.html.haml
577
+ - app/views/delayed_jobs/_show.html.haml
578
+ - app/views/delayed_jobs/index.html.haml
579
+ - app/views/delayed_jobs/show.html.haml
580
+ - app/views/stack/cron/edit.html.haml
581
+ - app/views/stack/cron/index.html.haml
582
+ - app/views/stack/system_configurations/edit.html.haml
583
+ - app/views/stack/system_configurations/show.html.haml
548
584
  - app/views/status/index.html.haml
585
+ - app/views/system_configurations/_edit.html.haml
586
+ - app/views/system_configurations/_show.html.haml
587
+ - app/views/system_configurations/edit.html.haml
588
+ - app/views/system_configurations/show.html.haml
549
589
  - bin/cron_server
550
590
  - bin/delayed_job
551
591
  - config/locales/en.yml
552
592
  - config/routes.rb
593
+ - lib/app/controllers/concerns/core_controller.rb
594
+ - lib/app/controllers/concerns/core_cron_controller.rb
595
+ - lib/app/controllers/concerns/core_delayed_jobs_controller.rb
553
596
  - lib/app/controllers/concerns/core_system_configuration_controller.rb
554
597
  - lib/app/controllers/concerns/restful_controller.rb
555
- - lib/app/helpers/core_form_helper.rb
556
- - lib/app/helpers/core_helper.rb
557
- - lib/app/helpers/core_link_helper.rb
558
598
  - lib/app/jobs/application_job.rb
559
599
  - lib/app/jobs/cron/command.rb
560
600
  - lib/app/jobs/cron/job.rb
@@ -586,8 +626,6 @@ files:
586
626
  - lib/app/models/sms_notification.rb
587
627
  - lib/app/models/smtp_configuration.rb
588
628
  - lib/app/models/template.rb
589
- - lib/app/views/system_configurations/edit.html.haml
590
- - lib/app/views/system_configurations/show.html.haml
591
629
  - lib/templates/email/notification_failure.liquid
592
630
  - lib/templates/email/notification_failure.subject.liquid
593
631
  - lib/templates/slack/error_message.liquid
File without changes