neptune/core/ui/views/drilldown.py

29 lines
986 B
Python

from django.contrib.auth.mixins import LoginRequiredMixin
from django.shortcuts import render
from django.views import View
from core.lib.opensearch import initialise_opensearch, run_main_query
client = initialise_opensearch()
class Drilldown(LoginRequiredMixin, View):
template_name = "ui/drilldown.html"
def get(self, request):
if not request.user.has_plan("drilldown"):
return render(request, "denied.html")
return render(request, self.template_name)
def post(self, request):
if not request.user.has_plan("drilldown"):
return render(request, "denied.html")
if "query" in request.POST:
query = request.POST["query"]
results = run_main_query(client, query)
print("RESULTS", results)
context = {"query": query}
print("CONTEXT", context)
return render(request, self.template_name, context)
return render(request, self.template_name)