97 lines
2.3 KiB
Ruby
97 lines
2.3 KiB
Ruby
# -*- encoding : utf-8 -*-
|
|
|
|
class Public::ArticlesController < ApplicationController
|
|
|
|
layout "public"
|
|
|
|
def index
|
|
|
|
@articles = Article.before(Date.today).recents
|
|
|
|
@articles = @articles.page(params[:page]).per(10)
|
|
|
|
|
|
@title = "Articles du blog"
|
|
end
|
|
|
|
def feed
|
|
# this will be the name of the feed displayed on the feed reader
|
|
@title = "Blog de Geneviève gagos"
|
|
|
|
# the news items
|
|
@articles = Article.before(Date.today).recents
|
|
|
|
# this will be our Feed's update timestamp
|
|
@updated = @articles.first.updated_at unless @articles.empty?
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
def tags
|
|
@tag = Tag.find_by_slug(params[:id])
|
|
|
|
|
|
|
|
if @tag
|
|
@title = "tag : "+@tag.name.to_s
|
|
@articles = Kaminari.paginate_array(@tag.recents_articles).page(params[:page]).per(10)
|
|
|
|
|
|
render :template => "public/articles/index"
|
|
else
|
|
redirect_to "/", :notice => "La page que vous demandez n'a pas pu être trouvée.<br /><br />Vous avez donc été redirigé sur notre page d'accueil"
|
|
|
|
end
|
|
end
|
|
|
|
|
|
|
|
|
|
def category
|
|
|
|
|
|
|
|
|
|
@category = Category.find_by_slug(params[:slug])
|
|
@articles = @category.articles.before(Date.today).recents
|
|
@articles = @articles.page(params[:page]).per(10)
|
|
@title = "Articles du blog"
|
|
@index_title = 'Articles de la catégorie "'+@category.name+'"'
|
|
render :action => :index
|
|
|
|
end
|
|
|
|
def archives
|
|
@month = Date.parse("#{params[:year]}/#{params[:month]}").utc.beginning_of_month
|
|
@articles = Article.recents.where("enabled = ? and published_at >= ? and published_at <= ?", true, @month, @month.utc.end_of_month ).before(Date.utc.today)
|
|
@articles = @articles.page(params[:page]).per(10)
|
|
@title = "Articles du blog"
|
|
if [4,8].include?(@month.month)
|
|
@index_title = 'Articles du mois d\''+l(@month, :format => "%B %Y")+''
|
|
else
|
|
@index_title = 'Articles du mois de '+l(@month, :format => "%B %Y")+''
|
|
end
|
|
|
|
render :action => :index
|
|
end
|
|
|
|
|
|
def show
|
|
@article = Article.find_by_slug(params[:id])
|
|
|
|
if @article and @article.enabled
|
|
|
|
@title = @article.title
|
|
@thumbnail_image = @article.image_file.file.large.medium.small.thumb.url if @article.image_file
|
|
|
|
else
|
|
redirect_to "/", :notice => "La page que vous demandez n'a pas pu être trouvée.<br /><br />Vous avez donc été redirigé sur notre page d'accueil"
|
|
|
|
end
|
|
end
|
|
|
|
|
|
end
|