kit_cms 2.3.16 → 2.3.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. data/app/assets/images/kit/toolbar/bold.png +0 -0
  2. data/app/assets/images/kit/toolbar/formatted.png +0 -0
  3. data/app/assets/images/kit/toolbar/image.png +0 -0
  4. data/app/assets/images/kit/toolbar/link.png +0 -0
  5. data/app/assets/images/kit/toolbar/list.png +0 -0
  6. data/app/assets/images/kit/toolbar/numbered_list.png +0 -0
  7. data/app/assets/images/kit/toolbar/preview.png +0 -0
  8. data/app/assets/images/kit/toolbar/quote.png +0 -0
  9. data/app/assets/images/kit/toolbar/redo.png +0 -0
  10. data/app/assets/images/kit/toolbar/underline.png +0 -0
  11. data/app/assets/images/kit/toolbar/undo.png +0 -0
  12. data/app/assets/images/kit/toolbar/video.png +0 -0
  13. data/app/assets/javascripts/codemirror/editor.js +183 -0
  14. data/app/assets/javascripts/codemirror/markdown.js +475 -0
  15. data/app/assets/javascripts/jquery.contextmenu.js +7 -7
  16. data/app/assets/javascripts/kit/kit.js +0 -1
  17. data/app/assets/javascripts/kit/markdown.js +1 -37
  18. data/app/assets/javascripts/kit/tree.js +18 -10
  19. data/app/assets/javascripts/kit/utilities.js +1 -1
  20. data/app/assets/stylesheets/codemirror/editor.css +3 -3
  21. data/app/assets/stylesheets/codemirror/theme.css +76 -1
  22. data/app/assets/stylesheets/kit/calendar.css +58 -97
  23. data/app/assets/stylesheets/kit/cms/cms.css +19 -0
  24. data/app/assets/stylesheets/kit/cms/dsc_tree.css +4 -0
  25. data/app/assets/stylesheets/kit/forums.css +30 -0
  26. data/app/assets/stylesheets/kit/kit.css +0 -1
  27. data/app/controllers/admin/dashboard_controller.rb +11 -2
  28. data/app/controllers/admin/page_templates_controller.rb +14 -1
  29. data/app/controllers/admin/user_controller.rb +2 -3
  30. data/app/controllers/category_controller.rb +5 -6
  31. data/app/controllers/form_controller.rb +1 -1
  32. data/app/controllers/forum_controller.rb +2 -2
  33. data/app/controllers/kit_controller.rb +2 -2
  34. data/app/controllers/pages_controller.rb +24 -0
  35. data/app/controllers/user/passwords_controller.rb +2 -0
  36. data/app/controllers/user/registrations_controller.rb +1 -4
  37. data/app/controllers/user/sessions_controller.rb +2 -0
  38. data/app/controllers/user/unlocks_controller.rb +2 -0
  39. data/app/controllers/user_controller.rb +1 -1
  40. data/app/helpers/calendar_helper.rb +4 -1
  41. data/app/helpers/kit_helper.rb +3 -3
  42. data/app/mailers/notification.rb +3 -3
  43. data/app/models/activity.rb +5 -2
  44. data/app/models/calendar.rb +1 -1
  45. data/app/models/category.rb +18 -4
  46. data/app/models/experiment.rb +2 -0
  47. data/app/models/form_submission.rb +2 -2
  48. data/app/models/html_asset.rb +3 -0
  49. data/app/models/mapping.rb +1 -0
  50. data/app/models/user.rb +1 -1
  51. data/app/views/admin/blocks/_form.html.haml +1 -1
  52. data/app/views/admin/dashboard/user_comments.html.haml +19 -8
  53. data/app/views/admin/experiments/show.html.haml +1 -1
  54. data/app/views/admin/form/_form.html.haml +8 -0
  55. data/app/views/admin/page_templates/_form.html.haml +1 -1
  56. data/app/views/admin/views/_form.html.haml +4 -4
  57. data/app/views/calendar/_calendar_scripts.js.erb +2 -2
  58. data/app/views/calendar/_month.html.haml +58 -27
  59. data/app/views/category/_select_options.html.erb +1 -1
  60. data/app/views/form/_show.html.haml +9 -1
  61. data/app/views/forum/_add_post.html.haml +3 -2
  62. data/app/views/forum/_mod_thread.js.erb +2 -2
  63. data/app/views/forum/_post_scripts.js.erb +1 -2
  64. data/app/views/forum/thread.html.haml +4 -0
  65. data/app/views/layouts/_application.html.erb +1 -0
  66. data/app/views/layouts/minimal.html.erb +2 -2
  67. data/app/views/notification/form_submission.text.erb +2 -0
  68. data/app/views/pages/_form.html.haml +7 -8
  69. data/app/views/pages/_page_scripts.js.erb +1 -3
  70. data/app/views/pages/_page_template_script.js.erb +28 -0
  71. data/app/views/pages/cookie_text.html.haml +1 -1
  72. data/app/views/pages/info.html.erb +2 -2
  73. data/app/views/pages/page_template.html.haml +40 -0
  74. data/app/views/utility/_cm_editor.html.erb +34 -5
  75. data/app/views/utility/_cm_toolbar_markdown.html.haml +49 -0
  76. data/config/initializers/devise_extender.rb +9 -0
  77. data/config/initializers/html_assets.rb +4 -0
  78. data/config/initializers/quiet_asserts.rb +1 -1
  79. data/config/routes.rb +2 -0
  80. metadata +21 -3
