summaryrefslogtreecommitdiff
path: root/engines/support/app/controllers/tickets_controller.rb
diff options
context:
space:
mode:
authorazul <azul@leap.se>2014-07-10 11:06:20 +0200
committerazul <azul@leap.se>2014-07-10 11:06:20 +0200
commitc9dd5a342f902b27aec73af24776025a03feda48 (patch)
tree83472ae6cb3bbab1479e585e90de1fad9f45382b /engines/support/app/controllers/tickets_controller.rb
parentdc740e4311101bf7297996788b25a99edafbe759 (diff)
parent7b368ac4825686458be38460d8a77f4e9e0139ef (diff)
Merge pull request #174 from azul/bugfix/admin-navigates-all-tickets
Admin navigates all tickets - fixes #5879
Diffstat (limited to 'engines/support/app/controllers/tickets_controller.rb')
-rw-r--r--engines/support/app/controllers/tickets_controller.rb24
1 files changed, 8 insertions, 16 deletions
diff --git a/engines/support/app/controllers/tickets_controller.rb b/engines/support/app/controllers/tickets_controller.rb
index 1ccbd16..602bbd9 100644
--- a/engines/support/app/controllers/tickets_controller.rb
+++ b/engines/support/app/controllers/tickets_controller.rb
@@ -4,10 +4,10 @@ class TicketsController < ApplicationController
respond_to :html, :json
#has_scope :open, :type => boolean
- before_filter :fetch_user
before_filter :require_login, :only => [:index]
before_filter :fetch_ticket, except: [:new, :create, :index]
- before_filter :require_ticket_access, except: [:new, :create]
+ before_filter :require_ticket_access, except: [:new, :create, :index]
+ before_filter :fetch_user
before_filter :set_title
def new
@@ -129,22 +129,14 @@ class TicketsController < ApplicationController
end
def ticket_access?
- admin? or (
- @ticket &&
- @ticket.created_by.blank?
- ) or (
- @ticket &&
- @ticket.created_by == current_user.id
- ) or (
- @ticket.nil? &&
- @user &&
- @user.id == current_user.id
- )
+ admin? or
+ @ticket.created_by.blank? or
+ current_user.id == @ticket.created_by
end
def fetch_user
- if params[:user_id]
- @user = User.find(params[:user_id])
+ if admin?
+ @user = User.find(params[:user_id]) if params[:user_id]
else
@user = current_user
end
@@ -156,7 +148,7 @@ class TicketsController < ApplicationController
def search_options(params)
params.merge(
:admin_status => params[:user_id] ? 'mine' : 'all',
- :user_id => @user.id,
+ :user_id => @user ? @user.id : current_user.id,
:is_admin => admin?
)
end