Changes for queries

This commit is contained in:
chris 2013-05-03 12:11:48 +08:00
parent aefd62da2a
commit 127ab3845c
26 changed files with 63 additions and 122 deletions

View File

@ -17,25 +17,16 @@ class DefaultWidgetController< OrbitWidgetController
result_objects = nil result_objects = nil
if !params["tag_id"].blank? 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 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 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 = eval("#{ori_class_name}.where(:#{get_category_field_name(ori_class_name)}.in=>params['category_id'], :tagged_ids.in => params['tag_id'])")
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!
end end
result = eval("#{ori_class_name}.where(:id=>result_ids)")
elsif params["category_id"].blank? #no tag no cate elsif params["category_id"].blank? #no tag no cate
result = eval(@default_widget["query"]) result = eval(@default_widget["query"])
else #no tag has cate else #no tag has cate
result = eval("#{ori_class_name}.where(:#{get_category_field_name(ori_class_name)}.in=>params['category_id'])") result = eval("#{ori_class_name}.where(:#{get_category_field_name(ori_class_name)}.in=>params['category_id'])")
end end
date_now = Time.now
result.available_for_lang(I18n.locale).can_display.desc(:is_top, :postdate) result.available_for_lang(I18n.locale).can_display.desc(:is_top, :postdate)
end end

View File

@ -25,7 +25,7 @@ class Asset
protected protected
def clean_tags def clean_tags
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end

View File

@ -51,17 +51,13 @@ class Panel::Announcement::FrontEnd::BulletinsController < OrbitWidgetController
else else
date_now = Time.now date_now = Time.now
if !params[:category_id].blank? && !params[:tag_id].blank? if !params[:category_id].blank? && !params[:tag_id].blank?
@tag = AnnouncementTag.find(params[:tag_id]) rescue nil @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)
@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)
@current_category = BulletinCategory.from_id(params[:category_id]) rescue nil @current_category = BulletinCategory.from_id(params[:category_id]) rescue nil
elsif !params[:category_id].blank? 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) @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 @current_category = BulletinCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank? elsif !params[:tag_id].blank?
@tag = AnnouncementTag.find(params[:tag_id]) rescue nil @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)
@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)
else 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) @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 end

View File

@ -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) @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 @current_category = BulletinCategory.from_id(@category_id) rescue nil
elsif !params[:tag_id].blank? elsif !params[:tag_id].blank?
@tag = AnnouncementTag.find(params[:tag_id]) rescue nil @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)
@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)
else 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) @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 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 ) @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 @current_category = BulletinCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank? elsif !params[:tag_id].blank?
@tag = AnnouncementTag.find(params[:tag_id]) rescue nil @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)
@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 )
else 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 end
get_categorys get_categorys
@ -71,13 +67,13 @@ class Panel::Announcement::Widget::BulletinsController < OrbitWidgetController
end end
def reload_bulletins def reload_bulletins
@selected_tag = AnnouncementTag.find(params[:tag_id]) @selected_tag = Tag.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 @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 end
def reload_web_links def reload_web_links
@selected_tag = AnnouncementTag.find(params[:tag_id]) @selected_tag = Tag.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 @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 end
def bulletins_side_bar def bulletins_side_bar

View File

@ -16,7 +16,7 @@
<div class="news_prev">prev</div> <div class="news_prev">prev</div>
<div class="news_next">next</div> <div class="news_next">next</div>
<ul class="news_list"> <ul class="news_list">
<% tag.bulletins.each do |post| %> <% Bulletin.where(:tagged_ids => tag).each do |post| %>
<li><%= link_to post.title, panel_announcement_front_end_bulletin_path(post) %></li> <li><%= link_to post.title, panel_announcement_front_end_bulletin_path(post) %></li>
<% end %> <% end %>
</ul> </ul>

View File

@ -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) # @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? if !params[:category_id].blank? && !params[:tag_id].blank?
@tag = ArchiveTag.find(params[:tag_id]) rescue nil @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)
@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)
@current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil @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) @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 @current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank? elsif !params[:tag_id].blank?
@tag = ArchiveTag.find(params[:tag_id]) rescue nil @archive_files = ArchiveFile.can_display.where(:tagged_ids.in => params[:tag_id]).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
@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)
else else
@archive_files = ArchiveFile.can_display.desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num) @archive_files = ArchiveFile.can_display.desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
end 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) @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 @current_category = ArchiveFileCategory.from_id(params[:category_id]) rescue nil
elsif !params[:tag_id].blank? elsif !params[:tag_id].blank?
@tag = ArchiveTag.find(params[:tag_id]) rescue nil @archive_files = ArchiveFile.can_display.where(:tagged_ids => params[:tag_id]).desc( :is_top ).page( params[:page_main] ).per(@page_num)
@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)
else else
@archive_files = ArchiveFile.can_display.desc( :is_top ).page( params[:page_main] ).per(@page_num) @archive_files = ArchiveFile.can_display.desc( :is_top ).page( params[:page_main] ).per(@page_num)
end end

