marty 2.5.2 → 2.5.4

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 (181) hide show
  1. checksums.yaml +5 -5
  2. data/.gitignore +4 -0
  3. data/.rubocop.yml +7 -0
  4. data/.rubocop_todo.yml +11 -589
  5. data/Gemfile +9 -9
  6. data/Gemfile.lock +1 -1
  7. data/Rakefile +1 -3
  8. data/app/components/marty/api_auth_view.rb +3 -3
  9. data/app/components/marty/api_config_view.rb +8 -8
  10. data/app/components/marty/api_log_view.rb +16 -20
  11. data/app/components/marty/auth_app.rb +6 -6
  12. data/app/components/marty/base_rule_view.rb +27 -19
  13. data/app/components/marty/config_view.rb +12 -9
  14. data/app/components/marty/data_grid_view.rb +26 -26
  15. data/app/components/marty/delorean_rule_view.rb +0 -1
  16. data/app/components/marty/event_view.rb +27 -27
  17. data/app/components/marty/extras/layout.rb +26 -26
  18. data/app/components/marty/extras/misc.rb +2 -2
  19. data/app/components/marty/grid.rb +13 -13
  20. data/app/components/marty/grid_append_only.rb +0 -1
  21. data/app/components/marty/import_type_view.rb +13 -13
  22. data/app/components/marty/import_view.rb +17 -16
  23. data/app/components/marty/log_view.rb +16 -14
  24. data/app/components/marty/main_auth_app.rb +59 -59
  25. data/app/components/marty/main_auth_app/client/main_auth_app.js +3 -3
  26. data/app/components/marty/mcfly_grid_panel.rb +10 -10
  27. data/app/components/marty/new_posting_form.rb +11 -11
  28. data/app/components/marty/new_posting_window.rb +0 -1
  29. data/app/components/marty/posting_grid.rb +12 -13
  30. data/app/components/marty/promise_view.rb +6 -6
  31. data/app/components/marty/report_form.rb +50 -53
  32. data/app/components/marty/report_select.rb +27 -27
  33. data/app/components/marty/reporting.rb +4 -4
  34. data/app/components/marty/script_form.rb +40 -42
  35. data/app/components/marty/script_grid.rb +24 -24
  36. data/app/components/marty/script_tester.rb +40 -42
  37. data/app/components/marty/scripting.rb +25 -27
  38. data/app/components/marty/simple_app.rb +24 -9
  39. data/app/components/marty/tag_grid.rb +12 -13
  40. data/app/components/marty/user_view.rb +35 -35
  41. data/app/controllers/marty/application_controller.rb +3 -4
  42. data/app/controllers/marty/components_controller.rb +1 -1
  43. data/app/controllers/marty/delayed_job_controller.rb +1 -0
  44. data/app/controllers/marty/diagnostic/controller.rb +4 -6
  45. data/app/controllers/marty/job_controller.rb +6 -6
  46. data/app/controllers/marty/report_controller.rb +11 -11
  47. data/app/controllers/marty/rpc_controller.rb +15 -16
  48. data/app/helpers/marty/script_set.rb +4 -4
  49. data/app/models/marty/api_auth.rb +4 -5
  50. data/app/models/marty/api_config.rb +1 -1
  51. data/app/models/marty/base.rb +9 -8
  52. data/app/models/marty/base_rule.rb +18 -13
  53. data/app/models/marty/config.rb +4 -5
  54. data/app/models/marty/data_grid.rb +157 -181
  55. data/app/models/marty/delorean_rule.rb +63 -62
  56. data/app/models/marty/enum.rb +1 -1
  57. data/app/models/marty/event.rb +56 -59
  58. data/app/models/marty/helper.rb +38 -6
  59. data/app/models/marty/import_type.rb +6 -6
  60. data/app/models/marty/log.rb +3 -2
  61. data/app/models/marty/name_validator.rb +3 -2
  62. data/app/models/marty/pg_enum.rb +3 -4
  63. data/app/models/marty/posting.rb +20 -24
  64. data/app/models/marty/promise.rb +28 -30
  65. data/app/models/marty/script.rb +30 -28
  66. data/app/models/marty/tag.rb +8 -8
  67. data/app/models/marty/token.rb +2 -2
  68. data/app/models/marty/user.rb +24 -23
  69. data/app/models/marty/vw_promise.rb +10 -11
  70. data/config/routes.rb +2 -2
  71. data/delorean/blame_report.dl +268 -0
  72. data/{spec/dummy/delorean/fields.dl → delorean/marty_fields.dl} +8 -0
  73. data/delorean/table_report.dl +34 -0
  74. data/docker-compose.dummy.yml +2 -3
  75. data/lib/marty/aws/base.rb +8 -8
  76. data/lib/marty/aws/request.rb +4 -4
  77. data/lib/marty/cache_adapters/mcfly_ruby_cache.rb +1 -0
  78. data/lib/marty/content_handler.rb +25 -25
  79. data/lib/marty/data_change.rb +49 -71
  80. data/lib/marty/data_conversion.rb +20 -28
  81. data/lib/marty/data_exporter.rb +25 -28
  82. data/lib/marty/data_importer.rb +25 -27
  83. data/lib/marty/engine.rb +1 -2
  84. data/lib/marty/json_schema.rb +22 -24
  85. data/lib/marty/logger.rb +6 -9
  86. data/lib/marty/mcfly_model.rb +20 -24
  87. data/lib/marty/migrations.rb +37 -35
  88. data/lib/marty/monkey.rb +33 -33
  89. data/lib/marty/permissions.rb +18 -18
  90. data/lib/marty/promise_job.rb +17 -17
  91. data/lib/marty/promise_proxy.rb +6 -6
  92. data/lib/marty/relation.rb +6 -7
  93. data/lib/marty/rpc_call.rb +13 -12
  94. data/lib/marty/rule_script_set.rb +32 -28
  95. data/lib/marty/schema_helper.rb +37 -51
  96. data/lib/marty/util.rb +25 -24
  97. data/lib/marty/version.rb +1 -1
  98. data/lib/marty/xl.rb +121 -115
  99. data/make-dummy.mk +3 -0
  100. data/marty.gemspec +21 -21
  101. data/other/marty/api/base.rb +34 -35
  102. data/other/marty/diagnostic/aws/ec2_instance.rb +8 -8
  103. data/other/marty/diagnostic/base.rb +13 -14
  104. data/other/marty/diagnostic/collection.rb +2 -1
  105. data/other/marty/diagnostic/connections.rb +8 -6
  106. data/other/marty/diagnostic/database.rb +1 -0
  107. data/other/marty/diagnostic/delayed_job_version.rb +7 -9
  108. data/other/marty/diagnostic/delayed_job_worker_total_count.rb +1 -1
  109. data/other/marty/diagnostic/delayed_job_workers.rb +1 -1
  110. data/other/marty/diagnostic/environment_variables.rb +17 -15
  111. data/other/marty/diagnostic/fatal.rb +1 -1
  112. data/other/marty/diagnostic/node.rb +5 -9
  113. data/other/marty/diagnostic/nodes.rb +7 -5
  114. data/other/marty/diagnostic/packer.rb +7 -7
  115. data/other/marty/diagnostic/reporter.rb +24 -27
  116. data/other/marty/diagnostic/version.rb +3 -5
  117. data/script/rails +2 -1
  118. data/spec/controllers/application_controller_spec.rb +6 -6
  119. data/spec/controllers/delayed_job_controller_spec.rb +4 -4
  120. data/spec/controllers/diagnostic/controller_spec.rb +59 -60
  121. data/spec/controllers/job_controller_spec.rb +68 -69
  122. data/spec/controllers/rpc_controller_spec.rb +353 -359
  123. data/spec/controllers/rpc_import_spec.rb +15 -16
  124. data/spec/dummy/delorean/blame_report.dl +110 -15
  125. data/spec/dummy/delorean/data_report.dl +4 -4
  126. data/spec/dummy/delorean/marty_fields.dl +63 -0
  127. data/spec/dummy/delorean/table_report.dl +34 -0
  128. data/spec/features/auth_app_spec.rb +1 -2
  129. data/spec/features/data_import_spec.rb +2 -3
  130. data/spec/features/enum_spec.rb +42 -46
  131. data/spec/features/jobs_dashboard_spec.rb +14 -8
  132. data/spec/features/log_view_spec.rb +40 -43
  133. data/spec/features/reporting_spec.rb +15 -15
  134. data/spec/features/rule_spec.rb +195 -190
  135. data/spec/features/scripting_spec.rb +17 -20
  136. data/spec/features/scripting_test_spec.rb +32 -33
  137. data/spec/features/user_view_spec.rb +15 -17
  138. data/spec/job_helper.rb +11 -11
  139. data/spec/lib/data_blame_spec.rb +82 -0
  140. data/spec/lib/data_exporter_spec.rb +31 -32
  141. data/spec/lib/data_importer_spec.rb +382 -395
  142. data/spec/lib/delorean_query_spec.rb +117 -119
  143. data/spec/lib/json_schema_spec.rb +382 -392
  144. data/spec/lib/logger_spec.rb +23 -24
  145. data/spec/lib/mcfly_model_spec.rb +112 -109
  146. data/spec/lib/migrations_spec.rb +10 -10
  147. data/spec/lib/struct_compare_spec.rb +6 -6
  148. data/spec/lib/table_report_spec.rb +90 -0
  149. data/spec/lib/xl_spec.rb +63 -65
  150. data/spec/lib/xl_styles_spec.rb +16 -19
  151. data/spec/models/api_auth_spec.rb +30 -30
  152. data/spec/models/config_spec.rb +32 -32
  153. data/spec/models/data_grid_spec.rb +642 -655
  154. data/spec/models/event_spec.rb +96 -88
  155. data/spec/models/import_type_spec.rb +20 -20
  156. data/spec/models/posting_spec.rb +35 -35
  157. data/spec/models/promise_spec.rb +5 -5
  158. data/spec/models/rule_spec.rb +280 -269
  159. data/spec/models/script_spec.rb +27 -18
  160. data/spec/models/user_spec.rb +9 -9
  161. data/spec/other/diagnostic/base_spec.rb +20 -19
  162. data/spec/other/diagnostic/collection_spec.rb +6 -5
  163. data/spec/other/diagnostic/delayed_job_version_spec.rb +1 -1
  164. data/spec/other/diagnostic/delayed_job_workers_spec.rb +8 -8
  165. data/spec/other/diagnostic/reporter_spec.rb +31 -33
  166. data/spec/spec_helper.rb +5 -5
  167. data/spec/support/chromedriver.rb +3 -5
  168. data/spec/support/components/netzke_combobox.rb +1 -1
  169. data/spec/support/components/netzke_grid.rb +17 -17
  170. data/spec/support/custom_matchers.rb +2 -2
  171. data/spec/support/download_helper.rb +1 -1
  172. data/spec/support/helper.rb +1 -2
  173. data/spec/support/netzke.rb +31 -31
  174. data/spec/support/performance_helper.rb +8 -8
  175. data/spec/support/post_run_logger.rb +1 -2
  176. data/spec/support/setup.rb +1 -4
  177. data/spec/support/shared_connection.rb +2 -2
  178. data/spec/support/structure_compare.rb +21 -22
  179. data/spec/support/suite.rb +1 -2
  180. data/spec/support/users.rb +5 -6
  181. metadata +32 -26
