Merge branch 'master' into 'master'
add option for user can change image version at subpart See merge request !9
This commit is contained in:
commit
4dfda03bfd
|
@ -223,6 +223,25 @@ class AnnouncementsController < ApplicationController
|
||||||
|
|
||||||
def pack_data(announcements, top_anns = [])
|
def pack_data(announcements, top_anns = [])
|
||||||
page = Page.where(:module => "announcement").first rescue nil
|
page = Page.where(:module => "announcement").first rescue nil
|
||||||
|
subpart = OrbitHelper.get_current_widget
|
||||||
|
@image_version = 'thumb'
|
||||||
|
if subpart.methods.include? 'select_options'.to_sym
|
||||||
|
ModuleApp.all.select{|tmp| tmp.key.to_s=='announcement'}.each do |modile_app|
|
||||||
|
@show_options = modile_app.show_options rescue nil
|
||||||
|
end
|
||||||
|
subpart.select_options.each do |select_option|
|
||||||
|
if !(@show_options.nil?) && select_option.field_name == @show_options.keys.first.to_s
|
||||||
|
value = YAML.load(select_option.value)
|
||||||
|
if value[I18n.locale] == t('announcement.small_size')
|
||||||
|
@image_version = 'thumb'
|
||||||
|
elsif value[I18n.locale] == t('announcement.medium_size')
|
||||||
|
@image_version = 'mobile'
|
||||||
|
elsif value[I18n.locale] == t('announcement.orignal_size')
|
||||||
|
@image_version = 'orignal'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
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?
|
||||||
|
@ -250,6 +269,13 @@ class AnnouncementsController < ApplicationController
|
||||||
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"
|
||||||
|
if @image_version == 'thumb'
|
||||||
|
image_url = a.image.thumb.url
|
||||||
|
elsif @image_version == 'mobile'
|
||||||
|
image_url = a.image.mobile.url
|
||||||
|
else
|
||||||
|
image_url = a.image.url
|
||||||
|
end
|
||||||
anns << {
|
anns << {
|
||||||
"bulletin_links" => links,
|
"bulletin_links" => links,
|
||||||
"bulletin_files" => files,
|
"bulletin_files" => files,
|
||||||
|
@ -264,7 +290,7 @@ class AnnouncementsController < ApplicationController
|
||||||
"author" => author,
|
"author" => author,
|
||||||
"link_to_show" => link_to_show,
|
"link_to_show" => link_to_show,
|
||||||
"target" => target,
|
"target" => target,
|
||||||
"img_src" => a.image.thumb.url || "/assets/announcement-default.jpg",
|
"img_src" => image_url || "/assets/announcement-default.jpg",
|
||||||
"img_description" => desc
|
"img_description" => desc
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
@ -3,6 +3,10 @@ en:
|
||||||
feed: Feed
|
feed: Feed
|
||||||
import: Import
|
import: Import
|
||||||
announcement:
|
announcement:
|
||||||
|
picture_showing_size: Picture Showing Size
|
||||||
|
orignal_size: Original Size
|
||||||
|
small_size: Small Size
|
||||||
|
medium_size: Medium Size
|
||||||
table:
|
table:
|
||||||
title : Title
|
title : Title
|
||||||
date : Date
|
date : Date
|
||||||
|
|
|
@ -3,6 +3,10 @@ zh_tw:
|
||||||
feed: 供給
|
feed: 供給
|
||||||
import: 匯入
|
import: 匯入
|
||||||
announcement:
|
announcement:
|
||||||
|
picture_showing_size: 圖片顯示大小
|
||||||
|
orignal_size: 原圖大小
|
||||||
|
small_size: 小張縮圖
|
||||||
|
medium_size: 中等縮圖
|
||||||
table:
|
table:
|
||||||
title : 標題
|
title : 標題
|
||||||
date : 張貼日期
|
date : 張貼日期
|
||||||
|
|
|
@ -2,6 +2,19 @@ require "yaml"
|
||||||
module Announcement
|
module Announcement
|
||||||
class Engine < ::Rails::Engine
|
class Engine < ::Rails::Engine
|
||||||
initializer "announcement" do
|
initializer "announcement" do
|
||||||
|
translate_data = Dir["#{Announcement::Engine.root}/config/locales/*.yml"] .map{|yaml_file| YAML.load(File.read(yaml_file))}
|
||||||
|
data = {}
|
||||||
|
key1 = {}
|
||||||
|
value1 = {}
|
||||||
|
value2 = {}
|
||||||
|
value3 = {}
|
||||||
|
translate_data.each do |t_data|
|
||||||
|
key1[t_data.keys[0]] = t_data.values[0]['announcement']['picture_showing_size']
|
||||||
|
value1[t_data.keys[0]] = t_data.values[0]['announcement']['small_size']
|
||||||
|
value2[t_data.keys[0]] = t_data.values[0]['announcement']['medium_size']
|
||||||
|
value3[t_data.keys[0]] = t_data.values[0]['announcement']['orignal_size']
|
||||||
|
end
|
||||||
|
data[key1] = [value1,value2,value3]
|
||||||
OrbitApp.registration "Announcement", :type => "ModuleApp" do
|
OrbitApp.registration "Announcement", :type => "ModuleApp" do
|
||||||
module_label "announcement.announcement"
|
module_label "announcement.announcement"
|
||||||
base_url File.expand_path File.dirname(__FILE__)
|
base_url File.expand_path File.dirname(__FILE__)
|
||||||
|
@ -13,7 +26,11 @@ module Announcement
|
||||||
frontend_enabled
|
frontend_enabled
|
||||||
feeds_url "/xhr/announcements/feeds"
|
feeds_url "/xhr/announcements/feeds"
|
||||||
data_count 1..30
|
data_count 1..30
|
||||||
|
begin
|
||||||
|
show_options data
|
||||||
|
rescue => e
|
||||||
|
puts ['there_was_no_show_option_method',e]
|
||||||
|
end
|
||||||
side_bar do
|
side_bar do
|
||||||
head_label_i18n 'announcement.announcement', icon_class: "icons-megaphone"
|
head_label_i18n 'announcement.announcement', icon_class: "icons-megaphone"
|
||||||
available_for "users"
|
available_for "users"
|
||||||
|
|
Loading…
Reference in New Issue