From 88155330751fbe034daf8651cf293198ea881855 Mon Sep 17 00:00:00 2001 From: Rueshyna Date: Thu, 3 Jan 2013 18:16:00 +0800 Subject: [PATCH 1/3] correct pic file format --- .../gallery/back_end/albums_controller.rb | 2 +- .../gallery/front_end/albums_controller.rb | 200 +++++++++--------- 2 files changed, 98 insertions(+), 104 deletions(-) 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 fa7b5e3b2..56f6f1899 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 @@ -177,7 +177,7 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController theater_link: panel_gallery_back_end_album_image_path(values), description: values.description, title: values.title, - file: values.file, + file: values.file.as_json[:file], gallery_album_id: values.gallery_album_id, tag_ids: values.tag_ids, tag_names: tags} 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 51ba47cb3..07f85999f 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 @@ -1,110 +1,104 @@ class Panel::Gallery::FrontEnd::AlbumsController < OrbitWidgetController - - def index - - end + def index + end - def show - @album = GalleryAlbum.find(params[:id]) - @tags = Array.new - @album.tag_ids.each do |tag| - @tags << GalleryTag.find(tag)[I18n.locale] - end + def show + @album = GalleryAlbum.find(params[:id]) + @tags = Array.new + @album.tag_ids.each do |tag| + @tags << GalleryTag.find(tag)[I18n.locale] + end + end - end + def get_albums + @categoryids = params["cid"] + @tags = params["tid"] + @albums = Array.new + if @categoryids == "all" + if @tags + if @tags.kind_of?(Array) + @tags.each do |tag| + @albums << GalleryAlbum.where(tag_ids: tag) + end + else + @albums << GalleryAlbum.where(tag_ids: @tags) + end + else + @albums << GalleryAlbum.all + end + else + @categoryids.each do |id| + category = GalleryCategory.find(id) + if @tags + if @tags.kind_of?(Array) + @tags.each do |tag| + @albums << category.gallery_albums.where(tag_ids: tag) + end + else + @albums << category.gallery_albums.where(tag_ids: @tags) + end + else + @albums << category.gallery_albums.all + end + end + end + @output = Array.new + @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 + 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 + @output << @albs + end + render :json=>@output.to_json + end - def get_albums - @categoryids = params["cid"] - @tags = params["tid"] - @albums = Array.new - if @categoryids == "all" - if @tags - if @tags.kind_of?(Array) - @tags.each do |tag| - @albums << GalleryAlbum.where(tag_ids: tag) - end - else - @albums << GalleryAlbum.where(tag_ids: @tags) - end - else - @albums << GalleryAlbum.all - end - else - @categoryids.each do |id| - category = GalleryCategory.find(id) - if @tags - if @tags.kind_of?(Array) - @tags.each do |tag| - @albums << category.gallery_albums.where(tag_ids: tag) - end - else - @albums << category.gallery_albums.where(tag_ids: @tags) - end - else - @albums << category.gallery_albums.all - end - end - end - @output = Array.new - @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 - 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 - @output << @albs - end - render :json=>@output.to_json - end - - - - def imgs - @album = GalleryAlbum.find(params[:id]) - @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 - @output << {"_id"=>values.id,"theater_link"=>theater_panel_gallery_front_end_album_path(values),"description"=>values.description,"title"=>values.title,"file"=>values.file,"gallery_album_id"=>values.gallery_album_id,"tag_ids"=>values.tag_ids,"tag_names"=>tags} - end - render :json=>{"images" => @output}.to_json - end - - def images_tags - album = GalleryAlbum.find(params[:album_id]) - tags = Array.new - images = album.gallery_images.all - images.each do |image| - tags << {"id"=>image.id, "tags" => image.tag_ids} - end - render :json=>tags.to_json - end - - def theater - @image = GalleryImage.find(params[:id]) - @albumid = @image.gallery_album_id - @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 - @back_link = panel_gallery_front_end_album_path(@albumid) - end + def imgs + @album = GalleryAlbum.find(params[:id]) + @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 + @output << {:_id => values.id, + :theater_link => theater_panel_gallery_front_end_album_path(values), + :description => values.description, + :title => values.title, + :file => values.file.as_json[:file], + :gallery_album_id => values.gallery_album_id, + :tag_ids => values.tag_ids, + :tag_names => tags} + end + render :json=>{:images => @output}.to_json + end + def images_tags + album = GalleryAlbum.find(params[:album_id]) + tags = Array.new + images = album.gallery_images.all + images.each do |image| + tags << {"id"=>image.id, "tags" => image.tag_ids} + end + render :json=>tags.to_json + end + def theater + @image = GalleryImage.find(params[:id]) + @albumid = @image.gallery_album_id + @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 + @back_link = panel_gallery_front_end_album_path(@albumid) + end end - - - - - - From 5b289bc1d2f08fb164db35b1218f2d1633634947 Mon Sep 17 00:00:00 2001 From: chris Date: Thu, 3 Jan 2013 12:16:02 +0800 Subject: [PATCH 2/3] Fix old tags --- app/controllers/admin/tags_controller.rb | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/app/controllers/admin/tags_controller.rb b/app/controllers/admin/tags_controller.rb index cd5e00c93..8e8a4e6b6 100644 --- a/app/controllers/admin/tags_controller.rb +++ b/app/controllers/admin/tags_controller.rb @@ -46,12 +46,16 @@ class Admin::TagsController < OrbitBackendController protected - def set_module_app - @module_app ||= ModuleApp.first(:conditions => {:key => @app_title.underscore}) rescue nil - end - def get_tags @tags = (@module_app ? @module_app.tags : Tag.all) end + + def setup_vars + @app_key = request.env['HTTP_REFERER'].split('/')[4] + if @app_key + @app_key.gsub!(/[?].*/, '') + @module_app = ModuleApp.first(conditions: {:key => @app_key}) + end + end end From fa83dbf79140f95a5abd985596fa6068af6a148f Mon Sep 17 00:00:00 2001 From: chris Date: Thu, 3 Jan 2013 19:12:52 +0800 Subject: [PATCH 3/3] Fix order in structure --- app/models/item.rb | 4 ++-- app/models/page.rb | 11 +++-------- lib/tasks/migrate.rake | 12 ++++++++++++ 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/app/models/item.rb b/app/models/item.rb index 1809e2b2a..6b34d8b81 100644 --- a/app/models/item.rb +++ b/app/models/item.rb @@ -47,10 +47,10 @@ class Item new_parent = Item.find(new_parent) current_position_sibling = find_by_parent_and_position(new_parent, position.to_i) if current_position_sibling - current_position_sibling.at_bottom? ? move_below(current_position_sibling) : move_above(current_position_sibling) + move_above(current_position_sibling) elsif self.parent != new_parent self.parent = new_parent - save! + save end end end diff --git a/app/models/page.rb b/app/models/page.rb index 5c1a7b243..bc257eaa1 100644 --- a/app/models/page.rb +++ b/app/models/page.rb @@ -24,14 +24,12 @@ class Page < Item has_many :page_metas, :autosave => true, :dependent => :destroy accepts_nested_attributes_for :page_parts, :allow_destroy => true - before_save :delete_empty_frontend_field before_save :create_parts, if: Proc.new { |page| page.new_record? || page.design_id_changed? } - after_save :generate_html + before_save :delete_empty_frontend_field, :generate_html -# protected + protected def create_parts - page_design = self.design parent = self.parent menu_part = parent.page_parts.detect{|page_part| page_part.kind.eql?('public_r_tag') && page_part.public_r_tag.eql?('sub_menu') && page_part.public_r_tag_object_id.eql?(parent.id.to_s)} if parent @@ -73,10 +71,7 @@ class Page < Item end def generate_html - Page.without_callback(:save, :after, :generate_html) do - self.content_translations = parse_page_noko(self, Site.first) - self.save - end + self.content_translations = parse_page_noko(self, Site.first) end end diff --git a/lib/tasks/migrate.rake b/lib/tasks/migrate.rake index 74d1f53a0..216a3ac13 100644 --- a/lib/tasks/migrate.rake +++ b/lib/tasks/migrate.rake @@ -350,4 +350,16 @@ namespace :migrate do ModuleApp.new.from_json(File.open("#{Rails.root}/vendor/built_in_modules/gallery/gallery.json").read).save end + task :reorder_items => :environment do + reorder_children(Item.root) + end + + def reorder_children(parent) + parent.children.each_with_index do |child, i| + child.position = i + child.save + reorder_children(child) if child.children + end + end + end