drg_cms 0.6.0.6 → 0.6.0.8

Sign up to get free protection for your applications and to get access to all the features.
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