drg_cms 0.6.0.6 → 0.6.0.8

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 (57) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/drg_cms/drg_cms.js +92 -36
  3. data/app/assets/stylesheets/drg_cms/drg_cms.css +141 -101
  4. data/app/assets/stylesheets/drg_cms/select-multiple.css +9 -12
  5. data/app/assets/stylesheets/drg_cms_cms.css +1 -1
  6. data/app/controllers/cmsedit_controller.rb +100 -32
  7. data/app/controllers/dc_application_controller.rb +71 -12
  8. data/app/controls/dc_report.rb +227 -0
  9. data/app/forms/all_options.yml +24 -5
  10. data/app/forms/dc_big_table.yml +1 -0
  11. data/app/forms/dc_big_table_value.yml +1 -0
  12. data/app/forms/dc_poll.yml +12 -5
  13. data/app/forms/dc_poll_item.yml +2 -1
  14. data/app/forms/dc_poll_result.yml +9 -0
  15. data/app/forms/dc_site.yml +2 -6
  16. data/app/helpers/cms_common_helper.rb +311 -0
  17. data/app/helpers/{cmsedit_edit_helper.rb → cms_edit_helper.rb} +52 -25
  18. data/app/helpers/{cmsedit_helper.rb → cms_helper.rb} +38 -31
  19. data/app/helpers/{cmsedit_index_helper.rb → cms_index_helper.rb} +152 -155
  20. data/app/helpers/dc_application_helper.rb +20 -234
  21. data/app/models/concerns/dc_site_concern.rb +12 -1
  22. data/app/models/dc_filter.rb +10 -8
  23. data/app/models/dc_permission.rb +30 -0
  24. data/app/models/dc_poll.rb +1 -0
  25. data/app/models/dc_poll_result.rb +4 -2
  26. data/app/models/dc_temp.rb +5 -2
  27. data/app/models/drgcms_form_fields.rb +12 -1
  28. data/app/models/drgcms_form_fields/date_picker.rb +4 -3
  29. data/app/models/drgcms_form_fields/datetime_picker.rb +4 -3
  30. data/app/models/drgcms_form_fields/drgcms_field.rb +18 -4
  31. data/app/models/drgcms_form_fields/embedded.rb +17 -9
  32. data/app/models/drgcms_form_fields/file_field.rb +1 -1
  33. data/app/models/drgcms_form_fields/hidden_field.rb +1 -1
  34. data/app/models/drgcms_form_fields/method.rb +65 -0
  35. data/app/models/drgcms_form_fields/multitext_autocomplete.rb +17 -11
  36. data/app/models/drgcms_form_fields/radio.rb +10 -5
  37. data/app/models/drgcms_form_fields/readonly.rb +1 -1
  38. data/app/models/drgcms_form_fields/select.rb +49 -32
  39. data/app/models/drgcms_form_fields/text_autocomplete.rb +21 -21
  40. data/app/renderers/dc_big_menu_renderer.rb +1 -0
  41. data/app/renderers/dc_gallery_renderer.rb +1 -0
  42. data/app/renderers/dc_menu_renderer.rb +1 -0
  43. data/app/renderers/dc_page_renderer.rb +1 -0
  44. data/app/renderers/dc_part_renderer.rb +1 -0
  45. data/app/renderers/dc_piece_renderer.rb +1 -1
  46. data/app/renderers/dc_poll_renderer.rb +43 -38
  47. data/app/renderers/dc_renderer.rb +1 -0
  48. data/app/renderers/dc_simple_menu_renderer.rb +1 -0
  49. data/config/locales/drgcms_en.yml +3 -2
  50. data/config/locales/drgcms_sl.yml +5 -4
  51. data/config/locales/models_en.yml +9 -2
  52. data/config/locales/models_sl.yml +10 -3
  53. data/lib/drg_cms/version.rb +1 -1
  54. data/lib/generators/new_drg_form/new_drg_form_generator.rb +5 -3
  55. data/lib/tasks/database.rake +6 -56
  56. metadata +35 -33
  57. data/app/helpers/application_helper.rb +0 -2
@@ -129,8 +129,9 @@ sl:
129
129
  choices4_operation: 'Poženi program:poll_submit,Povezava:link'
130
130
  choices4_display: 'Zgoraj:td,Levo:lr,Znotraj:in'