@@ -1,31 +1,30 @@
1
1
  class Marty::Scripting < Netzke::Base
2
-
3
2
  def configure(c)
4
3
  super
5
4
 
6
5
  c.items =
7
6
  [
8
- :script_form,
9
- {
10
- xtype: "tabpanel",
11
- active_tab: 0,
12
- region: :center,
13
- split: true,
14
- items: [
15
- {
16
- title: I18n.t("script.selection"),
17
- layout: {
18
- type: :vbox,
19
- align: :stretch,
20
- },
21
- items: [
22
- :tag_grid,
23
- :script_grid,
24
- ],
25
- },
26
- :script_tester,
27
- ],
28
- },
7
+ :script_form,
8
+ {
9
+ xtype: 'tabpanel',
10
+ active_tab: 0,
11
+ region: :center,
12
+ split: true,
13
+ items: [
14
+ {
15
+ title: I18n.t('script.selection'),
16
+ layout: {
17
+ type: :vbox,
18
+ align: :stretch,
19
+ },
20
+ items: [
21
+ :tag_grid,
22
+ :script_grid,
23
+ ],
24
+ },
25
+ :script_tester,
26
+ ],
27
+ },
29
28
  ]
30
29
  end
31
30
 
@@ -49,19 +48,19 @@ class Marty::Scripting < Netzke::Base
49
48
  c.width = 400
