integration_pal 0.1.3 → 0.1.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.
- checksums.yaml +4 -4
- data/app/assets/javascripts/integration_pal/application.js +2 -0
- data/app/assets/javascripts/integration_pal/workers.coffee +33 -0
- data/app/controllers/integration_pal/workers_controller.rb +6 -1
- data/{lib → app/models}/canvas/client.rb +0 -0
- data/{lib → app/models}/canvas/models/account.rb +0 -0
- data/{lib → app/models}/canvas/models/base_model.rb +0 -0
- data/{lib → app/models}/canvas/models/course.rb +0 -0
- data/{lib → app/models}/canvas/models/enrollment.rb +0 -0
- data/{lib → app/models}/canvas/models/file.rb +0 -0
- data/{lib → app/models}/canvas/models/folder.rb +0 -0
- data/{lib → app/models}/canvas/models/group.rb +0 -0
- data/{lib → app/models}/canvas/models/group_membership.rb +0 -0
- data/{lib → app/models}/canvas/models/section.rb +0 -0
- data/{lib → app/models}/canvas/models/term.rb +0 -0
- data/{lib → app/models}/canvas/models/user.rb +0 -0
- data/{lib → app/models}/canvas/models/user_observer.rb +0 -0
- data/{lib → app/models}/canvas/models/x_list.rb +0 -0
- data/{lib → app/models}/canvas/utils/csv.rb +0 -0
- data/{lib → app/models}/canvas/utils/sis.rb +0 -0
- data/app/models/integration_pal/worker.rb +2 -2
- data/app/views/integration_pal/workers/_form.html.erb +32 -11
- data/lib/integration_pal/engine.rb +1 -0
- data/lib/integration_pal/version.rb +1 -1
- metadata +33 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bfbfcca9a652c0832d296463732c575fda9c8348
|
4
|
+
data.tar.gz: a6d1460f68931dbdadee4e125fcfc9c246d42d2e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e28e45c019820d871f79e579da88fa1c812712488b2f55cb527c78678ec85817822c70929f349deefc7c68a4c35e606ce3969c0f5104b3bbc14f7195e24f7aaf
|
7
|
+
data.tar.gz: 8bd163df2013969c62cc1e9bebf4f5a309d9b7afa564dce60f85bd6cd754c6fec0f7154e9653983f2916f43e7d5ea72b8d7f87d2a3afee293a25a85d7e2341e4
|
@@ -0,0 +1,33 @@
|
|
1
|
+
class WorkerForm
|
2
|
+
constructor: ->
|
3
|
+
$('#new_setting_button').on 'click', (event) ->
|
4
|
+
event.preventDefault()
|
5
|
+
key = $('#new_setting_key').val()
|
6
|
+
value = $('#new_setting_value').val()
|
7
|
+
return if key.length < 1 || value.length < 1
|
8
|
+
formElement = """
|
9
|
+
<div id="setting_#{key}">
|
10
|
+
<label>#{key}</label>
|
11
|
+
<div class='row'>
|
12
|
+
<div class="col-sm-10">
|
13
|
+
<input class='form-control' name="worker[settings][#{key}]" type="text" value="#{value}" />
|
14
|
+
</div>
|
15
|
+
<div class='col-sm-2'>
|
16
|
+
<button class='remove_setting btn btn-danger' data-key="#{key}">Remove</button>
|
17
|
+
</div>
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
"""
|
21
|
+
$('#worker_settings').append(formElement)
|
22
|
+
|
23
|
+
$(document).on 'click', '.remove_setting', (event) ->
|
24
|
+
event.preventDefault()
|
25
|
+
key = $(event.target).data('key')
|
26
|
+
name = "worker[settings][#{key}]"
|
27
|
+
$("input[name='#{name}']").remove()
|
28
|
+
$("#setting_#{key}").hide()
|
29
|
+
|
30
|
+
$ ->
|
31
|
+
new WorkerForm() if $('#worker_form').length > 0
|
32
|
+
|
33
|
+
|
@@ -25,6 +25,7 @@ module IntegrationPal
|
|
25
25
|
# POST /workers
|
26
26
|
def create
|
27
27
|
@worker = Worker.new(worker_params)
|
28
|
+
@worker.settings = params[:worker][:settings] || {}
|
28
29
|
|
29
30
|
if @worker.save
|
30
31
|
redirect_to @worker, notice: 'Worker was successfully created.'
|
@@ -35,6 +36,7 @@ module IntegrationPal
|
|
35
36
|
|
36
37
|
# PATCH/PUT /workers/1
|
37
38
|
def update
|
39
|
+
@worker.settings = params[:worker][:settings] || {}
|
38
40
|
if @worker.update(worker_params)
|
39
41
|
redirect_to @worker, notice: 'Worker was successfully updated.'
|
40
42
|
else
|
@@ -56,7 +58,10 @@ module IntegrationPal
|
|
56
58
|
|
57
59
|
# Only allow a trusted parameter "white list" through.
|
58
60
|
def worker_params
|
59
|
-
params
|
61
|
+
params[:worker] ||= {}
|
62
|
+
params[:worker][:settings] ||= {}
|
63
|
+
params[:worker][:settings].permit!
|
64
|
+
params.require(:worker).permit(:name, :access_id, :secret_key, :job_type, :settings, settings: params[:worker][:settings].keys)
|
60
65
|
end
|
61
66
|
end
|
62
67
|
end
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -5,7 +5,7 @@ module IntegrationPal
|
|
5
5
|
attr_encrypted :settings, key: ENV['ENCRYPTION_KEY'], salt: ENV['SALT_KEY'], marshal: true
|
6
6
|
|
7
7
|
validates :name, presence: true
|
8
|
-
validates :access_id, presence: true
|
8
|
+
validates :access_id, presence: true, uniqueness: true
|
9
9
|
validates :secret_key, presence: true
|
10
10
|
validates :job_type, presence: true
|
11
11
|
|
@@ -16,7 +16,7 @@ module IntegrationPal
|
|
16
16
|
ApiAuth.generate_secret_key
|
17
17
|
end
|
18
18
|
|
19
|
-
after_initialize do |
|
19
|
+
after_initialize do |worker|
|
20
20
|
self.settings ||= {}
|
21
21
|
self.secret_key ||= ApiAuth.generate_secret_key
|
22
22
|
end
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<%= form_with(model: worker, local: true) do |form| %>
|
1
|
+
<%= form_with(model: worker, local: true, id: 'worker_form') do |form| %>
|
2
2
|
<% if worker.errors.any? %>
|
3
3
|
<div id="error_explanation">
|
4
4
|
<h2><%= pluralize(worker.errors.count, "error") %> prohibited this worker from being saved:</h2>
|
@@ -31,17 +31,38 @@
|
|
31
31
|
<%= form.select :job_type, JOB_TYPES, {}, class: 'form-control' %>
|
32
32
|
</div>
|
33
33
|
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
34
|
+
<hr />
|
35
|
+
<h4>Settings</h4>
|
36
|
+
<hr />
|
37
|
+
|
38
|
+
<div id='worker_settings' class="form-group">
|
39
|
+
<% worker.settings.each do |key, value| %>
|
40
|
+
<div id="setting_<%= key %>">
|
40
41
|
<%= form.label key, "#{key}" %>
|
41
|
-
<
|
42
|
-
|
43
|
-
|
44
|
-
|
42
|
+
<div class='row'>
|
43
|
+
<div class="col-sm-10">
|
44
|
+
<input class='form-control' name="worker[settings][<%= key %>]" type="text" value="<%= value %>" />
|
45
|
+
</div>
|
46
|
+
<div class='col-sm-2'>
|
47
|
+
<button class='remove_setting btn btn-danger' data-key="<%= key %>">Remove</button>
|
48
|
+
</div>
|
49
|
+
</div>
|
50
|
+
</div>
|
51
|
+
<% end %>
|
52
|
+
</div>
|
53
|
+
|
54
|
+
<br />
|
55
|
+
|
56
|
+
<div class="form-group">
|
57
|
+
<h6>Add Setting</h6>
|
58
|
+
<%= label_tag :key %>
|
59
|
+
<%= text_field_tag :key, nil, id: 'new_setting_key' %>
|
60
|
+
<%= label_tag :value %>
|
61
|
+
<%= text_field_tag :value, nil, id: 'new_setting_value' %>
|
62
|
+
<%= button_tag "Add Setting", id: 'new_setting_button' %>
|
63
|
+
</div>
|
64
|
+
|
65
|
+
<br />
|
45
66
|
|
46
67
|
<div class="actions">
|
47
68
|
<%= form.submit 'Update Worker', class: 'btn btn-primary' %>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: integration_pal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cody Tanner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-06-
|
11
|
+
date: 2017-06-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -108,6 +108,20 @@ dependencies:
|
|
108
108
|
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: 1.2.1
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: jquery-rails
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 4.3.1
|
118
|
+
type: :runtime
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 4.3.1
|
111
125
|
- !ruby/object:Gem::Dependency
|
112
126
|
name: pg
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -191,6 +205,7 @@ files:
|
|
191
205
|
- Rakefile
|
192
206
|
- app/assets/config/integration_pal_manifest.js
|
193
207
|
- app/assets/javascripts/integration_pal/application.js
|
208
|
+
- app/assets/javascripts/integration_pal/workers.coffee
|
194
209
|
- app/assets/stylesheets/integration_pal/application.css
|
195
210
|
- app/controllers/integration_pal/api/v1/jobs_controller.rb
|
196
211
|
- app/controllers/integration_pal/api_controller.rb
|
@@ -200,6 +215,22 @@ files:
|
|
200
215
|
- app/helpers/integration_pal/application_helper.rb
|
201
216
|
- app/jobs/integration_pal/application_job.rb
|
202
217
|
- app/mailers/integration_pal/application_mailer.rb
|
218
|
+
- app/models/canvas/client.rb
|
219
|
+
- app/models/canvas/models/account.rb
|
220
|
+
- app/models/canvas/models/base_model.rb
|
221
|
+
- app/models/canvas/models/course.rb
|
222
|
+
- app/models/canvas/models/enrollment.rb
|
223
|
+
- app/models/canvas/models/file.rb
|
224
|
+
- app/models/canvas/models/folder.rb
|
225
|
+
- app/models/canvas/models/group.rb
|
226
|
+
- app/models/canvas/models/group_membership.rb
|
227
|
+
- app/models/canvas/models/section.rb
|
228
|
+
- app/models/canvas/models/term.rb
|
229
|
+
- app/models/canvas/models/user.rb
|
230
|
+
- app/models/canvas/models/user_observer.rb
|
231
|
+
- app/models/canvas/models/x_list.rb
|
232
|
+
- app/models/canvas/utils/csv.rb
|
233
|
+
- app/models/canvas/utils/sis.rb
|
203
234
|
- app/models/integration_pal/application_record.rb
|
204
235
|
- app/models/integration_pal/job.rb
|
205
236
|
- app/models/integration_pal/worker.rb
|
@@ -222,22 +253,6 @@ files:
|
|
222
253
|
- db/migrate/20170524203831_create_integration_pal_workers.rb
|
223
254
|
- db/migrate/20170525153603_create_integration_pal_jobs.rb
|
224
255
|
- db/migrate/20170531201218_add_error_fields_to_jobs.rb
|
225
|
-
- lib/canvas/client.rb
|
226
|
-
- lib/canvas/models/account.rb
|
227
|
-
- lib/canvas/models/base_model.rb
|
228
|
-
- lib/canvas/models/course.rb
|
229
|
-
- lib/canvas/models/enrollment.rb
|
230
|
-
- lib/canvas/models/file.rb
|
231
|
-
- lib/canvas/models/folder.rb
|
232
|
-
- lib/canvas/models/group.rb
|
233
|
-
- lib/canvas/models/group_membership.rb
|
234
|
-
- lib/canvas/models/section.rb
|
235
|
-
- lib/canvas/models/term.rb
|
236
|
-
- lib/canvas/models/user.rb
|
237
|
-
- lib/canvas/models/user_observer.rb
|
238
|
-
- lib/canvas/models/x_list.rb
|
239
|
-
- lib/canvas/utils/csv.rb
|
240
|
-
- lib/canvas/utils/sis.rb
|
241
256
|
- lib/concerns/integration_pal/base_job.rb
|
242
257
|
- lib/generators/integration_pal/install/USAGE
|
243
258
|
- lib/generators/integration_pal/install/install_generator.rb
|