aboutsummaryrefslogtreecommitdiffstats
path: root/app/controllers/refinery/blog/admin/settings_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/refinery/blog/admin/settings_controller.rb')
-rw-r--r--app/controllers/refinery/blog/admin/settings_controller.rb55
1 files changed, 55 insertions, 0 deletions
diff --git a/app/controllers/refinery/blog/admin/settings_controller.rb b/app/controllers/refinery/blog/admin/settings_controller.rb
new file mode 100644
index 0000000..afa6b2b
--- /dev/null
+++ b/app/controllers/refinery/blog/admin/settings_controller.rb
@@ -0,0 +1,55 @@
+module Refinery
+ module Blog
+ module Admin
+ class SettingsController < ::Refinery::AdminController
+
+ def notification_recipients
+ @recipients = Refinery::Blog::Comment::Notification.recipients
+
+ if request.post?
+ Refinery::Blog::Comment::Notification.recipients = params[:recipients]
+ flash[:notice] = t('updated', :scope => 'admin.blog.settings.notification_recipients',
+ :recipients => Refinery::Blog::Comment::Notification.recipients)
+ unless request.xhr? or from_dialog?
+ redirect_back_or_default(admin_blog_posts_path)
+ else
+ render :text => "<script type='text/javascript'>parent.window.location = '#{admin_blog_posts_path}';</script>",
+ :layout => false
+ end
+ end
+ end
+
+ def moderation
+ enabled = Refinery::Blog::Comment::Moderation.toggle!
+ unless request.xhr?
+ redirect_back_or_default(admin_blog_posts_path)
+ else
+ render :json => {:enabled => enabled},
+ :layout => false
+ end
+ end
+
+ def comments
+ enabled = Refinery::Blog::Comment.toggle!
+ unless request.xhr?
+ redirect_back_or_default(admin_blog_posts_path)
+ else
+ render :json => {:enabled => enabled},
+ :layout => false
+ end
+ end
+
+ def teasers
+ enabled = Refinery::Blog::Post.teaser_enabled_toggle!
+ unless request.xhr?
+ redirect_back_or_default(admin_blog_posts_path)
+ else
+ render :json => {:enabled => enabled},
+ :layout => false
+ end
+ end
+
+ end
+ end
+ end
+end