X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=app%2Fcontrollers%2Foriginal_pictures_controller.rb;h=db1c5048c8ae97efba4eff4b94dbf80a38c18237;hb=3d166dbc42073c430754b671cd9128af80da0b65;hp=9739a0ebfe3ef75e91d946fadd58994c33b66e11;hpb=f9240d899023f9b75eb0a87f0a32c675d1149ee9;p=pettanr%2Fpettanr.git diff --git a/app/controllers/original_pictures_controller.rb b/app/controllers/original_pictures_controller.rb index 9739a0eb..db1c5048 100644 --- a/app/controllers/original_pictures_controller.rb +++ b/app/controllers/original_pictures_controller.rb @@ -1,134 +1,120 @@ #原画 class OriginalPicturesController < ApplicationController - layout 'test' if MagicNumber['test_layout'] - before_filter :authenticate_user!, :only => [:index, :show, :history, :new, :edit, :create, :update, :destroy] - before_filter :authenticate_author, :only => [:index, :show, :history, :new, :edit, :create, :update, :destroy] - before_filter :authenticate_admin!, :only => [:list, :browse] - before_filter :authenticate_artist, :only => [:index, :show, :history, :new, :edit, :create, :update, :destroy] + before_filter :authenticate_reader, :only => [:show, :history] + before_filter :authenticate_user, :only => [:index, :new, :edit, :create, :update, :destroy] + before_filter :authenticate_artist, :only => [:index, :new, :edit, :create, :update, :destroy] - # GET /original_pictures - # GET /original_pictures.json def index - @page = OriginalPicture.page params[:page] - @page_size = OriginalPicture.page_size params[:page_size] - @original_pictures = OriginalPicture.mylist(@artist.id, @page, @page_size) - - respond_to do |format| - format.html # index.html.erb - format.json { render json: @original_pictures.to_json(OriginalPicture.list_json_opt) } - end + filer_list end - # GET /original_pictures/1 - # GET /original_pictures/1.json + def show_html_format format + format.html { + #ライセンス付与のために原画ライセンスグループ作成準備 + @original_picture_license_group = OriginalPictureLicenseGroup.new :original_picture_id => @item.id + render + } + end + + def show_json_format format + format.json { render json: @item.to_json( + {:include => {:resource_picture => {}} } + )} + end + def show - @original_picture = OriginalPicture.show(params[:id], @admin || @artist) - + set_show respond_to do |format| - opt = {:type => @original_picture.mime_type, :disposition=>"inline"} - format.png { send_data(@original_picture.restore, opt ) } - format.gif { send_data(@original_picture.restore, opt ) } - format.jpeg { send_data(@original_picture.restore, opt ) } - format.html { - #ライセンス付与のために原画ライセンスグループ作成準備 - @original_picture_license_group = OriginalPictureLicenseGroup.new :original_picture_id => @original_picture.id - render - } - format.json { render json: @original_picture.to_json(OriginalPicture.show_json_opt)} + opt = {:type => @item.mime_type, :disposition=>"inline"} + format.png { send_data(@item.restore(params[:subdir]), opt ) } + format.gif { send_data(@item.restore(params[:subdir]), opt ) } + format.jpeg { send_data(@item.restore(params[:subdir]), opt ) } + show_html_format format + show_prof_format format + show_json_format format end end def history - @original_picture = OriginalPicture.show(params[:id], @artist) - @history = @original_picture.history + set_show + @history = @item.history respond_to do |format| - format.html # index.html.erb + format.html format.json { render json: @history.to_json } end end - def list - @original_pictures = OriginalPicture.all - - respond_to do |format| - format.html { render layout: 'system' } - format.json { render json: @original_pictures } - end - end - - def browse - @original_picture = OriginalPicture.find(params[:id]) - - respond_to do |format| - format.html { render layout: 'system' } - format.json { render json: @original_picture } - end - end - def new - @original_picture = OriginalPicture.new - @original_picture.supply_default - + set_new respond_to do |format| - format.html # new.html.erb - format.js - format.json { render json: @original_picture.to_json(OriginalPicture.show_json_opt) } + format.html + format.json { render json: @item.to_json } end end - + def edit - @original_picture = OriginalPicture.edit(params[:id], @artist) + set_edit respond_to do |format| format.html - format.js + format.json { render json: @item.to_json } end end - + def create - @imager = PettanImager.load set_image params[:original_picture][:file] - @original_picture = OriginalPicture.new - @original_picture.supply_default - @original_picture.overwrite @artist - + set_model + @imager = if params[:original_picture] + PettanImager.load set_image params[:original_picture][:file] + else + nil + end + @item = OriginalPicture.new + @item.supply_default + @item.overwrite @operators + respond_to do |format| - if @original_picture.store(@imager) - flash[:notice] = I18n.t('flash.notice.created', :model => OriginalPicture.model_name.human) - format.html { redirect_to @original_picture } - format.json { render json: @original_picture.to_json(OriginalPicture.show_json_opt), status: :created, location: @original_picture } + if @item.store(@imager) + created_html_format format + created_json_format format else - format.html { render action: "new" } - format.json { render json: @original_picture.errors, status: :unprocessable_entity } + not_created_html_format format + not_created_json_format format end end end - + def update - @imager = PettanImager.load set_image params[:original_picture][:file] - @original_picture = OriginalPicture.edit(params[:id], @artist) - @original_picture.overwrite @artist - + set_model + @imager = if params[:original_picture] + PettanImager.load set_image params[:original_picture][:file] + else + nil + end + @item = OriginalPicture.edit(params[:id], @operators) + @item.overwrite @operators + respond_to do |format| - if @original_picture.store(@imager) - flash[:notice] = I18n.t('flash.notice.updated', :model => OriginalPicture.model_name.human) - format.html { redirect_to @original_picture } - format.json { render json: @original_picture.to_json(OriginalPicture.show_json_opt), status: :created, location: @original_picture } + if @item.store(@imager) + updated_html_format format + updated_json_format format else - format.html { render action: "edit" } - format.json { render json: @original_picture.errors, status: :unprocessable_entity } + not_updated_html_format format + not_updated_json_format format end end end - + def destroy - @original_picture = OriginalPicture.edit(params[:id], @artist) - OriginalPicture.transaction do - @original_picture.destroy - end + @item = OriginalPicture.edit(params[:id], @operators) respond_to do |format| - format.html { redirect_to original_pictures_url } - format.json { head :ok } + if @item.destroy_with_resource_picture + format.html { redirect_to original_pictures_url } + format.json { head :ok } + else + format.html { redirect_to original_picture_path(@item) } + format.json { render json: @item.errors, status: :unprocessable_entity } + end end end end