50
49
  c.height = 300
51
50
  c.load_inline_data = false
52
- c.title = I18n.t("script.selection_history")
51
+ c.title = I18n.t('script.selection_history')
53
52
  end
54
53
 
55
54
  component :script_grid do |c|
56
55
  c.width = 400
57
56
  c.klass = Marty::ScriptGrid
58
- c.title = I18n.t("script.selection_list")
57
+ c.title = I18n.t('script.selection_list')
59
58
  c.flex = 1
60
59
  end
61
60
 
62
61
  component :script_form do |c|
63
62
  c.klass = Marty::ScriptForm
64
- c.title = I18n.t("script.detail")
63
+ c.title = I18n.t('script.detail')
65
64
  c.flex = 1
66
65
  c.split = true
67
66
  c.region = :west
@@ -69,10 +68,9 @@ class Marty::Scripting < Netzke::Base
69
68
 
70
69
  component :script_tester do |c|
71
70
  c.klass = Marty::ScriptTester
72
- c.title = I18n.t("script.tester")
71
+ c.title = I18n.t('script.tester')
73
72
  c.flex = 1
74
73
  end
75
-
76
74
  end
77
75
 
78
76
  Scripting = Marty::Scripting
@@ -6,13 +6,23 @@
6
6
  # * AJAX activity indicator