131
131
  tab1: Podatki
132
- tab2: Forma
133
- tab3: Vrstice
132
+ tab2: Skriptna koda
133
+ tab3: Vsebina
134
+ tab4: Vsebina - napredno
134
135
 
135
136
  name: Ime
136
137
  title: Naslov
@@ -139,6 +140,8 @@ sl:
139
140
  parameters: Parametri
140
141
  display: Napis
141
142
  css: CSS
143
+ js: Skriptna koda
144
+ pre_display: Pred prikazom zaženi
142
145
  valid_from: Velja od
143
146
  valid_to: Velja do
144
147
  dc_poll_items: Vrstice
@@ -148,7 +151,7 @@ sl:
148
151
 
149
152
  dc_poll_item:
150
153
  tabletitle: Vnosne vrstice
151
- choices4_type: Podatek:text_field,Tekst:text_area,Izbirno:select,Izbirni gumb:check_box,Zaključek:submit_tag,Povezava:link_to,Geslo:password_field,Komentar:comment
154
+ choices4_type: Podatek:text_field,Tekst:text_area,Izbirno:select,Izbirni gumb:check_box,Zaključek:submit_tag,Povezava:link_to,Geslo:password_field,Komentar:comment,Radio:radio
152
155
  choices4_separator: Presledek:&nbsp;,Prazna vrstica:<br />,Ravnilo:<hr>
153
156
 
154
157
  name: Naziv
@@ -167,6 +170,7 @@ sl:
167
170
  dc_poll_id: Anketa
168
171
  created_at: Nastalo
169
172
  data: Podatki
173
+ confirmed: Potrjen
170
174
 
171
175
  dc_policy:
172
176
  tabletitle: Politike za dostop
@@ -658,6 +662,8 @@ sl:
658
662
  parameters: Dodatni parametri za operacijo
659
663
  display: Postavitev napisa glede na vpisno polje
660
664
  css: CSS samo za to anketo
665
+ js: Javascript koda samo za to anketo
666
+ pre_display: Metoda. ki se zažene pred prikazom obrazca. Običajno za privzeto polnjenje podatkov obrazca
661
667
  valid_from: Anketa je veljavna od
662
668
  valid_to: Anketa je veljavna do
663
669
  dc_poll_items: Posamezni podatki ankete
@@ -679,6 +685,7 @@ sl:
679
685
  dc_poll_id: Naziv ankete
680
686
  created_at: Čas nastanka zapisa
681
687
  data: Podatki v YAML formatu
688
+ confirmed: Podatki potrjeni. Npr. Uporabnik mora klikniti povezavo v e-pošti.
682
689
 
683
690
  dc_policy:
684
691
  name: Naziv politike
@@ -23,5 +23,5 @@
23
23
 
24
24
  # drg_cms gem version
25
25
  module DrgCms #:nodoc:
26
- VERSION = '0.6.0.6'
26
+ VERSION = '0.6.0.8'.freeze
27
27
  end
@@ -14,11 +14,13 @@ def create_form_file
14
14
  form_name = file_name #if formname.size == 0
15
15
  begin
16
16
  @model = file_name.classify.constantize
17
- rescue e
18
- logger.error ([e.message]+e.backtrace).join($/)
17
+ rescue Exception => e
18
+ msg = ([e.message]+e.backtrace).join($/)
19
+ Rails.logger.error(msg)
20
+ pp msg
19
21
  @model = nil
20
22
  end
21
- return (p "Error loading #{file_name.classify} model! Aborting.") if @model.nil?
23
+ return (pp "Error loading #{file_name.classify} model! Aborting.") if @model.nil?
22
24
  #
23
25
  yml = top_level_options + index_options + result_set_options + form_top_options + form_fields_options + localize_options
24
26
  create_file "app/forms/#{form_name}.yml", yml
@@ -6,61 +6,9 @@
6
6
  #########################################################################
7
7
  def determine_model(path)
8
8
  path =~ /(.*)\/(.*).rb/
9
- begin
10
- $2.camelize.constantize
11
- rescue Exception # it happends
12
- nil
13
- end
9
+ $2.camelize.constantize rescue nil # nil happens
14
10
  end
15
11
 
