kit_cms 2.3.20 → 2.3.22
Sign up to get free protection for your applications and to get access to all the features.
- data/app/assets/images/kit/toolbar/smile.png +0 -0
- data/app/assets/images/kit/toolbar/wink.gif +0 -0
- data/app/assets/images/kit/toolbar/wink.png +0 -0
- data/app/assets/javascripts/codemirror/editor.js +55 -17
- data/app/assets/javascripts/codemirror/jquery.js +0 -1
- data/app/assets/javascripts/codemirror/ruby.js +196 -0
- data/app/assets/javascripts/jquery.js +3036 -2838
- data/app/assets/javascripts/kit/utilities.js +655 -586
- data/app/assets/stylesheets/codemirror/style.css +1 -1
- data/app/assets/stylesheets/codemirror/theme.css +23 -3
- data/app/assets/stylesheets/kit/calendar.css +6 -1
- data/app/assets/stylesheets/kit/cms/cms.css +36 -0
- data/app/assets/stylesheets/kit/forums.css +5 -1
- data/app/assets/stylesheets/kit/kit.css +3 -1
- data/app/controllers/account_controller.rb +306 -0
- data/app/controllers/ad_controller.rb +2 -0
- data/app/controllers/admin/ad_units_controller.rb +1 -1
- data/app/controllers/admin/ad_zones_controller.rb +15 -0
- data/app/controllers/admin/ads_controller.rb +5 -0
- data/app/controllers/admin/block_controller.rb +1 -65
- data/app/controllers/admin/blocks_controller.rb +2 -0
- data/app/controllers/admin/content_controller.rb +3 -1
- data/app/controllers/admin/dashboard_controller.rb +28 -4
- data/app/controllers/admin/dj_controller.rb +45 -0
- data/app/controllers/admin/help_controller.rb +1 -1
- data/app/controllers/admin/html_asset_controller.rb +0 -12
- data/app/controllers/admin/q_controller.rb +120 -0
- data/app/controllers/admin/user_controller.rb +4 -4
- data/app/controllers/api_controller.rb +34 -0
- data/app/controllers/calendar_controller.rb +1 -1
- data/app/controllers/form_controller.rb +3 -3
- data/app/controllers/forum_controller.rb +39 -29
- data/app/controllers/kit_controller.rb +42 -15
- data/app/controllers/pages_controller.rb +25 -5
- data/app/controllers/q_controller.rb +235 -0
- data/app/controllers/repo_controller.rb +7 -0
- data/app/controllers/user_controller.rb +14 -10
- data/app/controllers/utility_controller.rb +1 -1
- data/app/helpers/account_helper.rb +47 -0
- data/app/helpers/admin/layouts_helper.rb +8 -0
- data/app/helpers/admin/page_templates_helper.rb +8 -0
- data/app/helpers/ads_helper.rb +11 -12
- data/app/helpers/calendar_helper.rb +6 -2
- data/app/helpers/form_data_helper.rb +1 -1
- data/app/helpers/form_helper.rb +8 -0
- data/app/helpers/forum_helper.rb +5 -1
- data/app/helpers/kit_helper.rb +65 -35
- data/app/helpers/kit_modules_helper.rb +4 -0
- data/app/helpers/user_helper.rb +0 -28
- data/app/jobs/page_link_job.rb +34 -0
- data/app/jobs/queue_job.rb +134 -0
- data/app/mailers/notification.rb +10 -0
- data/app/mailers/queue_mailer.rb +13 -0
- data/app/models/ad.rb +6 -6
- data/app/models/ad_unit.rb +1 -1
- data/app/models/ad_zone.rb +4 -0
- data/app/models/block.rb +1 -1
- data/app/models/delayed_job.rb +3 -0
- data/app/models/form.rb +16 -4
- data/app/models/html_asset.rb +19 -4
- data/app/models/html_asset_usage.rb +3 -0
- data/app/models/html_assetable.rb +4 -0
- data/app/models/layout.rb +36 -6
- data/app/models/newsletter.rb +1 -1
- data/app/models/page.rb +36 -2
- data/app/models/page_link.rb +5 -0
- data/app/models/page_template.rb +22 -2
- data/app/models/preference.rb +1 -1
- data/app/models/q_event.rb +12 -0
- data/app/models/q_klass.rb +5 -0
- data/app/models/q_message.rb +9 -0
- data/app/models/q_publisher.rb +35 -0
- data/app/models/q_subscription.rb +7 -0
- data/app/models/q_user.rb +29 -0
- data/app/models/q_users_method.rb +6 -0
- data/app/models/q_users_publisher.rb +6 -0
- data/app/models/user.rb +127 -19
- data/app/models/user_login.rb +4 -0
- data/app/validators/email_validator.rb +14 -0
- data/app/views/account/_edit.html.haml +40 -0
- data/app/views/account/_edit_intro.html.haml +3 -0
- data/app/views/account/_forgotten.html.haml +20 -0
- data/app/views/account/_forgotten_intro.html.haml +5 -0
- data/app/views/account/_sign_in.html.haml +31 -0
- data/app/views/account/_sign_in_intro.html.haml +4 -0
- data/app/views/account/_sign_up.html.haml +51 -0
- data/app/views/account/_sign_up_intro.html.haml +4 -0
- data/app/views/account/edit.html.haml +1 -0
- data/app/views/account/forgotten.html.haml +1 -0
- data/app/views/account/sign_in.html.haml +2 -0
- data/app/views/account/sign_up.html.haml +1 -0
- data/app/views/ad/_buy.html.haml +2 -1
- data/app/views/admin/ad_zones/_form.html.haml +1 -1
- data/app/views/admin/ad_zones/show.html.haml +2 -0
- data/app/views/admin/blocks/_form.html.haml +11 -1
- data/app/views/admin/dashboard/broken_links.html.haml +9 -0
- data/app/views/admin/dashboard/system.html.haml +11 -0
- data/app/views/admin/dj/index.html.haml +43 -0
- data/app/views/admin/form/_form.html.haml +15 -10
- data/app/views/admin/group/index.html.haml +1 -1
- data/app/views/admin/help/edit.html.haml +1 -1
- data/app/views/admin/html_asset/show.html.haml +9 -2
- data/app/views/admin/layouts/show.html.haml +10 -16
- data/app/views/admin/page_templates/_form.html.haml +9 -17
- data/app/views/admin/page_templates/show.html.haml +5 -4
- data/app/views/admin/q/events.html.haml +26 -0
- data/app/views/admin/q/index.html.haml +28 -0
- data/app/views/admin/q/klasses.html.haml +61 -0
- data/app/views/admin/q/messages.html.haml +37 -0
- data/app/views/admin/q/show.html.haml +98 -0
- data/app/views/admin/q/subscriptions.html.haml +26 -0
- data/app/views/admin/q/users.html.haml +27 -0
- data/app/views/admin/snippet/edit.html.erb +1 -1
- data/app/views/admin/snippet/new.html.erb +1 -1
- data/app/views/admin/stylesheet/show.html.haml +1 -1
- data/app/views/admin/user/index.html.erb +15 -6
- data/app/views/admin/user/view.html.erb +5 -4
- data/app/views/admin/views/_form.html.haml +3 -3
- data/app/views/calendar/_buy_tickets.html.haml +1 -1
- data/app/views/calendar/_calendar_entry.html.haml +1 -1
- data/app/views/calendar/_month.html.haml +7 -7
- data/app/views/form/_show.html.haml +1 -1
- data/app/views/forum/_add_post.html.haml +7 -8
- data/app/views/forum/_mod_thread.js.erb +46 -6
- data/app/views/forum/_post_moderation.html.haml +2 -1
- data/app/views/forum/_post_preview.html.haml +1 -9
- data/app/views/forum/_post_scripts.js.erb +29 -5
- data/app/views/forum/fetch_raw.html.haml +1 -0
- data/app/views/forum/moderate.html.haml +1 -0
- data/app/views/forum/topic_index.html.haml +4 -0
- data/app/views/notification/{event.txt.erb → event.text.erb} +0 -0
- data/app/views/notification/forgotten_password.text.erb +2 -0
- data/app/views/pages/content_edit.html.haml +1 -1
- data/app/views/pages/info.html.erb +13 -2
- data/app/views/pages/links.html.haml +63 -0
- data/app/views/user/edit_profile.html.haml +1 -1
- data/app/views/utility/_cm_editor.html.erb +13 -10
- data/app/views/utility/_cm_toolbar_markdown.html.haml +8 -1
- data/app/views/utility/_menu.html.haml +4 -0
- data/app/views/utility/mercury_html.html.haml +1 -0
- data/config/initializers/elastic_search.rb +6 -3
- data/config/initializers/extend_controller.rb +3 -0
- data/config/initializers/string.rb +9 -6
- data/config/initializers/warden.rb +49 -0
- data/config/locales/en.yml +29 -1
- data/config/routes.rb +35 -2
- data/lib/kit_cms.rb +7 -2
- data/lib/tasks/kit.rake +90 -2
- metadata +139 -27
- data/app/controllers/user/confirmations_controller.rb +0 -11
- data/app/controllers/user/passwords_controller.rb +0 -13
- data/app/controllers/user/registrations_controller.rb +0 -110
- data/app/controllers/user/sessions_controller.rb +0 -33
- data/app/controllers/user/unlocks_controller.rb +0 -13
- data/app/views/devise/_links.erb +0 -25
- data/app/views/devise/confirmations/new.html.erb +0 -12
- data/app/views/devise/mailer/confirmation_instructions.html.erb +0 -5
- data/app/views/devise/mailer/reset_password_instructions.html.erb +0 -8
- data/app/views/devise/mailer/unlock_instructions.html.erb +0 -7
- data/app/views/devise/passwords/edit.html.erb +0 -16
- data/app/views/devise/passwords/new.html.erb +0 -12
- data/app/views/devise/registrations/edit.html.erb +0 -28
- data/app/views/devise/registrations/new.html.erb +0 -18
- data/app/views/devise/sessions/new.html.erb +0 -18
- data/app/views/devise/shared/_links.erb +0 -25
- data/app/views/devise/unlocks/new.html.erb +0 -12
- data/app/views/pages/links.html.erb +0 -8
- data/app/views/user/shared/_links.erb +0 -25
- data/config/initializers/devise.rb +0 -196
- data/config/initializers/devise_extender.rb +0 -39
@@ -0,0 +1,34 @@
|
|
1
|
+
class ApiController < ActionController::Base
|
2
|
+
include DomainController
|
3
|
+
|
4
|
+
before_filter :set_system, :except=>[:not_found_404]
|
5
|
+
before_filter :offline, :except=>[:not_found_404, :down_for_maintenance]
|
6
|
+
|
7
|
+
after_filter :clear_session
|
8
|
+
|
9
|
+
def clear_session
|
10
|
+
session.clear
|
11
|
+
request.session_options[:skip] = true
|
12
|
+
end
|
13
|
+
|
14
|
+
def protect_against_forgery?
|
15
|
+
end
|
16
|
+
|
17
|
+
rescue_from Exception, :with => :respond_error
|
18
|
+
|
19
|
+
def respond_error(exception)
|
20
|
+
head :internal_server_error
|
21
|
+
|
22
|
+
logger.error exception.message
|
23
|
+
end
|
24
|
+
|
25
|
+
def offline
|
26
|
+
message = Preference.get_cached(_sid, "down_for_maintenance_message")
|
27
|
+
if message
|
28
|
+
head :service_unavailable, :message=>message
|
29
|
+
return false
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
@@ -19,7 +19,7 @@ class CalendarController < KitController
|
|
19
19
|
item.save
|
20
20
|
|
21
21
|
unless current_user.admin?
|
22
|
-
Notification.moderation_required("Ticket Sales", "Ticket sales set up for #{
|
22
|
+
Notification.moderation_required("Ticket Sales", "Ticket sales set up for #{item.calendar.name}. View: #{Preference.get_cached(_sid, 'host')}/admin/calendar_entries/#{item.id}", _sid).deliver if params[:item_model]=="CalendarEntry"
|
23
23
|
end
|
24
24
|
redirect_to (params[:redirect] || "/") and return
|
25
25
|
end
|
@@ -15,7 +15,7 @@ class FormController < KitController
|
|
15
15
|
search_size = (params[:per] || "25").to_i
|
16
16
|
the_page = (params[:page] || "1").to_i
|
17
17
|
|
18
|
-
search = Tire.search "
|
18
|
+
search = Tire.search "#{index_name}_form_submissions" do
|
19
19
|
query do
|
20
20
|
boolean do
|
21
21
|
must do
|
@@ -39,7 +39,7 @@ class FormController < KitController
|
|
39
39
|
@results = nil
|
40
40
|
end
|
41
41
|
|
42
|
-
kit_render "search", :layout=>"
|
42
|
+
kit_render "search", :layout=>Layout.preference(_sid, "forum-search")
|
43
43
|
end
|
44
44
|
|
45
45
|
|
@@ -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(
|
88
|
+
Notification.form_submission(sub.id, _sid, recipient).deliver
|
89
89
|
end
|
90
90
|
end
|
91
91
|
|
@@ -1,8 +1,6 @@
|
|
1
1
|
include ActionView::Helpers::TextHelper
|
2
2
|
|
3
3
|
class ForumController < KitController
|
4
|
-
append_view_path Layout.resolver
|
5
|
-
layout "forums"
|
6
4
|
before_filter :load_forum_user_options, :only => [:topic_index, :thread, :search, :add_post, :recent, :im_on, :favourites, :thread_last_unread, :index]
|
7
5
|
|
8
6
|
before_filter :is_moderator
|
@@ -10,13 +8,13 @@ class ForumController < KitController
|
|
10
8
|
before_filter :post_order, :only=>[:thread]
|
11
9
|
|
12
10
|
def test
|
13
|
-
kit_render "test", :
|
11
|
+
kit_render "test", :layout_o=>get_layout('index')
|
14
12
|
end
|
15
13
|
|
16
14
|
def moderate
|
17
15
|
redirect_to "/users/sign_in" and return unless @mod
|
18
16
|
@topic_posts = TopicPost.sys(_sid).order("id desc").where(:is_visible=>1).page(params[:page]).per(25)
|
19
|
-
kit_render "moderate", :
|
17
|
+
kit_render "moderate", :layout_o=>get_layout('index')
|
20
18
|
end
|
21
19
|
|
22
20
|
def rate_post
|
@@ -60,7 +58,7 @@ class ForumController < KitController
|
|
60
58
|
@threads = current_user.topic_threads.page(params[:page]).per(@user_options.threads_per_page)
|
61
59
|
@page_title = "Forum: Favourite Threads"
|
62
60
|
@show_watch = true
|
63
|
-
kit_render "thread_list", :
|
61
|
+
kit_render "thread_list", :layout_o=>get_layout('im-watching', ['im-watching', 'threads'])
|
64
62
|
else
|
65
63
|
redirect_to "/users/sign_in"
|
66
64
|
end
|
@@ -72,7 +70,7 @@ class ForumController < KitController
|
|
72
70
|
if current_user
|
73
71
|
@page_title = "Forum: Threads I Posted To"
|
74
72
|
@threads = TopicThread.im_on(current_user, @user_options.threads_per_page, @mod, params[:page])
|
75
|
-
kit_render "thread_list", :
|
73
|
+
kit_render "thread_list", :layout_o=>get_layout('im-on', ['im-on', 'threads'])
|
76
74
|
else
|
77
75
|
redirect_to "/users/sign_in"
|
78
76
|
end
|
@@ -93,7 +91,7 @@ class ForumController < KitController
|
|
93
91
|
@destination_last = true
|
94
92
|
|
95
93
|
respond_to do |format|
|
96
|
-
format.html { kit_render "thread_list", :
|
94
|
+
format.html { kit_render "thread_list", :layout_o=>get_layout('recent', ['recent', 'threads']) }
|
97
95
|
format.rss { render "forum/thread_list.rss" }
|
98
96
|
end
|
99
97
|
end
|
@@ -120,7 +118,7 @@ class ForumController < KitController
|
|
120
118
|
return
|
121
119
|
end
|
122
120
|
|
123
|
-
kit_render "report", :
|
121
|
+
kit_render "report", :layout_o=>get_layout('report')
|
124
122
|
end
|
125
123
|
|
126
124
|
def index
|
@@ -129,7 +127,7 @@ class ForumController < KitController
|
|
129
127
|
@categories = categories.all
|
130
128
|
@page_title = "Forums"
|
131
129
|
@canonical_tag = "/forums"
|
132
|
-
kit_render "index", :
|
130
|
+
kit_render "index", :layout_o=>get_layout('index')
|
133
131
|
end
|
134
132
|
|
135
133
|
def search
|
@@ -151,7 +149,7 @@ class ForumController < KitController
|
|
151
149
|
log = logger
|
152
150
|
|
153
151
|
[ "TopicPost", "TopicThread" ].each do |model|
|
154
|
-
indexes << "
|
152
|
+
indexes << "#{index_name}_#{model.tableize}"
|
155
153
|
KitIndexed.indexed_columns(model).collect { |ic|
|
156
154
|
search_fields << ic[:name] if ic[:user]
|
157
155
|
}
|
@@ -185,7 +183,7 @@ class ForumController < KitController
|
|
185
183
|
@results = nil
|
186
184
|
end
|
187
185
|
|
188
|
-
kit_render "search", :
|
186
|
+
kit_render "search", :layout_o=>get_layout('search')
|
189
187
|
end
|
190
188
|
|
191
189
|
def topic_index
|
@@ -215,7 +213,7 @@ class ForumController < KitController
|
|
215
213
|
@page_title = "Forums: #{@topic.name}"
|
216
214
|
@canonical_tag = "/forums/#{@topic.url}"
|
217
215
|
@meta_description = "Forums"
|
218
|
-
kit_render "topic_index", :
|
216
|
+
kit_render "topic_index", :layout_o=>get_layout('threads')
|
219
217
|
end
|
220
218
|
|
221
219
|
def category_topic_list
|
@@ -292,7 +290,7 @@ class ForumController < KitController
|
|
292
290
|
@page_title = "#{@thread.topic.name} - #{@thread.title}"
|
293
291
|
@canonical_tag = @thread.link
|
294
292
|
|
295
|
-
kit_render "thread", :
|
293
|
+
kit_render "thread", :layout_o=>get_layout('posts')
|
296
294
|
end
|
297
295
|
|
298
296
|
def preview
|
@@ -304,9 +302,11 @@ class ForumController < KitController
|
|
304
302
|
end
|
305
303
|
|
306
304
|
def add_post
|
307
|
-
|
308
|
-
|
309
|
-
|
305
|
+
unless current_user && current_user.admin?
|
306
|
+
return unless anti_spam_okay?
|
307
|
+
return unless sanity_check_okay?
|
308
|
+
return unless check_post_rate?
|
309
|
+
end
|
310
310
|
|
311
311
|
@thread = TopicThread.where(:id=>params[:id]).first
|
312
312
|
redirect_to "/forums" and return unless level_okay(@thread.topic.write_access_level)
|
@@ -325,7 +325,7 @@ class ForumController < KitController
|
|
325
325
|
|
326
326
|
if params[:topic_post][:body] && params[:topic_post][:body].strip.length<2
|
327
327
|
flash[:form_message] = "Your message must be at least 2 characters"
|
328
|
-
kit_render "thread", :
|
328
|
+
kit_render "thread", :layout_o=>get_layout('thread')
|
329
329
|
return
|
330
330
|
end
|
331
331
|
|
@@ -353,7 +353,11 @@ class ForumController < KitController
|
|
353
353
|
@post.update_postnumber
|
354
354
|
end
|
355
355
|
|
356
|
-
|
356
|
+
if request.xhr?
|
357
|
+
render :js=>";"
|
358
|
+
else
|
359
|
+
redirect_to @thread.link_for_post(@post.id, @user_options, @mod)
|
360
|
+
end
|
357
361
|
end
|
358
362
|
|
359
363
|
def comments
|
@@ -392,7 +396,7 @@ class ForumController < KitController
|
|
392
396
|
@threads = nil
|
393
397
|
@page_id = params[:page_id]
|
394
398
|
@about_page_title = Page.find_sys_id(_sid, @page_id).title
|
395
|
-
kit_render "topic_index", :
|
399
|
+
kit_render "topic_index", :layout_o=>get_layout('threads')
|
396
400
|
end
|
397
401
|
|
398
402
|
def create_thread
|
@@ -408,12 +412,12 @@ class ForumController < KitController
|
|
408
412
|
|
409
413
|
if @post.raw_body.strip.length<2
|
410
414
|
flash[:form_message] = "Your message must be at least 2 characters"
|
411
|
-
kit_render "topic_index", :
|
415
|
+
kit_render "topic_index", :layout_o=>get_layout('threads')
|
412
416
|
return
|
413
417
|
end
|
414
418
|
if params[:topic_post][:title].strip.length<2
|
415
419
|
flash[:form_message] = "Title must be at least 4 characters"
|
416
|
-
kit_render "topic_index", :
|
420
|
+
kit_render "topic_index", :layout_o=>get_layout('threads')
|
417
421
|
return
|
418
422
|
end
|
419
423
|
@post.system_id = _sid
|
@@ -563,9 +567,13 @@ class ForumController < KitController
|
|
563
567
|
@post = TopicPost.sys(_sid).where(:id=>params[:id]).first
|
564
568
|
|
565
569
|
if can?(:moderate, self) || (@post.is_visible==1 && @post.topic_thread.is_visible==1 && @post.topic_thread.topic.is_visible==1 && level_okay(@post.topic_thread.topic.read_access_level))
|
566
|
-
|
570
|
+
if params[:editor]
|
571
|
+
render "fetch_raw", :layout=>false, :locals=>{:is_mod=>params[:mod]=="1"}
|
572
|
+
else
|
573
|
+
render :text=>@post.raw_body, :layout_o=>false
|
574
|
+
end
|
567
575
|
else
|
568
|
-
render :text=>"n/a", :
|
576
|
+
render :text=>"n/a", :layout_o=>false
|
569
577
|
end
|
570
578
|
end
|
571
579
|
|
@@ -642,23 +650,25 @@ class ForumController < KitController
|
|
642
650
|
end
|
643
651
|
|
644
652
|
def get_layout(name, names = nil)
|
645
|
-
ll = Rails.cache.fetch("layout-exists-forum-#{name}", :expires_in=>
|
653
|
+
ll = Rails.cache.fetch("layout-exists-forum-#{_sid}-#{name}", :expires_in=>60.seconds) do
|
646
654
|
l = nil
|
647
655
|
names = [name] unless names
|
648
656
|
names.each do |aname|
|
649
|
-
if Layout.name_exists?("forum-#{aname}")
|
657
|
+
if Layout.name_exists?(_sid, "forum-#{aname}")
|
650
658
|
l = "forum-#{aname}"
|
651
659
|
break
|
652
660
|
end
|
653
661
|
end
|
654
662
|
if l==nil
|
655
|
-
if Layout.name_exists?("forum")
|
663
|
+
if Layout.name_exists?(_sid, "forum")
|
656
664
|
l = "forum"
|
657
|
-
else
|
658
|
-
l = "application"
|
659
665
|
end
|
660
666
|
end
|
661
|
-
l
|
667
|
+
if l
|
668
|
+
Layout.sys(_sid).where(:name=>l).first
|
669
|
+
else
|
670
|
+
Layout.preference(_sid, "forum_layout")
|
671
|
+
end
|
662
672
|
end
|
663
673
|
ll
|
664
674
|
end
|
@@ -5,6 +5,7 @@ class KitController < ActionController::Base
|
|
5
5
|
before_filter :set_requested_url, :except=>[:not_found_404]
|
6
6
|
before_filter :set_system, :except=>[:not_found_404]
|
7
7
|
before_filter :offline, :except=>[:not_found_404, :down_for_maintenance]
|
8
|
+
before_filter :check_user
|
8
9
|
before_filter :kit_session, :except=>[:not_found_404]
|
9
10
|
after_filter :kit_session_end, :except=>[:not_found_404]
|
10
11
|
append_view_path Layout.resolver
|
@@ -12,13 +13,23 @@ class KitController < ActionController::Base
|
|
12
13
|
after_filter :check_and_record_goal, :except=>[:not_found_404]
|
13
14
|
|
14
15
|
|
15
|
-
attr_accessor :
|
16
|
+
attr_accessor :layout_being_used
|
16
17
|
attr_accessor :template_being_used
|
17
18
|
attr_accessor :requested_url
|
18
19
|
|
19
20
|
attr_accessor :is_image_request
|
20
21
|
attr_accessor :kit_request
|
21
22
|
|
23
|
+
def check_user
|
24
|
+
return true unless self.kit_system
|
25
|
+
|
26
|
+
u = User.cookie_authenticate(_sid, cookies[:sign_in])
|
27
|
+
if u
|
28
|
+
u.record_signin(_sid, request, 'c')
|
29
|
+
warden.set_user u
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
22
33
|
def set_requested_url
|
23
34
|
self.is_image_request = false
|
24
35
|
self.requested_url = request.fullpath
|
@@ -76,25 +87,25 @@ class KitController < ActionController::Base
|
|
76
87
|
|
77
88
|
def stylesheets
|
78
89
|
if @page
|
79
|
-
return (@page.page_template.layout.stylesheets +
|
90
|
+
return (@page.page_template.layout.stylesheets + @page.page_template.stylesheets).uniq
|
80
91
|
elsif @form
|
81
|
-
return @form.
|
92
|
+
return (@form.stylesheets + @form.layout.stylesheets).uniq
|
82
93
|
else
|
83
94
|
layout = kit_layout_in_use
|
84
95
|
if layout
|
85
|
-
return layout.stylesheets
|
86
|
-
else
|
87
|
-
return ["application"]
|
96
|
+
return layout.stylesheets
|
88
97
|
end
|
89
98
|
end
|
99
|
+
|
100
|
+
return []
|
90
101
|
end
|
91
102
|
|
92
103
|
|
93
104
|
def kit_layout_in_use
|
94
105
|
l = nil
|
95
106
|
|
96
|
-
if self.
|
97
|
-
l =
|
107
|
+
if self.layout_being_used # this gets set if kit_render is being used
|
108
|
+
l = self.layout_being_used
|
98
109
|
else
|
99
110
|
l = @page.layout if @page
|
100
111
|
end
|
@@ -127,12 +138,17 @@ class KitController < ActionController::Base
|
|
127
138
|
@content = render_to_string name, :layout=>false
|
128
139
|
options[:type] = custom_template.template_type || 'erb'
|
129
140
|
options[:inline] = custom_template.body
|
130
|
-
options[:layout] = custom_template.layout.
|
141
|
+
options[:layout] = custom_template.layout.name
|
131
142
|
self.template_being_used = custom_template
|
132
|
-
self.
|
143
|
+
self.layout_id_being_used = custom_template.layout_id
|
133
144
|
super_render options
|
134
145
|
else
|
135
|
-
|
146
|
+
if options[:layout_o]
|
147
|
+
self.layout_being_used = options[:layout_o]
|
148
|
+
options[:layout] = self.layout_being_used.path
|
149
|
+
elsif options[:layout]
|
150
|
+
self.layout_being_used = Layout.sys(_sid).where(:path=>options[:layout]).first rescue nil
|
151
|
+
end
|
136
152
|
super_render name, options
|
137
153
|
end
|
138
154
|
end
|
@@ -239,7 +255,8 @@ HERE
|
|
239
255
|
inline_template = "<div id='page_#{page.id}' class='template_#{error_template.id}'>\n\n" + error_template.body + "\n\n</div>"
|
240
256
|
render :inline=>inline_template, :layout=>error_template.layout.path, :type=>error_template.template_type || 'erb'
|
241
257
|
else
|
242
|
-
render "error/application",
|
258
|
+
render "error/application",
|
259
|
+
:layout=>Layout.sys(_sid).where(:id=>(Preference.getCached(_sid, "error_layout").path || Layout.sys(_sid).first.id)).first.path, :status=>status
|
243
260
|
end
|
244
261
|
end
|
245
262
|
|
@@ -280,12 +297,12 @@ HERE
|
|
280
297
|
end
|
281
298
|
|
282
299
|
def can_use
|
283
|
-
|
300
|
+
authenticate!
|
284
301
|
authorize! :use, self.class
|
285
302
|
end
|
286
303
|
|
287
304
|
def can_moderate
|
288
|
-
|
305
|
+
authenticate!
|
289
306
|
authorize! :moderate, self.class
|
290
307
|
end
|
291
308
|
|
@@ -324,6 +341,13 @@ HERE
|
|
324
341
|
Preference.get_cached(_sid, "app_name")
|
325
342
|
end
|
326
343
|
|
344
|
+
def index_name
|
345
|
+
ElasticSearch::INDEX_NAME
|
346
|
+
end
|
347
|
+
|
348
|
+
def rails_app_name
|
349
|
+
Rails.application.class.to_s.split("::").first
|
350
|
+
end
|
327
351
|
|
328
352
|
def show_form(form)
|
329
353
|
@page_title = form.title
|
@@ -337,7 +361,7 @@ HERE
|
|
337
361
|
end
|
338
362
|
end
|
339
363
|
|
340
|
-
render "form/show", :layout=>
|
364
|
+
render "form/show", :layout=>form.layout.path
|
341
365
|
end
|
342
366
|
|
343
367
|
def captcha_okay?
|
@@ -437,6 +461,9 @@ HERE
|
|
437
461
|
@gibbon = Gibbon.new(Preference.get_cached(_sid,'mailchimp_api_key'))
|
438
462
|
end
|
439
463
|
|
464
|
+
def pref(name)
|
465
|
+
Preference.get_cached(_sid, name)
|
466
|
+
end
|
440
467
|
|
441
468
|
Pagebase = Page.includes([:page_contents_version0, {:page_template=>:layout}, {:block_instances0=>:block}])
|
442
469
|
|
@@ -1,8 +1,7 @@
|
|
1
1
|
class PagesController < KitController
|
2
|
-
|
2
|
+
|
3
3
|
before_filter :load_page, :except=>[:search, :cookie_text, :unique, :index, :new, :create, :stub, :zoom, :terms, :editor_trial]
|
4
4
|
before_filter :can_use, :except=>[:show, :search, :cookie_text, :editor_trial, :save, :redir]
|
5
|
-
|
6
5
|
layout "layouts/cms"
|
7
6
|
|
8
7
|
def copy
|
@@ -91,6 +90,25 @@ class PagesController < KitController
|
|
91
90
|
params[:mode] = 'current' unless params[:mode]
|
92
91
|
end
|
93
92
|
|
93
|
+
def links
|
94
|
+
if params[:refresh]
|
95
|
+
@page.queue_crawl
|
96
|
+
redirect_to "/page/#{@page.id}/info", :notice=>"Request processed"
|
97
|
+
return
|
98
|
+
end
|
99
|
+
|
100
|
+
if params[:deep]
|
101
|
+
Page.sys(_sid).find_each do |p|
|
102
|
+
p.queue_crawl(false)
|
103
|
+
redirect_to "/page/#{@page.id}/info", :notice=>"Request processed"
|
104
|
+
return
|
105
|
+
end
|
106
|
+
|
107
|
+
@page.queue_crawl
|
108
|
+
redirect_to "/page/#{@page.id}/links"
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
94
112
|
def search
|
95
113
|
if params[:search]
|
96
114
|
search_fields = []
|
@@ -100,7 +118,7 @@ class PagesController < KitController
|
|
100
118
|
the_page = (params[:page] || "1").to_i
|
101
119
|
|
102
120
|
[ "Page" ].each do |model|
|
103
|
-
indexes << "
|
121
|
+
indexes << "#{index_name}_#{model.downcase.pluralize}"
|
104
122
|
KitIndexed.indexed_columns(model).collect { |c|
|
105
123
|
search_fields << c[:name] if c[:user]
|
106
124
|
}
|
@@ -117,6 +135,7 @@ class PagesController < KitController
|
|
117
135
|
size search_size
|
118
136
|
filter :term, :system_id=>system_id
|
119
137
|
end
|
138
|
+
logger.info "SEARCH: #{indexes.join(',')} #{search.to_json}"
|
120
139
|
@results = search.results
|
121
140
|
else
|
122
141
|
@results = nil
|
@@ -125,7 +144,7 @@ class PagesController < KitController
|
|
125
144
|
@searched_for = params[:search]
|
126
145
|
|
127
146
|
@show_edit_link = user_can_edit = can?(:use, self)
|
128
|
-
kit_render "pages/search", :
|
147
|
+
kit_render "pages/search", :layout_o=>Layout.preference(_sid, "layout_search")
|
129
148
|
end
|
130
149
|
|
131
150
|
def auto_save_delete
|
@@ -167,6 +186,7 @@ class PagesController < KitController
|
|
167
186
|
@page.updated_at = Time.now
|
168
187
|
@page.save
|
169
188
|
@page.update_index
|
189
|
+
@page.queue_crawl
|
170
190
|
end
|
171
191
|
|
172
192
|
render :js=>""
|
@@ -271,7 +291,7 @@ class PagesController < KitController
|
|
271
291
|
|
272
292
|
if (@page==nil || @page.is_deleted==1 || !@page.is_published?) && !@page.editable && cannot?(:use, self)
|
273
293
|
session[:error_message] = "Page not found"
|
274
|
-
render "/error/404", :status=>404, :
|
294
|
+
render "/error/404", :status=>404, :layout_o=>@page ? @page.dif_template(use_mobile?).layout : false
|
275
295
|
return
|
276
296
|
end
|
277
297
|
|