From 7f4a41d6b10dae9b31c3baea19b4be280c1f9b45 Mon Sep 17 00:00:00 2001 From: Ilya Shakhat Date: Tue, 5 Jul 2016 16:24:01 +0300 Subject: [PATCH] Introduce initial Twitter integration Change-Id: I372a25126c4de9827e1dc99114e3c53690d05bc2 --- stackalytics/dashboard/reports.py | 13 + stackalytics/dashboard/templates/base.html | 11 +- .../templates/reports/company_activity.html | 2 +- .../dashboard/templates/reports/record.html | 227 ++++++++++++++++++ .../templates/reports/user_activity.html | 2 +- 5 files changed, 252 insertions(+), 3 deletions(-) create mode 100644 stackalytics/dashboard/templates/reports/record.html diff --git a/stackalytics/dashboard/reports.py b/stackalytics/dashboard/reports.py index 94d7031fd..90dd93bc9 100644 --- a/stackalytics/dashboard/reports.py +++ b/stackalytics/dashboard/reports.py @@ -272,6 +272,19 @@ def company_activity(company): return result +@blueprint.route('/record/') +@decorators.templated() +@decorators.exception_handler() +def record(record_id): + memory_storage_inst = vault.get_memory_storage() + record_obj = memory_storage_inst.get_record_by_primary_key(record_id) + if not record_obj: + flask.abort(404) + + result = dict(record=helpers.get_activity([record_obj], 0, 1)[0]) + return result + + @blueprint.route('/activity') @decorators.templated() @decorators.exception_handler() diff --git a/stackalytics/dashboard/templates/base.html b/stackalytics/dashboard/templates/base.html index a44f1621c..e3ba390d4 100644 --- a/stackalytics/dashboard/templates/base.html +++ b/stackalytics/dashboard/templates/base.html @@ -1,5 +1,5 @@ - + @@ -16,6 +16,15 @@ + {% if page_title %} + + + + + + + {% endif %} + diff --git a/stackalytics/dashboard/templates/reports/company_activity.html b/stackalytics/dashboard/templates/reports/company_activity.html index 38dc0e462..9430a1240 100644 --- a/stackalytics/dashboard/templates/reports/company_activity.html +++ b/stackalytics/dashboard/templates/reports/company_activity.html @@ -2,7 +2,7 @@ {% import '_macros/activity_log.html' as activity_log %} {% import '_macros/contribution_summary.html' as contribution_summary %} -{% set page_title = company_name + " | OpenStack activity report" %} +{% set page_title = company_name + " activity report" %} {% block scripts %} +{% endblock %} + +{% block content %} + +

Contribution Record

+ +
+ +
+
+
+ +
+ + {% if record.coauthor %} +
+ {% for value in record.coauthor %} + {% if loop.index>0 %}, {% endif %} + {{ value.author_link | safe }} ({{ value.company_link | safe }}) + {% endfor %} +
+ {% else %} +
{{ record.author_link | safe }} + ({{ record.company_link | safe }}) +
+ {% endif %} + +
{{ record.date_str }} + in {{ record.module_link | safe }} + {% if record.record_type in ["mark", "review", "patch", "ci", "tr"] %} + {% if record.branch != "master" %}({{ record.branch }}){% endif %} + {% endif %} + {% if record.record_type == "commit" %} + {% if record.branches.find("master") < 0 %}({{ record.branches }}) + {% endif %} + {% endif %} +
+ + {% if record.record_type == "commit" %} +
Commit “{{ record.subject }}”
+
{{ record.tweet | safe }}
+ {% if record.commit_date_str != "" and record.commit_date_str != date_str %} +
Commit date: {{ record.commit_date_str }}
+ {% endif %} + {% if record.correction_comment != "" %} +
Commit corrected: + {{ record.correction_comment }}
+ {% endif %} +
+{{ record.lines_added }} + - {{ record.lines_deleted }} +
+ + {% elif record.record_type == "mark" %} +
+ Review “{{ record.parent_subject }}”
+
Change request by: {{ record.parent_author_link | safe }} + ({{ record.parent_company_link | safe }}) +
+ {% if record.patch_author_link != record.parent_author_link %} +
Patch by: {{ record.patch_author_link | safe }} + ({{ record.patch_company_link | safe }}) +
+ {% endif %} + +
+ {% if (record.type == "Workflow" and record.value == 1) %} + Approve + {% elif (record.type == "Self-Workflow" and record.value == 1) %} + Self-Approve + {% elif (record.type == "Workflow" and record.value == -1) %} + Work in progress + {% elif (record.type == "Abandon" or record.type == "Self-Abandon") %} + {{ record.type }} + {% else %} + {{ record.type }}: + {% if record.value > 0 %}+{% endif %}{{ record.value }} + {% endif %} +
+ + {% elif record.record_type == "review" %} +
Change + request “{{ record.subject }}”
+
Current Status: {{ record.status }}
+
Change Id: {{ record.id }}
+ + {% elif record.record_type == "patch" %} +
Patch + #{{ record.number }} “{{ record.parent_subject }}”
+ + + {% elif record.record_type == "email" %} + + {% if blueprint_id_count %} +
Mentions blueprints: + {% for value in blueprint_links %} + {{ value | safe }} + {% endfor %} +
+ {% endif %} + {% if body %} +
Email:
+
{{ record.body }}
+ {% endif %} + + {% elif ((record.record_type == "bpd") or (record.record_type == "bpc")) %} +
Blueprint “{{ record.title }}” + ({{ blueprint_link | safe }}) +
+
{{ record.summary }}
+ +
Priority: {{ record.priority }} +
+
Status: {{ record.lifecycle_status }} + ({{ record.definition_status }}, + {{ record.implementation_status }}) +
+ {% if mention_count %} +
Mention count: {{ record.mention_count }}, last mention + on {{ record.mention_date_str }}
+ {% endif %} + + {% elif ((record.record_type == "bugf") or (record.record_type == "bugr")) %} +
Bug “{{ record.title }}” ({{ record.number }}) +
+
Status: {{ record.status }} +
+
Importance: {{ record.importance }} +
+ + {% elif record.record_type == "ci" %} +
CI vote in merged change request + {{ record.review_number }} +
+
{% if value == true %} + Success{% else %} + Failure{% endif %}
+
{{ record.tweet }}
+ + + {% elif record_type == "member" %} +
Registered in OpenStack + Foundation +
+ + {% elif record_type == "tr" %} +
Translated {{ record.loc }} words + into {{ record.language }}
+ {% endif %} + +
+ + +
+ +
+ +
+ +
+ +{% endblock %} \ No newline at end of file diff --git a/stackalytics/dashboard/templates/reports/user_activity.html b/stackalytics/dashboard/templates/reports/user_activity.html index d7c185fe9..39d4af592 100644 --- a/stackalytics/dashboard/templates/reports/user_activity.html +++ b/stackalytics/dashboard/templates/reports/user_activity.html @@ -3,7 +3,7 @@ {% import '_macros/contribution_summary.html' as contribution_summary %} {% import '_macros/user_profile.html' as user_profile %} -{% set page_title = user.user_name + " | OpenStack activity report" %} +{% set page_title = user.user_name + " activity report" %} {% block scripts %}