drg_cms 0.5.5 → 0.5.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0867ef411e20c533abaff83ba61268fffe01be0d
4
- data.tar.gz: 7a249dfea4847991e8437fd9f5b9d9f0445cedd6
3
+ metadata.gz: d887c0659fd8bf3a65bef4b1efb17f8337119c48
4
+ data.tar.gz: 4d950c6bb8e59d9b8973842653c7d1cbb9fd9e4c
5
5
  SHA512:
6
- metadata.gz: 52bf2980ec6fbc9c88314b21b766fa827ec6e482dbf9db06b0d029adec3d4759b5157de196aef1c717ec1c2ac8016f5b9479b3d341fb716ac841f38957360670
7
- data.tar.gz: aced1888c2df9660b106ba36129db5b9eaffb94ff7fae741fd845ac3e665946c5a6e510d37c8c86024870caf8590e93b5300d48a5ef9ca53dcc90f1f6cb4f303
6
+ metadata.gz: 9ea94cdd52753eb84264c8672371f79dd7d0775fbe9e7cbab6038ba612b260dfaaaf8740dfdf57eb9e65e1dc4dd38e8fae981362b11e2b9c4580eb6ebff2c20a
7
+ data.tar.gz: 14dfc42786eaa772a444b5e5fe6e68b6e73cb1e94700f18bc03d2a3f07f61fce7d26d86858061940fa71fe1c4becd0d3d10dbd209cc29b1523f242d92159b35a
@@ -164,7 +164,7 @@ def check_filter_options() #:nodoc:
164
164
  if session[table_name][:filter]
165
165
  field, oper, value = session[table_name][:filter].split( "\t")
166
166
  field = '_id' if field == 'id' # must be
167
- value = /#{value}/ if oper == 'like' # do regex if operation is like
167
+ value = /#{value}/i if oper == 'like' # do regex if operation is like
168
168
  # when field type is ObjectId transform value
169
169
  if model.fields[field] and model.fields[field].type == BSON::ObjectId
170
170
  value = BSON::ObjectId.from_string(value) rescue nil
@@ -63,7 +63,7 @@ def autocomplete
63
63
  r << { label: v[params['search']], value: v[params['search']], id: v.id.to_s }
64
64
  end
65
65
  end
66
- p a
66
+
67
67
  render inline: a.to_json, formats: 'js'
68
68
  end
69
69
 
@@ -103,17 +103,16 @@ end
103
103
  def process_login
104
104
  # Somebody is probably playing
105
105
  return dc_render_404 unless ( params[:record] and params[:record][:username] and params[:record][:password] )
106
-
107
- if params[:record][:password].to_s.size > 0 #password must not be empty
106
+
107
+ unless params[:record][:password].blank? #password must not be empty
108
108
  user = DcUser.find_by(username: params[:record][:username])
109
109
  if user and user.authenticate(params[:record][:password])
110
110
  fill_login_data(user, params[:record][:remember_me].to_i == 1)
111
+ return redirect_to params[:return_to] || '/'
111
112
  end
112
- else
113
- flash[:error] = t('drgcms.invalid_username')
114
- params[:return_to] = params[:return_to_error] # return_to error
115
113
  end
116
- redirect_to params[:return_to] || '/'
114
+ flash[:error] = t('drgcms.invalid_username')
115
+ redirect_to params[:return_to_error] || '/'
117
116
  end
118
117
 
119
118
  ####################################################################
@@ -38,59 +38,59 @@ menu:
38
38
  params:
39
39
  table: dc_design
40
40
  30:
41
+ caption: helpers.label.dc_page.tabletitle
42
+ controller: cmsedit
43
+ picture: dc_page.png
44
+ params:
45
+ table: dc_page
46
+ 40:
41
47
  caption: helpers.label.dc_category.tabletitle
42
48
  controller: cmsedit
43
49
  picture: dc_category.png
44
50
  params:
