drg_cms 0.6.0.1 → 0.6.1.1.1

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 (130) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/drg_cms/drg_cms.js +454 -145
  3. data/app/assets/javascripts/drg_cms_application.js +1 -1
  4. data/app/assets/stylesheets/drg_cms/drg_cms.css +635 -244
  5. data/app/assets/stylesheets/drg_cms/select-multiple.css +18 -12
  6. data/app/assets/stylesheets/drg_cms_cms.css +1 -1
  7. data/app/controllers/cmsedit_controller.rb +515 -335
  8. data/app/controllers/dc_application_controller.rb +378 -111
  9. data/app/controllers/dc_common_controller.rb +105 -14
  10. data/app/{controllers → controls}/browse_models_control.rb +0 -0
  11. data/app/controls/dc_help_control.rb +126 -0
  12. data/app/{controllers → controls}/dc_page_control.rb +24 -8
  13. data/app/controls/dc_poll_result_control.rb +88 -0
  14. data/app/controls/dc_report.rb +223 -0
  15. data/app/{controllers → controls}/design_element_settings_control.rb +0 -0
  16. data/app/forms/all_options.yml +44 -9
  17. data/app/forms/cms_menu.yml +28 -18
  18. data/app/forms/dc_ad.yml +11 -22
  19. data/app/forms/dc_big_table.yml +1 -0
  20. data/app/forms/dc_big_table_value.yml +1 -0
  21. data/app/forms/dc_category.yml +2 -1
  22. data/app/forms/dc_design.yml +20 -16
  23. data/app/forms/dc_filter.yml +3 -6
  24. data/app/forms/dc_help_1.yml +109 -0
  25. data/app/forms/dc_journal.yml +3 -1
  26. data/app/forms/dc_json_ld.yml +59 -0
  27. data/app/forms/dc_key_value.yml +32 -0
  28. data/app/forms/dc_link.yml +1 -1
  29. data/app/forms/dc_menu.yml +2 -0
  30. data/app/forms/dc_menu_item.yml +2 -0
  31. data/app/forms/dc_page.yml +3 -5
  32. data/app/forms/dc_part.yml +1 -0
  33. data/app/forms/dc_piece.yml +1 -0
  34. data/app/forms/dc_poll.yml +15 -5
  35. data/app/forms/dc_poll_item.yml +2 -1
  36. data/app/forms/dc_poll_result.yml +83 -0
  37. data/app/forms/dc_poll_result_export.yml +35 -0
  38. data/app/forms/dc_seo.yml +33 -0
  39. data/app/forms/dc_simple_menu.yml +2 -0
  40. data/app/forms/dc_site.yml +4 -12
  41. data/app/forms/dc_user.yml +27 -11
  42. data/app/forms/dc_user_role.yml +3 -0
  43. data/app/forms/json_ld_schema.yml +168 -0
  44. data/app/helpers/cms_common_helper.rb +375 -0
  45. data/app/helpers/cms_edit_helper.rb +506 -0
  46. data/app/helpers/cms_helper.rb +268 -0
  47. data/app/helpers/cms_index_helper.rb +580 -0
  48. data/app/helpers/dc_application_helper.rb +218 -306
  49. data/app/models/concerns/dc_page_concern.rb +40 -6
  50. data/app/models/concerns/dc_policy_rule_concern.rb +20 -8
  51. data/app/models/concerns/dc_seo_concern.rb +66 -0
  52. data/app/models/concerns/dc_site_concern.rb +67 -44
  53. data/app/models/concerns/dc_user_concern.rb +57 -18
  54. data/app/models/dc_design.rb +30 -18
  55. data/app/models/dc_filter.rb +22 -13
  56. data/app/models/dc_json_ld.rb +152 -0
  57. data/app/models/dc_key_value.rb +48 -0
  58. data/app/models/dc_key_value_store.rb +1 -0
  59. data/app/models/dc_memory.rb +8 -1
  60. data/app/models/dc_page.rb +0 -1
  61. data/app/models/dc_permission.rb +49 -9
  62. data/app/models/dc_policy.rb +25 -14
  63. data/app/models/dc_policy_role.rb +22 -11
  64. data/app/models/dc_poll.rb +39 -19
  65. data/app/models/dc_poll_result.rb +46 -0
  66. data/app/models/dc_temp.rb +140 -0
  67. data/app/models/dc_user_role.rb +2 -2
  68. data/app/models/drgcms_form_fields.rb +12 -1
  69. data/app/models/drgcms_form_fields/action.rb +61 -0
  70. data/app/models/drgcms_form_fields/comment.rb +8 -4
  71. data/app/models/drgcms_form_fields/date_picker.rb +11 -9
  72. data/app/models/drgcms_form_fields/date_select.rb +1 -1
  73. data/app/models/drgcms_form_fields/datetime_picker.rb +12 -10
  74. data/app/models/drgcms_form_fields/datetime_select.rb +1 -1
  75. data/app/models/drgcms_form_fields/drgcms_field.rb +55 -9
  76. data/app/models/drgcms_form_fields/embedded.rb +26 -16
  77. data/app/models/drgcms_form_fields/file_field.rb +52 -0
  78. data/app/models/drgcms_form_fields/file_select.rb +2 -2
  79. data/app/models/drgcms_form_fields/hash_field.rb +90 -0
  80. data/app/models/drgcms_form_fields/hidden_field.rb +1 -1
  81. data/app/models/drgcms_form_fields/html_field.rb +1 -1
  82. data/app/models/drgcms_form_fields/link_to.rb +2 -2
  83. data/app/models/drgcms_form_fields/method.rb +66 -0
  84. data/app/models/drgcms_form_fields/multitext_autocomplete.rb +23 -14
  85. data/app/models/drgcms_form_fields/number_field.rb +15 -6
  86. data/app/models/drgcms_form_fields/radio.rb +96 -0
  87. data/app/models/drgcms_form_fields/readonly.rb +2 -2
  88. data/app/models/drgcms_form_fields/select.rb +92 -29
  89. data/app/models/drgcms_form_fields/text_area.rb +1 -1
  90. data/app/models/drgcms_form_fields/text_autocomplete.rb +31 -17
  91. data/app/models/drgcms_form_fields/text_field.rb +1 -1
  92. data/app/models/drgcms_form_fields/text_with_select.rb +6 -3
  93. data/app/models/drgcms_form_fields/tree_select.rb +15 -4
  94. data/app/{helpers → renderers}/dc_ad_renderer.rb +0 -0
  95. data/app/{helpers → renderers}/dc_big_menu_renderer.rb +1 -0
  96. data/app/{helpers → renderers}/dc_captcha_renderer.rb +0 -0
  97. data/app/{helpers → renderers}/dc_common_renderer.rb +0 -0
  98. data/app/{helpers → renderers}/dc_gallery_renderer.rb +1 -0
  99. data/app/{helpers → renderers}/dc_menu_renderer.rb +11 -4
  100. data/app/{helpers → renderers}/dc_page_renderer.rb +1 -0
  101. data/app/{helpers → renderers}/dc_part_renderer.rb +5 -4
  102. data/app/{helpers → renderers}/dc_piece_renderer.rb +1 -1
  103. data/app/{helpers → renderers}/dc_poll_renderer.rb +91 -64
  104. data/app/{helpers → renderers}/dc_renderer.rb +1 -0
  105. data/app/{helpers → renderers}/dc_simple_menu_renderer.rb +1 -0
  106. data/app/views/cmsedit/{remove_edit_stuff.js.erb → __remove_edit_stuff.js.erb} +0 -0
  107. data/app/views/cmsedit/{show.html.erb → __show.html.erb} +0 -0
  108. data/app/views/cmsedit/_edit_stuff.html.erb +4 -25
  109. data/app/views/cmsedit/_form.html.erb +4 -3
  110. data/app/views/cmsedit/_result.html.erb +2 -3
  111. data/app/views/cmsedit/edit.html.erb +4 -1
  112. data/app/views/cmsedit/index.html.erb +7 -1
  113. data/app/views/cmsedit/new.html.erb +3 -1
  114. data/app/views/dc_common/_help.html.erb +17 -0
  115. data/app/views/layouts/models.html.erb +2 -1
  116. data/config/locales/drgcms_en.yml +27 -3
  117. data/config/locales/drgcms_sl.yml +32 -5
  118. data/config/locales/models_en.yml +65 -17
  119. data/config/locales/models_sl.yml +69 -18
  120. data/drg_cms.gemspec +1 -1
  121. data/lib/drg_cms.rb +61 -1
  122. data/lib/drg_cms/version.rb +1 -1
  123. data/lib/generators/new_drg_form/new_drg_form_generator.rb +9 -2
  124. data/lib/tasks/database.rake +6 -56
  125. metadata +73 -54
  126. data/app/assets/stylesheets/drg_cms/__jquery-ui.css +0 -339
  127. data/app/helpers/application_helper.rb +0 -2
  128. data/app/helpers/cmsedit_helper.rb +0 -888
  129. data/app/models/dc_dummy.rb +0 -102
  130. data/test/fixtures/drg_cms_test_data.rb +0 -87