@@ -124,6 +124,10 @@
124
124
  color: red !important;
125
125
  }
126
126
 
127
+ .dsc_tree li.not_published {
128
+ color: #888 !important;
129
+ }
130
+
127
131
  .dsc_tree input {
128
132
  font-size: 14px;
129
133
  width: 200px;
@@ -508,3 +508,33 @@ div#forums div.watch a {
508
508
  div#forums div#threads div.mod_actions {
509
509
  width: 600px;
510
510
  }
511
+
512
+ div.markdown_preview {
513
+ background-color: white;
514
+ padding: 10px;
515
+ }
516
+
517
+ div.modal_markdown_preview div.ui-dialog-content {
518
+ border: thin black solid;
519
+ font-family: Arial, "sans serif";
520
+ }
521
+
522
+ div.modal_markdown_preview div.ui-dialog-titlebar {
523
+ height: 20px;
524
+ padding: 10px;
525
+ color: white;
526
+ background-color: #444;
527
+ font-family: Arial, "sans serif";
528
+
529
+ }
530
+
531
+ div.modal_markdown_preview div.ui-dialog-titlebar span.ui-icon-closethick {
532
+ float: right;
533
+ }
534
+
535
+ div.ui-widget-overlay {
536
+ opacity: 0.2;
537
+ background-color: black;
538
+ }
539
+
540
+
@@ -2,7 +2,6 @@
2
2
  *= require './forums'
3
3
  *= require './calendar'
4
4
  *= require './dsc'
5
- *= require './markdown.css'
6
5
  *= require_self
7
6
  */
8
7
 
@@ -5,10 +5,17 @@ class Admin::DashboardController < AdminController
5
5
  comment = Comment.sys(_sid).where(:id=>params[:id]).first
6
6
 
7
7
  if comment
8
- comment.update_attributes(params[:comment])
8
+ if params[:delete]
9
+ comment.destroy
10
+ render :js=>"$('tr.comment_#{comment.id}').remove();"
11
+ else
12
+ comment.update_attributes(params[:comment])
13
+ render :js=>"updated(#{comment.id}, #{comment.is_moderated}, #{comment.is_visible});"
14
+ end
15
+ return
9
16
  end
10
17
 
11
- render :js=>"updated(#{comment.id}, #{comment.is_moderated}, #{comment.is_visible});"
18
+ render :js=>""
12
19
  end
13
20
 
14
21
  def user_comments
@@ -423,7 +430,9 @@ class Admin::DashboardController < AdminController
423
430
  @activity = @activity.includes(:user)
424
431
  end
425
432
  @activity = @activity.where(["category = ?", params[:cat]]) if params[:cat]
433
+ @activity = @activity.sys(_sid)
426
434
  @activity = @activity.order("created_at desc").page(params[:page]).per(100)
435
+
427
436
 
428
437
  if request.xhr?
429
438
  render :partial=>"activity_list"
@@ -1,6 +1,18 @@
1
1
  class Admin::PageTemplatesController < AdminController
2
2
  layout "cms"
3
-
3
+
4
+ def mapping
5
+ template = PageTemplate.sys(_sid).where(:id=>params[:id]).first
6
+ page = template.pages.first
7
+
8
+ if page==nil
9
+ render :js=>"$('#error_explanation').html('You must have already created at least one page with the \'#{template.name}\' template to use it for this page.').show();"
10
+ return
11
+ end
12
+
13
+ render :json=>page.current_content.map { |field| field.field_name }
14
+ end
15
+
4
16
  def pages
