OSDN Git Service

baf9300092292e19a32737bae3a384cde664dfa1
[pettanr/pettanr.git] / app / controllers / home_controller.rb
1 class HomeController < ApplicationController
2   layout 'test' if Pettanr::TestLayout
3   before_filter :authenticate_user!, :only => [
4     :index, :show, :profile, :configure, :create_token, :delete_token, :step2, :save_step2, :step3, :save_step3, 
5     :comic, :panel, :picture, :panel_picture, :panel_color, :ground_picture, :ground_color
6   ]
7   before_filter :authenticate_artist, :only => [:picture]
8   
9   def index
10   end
11   
12   def profile
13   end
14   
15   def configure
16   end
17   
18   def create_token
19     respond_to do |format|
20       if @user.create_token
21         format.html { redirect_to({:action => :configure}, {:notice => 'user token was successfully created.'}) }
22       else
23         format.html { render action: "auth_token" }
24       end
25     end
26   end
27   
28   def delete_token
29     @user.delete_token
30     respond_to do |format|
31       format.html { redirect_to :action => :configure}
32     end
33   end
34   
35   def step2
36   end
37   
38   def save_step2
39     respond_to do |format|
40       if @author.step2(params[:author][:name])
41         a = if params[:step3].to_i == 1
42           :step3
43         else
44           :index
45         end
46         format.html { redirect_to({:action => a}, {:notice => 'your name was successfully updated.'}) }
47       else
48         format.html { render action: "step2" }
49       end
50     end
51   end
52   
53   def step3
54   end
55   
56   def save_step3
57     if @author.artist?
58       redirect_to :action => :index
59     else
60       @artist = Artist.new params[:artist]
61       respond_to do |format|
62         if @artist.save
63           format.html { redirect_to({:action => :index}, {:notice => 'artist was successfully registered.'}) }
64         else
65           format.html { render action: "step3" }
66         end
67       end
68     end
69   end
70   
71   def comic
72     @page = Author.page params[:page]
73     @page_size = Author.comic_page_size params[:page_size]
74     @comics = Comic.mylist(@author, @page, @page_size)
75
76     respond_to do |format|
77       format.html # index.html.erb
78       format.json { render json: @comics.to_json(Comic.list_json_opt) }
79     end
80   end
81   
82   def panel
83     @page = Author.page params[:page]
84     @page_size = Author.panel_page_size params[:page_size]
85     @panels = Panel.mylist(@author, @page, @page_size)
86
87     respond_to do |format|
88       format.html # index.html.erb
89       format.json { render json: @panels.to_json(Panel.list_json_opt) }
90     end
91   end
92   
93   def picture
94     @page = OriginalPicture.page params[:page]
95     @page_size = OriginalPicture.page_size params[:page_size]
96     @original_pictures = OriginalPicture.mylist(@artist.id, @page, @page_size)
97
98     respond_to do |format|
99       format.html # index.html.erb
100       format.json { render json: @original_pictures.to_json(OriginalPicture.list_json_opt) }
101     end
102   end
103   
104   def panel_picture
105     @page = Author.page params[:page]
106     @page_size = Author.panel_picture_page_size params[:page_size]
107     @panel_pictures = PanelPicture.mylist(@author, @page, @page_size)
108
109     respond_to do |format|
110       format.html # index.html.erb
111       format.json { render json: @panel_pictures.to_json(PanelPicture.list_json_opt) }
112     end
113   end
114   
115   def panel_color
116     @page = Author.page params[:page]
117     @page_size = Author.panel_page_size params[:page_size]
118     @panel_colors = PanelColor.mylist(@author, @page, @page_size)
119
120     respond_to do |format|
121       format.html # index.html.erb
122       format.json { render json: @panel_colors.to_json(PanelColor.list_json_opt) }
123     end
124   end
125   
126   def ground_picture
127     @page = Author.page params[:page]
128     @page_size = Author.panel_page_size params[:page_size]
129     @ground_pictures = GroundPicture.mylist(@author, @page, @page_size)
130
131     respond_to do |format|
132       format.html # index.html.erb
133       format.json { render json: @ground_pictures.to_json(GroundPicture.list_json_opt) }
134     end
135   end
136   
137   def ground_color
138     @page = Author.page params[:page]
139     @page_size = Author.panel_page_size params[:page_size]
140     @ground_colors = GroundColor.mylist(@author, @page, @page_size)
141
142     respond_to do |format|
143       format.html # index.html.erb
144       format.json { render json: @ground_colors.to_json(GroundColor.list_json_opt) }
145     end
146   end
147   
148 end