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.
- checksums.yaml +4 -4
- data/app/assets/javascripts/drg_cms/drg_cms.js +92 -36
- data/app/assets/stylesheets/drg_cms/drg_cms.css +141 -101
- data/app/assets/stylesheets/drg_cms/select-multiple.css +9 -12
- data/app/assets/stylesheets/drg_cms_cms.css +1 -1
- data/app/controllers/cmsedit_controller.rb +100 -32
- data/app/controllers/dc_application_controller.rb +71 -12
- data/app/controls/dc_report.rb +227 -0
- data/app/forms/all_options.yml +24 -5
- data/app/forms/dc_big_table.yml +1 -0
- data/app/forms/dc_big_table_value.yml +1 -0
- data/app/forms/dc_poll.yml +12 -5
- data/app/forms/dc_poll_item.yml +2 -1
- data/app/forms/dc_poll_result.yml +9 -0
- data/app/forms/dc_site.yml +2 -6
- data/app/helpers/cms_common_helper.rb +311 -0
- data/app/helpers/{cmsedit_edit_helper.rb → cms_edit_helper.rb} +52 -25
- data/app/helpers/{cmsedit_helper.rb → cms_helper.rb} +38 -31
- data/app/helpers/{cmsedit_index_helper.rb → cms_index_helper.rb} +152 -155
- data/app/helpers/dc_application_helper.rb +20 -234
- data/app/models/concerns/dc_site_concern.rb +12 -1
- data/app/models/dc_filter.rb +10 -8
- data/app/models/dc_permission.rb +30 -0
- data/app/models/dc_poll.rb +1 -0
- data/app/models/dc_poll_result.rb +4 -2
- data/app/models/dc_temp.rb +5 -2
- data/app/models/drgcms_form_fields.rb +12 -1
- data/app/models/drgcms_form_fields/date_picker.rb +4 -3
- data/app/models/drgcms_form_fields/datetime_picker.rb +4 -3
- data/app/models/drgcms_form_fields/drgcms_field.rb +18 -4
- data/app/models/drgcms_form_fields/embedded.rb +17 -9
- data/app/models/drgcms_form_fields/file_field.rb +1 -1
- data/app/models/drgcms_form_fields/hidden_field.rb +1 -1
- data/app/models/drgcms_form_fields/method.rb +65 -0
- data/app/models/drgcms_form_fields/multitext_autocomplete.rb +17 -11
- data/app/models/drgcms_form_fields/radio.rb +10 -5
- data/app/models/drgcms_form_fields/readonly.rb +1 -1
- data/app/models/drgcms_form_fields/select.rb +49 -32
- data/app/models/drgcms_form_fields/text_autocomplete.rb +21 -21
- data/app/renderers/dc_big_menu_renderer.rb +1 -0
- data/app/renderers/dc_gallery_renderer.rb +1 -0
- data/app/renderers/dc_menu_renderer.rb +1 -0
- data/app/renderers/dc_page_renderer.rb +1 -0
- data/app/renderers/dc_part_renderer.rb +1 -0
- data/app/renderers/dc_piece_renderer.rb +1 -1
- data/app/renderers/dc_poll_renderer.rb +43 -38
- data/app/renderers/dc_renderer.rb +1 -0
- data/app/renderers/dc_simple_menu_renderer.rb +1 -0
- data/config/locales/drgcms_en.yml +3 -2
- data/config/locales/drgcms_sl.yml +5 -4
- data/config/locales/models_en.yml +9 -2
- data/config/locales/models_sl.yml +10 -3
- data/lib/drg_cms/version.rb +1 -1
- data/lib/generators/new_drg_form/new_drg_form_generator.rb +5 -3
- data/lib/tasks/database.rake +6 -56
- metadata +35 -33
- data/app/helpers/application_helper.rb +0 -2
@@ -30,7 +30,7 @@ module DrgcmsFormFields
|
|
30
30
|
# * +type:+ text_autocomplete (required)
|
31
31
|
# * +table+ Collection (table) name. When defined search must contain field name
|
32
32
|
# * +with_new+ Will add an icon for shortcut to add new document to collection
|
33
|
-
# * +
|
33
|
+
# * +is_id+ Field value represent value as id. If false, field will use entered value and not value selected with autocomplete. Default is true.
|
34
34
|
# * +search:+ Search may consist of three parameters from which are separated either by dot (.)
|
35
35
|
# * search_field_name; when table option is defined search must define field name which will be used for search query
|
36
36
|
# * collection_name.search_field_name; Same as above except that table options must be ommited.
|
@@ -42,6 +42,7 @@ module DrgcmsFormFields
|
|
42
42
|
# name: user_id
|
43
43
|
# type: text_autocomplete
|
44
44
|
# search: dc_user.name
|
45
|
+
# is_id: false
|
45
46
|
# html:
|
46
47
|
# size: 30
|
47
48
|
###########################################################################
|
@@ -51,8 +52,8 @@ class TextAutocomplete < DrgcmsField
|
|
51
52
|
# Render text_autocomplete field html code
|
52
53
|
###########################################################################
|
53
54
|
def render
|
54
|
-
# Return descriptive text and put it into input field
|
55
|
-
# search field name
|
55
|
+
# Return descriptive text and put it into input field
|
56
|
+
# search field name
|
56
57
|
if @yaml['search'].class == Hash
|
57
58
|
table = @yaml['search']['table']
|
58
59
|
ret_name = @yaml['search']['field']
|
@@ -62,59 +63,58 @@ def render
|
|
62
63
|
else
|
63
64
|
ret_name = @yaml['search']
|
64
65
|
end
|
65
|
-
# determine table name
|
66
|
+
# determine table name
|
66
67
|
if @yaml['table']
|
67
68
|
table = if @yaml['table'].class == String
|
68
69
|
@yaml['table']
|
69
|
-
# eval(how_to_get_my_table_name)
|
70
70
|
elsif @yaml['table']['eval']
|
71
71
|
eval @yaml['table']['eval']
|
72
72
|
else
|
73
|
-
Rails.logger.error "Field #{@yaml['name']}: Invalid table parameter!"
|
73
|
+
Rails.logger.error "Field #{ @yaml['name'] }: Invalid table parameter!"
|
74
74
|
nil
|
75
75
|
end
|
76
76
|
end
|
77
77
|
return 'Table or field keyword not defined!' unless (table and ret_name)
|
78
|
-
# TODO check if table exists
|
78
|
+
# TODO check if table exists
|
79
79
|
t = table.classify.constantize
|
80
|
-
# find record and return value of field
|
80
|
+
# find record and return value of field
|
81
81
|
value_send_as = 'p_' + @yaml['name']
|
82
82
|
value = if @parent.params[value_send_as]
|
83
83
|
@parent.params[value_send_as]
|
84
84
|
elsif @record and @record[@yaml['name']]
|
85
85
|
@record[@yaml['name']]
|
86
86
|
end
|
87
|
-
# Found value to be written in field. If field is not found write out value.
|
87
|
+
# Found value to be written in field. If field is not found write out value.
|
88
88
|
if value
|
89
89
|
record = t.find(value) unless @yaml['not_id'] # don't if it's is not an id
|
90
90
|
value_displayed = record ? record.send(ret_name) : value
|
91
91
|
end
|
92
|
-
# return if readonly
|
93
|
-
|
94
|
-
# Add method back, so autocomplete will know that it must search for method inside class
|
92
|
+
# return if readonly
|
93
|
+
return ro_standard(value_displayed) if @readonly
|
94
|
+
# Add method back, so autocomplete will know that it must search for method inside class
|
95
95
|
ret_name = "#{ret_name}.#{method}" if method
|
96
96
|
@yaml['html'] ||= {}
|
97
97
|
@yaml['html']['value'] = value_displayed
|
98
98
|
@yaml['html']['placeholder'] ||= t('drgcms.search_placeholder') || nil
|
99
|
-
#
|
99
|
+
#
|
100
100
|
_name = '_' + @yaml['name']
|
101
101
|
record = record_text_for(@yaml['name'])
|
102
|
-
@html << @parent.text_field(record, _name, @yaml['html'])
|
102
|
+
@html << '<span class="dc-text-autocomplete">' + @parent.text_field(record, _name, @yaml['html']) + '<span></span>'
|
103
103
|
if @yaml['with_new']
|
104
104
|
@html << ' ' +
|
105
105
|
@parent.fa_icon('plus-square lg', class: 'in-edit-add', title: t('drgcms.new'),
|
106
106
|
style: "vertical-align: top;", 'data-table' => @yaml['with_new'] )
|
107
107
|
end
|
108
|
-
@html << @parent.hidden_field(record, @yaml['name'], value: value) # actual value will be in hidden field
|
109
|
-
# JS stuff
|
110
|
-
# allow unselected values on
|
111
|
-
|
108
|
+
@html << '</span>' + @parent.hidden_field(record, @yaml['name'], value: value) # actual value will be in hidden field
|
109
|
+
# JS stuff
|
110
|
+
# allow unselected values on is_id: false option
|
111
|
+
not_id = @parent.dc_dont?(@yaml['is_id'], false)
|
112
|
+
not_id_code = %(
|
112
113
|
if (ui.item == null) {
|
113
114
|
$("##{record}_#{@yaml['name']}").val($("##{record}__#{@yaml['name']}").val() );
|
114
115
|
return;
|
115
|
-
}
|
116
|
-
|
117
|
-
#
|
116
|
+
} ) if not_id
|
117
|
+
#
|
118
118
|
@js << <<EOJS
|
119
119
|
$(document).ready(function() {
|
120
120
|
$("##{record}_#{_name}").autocomplete( {
|
@@ -32,6 +32,7 @@
|
|
32
32
|
class DcBigMenuRenderer
|
33
33
|
|
34
34
|
include DcApplicationHelper
|
35
|
+
include CmsCommonHelper
|
35
36
|
########################################################################
|
36
37
|
# Object initialization.
|
37
38
|
########################################################################
|
@@ -35,6 +35,7 @@
|
|
35
35
|
class DcMenuRenderer
|
36
36
|
|
37
37
|
include DcApplicationHelper
|
38
|
+
include CmsCommonHelper
|
38
39
|
########################################################################
|
39
40
|
# Object initialization. Will also prepare DcMenu document.
|
40
41
|
########################################################################
|
@@ -33,7 +33,7 @@
|
|
33
33
|
class DcPieceRenderer
|
34
34
|
|
35
35
|
include DcApplicationHelper
|
36
|
-
|
36
|
+
include CmsCommonHelper
|
37
37
|
########################################################################
|
38
38
|
# Object initialization. It also loads requested dc_piece document.
|
39
39
|
########################################################################
|
@@ -27,9 +27,9 @@
|
|
27
27
|
########################################################################
|
28
28
|
class DcPollRenderer
|
29
29
|
|
30
|
-
include
|
30
|
+
include CmsCommonHelper
|
31
31
|
include DcApplicationHelper
|
32
|
-
include ActionView::Helpers::FormHelper # for form
|
32
|
+
include ActionView::Helpers::FormHelper # for form helpers
|
33
33
|
include ActionView::Helpers::FormOptionsHelper # for select helper
|
34
34
|
|
35
35
|
########################################################################
|
@@ -39,6 +39,7 @@ def initialize( parent, opts={} ) #:nodoc:
|
|
39
39
|
@parent = parent
|
40
40
|
@opts = opts
|
41
41
|
@part_css = ''
|
42
|
+
@part_js = ''
|
42
43
|
self
|
43
44
|
end
|
44
45
|
|
@@ -56,7 +57,7 @@ def do_one_item(poll, yaml)
|
|
56
57
|
html = ''
|
57
58
|
yaml['separator'] ||= ''
|
58
59
|
yaml['text'] ||= ''
|
59
|
-
#
|
60
|
+
# label
|
60
61
|
text = yaml['text'].match(/\./) ? t(yaml['text']) : yaml['text']
|
61
62
|
if yaml['mandatory']
|
62
63
|
text << ( poll.display == 'in' ? ' *' : '<font color="red"> *</font>' )
|
@@ -66,7 +67,7 @@ def do_one_item(poll, yaml)
|
|
66
67
|
text << " " if poll.display == 'lr' and !yaml['type'].match(/submit_tag|link_to/)
|
67
68
|
end
|
68
69
|
|
69
|
-
# Just add text if comment and go to next one
|
70
|
+
# Just add text if comment and go to next one
|
70
71
|
if yaml['type'] == 'comment'
|
71
72
|
html << if poll.display == 'lr'
|
72
73
|
"<div class='row-div'><div class='dc-form-label poll-data-text comment'>#{text}</div></div>"
|
@@ -75,34 +76,37 @@ def do_one_item(poll, yaml)
|
|
75
76
|
end
|
76
77
|
return html
|
77
78
|
end
|
78
|
-
|
79
|
+
|
80
|
+
# Set default value, if not already set
|
79
81
|
if yaml['default']
|
80
82
|
if yaml['default'].match('eval')
|
81
83
|
e = yaml['default'].match(/\((.*?)\)/)[1]
|
82
84
|
yaml['default'] = eval e
|
85
|
+
elsif yaml['default'].match('params')
|
86
|
+
param_name = yaml['default'].split(/\.|\ |\,/)[1]
|
87
|
+
yaml['default'] = @parent.params[param_name]
|
83
88
|
end
|
84
89
|
key = "p_#{yaml['name']}"
|
85
90
|
params[key] = yaml['default'] unless params[key]
|
86
91
|
end
|
87
|
-
# Label as placeholder
|
92
|
+
# Label as placeholder
|
88
93
|
if poll.display == 'in'
|
89
94
|
yaml['html'] ||= {}
|
90
95
|
yaml['html']['placeholder'] = text
|
91
96
|
end
|
92
|
-
# create form_field object and retrieve html code
|
97
|
+
# create form_field object and retrieve html code
|
93
98
|
clas_string = yaml['type'].camelize
|
94
99
|
field_html = if DrgcmsFormFields.const_defined?(clas_string)
|
95
100
|
clas = DrgcmsFormFields.const_get(clas_string)
|
96
101
|
field = clas.new(@parent, @record, yaml).render
|
97
|
-
|
98
|
-
field.html
|
99
|
-
else #
|
102
|
+
@part_js << field.js
|
103
|
+
field.html
|
104
|
+
else # error string
|
100
105
|
"Error: Code for field type #{yaml['type']} not defined!"
|
101
106
|
end
|
102
107
|
|
103
|
-
# field = send('dc_' + yaml['type'], yaml) # call dc_xxx method to get field html code
|
104
108
|
if yaml['type'].match(/submit_tag|link_to/)
|
105
|
-
# There can be more than one links on form. End the data at first link or submit.
|
109
|
+
# There can be more than one links on form. End the data at first link or submit.
|
106
110
|
if !@end_of_data
|
107
111
|
html << if poll.display == 'lr'
|
108
112
|
"</div><br>\n"
|
@@ -118,10 +122,10 @@ def do_one_item(poll, yaml)
|
|
118
122
|
end
|
119
123
|
@end_of_data = true
|
120
124
|
end
|
121
|
-
# submit and link tag
|
125
|
+
# submit and link tag
|
122
126
|
clas = yaml['type'].match(/submit_tag/) ? '' : 'dc-link-submit'
|
123
127
|
html << "<span class='#{clas} dc-animate'>#{field_html}#{yaml['separator']}</span>"
|
124
|
-
# other fields
|
128
|
+
# other fields
|
125
129
|
else
|
126
130
|
html << case
|
127
131
|
when poll.display == 'lr' then
|
@@ -156,20 +160,19 @@ end
|
|
156
160
|
# Default poll renderer method. Renders data for specified pool.
|
157
161
|
########################################################################
|
158
162
|
def default
|
159
|
-
# poll_id may be defined in params or opts
|
163
|
+
# poll_id may be defined in params or opts
|
160
164
|
poll_id = @opts[:poll_id] || @parent.params[:poll_id]
|
161
165
|
return '<br>Poll id is not defined?<br>' if poll_id.nil?
|
162
|
-
|
166
|
+
|
163
167
|
poll = DcPoll.find(poll_id)
|
164
168
|
poll = DcPoll.find_by(name: poll_id) if poll.nil? # name instead of id
|
165
169
|
return "<div class=\"dc-form-error\">Invalid Poll id #{poll_id}</div>" if poll.nil?
|
166
|
-
# If parent cant be seen. so cant be polls
|
170
|
+
# If parent cant be seen. so cant be polls
|
167
171
|
can_view, message = dc_user_can_view(@parent, @parent.page)
|
168
172
|
return "<div class=\"dc-form-error\">#{message}</div>" unless can_view
|
169
|
-
|
173
|
+
|
170
174
|
html = @opts[:div] ? "<div id='#{@opts[:div]}'>" : ''
|
171
175
|
html << '<a name="poll-top"></a>'
|
172
|
-
#
|
173
176
|
unless poll.pre_display.blank?
|
174
177
|
begin
|
175
178
|
continue, message = eval_pre_display(poll.pre_display)
|
@@ -177,48 +180,49 @@ def default
|
|
177
180
|
return "<div class=\"dc-form-error\">Error! Poll pre display. Error: #{e.message}</div>"
|
178
181
|
end
|
179
182
|
return message unless continue
|
183
|
+
|
180
184
|
html << message if message
|
181
185
|
end
|
182
|
-
# there might be more than one poll displayed on page. Check if messages and values are for me
|
183
|
-
if @parent.flash[:poll_id].nil?
|
184
|
-
# If flash[:record] is present copy content to params record hash
|
186
|
+
# there might be more than one poll displayed on page. Check if messages and values are for me
|
187
|
+
if @parent.flash[:poll_id].nil? || @parent.flash[:poll_id].to_s == poll_id.to_s
|
188
|
+
# If flash[:record] is present copy content to params record hash
|
185
189
|
@parent.flash[:record].each {|k,v| @parent.params["p_#{k}"] = v } if @parent.flash[:record]
|
186
|
-
# Error during procesing request
|
190
|
+
# Error during procesing request
|
187
191
|
html << "<div class=\"dc-form-error\">#{@parent.flash[:error]}</div>\n" if @parent.flash[:error].to_s.size > 0
|
188
192
|
html << "<div class=\"dc-form-info\">#{@parent.flash[:info]}</div>\n" if @parent.flash[:info]
|
189
193
|
end
|
190
|
-
# div and form tag
|
194
|
+
# div and form tag
|
191
195
|
html << "<div class=\"poll-div\">\n"
|
192
|
-
# edit link
|
196
|
+
# edit link
|
193
197
|
if @opts[:edit_mode] > 1
|
194
198
|
@opts[:editparams].merge!( controller: 'cmsedit', action: 'edit', id: poll._id, table: 'dc_poll', form_name: 'dc_poll' )
|
195
199
|
@opts[:editparams].merge!(title: "#{t('drgcms.edit')}: #{poll.name}")
|
196
200
|
@opts[:editparams].delete(:ids) # this is from page, but it gets in a way
|
197
201
|
html << dc_link_for_edit( @opts[:editparams] )
|
198
202
|
end
|
199
|
-
|
203
|
+
|
200
204
|
html << case
|
201
205
|
when poll.operation == 'poll_submit' then
|
202
206
|
@parent.form_tag(action: poll.operation, method: :put)
|
203
207
|
when poll.operation == 'link' then
|
204
208
|
@parent.form_tag( poll.parameters, method: :put)
|
205
209
|
end
|
206
|
-
# header
|
207
|
-
html << "<div class='poll-title'>#{poll.title}</div>" unless poll.title[0] == '-'
|
208
|
-
html << poll.sub_text.to_s
|
210
|
+
# header, - on first position will not display title
|
211
|
+
html << "<div class='poll-title'>#{poll.title}</div>" unless poll.title[0] == '-'
|
212
|
+
html << poll.sub_text.to_s
|
209
213
|
html << if poll.display == 'lr'
|
210
214
|
"\n" + '<div class="poll-data-table">'
|
211
215
|
else
|
212
216
|
'<div class="poll-data-div">' + "\n"
|
213
217
|
end
|
214
|
-
# items. Convert each item to yaml
|
218
|
+
# items. Convert each item to yaml
|
215
219
|
@end_od_data = false
|
216
220
|
if poll.form.to_s.size < 10
|
217
221
|
items = poll.dc_poll_items
|
218
|
-
items.sort! {|a,b| a.order <=> b.order }
|
222
|
+
items.sort! { |a,b| a.order <=> b.order }
|
219
223
|
items.each do |item|
|
220
224
|
next unless item.active # disabled items
|
221
|
-
|
225
|
+
# convert options to yaml
|
222
226
|
yaml = YAML.load(item.options) || {}
|
223
227
|
yaml = {} if yaml.class == String
|
224
228
|
yaml['name'] = item.name
|
@@ -226,22 +230,23 @@ def default
|
|
226
230
|
yaml['html']['size'] = item.size
|
227
231
|
(yaml['html']['class'] ||= 'dc-submit') if item.type == 'submit_tag'
|
228
232
|
yaml['text'] = item.text
|
229
|
-
yaml['mandatory']
|
230
|
-
yaml['type']
|
233
|
+
yaml['mandatory'] = item.mandatory
|
234
|
+
yaml['type'] = item.type
|
231
235
|
html << do_one_item(poll, yaml)
|
232
236
|
end
|
233
|
-
#
|
237
|
+
# FORM. Just call do_one_item for each form item
|
234
238
|
else
|
235
239
|
yaml = YAML.load(poll.form.gsub(' ',' ')) # very annoying. They come with copy&paste ;-)
|
236
|
-
# if entered without numbering yaml is returned as Hash otherwise as Array
|
240
|
+
# if entered without numbering yaml is returned as Hash otherwise as Array
|
237
241
|
yaml.each { |i| html << do_one_item(poll, (i.class == Hash ? i : i.last)) } #
|
238
242
|
end
|
239
|
-
# hide some fields usefull as parameters
|
240
|
-
# was html << @parent.hidden_field_tag('return_to', @opts[:return_to] || @parent.params[:return_to] || '/')
|
243
|
+
# hide some fields usefull as parameters
|
241
244
|
html << @parent.hidden_field_tag('return_to', @opts[:return_to] || @parent.params[:return_to] || @parent.request.url)
|
242
245
|
html << @parent.hidden_field_tag('return_to_error', @parent.request.url )
|
243
246
|
html << @parent.hidden_field_tag('poll_id', poll_id )
|
244
247
|
html << @parent.hidden_field_tag('page_id', @parent.page.id )
|
248
|
+
# Add javascript code
|
249
|
+
html << @parent.javascript_tag(@part_js + poll.js.to_s)
|
245
250
|
html << "</form></div>"
|
246
251
|
html << '</div>' if @opts[:div]
|
247
252
|
|
@@ -34,6 +34,7 @@
|
|
34
34
|
class DcSimpleMenuRenderer
|
35
35
|
|
36
36
|
include DcApplicationHelper
|
37
|
+
include CmsCommonHelper
|
37
38
|
########################################################################
|
38
39
|
# Object initialization.
|
39
40
|
########################################################################
|
@@ -34,8 +34,8 @@ en:
|
|
34
34
|
doc_enabled: Document enabled!
|
35
35
|
doc_saved: Document saved!
|
36
36
|
doc_info: Info
|
37
|
-
doc_copy_clipboard:
|
38
|
-
doc_paste_clipboard:
|
37
|
+
doc_copy_clipboard: Copy document data into new window
|
38
|
+
doc_paste_clipboard: Update or create document
|
39
39
|
doc_paste_title: Insert (update) documents from JSON data
|
40
40
|
doc_paste_update: Update existing document if document._id exists
|
41
41
|
doc_no_delete: Document can not be deleted!
|
@@ -89,6 +89,7 @@ en:
|
|
89
89
|
reload: Reload
|
90
90
|
error: Error!
|
91
91
|
errors_no: 'No. of errors:'
|
92
|
+
runtime_error: Runtime error!
|
92
93
|
two_chars: type in at least two chars
|
93
94
|
|
94
95
|
created_by: Created by
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#--
|
2
|
-
# Copyright (c) 2012
|
2
|
+
# Copyright (c) 2012+ Damjan Rems
|
3
3
|
#
|
4
4
|
# Permission is hereby granted, free of charge, to any person obtaining
|
5
5
|
# a copy of this software and associated documentation files (the
|
@@ -28,13 +28,13 @@ sl:
|
|
28
28
|
"false": "ne"
|
29
29
|
record_deleted: Dokument izbrisan!
|
30
30
|
confirm_delete: Potrdite izbris dokumenta!
|
31
|
-
confirm_dup: Potrdite
|
31
|
+
confirm_dup: Potrdite podvajanja dokumenta!
|
32
32
|
not_authorized: Uporabnik nima pravic za to operacijo!
|
33
33
|
doc_disabled: Dokument onemogočen!
|
34
34
|
doc_enabled: Dokument omogočen!
|
35
35
|
doc_saved: Dokument zapisan!
|
36
36
|
doc_info: Info
|
37
|
-
doc_copy_clipboard:
|
37
|
+
doc_copy_clipboard: Kopija vsebine dokumenta v novem oknu.
|
38
38
|
doc_paste_clipboard: Obdelaj podatke
|
39
39
|
doc_paste_title: Ustvari (spremeni) dokumente iz JSON zapisa
|
40
40
|
doc_paste_update: Spremeni obstoječ dokument, če dokument._id obstaja
|
@@ -88,7 +88,8 @@ sl:
|
|
88
88
|
minimize: Pomanjšaj
|
89
89
|
reload: Osveži
|
90
90
|
error: Napaka!
|
91
|
-
errors_no: 'Število napak:'
|
91
|
+
errors_no: 'Število napak:'
|
92
|
+
runtime_error: Napaka med izvajanjem programa!
|
92
93
|
two_chars: vpišite vsaj dva znaka
|
93
94
|
|
94
95
|
created_by: Ustvaril
|
@@ -127,8 +127,9 @@ en:
|
|
127
127
|
choices4_operation: 'Submit poll:poll_submit,Link:link'
|
128
128
|
choices4_display: 'Top:td,Left:lr,Inside:in'
|
129
129
|
tab1: Base
|
130
|
-
tab2:
|
130
|
+
tab2: Script
|
131
131
|
tab3: Items
|
132
|
+
tab4: Items - advanced
|
132
133
|
|
133
134
|
name: Poll name
|
134
135
|
|
@@ -137,7 +138,9 @@ en:
|
|
137
138
|
operation: Operation
|
138
139
|
parameters: Parameters
|
139
140
|
display: Label
|
141
|
+
pre_display: Pre display code
|
140
142
|
css: CSS
|
143
|
+
js: Javascript
|
141
144
|
valid_from: Valid from
|
142
145
|
valid_to: Valid to
|
143
146
|
dc_poll_items: Items
|
@@ -146,7 +149,7 @@ en:
|
|
146
149
|
|
147
150
|
dc_poll_item:
|
148
151
|
tabletitle: Poll items
|
149
|
-
choices4_type: Text:text_field,Text area:text_area,Select:select,Check box:check_box,Submit:submit_tag,Link:link_to,Password:password_field
|
152
|
+
choices4_type: Text:text_field,Text area:text_area,Select:select,Check box:check_box,Submit:submit_tag,Link:link_to,Password:password_field,Radio:radio
|
150
153
|
choices4_separator: Space: ,Empty line:<br />,Horizontal line:<hr>
|
151
154
|
|
152
155
|
name: Name
|
@@ -165,6 +168,7 @@ en:
|
|
165
168
|
dc_poll_id: Poll name
|
166
169
|
created_at: Created date
|
167
170
|
data: Data
|
171
|
+
confirmed: Confirmed
|
168
172
|
|
169
173
|
dc_policy:
|
170
174
|
tabletitle: Access policy declarations
|
@@ -654,6 +658,8 @@ en:
|
|
654
658
|
parameters: Aditional parameters for operation
|
655
659
|
display: How label is positioned related to input field
|
656
660
|
css: CSS specific to this poll
|
661
|
+
js: Javascript code specific to this poll
|
662
|
+
pre_display: Method to be run before poll is displayed. Usually for initial filling of form.
|
657
663
|
valid_from: Pole is valid from
|
658
664
|
valid_to: Pole is valid to
|
659
665
|
dc_poll_items: Items for this poll
|
@@ -675,6 +681,7 @@ en:
|
|
675
681
|
dc_poll_id: Poll name
|
676
682
|
created_at: Date when poll result was submited
|
677
683
|
data: Data saved in YAML format
|
684
|
+
confirmed: Poll data was confirmed. Ex. User must click on link in email.
|
678
685
|
|
679
686
|
dc_policy:
|
680
687
|
name: Unique policy name
|