beyond_canvas 0.16.2.pre → 0.19.2.pre
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/config/beyond_canvas_manifest.js +1 -0
- data/app/assets/images/icons/arrow_right.svg +1 -0
- data/app/assets/images/icons/close.svg +1 -0
- data/app/assets/images/icons/home.svg +1 -0
- data/app/assets/javascripts/beyond_canvas/base.js +120 -246
- data/app/assets/stylesheets/beyond_canvas/base.scss +10 -1
- data/app/assets/stylesheets/beyond_canvas/components/_action_bar.scss +28 -0
- data/app/assets/stylesheets/beyond_canvas/components/_breadcrumbs.scss +29 -0
- data/app/assets/stylesheets/beyond_canvas/components/_buttons.scss +1 -1
- data/app/assets/stylesheets/beyond_canvas/components/_debug.scss +10 -0
- data/app/assets/stylesheets/beyond_canvas/components/_forms.scss +11 -14
- data/app/assets/stylesheets/beyond_canvas/components/_grids.scss +12 -0
- data/app/assets/stylesheets/beyond_canvas/components/_inputs.scss +5 -0
- data/app/assets/stylesheets/beyond_canvas/components/_main.scss +12 -13
- data/app/assets/stylesheets/beyond_canvas/components/_margins.scss +12 -0
- data/app/assets/stylesheets/beyond_canvas/components/_menu.scss +50 -0
- data/app/assets/stylesheets/beyond_canvas/components/_modals.scss +35 -0
- data/app/assets/stylesheets/beyond_canvas/components/_scrollbox.scss +35 -0
- data/app/assets/stylesheets/beyond_canvas/components/_sidebar.scss +53 -0
- data/app/assets/stylesheets/beyond_canvas/components/_texts.scss +8 -0
- data/app/assets/stylesheets/beyond_canvas/components/_titles.scss +7 -0
- data/app/assets/stylesheets/beyond_canvas/settings/_variables.scss +64 -9
- data/app/controllers/beyond_canvas/application_controller.rb +3 -0
- data/app/controllers/beyond_canvas/authentications_controller.rb +37 -30
- data/app/controllers/concerns/beyond_canvas/authentication.rb +1 -12
- data/app/controllers/concerns/beyond_canvas/locale_management.rb +5 -4
- data/app/form_builders/beyond_canvas/form_builder.rb +8 -6
- data/app/helpers/beyond_canvas/authentications_helper.rb +28 -0
- data/app/helpers/beyond_canvas/cockpit_app_helper.rb +17 -0
- data/app/helpers/beyond_canvas/controller_helper.rb +9 -0
- data/app/helpers/beyond_canvas/debug_helper.rb +9 -0
- data/app/helpers/beyond_canvas/locale_switch_helper.rb +5 -1
- data/app/javascript/beyond_canvas/base.js +3 -0
- data/app/javascript/beyond_canvas/initializers/buttons.js +65 -19
- data/app/javascript/beyond_canvas/initializers/flash.js +9 -2
- data/app/javascript/beyond_canvas/initializers/inputs.js +4 -1
- data/app/javascript/beyond_canvas/initializers/modals.js +14 -0
- data/app/views/beyond_canvas/authentications/new.html.erb +19 -10
- data/app/views/beyond_canvas/shared/_action_bar.html.erb +15 -0
- data/app/views/beyond_canvas/shared/_breadcrumbs.html.erb +14 -0
- data/app/views/beyond_canvas/shared/_flash.html.erb +22 -12
- data/app/views/beyond_canvas/shared/_locales.html.erb +8 -0
- data/app/views/beyond_canvas/shared/_menu.html.erb +31 -0
- data/app/views/beyond_canvas/shared/_modal.html.erb +6 -0
- data/app/views/beyond_canvas/shared/_sidebar.html.erb +16 -0
- data/app/views/layouts/beyond_canvas/application.html.erb +31 -0
- data/app/views/layouts/beyond_canvas/public.html.erb +11 -4
- data/config/locales/en.yml +5 -0
- data/config/routes.rb +5 -4
- data/lib/beyond_canvas.rb +12 -12
- data/lib/beyond_canvas/configuration.rb +11 -6
- data/lib/beyond_canvas/engine.rb +5 -6
- data/lib/beyond_canvas/menu_item_registration.rb +19 -0
- data/lib/beyond_canvas/parameter_sanitizer.rb +1 -1
- data/lib/beyond_canvas/rails/routes.rb +8 -7
- data/lib/beyond_canvas/version.rb +1 -1
- data/lib/generators/beyond_canvas/controller/controller_generator.rb +1 -6
- data/lib/generators/beyond_canvas/controller/templates/shops_controller.rb +20 -0
- data/lib/generators/beyond_canvas/custom_menu/custom_menu_generator.rb +13 -0
- data/lib/generators/beyond_canvas/custom_menu/templates/beyond_canvas_custom_menu.html.erb +32 -0
- data/lib/generators/beyond_canvas/custom_styles/custom_styles_generator.rb +1 -1
- data/lib/generators/beyond_canvas/custom_styles/templates/beyond_canvas_custom_styles.scss +55 -9
- data/lib/generators/beyond_canvas/install/install_generator.rb +3 -5
- data/lib/generators/beyond_canvas/install/templates/beyond_canvas.rb.erb +52 -14
- data/lib/generators/beyond_canvas/{auth_model/auth_model_generator.rb → model/model_generator.rb} +4 -5
- data/lib/generators/beyond_canvas/{auth_model → model}/templates/migration.erb +2 -4
- data/lib/generators/beyond_canvas/{auth_model → model}/templates/model.erb +0 -0
- data/lib/generators/beyond_canvas/views/views_generator.rb +4 -6
- data/lib/models/concerns/authentication.rb +57 -0
- data/lib/models/concerns/utils.rb +79 -0
- data/lib/models/shop.rb +12 -0
- metadata +73 -31
- data/app/controllers/concerns/beyond_canvas/resource_management.rb +0 -33
- data/app/javascript/beyond_canvas/initializers/functions.js +0 -41
- data/app/views/beyond_canvas/locales/_edit.html.erb +0 -8
- data/lib/beyond_canvas/models/authentication.rb +0 -66
- data/lib/beyond_canvas/models/shop.rb +0 -28
- data/lib/beyond_canvas/models/utils.rb +0 -55
- data/lib/generators/beyond_canvas/controller/templates/controller.erb +0 -37
data/lib/models/shop.rb
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BeyondCanvas
|
4
|
+
module Models
|
5
|
+
module Shop # :nodoc:
|
6
|
+
extend ActiveSupport::Concern
|
7
|
+
|
8
|
+
include ::BeyondCanvas::Models::Concerns::Authentication
|
9
|
+
include ::BeyondCanvas::Models::Concerns::Utils
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,16 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: beyond_canvas
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.19.2.pre
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Unai Abrisketa
|
8
|
-
|
8
|
+
- Kathia Salazar
|
9
|
+
- German San Emeterio
|
10
|
+
autorequire:
|
9
11
|
bindir: bin
|
10
12
|
cert_chain: []
|
11
|
-
date: 2020-
|
13
|
+
date: 2020-11-02 00:00:00.000000000 Z
|
12
14
|
dependencies:
|
13
15
|
- !ruby/object:Gem::Dependency
|
14
16
|
name: attr_encrypted
|
@@ -38,20 +40,6 @@ dependencies:
|
|
38
40
|
- - "~>"
|
39
41
|
- !ruby/object:Gem::Version
|
40
42
|
version: '0.11'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: blind_index
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '1.0'
|
48
|
-
type: :runtime
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '1.0'
|
55
43
|
- !ruby/object:Gem::Dependency
|
56
44
|
name: bourbon
|
57
45
|
requirement: !ruby/object:Gem::Requirement
|
@@ -170,6 +158,34 @@ dependencies:
|
|
170
158
|
- - "<"
|
171
159
|
- !ruby/object:Gem::Version
|
172
160
|
version: '4.1'
|
161
|
+
- !ruby/object:Gem::Dependency
|
162
|
+
name: loaf
|
163
|
+
requirement: !ruby/object:Gem::Requirement
|
164
|
+
requirements:
|
165
|
+
- - "~>"
|
166
|
+
- !ruby/object:Gem::Version
|
167
|
+
version: '0.9'
|
168
|
+
type: :runtime
|
169
|
+
prerelease: false
|
170
|
+
version_requirements: !ruby/object:Gem::Requirement
|
171
|
+
requirements:
|
172
|
+
- - "~>"
|
173
|
+
- !ruby/object:Gem::Version
|
174
|
+
version: '0.9'
|
175
|
+
- !ruby/object:Gem::Dependency
|
176
|
+
name: jwt
|
177
|
+
requirement: !ruby/object:Gem::Requirement
|
178
|
+
requirements:
|
179
|
+
- - "~>"
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '2.2'
|
182
|
+
type: :runtime
|
183
|
+
prerelease: false
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
requirements:
|
186
|
+
- - "~>"
|
187
|
+
- !ruby/object:Gem::Version
|
188
|
+
version: '2.2'
|
173
189
|
- !ruby/object:Gem::Dependency
|
174
190
|
name: rubocop-rails
|
175
191
|
requirement: !ruby/object:Gem::Requirement
|
@@ -188,7 +204,9 @@ description: |2
|
|
188
204
|
Beyond Canvas is an open-source framework that provides CSS styles for apps
|
189
205
|
designed and developed for the online shop software Beyond
|
190
206
|
email:
|
191
|
-
-
|
207
|
+
- uabrisketa@epages.com
|
208
|
+
- ksalazar@epages.com
|
209
|
+
- gsanemeterio@epages.com
|
192
210
|
executables: []
|
193
211
|
extensions: []
|
194
212
|
extra_rdoc_files: []
|
@@ -197,36 +215,48 @@ files:
|
|
197
215
|
- README.md
|
198
216
|
- Rakefile
|
199
217
|
- app/assets/config/beyond_canvas_manifest.js
|
218
|
+
- app/assets/images/icons/arrow_right.svg
|
200
219
|
- app/assets/images/icons/checkbox_checked.svg
|
201
220
|
- app/assets/images/icons/checkbox_unchecked.svg
|
221
|
+
- app/assets/images/icons/close.svg
|
202
222
|
- app/assets/images/icons/file.svg
|
203
223
|
- app/assets/images/icons/flash_checkbox.svg
|
204
224
|
- app/assets/images/icons/flash_close.svg
|
205
225
|
- app/assets/images/icons/flash_error.svg
|
206
226
|
- app/assets/images/icons/flash_info.svg
|
207
227
|
- app/assets/images/icons/flash_warning.svg
|
228
|
+
- app/assets/images/icons/home.svg
|
208
229
|
- app/assets/images/icons/radiobutton_checked.svg
|
209
230
|
- app/assets/images/icons/radiobutton_unchecked.svg
|
210
231
|
- app/assets/javascripts/beyond_canvas/base.js
|
211
232
|
- app/assets/stylesheets/beyond_canvas/base.scss
|
233
|
+
- app/assets/stylesheets/beyond_canvas/components/_action_bar.scss
|
212
234
|
- app/assets/stylesheets/beyond_canvas/components/_actions.scss
|
235
|
+
- app/assets/stylesheets/beyond_canvas/components/_breadcrumbs.scss
|
213
236
|
- app/assets/stylesheets/beyond_canvas/components/_buttons.scss
|
214
237
|
- app/assets/stylesheets/beyond_canvas/components/_cards.scss
|
215
238
|
- app/assets/stylesheets/beyond_canvas/components/_comments.scss
|
216
239
|
- app/assets/stylesheets/beyond_canvas/components/_containers.scss
|
240
|
+
- app/assets/stylesheets/beyond_canvas/components/_debug.scss
|
217
241
|
- app/assets/stylesheets/beyond_canvas/components/_flash.scss
|
218
242
|
- app/assets/stylesheets/beyond_canvas/components/_forms.scss
|
243
|
+
- app/assets/stylesheets/beyond_canvas/components/_grids.scss
|
219
244
|
- app/assets/stylesheets/beyond_canvas/components/_inputs.scss
|
220
245
|
- app/assets/stylesheets/beyond_canvas/components/_layouts.scss
|
221
246
|
- app/assets/stylesheets/beyond_canvas/components/_links.scss
|
222
247
|
- app/assets/stylesheets/beyond_canvas/components/_main.scss
|
223
248
|
- app/assets/stylesheets/beyond_canvas/components/_margins.scss
|
224
249
|
- app/assets/stylesheets/beyond_canvas/components/_markdown.scss
|
250
|
+
- app/assets/stylesheets/beyond_canvas/components/_menu.scss
|
251
|
+
- app/assets/stylesheets/beyond_canvas/components/_modals.scss
|
225
252
|
- app/assets/stylesheets/beyond_canvas/components/_notices.scss
|
226
253
|
- app/assets/stylesheets/beyond_canvas/components/_relative.scss
|
254
|
+
- app/assets/stylesheets/beyond_canvas/components/_scrollbox.scss
|
255
|
+
- app/assets/stylesheets/beyond_canvas/components/_sidebar.scss
|
227
256
|
- app/assets/stylesheets/beyond_canvas/components/_spinner.scss
|
228
257
|
- app/assets/stylesheets/beyond_canvas/components/_tables.scss
|
229
258
|
- app/assets/stylesheets/beyond_canvas/components/_texts.scss
|
259
|
+
- app/assets/stylesheets/beyond_canvas/components/_titles.scss
|
230
260
|
- app/assets/stylesheets/beyond_canvas/mailer.scss
|
231
261
|
- app/assets/stylesheets/beyond_canvas/settings/_breakpoints.scss
|
232
262
|
- app/assets/stylesheets/beyond_canvas/settings/_reset_css.scss
|
@@ -240,26 +270,35 @@ files:
|
|
240
270
|
- app/controllers/concerns/beyond_canvas/authentication.rb
|
241
271
|
- app/controllers/concerns/beyond_canvas/locale_management.rb
|
242
272
|
- app/controllers/concerns/beyond_canvas/request_validation.rb
|
243
|
-
- app/controllers/concerns/beyond_canvas/resource_management.rb
|
244
273
|
- app/controllers/concerns/beyond_canvas/status_codes.rb
|
245
274
|
- app/form_builders/beyond_canvas/form_builder.rb
|
246
275
|
- app/helpers/beyond_canvas/application_helper.rb
|
276
|
+
- app/helpers/beyond_canvas/authentications_helper.rb
|
277
|
+
- app/helpers/beyond_canvas/cockpit_app_helper.rb
|
278
|
+
- app/helpers/beyond_canvas/controller_helper.rb
|
279
|
+
- app/helpers/beyond_canvas/debug_helper.rb
|
247
280
|
- app/helpers/beyond_canvas/locale_switch_helper.rb
|
248
281
|
- app/javascript/beyond_canvas/base.js
|
249
282
|
- app/javascript/beyond_canvas/initializers/buttons.js
|
250
283
|
- app/javascript/beyond_canvas/initializers/flash.js
|
251
|
-
- app/javascript/beyond_canvas/initializers/functions.js
|
252
284
|
- app/javascript/beyond_canvas/initializers/inputs.js
|
285
|
+
- app/javascript/beyond_canvas/initializers/modals.js
|
253
286
|
- app/views/beyond_canvas/authentications/new.html.erb
|
254
287
|
- app/views/beyond_canvas/custom/_public_head.html.erb
|
255
|
-
- app/views/beyond_canvas/locales/_edit.html.erb
|
256
288
|
- app/views/beyond_canvas/mailer/_button.html.erb
|
257
289
|
- app/views/beyond_canvas/mailer/_footer.html.erb
|
258
290
|
- app/views/beyond_canvas/mailer/_header.html.erb
|
259
291
|
- app/views/beyond_canvas/mailer/_text.html.erb
|
292
|
+
- app/views/beyond_canvas/shared/_action_bar.html.erb
|
293
|
+
- app/views/beyond_canvas/shared/_breadcrumbs.html.erb
|
260
294
|
- app/views/beyond_canvas/shared/_flash.html.erb
|
261
295
|
- app/views/beyond_canvas/shared/_head.html.erb
|
296
|
+
- app/views/beyond_canvas/shared/_locales.html.erb
|
262
297
|
- app/views/beyond_canvas/shared/_logo.html.erb
|
298
|
+
- app/views/beyond_canvas/shared/_menu.html.erb
|
299
|
+
- app/views/beyond_canvas/shared/_modal.html.erb
|
300
|
+
- app/views/beyond_canvas/shared/_sidebar.html.erb
|
301
|
+
- app/views/layouts/beyond_canvas/application.html.erb
|
263
302
|
- app/views/layouts/beyond_canvas/mailer.html.erb
|
264
303
|
- app/views/layouts/beyond_canvas/public.html.erb
|
265
304
|
- config/initializers/beyond_canvas/filter_parameter_logging.rb
|
@@ -270,35 +309,38 @@ files:
|
|
270
309
|
- lib/beyond_canvas/asset_registration.rb
|
271
310
|
- lib/beyond_canvas/configuration.rb
|
272
311
|
- lib/beyond_canvas/engine.rb
|
273
|
-
- lib/beyond_canvas/
|
274
|
-
- lib/beyond_canvas/models/shop.rb
|
275
|
-
- lib/beyond_canvas/models/utils.rb
|
312
|
+
- lib/beyond_canvas/menu_item_registration.rb
|
276
313
|
- lib/beyond_canvas/parameter_sanitizer.rb
|
277
314
|
- lib/beyond_canvas/rails/routes.rb
|
278
315
|
- lib/beyond_canvas/version.rb
|
279
316
|
- lib/generators/beyond_canvas/assets/assets_generator.rb
|
280
317
|
- lib/generators/beyond_canvas/assets/templates/beyond_canvas.js
|
281
318
|
- lib/generators/beyond_canvas/assets/templates/beyond_canvas.scss
|
282
|
-
- lib/generators/beyond_canvas/auth_model/auth_model_generator.rb
|
283
|
-
- lib/generators/beyond_canvas/auth_model/templates/migration.erb
|
284
|
-
- lib/generators/beyond_canvas/auth_model/templates/model.erb
|
285
319
|
- lib/generators/beyond_canvas/beyond_api/beyond_api_generator.rb
|
286
320
|
- lib/generators/beyond_canvas/controller/controller_generator.rb
|
287
|
-
- lib/generators/beyond_canvas/controller/templates/
|
321
|
+
- lib/generators/beyond_canvas/controller/templates/shops_controller.rb
|
322
|
+
- lib/generators/beyond_canvas/custom_menu/custom_menu_generator.rb
|
323
|
+
- lib/generators/beyond_canvas/custom_menu/templates/beyond_canvas_custom_menu.html.erb
|
288
324
|
- lib/generators/beyond_canvas/custom_styles/custom_styles_generator.rb
|
289
325
|
- lib/generators/beyond_canvas/custom_styles/templates/beyond_canvas_custom_styles.scss
|
290
326
|
- lib/generators/beyond_canvas/install/install_generator.rb
|
291
327
|
- lib/generators/beyond_canvas/install/templates/beyond_canvas.rb.erb
|
328
|
+
- lib/generators/beyond_canvas/model/model_generator.rb
|
329
|
+
- lib/generators/beyond_canvas/model/templates/migration.erb
|
330
|
+
- lib/generators/beyond_canvas/model/templates/model.erb
|
292
331
|
- lib/generators/beyond_canvas/views/views_generator.rb
|
293
332
|
- lib/generators/beyond_canvas/webpacker/plugins/jquery.js
|
294
333
|
- lib/generators/beyond_canvas/webpacker/templates/beyond_canvas.js
|
295
334
|
- lib/generators/beyond_canvas/webpacker/templates/beyond_canvas.scss
|
296
335
|
- lib/generators/beyond_canvas/webpacker/webpacker_generator.rb
|
336
|
+
- lib/models/concerns/authentication.rb
|
337
|
+
- lib/models/concerns/utils.rb
|
338
|
+
- lib/models/shop.rb
|
297
339
|
homepage: https://github.com/ePages-de/beyond_canvas
|
298
340
|
licenses:
|
299
341
|
- MIT
|
300
342
|
metadata: {}
|
301
|
-
post_install_message:
|
343
|
+
post_install_message:
|
302
344
|
rdoc_options: []
|
303
345
|
require_paths:
|
304
346
|
- lib
|
@@ -313,8 +355,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
313
355
|
- !ruby/object:Gem::Version
|
314
356
|
version: 1.3.1
|
315
357
|
requirements: []
|
316
|
-
rubygems_version: 3.
|
317
|
-
signing_key:
|
358
|
+
rubygems_version: 3.1.4
|
359
|
+
signing_key:
|
318
360
|
specification_version: 4
|
319
361
|
summary: Open-source framework that provides CSS styles
|
320
362
|
test_files: []
|
@@ -1,33 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module BeyondCanvas
|
4
|
-
module ResourceManagement # :nodoc:
|
5
|
-
extend ActiveSupport::Concern
|
6
|
-
|
7
|
-
included do
|
8
|
-
# Share some methods defined in the controller to make them available for the view
|
9
|
-
if respond_to?(:helper_method)
|
10
|
-
helpers = %w[resource resource_name resource_class]
|
11
|
-
helper_method(*helpers)
|
12
|
-
end
|
13
|
-
end
|
14
|
-
|
15
|
-
protected
|
16
|
-
|
17
|
-
def resource_name
|
18
|
-
BeyondCanvas.auth_model
|
19
|
-
end
|
20
|
-
|
21
|
-
def resource
|
22
|
-
instance_variable_get(:"@#{resource_name}")
|
23
|
-
end
|
24
|
-
|
25
|
-
def resource=(new_resource)
|
26
|
-
instance_variable_set(:"@#{resource_name}", new_resource)
|
27
|
-
end
|
28
|
-
|
29
|
-
def resource_class
|
30
|
-
resource_name.classify.constantize
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
@@ -1,41 +0,0 @@
|
|
1
|
-
const SPINNER_ANIMATION_TIMEOUT = 125;
|
2
|
-
|
3
|
-
export function showSpinner(button) {
|
4
|
-
// Adjust the width of the button
|
5
|
-
button.width(button.width() + $('.spinner').outerWidth(true));
|
6
|
-
// Show the spinner
|
7
|
-
setTimeout(function () {
|
8
|
-
button.find('.spinner').css('display', 'flex');
|
9
|
-
}, SPINNER_ANIMATION_TIMEOUT);
|
10
|
-
}
|
11
|
-
|
12
|
-
export function hideSpinner() {
|
13
|
-
$('button[class^="button"]').each(function (_, button) {
|
14
|
-
setTimeout(function () {
|
15
|
-
// Hide the spinner
|
16
|
-
$(button).find('.spinner').hide();
|
17
|
-
// Adjust the width of the button
|
18
|
-
$(button).width($(button).data('oldWidth'));
|
19
|
-
}, SPINNER_ANIMATION_TIMEOUT);
|
20
|
-
});
|
21
|
-
}
|
22
|
-
|
23
|
-
export function disableActionElements() {
|
24
|
-
$('a, input[type="submit"], input[type="button"], input[type="reset"], button').each(function (_, button) {
|
25
|
-
$(button).addClass('actions--disabled');
|
26
|
-
});
|
27
|
-
}
|
28
|
-
export function enableActionElements() {
|
29
|
-
$('a, input[type="submit"], input[type="button"], input[type="reset"], button').each(function (_, button) {
|
30
|
-
$(button).removeClass('actions--disabled');
|
31
|
-
});
|
32
|
-
}
|
33
|
-
|
34
|
-
export function closeAlert() {
|
35
|
-
$('.flash')
|
36
|
-
.removeClass('flash--shown')
|
37
|
-
.delay(700)
|
38
|
-
.queue(function () {
|
39
|
-
$(this).remove();
|
40
|
-
});
|
41
|
-
}
|
@@ -1,8 +0,0 @@
|
|
1
|
-
<% if defined?(I18n) && I18n.available_locales.count > 1 %>
|
2
|
-
<%= form_for :system, url: beyond_canvas.update_locale_path, method: :put do |f| %>
|
3
|
-
<%= f.select :locale, I18n.available_locales.collect { |l| [translate_locale(l), l] },
|
4
|
-
{ selected: cookies[:locale] },
|
5
|
-
class: 'select--locale',
|
6
|
-
onchange: 'this.form.submit()' %>
|
7
|
-
<% end %>
|
8
|
-
<% end %>
|
@@ -1,66 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module BeyondCanvas
|
4
|
-
module Models
|
5
|
-
module Authentication # :nodoc:
|
6
|
-
extend ActiveSupport::Concern
|
7
|
-
|
8
|
-
included do
|
9
|
-
attr_accessor :code, :signature, :access_token_url
|
10
|
-
|
11
|
-
##############################################################################
|
12
|
-
# Encrypted attribute configuration
|
13
|
-
##############################################################################
|
14
|
-
|
15
|
-
attr_encrypted :beyond_api_url, key: [BeyondCanvas.configuration.encryption_key].pack('H*')
|
16
|
-
attr_encrypted :beyond_access_token, key: [BeyondCanvas.configuration.encryption_key].pack('H*')
|
17
|
-
attr_encrypted :beyond_refresh_token, key: [BeyondCanvas.configuration.encryption_key].pack('H*')
|
18
|
-
|
19
|
-
blind_index :beyond_api_url, key: [BeyondCanvas.configuration.blind_index_key].pack('H*')
|
20
|
-
|
21
|
-
##############################################################################
|
22
|
-
# Validations
|
23
|
-
##############################################################################
|
24
|
-
|
25
|
-
# Callback url params
|
26
|
-
|
27
|
-
validates :code,
|
28
|
-
presence: true,
|
29
|
-
on: :create
|
30
|
-
validates :signature,
|
31
|
-
presence: true,
|
32
|
-
on: :create
|
33
|
-
validates :access_token_url,
|
34
|
-
presence: true,
|
35
|
-
on: :create
|
36
|
-
|
37
|
-
# Database fields
|
38
|
-
|
39
|
-
validates :beyond_api_url,
|
40
|
-
presence: true
|
41
|
-
validates :beyond_access_token,
|
42
|
-
presence: true,
|
43
|
-
unless: -> { encrypted_beyond_access_token_was.blank? }
|
44
|
-
validates :beyond_refresh_token,
|
45
|
-
presence: true,
|
46
|
-
unless: -> { encrypted_beyond_refresh_token_was.blank? }
|
47
|
-
|
48
|
-
##############################################################################
|
49
|
-
# Instance methods
|
50
|
-
##############################################################################
|
51
|
-
|
52
|
-
#
|
53
|
-
# Get and save access_token and refresh_token using the authentication code
|
54
|
-
# NOTE: This method is used during the shop creation, as it is the only point
|
55
|
-
# we know about the authentication code
|
56
|
-
#
|
57
|
-
def authenticate
|
58
|
-
session = BeyondApi::Session.new(api_url: beyond_api_url)
|
59
|
-
session.token.create(code)
|
60
|
-
update(beyond_access_token: session.access_token,
|
61
|
-
beyond_refresh_token: session.refresh_token)
|
62
|
-
end
|
63
|
-
end
|
64
|
-
end
|
65
|
-
end
|
66
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module BeyondCanvas
|
4
|
-
module Models
|
5
|
-
module Shop # :nodoc:
|
6
|
-
extend ActiveSupport::Concern
|
7
|
-
include BeyondCanvas::Models::Authentication
|
8
|
-
include BeyondCanvas::Models::Utils
|
9
|
-
|
10
|
-
included do
|
11
|
-
attr_accessor :api_url, :return_url
|
12
|
-
|
13
|
-
##############################################################################
|
14
|
-
# Validations
|
15
|
-
##############################################################################
|
16
|
-
|
17
|
-
# Callback url params
|
18
|
-
|
19
|
-
validates :api_url,
|
20
|
-
presence: true,
|
21
|
-
on: :create
|
22
|
-
validates :return_url,
|
23
|
-
presence: true,
|
24
|
-
on: :create
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,55 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module BeyondCanvas
|
4
|
-
module Models
|
5
|
-
module Utils # :nodoc:
|
6
|
-
extend ActiveSupport::Concern
|
7
|
-
|
8
|
-
included do
|
9
|
-
##############################################################################
|
10
|
-
# Instance methods
|
11
|
-
##############################################################################
|
12
|
-
|
13
|
-
#
|
14
|
-
# Generates a new access_token and refresh_token
|
15
|
-
#
|
16
|
-
def refresh_token
|
17
|
-
beyond_session = BeyondApi::Session.new(api_url: beyond_api_url, refresh_token: beyond_refresh_token)
|
18
|
-
beyond_session.token.refresh
|
19
|
-
|
20
|
-
update(beyond_access_token: beyond_session.access_token,
|
21
|
-
beyond_refresh_token: beyond_session.refresh_token)
|
22
|
-
end
|
23
|
-
|
24
|
-
#
|
25
|
-
# Generates a new access_token and refresh_token if they have expired
|
26
|
-
#
|
27
|
-
def refresh_token_if_needed
|
28
|
-
token_timestamp = JWT.decode(beyond_access_token, nil, false).first['exp']
|
29
|
-
current_timestamp = DateTime.now.to_i
|
30
|
-
return unless token_timestamp - current_timestamp <= 3600
|
31
|
-
|
32
|
-
refresh_token
|
33
|
-
end
|
34
|
-
|
35
|
-
#
|
36
|
-
# Returns a BeyondApi::Session object with api_url, access_token and refresh_token attributes
|
37
|
-
#
|
38
|
-
def to_session
|
39
|
-
BeyondApi::Session.new(api_url: beyond_api_url,
|
40
|
-
access_token: beyond_access_token,
|
41
|
-
refresh_token: beyond_refresh_token)
|
42
|
-
end
|
43
|
-
|
44
|
-
##############################################################################
|
45
|
-
# Class methods
|
46
|
-
##############################################################################
|
47
|
-
|
48
|
-
def self.find_session(id)
|
49
|
-
shop = find(id)
|
50
|
-
shop.to_session
|
51
|
-
end
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
55
|
-
end
|