5
17
  @page_template = PageTemplate.sys(_sid).where(:id=>params[:id]).first
6
18
 
@@ -27,6 +39,7 @@ class Admin::PageTemplatesController < AdminController
27
39
  @page_template.is_default = 1
28
40
  end
29
41
  @page_template.user_id = current_user.id
42
+ @page_template.system_id = _sid
30
43
  if @page_template.save
31
44
  Activity.add(_sid, "Created Page Template '#{@page_template.name}'", current_user.id, "Page Template")
32
45
  redirect_to [:admin, @page_template], :notice => "Successfully created page template."
@@ -284,13 +284,12 @@ class Admin::UserController < AdminController
284
284
  def stream_csv(users)
285
285
  filename = params[:action] + ".csv"
286
286
 
287
- #this is required if you want this to work with IE
288
287
  csv_headers(filename)
289
288
 
290
289
  csv_string = CSV.generate do |csv|
291
- csv << ["id","email","groups"]
290
+ csv << ["id","email","groups", "attributes"]
292
291
  users.each do |u|
293
- csv << [u.id, u.email, u.groups.join(", ")]
292
+ csv << [u.id, u.email, u.groups.join(", "), u.user_attribute_values.map {|uav| "#{uav.user_attribute.name}:#{uav.value}"}.join(',')]
294
293
  end
295
294
  end
296
295
  render :text => csv_string
@@ -207,9 +207,8 @@ class CategoryController < KitController
207
207
  end
208
208
 
209
209
  if @categories.size>0
210
- html = render_to_string(:partial=>"select_options.html")
211
-
212
- render :js => "$('#page_category_id').html('#{html}'); $('#category_warning').html('');"
210
+ html = render_to_string(:partial=>"select_options").strip
211
+ render :js => "$('#page_category_id').html('#{html}'); $('#category_warning').html(''); "
213
212
  else
214
213
  render :js => "$('#page_category_id').html(''); $('#category_warning').html('No match found');"
215
214
  end
@@ -267,7 +266,7 @@ class CategoryController < KitController
267
266
  def grant_permission(category_id, group_id, mode)
268
267
  cg = CategoryGroup.sys(_sid).where(:category_id=>category_id).where(:group_id=>group_id).first
269
268
  unless cg
270
- cg = CategoryGroup.new(:system_id=>_sid, :category_id=>category_id, :group_id=>group_id)
269
+ cg = CategoryGroup.new(:category_id=>category_id, :group_id=>group_id)
271
270
  end
272
271
  if mode=='read'
273
272
  cg.can_read = 1
@@ -280,9 +279,9 @@ class CategoryController < KitController
280
279
 
281
280
  def revoke_permission(category_id, group_id, mode)
282
281
  if mode=='read'
283
- CategoryGroup.delete_all(["system_id = ? and category_id = ? and group_id = ?", _sid, category_id, group_id])
282
+ CategoryGroup.delete_all(["category_id = ? and group_id = ?", _sid, category_id, group_id])
284
283
  else
285
- cg = CategoryGroup.sys(_sid).where(:category_id=>category_id).where(:group_id=>group_id).first
284
+ cg = CategoryGroup.where(:category_id=>category_id).where(:group_id=>group_id).first
286
285
  if cg
287
286
  cg.can_write = 0
288
287
  cg.save
@@ -85,7 +85,7 @@ class FormController < KitController
85
85
 
86
86
  if @form.notify.not_blank?
87
87
  @form.notify.split(',').each do |recipient|
88
- Notification.form_submission(sub, _sid, recipient).deliver
88
+ Notification.form_submission(sub_id, _sid, recipient).deliver
89
89
  end
90
90
  end
91
91
 
@@ -345,7 +345,7 @@ class ForumController < KitController
345
345
  @thread.last_post_by_user_display_name = current_user.display_name
346
346
  @thread.last_post_at = Time.now
347
347
  @thread.save
348
- @thread.topic.post_count += 1
348
+ @thread.topic.post_count += 1 rescue 1
349
349
  @thread.topic.last_thread_id = @thread.id
350
350
  @thread.topic.last_post_at = Time.now
351
351
  @thread.topic.last_post_id = @post.id
