OSDN Git Service

m
[pettanr/pettanr.git] / app / controllers / home_controller.rb
1 class HomeController < ApplicationController
2   layout 'test' if MagicNumber['test_layout']
3   before_filter :authenticate_user, :only => [
4     :index, :show, :profile, :configure, :create_token, :delete_token, 
5     :scrolls, :scroll_panels, :comics, :stories, :story_sheets, :sheets, :sheet_panels, :panels, :resource_pictures, :panel_pictures, :speech_balloons, :ground_pictures, :ground_colors
6   ]
7   before_filter :authenticate_author, :only => [:scrolls, :scroll_panels, :comics, :stories, :story_sheets, :sheets, :sheet_panels, :panels, :panel_pictures, :speech_balloons, :ground_pictures, :ground_colors]
8   before_filter :authenticate_artist, :only => [:resource_pictures]
9   
10   def index
11   end
12   
13   def profile
14   end
15   
16   def configure
17   end
18   
19   def create_token
20     if @user.create_token
21       respond_to do |format|
22         flash[:notice] = I18n.t('flash.notice.created', :model => User.human_attribute_name(:authentication_token))
23         format.html { redirect_to({:action => :configure}) }
24       end
25     else
26       flash[:notice] = I18n.t('flash.notice.not_created', :model => User.human_attribute_name(:authentication_token))
27       format.html { render action: "configure" }
28     end
29   end
30   
31   def delete_token
32     if @user.delete_token
33       respond_to do |format|
34         flash[:notice] = I18n.t('flash.notice.destroyed', :model => User.human_attribute_name(:authentication_token))
35         format.html { redirect_to :action => :configure}
36       end
37     else
38       flash[:notice] = I18n.t('flash.notice.not_destroyed', :model => User.human_attribute_name(:authentication_token))
39       format.html { render action: "configure" }
40     end
41   end
42   
43   def scrolls
44     @page = Author.page params[:page]
45     @page_size = Author.scroll_page_size params[:page_size]
46     @scrolls = Scroll.mylist(@author, @page, @page_size)
47
48     respond_to do |format|
49       format.html {
50         @paginate = Scroll.mylist_paginate(@author, @page, @page_size)
51         render :template => 'system/filer', :locals => {
52           :items => @scrolls, :model => Scroll, 
53           :roles => [@user, @admin], :pager => @paginate
54         }
55       }
56       format.json { render json: @scrolls.to_json(Scroll.list_json_opt) }
57     end
58   end
59   
60   def scroll_panels
61     @page = Author.page params[:page]
62     @page_size = Author.scroll_panel_page_size params[:page_size]
63     @scroll_panels = ScrollPanel.mylist(@author, @page, @page_size)
64
65     respond_to do |format|
66       format.html {
67         @paginate = ScrollPanel.mylist_paginate(@author, @page, @page_size)
68         render :template => 'system/filer', :locals => {
69           :items => @scroll_panels, :model => ScrollPanel, 
70           :roles => [@user, @admin], :pager => @paginate
71         }
72       }
73       format.json { render json: @scroll_panels.to_json(ScrollPanel.list_json_opt) }
74     end
75   end
76   
77   def comics
78     @page = Author.page params[:page]
79     @page_size = Author.comic_page_size params[:page_size]
80     @comics = Comic.mylist(@author, @page, @page_size)
81
82     respond_to do |format|
83       format.html {
84         @paginate = Comic.mylist_paginate(@author, @page, @page_size)
85         render :template => 'system/filer', :locals => {
86           :items => @comics, :model => Comic, 
87           :roles => [@user, @admin], :pager => @paginate
88         }
89       }
90       format.json { render json: @comics.to_json(Comic.list_json_opt) }
91     end
92   end
93   
94   def stories
95     @page = Author.page params[:page]
96     @page_size = Author.story_page_size params[:page_size]
97     @stories = Story.mylist(@author, @page, @page_size)
98
99     respond_to do |format|
100       format.html {
101         @paginate = Story.mylist_paginate(@author, @page, @page_size)
102         render :template => 'system/filer', :locals => {
103           :items => @stories, :model => Story, 
104           :roles => [@user, @admin], :pager => @paginate
105         }
106       }
107       format.json { render json: @stories.to_json(Story.list_json_opt) }
108     end
109   end
110   
111   def story_sheets
112     @page = Author.page params[:page]
113     @page_size = Author.story_sheet_page_size params[:page_size]
114     @story_sheets = StorySheet.mylist(@author, @page, @page_size)
115
116     respond_to do |format|
117       format.html {
118         @paginate = StorySheet.mylist_paginate(@author, @page, @page_size)
119         render :template => 'system/filer', :locals => {
120           :items => @story_sheets, :model => StorySheet, 
121           :roles => [@user, @admin], :pager => @paginate
122         }
123       }
124       format.json { render json: @story_sheets.to_json(StorySheet.list_json_opt) }
125     end
126   end
127   
128   def sheets
129     @page = Author.page params[:page]
130     @page_size = Author.sheet_page_size params[:page_size]
131     @sheets = Sheet.mylist(@author, @page, @page_size)
132
133     respond_to do |format|
134       format.html {
135         @paginate = Sheet.mylist_paginate(@author, @page, @page_size)
136         render :template => 'system/filer', :locals => {
137           :items => @sheets, :model => Sheet, 
138           :roles => [@user, @admin], :pager => @paginate
139         }
140       }
141       format.json { render json: @sheets.to_json(Sheet.list_json_opt) }
142     end
143   end
144   
145   def sheet_panels
146     @page = Author.page params[:page]
147     @page_size = Author.sheet_panel_page_size params[:page_size]
148     @sheet_panels = SheetPanel.mylist(@author, @page, @page_size)
149
150     respond_to do |format|
151       format.html {
152         @paginate = SheetPanel.mylist_paginate(@author, @page, @page_size)
153         render :template => 'system/filer', :locals => {
154           :items => @sheet_panels, :model => SheetPanel, 
155           :roles => [@user, @admin], :pager => @paginate
156         }
157       }
158       format.json { render json: @sheet_panels.to_json(SheetPanel.list_json_opt) }
159     end
160   end
161   
162   def panels
163     @page = Author.page params[:page]
164     @page_size = Author.panel_page_size params[:page_size]
165     @panels = Panel.mylist(@author, @page, @page_size)
166
167     respond_to do |format|
168       format.html {
169         @paginate = Panel.mylist_paginate(@author, @page, @page_size)
170         render :template => 'system/filer', :locals => {
171           :items => @panels, :model => Panel, 
172           :roles => [@user, @admin], :pager => @paginate
173         }
174       }
175       format.json { render text: Panel.list_as_json_text(@panels) }
176     end
177   end
178   
179   def panel_pictures
180     @page = Author.page params[:page]
181     @page_size = Author.panel_picture_page_size params[:page_size]
182     @panel_pictures = PanelPicture.mylist(@author, @page, @page_size)
183
184     respond_to do |format|
185       format.html {
186         @paginate = PanelPicture.mylist_paginate(@author, @page, @page_size)
187         render :template => 'system/filer', :locals => {
188           :items => @panel_pictures, :model => PanelPicture, 
189           :roles => [@user, @admin], :pager => @paginate
190         }
191       }
192       format.json { render json: @panel_pictures.to_json(PanelPicture.list_json_opt) }
193     end
194   end
195   
196   def speech_balloons
197     @page = Author.page params[:page]
198     @page_size = Author.speech_balloon_page_size params[:page_size]
199     @speech_balloons = SpeechBalloon.mylist(@author, @page, @page_size)
200
201     respond_to do |format|
202       format.html {
203         @paginate = SpeechBalloon.mylist_paginate(@author, @page, @page_size)
204         render :template => 'system/filer', :locals => {
205           :items => @speech_balloons, :model => SpeechBalloon, 
206           :roles => [@user, @admin], :pager => @paginate
207         }
208       }
209       format.json { render json: @speech_balloons.to_json(SpeechBalloon.list_json_opt) }
210     end
211   end
212   
213   def ground_pictures
214     @page = Author.page params[:page]
215     @page_size = Author.ground_picture_page_size params[:page_size]
216     @ground_pictures = GroundPicture.mylist(@author, @page, @page_size)
217
218     respond_to do |format|
219       format.html {
220         @paginate = GroundPicture.mylist_paginate(@author, @page, @page_size)
221         render :template => 'system/filer', :locals => {
222           :items => @ground_pictures, :model => GroundPicture, 
223           :roles => [@user, @admin], :pager => @paginate
224         }
225       }
226       format.json { render json: @ground_pictures.to_json(GroundPicture.list_json_opt) }
227     end
228   end
229   
230   def ground_colors
231     @page = Author.page params[:page]
232     @page_size = Author.ground_color_page_size params[:page_size]
233     @ground_colors = GroundColor.mylist(@author, @page, @page_size)
234
235     respond_to do |format|
236       format.html {
237         @paginate = GroundColor.mylist_paginate(@author, @page, @page_size)
238         render :template => 'system/filer', :locals => {
239           :items => @ground_colors, :model => GroundColor, 
240           :roles => [@user, @admin], :pager => @paginate
241         }
242       }
243       format.json { render json: @ground_colors.to_json(GroundColor.list_json_opt) }
244     end
245   end
246   
247   def resource_pictures
248     @page = Author.page params[:page]
249     @page_size = Author.resource_picture_page_size params[:page_size]
250     @resource_pictures = ResourcePicture.mylist(@artist, @page, @page_size)
251
252     respond_to do |format|
253       format.html {
254         @paginate = ResourcePicture.mylist_paginate(@author, @page, @page_size)
255         render :template => 'system/filer', :locals => {
256           :items => @resource_pictures, :model => ResourcePicture, 
257           :roles => [@user, @admin], :pager => @paginate
258         }
259       }
260       format.json { render json: @resource_pictures.to_json(ResourcePicture.list_json_opt) }
261     end
262   end
263   
264 end