| Class | HomeController |
| In: |
app/controllers/home_controller.rb
|
| Parent: | ApplicationController |
# File app/controllers/home_controller.rb, line 13
13: def add_database
14: @database = Database.new
15: if request.post?
16: @database = Database.new( params[:database] )
17: @database.save
18: unless @database.new_record?
19: flash[:notice] = 'new database added'
20: redirect_to :controller => 'home', :action => 'databases'
21: end
22: end
23: end
# File app/controllers/home_controller.rb, line 48
48: def add_driver
49: @driver = Driver.new
50: if request.post?
51: @driver = Driver.new( params[:driver] )
52: @driver.save
53: unless @driver.new_record?
54: flash[:notice] = 'new driver added'
55: redirect_to :controller => 'home', :action => 'drivers'
56: end
57: end
58: end
# File app/controllers/home_controller.rb, line 191
191: def add_group
192: @group = Group.new
193: if request.post?
194: @group = Group.new( params[:group] )
195: @group.save
196: unless @group.new_record?
197: flash[:notice] = 'new group added'
198: redirect_to :controller => 'home', :action => 'groups'
199: end
200: end
201: end
# File app/controllers/home_controller.rb, line 89
89: def add_group_permission
90: get_group params[:group_id]
91: permission = Permission.find( :first, :conditions => [ 'id = ?', params[:permission_id] ] )
92: if permission.nil?
93: flash[:notice] = 'permission not found'
94: redirect_to :controller => 'home', :action => 'group_permissions', :id => @group.id
95: end
96: if @group.group_permissions.include? permission
97: flash[:notice] = 'permission already exists'
98: else
99: @group.permissions << permission
100: flash[:notice] = 'new permission added'
101: end
102: redirect_to :controller => 'home', :action => 'group_permissions', :id => @group.id
103: end
# File app/controllers/home_controller.rb, line 156
156: def add_permission
157: @permission = Permission.new
158: if request.post?
159: @permission = Permission.new( params[:permission] )
160: @permission.save
161: unless @permission.new_record?
162: flash[:notice] = 'new permission added'
163: redirect_to :controller => 'home', :action => 'permissions'
164: end
165: end
166: end
# File app/controllers/home_controller.rb, line 226
226: def add_user
227: @user = User.new
228: if request.post?
229: @user = User.new( params[:user] )
230: @user.save
231: unless @user.new_record?
232: flash[:notice] = 'new user added'
233: redirect_to :controller => 'home', :action => 'users'
234: end
235: end
236: end
# File app/controllers/home_controller.rb, line 126
126: def add_user_group
127: get_user params[:user_id]
128: group = Group.find( :first, :conditions => [ 'id = ?', params[:group_id] ] )
129: if group.nil?
130: flash[:notice] = 'group not found'
131: redirect_to :controller => 'home', :action => 'user_groups', :id => @user.id
132: end
133: if @user.user_groups.include? group
134: flash[:notice] = 'group already exists'
135: else
136: @user.groups << group
137: flash[:notice] = 'new group added'
138: end
139: redirect_to :controller => 'home', :action => 'user_groups', :id => @user.id
140: end
# File app/controllers/home_controller.rb, line 9
9: def databases
10: @databases = Database.find( :all, :order => 'name' )
11: end
# File app/controllers/home_controller.rb, line 35
35: def del_database
36: get_database params[:id]
37: if request.post?
38: @database.destroy
39: flash[:notice] = 'database deleted'
40: redirect_to :controller => 'home', :action => 'databases'
41: end
42: end
# File app/controllers/home_controller.rb, line 70
70: def del_driver
71: get_driver params[:id]
72: if request.post?
73: @driver.destroy
74: flash[:notice] = 'driver deleted'
75: redirect_to :controller => 'home', :action => 'drivers'
76: end
77: end
# File app/controllers/home_controller.rb, line 213
213: def del_group
214: get_group params[:id]
215: if request.post?
216: @group.destroy
217: flash[:notice] = 'group deleted'
218: redirect_to :controller => 'home', :action => 'groups'
219: end
220: end
# File app/controllers/home_controller.rb, line 105
105: def del_group_permission
106: @group_permission = GroupPermission.find( :first, :conditions => [ 'id = ?', params[:id] ] )
107: @group = @group_permission.group
108: @permission = @group_permission.permission
109: if request.post?
110: @group_permission.destroy
111: flash[:notice] = 'group permission deleted'
112: redirect_to :controller => 'home', :action => 'group_permissions', :id => @group.id
113: end
114: end
# File app/controllers/home_controller.rb, line 178
178: def del_permission
179: get_permission params[:id]
180: if request.post?
181: @permission.destroy
182: flash[:notice] = 'permission deleted'
183: redirect_to :controller => 'home', :action => 'permissions'
184: end
185: end
# File app/controllers/home_controller.rb, line 271
271: def del_user
272: get_user params[:id]
273: if request.post?
274: @user.destroy
275: flash[:notice] = 'user deleted'
276: redirect_to :controller => 'home', :action => 'users'
277: end
278: end
# File app/controllers/home_controller.rb, line 142
142: def del_user_group
143: @user_group = UserGroup.find( :first, :conditions => [ 'id = ?', params[:id] ] )
144: user = @user_group.user
145: if request.post?
146: @user_group.destroy
147: flash[:notice] = 'user group deleted'
148: redirect_to :controller => 'home', :action => 'user_groups', :id => user.id
149: end
150: end
# File app/controllers/home_controller.rb, line 44
44: def drivers
45: @drivers = Driver.find( :all, :order => 'name' )
46: end
# File app/controllers/home_controller.rb, line 25
25: def edit_database
26: get_database params[:id]
27: if request.post?
28: if @database.update_attributes( params[:database] )
29: flash[:notice] = 'database updated'
30: redirect_to :controller => 'home', :action => 'databases'
31: end
32: end
33: end
# File app/controllers/home_controller.rb, line 60
60: def edit_driver
61: get_driver params[:id]
62: if request.post?
63: if @driver.update_attributes( params[:driver] )
64: flash[:notice] = 'driver updated'
65: redirect_to :controller => 'home', :action => 'drivers'
66: end
67: end
68: end
# File app/controllers/home_controller.rb, line 203
203: def edit_group
204: get_group params[:id]
205: if request.post?
206: if @group.update_attributes( params[:group] )
207: flash[:notice] = 'group updated'
208: redirect_to :controller => 'home', :action => 'groups'
209: end
210: end
211: end
# File app/controllers/home_controller.rb, line 168
168: def edit_permission
169: get_permission params[:id]
170: if request.post?
171: if @permission.update_attributes( params[:permission] )
172: flash[:notice] = 'permission updated'
173: redirect_to :controller => 'home', :action => 'permissions'
174: end
175: end
176: end
# File app/controllers/home_controller.rb, line 238
238: def edit_user
239: get_user params[:id]
240: if request.post?
241: #TODO: validate the fields below
242: @user2 = User.find_by_email( params[:user][:email] )
243: if @user2.nil? || @user2.id == @user.id
244: @user.update_attribute( 'email', params[:user][:email] )
245: end
246: @user.update_attribute( 'fname', params[:user][:fname] )
247: @user.update_attribute( 'lname', params[:user][:lname] )
248: @user.update_attribute( 'username', params[:user][:username] )
249: flash[:notice] = 'user updated'
250: redirect_to :controller => 'home', :action => 'users'
251: end
252: end
# File app/controllers/home_controller.rb, line 79
79: def group_permissions
80: get_group params[:id]
81: @group_permissions = @group.group_permissions
82: pids = @group_permissions.collect { |p| p.permission_id }
83: @permissions = []
84: Permission.find( :all, :order => 'name' ).each do |p|
85: @permissions << p unless pids.include? p.id
86: end
87: end
# File app/controllers/home_controller.rb, line 187
187: def groups
188: @groups = Group.find( :all, :order => 'name' )
189: end
# File app/controllers/home_controller.rb, line 5 5: def index 6: redirect_to :controller => :home, :action => :databases 7: end
# File app/controllers/home_controller.rb, line 152
152: def permissions
153: @permissions = Permission.find( :all, :order => 'name' )
154: end
# File app/controllers/home_controller.rb, line 254
254: def update_pass
255: get_user params[:user][:id]
256: if request.post?
257: #TODO: make password validation work from inside model
258: if params[:user][:password] == params[:user][:password_confirmation]
259: passwd_salt = User.salt
260: @user.update_attribute( 'passwd_salt', passwd_salt )
261: passwd_hash = User.hash_password( params[:user][:password], passwd_salt )
262: @user.update_attribute( 'passwd_hash', passwd_hash )
263: flash[:notice] = 'password updated'
264: redirect_to :controller => 'home', :action => 'users'
265: else
266: @user.errors.add( 'password_confirmation', 'passwords must match' )
267: end
268: end
269: end
# File app/controllers/home_controller.rb, line 116
116: def user_groups
117: get_user params[:id]
118: @user_groups = @user.user_groups
119: gids = @user_groups.collect { |g| g.group_id }
120: @groups = []
121: Group.find( :all, :order => 'name' ).each do |g|
122: @groups << g unless gids.include? g.id
123: end
124: end