1 class ResourcePicturesController < ApplicationController
2 layout 'test' if Pettanr::TestLayout
3 before_filter :authenticate_user!, :only => [:index, :show, :credit, :new, :create, :update]
4 before_filter :authenticate_admin!, :only => [:list, :browse]
5 before_filter :authenticate_artist, :only => [:new, :create]
7 # GET /resource_pictures
8 # GET /resource_pictures.json
10 @page = ResourcePicture.page params[:page]
11 @page_size = ResourcePicture.page_size params[:page_size]
12 @resource_pictures = ResourcePicture.list(@page, @page_size)
14 respond_to do |format|
15 format.html # index.html.erb
16 format.json { render :json => @resource_pictures.to_json(ResourcePicture.list_json_opt) }
20 # GET /resource_pictures/1
21 # GET /resource_pictures/1.json
23 @resource_picture = ResourcePicture.show(params[:id], @author)
25 respond_to do |format|
26 opt = {:type => @resource_picture.mime_type, :disposition=>"inline"}
27 format.png { send_data(@resource_picture.restore(params[:subdir]), opt ) }
28 format.gif { send_data(@resource_picture.restore(params[:subdir]), opt ) }
29 format.jpeg { send_data(@resource_picture.restore(params[:subdir]), opt ) }
30 format.html # show.html.erb
31 format.json { render :json => @resource_picture.to_json(ResourcePicture.show_json_opt)}
36 @resource_picture = ResourcePicture.show(params[:id], @author)
38 respond_to do |format|
39 format.html { render :layout => false } # show.html.erb
40 format.json { render :json => @resource_picture.to_json(ResourcePicture.show_json_opt)}
45 @original_picture = OriginalPicture.edit params[:original_picture_id], @artist
46 @imager = PettanImager.load @original_picture.restore
47 @original_picture_license_group = OriginalPictureLicenseGroup.new params[:original_picture_license_group]
48 @license_group = LicenseGroup.show @original_picture_license_group.license_group_id
49 @resource_picture = @original_picture.resource_picture
50 unless @resource_picture
51 @resource_picture = ResourcePicture.new
52 @resource_picture.supply_default
54 @resource_picture.attributes = params[:resource_picture]
55 @resource_picture.overwrite @original_picture
56 @license = @resource_picture.license
58 respond_to do |format|
59 format.html # new.html.erb
65 @original_picture = OriginalPicture.edit params[:original_picture_id], @artist
66 @imager = PettanImager.load @original_picture.restore
67 @original_picture_license_group = OriginalPictureLicenseGroup.new params[:original_picture_license_group]
68 @license_group = LicenseGroup.show @original_picture_license_group.license_group_id
69 @resource_picture = @original_picture.resource_picture
70 unless @resource_picture
71 @resource_picture = ResourcePicture.new
72 @resource_picture.supply_default
74 @resource_picture.attributes = params[:resource_picture]
75 @resource_picture.overwrite @original_picture
76 @license = @resource_picture.license
78 respond_to do |format|
79 if @resource_picture.store(@imager)
80 format.html { redirect_to @resource_picture }
81 format.json { render json: @resource_picture.to_json(ResourcePicture.show_json_opt), status: :created, location: @resource_picture }
83 format.html { render action: "new" }
84 format.json { render json: @resource_picture.errors, status: :unprocessable_entity }
90 @resource_picture = {:count => ResourcePicture.visible_count}
91 respond_to do |format|
92 format.json { render json: @resource_picture.to_json }
97 @resource_pictures = ResourcePicture.all
99 respond_to do |format|
100 format.html { render layout: 'system' }
101 format.json { render json: @resource_pictures }
106 @resource_picture = ResourcePicture.find(params[:id])
108 respond_to do |format|
109 format.html { render layout: 'system' }
110 format.json { render json: @resource_picture }