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.
@@ -0,0 +1,4 @@
1
+ <div id="mailing"><div class="reklame">DO YOU HAVE AN IDEA?</div>
2
+ <a href="mailto:info.address@mysite.com?subject=Suggestion%20from%20www.mysite.com">
3
+ <%= fa_icon('envelope 2x') %>Click and send as an email.</a>
4
+ </div>
@@ -2,19 +2,20 @@
2
2
  #
3
3
  #########################################################################
4
4
  def ok_to_start
5
- p ''
5
+ p 'bla'
6
6
  # DcPermission.all.delete
7
7
  # DcPolicyRole.all.delete
8
8
  # DcUser.all.delete
9
- if DcPermission.all.size > 0
9
+ p DcPermission.all.to_a
10
+ if DcPermission.all.to_a.size > 0
10
11
  p 'DcPermission (Permissions) collection is not empty! Aborting.'
11
12
  return false
12
13
  end
13
- if DcPolicyRole.all.size > 0
14
+ if DcPolicyRole.all.to_a.size > 0
14
15
  p 'DcUserRole (User roles) collection is not empty! Aborting.'
15
16
  return false
16
17
  end
17
- if DcUser.all.size > 0
18
+ if DcUser.all.to_a.size > 0
18
19
  p 'DcUser (Users) collection is not empty! Aborting.'
19
20
  return false
20
21
  end
@@ -113,6 +114,11 @@ end
113
114
  # Initial database seed
114
115
  ########################################################################
115
116
  def seed
117
+ DcSite.all.delete
118
+ DcSimpleMenu.all.delete
119
+ DcPage.all.delete
120
+ DcPiece.all.delete
121
+
116
122
  if DcSite.all.size > 0
117
123
  p 'DcSite (Sites) collection is not empty! Aborting.'
118
124
  return
@@ -127,6 +133,11 @@ def seed
127
133
  p 'guest role not defined! Aborting.'
128
134
  return
129
135
  end
136
+ # Test site document points to real site document
137
+ site = DcSite.new(
138
+ name: 'test',
139
+ alias_for: 'www.mysite.com')
140
+ site.save
130
141
  # Site document
131
142
  site = DcSite.new(
132
143
  name: 'www.mysite.com',
@@ -138,19 +149,26 @@ def seed
138
149
  files_directory: "files",
139
150
  settings: "ckeditor:\n config_file: /files/ck_config.js\n css_file: /files/ck_css.css\n",
140
151
  site_layout: "content")
152
+ # this should end in application css file
153
+ site.css =<<EOT
154
+ #site-top, #site-main, #site-bottom, #site-menu {
155
+ width: 960px;
156
+ margin: 0px auto;
157
+ padding-top: 5px;}
158
+ EOT
141
159
  site.save
142
- #
160
+ # Default site policy
143
161
  policy = DcPolicy.new(
144
162
  description: "Default policy",
145
163
  is_default: true,
146
164
  message: "Access denied.",
147
165
  name: "Default policy")
148
166
  site.dc_policies << policy
149
- #
150
- rule = DcPolicyRule.new( dc_policy_role_id: sa._id, permission: 4)
151
- policy << rule
152
- rule = DcPolicyRule.new( dc_policy_role_id: guest._id, permission: 1)
153
- policy << rule
167
+ # Policy rules. Administrator can edit guest can view
168
+ rule = DcPolicyRule.new( dc_policy_role_id: sa._id, permission: DcPermission::CAN_EDIT)
169
+ policy.dc_policy_rules << rule
170
+ rule = DcPolicyRule.new( dc_policy_role_id: guest._id, permission: DcPermission::CAN_VIEW)
171
+ policy.dc_policy_rules << rule
154
172
  # Design document
155
173
  design = DcDesign.new(name: 'simple',description: 'Simple page')
156
174
  design.body =<<EOT
@@ -158,7 +176,7 @@ def seed
158
176
  <div id="site-top">
159
177
  <a href="/">SITE LOGO</a>
160
178
  </div>
161
- <div id="site-menu"
179
+ <div id="site-menu">
162
180
  <%= dc_render(:dc_simple_menu, method: 'as_table') %>\
163
181
  </div>