16
- #########################################################################
17
- # Create index for single module
18
- #########################################################################
19
- def create_index(model)
20
- return if model.index_specifications.empty?
21
- #
22
- if !model.embedded? || model.cyclic?
23
- @logger.info("DRGCMS: Creating indexes on #{model}:")
24
- model.create_indexes
25
- model.index_specifications.each do |spec|
26
- @logger.info("DRGCMS: Index: #{spec.key}, Options: #{spec.options}")
27
- end
28
- model
29
- else
30
- @logger.info("DRGCMS: Index ignored on: #{model}, please define in the root model.")
31
- nil
32
- end
33
- end
34
-
35
- #########################################################################
36
- # Will remove all undefined indexes from collection.
37
- #########################################################################
38
- def remove_undefined_indexes(model)
39
- return if model.embedded?
40
- #
41
- begin
42
- undefined = []
43
- model.collection.indexes.each do |index|
44
- # ignore default index
45
- next if index['name'] == '_id_'
46
-
47
- key = index['key'].symbolize_keys
48
- spec = model.index_specification(key)
49
- undefined << index unless spec
50
- end
51
- rescue Mongo::Error::OperationFailure; end
52
- #
53
- undefined.each do |index|
54
- key = index['key'].symbolize_keys
55
- collection = model.collection
56
- collection.indexes.drop(key)
57
- @logger.info(
58
- "MONGOID: Removed index '#{index['name']}' on collection " +
59
- "'#{collection.name}' in database '#{collection.database.name}'."
60
- )
61
- end
62
- end
63
-
64
12
  #########################################################################
65
13
  # Return array of all models found in application.
66
14
  #########################################################################
@@ -70,7 +18,7 @@ def all_models()
70
18
  models_dir = File.expand_path("../models", path)
71
19
  Dir["#{models_dir}/*.rb"].each do |model_file|
72
20
  model = determine_model(model_file)
73
- models << model if !model.nil? and model.respond_to?(:index_specifications)
21
+ models << model if model and model.respond_to?(:index_specifications)
74
22
  end
75
23
  end
76
24
  models
@@ -82,12 +30,14 @@ end
82
30
  namespace :drg_cms do
83
31
  desc "Create indexes for all mongoid models. Including those in gem plugins."
84
32
  task :create_indexes => :environment do
85
- all_models.each {|model| create_index(model)}
33
+ @logger.info( "MONGOID: Checking indexes.")
34
+ Mongoid::Tasks::Database.create_indexes(all_models)
86
35
  end
87
36
 
88
37
  desc "Remove undefined indexes for all mongoid models. Including those in gem plugins."
89
38
  task :remove_undefined_indexes => :environment do
90
- all_models.each {|model| remove_undefined_indexes(model)}
39
+ @logger.info( "MONGOID: Remove undefined indexes.")
40
+ Mongoid::Tasks::Database.remove_undefined_indexes(all_models)
91
41
  end
92
42
 
93
43
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: drg_cms
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0.6
4
+ version: 0.6.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Damjan Rems
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-13 00:00:00.000000000 Z
11
+ date: 2020-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -212,6 +212,7 @@ files:
212
212
  - app/controls/browse_models_control.rb
213
213
  - app/controls/dc_page_control.rb
214
214
  - app/controls/dc_poll_result_control.rb
215
+ - app/controls/dc_report.rb
215
216
  - app/controls/design_element_settings_control.rb
216
217
  - app/forms/all_options.yml
217
218
  - app/forms/cms_forms.yml
@@ -256,10 +257,10 @@ files:
256
257
  - app/forms/dc_user_role.yml
257
258
  - app/forms/drgcms_cms.yml
258
259
  - app/forms/json_ld_schema.yml
259
- - app/helpers/application_helper.rb
260
- - app/helpers/cmsedit_edit_helper.rb
261
- - app/helpers/cmsedit_helper.rb
262
- - app/helpers/cmsedit_index_helper.rb
260
+ - app/helpers/cms_common_helper.rb
261
+ - app/helpers/cms_edit_helper.rb
262
+ - app/helpers/cms_helper.rb
263
+ - app/helpers/cms_index_helper.rb
263
264
  - app/helpers/dc_application_helper.rb
264
265
  - app/models/__dc_dummy.rb
265
266
  - app/models/concerns/dc_page_concern.rb
@@ -325,6 +326,7 @@ files:
325
326
  - app/models/drgcms_form_fields/html_field.rb
