OSDN Git Service

t#30444:add site profile
[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     :comic, :story, :panel, :resource_picture, :panel_picture, :panel_color, :ground_picture, :ground_color
6   ]
7   before_filter :authenticate_author, :only => [
8     :index, :show, :profile, :configure, :create_token, :delete_token, 
9     :comic, :story, :panel, :resource_picture, :panel_picture, :panel_color, :ground_picture, :ground_color
10   ]
11   before_filter :authenticate_artist, :only => [:resource_picture]
12   
13   def index
14   end
15   
16   def profile
17   end
18   
19   def configure
20   end
21   
22   def create_token
23     if @user.create_token
24       respond_to do |format|
25         flash[:notice] = I18n.t('flash.notice.created', :model => User.human_attribute_name(:authentication_token))
26         format.html { redirect_to({:action => :configure}) }
27       end
28     else
29       flash[:notice] = I18n.t('flash.notice.not_created', :model => User.human_attribute_name(:authentication_token))
30       format.html { render action: "configure" }
31     end
32   end
33   
34   def delete_token
35     if @user.delete_token
36       respond_to do |format|
37         flash[:notice] = I18n.t('flash.notice.destroyed', :model => User.human_attribute_name(:authentication_token))
38         format.html { redirect_to :action => :configure}
39       end
40     else
41       flash[:notice] = I18n.t('flash.notice.not_destroyed', :model => User.human_attribute_name(:authentication_token))
42       format.html { render action: "configure" }
43     end
44   end
45   
46   def comic
47     @page = Author.page params[:page]
48     @page_size = Author.comic_page_size params[:page_size]
49     @comics = Comic.mylist(@author, @page, @page_size)
50
51     respond_to do |format|
52       format.html # index.html.erb
53       format.json { render json: @comics.to_json(Comic.list_json_opt) }
54     end
55   end
56   
57   def story
58     @page = Author.page params[:page]
59     @page_size = Author.story_page_size params[:page_size]
60     @stories = Story.mylist(@author, @page, @page_size)
61
62     respond_to do |format|
63       format.html # index.html.erb
64       format.json { render text: Story.list_as_json_text(@stories) }
65     end
66   end
67   
68   def panel
69     @page = Author.page params[:page]
70     @page_size = Author.panel_page_size params[:page_size]
71     @panels = Panel.mylist(@author, @page, @page_size)
72
73     respond_to do |format|
74       format.html # index.html.erb
75       format.json { render text: Panel.list_as_json_text(@panels) }
76     end
77   end
78   
79   def panel_picture
80     @page = Author.page params[:page]
81     @page_size = Author.panel_picture_page_size params[:page_size]
82     @panel_pictures = PanelPicture.mylist(@author, @page, @page_size)
83
84     respond_to do |format|
85       format.html # index.html.erb
86       format.json { render json: @panel_pictures.to_json(PanelPicture.list_json_opt) }
87     end
88   end
89   
90   def panel_color
91     @page = Author.page params[:page]
92     @page_size = Author.panel_page_size params[:page_size]
93     @panel_colors = PanelColor.mylist(@author, @page, @page_size)
94
95     respond_to do |format|
96       format.html # index.html.erb
97       format.json { render json: @panel_colors.to_json(PanelColor.list_json_opt) }
98     end
99   end
100   
101   def ground_picture
102     @page = Author.page params[:page]
103     @page_size = Author.panel_page_size params[:page_size]
104     @ground_pictures = GroundPicture.mylist(@author, @page, @page_size)
105
106     respond_to do |format|
107       format.html # index.html.erb
108       format.json { render json: @ground_pictures.to_json(GroundPicture.list_json_opt) }
109     end
110   end
111   
112   def ground_color
113     @page = Author.page params[:page]
114     @page_size = Author.panel_page_size params[:page_size]
115     @ground_colors = GroundColor.mylist(@author, @page, @page_size)
116
117     respond_to do |format|
118       format.html # index.html.erb
119       format.json { render json: @ground_colors.to_json(GroundColor.list_json_opt) }
120     end
121   end
122   
123   def resource_picture
124     @page = Author.page params[:page]
125     @page_size = Author.panel_page_size params[:page_size]
126     @resource_pictures = ResourcePicture.mylist(@author, @page, @page_size)
127
128     respond_to do |format|
129       format.html # index.html.erb
130       format.json { render json: @resource_pictures.to_json(ResourcePicture.list_json_opt) }
131     end
132   end
133   
134 end