164
182
  <div id="site-main">
@@ -170,13 +188,86 @@ def seed
170
188
  </div>
171
189
  EOT
172
190
  design.save
173
- #
191
+ # Page document
174
192
  page = DcPage.new(
175
193
  subject: 'Home page',
176
194
  subject_link: 'home',
177
195
  dc_design_id: design._id,
178
196
  dc_site_id: site._id,
197
+ publish_date: Time.now,
198
+ body: '<p>First page data</p>'
199
+ )
200
+ page.save
201
+ # Site bottom document
202
+ bottom = DcPiece.new(
203
+ name: 'site-bottom',
204
+ description: 'Site bottom document',
205
+ site_id: site._id,
206
+ body: '<p>(C)opyright by ME</p>'
179
207
  )
208
+ bottom.save
209
+ # Menu
210
+ menu = DcSimpleMenu.new(
211
+ name: "site-menu",
212
+ description: "Menu for my Site",
213
+ )
214
+ menu.css =<<EOT
215
+ .site-menu {
216
+ width:500px;
217
+ margin: 0 auto;
218
+ border-spacing: 0px;
219
+ font-weight: bold;
220
+ border: none;
221
+ }
222
+
223
+ .td-site-menu-item {
224
+ font-size: 18px;
225
+ background-color: #fff;
226
+ border-left: 20px solid #fff;
227
+ border-right: 20px solid #fff;
228
+ padding: 10px;
229
+ text-align: center;
230
+ border-radius: 1px;
231
+ white-space: nowrap
232
+ }
233
+
234
+ .td-site-menu-item:hover {
235
+ background-color: #000;
236
+ }
237
+
238
+ .td-site-menu-selected {
239
+ font-size: 18px;
240
+ background-color: #000;
241
+ border-left: 20px solid white;
242
+ border-right: 20px solid white;
243
+ padding: 10px;
244
+ text-align: center;
245
+ white-space: nowrap;
246
+ }
247
+
248
+ .site-menu a {
249
+ color: #000;
250
+ }
251
+
252
+ .td-site-menu-item:hover a, .td-site-menu-selected a {
253
+ color: #fff;
254
+ }
255
+
256
+ EOT
257
+
258
+ menu.save
259
+ # Items
260
+ item = DcSimpleMenuItem.new(caption: 'Home', link: 'home', order: 10)
261
+ menu.dc_simple_menu_items << item
262
+ # This menu item will be selected when page is displayed
263
+ page.menu_id= item._id
264
+ page.save
265
+ item = DcSimpleMenuItem.new(caption: 'Menu item 2', link: 'menu-item-2', order: 20)
266
+ menu.dc_simple_menu_items << item
267
+ item = DcSimpleMenuItem.new(caption: 'My site', link: 'http://www.drgcms.org',
268
+ target: '_blank', order: 30)
269
+ menu.dc_simple_menu_items << item
270
+ p 'Seed data created succesfully.'
180
271
  end
181
272
 
182
273
  #########################################################################
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.5.2
4
+ version: 0.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Damjan Rems
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-30 00:00:00.000000000 Z
11
+ date: 2015-06-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -281,12 +281,24 @@ files:
281
281
  - lib/drg_cms.rb
282
282
  - lib/drg_cms/engine.rb
283
283
  - lib/drg_cms/version.rb
284
+ - lib/examples/extend_database_model/dc_user.rb
285
+ - lib/examples/extend_database_model/dc_user.yml
286
+ - lib/examples/extend_database_model/locale_en.yml
287
+ - lib/examples/extend_database_model/locale_sl.yml
288
+ - lib/examples/image gallery/gallery.yml
289
+ - lib/examples/image gallery/gallery_renderer.rb
290
+ - lib/examples/picture gallery/gallery_renderer.rb
291
+ - lib/examples/responsive/design.erb
292
+ - lib/examples/responsive/mailing.rb
293
+ - lib/examples/responsive/responsive.css
294
+ - lib/examples/responsive/responsive_controller.rb
295
+ - lib/examples/responsive/responsive_renderer.rb
296
+ - lib/examples/responsive/responsive_views/_send_mail.erb
284
297
  - lib/generators/new_drg_form/USAGE