7
7
  #
8
8
  # == Extending SimpleApp
9
- # You may want to extend SimpleApp to provide a custom layout. Make sure you create three regions with predefined itemId's that will be used by SimpleApp. You can use the following methods defined by SimpleApp: main_panel_config, status_bar_config, and menu_bar_config, e.g.:
9
+ # You may want to extend SimpleApp to provide a custom layout.
10
+ # Make sure you create three regions with predefined itemId's
11
+ # that will be used by SimpleApp.
12
+ # You can use the following methods defined by SimpleApp:
13
+ # main_panel_config, status_bar_config, and menu_bar_config,
14
+ # e.g.:
10
15
  #
11
16
  # class MySimpleApp < Netzke::Basepack::SimpleApp
12
17
  #
13
18
  # def configuration
14
19
  # super.merge(
15
- # :items => [my_custom_navigation_config, main_panel_config, menu_bar_config, status_bar_config]
20
+ # :items => [
21
+ # my_custom_navigation_config,
22
+ # main_panel_config,
23
+ # menu_bar_config,
24
+ # status_bar_config
25
+ # ]
16
26
  # )
17
27
  # end
18
28
  #
@@ -27,12 +37,17 @@
27
37
  # ...
28
38
  # end
29
39
  #
30
- # The JS side of the component will have those regions referenced as this.mainPanel, this.statusBar, and this.menuBar.
40
+ # The JS side of the component will have those regions referenced as
41
+ # this.mainPanel, this.statusBar, and this.menuBar.
31
42
  class Marty::SimpleApp < Netzke::Base
32
43
  client_class do |c|
33
- c.extend = "Ext.container.Viewport"
44
+ c.extend = 'Ext.container.Viewport'
34
45
  c.layout = :border
35
- c.require Netzke::Core.ext_path.join("packages/ux/classic/src/statusbar/StatusBar.js"), :statusbar_ext
46
+ c.require(
47
+ Netzke::Core.ext_path.join('packages/ux/classic/src/statusbar/StatusBar.js'),
48
+ :statusbar_ext
49
+ )
50
+
36
51
  c.include :simple_app
37
52
  end
38
53
 
@@ -43,7 +58,7 @@ class Marty::SimpleApp < Netzke::Base
43
58
 
44
59
  # In Ext 4.1 calling `render` on a viewport causes an error
45
60
  def js_component_render
46
- ""
61
+ ''
47
62
  end
48
63
 
49
64
  # Override for custom menu
@@ -68,8 +83,8 @@ class Marty::SimpleApp < Netzke::Base
68
83
  :region => 'south',
69
84
  :statusAlign => 'right',
70
85
  :busyText => 'Busy...',
