Merge branch 'master' into 'master'
return subtitle and image for templates add subtitle and image to return value(hash) See merge request !4
This commit is contained in:
commit
56822ed38c
|
@ -20,10 +20,10 @@ class AnnouncementsController < ApplicationController
|
||||||
# (OrbitHelper.page_number == 1 or OrbitHelper.page_number.nil?) &&
|
# (OrbitHelper.page_number == 1 or OrbitHelper.page_number.nil?) &&
|
||||||
if !params["source"].present?
|
if !params["source"].present?
|
||||||
if !params['tags'].blank?
|
if !params['tags'].blank?
|
||||||
top_anns = Bulletin.where(:title.ne => "",:is_preview.in=>[false,nil], :is_top => true).and(:title.ne => nil).can_display.filter_by_categories([],false).filter_by_tags(params['tags']).to_a
|
top_anns = Bulletin.where(:title.ne => "",:is_preview.in=>[false,nil], :is_top => true).and(:title.ne => nil).can_display.filter_by_categories([],false).filter_by_tags(params['tags']).to_a
|
||||||
else
|
else
|
||||||
top_anns = Bulletin.where(:title.ne => "",:is_preview.in=>[false,nil], :is_top => true).and(:title.ne => nil).can_display.filter_by_categories([],false).filter_by_tags.to_a
|
top_anns = Bulletin.where(:title.ne => "",:is_preview.in=>[false,nil], :is_top => true).and(:title.ne => nil).can_display.filter_by_categories([],false).filter_by_tags.to_a
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if !feeds_anns.blank?
|
if !feeds_anns.blank?
|
||||||
|
@ -31,7 +31,7 @@ class AnnouncementsController < ApplicationController
|
||||||
sorted = announcements.sort{ |k,v| v["postdate"] <=> k["postdate"] }
|
sorted = announcements.sort{ |k,v| v["postdate"] <=> k["postdate"] }
|
||||||
sorted = top_anns + sorted
|
sorted = top_anns + sorted
|
||||||
if params["keywords"].present?
|
if params["keywords"].present?
|
||||||
sorted = sorted.find_all{|anns|
|
sorted = sorted.find_all{|anns|
|
||||||
if anns["source-site"].present?
|
if anns["source-site"].present?
|
||||||
/#{params[:keywords].to_s}/i.match anns["title"]
|
/#{params[:keywords].to_s}/i.match anns["title"]
|
||||||
else
|
else
|
||||||
|
@ -40,7 +40,7 @@ class AnnouncementsController < ApplicationController
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
if params["postdate"].present?
|
if params["postdate"].present?
|
||||||
sorted = sorted.find_all{|anns|
|
sorted = sorted.find_all{|anns|
|
||||||
if anns["source-site"].present?
|
if anns["source-site"].present?
|
||||||
/#{params[:postdate].to_s}/i.match anns["postdate"].strftime("%Y-%m") if !anns["postdate"].nil?
|
/#{params[:postdate].to_s}/i.match anns["postdate"].strftime("%Y-%m") if !anns["postdate"].nil?
|
||||||
else
|
else
|
||||||
|
@ -55,9 +55,9 @@ class AnnouncementsController < ApplicationController
|
||||||
announcements = announcements.find_all{|anns| /#{params[:keywords].to_s}/i.match anns.title}
|
announcements = announcements.find_all{|anns| /#{params[:keywords].to_s}/i.match anns.title}
|
||||||
end
|
end
|
||||||
if params["postdate"].present?
|
if params["postdate"].present?
|
||||||
announcements = announcements.find_all{|anns|
|
announcements = announcements.find_all{|anns|
|
||||||
if !anns.postdate.nil?
|
if !anns.postdate.nil?
|
||||||
/#{params[:postdate].to_s}/i.match anns.postdate.strftime("%Y-%m")
|
/#{params[:postdate].to_s}/i.match anns.postdate.strftime("%Y-%m")
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
@ -76,7 +76,7 @@ class AnnouncementsController < ApplicationController
|
||||||
end
|
end
|
||||||
files = a.bulletin_files.map{|file| { "file_url" => file.file.url, "file_title" => (file.title.blank? ? File.basename(file.file.path) : file.title rescue '') } if file.enabled_for?(locale) } rescue []
|
files = a.bulletin_files.map{|file| { "file_url" => file.file.url, "file_title" => (file.title.blank? ? File.basename(file.file.path) : file.title rescue '') } if file.enabled_for?(locale) } rescue []
|
||||||
files.delete(nil)
|
files.delete(nil)
|
||||||
links = a.bulletin_links.map{|link| { "link_url" => link.url, "link_title" => (link.title.blank? ? link.url : link.title) } } rescue []
|
links = a.bulletin_links.map{|link| { "link_url" => link.url, "link_title" => (link.title.blank? ? link.url : link.title) } } rescue []
|
||||||
author = User.find(a.create_user_id).member_profile.name rescue ""
|
author = User.find(a.create_user_id).member_profile.name rescue ""
|
||||||
desc = a.image_description
|
desc = a.image_description
|
||||||
desc = (desc.nil? || desc == "" ? "announcement image" : desc)
|
desc = (desc.nil? || desc == "" ? "announcement image" : desc)
|
||||||
|
@ -113,7 +113,7 @@ class AnnouncementsController < ApplicationController
|
||||||
# anns = anns.concat(feeds_anns)
|
# anns = anns.concat(feeds_anns)
|
||||||
# total_pages = announcements.total_pages
|
# total_pages = announcements.total_pages
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
"announcements" => anns,
|
"announcements" => anns,
|
||||||
"extras" => {
|
"extras" => {
|
||||||
|
@ -121,7 +121,7 @@ class AnnouncementsController < ApplicationController
|
||||||
"title-head" => t('announcement.table.title'),
|
"title-head" => t('announcement.table.title'),
|
||||||
"date-head" => t('announcement.table.date'),
|
"date-head" => t('announcement.table.date'),
|
||||||
"status-head" => t('announcement.table.status'),
|
"status-head" => t('announcement.table.status'),
|
||||||
"author-head" => t('announcement.table.author'),
|
"author-head" => t('announcement.table.author'),
|
||||||
"subtitle-head" => t('announcement.table.sub_title'),
|
"subtitle-head" => t('announcement.table.sub_title'),
|
||||||
"category-head" => t('announcement.table.category'),
|
"category-head" => t('announcement.table.category'),
|
||||||
"link-head" => t('announcement.table.link'),
|
"link-head" => t('announcement.table.link'),
|
||||||
|
@ -168,7 +168,7 @@ class AnnouncementsController < ApplicationController
|
||||||
"more" => t(:more_plus),
|
"more" => t(:more_plus),
|
||||||
"view_count" => ""
|
"view_count" => ""
|
||||||
}
|
}
|
||||||
if (!x["title"].empty? rescue false)
|
if (!x["title"].empty? rescue false)
|
||||||
fans << x
|
fans << x
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -226,10 +226,10 @@ class AnnouncementsController < ApplicationController
|
||||||
feeds_anns = get_feed_announcements("widget")
|
feeds_anns = get_feed_announcements("widget")
|
||||||
announcements = announcements + feeds_anns
|
announcements = announcements + feeds_anns
|
||||||
if !feeds_anns.blank?
|
if !feeds_anns.blank?
|
||||||
sorted = announcements.sort{ |k,v| v["postdate"] <=> k["postdate"] }
|
sorted = announcements.sort{ |k,v| v["postdate"] <=> k["postdate"] }
|
||||||
sorted = top_anns + sorted
|
sorted = top_anns + sorted
|
||||||
sorted = Kaminari.paginate_array(sorted).page(1).per(OrbitHelper.widget_data_count) rescue []
|
sorted = Kaminari.paginate_array(sorted).page(1).per(OrbitHelper.widget_data_count) rescue []
|
||||||
else
|
else
|
||||||
announcements = top_anns + announcements
|
announcements = top_anns + announcements
|
||||||
sorted = Kaminari.paginate_array(announcements).page(1).per(OrbitHelper.widget_data_count) rescue []
|
sorted = Kaminari.paginate_array(announcements).page(1).per(OrbitHelper.widget_data_count) rescue []
|
||||||
end
|
end
|
||||||
|
@ -245,8 +245,8 @@ class AnnouncementsController < ApplicationController
|
||||||
files = a.bulletin_files.map{|file| { "file_url" => file.file.url, "file_title" => (file.title.blank? ? File.basename(file.file.path) : file.title rescue '') } if file.enabled_for?(locale) } rescue []
|
files = a.bulletin_files.map{|file| { "file_url" => file.file.url, "file_title" => (file.title.blank? ? File.basename(file.file.path) : file.title rescue '') } if file.enabled_for?(locale) } rescue []
|
||||||
files.delete(nil)
|
files.delete(nil)
|
||||||
links = a.bulletin_links.map{|link| { "link_url" => link.url, "link_title" => (link.title.blank? ? link.url : link.title) } } rescue []
|
links = a.bulletin_links.map{|link| { "link_url" => link.url, "link_title" => (link.title.blank? ? link.url : link.title) } } rescue []
|
||||||
author = User.find(a.create_user_id).member_profile.name rescue ""
|
author = User.find(a.create_user_id).member_profile.name rescue ""
|
||||||
desc = a.image_description
|
desc = a.image_description
|
||||||
desc = (desc.nil? || desc == "" ? "announcement image" : desc)
|
desc = (desc.nil? || desc == "" ? "announcement image" : desc)
|
||||||
link_to_show = a.is_external_link ? a.external_link : OrbitHelper.widget_item_url(a.to_param)
|
link_to_show = a.is_external_link ? a.external_link : OrbitHelper.widget_item_url(a.to_param)
|
||||||
target = a.is_external_link ? "_blank" : "_self"
|
target = a.is_external_link ? "_blank" : "_self"
|
||||||
|
@ -267,10 +267,10 @@ class AnnouncementsController < ApplicationController
|
||||||
"img_src" => a.image.thumb.url || "/assets/announcement-default.jpg",
|
"img_src" => a.image.thumb.url || "/assets/announcement-default.jpg",
|
||||||
"img_description" => desc
|
"img_description" => desc
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
anns << a
|
anns << a
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
mp = (anns[0]["img_src"] rescue "")
|
mp = (anns[0]["img_src"] rescue "")
|
||||||
mpd = (anns[0]["img_description"] rescue "")
|
mpd = (anns[0]["img_description"] rescue "")
|
||||||
|
|
||||||
|
@ -322,16 +322,16 @@ class AnnouncementsController < ApplicationController
|
||||||
} } rescue []
|
} } rescue []
|
||||||
files = announcement.bulletin_files.map{|file| { "file_url" => file.file.url, "file_title" => (file.title.blank? ? URI.unescape(File.basename(file.file.path)) : file.title rescue '') } if file.enabled_for?(locale) } rescue []
|
files = announcement.bulletin_files.map{|file| { "file_url" => file.file.url, "file_title" => (file.title.blank? ? URI.unescape(File.basename(file.file.path)) : file.title rescue '') } if file.enabled_for?(locale) } rescue []
|
||||||
files.delete(nil)
|
files.delete(nil)
|
||||||
files.each do |file|
|
files.each do |file|
|
||||||
if file["file_url"] =="" || file["file_url"] == nil
|
if file["file_url"] =="" || file["file_url"] == nil
|
||||||
files.delete(file)
|
files.delete(file)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
links = announcement.bulletin_links.map{|link| { "link_url" => link.url, "link_title" => (link.title.blank? ? link.url : link.title) } } rescue []
|
links = announcement.bulletin_links.map{|link| { "link_url" => link.url, "link_title" => (link.title.blank? ? link.url : link.title) } } rescue []
|
||||||
update_user = announcement.update_user.member_profile.name rescue ""
|
update_user = announcement.update_user.member_profile.name rescue ""
|
||||||
desc = announcement.image_description
|
desc = announcement.image_description
|
||||||
desc = (desc.nil? || desc == "" ? "announcement image" : desc)
|
desc = (desc.nil? || desc == "" ? "announcement image" : desc)
|
||||||
|
|
||||||
request = OrbitHelper.request
|
request = OrbitHelper.request
|
||||||
meta_desc = announcement.subtitle.nil? || announcement.subtitle == "" ? announcement.text[0..200] : announcement.subtitle
|
meta_desc = announcement.subtitle.nil? || announcement.subtitle == "" ? announcement.text[0..200] : announcement.subtitle
|
||||||
OrbitHelper.render_meta_tags([{"property" => "og:title", "content" => announcement.title},{"property" => "og:site_name", "content" => Site.first.title},{"property" => "og:url", "content" => request.original_url.split("?").first},{"property" => "og:description", "content" => meta_desc},{"property" => "og:image", "content" => "#{request.base_url}#{announcement.image.url}"},{"property" => "og:type", "content" => "Article"}])
|
OrbitHelper.render_meta_tags([{"property" => "og:title", "content" => announcement.title},{"property" => "og:site_name", "content" => Site.first.title},{"property" => "og:url", "content" => request.original_url.split("?").first},{"property" => "og:description", "content" => meta_desc},{"property" => "og:image", "content" => "#{request.base_url}#{announcement.image.url}"},{"property" => "og:type", "content" => "Article"}])
|
||||||
|
@ -342,10 +342,12 @@ class AnnouncementsController < ApplicationController
|
||||||
"bulletin_links" => links,
|
"bulletin_links" => links,
|
||||||
"data" => {
|
"data" => {
|
||||||
"title" => announcement.title,
|
"title" => announcement.title,
|
||||||
|
"subtitle_ann" => announcement.subtitle,
|
||||||
"update_user" => update_user,
|
"update_user" => update_user,
|
||||||
"updated_at" => announcement.postdate.strftime('%Y-%m-%d %H:%M'),
|
"updated_at" => announcement.postdate.strftime('%Y-%m-%d %H:%M'),
|
||||||
"body" =>announcement.text,
|
"body" =>announcement.text,
|
||||||
"image" => announcement.image.url,
|
"image" => announcement.image.url,
|
||||||
|
"img_src" => announcement.image.thumb.url || "/assets/announcement-default.jpg",
|
||||||
"alt_title" => desc
|
"alt_title" => desc
|
||||||
},
|
},
|
||||||
"impressionist" => (announcement.is_preview ? nil : announcement),
|
"impressionist" => (announcement.is_preview ? nil : announcement),
|
||||||
|
@ -360,7 +362,7 @@ class AnnouncementsController < ApplicationController
|
||||||
return {} if announcement.blank?
|
return {} if announcement.blank?
|
||||||
tags = []
|
tags = []
|
||||||
|
|
||||||
announcement["tags"].each{|tag|
|
announcement["tags"].each{|tag|
|
||||||
t = Tag.where(:name => tag["name_translations"][locale]).first rescue nil
|
t = Tag.where(:name => tag["name_translations"][locale]).first rescue nil
|
||||||
if t.nil?
|
if t.nil?
|
||||||
I18n.locale = (locale == "en" ? :zh_tw : :en)
|
I18n.locale = (locale == "en" ? :zh_tw : :en)
|
||||||
|
@ -368,24 +370,24 @@ class AnnouncementsController < ApplicationController
|
||||||
I18n.locale = locale.to_sym
|
I18n.locale = locale.to_sym
|
||||||
end
|
end
|
||||||
tags << {
|
tags << {
|
||||||
"tag" => tag["name_translations"][locale],
|
"tag" => tag["name_translations"][locale],
|
||||||
"url" => (t.nil? ? "#" : OrbitHelper.page_for_tag(t))
|
"url" => (t.nil? ? "#" : OrbitHelper.page_for_tag(t))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
files = announcement["bulletin_files"].map{|file| { "file_url" => file["url"], "file_title" => (file["title_translations"][locale] == "" ? URI.unescape(File.basename(file["url"])) : file["title_translations"][locale] rescue '') } } rescue []
|
files = announcement["bulletin_files"].map{|file| { "file_url" => file["url"], "file_title" => (file["title_translations"][locale] == "" ? URI.unescape(File.basename(file["url"])) : file["title_translations"][locale] rescue '') } } rescue []
|
||||||
|
|
||||||
files.each do |file|
|
files.each do |file|
|
||||||
if file["file_url"] =="" || file["file_url"] == nil
|
if file["file_url"] =="" || file["file_url"] == nil
|
||||||
files.delete(file)
|
files.delete(file)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
links = announcement["bulletin_links"].map{|link| { "link_url" => link["url"], "link_title" => (link["title_translations"][locale] == "" ? link["url"] : link["title_translations"][locale]) } } rescue []
|
links = announcement["bulletin_links"].map{|link| { "link_url" => link["url"], "link_title" => (link["title_translations"][locale] == "" ? link["url"] : link["title_translations"][locale]) } } rescue []
|
||||||
|
|
||||||
update_user = announcement["author"]
|
update_user = announcement["author"]
|
||||||
desc = announcement["image_description_translations"][locale] rescue ""
|
desc = announcement["image_description_translations"][locale] rescue ""
|
||||||
desc = (desc.nil? || desc == "" ? "announcement image" : desc)
|
desc = (desc.nil? || desc == "" ? "announcement image" : desc)
|
||||||
|
|
||||||
request = OrbitHelper.request
|
request = OrbitHelper.request
|
||||||
if announcement["subtitle_translations"].present?
|
if announcement["subtitle_translations"].present?
|
||||||
meta_desc = announcement["subtitle_translations"][locale] != "" ? announcement["subtitle_translations"][locale] : announcement["text_translations"][locale][0..200] rescue ""
|
meta_desc = announcement["subtitle_translations"][locale] != "" ? announcement["subtitle_translations"][locale] : announcement["text_translations"][locale][0..200] rescue ""
|
||||||
|
|
|
@ -27,7 +27,7 @@ class BulletinsController < ApplicationController
|
||||||
else
|
else
|
||||||
bulletins = bulletins
|
bulletins = bulletins
|
||||||
end
|
end
|
||||||
|
|
||||||
bulletins = bulletins.where(:is_preview.in=>[false,nil])
|
bulletins = bulletins.where(:is_preview.in=>[false,nil])
|
||||||
bulletins = bulletins.where(:approved.ne => false , :rejected.ne => true)
|
bulletins = bulletins.where(:approved.ne => false , :rejected.ne => true)
|
||||||
bulletins = bulletins.where(:postdate.lt=>Time.now)
|
bulletins = bulletins.where(:postdate.lt=>Time.now)
|
||||||
|
@ -35,7 +35,7 @@ class BulletinsController < ApplicationController
|
||||||
|
|
||||||
bulletins = bulletins.collect do |b|
|
bulletins = bulletins.collect do |b|
|
||||||
image = request.protocol + request.host_with_port + b.image.url rescue nil
|
image = request.protocol + request.host_with_port + b.image.url rescue nil
|
||||||
|
|
||||||
links = b.bulletin_links.collect do |bl|
|
links = b.bulletin_links.collect do |bl|
|
||||||
{
|
{
|
||||||
"title" => bl.title_translations,
|
"title" => bl.title_translations,
|
||||||
|
@ -44,7 +44,7 @@ class BulletinsController < ApplicationController
|
||||||
end rescue nil
|
end rescue nil
|
||||||
|
|
||||||
files = b.bulletin_files.collect do |bf|
|
files = b.bulletin_files.collect do |bf|
|
||||||
file = request.protocol + request.host_with_port + bf.file.url rescue nil
|
file = request.protocol + request.host_with_port + bf.file.url rescue nil
|
||||||
{
|
{
|
||||||
"title" => bf.title_translations,
|
"title" => bf.title_translations,
|
||||||
"description" => bf.description_translations,
|
"description" => bf.description_translations,
|
||||||
|
@ -106,17 +106,17 @@ class BulletinsController < ApplicationController
|
||||||
def smart_convertor(text)
|
def smart_convertor(text)
|
||||||
html_string = text
|
html_string = text
|
||||||
links = html_string.scan(/img.*?src="(.*?)"/i)
|
links = html_string.scan(/img.*?src="(.*?)"/i)
|
||||||
links.each do |link|
|
links.each do |link|
|
||||||
l = link.first
|
l = link.first
|
||||||
new_link = nil
|
new_link = nil
|
||||||
if l.starts_with?("/")
|
if l.starts_with?("/")
|
||||||
new_link = request.protocol + request.host_with_port + l
|
new_link = request.protocol + request.host_with_port + l
|
||||||
elsif l.starts_with?("..")
|
elsif l.starts_with?("..")
|
||||||
l1 = l.gsub("../","")
|
l1 = l.gsub("../","")
|
||||||
new_link = request.protocol + request.host_with_port + "/" + l1
|
new_link = request.protocol + request.host_with_port + "/" + l1
|
||||||
end
|
|
||||||
html_string = html_string.sub(l,new_link) if !new_link.nil?
|
|
||||||
end
|
end
|
||||||
|
html_string = html_string.sub(l,new_link) if !new_link.nil?
|
||||||
|
end
|
||||||
return html_string
|
return html_string
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue