Class: Gluttonberg::Admin::Content::ArticlesController
- Inherits:
-
BaseController
- Object
- ActionController::Base
- BaseController
- Gluttonberg::Admin::Content::ArticlesController
- Defined in:
- app/controllers/gluttonberg/admin/content/articles_controller.rb
Instance Method Summary collapse
- #create ⇒ Object
- #delete ⇒ Object
- #destroy ⇒ Object
- #duplicate ⇒ Object
- #edit ⇒ Object
- #index ⇒ Object
- #new ⇒ Object
- #show ⇒ Object
- #update ⇒ Object
Instance Method Details
#create ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'app/controllers/gluttonberg/admin/content/articles_controller.rb', line 31 def create params[:gluttonberg_article_localization][:article][:name] = params[:gluttonberg_article_localization][:title] article_attributes = params["gluttonberg_article_localization"].delete(:article) @article = Article.new(article_attributes) if @article.save Locale.all.each do |locale| @article_localization = ArticleLocalization.create(params[:gluttonberg_article_localization].merge(:locale_id => locale.id , :article_id => @article.id)) end flash[:notice] = "The article was successfully created." redirect_to edit_admin_blog_article_path(@article.blog, @article) else render :edit end end |
#delete ⇒ Object
79 80 81 82 83 84 85 86 |
# File 'app/controllers/gluttonberg/admin/content/articles_controller.rb', line 79 def delete display_delete_confirmation( :title => "Delete Article '#{@article.title}'?", :url => admin_blog_article_path(@blog, @article), :return_url => admin_blog_articles_path(@blog), :warning => "" ) end |
#destroy ⇒ Object
88 89 90 91 92 93 94 95 96 97 |
# File 'app/controllers/gluttonberg/admin/content/articles_controller.rb', line 88 def destroy title = @article.current_localization.title if @article.destroy flash[:notice] = "The article was successfully deleted." redirect_to admin_blog_articles_path(@blog) else flash[:error] = "There was an error deleting the Article." redirect_to admin_blog_articles_path(@blog) end end |
#duplicate ⇒ Object
99 100 101 102 103 104 105 106 107 108 109 |
# File 'app/controllers/gluttonberg/admin/content/articles_controller.rb', line 99 def duplicate @duplicated_article = @article.duplicate @duplicated_article.user_id = current_user.id if @duplicated_article flash[:notice] = "The article was successfully duplicated." redirect_to edit_admin_blog_article_path(@blog, @duplicated_article) else flash[:error] = "There was an error duplicating the article." redirect_to admin_blog_articles_path(@blog) end end |
#edit ⇒ Object
46 47 48 49 50 51 52 |
# File 'app/controllers/gluttonberg/admin/content/articles_controller.rb', line 46 def edit @authors = User.all unless params[:version].blank? @version = params[:version] @article.revert_to(@version) end end |
#index ⇒ Object
14 15 16 17 18 |
# File 'app/controllers/gluttonberg/admin/content/articles_controller.rb', line 14 def index conditions = {:blog_id => @blog.id} conditions[:user_id] = current_user.id unless current_user.super_admin? @articles = Article.where( conditions).paginate(:per_page => Gluttonberg::Setting.get_setting("number_of_per_page_items"), :page => params[:page]) end |
#new ⇒ Object
25 26 27 28 29 |
# File 'app/controllers/gluttonberg/admin/content/articles_controller.rb', line 25 def new @article = Article.new @article_localization = ArticleLocalization.new(:article => @article , :locale_id => Locale.first_default.id) @authors = User.all end |
#show ⇒ Object
21 22 23 |
# File 'app/controllers/gluttonberg/admin/content/articles_controller.rb', line 21 def show @comment = Comment.new end |
#update ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'app/controllers/gluttonberg/admin/content/articles_controller.rb', line 54 def update article_attributes = params["gluttonberg_article_localization"].delete(:article) if @article_localization.update_attributes(params[:gluttonberg_article_localization]) article = @article_localization.article article.current_slug = article.slug article.assign_attributes(article_attributes) article.previous_slug = article.current_slug if article.slug_changed? article.save localization_detail = "" if Gluttonberg.localized? localization_detail = " (#{@article_localization.locale.slug}) " end if Gluttonberg.localized? Gluttonberg::Feed.log(current_user,@article_localization,"#{@article_localization.title}#{localization_detail}" , "updated") end flash[:notice] = "The article was successfully updated." redirect_to admin_blog_articles_path(@blog) else flash[:error] = "Sorry, The article could not be updated." render :edit end end |