@@ -545,7 +545,7 @@ class ForumController < KitController
545
545
  @post.created_by_user.notes << UserNote.new(:category=>"Forum", :description=>"Removed all posts for spamming", :created_by_id=>current_user)
546
546
  TopicPost.delete_all_by_user(_sid, @post.created_by_user_id, current_user)
547
547
  else
548
- @post.created_by_user.user_notes << UserNote.new(:category=>"Forum", :description=>"Had <a href='#{@post.link}'>post</a> #{params[:delete]=='0' ? '' : 'un'}deleted", :created_by_id=>current_user)
548
+ @post.created_by_user.user_notes << UserNote.new(:category=>"Forum", :description=>"Had <a href='#{@post.link}'>post</a> #{params[:delete]=='0' ? '' : 'un'}deleted", :created_by_id=>current_user.id)
549
549
  end
550
550
 
551
551
  render :js=>"done_delete(#{@post.id}, #{@post.is_visible});"
@@ -239,7 +239,7 @@ HERE
239
239
  inline_template = "<div id='page_#{page.id}' class='template_#{error_template.id}'>\n\n" + error_template.body + "\n\n</div>"
240
240
  render :inline=>inline_template, :layout=>error_template.layout.path, :type=>error_template.template_type || 'erb'
241
241
  else
242
- render "error/application", :layout=>Preference.getCached(_sid, "error_layout") || "error", :status=>status
242
+ render "error/application", :layout=>Preference.getCached(_sid, "error_layout") || "application", :status=>status
243
243
  end
244
244
  end
245
245
 
@@ -337,7 +337,7 @@ HERE
337
337
  end
338
338
  end
339
339
 
340
- render "form/show", :layout=>"application"
340
+ render "form/show", :layout=>((form.respond_to?(:layout) && form.layout) ? form.layout : 'application')
341
341
  end
342
342
 
343
343
  def captcha_okay?
@@ -439,6 +439,30 @@ class PagesController < KitController
439
439
  @terms = @page.terms
440
440
  end
441
441
 
442
+ def page_template
443
+ if request.put?
444
+ page = Page.sys(_sid).where(:id=>params[:id]).first
445
+ return unless page
446
+ notice = nil
447
+ if page.page_template_id != params[:page][:page_template_id]
448
+ new_template = PageTemplate.sys(_sid).where(:id=>params[:page][:page_template_id]).first
449
+ if new_template
450
+ lookup = {}
451
+ page.page_template_id = params[:page][:page_template_id]
452
+ page.save
453
+ params.each do |param_name, new_name|
454
+ if param_name =~ /^f_(.+)$/
455
+ old_name = $1
456
+ PageContent.connection.execute("update page_contents set field_name = '#{new_name}' where field_name = '#{old_name}' and page_id = #{page.id}")
457
+ end
458
+ end
459
+ notice = 'Changes saved'
460
+ end
461
+ end
462
+ redirect_to "/page/#{params[:id]}/info", :notice=>notice
463
+ end
464
+ end
465
+
442
466
  def info
443
467
  if params[:sitemap] && request.post?
444
468
  @page.skip_history
@@ -3,6 +3,8 @@ class User::PasswordsController < Devise::PasswordsController
3
3
  include DomainController
4
4
  include DeviseExtender
5
5
 
6
+ helper_method :stylesheets
7
+
6
8
  before_filter :set_system
7
9
  before_filter { params[:user][:system_id] = _sids if params[:user]}
8
10
 
@@ -14,10 +14,6 @@ class User::RegistrationsController < Devise::RegistrationsController
14
14
  return path.to_s
15
15
  end
16
16
 
17
- def stylesheets
18
- "xxxx"
19
- end
20
-
21
17
  def create
22
18
  self.kit_template = "user/register"
23
19
  build_resource
@@ -62,6 +58,7 @@ class User::RegistrationsController < Devise::RegistrationsController
62
58
  @page_title = "Sign Up"
63
59
  self.kit_template = "user/register"
64
60
 
61
+ session[:captcha_okay] = true
65
62
  if params[:return_to]
66
63
  session[:return_to] = params[:return_to]
67
64
  elsif url = Preference.get_cached(_sid, "url_after_sign_up")
@@ -5,6 +5,8 @@ class User::SessionsController < Devise::SessionsController
5
5
 
6
6
  before_filter :set_system
7
7
  before_filter { params[:user][:system_id] = _sids if params[:user]}
