drg_cms 0.5.2 → 0.5.3
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 +1 -1
- data/app/controllers/dc_application_controller.rb +10 -3
- data/app/forms/dc_page.yml +13 -8
- data/app/forms/dc_user.yml +109 -113
- data/app/helpers/dc_application_helper.rb +3 -1
- data/app/helpers/dc_simple_menu_renderer.rb +6 -4
- data/app/models/dc_page.rb +1 -0
- data/app/views/cmsedit/_result.html.erb +1 -1
- data/config/locales/models_en.yml +3 -0
- data/config/locales/models_sl.yml +7 -4
- data/lib/drg_cms/version.rb +1 -1
- data/lib/examples/extend_database_model/dc_user.rb +19 -0
- data/lib/examples/extend_database_model/dc_user.yml +11 -0
- data/lib/examples/extend_database_model/locale_en.yml +13 -0
- data/lib/examples/extend_database_model/locale_sl.yml +13 -0
- data/lib/examples/image gallery/gallery.yml +58 -0
- data/lib/examples/image gallery/gallery_renderer.rb +74 -0
- data/lib/examples/picture gallery/gallery_renderer.rb +74 -0
- data/lib/examples/responsive/design.erb +35 -0
- data/lib/examples/responsive/mailing.rb +32 -0
- data/lib/examples/responsive/responsive.css +27 -0
- data/lib/examples/responsive/responsive_controller.rb +56 -0
- data/lib/examples/responsive/responsive_renderer.rb +104 -0
- data/lib/examples/responsive/responsive_views/_send_mail.erb +4 -0
- data/lib/tasks/dc_at_the_beginning.rake +103 -12
- metadata +15 -3
- data/lib/tasks/drg_cms_tasks.rake +0 -118
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 65d229ac8eb1045776751d341d8f0d15964a7006
|
4
|
+
data.tar.gz: 035c9ee8254c4c9c2d2933eb498366c73279afc8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: db1f82f1c6c9bd23dbde2e59f687d4ff5890b9169600dba872c538213cb6e60866a20f32a4cb5e2e067246b046effb0975ef67c945dff6708ad1dc2d176d7ce6
|
7
|
+
data.tar.gz: 182856d300f43127a0539b66bfb4339e206c9e68e77e37261a24895b6edb1b8e92d8fffae9fe2ab7b65964d7309c052ce9d48fb31630062d94038d723f37631e
|
@@ -467,7 +467,7 @@ element = $(this).find(':first').attr('id');
|
|
467
467
|
$('.dc-result tr').on('dblclick', function(e) {
|
468
468
|
e.preventDefault();
|
469
469
|
url = this.getAttribute("data");
|
470
|
-
if (url !== null) { location.href = url; }
|
470
|
+
if (url !== null & url.length > 5) { location.href = url; } // prevent when url not set
|
471
471
|
});
|
472
472
|
|
473
473
|
});
|
@@ -109,15 +109,22 @@ end
|
|
109
109
|
# Searches forms path for file_name and returns full file name or nil if not found.
|
110
110
|
#
|
111
111
|
# [Parameters:]
|
112
|
-
# [form_file]
|
112
|
+
# [form_file] Form file name. File name can be passed as gem_name.filename. This can
|
113
|
+
# be useful when you are extending form but want to retain same name as original form
|
114
|
+
# For example. You are extending dc_user form from drg_cms gem and want to
|
115
|
+
# retain same dc_user name. This can be done by setting drg_cms.dc_user to extend option.
|
113
116
|
#
|
114
117
|
# [Return:]
|
115
118
|
# String. Full form file name or nil if not found.
|
116
119
|
########################################################################
|
117
120
|
def dc_find_form_file(form_file)
|
121
|
+
form_path=nil
|
122
|
+
if form_file.match(/\.|\//)
|
123
|
+
form_path,form_file=form_file.split(/\.|\//)
|
124
|
+
end
|
118
125
|
DrgCms.paths(:forms).reverse.each do |path|
|
119
126
|
f = "#{path}/#{form_file}.yml"
|
120
|
-
return f if File.exist?(f)
|
127
|
+
return f if File.exist?(f) and (form_path.nil? or path.to_s.match(/\/#{form_path}\//i))
|
121
128
|
end
|
122
129
|
p "Form file #{form_file} not found!"
|
123
130
|
nil
|
@@ -293,7 +300,7 @@ def dc_process_default_request()
|
|
293
300
|
# Log only visits from non-editors
|
294
301
|
dc_log_visit()
|
295
302
|
end
|
296
|
-
@page_title = @page.
|
303
|
+
@page_title = @page.title.blank? ? "#{@site.page_title}-#{@page.subject}" : @page.title
|
297
304
|
layout = @site.site_layout.to_s.size > 2 ? @site.site_layout : 'content'
|
298
305
|
# render view. inline if defined in design
|
299
306
|
view_filename = ''
|
data/app/forms/dc_page.yml
CHANGED
@@ -42,47 +42,52 @@ form:
|
|
42
42
|
html:
|
43
43
|
size: 50
|
44
44
|
30:
|
45
|
+
name: title
|
46
|
+
type: text_field
|
47
|
+
html:
|
48
|
+
size: 50
|
49
|
+
40:
|
45
50
|
name: alt_link
|
46
51
|
type: text_field
|
47
52
|
html:
|
48
53
|
size: 50
|
49
54
|
text: Alternative link
|
50
|
-
|
55
|
+
50:
|
51
56
|
name: sub_subject
|
52
57
|
type: text_area
|
53
58
|
html:
|
54
59
|
size: 100x10
|
55
|
-
|
60
|
+
60:
|
56
61
|
name: author_name
|
57
62
|
type: text_field
|
58
63
|
html:
|
59
64
|
size: 30
|
60
65
|
|
61
|
-
|
66
|
+
70:
|
62
67
|
name: publish_date
|
63
68
|
type: datetime_select
|
64
69
|
|
65
|
-
|
70
|
+
80:
|
66
71
|
name: picture
|
67
72
|
type: file_select
|
68
73
|
html:
|
69
74
|
size: 50
|
70
|
-
|
75
|
+
90:
|
71
76
|
name: gallery
|
72
77
|
type: text_field
|
73
78
|
html:
|
74
79
|
size: 20
|
75
|
-
|
80
|
+
100:
|
76
81
|
name: valid_from
|
77
82
|
type: datetime_select
|
78
83
|
options:
|
79
84
|
include_blank: true
|
80
|
-
|
85
|
+
110:
|
81
86
|
name: valid_to
|
82
87
|
type: datetime_select
|
83
88
|
options:
|
84
89
|
include_blank: true
|
85
|
-
|
90
|
+
120:
|
86
91
|
name: kats
|
87
92
|
type: multitext_autocomplete
|
88
93
|
search: dc_category.name
|
data/app/forms/dc_user.yml
CHANGED
@@ -28,116 +28,112 @@ form:
|
|
28
28
|
|
29
29
|
actions: standard
|
30
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
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
# 20:
|
142
|
-
# name: password_digest
|
143
|
-
# type: hidden_field
|
31
|
+
tabs:
|
32
|
+
tab1:
|
33
|
+
|
34
|
+
10:
|
35
|
+
name: username
|
36
|
+
type: text_field
|
37
|
+
html:
|
38
|
+
size: 10
|
39
|
+
20:
|
40
|
+
name: title
|
41
|
+
type: text_field
|
42
|
+
html:
|
43
|
+
size: 5
|
44
|
+
30:
|
45
|
+
name: first_name
|
46
|
+
type: text_field
|
47
|
+
html:
|
48
|
+
size: 20
|
49
|
+
|
50
|
+
40:
|
51
|
+
name: middle_name
|
52
|
+
type: text_field
|
53
|
+
html:
|
54
|
+
size: 20
|
55
|
+
|
56
|
+
50:
|
57
|
+
name: last_name
|
58
|
+
type: text_field
|
59
|
+
html:
|
60
|
+
size: 20
|
61
|
+
|
62
|
+
60:
|
63
|
+
name: company
|
64
|
+
type: text_field
|
65
|
+
html:
|
66
|
+
size: 50
|
67
|
+
|
68
|
+
70:
|
69
|
+
name: address
|
70
|
+
type: text_field
|
71
|
+
html:
|
72
|
+
size: 50
|
73
|
+
|
74
|
+
80:
|
75
|
+
name: post
|
76
|
+
type: text_field
|
77
|
+
html:
|
78
|
+
size: 50
|
79
|
+
|
80
|
+
90:
|
81
|
+
name: country
|
82
|
+
type: text_field
|
83
|
+
html:
|
84
|
+
size: 20
|
85
|
+
|
86
|
+
100:
|
87
|
+
name: email
|
88
|
+
type: text_field
|
89
|
+
html:
|
90
|
+
size: 30
|
91
|
+
|
92
|
+
110:
|
93
|
+
name: phone
|
94
|
+
type: text_field
|
95
|
+
html:
|
96
|
+
size: 30
|
97
|
+
|
98
|
+
120:
|
99
|
+
name: birthdate
|
100
|
+
type: date_select
|
101
|
+
options:
|
102
|
+
start_year: 1930
|
103
|
+
|
104
|
+
130:
|
105
|
+
name: picture
|
106
|
+
type: text_field
|
107
|
+
html:
|
108
|
+
size: 50
|
109
|
+
|
110
|
+
140:
|
111
|
+
name: about
|
112
|
+
type: text_area
|
113
|
+
html:
|
114
|
+
size: 100x10
|
115
|
+
|
116
|
+
150:
|
117
|
+
name: password
|
118
|
+
type: password_field
|
119
|
+
html:
|
120
|
+
size: 20
|
121
|
+
|
122
|
+
160:
|
123
|
+
name: password_confirmation
|
124
|
+
type: password_field
|
125
|
+
html:
|
126
|
+
size: 20
|
127
|
+
|
128
|
+
170:
|
129
|
+
name: dc_user_roles
|
130
|
+
type: embedded
|
131
|
+
formname: dc_user_role
|
132
|
+
html:
|
133
|
+
size: 20
|
134
|
+
|
135
|
+
180:
|
136
|
+
name: signature
|
137
|
+
type: text_area
|
138
|
+
html:
|
139
|
+
size: 100x5
|
@@ -44,6 +44,8 @@ attr_reader :form
|
|
44
44
|
# options object
|
45
45
|
attr_reader :options
|
46
46
|
|
47
|
+
# page title
|
48
|
+
attr_accessor :page_title
|
47
49
|
# all parts read from page, design, ...
|
48
50
|
attr_accessor :parts
|
49
51
|
|
@@ -614,7 +616,7 @@ end
|
|
614
616
|
# eval: dc_icon4_boolean
|
615
617
|
############################################################################
|
616
618
|
def dc_icon4_boolean(value)
|
617
|
-
dc_dont?(value) ? fa_icon('square-o lg') : fa_icon('check-square-o lg')
|
619
|
+
dc_dont?(value, true) ? fa_icon('square-o lg') : fa_icon('check-square-o lg')
|
618
620
|
end
|
619
621
|
|
620
622
|
############################################################################
|
@@ -128,7 +128,7 @@ def as_table
|
|
128
128
|
klas = item.id == @selected.id ? "#{div_name}-selected" : "#{div_name}-item"
|
129
129
|
html << "<td class=\"td-#{klas}\">#{ link_4menu(item) }</td>" #
|
130
130
|
end
|
131
|
-
html << "</table>"
|
131
|
+
html << "</tr></table>"
|
132
132
|
end
|
133
133
|
########################################################################
|
134
134
|
# Renders menu as table. This is single level menu only and uses table elements to
|
@@ -274,9 +274,11 @@ def default
|
|
274
274
|
# submenu
|
275
275
|
html << "<div class=\"sub-#{div_name}\">
|
276
276
|
<ul class=\"ul-sub-#{div_name}\">"
|
277
|
-
y = YAML.load(@selected.submenu)
|
278
|
-
y.
|
279
|
-
|
277
|
+
y = YAML.load(@selected.submenu) rescue []
|
278
|
+
if y.class == Array
|
279
|
+
y.each do |k,v|
|
280
|
+
html << "<li class=\"li-sub-#{div_name}\">#{@parent.link_to(v['title'], v['link'])}</li>"
|
281
|
+
end
|
280
282
|
end
|
281
283
|
html << '</ul></div>'
|
282
284
|
end
|
data/app/models/dc_page.rb
CHANGED
@@ -33,6 +33,7 @@ include Mongoid::Document
|
|
33
33
|
include Mongoid::Timestamps
|
34
34
|
|
35
35
|
field :subject, type: String, default: ''
|
36
|
+
field :title, type: String
|
36
37
|
field :subject_link, type: String, default: ''
|
37
38
|
field :alt_link, type: String, default: ''
|
38
39
|
field :sub_subject, type: String, default: ''
|
@@ -11,7 +11,7 @@
|
|
11
11
|
<tr class="dc-<%= cycle("odd","even")%>"
|
12
12
|
data="<%= url_for(action: 'show', controller: 'cmsedit', id: r,
|
13
13
|
readonly: (params[:readonly] ? 2 : 1), table: params[:table],
|
14
|
-
formname: params[:formname], ids: params[:ids]) %>" >
|
14
|
+
formname: params[:formname], ids: params[:ids]) if @form['form']%>" >
|
15
15
|
<%= dc_actions_for_result r %>
|
16
16
|
<%= dc_columns_for_result r %>
|
17
17
|
</tr>
|
@@ -85,6 +85,7 @@ en:
|
|
85
85
|
|
86
86
|
dc_user:
|
87
87
|
tabletitle: Users
|
88
|
+
tab1: Base
|
88
89
|
|
89
90
|
id: Id
|
90
91
|
username: Username
|
@@ -246,6 +247,7 @@ en:
|
|
246
247
|
|
247
248
|
subject: Subject
|
248
249
|
subject_link: Subject link
|
250
|
+
title: Browser title
|
249
251
|
sub_subject: Sub subject
|
250
252
|
picture: Picture
|
251
253
|
gallery: Gallery id
|
@@ -641,6 +643,7 @@ en:
|
|
641
643
|
dc_page:
|
642
644
|
subject: Articles subject
|
643
645
|
subject_link: Friendly link defined
|
646
|
+
title: Browser title. Optimization for SEO.
|
644
647
|
sub_subject: Sub subject, short description of text
|
645
648
|
picture: Picture used in conjunction with page
|
646
649
|
gallery: Picture gallery id used with page. Id defines id's of parts which consist gallery
|
@@ -78,6 +78,7 @@ sl:
|
|
78
78
|
|
79
79
|
dc_user:
|
80
80
|
tabletitle: Uporabniki
|
81
|
+
tab1: Osnova
|
81
82
|
|
82
83
|
id: Id
|
83
84
|
username: Uporabnik
|
@@ -273,9 +274,10 @@ sl:
|
|
273
274
|
3content: Vsebina
|
274
275
|
4parts: Elementi
|
275
276
|
|
276
|
-
subject:
|
277
|
+
subject: Zadeva
|
277
278
|
subject_link: Povezava
|
278
|
-
|
279
|
+
title: Naslov za brskalnik
|
280
|
+
sub_subject: Povzetek
|
279
281
|
picture: Slika
|
280
282
|
gallery: Id galerije
|
281
283
|
alt_link: Alt povezava
|
@@ -667,9 +669,10 @@ sl:
|
|
667
669
|
link_target: Odpri povezavo v novem oknu ali v istem oknu
|
668
670
|
|
669
671
|
dc_page:
|
670
|
-
subject:
|
672
|
+
subject: Zadeva (kratek naslov) sestavka
|
671
673
|
subject_link: Povezava (link) do sestavka
|
672
|
-
sub_subject:
|
674
|
+
sub_subject: Povzetek, kratek opis vsebine
|
675
|
+
title: Naslov, ki se izpiše v gornji vrstici brskalnika. Optimiziraj za SEO.
|
673
676
|
alt_link: Alternativna povezava do sestavka
|
674
677
|
picture: Slika v povezavi s stranjo
|
675
678
|
gallery: Id sestavnih elementov, ki sestavljajo slikovno galerijo te strani.
|