45
51
  table: dc_category
46
- 40:
47
- caption: helpers.label.dc_page.tabletitle
52
+ 50:
53
+ caption: helpers.label.dc_user.tabletitle
48
54
  controller: cmsedit
49
- picture: dc_page.png
55
+ picture: dc_user.png
50
56
  params:
51
- table: dc_page
52
- 50:
57
+ table: dc_user
58
+ 60:
53
59
  caption: helpers.label.dc_piece.tabletitle
54
60
  controller: cmsedit
55
61
  picture: dc_piece.png
56
62
  params:
57
63
  table: dc_piece
58
- 60:
64
+ 70:
59
65
  caption: helpers.label.dc_link.tabletitle
60
66
  controller: cmsedit
61
67
  picture: dc_link.png
62
68
  params:
63
69
  table: dc_link
64
- 70:
70
+ 80:
65
71
  caption: helpers.label.dc_menu.tabletitle
66
72
  controller: cmsedit
67
73
  picture: dc_menu.png
68
74
  params:
69
75
  table: dc_menu
70
- 80:
76
+ 90:
71
77
  caption: helpers.label.dc_simple_menu.tabletitle
72
78
  controller: cmsedit
73
79
  picture: dc_simple_menu.png
74
80
  params:
75
81
  table: dc_simple_menu
76
- 90:
82
+ 100:
77
83
  caption: helpers.label.dc_poll.tabletitle
78
84
  controller: cmsedit
79
85
  picture: dc_poll.png
80
86
  params:
81
87
  table: dc_poll
82
- 100:
88
+ 110:
83
89
  caption: helpers.label.dc_ad.tabletitle
84
90
  controller: cmsedit
85
91
  picture: dc_ad.png
86
92
  params:
87
93
  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
94
  120:
95
95
  caption: helpers.label.dc_big_table.tabletitle
96
96
  controller: cmsedit
@@ -4,7 +4,7 @@ title: Site design
4
4
  table: dc_design
5
5
 
6
6
  index:
7
- filter: name, description, body as text_field
7
+ filter: description, body as text_field
8
8
  actions: standard
9
9
 
10
10
  result_set:
@@ -12,16 +12,11 @@ result_set:
12
12
  1: edit
13
13
  2:
14
14
  type: duplicate
15
- dup_fields: name,description
15
+ dup_fields: description
16
16
 
17
17
  3: delete
18
- # 4:
19
- # type: edit_embedded
20
- # table: dc_part
21
18
 
22
19
  columns:
23
- 1:
24
- name: name
25
20
  2:
26
21
  name: description
27
22
 
@@ -35,20 +30,22 @@ form:
35
30
  tabs:
36
31
  tab1:
37
32
  10:
38
- name: name
39
- type: text_field
40
- size: 50
41
-
42
- 20:
43
33
  name: description
44
34
  type: text_field
45
35
  html:
46
36
  size: 50
37
+ 20:
38
+ name: site_id
39
+ type: select
40
+ eval: DcSite.choices4_site
41
+ html:
42
+ include_blank: true
47
43
  30:
48
44
  name: rails_view
49
45
  type: text_field
50
46
  html:
51
47
  size: 50
48
+
52
49
  40:
53
50
  name: body
54
51
  type: text_area
@@ -98,7 +98,7 @@ form:
98
98
  10:
99
99
  name: dc_design_id
100
100
  type: select
101
- eval: DcDesign.choices4_design
101
+ eval: DcDesign.choices4_design(@parent.dc_get_site)
102
102
  html:
103
103
  include_blank: true
104
104
  20:
@@ -420,10 +420,9 @@ def dc_columns_for_result(document)
420
420
  eval( "#{v['eval']} '#{document[ v['name'] ]}'")
421
421
  end
422
422
  end
423
- else
424
- dc_format_value(document[ v['name'] ], v['format'])
423
+ else
424
+ document.respond_to?(v['name']) ? dc_format_value(document.send( v['name'] ), v['format']) : "!!! #{v['name']}"
425
425
  end