@@ -0,0 +1,223 @@
1
+ #--
2
+ # Copyright (c) 2020+ Damjan Rems
3
+ #
4
+ # Permission is hereby granted, free of charge, to any person obtaining
5
+ # a copy of this software and associated documentation files (the
6
+ # "Software"), to deal in the Software without restriction, including
7
+ # without limitation the rights to use, copy, modify, merge, publish,
8
+ # distribute, sublicense, and/or sell copies of the Software, and to
9
+ # permit persons to whom the Software is furnished to do so, subject to
10
+ # the following conditions:
11
+ #
12
+ # The above copyright notice and this permission notice shall be
13
+ # included in all copies or substantial portions of the Software.
14
+ #
15
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16
+ # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17
+ # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18
+ # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19
+ # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20
+ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21
+ # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
+ #++
23
+
24
+ ######################################################################
25
+ # Common methods required by reports
26
+ ######################################################################
27
+ module DcReport
28
+ attr_accessor :report_id
29
+ attr_accessor :bulk
30
+
31
+ ######################################################################
32
+ # Clear result if params[:clear] is 'yes' when form is first displayed
33
+ ######################################################################
34
+ def dc_new_record
35
+ DcTemp.clear(temp_key) unless params[:clear].to_s == 'no'
36
+ end
37
+
38
+ ######################################################################
39
+ # If exists, set report section as form, so it can be used to display result.
40
+ ######################################################################
41
+ def dc_update_form
42
+ return unless @form && @form['report'] && params[:table] == 'dc_temp'
43
+
44
+ @form = @form['report']
45
+ end
46
+
47
+ ######################################################################
48
+ # Print to PDF action
49
+ ######################################################################
50
+ def print
51
+ begin
52
+ pdf_do
53
+ rescue Exception => e
54
+ dc_dump_exception(e)
55
+ render json: { msg_error: t('drgcms.runtime_error') } and return
56
+ end
57
+
58
+ pdf_file = "tmp/dokument-#{Time.now.to_i}.pdf"
59
+ @pdf.render_file Rails.root.join('public', pdf_file)
60
+
61
+ render json: print_response(pdf_file)
62
+ end
63
+
64
+ ######################################################################
65
+ # Export data do excel action
66
+ ######################################################################
67
+ def export
68
+ export_to_excel( temp_key )
69
+ end
70
+
71
+ ######################################################################
72
+ # Default filter to select data for result.
73
+ ######################################################################
74
+ def data_filter
75
+ params['clear'].to_s == 'yes' ? DcTemp.where(key: false) : DcTemp.where(key: temp_key).order_by(order: 1)
76
+ end
77
+
78
+ private
79
+
80
+ ######################################################################
81
+ # Will create response message for print action. Response consists of
82
+ # opening pdf file in new browser tab and additional print_message if defined.
83
+ ######################################################################
84
+ def print_response(pdf_file)
85
+ response = { window: "/#{pdf_file}" }
86
+ response.merge!(report_message) if respond_to?(:report_message, true)
87
+ response
88
+ end
89
+
90
+ ######################################################################
91
+ # Temp key consists of report name and user's id. Key should be added
92
+ # to every dc_temp document and is used to define data, which belongs
93
+ # to current user.
94
+ ######################################################################
95
+ def temp_key
96
+ "#{@report_id}-#{session[:user_id]}"
97
+ end
98
+
99
+ ######################################################################
100
+ # Initialize report. Set report_id internal variable and initialize bulk
101
+ # for bulk saving data to dc_temp collection.
102
+ ######################################################################
103
+ def init_report(id)
104
+ @report_id = id
105
+ @bulk = []
106
+ end
107
+
108
+ ######################################################################
109
+ # Check if all send fields are blank.
110
+ ######################################################################
111
+ def all_blank?(*fields)
112
+ fields.each {|e| e.blank? ? true : (break false) }
113
+ end
114
+
115
+ ######################################################################
116
+ # Will write bulk data to dc_temp collection.
117
+ ######################################################################
118
+ def bulk_write(doc, the_end = false)
119
+ if doc.nil? || doc.class == TrueClass
120
+ the_end = true
121
+ else
122
+ @bulk << doc
123
+ end
124
+
125
+ if (the_end && @bulk.size > 0) || @bulk.size > 100
126
+ DcTemp.collection.insert_many(@bulk)
127
+ @bulk = []
128
+ end
129
+ end
130
+
131
+ ######################################################################
132
+ # Export data to Excel
133
+ ######################################################################
134
+ def export_to_excel(report_id)
135
+ read_drg_form if @form.blank?
136
+ # use report options if present
137
+ columns = (@form['report'] ? @form['report'] : @form)['result_set']['columns'].sort
138
+
139
+ n, workbook = 0, Spreadsheet::Workbook.new
140
+ excel = workbook.create_worksheet(name: report_id)
141
+ # header
142
+ columns.each_with_index do |column, i|
143
+ caption = column.last['caption'] || column.last['label']
144
+ label = t(caption)
145
+ excel[n, i] = label.match('translation missing') ? caption : label
146
+ end
147
+
148
+ data_filter.each do |doc|
149
+ n += 1
150
+ columns.each_with_index do |column, i|
151
+ value = doc[column.last['name']].to_s.gsub('<br>', ";")
152
+ value = value.gsub(/\<\/strong\>|\<strong\>|\<\/b\>|\<b\>/, '')
153
+ excel[n, i] = value
154
+ end
155
+ end
156
+ file_name = "#{report_id}-#{Time.now.to_i}.xls"
157
+ workbook.write Rails.root.join('public', 'tmp', file_name)
158
+ dc_render_ajax(operation: :window, value: "/tmp/#{file_name}")
159
+ end
160
+
161
+ ############################################################################
162
+ # Returns html code for displaying date/time formatted by strftime. Will return '' if value is nil.
163
+ #
164
+ # Parameters:
165
+ # [value] Date/DateTime/Time.
166
+ # [format] String. strftime format mask. Defaults to locale's default format.
167
+ ############################################################################
168
+ def dc_format_date_time(value, format = nil)
169
+ return '' if value.nil?
170
+
171
+ format ||= value.class == Date ? t('date.formats.default') : t('time.formats.default')
172
+ value.strftime(format)
173
+ end
174
+
175
+ ##############################################################################
176
+ # Initialize PDF document for print
177
+ ##############################################################################
178
+ def pdf_init(opts={})
179
+ opts[:margin] ||= [30,30,30,30]
180
+ opts[:page_size] ||= 'A4'
181
+
182
+ pdf = Prawn::Document.new(opts)
183
+ pdf.font_size = opts[:font_size] if opts[:font_size]
184
+
185
+ pdf.encrypt_document( owner_password: :random,
186
+ permissions: { print_document: true,
187
+ modify_contents: false,
188
+ copy_contents: false,
189
+ modify_annotations: false })
190
+ pdf.font_families.update(
191
+ 'Arial' => { normal: Rails.root.join('public', 'arial.ttf'),
192
+ bold: Rails.root.join('public', 'arialbd.ttf') }
193
+ )
194
+ pdf.font 'Arial'
195
+ pdf
196
+ end
197
+
198
+ ################################################################################
199
+ # Prints out single text (or object) on report.
200
+ #
201
+ # @param [Object] txt : Text or object. Result of to_s method of the object is
202
+ # @param [Hash] opts
203
+ ###############################################################################
204
+ def pdf_text(txt, opts = {})
205
+ box_opts = opts.dup
206
+ ypos = @pdf.cursor
207
+ xpos = opts.delete(:atx) || 0
208
+ box_opts[:single_line] ||= true
209
+ box_opts[:at] ||= [xpos, ypos]
210
+
211
+ @pdf.text_box(txt.to_s, box_opts)
212
+ end
213
+
214
+ ################################################################################
215
+ # Skip line on report
216
+ #
217
+ # @param [Integer] skip . Number of lines to skip. Default 1.
218
+ ###############################################################################
219
+ def pdf_skip(skip = 1)
220
+ @pdf.text('<br>' * skip, inline_format: true)
221
+ end
222
+
223
+ end
@@ -3,13 +3,21 @@
3
3
  extend: form_name
