diff --git a/app/projects/urls.py b/app/projects/urls.py index 642f48b6f..0d99e6bdd 100644 --- a/app/projects/urls.py +++ b/app/projects/urls.py @@ -280,4 +280,5 @@ # User Feedback path("user_feedback", user_feedback, name="user_feedback"), path("sponsor/feature", sponsor_feature, name="sponsor_feature"), + path("timeseries_dashboard", timeseries_dashboard, name="timeseries_dashboard"), ] diff --git a/app/projects/views.py b/app/projects/views.py index f2d036c09..7c58f498c 100644 --- a/app/projects/views.py +++ b/app/projects/views.py @@ -84,6 +84,29 @@ logger = logging.getLogger(__name__) +# views.py +@login_required +def timeseries_dashboard(request): + timeseries_qs = Timeseries.objects.filter(user=request.user).order_by("name", "id") + + selected_id = request.GET.get("selected") + selected_timeseries = None + + if selected_id: + try: + selected_timeseries = timeseries_qs.get(pk=selected_id) + except Timeseries.DoesNotExist: + selected_timeseries = None + else: + selected_timeseries = timeseries_qs.first() + + context = { + "timeseries_list": timeseries_qs, + "selected_timeseries": selected_timeseries, + } + return render(request, "asset/timeseries_dashboard.html", context) + + @require_http_methods(["GET"]) def not_implemented(request): """Function returns a message""" diff --git a/app/templates/asset/timeseries_dashboard.html b/app/templates/asset/timeseries_dashboard.html new file mode 100644 index 000000000..75750a829 --- /dev/null +++ b/app/templates/asset/timeseries_dashboard.html @@ -0,0 +1,296 @@ +{% extends 'base.html' %} + +{% block head_block %} +
+ +| Name | +Asset type | +Time step | +Points | +
|---|---|---|---|
| + + {{ ts.name|default:"Unnamed" }} + + | +{{ ts.get_asset_type_display|default:"-" }} | +{{ ts.time_step|default:"-" }} | +{{ ts.values|length }} | +
Upload your first time series or create one manually.
+ +