Do not show announcement in json and rss if no title in I18n.locale

This commit is contained in:
chris 2013-09-17 20:44:00 +08:00
parent 2d714dfa4b
commit 03189092d3
2 changed files with 23 additions and 18 deletions

View File

@ -332,6 +332,7 @@ class Panel::Announcement::BackEnd::BulletinsController < OrbitBackendController
respond_to do |format|
format.json {
custom_bulletins = @bulletins.inject([]) do |data, bulletin|
unless bulletin.title_translations[I18n.locale.to_s].blank?
deadline = bulletin.deadline.nil? ? t(:no_deadline) : display_date_time(bulletin.deadline)
image_url = "#{'/' unless bulletin.image.url.start_with?('/')}#{bulletin.image.url}"
data << {
@ -345,6 +346,8 @@ class Panel::Announcement::BackEnd::BulletinsController < OrbitBackendController
tag: bulletin.sorted_tags.map{|tag| tag.name}
}
end
data
end
render json: JSON.pretty_generate(custom_bulletins)
}
format.rss {

View File

@ -9,6 +9,7 @@ xml.rss :version => "2.0" do
xml.link "#{request.protocol}#{request.host_with_port}#{get_bulletins_panel_announcement_back_end_bulletins_path(bulletin_category_id: @category.try(:id))}.rss"
@bulletins.each do |bulletin|
unless bulletin.title_translations[I18n.locale.to_s].blank?
xml.item do
xml.title bulletin.title
xml.pubDate bulletin.postdate.to_s(:rfc822)
@ -19,3 +20,4 @@ xml.rss :version => "2.0" do
end
end
end
end