4
4
  table: table_name
5
5
  title: Some title
6
+ title:
7
+ text: Dynamicaly defined title
8
+ eval: SomeClass.title_method
6
9
  controls: controls_file
7
10
  readonly: 1
8
11
  permissions:
9
12
  can_view: role_name
13
+
14
+ script: "
15
+ javascript code
16
+ "
10
17
 
11
18
  index:
12
19
  filter: name, id as text_field
20
+
13
21
  actions: standard
14
22
 
15
23
  actions:
@@ -18,6 +26,7 @@ index:
18
26
  3: sort
19
27
 
20
28
  actions:
29
+ standard: yes
21
30
  1:
22
31
  type: new
23
32
  caption: Alternative caption
@@ -47,11 +56,21 @@ result_set:
47
56
  footer: custom_footer
48
57
  actions_width: 100
49
58
  per_page: 10
59
+ select_fields: id,name
60
+ deny_fields: body,email
61
+
62
+ dblclick:
63
+ table: model_name
64
+ form_name: form_name
65
+ readonly: 1
66
+ action: show
67
+ window_close: 1 (close), 2 (history.back)
68
+
50
69
  table_style: 'color: green;'
51
70
  table_class: tclass
52
71
  tr_style: 'color: green;'
53
72
  tr_class: trclass
