OSDN Git Service

mrg
[pettanr/pettanr.git] / app / controllers / licenses_controller.rb
1 class LicensesController < ApplicationController
2   before_filter :authenticate_resource_reader, :only => [
3     :by_license_group, :by_system_picture, :count_by_license_group, :count_by_system_picture
4   ]
5   before_filter :authenticate_admin, :only => [:new, :create, :edit, :update, :destroy]
6
7   def self.model
8     License
9   end
10   
11   def index
12     filer_list
13   end
14   
15   def by_license_group
16     filer_list
17   end
18   
19   def by_system_picture
20     filer_list
21   end
22   
23   def show_html_format format
24     format.html {
25       @license = @item
26     }
27   end
28   
29   def show
30     set_show
31     respond_to do |format|
32       show_html_format format
33       show_prof_format format
34       show_json_format format
35     end
36   end
37
38   def search
39     @licenses = License.list_by_name(params[:name])
40     
41     respond_to do |format|
42       format.html
43       format.json { render json: @licenses.to_json }
44     end
45   end
46   
47   def count
48     list_count
49   end
50   
51   def count_by_license_group
52     list_count
53   end
54   
55   def count_by_system_picture
56     list_count
57   end
58   
59   def new
60     form_new
61   end
62   
63   def edit
64     form_edit
65   end
66   
67   def create
68     set_model
69     @item = @my_model_class.new
70     @item.supply_default 
71     @my_model_class.fold_extend_settings params[@my_model_class.item_name]
72     @item.attributes = params[@my_model_class.item_name]
73     @item.overwrite 
74     render_create
75   end
76   
77   def update
78     set_edit
79     @my_model_class.fold_extend_settings params[@my_model_class.item_name]
80     @item.attributes = params[@my_model_class.item_name]
81     @item.overwrite 
82     render_update
83   end
84   
85   def destroy
86     @item = self.class.model.edit(params[:id], @operators)
87     respond_to do |format|
88         flash[:notice] = I18n.t('flash.notice.not_destroyed', :model => self.class.model.model_name.human)
89         format.html { redirect_to @item }
90         format.json { render json: @item.errors, status: :unprocessable_entity }
91     end
92   end
93 end