71
- :default_text => "Ready",
72
- :default_icon_cls => ""
86
+ :default_text => 'Ready',
87
+ :default_icon_cls => ''
73
88
  }.merge(overrides)
74
89
  end
75
90
 
@@ -77,7 +92,7 @@ class Marty::SimpleApp < Netzke::Base
77
92
  def menu_bar_config(overrides = {})
78
93
  {
79
94
  :itemId => 'menu_bar',
80
- :layout => {overflow_handler: 'Menu'},
95
+ :layout => { overflow_handler: 'Menu' },
81
96
  :xtype => 'toolbar',
82
97
  :region => 'north',
83
98
  :items => menu
@@ -1,30 +1,30 @@
1
1
  class Marty::TagGrid < Marty::Grid
2
2
  has_marty_permissions \
3
- read: :any,
4
- create: :dev
3
+ read: :any,
4
+ create: :dev
5
5
 
6
6
  def configure(c)
7
7
  super
8
8
 
9
9
  c.header = false
10
- c.model = "Marty::Tag"
10
+ c.model = 'Marty::Tag'
11
11
  c.multi_select = false
12
12
 
13
13
  c.attributes ||= [:name, :created_dt, :user__name, :comment]
14
14
 
15
- c.store_config.merge!({sorters: [{property: :created_dt,
16
- direction: 'DESC'}]})
15
+ c.store_config.merge!(sorters: [{ property: :created_dt,
16
+ direction: 'DESC' }])
17
17
  end
18
18
 
19
19
  endpoint :add_window__add_form__submit do |params|
20
20
  data = ActiveSupport::JSON.decode(params[:data])
21
21
 
22
- return client.netzke_notify("Permission Denied") if
22
+ return client.netzke_notify('Permission Denied') if
23
23
  !config[:permissions][:create]
24
24
 
25
25
  # FIXME: disallow tag creation when no script has been modified?
26
26
 
27
- tag = Marty::Tag.do_create(nil, data["comment"])
27
+ tag = Marty::Tag.do_create(nil, data['comment'])
28
28
 
29
29
  if tag.valid?
30
30
  client.success = true
@@ -36,9 +36,9 @@ class Marty::TagGrid < Marty::Grid
36
36
  end
37
37
 
38
38
  action :add_in_form do |a|
39
- a.text = I18n.t("tag_grid.new")
40
- a.tooltip = I18n.t("tag_grid.new")
41
- a.icon_cls = "fa fa-clock glyph"
39
+ a.text = I18n.t('tag_grid.new')
40
+ a.tooltip = I18n.t('tag_grid.new')
41
+ a.icon_cls = 'fa fa-clock glyph'
42
42
  a.disabled = !config[:permissions][:create]
43
43
  end
44
44
 
@@ -58,8 +58,8 @@ class Marty::TagGrid < Marty::Grid
58
58
  end
59
59
 
60
60
  attribute :created_dt do |c|
61
- c.text = "Date/Time"
62
- c.format = "Y-m-d H:i"
61
+ c.text = 'Date/Time'
62
+ c.format = 'Y-m-d H:i'
63
63
  c.hidden = true
64
64
  end
65
65
 
@@ -71,7 +71,6 @@ class Marty::TagGrid < Marty::Grid
71
71
  c.width = 100
72
72
  c.flex = 1
73
73
  end
74
-
75
74
  end
76
75
 
77
76
  TagGrid = Marty::TagGrid
@@ -7,11 +7,11 @@ module Marty; class UserView < Marty::Grid
7
7
  # list of columns to be displayed in the grid view
8
8
  def self.user_columns
9
9
  [
10
- :login,
11
- :firstname,
12
- :lastname,
13
- :active,
14
- :roles,
10
+ :login,
11
+ :firstname,
12
+ :lastname,
13
+ :active,
14
+ :roles,
15
15
  ]
16
16
  end
17
17
 
@@ -19,12 +19,12 @@ module Marty; class UserView < Marty::Grid
19
19
  super
20
20
 
21
21
  c.attributes ||= self.class.user_columns
22
- c.title ||= I18n.t('users', default: "Users")
23
- c.model = "Marty::User"
22
+ c.title ||= I18n.t('users', default: 'Users')
23
+ c.model = 'Marty::User'
24
24
  c.editing = :in_form
25
25
  c.paging = :pagination
26
26
  c.multi_select = false
27
- c.store_config.merge!(sorters: [{property: :login,
27
+ c.store_config.merge!(sorters: [{ property: :login,
28
28
  direction: 'ASC',
29
29
  }]) if c.attributes.include?(:login)
30
30
  c.scope = ->(arel) { arel.includes(:roles) }
@@ -39,22 +39,22 @@ module Marty; class UserView < Marty::Grid
39
39
  end
40
40
 
41
41
  # set new roles
42
- user.roles = Role.select {
43
- |r| roles.include? I18n.t("roles.#{r.name}")
42
+ user.roles = Role.select { |r|
43
+ roles.include? I18n.t("roles.#{r.name}")
44
44
  }
45
45
  end
46
46
 
47
47
  def self.create_edit_user(data)
48
48
  # Creates initial place-holder user object and validate
49
- user = data["id"].nil? ? User.new : User.find(data["id"])
49
+ user = data['id'].nil? ? User.new : User.find(data['id'])
50
50
 
51
- self.user_columns.each {
52
- |c| user.send("#{c}=", data[c.to_s]) unless c == :roles
53
- }
51
+ user_columns.each do |c|
52
+ user.send("#{c}=", data[c.to_s]) unless c == :roles
53
+ end
54
54
 
55
55
  if user.valid?
56
56
  user.save
57
- set_roles(data["roles"], user)
57
+ set_roles(data['roles'], user)
58
58
  end
59
59
 
60
60
  user
@@ -66,10 +66,10 @@ module Marty; class UserView < Marty::Grid
66
66
  endpoint :add_window__add_form__submit do |params|
67
67
  data = ActiveSupport::JSON.decode(params[:data])
68
68
 
69
- data["id"] = nil
69
+ data['id'] = nil
70
70
 
71
71
  unless self.class.can_perform_action?(:create)
72
- client.netzke_notify "Permission Denied"
72
+ client.netzke_notify 'Permission Denied'
73
73
  return
74
74
  end
75
75
 
@@ -85,7 +85,7 @@ module Marty; class UserView < Marty::Grid
85
85
  endpoint :edit_window__edit_form__submit do |params|
86
86
  data = ActiveSupport::JSON.decode(params[:data])
87
87
  unless self.class.can_perform_action?(:update)
88
- client.netzke_notify "Permission Denied"
88
+ client.netzke_notify 'Permission Denied'
89
89
  return
90
90
  end
91
91
 
@@ -100,19 +100,19 @@ module Marty; class UserView < Marty::Grid
100
100
 
101
101
  action :add do |a|
102
102
  super(a)
103
- a.text = I18n.t("user_grid.new")
104
- a.tooltip = I18n.t("user_grid.new")
105
- a.icon_cls = "fa fa-user-plus glyph"
103
+ a.text = I18n.t('user_grid.new')
104
+ a.tooltip = I18n.t('user_grid.new')
105
+ a.icon_cls = 'fa fa-user-plus glyph'
106
106
  end
107
107
 
108
108
  action :edit do |a|
109
109
  super(a)
110
- a.icon_cls = "fa fa-user-cog glyph"
110
+ a.icon_cls = 'fa fa-user-cog glyph'
111
111
  end
112
112
 
113
113
  action :delete do |a|
114
114
  super(a)
115
- a.icon_cls = "fa fa-user-minus glyph"
115
+ a.icon_cls = 'fa fa-user-minus glyph'
116
116
  end
117
117
 
118
118
  def default_context_menu
@@ -121,46 +121,46 @@ module Marty; class UserView < Marty::Grid
121
121
 
122
122
  attribute :login do |c|
123
123
  c.width = 100
124
- c.label = I18n.t("user_grid.login")
124
+ c.label = I18n.t('user_grid.login')
125
125
  end
126
126
 
127
127
  attribute :firstname do |c|
128
128
  c.width = 100
129
- c.label = I18n.t("user_grid.firstname")
129
+ c.label = I18n.t('user_grid.firstname')
130
130
  end
131
131
 
132
132
  attribute :lastname do |c|
133
133
  c.width = 100
134
- c.label = I18n.t("user_grid.lastname")
134
+ c.label = I18n.t('user_grid.lastname')
135
135
  end
136
136
 
137
137
  attribute :active do |c|
138
138
  c.width = 60
139
- c.label = I18n.t("user_grid.active")
139
+ c.label = I18n.t('user_grid.active')
140
140
  end
141
141
 
142
142
  attribute :roles do |c|
143
143
  c.width = 100
144
144
  c.flex = 1
145
- c.label = I18n.t("user_grid.roles")
145
+ c.label = I18n.t('user_grid.roles')
146
146
  c.type = :string,
147
147
 
148
- c.getter = lambda do |r|
149
- r.roles.map { |ur| I18n.t("roles.#{ur.name}") }.sort
150
- end
148
+ c.getter = lambda do |r|
149
+ r.roles.map { |ur| I18n.t("roles.#{ur.name}") }.sort
150
+ end
151
151
 
152
152
  c.editor_config = {
153
153
  multi_select: true,
154
- empty_text: I18n.t("user_grid.select_roles"),
155
- store: Role.pluck(:name).map {|n| I18n.t("roles.#{n}")}.sort,
154
+ empty_text: I18n.t('user_grid.select_roles'),
155
+ store: Role.pluck(:name).map { |n| I18n.t("roles.#{n}") }.sort,
156
156
  type: :string,
157
157
  xtype: :combo,
158
158
  }
159
159
  end
160
160
 
161
161
  attribute :created_dt do |c|
162
- c.label = I18n.t("user_grid.created_dt")
163
- c.format = "Y-m-d H:i"
162
+ c.label = I18n.t('user_grid.created_dt')
163
+ c.format = 'Y-m-d H:i'
164
164
  c.read_only = true
165
165
  end
166
166
  end; end
@@ -12,7 +12,7 @@ class Marty::ApplicationController < ActionController::Base
12
12
  end
13
13
 
14
14
  before_action :session_expiration,
15
- :user_setup
15
+ :user_setup
16
16
 
17
17
  def get_conf
18
18
  Rails.configuration.marty
@@ -101,7 +101,7 @@ class Marty::ApplicationController < ActionController::Base
101
101
  cookies.delete :autologin
102
102
  Marty::Token.where(user_id: Marty::User.current.id).delete_all unless
103
103
  Marty::Util.db_in_recovery?
104
- self.set_user(nil)
104
+ set_user(nil)
105
105
  end
106
106
  end
107
107
 
@@ -120,7 +120,6 @@ class Marty::ApplicationController < ActionController::Base
120
120
  def successful_authentication(user)
121
121
  logger.info("Successful authentication for '#{user.login}' " +
122
122
  "from #{request.remote_ip} at #{Time.now.utc}")
123
- self.set_user(user)
123
+ set_user(user)
124
124
  end
125
-
126
125
  end
@@ -8,7 +8,7 @@ class Marty::ComponentsController < Marty::ApplicationController
8
8
 
9
9
  return redirect_to root_path unless component
10
10
 
11
- cname = component.gsub("::", "_").underscore
11
+ cname = component.gsub('::', '_').underscore
12
12
  render layout: true,
13
13
  inline: "<%= netzke :#{cname}, class_name: '#{component}', height: 650 %>"
14
14
  end
@@ -8,6 +8,7 @@ class Marty::DelayedJobController < ActionController::Base
8
8
 
9
9
  def delayed_job
10
10
  return unless params['id'].present?
11
+
11
12
  @delayed_job ||= ::Delayed::Job.find_by(id: params['id'])
12
13
  end
13
14
 
@@ -6,16 +6,14 @@ module Marty::Diagnostic; class Controller < ActionController::Base
6
6
  end
7
7
 
8
8
  def op
9
- begin
10
9
  @result = Reporter.run(request)
11
- rescue NameError
10
+ rescue NameError
12
11
  render file: 'public/400', formats: [:html], status: 400, layout: false
13
- else
12
+ else
14
13
  respond_to do |format|
15
- format.html {@result = display_parameters}
16
- format.json {render json: process_result_for_api}
14
+ format.html { @result = display_parameters }
15
+ format.json { render json: process_result_for_api }
17
16
  end
18
- end
19
17
  end
20
18
 
21
19
  def process_result_for_api