make user_id key flexible

pull/6827/head
Konstantin Haase 14 years ago
parent 439ec1c29c
commit 0a9b48cc85
  1. 10
      lib/report/controller.rb

@ -36,7 +36,7 @@ module Report::Controller
def create def create
@query.name = params[:query_name].present? ? params[:query_name] : ::I18n.t(:label_default) @query.name = params[:query_name].present? ? params[:query_name] : ::I18n.t(:label_default)
@query.is_public = !!params[:query_is_public] @query.is_public = !!params[:query_is_public]
@query.user_id = current_user_id.to_i @query.send("#{user_key}=", current_user.id)
@query.save! @query.save!
if request.xhr? # Update via AJAX - return url for redirect if request.xhr? # Update via AJAX - return url for redirect
render :text => url_for(:action => "show", :id => @query.id) render :text => url_for(:action => "show", :id => @query.id)
@ -257,13 +257,19 @@ module Report::Controller
session[report_engine.name.underscore.to_sym] = cookie session[report_engine.name.underscore.to_sym] = cookie
end end
##
# Override in subclass if user key
def user_key
'user_id'
end
## ##
# Find a report if :id was passed as parameter. # Find a report if :id was passed as parameter.
# Raises RecordNotFound if an invalid :id was passed. # Raises RecordNotFound if an invalid :id was passed.
def find_optional_report def find_optional_report
if params[:id] if params[:id]
@query = report_engine.find(params[:id].to_i, @query = report_engine.find(params[:id].to_i,
:conditions => ["(is_public = 1) OR (user_id = ?)", current_user_id]) :conditions => ["(is_public = 1) OR (#{user_key} = ?)", current_user.id])
if @query if @query
@query.deserialize @query.deserialize
else else

Loading…
Cancel
Save