2 class OriginalPicturesController < ApplicationController
3 layout 'test' if MagicNumber['test_layout']
4 before_filter :authenticate_user!, :only => [:index, :show, :history, :new, :edit, :create, :update, :destroy]
5 before_filter :authenticate_admin!, :only => [:list, :browse]
6 before_filter :authenticate_artist, :only => [:index, :show, :history, :new, :edit, :create, :update, :destroy]
8 # GET /original_pictures
9 # GET /original_pictures.json
11 @page = OriginalPicture.page params[:page]
12 @page_size = OriginalPicture.page_size params[:page_size]
13 @original_pictures = OriginalPicture.mylist(@artist.id, @page, @page_size)
15 respond_to do |format|
16 format.html # index.html.erb
17 format.json { render json: @original_pictures.to_json(OriginalPicture.list_json_opt) }
21 # GET /original_pictures/1
22 # GET /original_pictures/1.json
24 @original_picture = OriginalPicture.show(params[:id], @artist)
26 respond_to do |format|
27 opt = {:type => @original_picture.mime_type, :disposition=>"inline"}
28 format.png { send_data(@original_picture.restore, opt ) }
29 format.gif { send_data(@original_picture.restore, opt ) }
30 format.jpeg { send_data(@original_picture.restore, opt ) }
32 #ライセンス付与のために原画ライセンスグループ作成準備
33 @original_picture_license_group = OriginalPictureLicenseGroup.new :original_picture_id => @original_picture.id
36 format.json { render json: @original_picture.to_json(OriginalPicture.show_json_opt)}
41 @original_picture = OriginalPicture.show(params[:id], @artist)
42 @history = @original_picture.history
44 respond_to do |format|
45 format.html # index.html.erb
46 format.json { render json: @history.to_json }
51 @original_pictures = OriginalPicture.all
53 respond_to do |format|
54 format.html { render layout: 'system' }
55 format.json { render json: @original_pictures }
60 @original_picture = OriginalPicture.find(params[:id])
62 respond_to do |format|
63 format.html { render layout: 'system' }
64 format.json { render json: @original_picture }
68 # GET /original_pictures/new
69 # GET /original_pictures/new.json
71 @original_picture = OriginalPicture.new
72 @original_picture.supply_default
74 respond_to do |format|
75 format.html # new.html.erb
77 format.json { render json: @original_picture.to_json(OriginalPicture.show_json_opt) }
81 # GET /original_pictures/1/edit
83 @original_picture = OriginalPicture.edit(params[:id], @artist)
84 respond_to do |format|
90 # POST /original_pictures
91 # POST /original_pictures.json
93 @imager = PettanImager.load set_image params[:original_picture][:file]
94 @original_picture = OriginalPicture.new
95 @original_picture.supply_default
96 @original_picture.overwrite @artist
98 respond_to do |format|
99 if @original_picture.store(@imager)
100 format.html { redirect_to @original_picture, notice: 'Original picture was successfully created.' }
101 format.json { render json: @original_picture.to_json(OriginalPicture.show_json_opt), status: :created, location: @original_picture }
103 format.html { render action: "new" }
104 format.json { render json: @original_picture.errors, status: :unprocessable_entity }
109 # PUT /original_pictures/1
110 # PUT /original_pictures/1.json
112 @imager = PettanImager.load set_image params[:original_picture][:file]
113 @original_picture = OriginalPicture.edit(params[:id], @artist)
114 @original_picture.overwrite @artist
116 respond_to do |format|
117 if @original_picture.store(@imager)
118 format.html { redirect_to @original_picture, notice: 'Original picture was successfully created.' }
119 format.json { render json: @original_picture.to_json(OriginalPicture.show_json_opt), status: :created, location: @original_picture }
121 format.html { render action: "edit" }
122 format.json { render json: @original_picture.errors, status: :unprocessable_entity }
127 # DELETE /original_pictures/1
128 # DELETE /original_pictures/1.json
130 @original_picture = OriginalPicture.edit(params[:id], @artist)
131 OriginalPicture.transaction do
132 @original_picture.destroy
135 respond_to do |format|
136 format.html { redirect_to original_pictures_url }
137 format.json { head :ok }