54
- tr_class:
73
+ tr_style:
55
74
  eval: "document['result'] < 0 ? 'color: red;' : 'color: #000;'"
56
75
 
57
76
  actions: standard
@@ -84,6 +103,7 @@ result_set:
84
103
  name: name
85
104
  eval: dc_name4_id,dc_site,name
86
105
  width: 10%
106
+ width: none || hidden
87
107
  align: right (center)
88
108
  style: 'color: red;'
89
109
  td_class: class-name
@@ -107,8 +127,7 @@ form:
107
127
  title:
108
128
  edit: Title for edit
109
129
  show: Title for show
110
- labels_pos: top
111
-
130
+ labels_pos: top
112
131
 
113
132
  actions: standard
114
133
  actions: none
@@ -120,6 +139,7 @@ form:
120
139
  action: action
121
140
  method: (get),put,post
122
141
  caption: ajax_call
142
+ control: control_name.method_to_call
123
143
  when_new: false
124
144
  5:
125
145
  type: window
@@ -152,6 +172,8 @@ form:
152
172
 
153
173
  tabs:
154
174
  tab1:
175
+ caption: my_caption
176
+ caption: helpers.label.table.tab1
155
177
 
156
178
  10:
157
179
  name: name
@@ -174,7 +196,13 @@ form:
174
196
  eval: ModelName.choices4_site
