From 5134f84b99674294d60d90d74ca979afd2ee40ec Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 16 Oct 2014 20:34:20 +0200 Subject: Dashboards - graphs: allow to choose source of the date (creation or reception) --- ishtar_common/views.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'ishtar_common/views.py') diff --git a/ishtar_common/views.py b/ishtar_common/views.py index e51704794..d20b8b2af 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -730,21 +730,27 @@ def dashboard_main_detail(request, item_name): 'ishtar/dashboards/dashboard_main_detail_users.html', dct, context_instance=RequestContext(request)) form = None - slicing, fltr = 'year', {} + slicing, date_source, fltr = 'year', None, {} if item_name in DASHBOARD_FORMS: if request.method == 'POST': form = DASHBOARD_FORMS[item_name](request.POST) if form.is_valid(): slicing = form.cleaned_data['slicing'] fltr = form.get_filter() + if hasattr(form, 'get_date_source'): + date_source = form.get_date_source() else: form = DASHBOARD_FORMS[item_name]() lbl, dashboard = None, None if item_name == 'files' and \ 'archaeological_files' in settings.INSTALLED_APPS: from archaeological_files.models import File - lbl, dashboard = (_(u"Archaeological files"), models.Dashboard(File, - slice=slicing, fltr=fltr)) + dashboard_kwargs = {'slice':slicing, 'fltr':fltr,} + # date_source is only relevant when the form has set one + if date_source: + dashboard_kwargs['date_source'] = date_source + lbl, dashboard = (_(u"Archaeological files"), + models.Dashboard(File, **dashboard_kwargs)) if item_name == 'operations': from archaeological_operations.models import Operation lbl, dashboard = (_(u"Operations"), models.Dashboard(Operation, -- cgit v1.2.3