426
- # td << ">#{value}</td>"
427
426
  html << td << ">#{value}</td>"
428
427
  end
429
428
  end
@@ -73,7 +73,6 @@ class DcDesign
73
73
  include Mongoid::Document
74
74
  include Mongoid::Timestamps
75
75
 
76
- field :name, type: String
77
76
  field :description, type: String, default: ''
78
77
  field :body, type: String, default: ''
79
78
  field :css, type: String, default: ''
@@ -82,17 +81,22 @@ class DcDesign
82
81
  field :active, type: Boolean, default: true
83
82
  field :created_by, type: BSON::ObjectId
84
83
  field :updated_by, type: BSON::ObjectId
84
+ field :site_id, type: BSON::ObjectId
85
85
 
86
86
  embeds_many :dc_parts
87
- # embeds_many :dc_parts, as: :dc_parts
88
-
89
- index( { name: 1 }, { unique: true } )
87
+
88
+ validates_length_of :description, minimum: 5
90
89
 
91
90
  ########################################################################
92
- # Return choices for select for design_id
91
+ # Return choices for select for design_id.
92
+ #
93
+ # If site is passed as parameter, only designs which belong to site or do not
94
+ # have site assigned will be selected. Too much designs to select often confuses
95
+ # end user.
93
96
  ########################################################################
94
- def self.choices4_design
95
- all.sort(name: 1).inject([]) { |r,design| r << [ design.description, design._id] if design.active; r }
97
+ def self.choices4_design(site=nil)
98
+ list = site.nil? ? where(active: true) : where(active: true).in(site_id: [nil,site.id])
99
+ list.sort(name: 1).inject([]) { |r,design| r << [ design.description, design._id] }
96
100
  end
97
101
 
98
102
  end
@@ -72,6 +72,7 @@ en:
72
72
  updated_by: Updated by
73
73
  active: Active
74
74
  dc_parts: Parts
75
+ site_id: Site name
75
76
  rails_view: Rails view filename
76
77
 
77
78
  dc_user_role:
@@ -547,6 +548,7 @@ en:
547
548
  active: Is the design active
548
549
  dc_parts: Parts of design
549
550
  rails_view: Rails view (file) name which will be used to render design
551
+ site_id: Select site name if this design belongs to singe site
550
552
 
551
553
  dc_poll:
552
554
  name: Unique poll name
@@ -75,6 +75,7 @@ sl:
75
75
  active: Aktiven
76
76
  dc_parts: Elementi
77
77
  rails_view: Rails view datoteka
78
+ site_id: Spletišče
78
79
 
79
80
  dc_user:
80
81
  tabletitle: Uporabniki
@@ -520,6 +521,7 @@ sl:
520
521
  active: Ali je dizajn aktiven
521
522
  dc_parts: Elementi, sestavni deli dizajna
522
523
  rails_view: Ime Rails view datoteke, ki bo uporabljena za izris strani
524
+ site_id: Izberite spletišče, če dizajn pripada samo enemu spletišču
523
525
 
524
526
  dc_user:
525
527
  username: Uporabniško ime
@@ -1,4 +1,4 @@
1
1
  module DrgCms #:nodoc:
2
2
  # drg_cms gem version
3
- VERSION = "0.5.5"
3
+ VERSION = "0.5.6"
4
4
  end
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.5
4
+ version: 0.5.6
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-09-02 00:00:00.000000000 Z
11
+ date: 2015-09-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -341,7 +341,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
341
341
  version: '0'
342
342
  requirements: []
343
343
  rubyforge_project:
344
- rubygems_version: 2.2.3
344
+ rubygems_version: 2.2.5
345
345
  signing_key:
346
346
  specification_version: 4
347
347
  summary: 'DRG CMS: Content management system for Ruby, Rails and MongoDB'