Commit 12420a2256168a122b3a1f5a2c974df52fe802ec

Authored by Nihad Abbasov
1 parent e09cc195

refactor by_username_or_id

Showing 2 changed files with 2 additions and 10 deletions   Show diff stats
app/models/user.rb
... ... @@ -199,11 +199,7 @@ class User < ActiveRecord::Base
199 199 end
200 200  
201 201 def by_username_or_id(name_or_id)
202   - if (name_or_id.is_a?(Integer))
203   - User.find_by_id(name_or_id)
204   - else
205   - User.find_by_username(name_or_id)
206   - end
  202 + where('username = ? OR id = ?', name_or_id, name_or_id).first
207 203 end
208 204  
209 205 def build_user(attrs = {}, options= {})
... ...
lib/api/helpers.rb
... ... @@ -11,11 +11,7 @@ module API
11 11 # If the sudo is the current user do nothing
12 12 if (identifier && !(@current_user.id == identifier || @current_user.username == identifier))
13 13 render_api_error!('403 Forbidden: Must be admin to use sudo', 403) unless @current_user.is_admin?
14   - begin
15   - @current_user = User.by_username_or_id(identifier)
16   - rescue => ex
17   - not_found!("No user id or username for: #{identifier}")
18   - end
  14 + @current_user = User.by_username_or_id(identifier)
19 15 not_found!("No user id or username for: #{identifier}") if @current_user.nil?
20 16 end
21 17 @current_user
... ...