View File

@ -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_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) @archive_file_categorys = ArchiveFileCategory.any_in(:_id => params[:category_id]).excludes('disable' => true)
elsif !params[:tag_id].blank? elsif !params[:tag_id].blank?
@tag = ArchiveTag.find(params[:tag_id]) rescue nil @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)
@tag = ArchiveTag.where(key: params[:tag_id])[0] unless @tag
get_categorys get_categorys
else else
@archive_files = ArchiveFile.all.can_display.merge(ArchiveFileCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num) @archive_files = ArchiveFile.all.can_display.merge(ArchiveFileCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)

View File

@ -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) @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 @qa_categorys = QaCategory.any_in(:_id => @item.category).excludes('disable' => true) rescue nil
elsif params[:tag_id] !="[]" && !params[:tag_id].blank? elsif params[:tag_id] !="[]" && !params[:tag_id].blank?
@tag = FaqTag.find(params[:tag_id]) rescue nil 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)
@tag = FaqTag.where(key: params[:tag_id])[0] unless @tag
@qas = @tag.archive_files.can_display.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 get_categorys
else else

View File

@ -82,7 +82,7 @@ class Qa
self.qa_links.each do |link| self.qa_links.each do |link|
link.delete if link.url.blank? && link.title.blank? link.delete if link.url.blank? && link.title.blank?
end end
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end

View File

@ -12,7 +12,7 @@ class Panel::Gallery::BackEnd::AlbumImagesController < OrbitBackendController
else else
@authenticated = false @authenticated = false
end end
@tags = GalleryTag.all @tags = get_tags
@image = GalleryImage.find(params[:id]) @image = GalleryImage.find(params[:id])
@albumid = @image.gallery_album_id @albumid = @image.gallery_album_id
@album = GalleryAlbum.find(@albumid) @album = GalleryAlbum.find(@albumid)

View File