285
298
  - lib/generators/new_drg_form/new_drg_form_generator.rb
286
299
  - lib/tasks/at_the_beginning.yml
287
300
  - lib/tasks/dc_at_the_beginning.rake
288
301
  - lib/tasks/dc_cleanup.rake
289
- - lib/tasks/drg_cms_tasks.rake
290
302
  - lib/tasks/log_statistics.rb
291
303
  - lib/tasks/send_mail.rake
292
304
  - lib/tasks/site_statistics.rake
@@ -1,118 +0,0 @@
1
- #########################################################################
2
- #
3
- #########################################################################
4
- def ok_to_start
5
- p ''
6
- DcPermission.all.delete
7
- DcPolicyRole.all.delete
8
- DcUser.all.delete
9
- if DcPermission.all.size > 0
10
- p 'DcPermission (Permissions) collection is not empty!'
11
- return false
12
- end
13
- if DcPolicyRole.all.size > 0
14
- p 'DcUserRole (User roles) collection is not empty!'
15
- return false
16
- end
17
- if DcUser.all.size > 0
18
- p 'DcUser (Users) collection is not empty!'
19
- return false
20
- end
21
- true
22
- end
23
-
24
- #########################################################################
25
- #
26
- #########################################################################
27
- def read_input(message, default='')
28
- print "#{message} "
29
- response = STDIN.gets.chomp
30
- response.blank? ? default : response
31
- end
32
-
33
- ########################################################################
34
- #
35
- ########################################################################
36
- def create_superadmin
37
- username = read_input('Enter username for superadmin role:')
38
- return p 'Username should be at least 6 character long' unless username.size >=6
39
- #
40
- password1 = read_input("Enter password for #{username} user :")
41
- return p 'Password should be at least 8 character long' unless password1.size >=8
42
- #
43
- password2 = read_input("Please repeat password for #{username} user :")
44
- return p 'Passwords are not equal' unless password2 == password1
45
- #
46
- # New role
47
- role = DcPolicyRole.new
48
- role.name = 'superadmin'
49
- role.system_name = 'superadmin'
50
- role.save
51
- # User
52
- usr = DcUser.new
53
- usr.username = username
54
- usr.password = password1
55
- usr.password_confirmation = password2
56
- usr.first_name = 'superadmin'
57
- usr.save
58
- # user role
59
- # r = usr.dc_user_roles.new
60
- # r.dc_policy_role_id = role._id
61
- # r.save
62
- r = DcUserRole.new
63
- r.dc_policy_role_id = role._id
64
- usr.dc_user_roles << r
65
- # cmsedit permission
66
- permission = DcPermission.new
67
- permission.table_name = 'Default permission'
68
- permission.is_default = true
69
- permission.save
70
- #
71
- r = DcPolicyRule.new
72
- r.dc_policy_role_id = role._id
73
- r.permission = DcPermission::SUPERADMIN
74
- permission.dc_policy_rules << r
75
- # create login poll
76
- poll = DcPoll.new
77
- poll.name = 'login'
78
- poll.display = 'td'
79
- poll.operation = 'link'
80
- poll.parameters = '/dc_common/process_login'
81
- poll.title = 'Autocreated login form'
82
- poll.save
83
- #
84
- i = poll.dc_poll_items.new
85
- i.name = 'username'
86
- i.size = 15
87
- i.text = 'Username'
88
- i.type = 'text_field'
89
- i.save
90
- #
91
- i = poll.dc_poll_items.new
92
- i.name = 'password'
93
- i.size = 15
94
- i.text = 'Password'
95
- i.type = 'password_field'
96
- i.save
97
- #
98
- i = poll.dc_poll_items.new
99
- i.name = 'send'
100
- i.text = 'Login'
101
- i.type = 'submit_tag'
102
- i.save
103
- #
104
- p "Superadmin user created. Please remember login data #{username}/#{password1}"
105
- end
106
-
107
-
108
- #########################################################################
109
- #
110
- #########################################################################
111
- namespace :drg_cms do
112
- desc "At the beginning god created superadmin"
113
- task :at_the_beginning => :environment do
114
- if ok_to_start
115
- create_superadmin
116
- end
117
- end
118
- end