Stats: Add ability to select date range
This commit is contained in:
@@ -30,6 +30,20 @@
|
||||
{% endmacro %}
|
||||
|
||||
|
||||
{% macro render_daterange_selector(options) %}
|
||||
<nav class="dropdown d-inline-block">
|
||||
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownDateRange" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||
{{ _("Date range...") }}
|
||||
</button>
|
||||
<div class="dropdown-menu" aria-labelledby="dropdownDateRange">
|
||||
{% for option in options %}
|
||||
<a class="dropdown-item" href="{{ option[1] }}">{{ option[0] }}</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</nav>
|
||||
{% endmacro %}
|
||||
|
||||
|
||||
{% macro render_package_stats(source, downloads) %}
|
||||
<noscript>
|
||||
<p class="alert alert-danger">
|
||||
|
||||
@@ -4,7 +4,8 @@
|
||||
{{ _("Statistics") }} - {{ package.title }}
|
||||
{% endblock %}
|
||||
|
||||
{% from "macros/stats.html" import render_package_stats, render_package_stats_js, render_package_selector %}
|
||||
{% from "macros/stats.html" import render_package_stats, render_package_stats_js,
|
||||
render_package_selector, render_daterange_selector with context %}
|
||||
|
||||
{% block scriptextra %}
|
||||
{{ render_package_stats_js() }}
|
||||
@@ -16,8 +17,9 @@
|
||||
<i class="fas fa-download mr-1"></i>
|
||||
{{ _("Download (.csv)") }}
|
||||
</a>
|
||||
{{ render_daterange_selector(options) }}
|
||||
{{ render_package_selector(package.author, package=package) }}
|
||||
</div>
|
||||
<h2 class="mt-0">{{ _("Statistics") }}</h2>
|
||||
{{ render_package_stats(package.getURL('api.package_stats'), package.downloads) }}
|
||||
{{ render_package_stats(package.getURL('api.package_stats', start=start, end=end), package.downloads) }}
|
||||
{% endblock %}
|
||||
|
||||
@@ -4,7 +4,8 @@
|
||||
{{ _("Statistics for %(display_name)s's packages", display_name=user.display_name) }}
|
||||
{% endblock %}
|
||||
|
||||
{% from "macros/stats.html" import render_package_stats, render_package_stats_js, render_package_selector %}
|
||||
{% from "macros/stats.html" import render_package_stats, render_package_stats_js,
|
||||
render_package_selector, render_daterange_selector with context %}
|
||||
|
||||
{% block scriptextra %}
|
||||
{{ render_package_stats_js() }}
|
||||
@@ -12,8 +13,9 @@
|
||||
|
||||
{% block content %}
|
||||
<div class="float-right">
|
||||
{{ render_daterange_selector(options) }}
|
||||
{{ render_package_selector(user, package=None) }}
|
||||
</div>
|
||||
<h2 class="mt-0">{{ self.title() }}</h2>
|
||||
{{ render_package_stats(url_for("api.user_stats", username=user.username), downloads) }}
|
||||
{{ render_package_stats(url_for("api.user_stats", username=user.username, start=start, end=end), downloads) }}
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user