175
197
  eval: dc_big_table 'key-name'
176
198
  html:
177
- include_blank: true
199
+ include_blank: true
200
+ 90:
201
+ name: kats
202
+ type: multitext_autocomplete
203
+ search: dc_category.name
204
+ with_new: model_name
205
+ size: 30
178
206
 
179
207
  40:
180
208
  name: operation
@@ -202,8 +230,8 @@ form:
202
230
  100:
203
231
  name: css
204
232
  type: text_area
205
- html:
206
- size: 100x20
233
+ size: 100x20
234
+
207
235
 
208
236
  110:
209
237
  name: active
@@ -213,20 +241,26 @@ form:
213
241
  10:
214
242
  name: form
215
243
  type: text_area
244
+ size: 100x50
216
245
  html:
217
- size: 100x50
218
- style: 'font-family:courier;'
246
+ style: 'font-family:courier;'
219
247
 
220
248
  tab3:
221
249
  20:
222
250
  name: dc_poll_items
223
251
  type: embedded
252
+ load: default,delay,always
224
253
  form_name: dc_poll_item
225
254
  html:
226
255
  height: 800
227
256
  20:
228
257
  name: odhod
229
- type: datetime_picker
258
+ type: datetime_picker
259
+ 20:
260
+ name: gender
261
+ type: radio
262
+ inline: true
263
+
230
264
  40:
231
265
  name: customer_id
232
266
  type: text_autocomplete
@@ -235,6 +269,7 @@ form:
235
269
  field: custumer_name
236
270
  method: search
237
271
  with_new: customer
272
+ is_id: false
238
273
  size: 50