@ -16,7 +16,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
end end
@categorylist = GalleryCategory.all @categorylist = GalleryCategory.all
@cid = params['cat'] @cid = params['cat']
@tags = GalleryTag.all @tags = get_tags
end end
def show def show
@ -26,7 +26,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
@authenticated = false @authenticated = false
end end
@album = GalleryAlbum.find(params[:id]) @album = GalleryAlbum.find(params[:id])
@tags = GalleryTag.all @tags = get_tags
end end
def new def new
@ -55,10 +55,10 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
if @tags if @tags
if @tags.kind_of?(Array) if @tags.kind_of?(Array)
@tags.each do |tag| @tags.each do |tag|
@albums << GalleryAlbum.where(tag_ids: tag) @albums << GalleryAlbum.where(tagged_ids: tag)
end end
else else
@albums << GalleryAlbum.where(tag_ids: @tags) @albums << GalleryAlbum.where(tagged_ids: @tags)
end end
else else
@albums << GalleryAlbum.all @albums << GalleryAlbum.all
@ -69,10 +69,10 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
if @tags if @tags
if @tags.kind_of?(Array) if @tags.kind_of?(Array)
@tags.each do |tag| @tags.each do |tag|
@albums << category.gallery_albums.where(tag_ids: tag) @albums << category.gallery_albums.where(tagged_ids: tag)
end end
else else
@albums << category.gallery_albums.where(tag_ids: @tags) @albums << category.gallery_albums.where(tagged_ids: @tags)
end end
else else
@albums << category.gallery_albums.all @albums << category.gallery_albums.all
@ -83,10 +83,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
@albums.each do |album| @albums.each do |album|
@albs = Array.new @albs = Array.new
album.each do |values| album.each do |values|
tags = Array.new tags = Tag.find(values.tagged_ids).map{|t| t.name}
values.tag_ids.each do |tag|
tags << GalleryTag.find(tag)[I18n.locale]
end
category = GalleryCategory.find(values.gallery_category_id).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} @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 end
@ -107,7 +104,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
@images = @album.gallery_images.all @images = @album.gallery_images.all
@album_name = @album.name_translations @album_name = @album.name_translations
@cover = @album.cover @cover = @album.cover
@tags = GalleryTag.all @tags = get_tags
end end
end end
@ -123,11 +120,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
output = Array.new output = Array.new
albums.each do |album| albums.each do |album|
tag_names = Array.new tag_names = Tag.find(album.tagged_ids).map{|t| t.name}
album.tag_ids.each do |tag|
tag_names << GalleryTag.find(tag)[I18n.locale]
end
output << { output << {
album_cover_file: "http://#{request.host_with_port}#{album.cover_path}", album_cover_file: "http://#{request.host_with_port}#{album.cover_path}",
@ -146,11 +139,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
output = Array.new output = Array.new
images.each do |image| images.each do |image|
tags = Array.new tags = Tag.find(image.tagged_ids).map{|t| t.name}
image.tag_ids.each do |tag|
tags << GalleryTag.find(tag)[I18n.locale]
end
output << { output << {
image_title: image.title, image_title: image.title,
@ -169,10 +158,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
@images = @album.gallery_images.all @images = @album.gallery_images.all
@output = Array.new @output = Array.new
@images.each do |values| @images.each do |values|
tags = Array.new tags = Tag.find(values.tagged_ids).map{|t| t.name}
values.tag_ids.each do |tag|
tags << GalleryTag.find(tag)[I18n.locale]
end
@output << { _id: values.id, @output << { _id: values.id,
theater_link: panel_gallery_back_end_album_image_path(values), theater_link: panel_gallery_back_end_album_image_path(values),
description: values.description, description: values.description,
@ -190,8 +176,8 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
if @authenticated if @authenticated
render :json=>{"images" => @output, "tags" => @album.tag_ids}.to_json render :json=>{"images" => @output, "tags" => @album.tag_ids}.to_json
else else
@album.tag_ids.each do |tag| @album.tagged_ids.each do |tag|
@tag_names << GalleryTag.find(tag)[I18n.locale] @tag_names << Tag.find(tag).name
end end
render :json=>{"images" => @output, "tags" => @album.tag_ids, "tag_names" => @tag_names}.to_json render :json=>{"images" => @output, "tags" => @album.tag_ids, "tag_names" => @tag_names}.to_json
end end
@ -235,7 +221,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
if params['delete_cover'] == "true" if params['delete_cover'] == "true"
@album.update_attributes(:cover=>"default") @album.update_attributes(:cover=>"default")
end end
@tags = GalleryTag.all @tags = get_tags
render :action => :show render :action => :show
end end
end end

View File

@ -4,10 +4,7 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
def show def show
@album = GalleryAlbum.find(params[:id]) @album = GalleryAlbum.find(params[:id])
@tags = Array.new @tags = Tag.find(@album.tagged_ids).map{|t| t.name}
@album.tag_ids.each do |tag|
@tags << GalleryTag.find(tag)[I18n.locale]
end
end end
def get_albums def get_albums
@ -18,10 +15,10 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
if @tags if @tags
if @tags.kind_of?(Array) if @tags.kind_of?(Array)
@tags.each do |tag| @tags.each do |tag|
@albums << GalleryAlbum.where(tag_ids: tag) @albums << GalleryAlbum.where(tagged_ids: tag)
end end
else else
@albums << GalleryAlbum.where(tag_ids: @tags) @albums << GalleryAlbum.where(tagged_ids: @tags)
end end
else else
@albums << GalleryAlbum.all @albums << GalleryAlbum.all
@ -32,10 +29,10 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
if @tags if @tags
if @tags.kind_of?(Array) if @tags.kind_of?(Array)
@tags.each do |tag| @tags.each do |tag|
@albums << category.gallery_albums.where(tag_ids: tag) @albums << category.gallery_albums.where(tagged_ids: tag)
end end
else else
@albums << category.gallery_albums.where(tag_ids: @tags) @albums << category.gallery_albums.where(tagged_ids: @tags)
end end
else else
@albums << category.gallery_albums.all @albums << category.gallery_albums.all
@ -46,10 +43,7 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
@albums.each do |album| @albums.each do |album|
@albs = Array.new @albs = Array.new
album.each do |values| album.each do |values|
tags = Array.new tags = Tag.find(values.tagged_ids).map{|t| t.name}
values.tag_ids.each do |tag|
tags << GalleryTag.find(tag)[I18n.locale]
end
category = GalleryCategory.find(values.gallery_category_id).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} @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 end
@ -63,10 +57,7 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
@images = @album.gallery_images.all @images = @album.gallery_images.all
@output = Array.new @output = Array.new
@images.each do |values| @images.each do |values|
tags = Array.new tags = Tag.find(values.tagged_ids).map{|t| t.name}
values.tag_ids.each do |tag|
tags << GalleryTag.find(tag)[I18n.locale]
end
@output << {:_id => values.id, @output << {:_id => values.id,
:theater_link => theater_panel_gallery_front_end_album_path(values), :theater_link => theater_panel_gallery_front_end_album_path(values),
:description => values.description, :description => values.description,
@ -95,10 +86,7 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController
@album = GalleryAlbum.find(@albumid) @album = GalleryAlbum.find(@albumid)
@images = @album.gallery_images.all @images = @album.gallery_images.all
tags = @album.tag_ids tags = @album.tag_ids
@tagnames = Array.new @tagnames = Tag.find(tags.tagged_ids).map{|t| t.name}
tags.each do |tag|
@tagnames << GalleryTag.find(tag)[I18n.locale]
end
@back_link = panel_gallery_front_end_album_path(@albumid) @back_link = panel_gallery_front_end_album_path(@albumid)
end end
end end

View File

@ -4,7 +4,7 @@ include AdminHelper
@authenticated = false @authenticated = false
@categorylist = GalleryCategory.all @categorylist = GalleryCategory.all
@cid = params['cat'] @cid = params['cat']
@tags = GalleryTag.all @tags = get_tags
end end
def new_category def new_category
@ -62,10 +62,10 @@ include AdminHelper
if @tags if @tags
if @tags.kind_of?(Array) if @tags.kind_of?(Array)
@tags.each do |tag| @tags.each do |tag|
@albums << GalleryAlbum.where(tag_ids: tag) @albums << GalleryAlbum.where(tagged_ids: tag)
end end
else else
@albums << GalleryAlbum.where(tag_ids: @tags) @albums << GalleryAlbum.where(tagged_ids: @tags)
end end
else else
@albums << GalleryAlbum.all @albums << GalleryAlbum.all
@ -76,10 +76,10 @@ include AdminHelper
if @tags if @tags
if @tags.kind_of?(Array) if @tags.kind_of?(Array)
@tags.each do |tag| @tags.each do |tag|
@albums << category.gallery_albums.where(tag_ids: tag) @albums << category.gallery_albums.where(tagged_ids: tag)
end end
else else
@albums << category.gallery_albums.where(tag_ids: @tags) @albums << category.gallery_albums.where(tagged_ids: @tags)
end end
else else
@albums << category.gallery_albums.all @albums << category.gallery_albums.all
@ -90,10 +90,7 @@ include AdminHelper
@albums.each do |album| @albums.each do |album|
@albs = Array.new @albs = Array.new
album.each do |values| album.each do |values|
tags = Array.new tags = Tag.find(values.tagged_ids).map{|t| t.name}
values.tag_ids.each do |tag|
tags << GalleryTag.find(tag)[I18n.locale]
end
category = GalleryCategory.find(values.gallery_category_id).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} @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 end

View File

@ -34,8 +34,7 @@ class Panel::WebResource::Widget::WebLinksController < OrbitWidgetController
@web_links = WebLink.all.can_display.available_for_lang(I18n.locale).any_in(:web_link_category => params[:category_id]).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :postdate ).page( params[:page_main] ).per(@page_num) @web_links = WebLink.all.can_display.available_for_lang(I18n.locale).any_in(:web_link_category => params[:category_id]).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :postdate ).page( params[:page_main] ).per(@page_num)
@web_link_categorys = WebLinkCategory.any_in(:_id => params[:category_id]).excludes('disable' => true) @web_link_categorys = WebLinkCategory.any_in(:_id => params[:category_id]).excludes('disable' => true)
elsif !params[:tag_id].blank? elsif !params[:tag_id].blank?
@tag = WebResourceTag.find(params[:tag_id]) rescue nil @web_links = WebLink.all.can_display.available_for_lang(I18n.locale).any_in(:tagged_ids => params[:tag_id]).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :postdate ).page( params[:page_main] ).per(@page_num)
@tag = WebResourceTag.where(key: params[:tag_id])[0] unless @tag
get_categorys get_categorys
else else
@web_links = WebLink.all.can_display.available_for_lang(I18n.locale).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :postdate ).page( params[:page_main] ).per(@page_num) @web_links = WebLink.all.can_display.available_for_lang(I18n.locale).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :postdate ).page( params[:page_main] ).per(@page_num)
@ -58,7 +57,7 @@ class Panel::WebResource::Widget::WebLinksController < OrbitWidgetController
# get_categorys # get_categorys
module_app = ModuleApp.first(:conditions => {:key => 'web_resource'}) module_app = ModuleApp.first(:conditions => {:key => 'web_resource'})
@tags = Tag.all(:conditions => {:module_app_id => module_app.id}) @tags = module_app.tags
end end
@ -75,7 +74,7 @@ class Panel::WebResource::Widget::WebLinksController < OrbitWidgetController
def get_tags def get_tags
module_app = ModuleApp.first(:conditions => {:key => 'web_resource'}) module_app = ModuleApp.first(:conditions => {:key => 'web_resource'})
@tags = Tag.all(:conditions => {:module_app_id => module_app.id}) rescue [] @tags = module_app.tags
end end
end end

View File

@ -121,7 +121,7 @@ class WritingConference
end end
def clean_checkboxs def clean_checkboxs
self.tag_ids.delete('') self.tagged_ids.delete('')
self.conference_author_type_ids.delete('') self.conference_author_type_ids.delete('')
self.conference_level_type_ids.delete('') self.conference_level_type_ids.delete('')
end end

View File

@ -73,7 +73,7 @@ class Diploma
end end
def clean_checkboxs def clean_checkboxs
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end

View File

@ -87,7 +87,7 @@ class Experience
end end
def clean_checkboxs def clean_checkboxs
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end

View File

@ -84,7 +84,7 @@ class Honor
end end
def clean_checkboxs def clean_checkboxs
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end

View File

@ -121,7 +121,7 @@ class WritingJournal
end end
def clean_checkboxs def clean_checkboxs
self.tag_ids.delete('') self.tagged_ids.delete('')
self.journal_author_type_ids.delete('') self.journal_author_type_ids.delete('')
self.journal_level_type_ids.delete('') self.journal_level_type_ids.delete('')
end end

View File

@ -101,7 +101,7 @@ class Lab
end end
def clean_checkboxs def clean_checkboxs
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end

View File

@ -101,7 +101,7 @@ class WritingPatent
end end
def clean_checkboxs def clean_checkboxs
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end

View File

@ -103,7 +103,7 @@ class Project
end end
def clean_checkboxs def clean_checkboxs
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end

View File

@ -98,7 +98,7 @@ class Research
end end
def clean_checkboxs def clean_checkboxs
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end

View File

@ -28,9 +28,7 @@ class Panel::WebResource::FrontEnd::WebLinksController < OrbitWidgetController
@web_links = WebLink.all.can_display.any_in(:web_link_category_id => params[:category_id]).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num) @web_links = WebLink.all.can_display.any_in(:web_link_category_id => params[:category_id]).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
@web_link_categorys = WebLinkCategory.any_in(:_id => params[:category_id]).excludes('disable' => true) @web_link_categorys = WebLinkCategory.any_in(:_id => params[:category_id]).excludes('disable' => true)
elsif !params[:tag_id].blank? elsif !params[:tag_id].blank?
@tag = WebResourceTag.find(params[:tag_id]) rescue nil @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)
@tag = WebResourceTag.where(key: params[:tag_id])[0] unless @tag
@web_links = @tag.web_links.can_display.desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
get_categorys get_categorys
else else

View File

@ -33,8 +33,7 @@ class Panel::WebResource::Widget::WebLinksController < OrbitWidgetController
@web_links = WebLink.all.can_display.any_in(:web_link_category_id => params[:category_id]).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num) @web_links = WebLink.all.can_display.any_in(:web_link_category_id => params[:category_id]).merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)
@web_link_categorys = WebLinkCategory.any_in(:_id => params[:category_id]).excludes('disable' => true) @web_link_categorys = WebLinkCategory.any_in(:_id => params[:category_id]).excludes('disable' => true)
elsif !params[:tag_id].blank? elsif !params[:tag_id].blank?
@tag = WebResourceTag.find(params[:tag_id]) rescue nil @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)
@tag = WebResourceTag.where(key: params[:tag_id])[0] unless @tag
get_categorys get_categorys
else else
@web_links = WebLink.all.can_display.merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num) @web_links = WebLink.all.can_display.merge(WebLinkCategory.excludes('disable' => true)).desc( :is_top, :created_at ).page( params[:page_main] ).per(@page_num)

View File

@ -77,7 +77,7 @@ class WebLink
end end
def clean_tags def clean_tags
self.tag_ids.delete('') self.tagged_ids.delete('')
end end
end end