Run report as a valid user; use username as part of tmp name

svn: r18304
This commit is contained in:
Doug Blank 2011-10-12 20:55:26 +00:00
parent f1ac71ac6c
commit 9364b9bc85

View File

@ -246,13 +246,9 @@ def send_file(request, filename):
def process_action(request, view, handle, action): def process_action(request, view, handle, action):
from cli.plug import run_report from cli.plug import run_report
db = DbDjango() db = DbDjango()
#context = RequestContext(request)
#context["tview"] = "Results"
#context["view"] = view
#context["handle"] = handle
#context["action"] = action
#context["message"] = "Your report ran. How to download?"
if view == "report": if view == "report":
if request.user.is_authenticated():
profile = request.user.get_profile()
if action == "run": if action == "run":
args = {} args = {}
if request.GET.has_key("options"): if request.GET.has_key("options"):
@ -262,10 +258,18 @@ def process_action(request, view, handle, action):
if "=" in pair: if "=" in pair:
key, value = pair.split("=", 1) key, value = pair.split("=", 1)
args[str(key)] = str(value) args[str(key)] = str(value)
#context["message"] = "args = '%s' " % args filename = "/tmp/%s-%s.pdf" % (str(profile.user.username), str(handle))
run_report(db, handle, off="pdf", of=("/tmp/%s.pdf" % str(handle)), **args) run_report(db, handle, off="pdf", of=filename, **args)
#return render_to_response("process_action.html", context) return send_file(request, filename)
return send_file(request, "/tmp/%s.pdf" % str(handle)) # If failure, just fail for now:
context = RequestContext(request)
context["tview"] = "Results"
#context["view"] = view
#context["handle"] = handle
#context["action"] = action
context["message"] = "You need to be logged in."
#context["message"] = filename
return render_to_response("process_action.html", context)
def view_detail(request, view, handle, action="view"): def view_detail(request, view, handle, action="view"):
context = RequestContext(request) context = RequestContext(request)