diff --git a/app/controllers/admin/assets_controller.rb b/app/controllers/admin/assets_controller.rb
index d458045bd..91a1a1249 100644
--- a/app/controllers/admin/assets_controller.rb
+++ b/app/controllers/admin/assets_controller.rb
@@ -11,7 +11,7 @@ class Admin::AssetsController < OrbitBackendController
def new
@asset = Asset.new
@asset_categories = AssetCategory.all
- @tags = AssetTag.all
+ @tags = get_tags
respond_to do |format|
format.html {}
format.js { render 'js/show_pop_up', :locals => {:partial => 'admin/assets/new'} }
@@ -21,7 +21,7 @@ class Admin::AssetsController < OrbitBackendController
def edit
@asset = Asset.find(params[:id])
@asset_categories = AssetCategory.all
- @tags = AssetTag.all
+ @tags = get_tags
respond_to do |format|
format.html {}
format.js { render 'js/show_pop_up', :locals => {:partial => 'admin/assets/edit'} }
@@ -46,7 +46,7 @@ class Admin::AssetsController < OrbitBackendController
else
flash[:error] = t('create.fail')
@asset_categories = AssetCategory.all
- @tags = AssetTag.all
+ @tags = get_tags
respond_to do |format|
format.js {
if params[:uploader]
@@ -69,7 +69,7 @@ class Admin::AssetsController < OrbitBackendController
else
flash[:error] = t('update.fail')
@asset_categories = AssetCategory.all
- @tags = AssetTag.all
+ @tags = get_tags
respond_to do |format|
format.html { render :action => :edit }
format.js { render 'js/reload_pop_up', :locals => {:value => @asset, :values => nil, :partial => 'admin/assets/edit', :locals => {:is_html => false}} }
@@ -96,7 +96,7 @@ class Admin::AssetsController < OrbitBackendController
def file_upload
@asset = Asset.new
@asset_categories = AssetCategory.all
- @tags = AssetTag.all
+ @tags = get_tags
render :layout => false
end
diff --git a/app/controllers/default_widget_controller.rb b/app/controllers/default_widget_controller.rb
index 47505dc10..0e0a0ddf3 100644
--- a/app/controllers/default_widget_controller.rb
+++ b/app/controllers/default_widget_controller.rb
@@ -17,25 +17,16 @@ class DefaultWidgetController< OrbitWidgetController
result_objects = nil
if !params["tag_id"].blank?
- @tags = Tag.find(params["tag_id"]) rescue nil
- result_ids = nil
-
- result_ids = @tags.collect{|tag| tag.send(ori_class_name.downcase.pluralize).entries.collect{|t| t.id}}
if params["category_id"].blank? #has tag no cate
- #nothing
+ result = ori_class_name.constantize.where(:tagged_ids.in => params["tag_id"])
else #has tag and cate
- # result_ids = @tags.collect{|tag| tag.send(ori_class_name.downcase.pluralize).where(:#{get_category_field_name(ori_class_name)}.in=>params["category_id"]).available_for_lang(I18n.locale).can_display.collect{|t| t.id}}.flatten
- result_ids << eval("#{ori_class_name}.where(:#{get_category_field_name(ori_class_name)}.in=>params['category_id']).entries.collect{|t| t.id}")
- result_ids.flatten!
-
+ result = eval("#{ori_class_name}.where(:#{get_category_field_name(ori_class_name)}.in=>params['category_id'], :tagged_ids.in => params['tag_id'])")
end
- result = eval("#{ori_class_name}.where(:id=>result_ids)")
elsif params["category_id"].blank? #no tag no cate
result = eval(@default_widget["query"])
else #no tag has cate
result = eval("#{ori_class_name}.where(:#{get_category_field_name(ori_class_name)}.in=>params['category_id'])")
end
- date_now = Time.now
result.available_for_lang(I18n.locale).can_display.desc(:is_top, :postdate)
end
diff --git a/app/models/asset.rb b/app/models/asset.rb
index f8751d57b..d218db564 100644
--- a/app/models/asset.rb
+++ b/app/models/asset.rb
@@ -2,6 +2,8 @@ class Asset
include Mongoid::Document
include Mongoid::Timestamps
+ include OrbitTag::Taggable
+ taggable
mount_uploader :data, FileAssetUploader
@@ -16,18 +18,13 @@ class Asset
belongs_to :asset_category
belongs_to :assetable, polymorphic: true
- has_and_belongs_to_many :tags, :class_name => "AssetTag"
before_save :clean_tags
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
-
protected
def clean_tags
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
diff --git a/app/models/tagging.rb b/app/models/tagging.rb
index b244ce8db..86925c03e 100644
--- a/app/models/tagging.rb
+++ b/app/models/tagging.rb
@@ -6,4 +6,12 @@ class Tagging
belongs_to :tag
belongs_to :taggable, polymorphic: true
+
+ before_destroy :update_taggable_tag_ids
+
+ private
+
+ def update_taggable_tag_ids
+ self.taggable.remove_id(self.tag.id)
+ end
end
\ No newline at end of file
diff --git a/lib/orbit_tag/taggable.rb b/lib/orbit_tag/taggable.rb
index b7a933b38..896bf355e 100644
--- a/lib/orbit_tag/taggable.rb
+++ b/lib/orbit_tag/taggable.rb
@@ -13,17 +13,35 @@ module OrbitTag
def init_tag
class_eval do
field :tags_to_destroy, type: Array, default: []
+ field :tagged_ids, type: Array, default: []
has_many :taggings, as: :taggable, autosave: true, dependent: :destroy
accepts_nested_attributes_for :taggings, allow_destroy: true
after_save :remove_taggings, unless: Proc.new{self.tags_to_destroy.blank?}
+ def remove_id(id)
+ self.class.without_callback(:save, :after, :remove_taggings) do
+ self.update_attribute(:tagged_ids, self.tagged_ids - [id.to_s])
+ end
+ end
+
+ def sorted_tags
+ if tags.blank?
+ []
+ else
+ tag_array = tags.inject([]){ |result, value|
+ result << [value.name, value]
+ }
+ tag_array.sort.map{|x| x[1] }
+ end
+ end
+
def tags
- self.taggings.blank? ? [] : self.taggings.map{|t| t.tag}
+ self.taggings.blank? ? [] : self.taggings.map{|t| t.tag}.compact
end
def tags=(tag_ids)
- tag_ids = [tag_ids].flatten
+ ids = [tag_ids].flatten
tag_ids.delete('')
ids = self.taggings.blank? ? [] : self.taggings.map{|t| t.tag.id}
tag_ids.each do |tag_id|
@@ -40,17 +58,9 @@ module OrbitTag
def tag_ids=(ids)
self.tags = ids
- end
-
- def sorted_tags
- if tags.blank?
- []
- else
- tag_array = tags.inject([]){ |result, value|
- result << [value.name, value]
- }
- tag_array.sort.map{|x| x[1] }
- end
+ ids = [ids].flatten
+ ids.delete('')
+ self.tagged_ids = ids
end
private
diff --git a/vendor/built_in_modules/announcement/app/controllers/panel/announcement/back_end/tags_controller.rb b/vendor/built_in_modules/announcement/app/controllers/panel/announcement/back_end/tags_controller.rb
deleted file mode 100644
index 808d6cc8c..000000000
--- a/vendor/built_in_modules/announcement/app/controllers/panel/announcement/back_end/tags_controller.rb
+++ /dev/null
@@ -1,8 +0,0 @@
-class Panel::Announcement::BackEnd::TagsController < Admin::TagsController
-
- def initialize
- super
- @app_title = 'announcement'
- end
-
-end
diff --git a/vendor/built_in_modules/announcement/app/controllers/panel/announcement/front_end/bulletins_controller.rb b/vendor/built_in_modules/announcement/app/controllers/panel/announcement/front_end/bulletins_controller.rb
index e4bae5e5b..2377438cd 100644
--- a/vendor/built_in_modules/announcement/app/controllers/panel/announcement/front_end/bulletins_controller.rb
+++ b/vendor/built_in_modules/announcement/app/controllers/panel/announcement/front_end/bulletins_controller.rb
@@ -39,17 +39,13 @@ class Panel::Announcement::FrontEnd::BulletinsController < OrbitWidgetController
else
date_now = Time.now
if !params[:category_id].blank? && !params[:tag_id].blank?
- @tag = AnnouncementTag.find(params[:tag_id]) rescue nil
- @tag = AnnouncementTag.where(key: params[:tag_id])[0] unless @tag
- @bulletins = @tag.bulletins.available_for_lang(I18n.locale).can_display.where(:bulletin_category_id => params[:category_id]).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(@page_num)
+ @bulletins = Bulletin.available_for_lang(I18n.locale).can_display.where(:bulletin_category_id => params[:category_id], :tagged_ids => params[:tag_id]).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(@page_num)
@current_category = BulletinCategory.from_id(params[:category_id]) rescue nil
elsif !params[:category_id].blank?
@bulletins = Bulletin.all.available_for_lang(I18n.locale).can_display.where(:bulletin_category_id => params[:category_id]).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(@page_num)
@current_category = BulletinCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank?
- @tag = AnnouncementTag.find(params[:tag_id]) rescue nil
- @tag = AnnouncementTag.where(key: params[:tag_id])[0] unless @tag
- @bulletins = @tag.bulletins.available_for_lang(I18n.locale).can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(@page_num)
+ @bulletins = Bulletin.available_for_lang(I18n.locale).can_display.where(:tagged_ids => params[:tag_id]).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(@page_num)
else
@bulletins = Bulletin.all.available_for_lang(I18n.locale).can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page_main]).per(@page_num)
end
diff --git a/vendor/built_in_modules/announcement/app/controllers/panel/announcement/widget/bulletins_controller.rb b/vendor/built_in_modules/announcement/app/controllers/panel/announcement/widget/bulletins_controller.rb
index c8d328275..f4092bc51 100644
--- a/vendor/built_in_modules/announcement/app/controllers/panel/announcement/widget/bulletins_controller.rb
+++ b/vendor/built_in_modules/announcement/app/controllers/panel/announcement/widget/bulletins_controller.rb
@@ -34,9 +34,7 @@ class Panel::Announcement::Widget::BulletinsController < OrbitWidgetController
@bulletins = Bulletin.available_for_lang(I18n.locale).can_display.where(:bulletin_category_id => @category_id).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page] ).per(@page_num)
@current_category = BulletinCategory.from_id(@category_id) rescue nil
elsif !params[:tag_id].blank?
- @tag = AnnouncementTag.find(params[:tag_id]) rescue nil
- @tag = AnnouncementTag.where(key: params[:tag_id])[0] unless @tag
- @bulletins = @tag.bulletins.available_for_lang(I18n.locale).can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page] ).per(@page_num)
+ @bulletins = Bulletin.available_for_lang(I18n.locale).can_display.where(:tagged_ids => params[:tag_id])any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page] ).per(@page_num)
else
@bulletins = Bulletin.available_for_lang(I18n.locale).can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page] ).per(@page_num)
end
@@ -59,11 +57,9 @@ class Panel::Announcement::Widget::BulletinsController < OrbitWidgetController
@bulletins = Bulletin.all.available_for_lang(I18n.locale).can_display.where(:bulletin_category_id => params[:category_id]).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page]).per(@page_num )
@current_category = BulletinCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank?
- @tag = AnnouncementTag.find(params[:tag_id]) rescue nil
- @tag = AnnouncementTag.where(key: params[:tag_id])[0] unless @tag
- @bulletins = @tag.bulletins.available_for_lang(I18n.locale).can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page]).per(@page_num )
+ @bulletins = Bulletin.available_for_lang(I18n.locale).can_display.where(:tagged_ids => params[:tag_id]).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page] ).per(@page_num)
else
- @bulletins = Bulletin.all.available_for_lang(I18n.locale).can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page]).per(@page_num )
+ @bulletins = Bulletin.available_for_lang(I18n.locale).can_display.any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc( :is_top, :postdate).page( params[:page]).per(@page_num )
end
get_categorys
@@ -71,13 +67,13 @@ class Panel::Announcement::Widget::BulletinsController < OrbitWidgetController
end
def reload_bulletins
- @selected_tag = AnnouncementTag.find(params[:tag_id])
- @bulletins = @selected_tag.get_visible_bulletins(:postdate).available_for_lang(I18n.locale).can_display.page(params[:page]).per(5) rescue nil
+ @selected_tag = Tag.find(params[:tag_id])
+ @bulletins = Bulletin.available_for_lang(I18n.locale).can_display.where(:tagged_ids => params[:tag_id]).where(:is_hidden => false).any_of( {deadline: nil,:postdate.lte => date_now} , {:deadline.gte => date_now,:postdate.lte => date_now} ).desc(:is_top, sort).page(params[:page]).per(5) rescue nil
end
def reload_web_links
- @selected_tag = AnnouncementTag.find(params[:tag_id])
- @web_links = WebResourceTag.first(:conditions => {:en => @selected_tag[:en]}).get_visible_links(:created_at).available_for_lang(I18n.locale).page(params[:page]).per(5) rescue nil
+ @selected_tag = Tag.find(params[:tag_id])
+ @web_links = WebLink.where(:name => @selected_tag.name).where(:is_hidden => false).desc(:is_top, sort).available_for_lang(I18n.locale).page(params[:page]).per(5) rescue nil
end
def bulletins_side_bar
diff --git a/vendor/built_in_modules/announcement/app/models/bulletin.rb b/vendor/built_in_modules/announcement/app/models/bulletin.rb
index 77577ad1d..e84b020fc 100644
--- a/vendor/built_in_modules/announcement/app/models/bulletin.rb
+++ b/vendor/built_in_modules/announcement/app/models/bulletin.rb
@@ -199,11 +199,6 @@ class Bulletin
return nil
end
- # def sorted_tags
- # tags.order_by(I18n.locale, :asc)
- # end
-
-
def to_preview
preview_object = Preview.new(:expired_at=>DateTime.now+30.minutes,:preview_at_link=>"panel_announcement_front_end_bulletin_path",:object_class_type=>"Bulletin")
diff --git a/vendor/built_in_modules/announcement/app/views/panel/announcement/widget/bulletins/bulletins_list.html.erb b/vendor/built_in_modules/announcement/app/views/panel/announcement/widget/bulletins/bulletins_list.html.erb
index a07d11257..8e36ae8fa 100644
--- a/vendor/built_in_modules/announcement/app/views/panel/announcement/widget/bulletins/bulletins_list.html.erb
+++ b/vendor/built_in_modules/announcement/app/views/panel/announcement/widget/bulletins/bulletins_list.html.erb
@@ -16,7 +16,7 @@
prev
next
- <% tag.bulletins.each do |post| %>
+ <% Bulletin.where(:tagged_ids => tag).each do |post| %>
- <%= link_to post.title, panel_announcement_front_end_bulletin_path(post) %>
<% end %>
diff --git a/vendor/built_in_modules/archive/app/controllers/panel/archive/front_end/archive_files_controller.rb b/vendor/built_in_modules/archive/app/controllers/panel/archive/front_end/archive_files_controller.rb
index 1b4a9202a..80cc6064e 100644
--- a/vendor/built_in_modules/archive/app/controllers/panel/archive/front_end/archive_files_controller.rb
+++ b/vendor/built_in_modules/archive/app/controllers/panel/archive/front_end/archive_files_controller.rb
@@ -20,10 +20,7 @@ class Panel::Archive::FrontEnd::ArchiveFilesController < OrbitWidgetController
# @archive_files = ArchiveFile.where( :is_hidden => false ).desc(:is_top).page(params[:page]).per(@page_num)
if !params[:category_id].blank? && !params[:tag_id].blank?
- @tag = ArchiveTag.find(params[:tag_id]) rescue nil
- @tag = ArchiveTag.where(key: params[:tag_id])[0] unless @tag
- @archive_files = @tag.archive_files.can_display.desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
- @archive_files = @archive_files.can_display.where(:archive_file_category_id.in => params[:category_id]).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
+ @archive_files = @archive_files.can_display.where(:archive_file_category_id.in => params[:category_id], :tagged_ids.in => params[:tag_id]).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
@current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil
@@ -31,9 +28,7 @@ class Panel::Archive::FrontEnd::ArchiveFilesController < OrbitWidgetController
@archive_files = ArchiveFile.can_display.where(:archive_file_category_id.in => params[:category_id]).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
@current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank?
- @tag = ArchiveTag.find(params[:tag_id]) rescue nil
- @tag = ArchiveTag.where(key: params[:tag_id])[0] unless @tag
- @archive_files = @tag.archive_files.can_display.desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
+ @archive_files = ArchiveFile.can_display.where(:tagged_ids.in => params[:tag_id]).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
else
@archive_files = ArchiveFile.can_display.desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
end
@@ -66,9 +61,7 @@ class Panel::Archive::FrontEnd::ArchiveFilesController < OrbitWidgetController
@archive_files = ArchiveFile.can_display.where(:archive_file_category_id => params[:category_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
@current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank?
- @tag = ArchiveTag.find(params[:tag_id]) rescue nil
- @tag = ArchiveTag.where(key: params[:tag_id])[0] unless @tag
- @archive_files = @tag.archive_files.can_display.desc( :is_top ).page( params[:page_main] ).per(@page_num)
+ @archive_files = ArchiveFile.can_display.where(:tagged_ids => params[:tag_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
else
@archive_files = ArchiveFile.can_display.desc( :is_top ).page( params[:page_main] ).per(@page_num)
end
diff --git a/vendor/built_in_modules/archive/app/controllers/panel/archive/widget/archive_files_controller.rb b/vendor/built_in_modules/archive/app/controllers/panel/archive/widget/archive_files_controller.rb
index 3779e1e74..0379a371e 100644
--- a/vendor/built_in_modules/archive/app/controllers/panel/archive/widget/archive_files_controller.rb
+++ b/vendor/built_in_modules/archive/app/controllers/panel/archive/widget/archive_files_controller.rb
@@ -31,8 +31,7 @@ class Panel::Archive::Widget::ArchiveFilesController < OrbitWidgetController
@archive_files = ArchiveFile.all.can_display.any_in(:archive_file_category_id => params[:category_id]).merge(ArchiveFileCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
@archive_file_categorys = ArchiveFileCategory.any_in(:_id => params[:category_id]).excludes('disable' => true)
elsif !params[:tag_id].blank?
- @tag = ArchiveTag.find(params[:tag_id]) rescue nil
- @tag = ArchiveTag.where(key: params[:tag_id])[0] unless @tag
+ @archive_files = ArchiveFile.all.can_display.any_in(:tagged_ids => params[:tag_id]).merge(ArchiveFileCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
get_categorys
else
@archive_files = ArchiveFile.all.can_display.merge(ArchiveFileCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
diff --git a/vendor/built_in_modules/archive/app/models/archive_file.rb b/vendor/built_in_modules/archive/app/models/archive_file.rb
index 030d50634..1329125e1 100644
--- a/vendor/built_in_modules/archive/app/models/archive_file.rb
+++ b/vendor/built_in_modules/archive/app/models/archive_file.rb
@@ -61,10 +61,6 @@ class ArchiveFile
self.is_top
end
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
-
def get_file_icon( file_data )
file_icon = "#{file_data.split('.')[-1]}".html_safe
diff --git a/vendor/built_in_modules/faq/app/controllers/panel/faq/front_end/qas_controller.rb b/vendor/built_in_modules/faq/app/controllers/panel/faq/front_end/qas_controller.rb
index 42140c803..6a89d5f25 100644
--- a/vendor/built_in_modules/faq/app/controllers/panel/faq/front_end/qas_controller.rb
+++ b/vendor/built_in_modules/faq/app/controllers/panel/faq/front_end/qas_controller.rb
@@ -26,8 +26,7 @@ class Panel::Faq::FrontEnd::QasController < OrbitWidgetController
@qas = Qa.all.can_display.any_in(:qa_category_id => params[:category_id]).merge(QaCategory.excludes('disable' => true)).desc( :is_top ).page( params[:page_main] ).per(@page_num)
@qa_categorys = QaCategory.any_in(:_id => @item.category).excludes('disable' => true) rescue nil
elsif params[:tag_id] !="[]" && !params[:tag_id].blank?
- @tag = FaqTag.find(params[:tag_id]) rescue nil
- @tag = FaqTag.where(key: params[:tag_id])[0] unless @tag
+ Qa.all.can_display.any_in(:tagged_ids => params[:tag_id]).merge(QaCategory.excludes('disable' => true)).desc( :is_top ).page( params[:page_main] ).per(@page_num)
@qas = @tag.archive_files.can_display.desc( :is_top ).page( params[:page_main] ).per(@page_num)
get_categorys
else
diff --git a/vendor/built_in_modules/faq/app/models/qa.rb b/vendor/built_in_modules/faq/app/models/qa.rb
index 6ba8bb562..1a99c3a24 100644
--- a/vendor/built_in_modules/faq/app/models/qa.rb
+++ b/vendor/built_in_modules/faq/app/models/qa.rb
@@ -62,10 +62,6 @@ class Qa
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
@@ -87,7 +83,7 @@ class Qa
self.qa_links.each do |link|
link.delete if link.url.blank? && link.title.blank?
end
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/gallery/app/controllers/panel/gallery/back_end/album_images_controller.rb b/vendor/built_in_modules/gallery/app/controllers/panel/gallery/back_end/album_images_controller.rb
index 06eee5de1..c8504bf4e 100644
--- a/vendor/built_in_modules/gallery/app/controllers/panel/gallery/back_end/album_images_controller.rb
+++ b/vendor/built_in_modules/gallery/app/controllers/panel/gallery/back_end/album_images_controller.rb
@@ -12,7 +12,7 @@ class Panel::Gallery::BackEnd::AlbumImagesController < OrbitBackendController
else
@authenticated = false
end
- @tags = GalleryTag.all
+ @tags = get_tags
@image = GalleryImage.find(params[:id])
@albumid = @image.gallery_album_id
@album = GalleryAlbum.find(@albumid)
diff --git a/vendor/built_in_modules/gallery/app/controllers/panel/gallery/back_end/albums_controller.rb b/vendor/built_in_modules/gallery/app/controllers/panel/gallery/back_end/albums_controller.rb
index 56f6f1899..177a290b4 100644
--- a/vendor/built_in_modules/gallery/app/controllers/panel/gallery/back_end/albums_controller.rb
+++ b/vendor/built_in_modules/gallery/app/controllers/panel/gallery/back_end/albums_controller.rb
@@ -16,7 +16,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
end
@categorylist = GalleryCategory.all
@cid = params['cat']
- @tags = GalleryTag.all
+ @tags = get_tags
end
def show
@@ -26,7 +26,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
@authenticated = false
end
@album = GalleryAlbum.find(params[:id])
- @tags = GalleryTag.all
+ @tags = get_tags
end
def new
@@ -55,10 +55,10 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
if @tags
if @tags.kind_of?(Array)
@tags.each do |tag|
- @albums << GalleryAlbum.where(tag_ids: tag)
+ @albums << GalleryAlbum.where(tagged_ids: tag)
end
else
- @albums << GalleryAlbum.where(tag_ids: @tags)
+ @albums << GalleryAlbum.where(tagged_ids: @tags)
end
else
@albums << GalleryAlbum.all
@@ -69,10 +69,10 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
if @tags
if @tags.kind_of?(Array)
@tags.each do |tag|
- @albums << category.gallery_albums.where(tag_ids: tag)
+ @albums << category.gallery_albums.where(tagged_ids: tag)
end
else
- @albums << category.gallery_albums.where(tag_ids: @tags)
+ @albums << category.gallery_albums.where(tagged_ids: @tags)
end
else
@albums << category.gallery_albums.all
@@ -83,10 +83,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
@albums.each do |album|
@albs = Array.new
album.each do |values|
- tags = Array.new
- values.tag_ids.each do |tag|
- tags << GalleryTag.find(tag)[I18n.locale]
- end
+ tags = Tag.find(values.tagged_ids).map{|t| t.name}
category = GalleryCategory.find(values.gallery_category_id).name
@albs << {"_id"=>values.id,"show_path"=>panel_gallery_back_end_album_path(values),"cover"=>values.cover,"cover_path"=>values.cover_path,"description"=>values.description,"category_name"=>category,"gallery_category_id" => values.gallery_category_id,"name"=>values.name,"tag_ids"=>values.tag_ids,"tag_names"=>tags}
end
@@ -107,7 +104,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
@images = @album.gallery_images.all
@album_name = @album.name_translations
@cover = @album.cover
- @tags = GalleryTag.all
+ @tags = get_tags
end
end
@@ -123,11 +120,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
output = Array.new
albums.each do |album|
- tag_names = Array.new
-
- album.tag_ids.each do |tag|
- tag_names << GalleryTag.find(tag)[I18n.locale]
- end
+ tag_names = Tag.find(album.tagged_ids).map{|t| t.name}
output << {
album_cover_file: "http://#{request.host_with_port}#{album.cover_path}",
@@ -146,11 +139,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
output = Array.new
images.each do |image|
- tags = Array.new
-
- image.tag_ids.each do |tag|
- tags << GalleryTag.find(tag)[I18n.locale]
- end
+ tags = Tag.find(image.tagged_ids).map{|t| t.name}
output << {
image_title: image.title,
@@ -169,10 +158,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
@images = @album.gallery_images.all
@output = Array.new
@images.each do |values|
- tags = Array.new
- values.tag_ids.each do |tag|
- tags << GalleryTag.find(tag)[I18n.locale]
- end
+ tags = Tag.find(values.tagged_ids).map{|t| t.name}
@output << { _id: values.id,
theater_link: panel_gallery_back_end_album_image_path(values),
description: values.description,
@@ -190,8 +176,8 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
if @authenticated
render :json=>{"images" => @output, "tags" => @album.tag_ids}.to_json
else
- @album.tag_ids.each do |tag|
- @tag_names << GalleryTag.find(tag)[I18n.locale]
+ @album.tagged_ids.each do |tag|
+ @tag_names << Tag.find(tag).name
end
render :json=>{"images" => @output, "tags" => @album.tag_ids, "tag_names" => @tag_names}.to_json
end
@@ -235,7 +221,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
if params['delete_cover'] == "true"
@album.update_attributes(:cover=>"default")
end
- @tags = GalleryTag.all
+ @tags = get_tags
render :action => :show
end
end
diff --git a/vendor/built_in_modules/gallery/app/controllers/panel/gallery/front_end/albums_controller.rb b/vendor/built_in_modules/gallery/app/controllers/panel/gallery/front_end/albums_controller.rb
index 07f85999f..3924ab7e1 100644
--- a/vendor/built_in_modules/gallery/app/controllers/panel/gallery/front_end/albums_controller.rb
+++ b/vendor/built_in_modules/gallery/app/controllers/panel/gallery/front_end/albums_controller.rb
@@ -4,10 +4,7 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
def show
@album = GalleryAlbum.find(params[:id])
- @tags = Array.new
- @album.tag_ids.each do |tag|
- @tags << GalleryTag.find(tag)[I18n.locale]
- end
+ @tags = Tag.find(@album.tagged_ids).map{|t| t.name}
end
def get_albums
@@ -18,10 +15,10 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
if @tags
if @tags.kind_of?(Array)
@tags.each do |tag|
- @albums << GalleryAlbum.where(tag_ids: tag)
+ @albums << GalleryAlbum.where(tagged_ids: tag)
end
else
- @albums << GalleryAlbum.where(tag_ids: @tags)
+ @albums << GalleryAlbum.where(tagged_ids: @tags)
end
else
@albums << GalleryAlbum.all
@@ -32,10 +29,10 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
if @tags
if @tags.kind_of?(Array)
@tags.each do |tag|
- @albums << category.gallery_albums.where(tag_ids: tag)
+ @albums << category.gallery_albums.where(tagged_ids: tag)
end
else
- @albums << category.gallery_albums.where(tag_ids: @tags)
+ @albums << category.gallery_albums.where(tagged_ids: @tags)
end
else
@albums << category.gallery_albums.all
@@ -46,10 +43,7 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
@albums.each do |album|
@albs = Array.new
album.each do |values|
- tags = Array.new
- values.tag_ids.each do |tag|
- tags << GalleryTag.find(tag)[I18n.locale]
- end
+ tags = Tag.find(values.tagged_ids).map{|t| t.name}
category = GalleryCategory.find(values.gallery_category_id).name
@albs << {"_id"=>values.id,"show_path"=>panel_gallery_front_end_album_path(values),"cover"=>values.cover,"cover_path"=>values.cover_path,"description"=>values.description,"category_name"=>category,"gallery_category_id" => values.gallery_category_id,"name"=>values.name,"tag_ids"=>values.tag_ids,"tag_names"=>tags}
end
@@ -63,10 +57,7 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
@images = @album.gallery_images.all
@output = Array.new
@images.each do |values|
- tags = Array.new
- values.tag_ids.each do |tag|
- tags << GalleryTag.find(tag)[I18n.locale]
- end
+ tags = Tag.find(values.tagged_ids).map{|t| t.name}
@output << {:_id => values.id,
:theater_link => theater_panel_gallery_front_end_album_path(values),
:description => values.description,
@@ -95,10 +86,7 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
@album = GalleryAlbum.find(@albumid)
@images = @album.gallery_images.all
tags = @album.tag_ids
- @tagnames = Array.new
- tags.each do |tag|
- @tagnames << GalleryTag.find(tag)[I18n.locale]
- end
+ @tagnames = Tag.find(tags.tagged_ids).map{|t| t.name}
@back_link = panel_gallery_front_end_album_path(@albumid)
end
end
diff --git a/vendor/built_in_modules/gallery/app/controllers/panel/gallery/front_end/orbit_galleries_controller.rb b/vendor/built_in_modules/gallery/app/controllers/panel/gallery/front_end/orbit_galleries_controller.rb
index 8ecc4ba4a..af7bf784d 100644
--- a/vendor/built_in_modules/gallery/app/controllers/panel/gallery/front_end/orbit_galleries_controller.rb
+++ b/vendor/built_in_modules/gallery/app/controllers/panel/gallery/front_end/orbit_galleries_controller.rb
@@ -4,7 +4,7 @@ include AdminHelper
@authenticated = false
@categorylist = GalleryCategory.all
@cid = params['cat']
- @tags = GalleryTag.all
+ @tags = get_tags
end
def new_category
@@ -62,10 +62,10 @@ include AdminHelper
if @tags
if @tags.kind_of?(Array)
@tags.each do |tag|
- @albums << GalleryAlbum.where(tag_ids: tag)
+ @albums << GalleryAlbum.where(tagged_ids: tag)
end
else
- @albums << GalleryAlbum.where(tag_ids: @tags)
+ @albums << GalleryAlbum.where(tagged_ids: @tags)
end
else
@albums << GalleryAlbum.all
@@ -76,10 +76,10 @@ include AdminHelper
if @tags
if @tags.kind_of?(Array)
@tags.each do |tag|
- @albums << category.gallery_albums.where(tag_ids: tag)
+ @albums << category.gallery_albums.where(tagged_ids: tag)
end
else
- @albums << category.gallery_albums.where(tag_ids: @tags)
+ @albums << category.gallery_albums.where(tagged_ids: @tags)
end
else
@albums << category.gallery_albums.all
@@ -90,10 +90,7 @@ include AdminHelper
@albums.each do |album|
@albs = Array.new
album.each do |values|
- tags = Array.new
- values.tag_ids.each do |tag|
- tags << GalleryTag.find(tag)[I18n.locale]
- end
+ tags = Tag.find(values.tagged_ids).map{|t| t.name}
category = GalleryCategory.find(values.gallery_category_id).name
@albs << {"_id"=>values.id,"cover"=>values.cover,"cover_path"=>values.cover_path,"description"=>values.description,"category_name"=>category,"gallery_category_id" => values.gallery_category_id,"name"=>values.name,"tag_ids"=>values.tag_ids,"tag_names"=>tags}
end
diff --git a/vendor/built_in_modules/gallery/app/models/gallery_image.rb b/vendor/built_in_modules/gallery/app/models/gallery_image.rb
index 8b958ddde..f0504db2f 100644
--- a/vendor/built_in_modules/gallery/app/models/gallery_image.rb
+++ b/vendor/built_in_modules/gallery/app/models/gallery_image.rb
@@ -1,14 +1,16 @@
class GalleryImage
include Mongoid::Document
- include Mongoid::Timestamps
+ include Mongoid::Timestamps
+ include OrbitTag::Taggable
+ taggable
- mount_uploader :file, GalleryUploader
+ mount_uploader :file, GalleryUploader
- field :title
- field :description, localize: true
+ field :title
+ field :description, localize: true
- has_and_belongs_to_many :tags, :class_name => "GalleryTag"
+ # has_and_belongs_to_many :tags, :class_name => "GalleryTag"
- belongs_to :gallery_album
+ belongs_to :gallery_album
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/personal_book/app/models/writing_book.rb b/vendor/built_in_modules/personal_book/app/models/writing_book.rb
index 432711dac..e6c59c8b6 100644
--- a/vendor/built_in_modules/personal_book/app/models/writing_book.rb
+++ b/vendor/built_in_modules/personal_book/app/models/writing_book.rb
@@ -4,6 +4,8 @@ class WritingBook
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+ include OrbitTag::Taggable
+ taggable
# scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
@@ -17,7 +19,7 @@ class WritingBook
field :publisher, localize: true
field :editor, localize: true
- has_and_belongs_to_many :tags, :class_name => "PersonalBookTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalBookTag"
has_and_belongs_to_many :book_author_types
@@ -77,10 +79,6 @@ class WritingBook
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
diff --git a/vendor/built_in_modules/personal_conference/app/models/writing_conference.rb b/vendor/built_in_modules/personal_conference/app/models/writing_conference.rb
index 9e22d6c1f..c23b75533 100644
--- a/vendor/built_in_modules/personal_conference/app/models/writing_conference.rb
+++ b/vendor/built_in_modules/personal_conference/app/models/writing_conference.rb
@@ -3,6 +3,9 @@ class WritingConference
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+ include OrbitTag::Taggable
+ taggable
+
# scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
LANGUAGE_TYPES = [ "English", "Chinese" ]
@@ -13,7 +16,7 @@ class WritingConference
field :location, localize: true
field :sponsor, localize: true
- has_and_belongs_to_many :tags, :class_name => "PersonalConferenceTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalConferenceTag"
has_and_belongs_to_many :conference_author_types
has_and_belongs_to_many :conference_paper_types
has_and_belongs_to_many :conference_co_authors
@@ -79,10 +82,6 @@ class WritingConference
self.is_top
end
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
-
def update_avliable_language
VALID_LOCALES.each do |locale|
if (title_translations[locale].blank? rescue true)
@@ -122,7 +121,7 @@ class WritingConference
end
def clean_checkboxs
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
self.conference_author_type_ids.delete('')
self.conference_level_type_ids.delete('')
end
diff --git a/vendor/built_in_modules/personal_diploma/app/models/diploma.rb b/vendor/built_in_modules/personal_diploma/app/models/diploma.rb
index 563cf62c2..041fbc49b 100644
--- a/vendor/built_in_modules/personal_diploma/app/models/diploma.rb
+++ b/vendor/built_in_modules/personal_diploma/app/models/diploma.rb
@@ -4,6 +4,9 @@ class Diploma
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+
+ include OrbitTag::Taggable
+ taggable
# scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
@@ -15,7 +18,7 @@ class Diploma
field :department, localize: true
field :degree, localize: true
- has_and_belongs_to_many :tags, :class_name => "PersonalDiplomaTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalDiplomaTag"
field :year
field :language
@@ -50,10 +53,6 @@ class Diploma
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
@@ -74,7 +73,7 @@ class Diploma
end
def clean_checkboxs
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/personal_experience/app/models/experience.rb b/vendor/built_in_modules/personal_experience/app/models/experience.rb
index d8e95dd0d..29deafb4b 100644
--- a/vendor/built_in_modules/personal_experience/app/models/experience.rb
+++ b/vendor/built_in_modules/personal_experience/app/models/experience.rb
@@ -4,6 +4,9 @@ class Experience
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+
+ include OrbitTag::Taggable
+ taggable
# scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
@@ -14,7 +17,7 @@ class Experience
field :department, localize: true
field :job_title, localize: true
- has_and_belongs_to_many :tags, :class_name => "PersonalExperienceTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalExperienceTag"
belongs_to :experience_category
@@ -64,10 +67,6 @@ class Experience
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
@@ -88,7 +87,7 @@ class Experience
end
def clean_checkboxs
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/personal_honor/app/models/honor.rb b/vendor/built_in_modules/personal_honor/app/models/honor.rb
index 7e5f2f1f1..67f9f5f5f 100644
--- a/vendor/built_in_modules/personal_honor/app/models/honor.rb
+++ b/vendor/built_in_modules/personal_honor/app/models/honor.rb
@@ -4,6 +4,9 @@ class Honor
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+
+ include OrbitTag::Taggable
+ taggable
# scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
@@ -11,7 +14,7 @@ class Honor
- has_and_belongs_to_many :tags, :class_name => "PersonalHonorTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalHonorTag"
belongs_to :honor_category
@@ -61,10 +64,6 @@ class Honor
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
@@ -85,7 +84,7 @@ class Honor
end
def clean_checkboxs
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/personal_journal/app/models/writing_journal.rb b/vendor/built_in_modules/personal_journal/app/models/writing_journal.rb
index 12c7fba2f..c4739f6bc 100644
--- a/vendor/built_in_modules/personal_journal/app/models/writing_journal.rb
+++ b/vendor/built_in_modules/personal_journal/app/models/writing_journal.rb
@@ -3,13 +3,16 @@ class WritingJournal
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+ include OrbitTag::Taggable
+ taggable
+
LANGUAGE_TYPES = [ "English", "Chinese" ]
field :paper_title, localize: true
field :journal_title, localize: true
field :authors, localize: true
- has_and_belongs_to_many :tags, :class_name => "PersonalJournalTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalJournalTag"
has_and_belongs_to_many :journal_author_types
has_and_belongs_to_many :journal_level_types
has_and_belongs_to_many :journal_co_authors
@@ -80,10 +83,6 @@ class WritingJournal
self.is_top
end
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
-
def update_avliable_language
VALID_LOCALES.each do |locale|
if (title_translations[locale].blank? rescue true)
@@ -122,7 +121,7 @@ class WritingJournal
end
def clean_checkboxs
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
self.journal_author_type_ids.delete('')
self.journal_level_type_ids.delete('')
end
diff --git a/vendor/built_in_modules/personal_lab/app/models/lab.rb b/vendor/built_in_modules/personal_lab/app/models/lab.rb
index 539a25759..9d6b48097 100644
--- a/vendor/built_in_modules/personal_lab/app/models/lab.rb
+++ b/vendor/built_in_modules/personal_lab/app/models/lab.rb
@@ -4,6 +4,9 @@ class Lab
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+
+ include OrbitTag::Taggable
+ taggable
# scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
@@ -15,7 +18,7 @@ class Lab
field :participating_professor, localize: true
field :participating_student, localize: true
- has_and_belongs_to_many :tags, :class_name => "PersonalLabTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalLabTag"
field :year
field :language
@@ -70,10 +73,6 @@ class Lab
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
@@ -102,7 +101,7 @@ class Lab
end
def clean_checkboxs
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/personal_patent/app/models/writing_patent.rb b/vendor/built_in_modules/personal_patent/app/models/writing_patent.rb
index 632e765c0..72c876227 100644
--- a/vendor/built_in_modules/personal_patent/app/models/writing_patent.rb
+++ b/vendor/built_in_modules/personal_patent/app/models/writing_patent.rb
@@ -4,6 +4,9 @@ class WritingPatent
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+
+ include OrbitTag::Taggable
+ taggable
# scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
@@ -13,7 +16,7 @@ class WritingPatent
field :patent_title, localize: true
field :authors, localize: true
- has_and_belongs_to_many :tags, :class_name => "PersonalPatentTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalPatentTag"
belongs_to :writing_patent_category
@@ -70,10 +73,6 @@ class WritingPatent
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
@@ -102,7 +101,7 @@ class WritingPatent
end
def clean_checkboxs
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/personal_project/app/models/project.rb b/vendor/built_in_modules/personal_project/app/models/project.rb
index 32a4fbdce..1b0b86059 100644
--- a/vendor/built_in_modules/personal_project/app/models/project.rb
+++ b/vendor/built_in_modules/personal_project/app/models/project.rb
@@ -4,6 +4,9 @@ class Project
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+
+ include OrbitTag::Taggable
+ taggable
# scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
@@ -15,7 +18,7 @@ class Project
field :participator, localize: true
field :unit, localize: true
- has_and_belongs_to_many :tags, :class_name => "PersonalProjectTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalProjectTag"
belongs_to :project_category
@@ -72,10 +75,6 @@ class Project
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
@@ -104,7 +103,7 @@ class Project
end
def clean_checkboxs
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/personal_research/app/models/research.rb b/vendor/built_in_modules/personal_research/app/models/research.rb
index 14080e12e..4c7194578 100644
--- a/vendor/built_in_modules/personal_research/app/models/research.rb
+++ b/vendor/built_in_modules/personal_research/app/models/research.rb
@@ -4,6 +4,9 @@ class Research
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::MultiParameterAttributes
+
+ include OrbitTag::Taggable
+ taggable
# scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
@@ -14,7 +17,7 @@ class Research
field :authors, localize: true
field :extracted_chapters, localize: true
- has_and_belongs_to_many :tags, :class_name => "PersonalResearchTag"
+ # has_and_belongs_to_many :tags, :class_name => "PersonalResearchTag"
field :year
field :language
@@ -67,10 +70,6 @@ class Research
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
@@ -99,7 +98,7 @@ class Research
end
def clean_checkboxs
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/web_resource/app/controllers/panel/web_resource/front_end/web_links_controller.rb b/vendor/built_in_modules/web_resource/app/controllers/panel/web_resource/front_end/web_links_controller.rb
index f99ce86b6..ba426b292 100644
--- a/vendor/built_in_modules/web_resource/app/controllers/panel/web_resource/front_end/web_links_controller.rb
+++ b/vendor/built_in_modules/web_resource/app/controllers/panel/web_resource/front_end/web_links_controller.rb
@@ -13,14 +13,12 @@ class Panel::WebResource::FrontEnd::WebLinksController < OrbitWidgetController
date_now = Time.now
if !params[:category_id].blank?
- @web_links = WebLink.where( :is_hidden => false ).where(:web_link_category_id => params[:category_id]).desc( :is_top ).page( params[:page_main] ).per(10)
+ @web_links = WebLink.where( :is_hidden => false ).where(:web_link_category_id => params[:category_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
@current_category = WebLinkCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank?
- @tag = WebResourceTag.find(params[:tag_id]) rescue nil
- @tag = WebResourceTag.where(key: params[:tag_id])[0] unless @tag
- @web_links = @tag.archive_files.where( :is_hidden => false ).desc( :is_top ).page( params[:page_main] ).per(10)
+ @web_links = WebLink.all.can_display.any_in(:tagged_ids => params[:tag_id]).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
else
- @web_links = WebLink.where( :is_hidden => false ).desc( :is_top ).page( params[:page_main] ).per(10)
+ @web_links = WebLink.where( :is_hidden => false ).desc( :is_top ).page( params[:page_main] ).per(@page_num)
end
get_categorys
diff --git a/vendor/built_in_modules/web_resource/app/controllers/panel/web_resource/widget/web_links_controller.rb b/vendor/built_in_modules/web_resource/app/controllers/panel/web_resource/widget/web_links_controller.rb
index 4486f04ab..b76a94600 100644
--- a/vendor/built_in_modules/web_resource/app/controllers/panel/web_resource/widget/web_links_controller.rb
+++ b/vendor/built_in_modules/web_resource/app/controllers/panel/web_resource/widget/web_links_controller.rb
@@ -10,14 +10,12 @@ class Panel::WebResource::Widget::WebLinksController < OrbitWidgetController
def index
if !params[:category_id].blank?
- @web_links = WebLink.where(:web_link_category => params[:category_id]).available_for_lang(I18n.locale).desc( :is_top, :postdate).page( params[:page]).per(10)
+ @web_links = WebLink.where(:web_link_category => params[:category_id]).available_for_lang(I18n.locale).desc( :is_top, :postdate).page( params[:page]).per(@page_num)
@current_category = WebLinkCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank?
- @tag = WebResourceTag.find(params[:tag_id]) rescue nil
- @tag = WebResourceTag.where(key: params[:tag_id])[0] unless @tag
- @web_links = @tag.web_links.desc( :is_top, :postdate).page( params[:page]).per(10)
+ @web_links = WebLink.all.can_display.any_in(:tagged_ids => params[:tag_id]).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
else
- @web_links = WebLink.available_for_lang(I18n.locale).desc( :is_top, :postdate).page( params[:page]).per(10)
+ @web_links = WebLink.available_for_lang(I18n.locale).desc( :is_top, :postdate).page( params[:page]).per(@page_num)
end
end
diff --git a/vendor/built_in_modules/web_resource/app/models/web_link.rb b/vendor/built_in_modules/web_resource/app/models/web_link.rb
index 64e448c44..3028cae30 100644
--- a/vendor/built_in_modules/web_resource/app/models/web_link.rb
+++ b/vendor/built_in_modules/web_resource/app/models/web_link.rb
@@ -56,10 +56,6 @@ class WebLink
def is_top?
self.is_top
end
-
- def sorted_tags
- tags.order_by(I18n.locale, :asc)
- end
def update_avliable_language
VALID_LOCALES.each do |locale|
@@ -80,7 +76,7 @@ class WebLink
end
def clean_tags
- self.tag_ids.delete('')
+ self.tagged_ids.delete('')
end
end
\ No newline at end of file