8
+
9
+ helper_method :stylesheets
8
10
 
9
11
  layout "application"
10
12
 
@@ -3,6 +3,8 @@ class User::UnlocksController < Devise::UnlocksController
3
3
  include DomainController
4
4
  include DeviseExtender
5
5
 
6
+ helper_method :stylesheets
7
+
6
8
  before_filter :set_system
7
9
  before_filter { params[:user][:system_id] = _sids if params[:user]}
8
10
 
@@ -73,7 +73,7 @@ class UserController < KitController
73
73
  else
74
74
  uav.value = val
75
75
  end
76
- uav.updated_by = current_user
76
+ uav.updated_by = current_user.id
77
77
  if uav.save
78
78
  at_least_one = true
79
79
  else
@@ -168,7 +168,9 @@ module CalendarHelper
168
168
  last_region_id = nil
169
169
  first = true
170
170
  op = "{ "
171
+ at_least_one = false
171
172
  Subregion.order("regions.name, subregions.name").includes(:region).each do |sr|
173
+ at_least_one = true
172
174
  if sr.region_id != last_region_id
173
175
  if !first
174
176
  op += "],\r\n"
@@ -180,7 +182,8 @@ module CalendarHelper
180
182
  end
181
183
  op += "[ \"#{sr.name}\", #{sr.id} ], "
182
184
  end
183
- op += "]}"
185
+ op += "]" if at_least_one
186
+ op += "}"
184
187
 
185
188
  return op.html_safe
186
189
  end
@@ -96,7 +96,7 @@ module KitHelper
96
96
  s = stylesheets
97
97
  rescue Exception => e
98
98
  s = ['application']
99
- logger.debug "#{e.message}"
99
+ logger.info "#{e.message}"
100
100
  end
101
101
  (additional + s).each do |name|
102
102
  next if name.is_blank?
@@ -142,12 +142,12 @@ module KitHelper
142
142
  link_to_function label, "submit_form(this)", options
143
143
  end
144
144
 
145
- def cm_editor(mode, object, field, form, form_field = nil)
145
+ def cm_editor(mode, object, field, form, form_field = nil, options = {})
146
146
  form_field ||= "#{object}_#{field}"
147
147
 
148
148
  mode = 'htmlmixed' if mode == 'html'
149
149
  mode = 'css' if mode == 'sass' || mode == 'scss'
150
- render :partial=>'utility/cm_editor', :locals=>{:mode=>mode, :field=>field, :form_field=>form_field, :form=>form}
150
+ render :partial=>'utility/cm_editor', :locals=>{:mode=>mode, :field=>field, :form_field=>form_field, :form=>form, :options=>options}
151
151
  end
152
152
 
153
153
  def hide_if(bool)
@@ -30,9 +30,9 @@ class Notification < ActionMailer::Base
30
30
  mail :from=>isfrom(sid),:subject=>"Event #{event.id} occurred: #{event.name}", :to => Preference.getCached(sid, 'notify:event')
31
31
  end
32
32
 
33
- def form_submission(submission,sid, recipient)
34
- @sub = submission
35
-
33
+ def form_submission(submission_id,sid, recipient)
34
+ @sub = FormSubmission.find(submission_id)
35
+ @sid = sid
36
36
  mail :subject=>"#{Preference.getCached(sid,'app_name')} #{@sub.form.title} Submission",
37
37
  :to=>recipient, :from=>isfrom(sid)
38
38
  end
@@ -3,8 +3,11 @@ class Activity < ActiveRecord::Base
3
3
  belongs_to :user
4
4
 
5
5
  attr_accessible :system_id, :name, :user_id, :category, :description
6
- def self.add(sys_id, name, user_id=0, category='', description='')
7
- Activity.create(:user_id=>user_id, :system_id=>sys_id, :name=>name, :category=>category, :description=>description).save
6
+
7
+
8
+ def self.add(sys_id, name, user_or_user_id=0, category='', description='')
9
+ user_or_user_id = 0 if user_or_user_id == nil
10
+ Activity.create(:user_id=>user_or_user_id.is_a?(Integer) ? user_or_user_id : user_or_user_id.id, :system_id=>sys_id, :name=>name, :category=>category, :description=>description).save
8
11
  end
9
12
 
10
13
  end
@@ -6,7 +6,7 @@ class Calendar < ActiveRecord::Base
6
6
  validates :name, :presence=>true, :uniqueness=>true, :length=>{:minimum=>1, :maximum=>200}