326
327
  - app/models/drgcms_form_fields/journal_diff.rb
327
328
  - app/models/drgcms_form_fields/link_to.rb
329
+ - app/models/drgcms_form_fields/method.rb
328
330
  - app/models/drgcms_form_fields/multitext_autocomplete.rb
329
331
  - app/models/drgcms_form_fields/number_field.rb
330
332
  - app/models/drgcms_form_fields/password_field.rb
@@ -425,7 +427,7 @@ homepage: http://www.drgcms.org
425
427
  licenses:
426
428
  - MIT
427
429
  metadata: {}
428
- post_install_message:
430
+ post_install_message:
429
431
  rdoc_options: []
430
432
  require_paths:
431
433
  - lib
@@ -440,40 +442,40 @@ required_rubygems_version: !ruby/object:Gem::Requirement
440
442
  - !ruby/object:Gem::Version
441
443
  version: '0'
442
444
  requirements: []
443
- rubygems_version: 3.0.3
444
- signing_key:
445
+ rubygems_version: 3.1.2
446
+ signing_key:
445
447
  specification_version: 4
446
448
  summary: 'DRG: Rapid web application development tool and CMS for Ruby, Rails and
447
449
  MongoDB'
448
450
  test_files:
449
- - test/lib/generators/new_drg_form_generator_test.rb
450
451
  - test/drg_cms_test.rb
451
452
  - test/integration/navigation_test.rb
453
+ - test/lib/generators/new_drg_form_generator_test.rb
454
+ - test/dummy/script/rails
452
455
  - test/dummy/README.rdoc
453
- - test/dummy/config/locales/en.yml
454
- - test/dummy/config/initializers/secret_token.rb
455
- - test/dummy/config/initializers/backtrace_silencers.rb
456
- - test/dummy/config/initializers/inflections.rb
457
- - test/dummy/config/initializers/session_store.rb
458
- - test/dummy/config/initializers/mime_types.rb
459
- - test/dummy/config/initializers/wrap_parameters.rb
456
+ - test/dummy/app/views/layouts/application.html.erb
457
+ - test/dummy/app/helpers/application_helper.rb
458
+ - test/dummy/app/controllers/application_controller.rb
459
+ - test/dummy/app/assets/stylesheets/application.css
460
+ - test/dummy/app/assets/javascripts/application.js
461
+ - test/dummy/public/422.html
462
+ - test/dummy/public/404.html
463
+ - test/dummy/public/favicon.ico
464
+ - test/dummy/public/500.html
465
+ - test/dummy/Rakefile
466
+ - test/dummy/config.ru
460
467
  - test/dummy/config/environment.rb
468
+ - test/dummy/config/boot.rb
469
+ - test/dummy/config/routes.rb
461
470
  - test/dummy/config/application.rb
462
471
  - test/dummy/config/database.yml
463
- - test/dummy/config/routes.rb
464
- - test/dummy/config/boot.rb
465
- - test/dummy/config/environments/development.rb
466
472
  - test/dummy/config/environments/test.rb
467
473
  - test/dummy/config/environments/production.rb
468
- - test/dummy/public/favicon.ico
469
- - test/dummy/public/404.html
470
- - test/dummy/public/422.html
471
- - test/dummy/public/500.html
472
- - test/dummy/Rakefile
473
- - test/dummy/app/controllers/application_controller.rb
474
- - test/dummy/app/views/layouts/application.html.erb
475
- - test/dummy/app/helpers/application_helper.rb
476
- - test/dummy/app/assets/javascripts/application.js
477
- - test/dummy/app/assets/stylesheets/application.css
478
- - test/dummy/config.ru
479
- - test/dummy/script/rails
474
+ - test/dummy/config/environments/development.rb
475
+ - test/dummy/config/locales/en.yml
476
+ - test/dummy/config/initializers/secret_token.rb
477
+ - test/dummy/config/initializers/inflections.rb
478
+ - test/dummy/config/initializers/mime_types.rb
479
+ - test/dummy/config/initializers/backtrace_silencers.rb
480
+ - test/dummy/config/initializers/wrap_parameters.rb
481
+ - test/dummy/config/initializers/session_store.rb
@@ -1,2 +0,0 @@
1
- module ApplicationHelper
2
- end