drg_cms 0.4.39 → 0.4.53
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +49 -0
- data/app/assets/images/drg_cms/file_manager.png +0 -0
- data/app/assets/javascripts/drg_cms/drg_cms.js +8 -8
- data/app/assets/stylesheets/drg_cms/drg_cms.css +22 -20
- data/app/controllers/cmsedit_controller.rb +170 -114
- data/app/controllers/dc_application_controller.rb +142 -56
- data/app/controllers/dc_common_controller.rb +56 -34
- data/app/controllers/dc_main_controller.rb +1 -4
- data/app/controllers/drgcms_controls/dc_page_controls.rb +3 -0
- data/app/forms/all_options.yml +3 -0
- data/app/forms/cms_menu.yml +100 -117
- data/app/forms/dc_design.yml +1 -1
- data/app/forms/dc_ident.yml +37 -0
- data/app/forms/dc_menu_item.yml +1 -1
- data/app/forms/dc_permission.yml +1 -1
- data/app/forms/dc_site.yml +4 -0
- data/app/helpers/cmsedit_helper.rb +44 -80
- data/app/helpers/dc_ad_renderer.rb +27 -15
- data/app/helpers/dc_application_helper.rb +433 -196
- data/app/helpers/dc_big_menu_renderer.rb +40 -40
- data/app/helpers/dc_captcha_renderer.rb +38 -25
- data/app/helpers/dc_common_renderer.rb +15 -48
- data/app/helpers/dc_menu_renderer.rb +30 -20
- data/app/helpers/dc_page_renderer.rb +14 -18
- data/app/helpers/dc_part_renderer.rb +45 -16
- data/app/helpers/dc_piece_renderer.rb +23 -29
- data/app/helpers/dc_poll_renderer.rb +31 -20
- data/app/helpers/dc_renderer.rb +5 -4
- data/app/helpers/dc_simple_menu_renderer.rb +90 -68
- data/app/models/{__dc_global_data.rb → __dc_stat.rb} +20 -21
- data/app/models/dc_ad.rb +13 -1
- data/app/models/dc_ad_stat.rb +6 -0
- data/app/models/dc_big_menu.rb +15 -2
- data/app/models/dc_big_table.rb +27 -4
- data/app/models/dc_big_table_locale.rb +7 -0
- data/app/models/dc_big_table_value.rb +7 -0
- data/app/models/dc_category.rb +9 -3
- data/app/models/dc_design.rb +50 -0
- data/app/models/dc_dummy.rb +41 -1
- data/app/models/dc_folder_permission.rb +9 -2
- data/app/models/{dc_global_data.rb → dc_ident.rb} +20 -22
- data/app/models/dc_journal.rb +9 -1
- data/app/models/dc_key_value_store.rb +41 -4
- data/app/models/dc_link.rb +7 -0
- data/app/models/dc_menu.rb +20 -3
- data/app/models/dc_menu_item.rb +7 -0
- data/app/models/dc_page.rb +31 -12
- data/app/models/dc_part.rb +34 -4
- data/app/models/dc_permission.rb +32 -12
- data/app/models/dc_piece.rb +32 -4
- data/app/models/dc_policy.rb +17 -11
- data/app/models/dc_policy_role.rb +12 -7
- data/app/models/dc_policy_rule.rb +32 -4
- data/app/models/dc_poll.rb +8 -0
- data/app/models/dc_poll_item.rb +6 -0
- data/app/models/dc_simple_menu.rb +18 -3
- data/app/models/dc_simple_menu_item.rb +20 -2
- data/app/models/dc_site.rb +13 -3
- data/app/models/dc_stat.rb +8 -1
- data/app/models/dc_user.rb +18 -2
- data/app/models/dc_user_role.rb +7 -0
- data/app/models/dc_visit.rb +5 -0
- data/app/{helpers → models}/drgcms_form_field.rb +171 -73
- data/app/views/__dc_at_the_beginning/create.html.erb +9 -0
- data/app/views/__dc_at_the_beginning/index.html.erb +19 -0
- data/app/views/cmsedit/_edit_stuff.html.erb +2 -0
- data/app/views/cmsedit/_form.html.erb +0 -1
- data/app/views/dc_mail/subscribe.html.erb +0 -0
- data/config/initializers/kaminari_patch.rb +5 -4
- data/config/locales/drgcms_en.yml +4 -0
- data/config/locales/drgcms_sl.yml +1 -0
- data/config/locales/models_en.yml +14 -3
- data/config/locales/models_sl.yml +13 -4
- data/drg_cms.gemspec +4 -4
- data/lib/drg_cms.rb +37 -8
- data/lib/drg_cms/engine.rb +2 -2
- data/lib/drg_cms/version.rb +3 -2
- data/lib/tasks/at_the_beginning.yml +0 -0
- data/lib/tasks/dc_at_the_beginning.rake +118 -0
- data/lib/tasks/dc_cleanup.rake +19 -7
- data/lib/tasks/log_statistics.rb +66 -0
- data/lib/tasks/site_statistics.rake +29 -12
- data/test/dummy/app/controllers/application_controller.rb +1 -1
- data/test/dummy/app/helpers/application_helper.rb +1 -1
- metadata +15 -26
- data/README.rdoc +0 -3
- data/app/controllers/dc_at_the_beginning_controller.rb +0 -120
- data/app/controllers/dc_mail_controller.rb +0 -89
- data/app/forms/dc_forum_cat.yml +0 -54
- data/app/forms/dc_forum_forum.yml +0 -53
- data/app/forms/dc_forum_msg.yml +0 -124
- data/app/forms/dc_forum_privmsg.yml +0 -125
- data/app/forms/dc_forum_topic.yml +0 -131
- data/app/forms/dc_mail.yml +0 -88
- data/app/forms/dc_mail_address.yml +0 -56
- data/app/forms/dc_mail_list.yml +0 -44
- data/app/forms/dc_mail_list_member.yml +0 -42
- data/app/helpers/dc_mail_renderer.rb +0 -76
- data/app/models/dc_mail.rb +0 -64
- data/app/models/dc_mail_address.rb +0 -69
- data/app/models/dc_mail_list.rb +0 -48
- data/app/models/dc_mail_list_member.rb +0 -34
- data/app/models/dc_sendmail.rb +0 -48
@@ -23,7 +23,7 @@
|
|
23
23
|
#++
|
24
24
|
|
25
25
|
##########################################################################
|
26
|
-
#
|
26
|
+
# DRG CMS entry point for processing page request.
|
27
27
|
##########################################################################
|
28
28
|
class DcMainController < DcApplicationController
|
29
29
|
|
@@ -34,7 +34,4 @@ def page
|
|
34
34
|
dc_process_default_request
|
35
35
|
end
|
36
36
|
|
37
|
-
# It's easy to alias default action
|
38
|
-
#alias :default_action :page
|
39
|
-
|
40
37
|
end
|
@@ -22,6 +22,9 @@
|
|
22
22
|
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
23
23
|
#++
|
24
24
|
|
25
|
+
######################################################################
|
26
|
+
# DrgcmsControls for DcPage model.
|
27
|
+
######################################################################
|
25
28
|
module DrgcmsControls::DcPageControls
|
26
29
|
|
27
30
|
######################################################################
|
data/app/forms/all_options.yml
CHANGED
data/app/forms/cms_menu.yml
CHANGED
@@ -22,121 +22,104 @@
|
|
22
22
|
#++
|
23
23
|
|
24
24
|
menu:
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
controller: cmsedit
|
126
|
-
picture: dc_permission.png
|
127
|
-
params:
|
128
|
-
table: dc_permission
|
129
|
-
-
|
130
|
-
caption: helpers.label.dc_folder_permission.tabletitle
|
131
|
-
controller: cmsedit
|
132
|
-
picture: dc_permission.png
|
133
|
-
params:
|
134
|
-
table: dc_folder_permission
|
135
|
-
-
|
136
|
-
caption: helpers.label.dc_journal.tabletitle
|
137
|
-
controller: cmsedit
|
138
|
-
picture: dc_journal.png
|
139
|
-
params:
|
140
|
-
table: dc_journal
|
141
|
-
|
25
|
+
50_system_menu:
|
26
|
+
caption: drgcms.system_menu
|
27
|
+
items:
|
28
|
+
10:
|
29
|
+
caption: helpers.label.dc_site.tabletitle
|
30
|
+
controller: cmsedit
|
31
|
+
picture: dc_site.png
|
32
|
+
params:
|
33
|
+
table: dc_site
|
34
|
+
20:
|
35
|
+
caption: helpers.label.dc_design.tabletitle
|
36
|
+
controller: cmsedit
|
37
|
+
picture: dc_design.png
|
38
|
+
params:
|
39
|
+
table: dc_design
|
40
|
+
30:
|
41
|
+
caption: helpers.label.dc_category.tabletitle
|
42
|
+
controller: cmsedit
|
43
|
+
picture: dc_category.png
|
44
|
+
params:
|
45
|
+
table: dc_category
|
46
|
+
40:
|
47
|
+
caption: helpers.label.dc_page.tabletitle
|
48
|
+
controller: cmsedit
|
49
|
+
picture: dc_page.png
|
50
|
+
params:
|
51
|
+
table: dc_page
|
52
|
+
50:
|
53
|
+
caption: helpers.label.dc_piece.tabletitle
|
54
|
+
controller: cmsedit
|
55
|
+
picture: dc_piece.png
|
56
|
+
params:
|
57
|
+
table: dc_piece
|
58
|
+
60:
|
59
|
+
caption: helpers.label.dc_link.tabletitle
|
60
|
+
controller: cmsedit
|
61
|
+
picture: dc_link.png
|
62
|
+
params:
|
63
|
+
table: dc_link
|
64
|
+
70:
|
65
|
+
caption: helpers.label.dc_menu.tabletitle
|
66
|
+
controller: cmsedit
|
67
|
+
picture: dc_menu.png
|
68
|
+
params:
|
69
|
+
table: dc_menu
|
70
|
+
80:
|
71
|
+
caption: helpers.label.dc_simple_menu.tabletitle
|
72
|
+
controller: cmsedit
|
73
|
+
picture: dc_simple_menu.png
|
74
|
+
params:
|
75
|
+
table: dc_simple_menu
|
76
|
+
90:
|
77
|
+
caption: helpers.label.dc_poll.tabletitle
|
78
|
+
controller: cmsedit
|
79
|
+
picture: dc_poll.png
|
80
|
+
params:
|
81
|
+
table: dc_poll
|
82
|
+
100:
|
83
|
+
caption: helpers.label.dc_ad.tabletitle
|
84
|
+
controller: cmsedit
|
85
|
+
picture: dc_ad.png
|
86
|
+
params:
|
87
|
+
table: dc_ad
|
88
|
+
110:
|
89
|
+
caption: helpers.label.dc_user.tabletitle
|
90
|
+
controller: cmsedit
|
91
|
+
picture: dc_user.png
|
92
|
+
params:
|
93
|
+
table: dc_user
|
94
|
+
120:
|
95
|
+
caption: helpers.label.dc_big_table.tabletitle
|
96
|
+
controller: cmsedit
|
97
|
+
picture: dc_big_table.png
|
98
|
+
params:
|
99
|
+
table: dc_big_table
|
100
|
+
130:
|
101
|
+
caption: helpers.label.dc_policy_role.tabletitle
|
102
|
+
controller: cmsedit
|
103
|
+
picture: dc_policy_role.png
|
104
|
+
params:
|
105
|
+
table: dc_policy_role
|
106
|
+
140:
|
107
|
+
caption: helpers.label.dc_permission.tabletitle
|
108
|
+
controller: cmsedit
|
109
|
+
picture: dc_permission.png
|
110
|
+
params:
|
111
|
+
table: dc_permission
|
112
|
+
150:
|
113
|
+
caption: helpers.label.dc_folder_permission.tabletitle
|
114
|
+
controller: cmsedit
|
115
|
+
picture: dc_permission.png
|
116
|
+
params:
|
117
|
+
table: dc_folder_permission
|
118
|
+
160:
|
119
|
+
caption: helpers.label.dc_journal.tabletitle
|
120
|
+
controller: cmsedit
|
121
|
+
picture: dc_journal.png
|
122
|
+
params:
|
123
|
+
table: dc_journal
|
124
|
+
|
142
125
|
|
data/app/forms/dc_design.yml
CHANGED
@@ -0,0 +1,37 @@
|
|
1
|
+
---
|
2
|
+
title: Additional identification
|
3
|
+
table: dc_ident
|
4
|
+
|
5
|
+
index:
|
6
|
+
actions:
|
7
|
+
1: new
|
8
|
+
|
9
|
+
result_set:
|
10
|
+
actions:
|
11
|
+
1: edit
|
12
|
+
2: delete
|
13
|
+
|
14
|
+
columns:
|
15
|
+
1:
|
16
|
+
name: key
|
17
|
+
style: "text-align: left;"
|
18
|
+
2:
|
19
|
+
name: value
|
20
|
+
style: "text-align: left;"
|
21
|
+
|
22
|
+
form:
|
23
|
+
edit_title: caption
|
24
|
+
actions: standard
|
25
|
+
|
26
|
+
fields:
|
27
|
+
10:
|
28
|
+
name: key
|
29
|
+
type: text_field
|
30
|
+
html:
|
31
|
+
size: 30
|
32
|
+
20:
|
33
|
+
name: value
|
34
|
+
type: file_select
|
35
|
+
html:
|
36
|
+
size: 50
|
37
|
+
|
data/app/forms/dc_menu_item.yml
CHANGED
data/app/forms/dc_permission.yml
CHANGED
data/app/forms/dc_site.yml
CHANGED
@@ -20,35 +20,19 @@
|
|
20
20
|
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
21
|
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
22
|
#++
|
23
|
-
module CmseditHelper
|
24
|
-
attr_reader :js
|
25
23
|
|
26
|
-
|
24
|
+
###########################################################################
|
27
25
|
#
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
########################################################################
|
37
|
-
# Since tabs it is a little more complicated to return all field names on form
|
38
|
-
########################################################################
|
39
|
-
def dc_fields_on_form()
|
40
|
-
r = []
|
41
|
-
@form['form'].keys.each do |k|
|
42
|
-
# ignore some keywords
|
43
|
-
next if k.match('actions')
|
44
|
-
# second element of array is hash. Get only name element of hash
|
45
|
-
@form['form'][k].each {|f| r << f[1]['name'] }
|
46
|
-
end
|
47
|
-
r
|
48
|
-
end
|
26
|
+
# CmseditHelper module defines helper methods used by cmsedit actions. Output is controlled by
|
27
|
+
# data found in 3 major sections of DRG CMS form: index, result_set and form sections.
|
28
|
+
#
|
29
|
+
###########################################################################
|
30
|
+
module CmseditHelper
|
31
|
+
# javascript part created by form helpers
|
32
|
+
attr_reader :js
|
49
33
|
|
50
34
|
############################################################################
|
51
|
-
# Creates
|
35
|
+
# Creates action div for cmsedit index action.
|
52
36
|
############################################################################
|
53
37
|
def dc_actions_for_index()
|
54
38
|
return '' if @form['index'].nil?
|
@@ -126,7 +110,7 @@ end
|
|
126
110
|
############################################################################
|
127
111
|
# Subroutine of dc_div_filter
|
128
112
|
############################################################################
|
129
|
-
def _get_field_def(name)
|
113
|
+
def _get_field_def(name) #:nodoc:
|
130
114
|
@form['form'].each do |tab|
|
131
115
|
next if tab.first.match('actions')
|
132
116
|
tab.each do |field|
|
@@ -140,7 +124,7 @@ end
|
|
140
124
|
############################################################################
|
141
125
|
# Finds field definition on form and use it for filter input. Subroutine of dc_div_filter.
|
142
126
|
############################################################################
|
143
|
-
def _get_field_div(name)
|
127
|
+
def _get_field_div(name) #:nodoc:
|
144
128
|
# field not defined on form. Must be defined: name as form_field_type
|
145
129
|
if name.match(' as ')
|
146
130
|
name, dummy, type = name.split(' ')
|
@@ -156,7 +140,7 @@ def _get_field_div(name) #NODOC
|
|
156
140
|
end
|
157
141
|
|
158
142
|
############################################################################
|
159
|
-
# Creates filter div for index/filter action.
|
143
|
+
# Creates filter div for cmsedit index/filter action.
|
160
144
|
############################################################################
|
161
145
|
def dc_div_filter()
|
162
146
|
choices, inputs = [], ''
|
@@ -190,7 +174,8 @@ EOT
|
|
190
174
|
end
|
191
175
|
|
192
176
|
############################################################################
|
193
|
-
# Creates title for result
|
177
|
+
# Creates title div for cmsedit index result set records. Title div also includes paging
|
178
|
+
# options.
|
194
179
|
############################################################################
|
195
180
|
def dc_table_title_for_result(result=nil)
|
196
181
|
title = if @form['title'] # form has title section
|
@@ -202,9 +187,9 @@ def dc_table_title_for_result(result=nil)
|
|
202
187
|
end
|
203
188
|
|
204
189
|
############################################################################
|
205
|
-
# Creates code for link or ajax action type
|
190
|
+
# Creates code for link or ajax action type. Subroutine of dc_actions_for_result.
|
206
191
|
############################################################################
|
207
|
-
def dc_link_or_ajax(yaml, parms)
|
192
|
+
def dc_link_or_ajax(yaml, parms) #:nodoc:
|
208
193
|
method = yaml['method'] || yaml['request'] || 'get'
|
209
194
|
caption = yaml['caption'] || yaml['text']
|
210
195
|
p "Form: result_set:action:text directive will be deprecated. Use caption instead of text." if yaml['text']
|
@@ -226,7 +211,7 @@ def dc_link_or_ajax(yaml, parms)
|
|
226
211
|
end
|
227
212
|
|
228
213
|
############################################################################
|
229
|
-
# Creates actions
|
214
|
+
# Creates actions that could be performed on single row of result set.
|
230
215
|
############################################################################
|
231
216
|
def dc_actions_for_result(record)
|
232
217
|
actions = @form['result_set']['actions']
|
@@ -286,7 +271,7 @@ def dc_actions_for_result(record)
|
|
286
271
|
end
|
287
272
|
|
288
273
|
############################################################################
|
289
|
-
# Creates
|
274
|
+
# Creates header div for result set.
|
290
275
|
############################################################################
|
291
276
|
def dc_header_for_result()
|
292
277
|
c = ''
|
@@ -314,10 +299,10 @@ def dc_header_for_result()
|
|
314
299
|
end
|
315
300
|
|
316
301
|
############################################################################
|
317
|
-
# Formats value
|
318
|
-
#TODO Enable formating numbers.
|
302
|
+
# Formats value according to format supplied or data type. There is lots of things missing here.
|
319
303
|
############################################################################
|
320
304
|
def dc_format_value(value, format=nil)
|
305
|
+
# :TODO: Enable formating numbers.
|
321
306
|
return '' if value.nil?
|
322
307
|
klass = value.class.to_s
|
323
308
|
if klass.match('Time')
|
@@ -332,7 +317,7 @@ def dc_format_value(value, format=nil)
|
|
332
317
|
end
|
333
318
|
|
334
319
|
############################################################################
|
335
|
-
# Creates
|
320
|
+
# Creates div with documents of current result set.
|
336
321
|
############################################################################
|
337
322
|
def dc_columns_for_result(document)
|
338
323
|
html = ''
|
@@ -379,19 +364,12 @@ def dc_columns_for_result(document)
|
|
379
364
|
end
|
380
365
|
|
381
366
|
############################################################################
|
382
|
-
#
|
383
|
-
############################################################################
|
384
|
-
def dc_dialog_for_sort()
|
385
|
-
|
386
|
-
end
|
387
|
-
|
388
|
-
############################################################################
|
389
|
-
# Creates actions for form
|
367
|
+
# Creates actions div for edit form
|
390
368
|
############################################################################
|
391
369
|
def dc_actions_for_form()
|
392
370
|
# create standard actions
|
393
|
-
std_actions = {' 1' => 'back', ' 2' => {'type' => 'submit', 'caption' => '
|
394
|
-
' 3' => {'type' => 'submit', 'caption' => '
|
371
|
+
std_actions = {' 1' => 'back', ' 2' => {'type' => 'submit', 'caption' => 'drgcms.save'},
|
372
|
+
' 3' => {'type' => 'submit', 'caption' => 'drgcms.save&back'} }
|
395
373
|
# when edit only
|
396
374
|
unless @record.id.nil?
|
397
375
|
# std_actions.merge!({' 4' => 'delete', ' 6' => 'new'} ) # delete is not OK here
|
@@ -411,9 +389,9 @@ def dc_actions_for_form()
|
|
411
389
|
actions.each do |k,v|
|
412
390
|
if v.class == String
|
413
391
|
if v.match(/save\&back/i)
|
414
|
-
actions[k] = {'type' => 'submit', 'caption' => '
|
392
|
+
actions[k] = {'type' => 'submit', 'caption' => 'drgcms.save&back'}
|
415
393
|
elsif v == 'save'
|
416
|
-
actions[k] = {'type' => 'submit', 'caption' => '
|
394
|
+
actions[k] = {'type' => 'submit', 'caption' => 'drgcms.save'}
|
417
395
|
end
|
418
396
|
end
|
419
397
|
end
|
@@ -438,7 +416,7 @@ def dc_actions_for_form()
|
|
438
416
|
c << case
|
439
417
|
when (v == 'back' or v == 'cancle') then
|
440
418
|
# If return_to is present link directly to URL
|
441
|
-
if parms['xreturn_to']
|
419
|
+
if parms['xreturn_to'] # disabled for now
|
442
420
|
link_to(t('drgcms.back'), parms['return_to'] )
|
443
421
|
else
|
444
422
|
parms['action'] = 'index'
|
@@ -465,16 +443,17 @@ def dc_actions_for_form()
|
|
465
443
|
c << case
|
466
444
|
# submit button
|
467
445
|
when v['type'] == 'submit'
|
468
|
-
|
446
|
+
caption = v['caption'] || 'drgcms.save'
|
469
447
|
'<td class="dc-link-submit dc-animate">' +
|
470
|
-
submit_tag(t(
|
448
|
+
submit_tag(t(caption, caption), :data => v['params'], :class => 'dc-submit') +
|
471
449
|
'</td>'
|
472
450
|
# delete with some sugar added
|
473
451
|
when v['type'] == 'delete'
|
474
452
|
parms['id'] = @record.id
|
475
453
|
parms.merge!(v['params'])
|
454
|
+
caption = v['caption'] || 'drgcms.delete'
|
476
455
|
'<td class="dc-link dc-animate">' +
|
477
|
-
link_to( t(
|
456
|
+
link_to( t(caption, caption), parms, data: t('drgcms.confirm_delete'), method: :delete ) +
|
478
457
|
'</td>'
|
479
458
|
# ajax or link button
|
480
459
|
when v['type'] == 'ajax' || v['type'] == 'link'
|
@@ -523,14 +502,15 @@ end
|
|
523
502
|
|
524
503
|
############################################################################
|
525
504
|
# Checks if value is defined and sets default. If values are sent it also checks
|
526
|
-
# if value is found in values. If not it will report error and set value to default
|
505
|
+
# if value is found in values. If not it will report error and set value to default.
|
506
|
+
# Subroutine of dc_fields_for_tab.
|
527
507
|
############################################################################
|
528
|
-
def dc_check_and_default(value, default, values=nil)
|
508
|
+
def dc_check_and_default(value, default, values=nil) #:nodoc:
|
529
509
|
return default if value.nil?
|
530
510
|
# check if value is within allowed values
|
531
511
|
if values
|
532
512
|
if !values.index(value)
|
533
|
-
# parameters should be in
|
513
|
+
# parameters should be in downcase. Check downcase version.
|
534
514
|
if n = values.index(value.downcase)
|
535
515
|
return values[n]
|
536
516
|
else
|
@@ -545,7 +525,7 @@ end
|
|
545
525
|
############################################################################
|
546
526
|
# Creates input field for one tab. Subroutine of dc_fields_for_form.
|
547
527
|
############################################################################
|
548
|
-
def dc_fields_for_tab(fields)
|
528
|
+
def dc_fields_for_tab(fields) #:nodoc:
|
549
529
|
@js ||= ''
|
550
530
|
html = '<table class="dc-form-table">'
|
551
531
|
labels_pos = dc_check_and_default(@form['form']['labels_pos'], 'right', ['top','left','right'])
|
@@ -574,9 +554,9 @@ def dc_fields_for_tab(fields) #NODOC
|
|
574
554
|
klas_string = options['type'].camelize
|
575
555
|
field_html = if DrgcmsFormField.const_defined?(klas_string) # check if field type is defined
|
576
556
|
klas = DrgcmsFormField.const_get(klas_string)
|
577
|
-
|
578
|
-
@js <<
|
579
|
-
|
557
|
+
field = klas.new(self, @record, options).render
|
558
|
+
@js << field.js
|
559
|
+
field.html
|
580
560
|
else # litle error string
|
581
561
|
"Error: Code for field type #{options['type']} not defined!"
|
582
562
|
end
|
@@ -590,22 +570,12 @@ def dc_fields_for_tab(fields) #NODOC
|
|
590
570
|
<label for="record_#{options['name']}">#{text} </label></td>
|
591
571
|
<td id=\"td_record_#{options['name']}\" class=\"dc-form-field dc-color-#{odd_even}\">#{field_html}</td></tr>]
|
592
572
|
end
|
593
|
-
=begin
|
594
|
-
html << "<tr><td class=\"dc-form-label-#{odd_even}\" title=\"#{help}\">"
|
595
|
-
html << "<label for=\"record_#{options['name']}\">#{text} </label>"
|
596
|
-
html << (labels_pos == 'top' ? '<br> ': '</td>')
|
597
|
-
html << (labels_pos == 'top' ? '<div ' : '<td ')
|
598
|
-
html << "id=\"td_record_#{options['name']}\" class=\"dc-form-field-#{odd_even}\">#{field_html}"
|
599
|
-
html << (labels_pos == 'top' ? '</div>': '</td>')
|
600
|
-
html << '</tr>'
|
601
|
-
=end
|
602
|
-
# html << "<td id=\"td_record_#{options['name']}\" class=\"dc-form-field-#{odd_even}\">#{field_html}</td></tr>"
|
603
573
|
end
|
604
574
|
html << '</table></table>'
|
605
575
|
end
|
606
576
|
|
607
577
|
############################################################################
|
608
|
-
#
|
578
|
+
# Creates edit form div.
|
609
579
|
############################################################################
|
610
580
|
def dc_fields_for_form()
|
611
581
|
if @form['edit']
|
@@ -651,9 +621,9 @@ def dc_fields_for_form()
|
|
651
621
|
end
|
652
622
|
|
653
623
|
############################################################################
|
654
|
-
# Subroutine of dc_document_statistics
|
624
|
+
# Returns username for id. Subroutine of dc_document_statistics
|
655
625
|
############################################################################
|
656
|
-
def _get_user_for(field_name)
|
626
|
+
def _get_user_for(field_name) #:nodoc:
|
657
627
|
if @record[field_name]
|
658
628
|
u = DcUser.find(@record[field_name])
|
659
629
|
return u ? u.name : @record[field_name]
|
@@ -662,8 +632,8 @@ def _get_user_for(field_name) #NODOC
|
|
662
632
|
end
|
663
633
|
|
664
634
|
############################################################################
|
665
|
-
#
|
666
|
-
# + lots of more.
|
635
|
+
# Creates current document statistics div (created_by, created_at, ....) at the bottom of edit form.
|
636
|
+
# + lots of more. At the moment also adds icon for dumping current document as json text.
|
667
637
|
############################################################################
|
668
638
|
def dc_document_statistics
|
669
639
|
return '' if @record.new_record? or dc_dont?(@form['form']['info'])
|
@@ -689,10 +659,4 @@ def dc_document_statistics
|
|
689
659
|
html.html_safe
|
690
660
|
end
|
691
661
|
|
692
|
-
############################################################################
|
693
|
-
# Insert edit menu into page
|
694
|
-
############################################################################
|
695
|
-
def dc_get_edit_stuff(body) #NODOC
|
696
|
-
end
|
697
|
-
|
698
662
|
end
|