7
7
 
8
8
  def entries_between(start_date, end_date, filter, position = nil, distance = nil)
9
- e = self.calendar_entries.where(["(start_date < ? and end_date > ?)", end_date, start_date]).includes({:location=>:subregion})
9
+ e = self.calendar_entries.where(["(start_date <= ? and end_date >= ?)", end_date, start_date]).includes({:location=>:subregion})
10
10
 
11
11
  if filter =~ /subregions.name/
12
12
  e = e.joins({:location=>:subregion})
@@ -91,7 +91,21 @@ class Category < KitIndexed
91
91
 
92
92
  # all categories, in depth order (root at the top)
93
93
  def self.tree_by_depth(sid)
94
- Category.sys(sid).includes(:category_groups).all.sort { |a,b| a.depth <=> b.depth }
94
+ Category.sys(sid).includes(:category_groups).all.sort do |a,b|
95
+ if a.depth < b.depth
96
+ -1
97
+ elsif a.depth > b.depth
98
+ 1
99
+ else
100
+ if a.name < b.name
101
+ -1
102
+ elsif a.name > b.name
103
+ 1
104
+ else
105
+ 0
106
+ end
107
+ end
108
+ end
95
109
  end
96
110
 
97
111
  # all categories, in a hash keyed by parent_id
@@ -109,7 +123,7 @@ class Category < KitIndexed
109
123
  # all categories, in a hash keyed by category_id, with "parent_of" attribute populated with a list of child categories AND child documents
110
124
  def self.tree_with_children(sid)
111
125
  lookup = { }
112
- cats = Category.sys(sid).all
126
+ cats = Category.sys(sid).order(:name).all
113
127
 
114
128
  cats.each do |cat|
115
129
  cat.parent_of = []
@@ -122,7 +136,7 @@ class Category < KitIndexed
122
136
  lookup[cat.parent_id].parent_of << cat
123
137
  end
124
138
 
125
- Page.sys(sid).includes(:status).find_each do |page|
139
+ Page.sys(sid).order(:name).includes(:status).find_each do |page|
126
140
  lookup[page.category_id].parent_of << page
127
141
  end
128
142
 
@@ -168,7 +182,7 @@ class Category < KitIndexed
168
182
  def self.build_permission_cache(sid)
169
183
  @@perms_cache[sid] = {}
170
184
  all_groups = {}
171
- Group.all.collect { |g| all_groups[g.id] = g.name }
185
+ Group.where(:system_id=>sid).all.collect { |g| all_groups[g.id] = g.name }
172
186
  Category.tree_by_depth(sid).each do |cat|
173
187
  permissions = @@perms_cache[sid][cat.parent_id] ? @@perms_cache[sid][cat.parent_id].clone : { :read_groups=>{}, :write_groups=>{} } # start with permissions of parent
174
188
 
@@ -4,6 +4,8 @@ class Experiment < ActiveRecord::Base
4
4
  belongs_to :user
5
5
  belongs_to :goal
6
6
 
7
+ validates :end_date, :presence=>true
8
+
7
9
  after_save { Experiment.flush_cache }
8
10
  after_destroy { Experiment.flush_cache }
9
11
 
@@ -2,9 +2,9 @@ class FormSubmission < KitIndexed
2
2
 
3
3
  FormSubmission.do_indexing :FormSubmission, [
4
4
  {:name=>"id", :index=>:not_analyzed, :include_in_all=>false},
5
- {:name=>"location", :type => 'geo_point', :as=>'"#{self.lat}, #{self.lon}"' },
5
+ {:name=>"location", :type => 'geo_point', :as=>'"#{self.lat ? self.lat : 0}, #{self.lon ? self.lon : 0}"' },
6
6
  {:name=>"created_at", :index=>:not_analyzed, :include_in_all=>false},
7
- {:name=>"marked", :index=>:not_analyzed, :include_in_all=>false},
7
+ {:name=>"marked", :as=>"self.marked ? self.marked : 0", :index=>:not_analyzed, :include_in_all=>false},
8
8
  {:name=>"system_id", :index=>:not_analyzed, :include_in_all=>false},
9
9
  {:name=>"email", :boost=>50 , :as=>"self.user ? self.user.email : ''"},
10
10
  {:name=>"form_id", :boost=>100, :as=>"self.form_id", :include_in_all=>false},