date and search filters on stored analyses
This commit is contained in:
@@ -1966,7 +1966,30 @@ class SavedAnalysisView(UserPassesTestMixin, View):
|
||||
self.r = getrequestrower(request, userid=self.userid)
|
||||
if self.r is not None and not is_coach_user(self.request.user, self.r.user):
|
||||
raise PermissionDenied("You are not allowed to see analyses for this user")
|
||||
|
||||
self.analyses = self.analysis_class.objects.filter(rower=self.r).order_by("-date","-id")
|
||||
query = request.GET.get('q')
|
||||
startdate = request.GET.get('startdate')
|
||||
enddate = request.GET.get('enddate')
|
||||
self.searchform = SearchForm()
|
||||
if query:
|
||||
query_list = query.split()
|
||||
self.analyses = self.analyses.filter(
|
||||
reduce(operator.and_,
|
||||
(Q(name__icontains=q) for q in query_list)) |
|
||||
reduce(operator.and_,
|
||||
(Q(notes__icontains=q) for q in query_list))
|
||||
)
|
||||
self.searchform = SearchForm(initial={'q': query})
|
||||
date_initial = {}
|
||||
if startdate:
|
||||
self.analyses = self.analyses.filter(date__gte=startdate)
|
||||
date_initial['startdate'] = startdate
|
||||
if enddate:
|
||||
self.analyses = self.analyses.filter(date__lte=enddate)
|
||||
date_initial['enddate'] = enddate
|
||||
self.dateform = DateRangeForm(initial=date_initial)
|
||||
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
return render(request, self.template_name,
|
||||
@@ -1977,6 +2000,8 @@ class SavedAnalysisView(UserPassesTestMixin, View):
|
||||
'the_script': self.script,
|
||||
'the_div': self.div,
|
||||
'selected': self.selected,
|
||||
'searchform': self.searchform,
|
||||
'dateform': self.dateform,
|
||||
})
|
||||
|
||||
def post(self, request, *args, **kwargs):
|
||||
@@ -1989,7 +2014,7 @@ class SavedAnalysisView(UserPassesTestMixin, View):
|
||||
request.session['analyses'] = [a.id for a in self.selected]
|
||||
# now should redirect to analysis
|
||||
self.script, self.div = self.chart(self.selected)
|
||||
|
||||
|
||||
return render(request, self.template_name,
|
||||
{
|
||||
'breadcrumbs': self.breadcrumbs,
|
||||
|
||||
Reference in New Issue
Block a user