239
274
  50:
240
275
  name: kats
@@ -45,38 +45,42 @@ menu:
45
45
  50:
46
46
  caption: helpers.label.dc_piece.tabletitle
47
47
  controller: cmsedit
48
- icon: puzzle-piece lg
48
+ icon: puzzle-piece lg
49
49
  table: dc_piece
50
50
  60:
51
51
  caption: helpers.label.dc_link.tabletitle
52
52
  controller: cmsedit
53
- icon: link lg
53
+ icon: link lg
54
54
  table: dc_link
55
55
  70:
56
56
  caption: helpers.label.dc_menu.tabletitle
57
57
  controller: cmsedit
58
- icon: th-list lg
58
+ icon: th-list lg
59
59
  table: dc_menu
60
60
  80:
61
61
  caption: helpers.label.dc_simple_menu.tabletitle
62
62
  controller: cmsedit
63
- icon: ellipsis-h lg
63
+ icon: ellipsis-h lg
64
64
  table: dc_simple_menu
65
65
  90:
66
66
  caption: helpers.label.dc_category.tabletitle
67
67
  controller: cmsedit
68
- icon: list lg
68
+ icon: list lg
69
69
  table: dc_category
70
-
71
70
  100:
72
71
  caption: helpers.label.dc_poll.tabletitle
73
72
  controller: cmsedit
74
- icon: list-alt lg
73
+ icon: list-alt lg
75
74
  table: dc_poll
76
75
  110:
76
+ caption: helpers.label.dc_poll_result.tabletitle
77
+ controller: cmsedit
78
+ icon: database lg
79
+ table: dc_poll_result
80
+ 120:
77
81
  caption: helpers.label.dc_ad.tabletitle
78
82
  controller: cmsedit
79
- icon: money lg
83
+ icon: money lg
80
84
  table: dc_ad
81
85
 
82
86
  11_system_menu:
@@ -86,52 +90,58 @@ menu:
86
90
  10:
87
91
  caption: helpers.label.dc_user.tabletitle
88
92
  controller: cmsedit
89
- icon: users lg
93
+ icon: users lg
90
94
  table: dc_user
91
95
  20:
92
96
  caption: helpers.label.dc_policy_role.tabletitle
93
97
  controller: cmsedit
94
- icon: user-secret lg
98
+ icon: user-secret lg
95
99
  table: dc_policy_role
96
100
  30:
97
101
  caption: helpers.label.dc_permission.tabletitle
98
102
  controller: cmsedit
99
- icon: shield lg
103
+ icon: shield lg
100
104
  table: dc_permission
101
105
  40:
102
106
  caption: helpers.label.dc_folder_permission.tabletitle
103
107
  controller: cmsedit
104
- icon: shield lg
108
+ icon: shield lg
105
109
  table: dc_folder_permission
106
110
  60:
107
111
  caption: helpers.label.dc_big_table.tabletitle
108
112
  controller: cmsedit
109
- icon: table lg
113
+ icon: table lg
110
114
  table: dc_big_table
111
115
  70:
112
116
  caption: helpers.label.dc_key_value_store.tabletitle
113
117
  controller: cmsedit
114
- icon: list lg
118
+ icon: list lg
115
119
  table: dc_key_value_store
116
120
  80:
117
121
  caption: helpers.label.dc_filter.tabletitle
118
122
  controller: cmsedit
119
- icon: filter lg
123
+ icon: filter lg
120
124
  table: dc_filter
121
125
  90:
122
126
  caption: helpers.label.dc_removed_url.tabletitle
123
127
  controller: cmsedit
124
- icon: trash-o lg
128
+ icon: trash-o lg
125
129
  table: dc_removed_url
130
+ 400:
131
+ caption: drgcms.dc_help.title
132
+ controller: cmsedit
133
+ icon: question-circle lg
134
+ table: dc_temp
135
+ form_name: dc_help_1
126
136
  500:
127
137
  caption: helpers.label.dc_journal.tabletitle
128
138
  controller: cmsedit
129
- icon: undo lg
139
+ icon: history lg
130
140
  table: dc_journal
131
141
 
132
142
  600:
133
143
  caption: drgcms.browse_collections
134
144
  controller: cmsedit
135
- icon: table lg
145
+ icon: table lg
136
146
  table: dc_memory
137
147
  form_name: dc_browse_models