modified gallery json format but it have some bugs...

This commit is contained in:
Rueshyna 2012-11-14 12:01:42 +08:00 committed by chris
parent 36b4cb1ec1
commit 310d7523bd
2 changed files with 34 additions and 24 deletions

View File

@ -1,7 +1,7 @@
class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
include AdminHelper include AdminHelper
before_filter :force_order_for_user, :except => [:index,:get_album_json] before_filter :force_order_for_user, :except => [:index,:get_album_json,:get_img_json]
def index def index
if is_manager? || is_admin? || is_sub_manager? if is_manager? || is_admin? || is_sub_manager?
@ -119,37 +119,42 @@ class Panel::Gallery::BackEnd::AlbumsController < OrbitBackendController
albums.each do |album| albums.each do |album|
tag_names = Array.new tag_names = Array.new
all_image = Array.new
images = album.gallery_images.all
images.each do |image|
tags = Array.new
image.tag_ids.each do |tag|
tags << GalleryTag.find(tag)[I18n.locale]
end
all_image << {
image_title: image.title,
image_description: image.description,
image_file: { url: "http://#{request.host_with_port}#{image.file.url}",
thumb: "http://#{request.host_with_port}#{image.file.thumb.to_s}"},
image_tag_names: tags}
end
album.tag_ids.each do |tag| album.tag_ids.each do |tag|
tag_names << GalleryTag.find(tag)[I18n.locale] tag_names << GalleryTag.find(tag)[I18n.locale]
end 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}",
album_name: album.name, album_name: album.name,
album_tag_names: tag_names, album_tag_names: tag_names,
images: all_image album_link:"http://#{request.host_with_port}"
} }
end end
#render :json=>{:images => @output, render :json=>JSON.pretty_generate(output)
# :tag_names => @tag_names}.to_json end
def get_img_json
album = GalleryAlbum.find(params[:album_id])
images = album.gallery_images.all
output = Array.new
images.each do |image|
tags = Array.new
image.tag_ids.each do |tag|
tags << GalleryTag.find(tag)[I18n.locale]
end
all_image << {
image_title: image.title,
image_description: image.description,
image_file: { url: "http://#{request.host_with_port}#{image.file.url}",
thumb: "http://#{request.host_with_port}#{image.file.thumb.to_s}"},
image_tag_names: tags}
end
render :json=>JSON.pretty_generate(output) render :json=>JSON.pretty_generate(output)
end end

View File

@ -12,6 +12,11 @@ Rails.application.routes.draw do
match "imgs" => "albums#imgs" match "imgs" => "albums#imgs"
match "upload_panel" => "albums#upload_panel" match "upload_panel" => "albums#upload_panel"
match "images_tags" => "albums#images_tags" match "images_tags" => "albums#images_tags"
match "get_img_json/:album_id" => "album_images#get_img_json"
collection do
get "get_album_json"
end
end end
match "album_images/#!/:id" => "album_images#show" match "album_images/#!/:id" => "album_images#show"