diff --git a/qiita_db/test/test_util.py b/qiita_db/test/test_util.py
index cad800752..2e82ca814 100644
--- a/qiita_db/test/test_util.py
+++ b/qiita_db/test/test_util.py
@@ -790,9 +790,11 @@ def test_generate_analysis_list(self):
exp = [{'mapping_files': [
(16, qdb.util.get_filepath_information(16)['fullpath'])],
'description': 'A test analysis', 'artifacts': [8, 9], 'name':
- 'SomeAnalysis', 'analysis_id': 1, 'visibility': 'private'},
+ 'SomeAnalysis', 'owner': 'test@foo.bar', 'analysis_id': 1,
+ 'visibility': 'private'},
{'mapping_files': [], 'description': 'Another test analysis',
'artifacts': [], 'name': 'SomeSecondAnalysis',
+ 'owner': 'admin@foo.bar',
'analysis_id': 2, 'visibility': 'private'}]
# removing timestamp for testing
for i in range(len(obs)):
diff --git a/qiita_db/util.py b/qiita_db/util.py
index c7346e15a..4a7382fa1 100644
--- a/qiita_db/util.py
+++ b/qiita_db/util.py
@@ -2114,7 +2114,7 @@ def generate_analysis_list(analysis_ids, public_only=False):
return []
sql = """
- SELECT analysis_id, a.name, a.description, a.timestamp,
+ SELECT analysis_id, a.name, a.description, a.timestamp, a.email,
array_agg(DISTINCT artifact_id),
array_agg(DISTINCT visibility),
array_agg(DISTINCT CASE WHEN filepath_type = 'plain_text'
@@ -2135,7 +2135,8 @@ def generate_analysis_list(analysis_ids, public_only=False):
qdb.sql_connection.TRN.add(sql, [tuple(analysis_ids)])
for row in qdb.sql_connection.TRN.execute_fetchindex():
- aid, name, description, ts, artifacts, av, mapping_files = row
+ aid, name, description, ts, owner, artifacts, \
+ av, mapping_files = row
av = 'public' if set(av) == {'public'} else 'private'
if av != 'public' and public_only:
@@ -2156,7 +2157,7 @@ def generate_analysis_list(analysis_ids, public_only=False):
results.append({
'analysis_id': aid, 'name': name, 'description': description,
'timestamp': ts.strftime("%m/%d/%y %H:%M:%S"),
- 'visibility': av, 'artifacts': artifacts,
+ 'visibility': av, 'artifacts': artifacts, 'owner': owner,
'mapping_files': mapping_files})
return results
diff --git a/qiita_pet/handlers/analysis_handlers/base_handlers.py b/qiita_pet/handlers/analysis_handlers/base_handlers.py
index bd9c208e2..d64e3adca 100644
--- a/qiita_pet/handlers/analysis_handlers/base_handlers.py
+++ b/qiita_pet/handlers/analysis_handlers/base_handlers.py
@@ -85,6 +85,7 @@ def analysis_description_handler_get_request(analysis_id, user):
'analysis_is_public': analysis.is_public,
'analysis_description': analysis.description,
'analysis_mapping_id': analysis.mapping_file,
+ 'analysis_owner': analysis.owner.email,
'alert_type': alert_type,
'artifacts': artifacts,
'analysis_reservation': analysis._slurm_reservation()[0],
diff --git a/qiita_pet/handlers/analysis_handlers/tests/test_base_handlers.py b/qiita_pet/handlers/analysis_handlers/tests/test_base_handlers.py
index 65d48e12c..d3cf77ca5 100644
--- a/qiita_pet/handlers/analysis_handlers/tests/test_base_handlers.py
+++ b/qiita_pet/handlers/analysis_handlers/tests/test_base_handlers.py
@@ -38,6 +38,7 @@ def test_analysis_description_handler_get_request(self):
'analysis_id': 1,
'analysis_description': 'A test analysis',
'analysis_mapping_id': 16,
+ 'analysis_owner': 'test@foo.bar',
'analysis_is_public': False,
'alert_type': 'info',
'artifacts': {
@@ -67,6 +68,7 @@ def test_analysis_description_handler_get_request(self):
'analysis_id': 1,
'analysis_description': 'A test analysis',
'analysis_mapping_id': 16,
+ 'analysis_owner': 'test@foo.bar',
'analysis_is_public': False,
'alert_type': 'info',
'artifacts': {
@@ -98,6 +100,7 @@ def test_analysis_description_handler_get_request(self):
'analysis_id': 1,
'analysis_description': 'A test analysis',
'analysis_mapping_id': 16,
+ 'analysis_owner': 'test@foo.bar',
'analysis_is_public': False,
'alert_type': 'danger',
'artifacts': {
diff --git a/qiita_pet/templates/analysis_description.html b/qiita_pet/templates/analysis_description.html
index 4274ccbfe..1615ac5f0 100644
--- a/qiita_pet/templates/analysis_description.html
+++ b/qiita_pet/templates/analysis_description.html
@@ -1,178 +1,302 @@
-{% extends sitebase.html %}
-{% block head %}
-
-
-
+{% extends sitebase.html %} {% block head %}
+
+
+
-{% end %}
-{% block content %}
+{% end %} {% block content %}
-
-
-
- {{analysis_name}} - ID {{analysis_id}}
-
- ({{analysis_description}}) -
- {% if analysis_is_public %}
- Public
- {% else %}
- Private
- {% end %}
- {% if analysis_mapping_id is not None %}
- Mapping file
- {% end %}
- {% if not analysis_is_public %}
- Make analysis public
- {% end %}
- Reservation: {% raw analysis_reservation %}
-
-
-
-
-
Shared with:
-
-
-
Studies and artifacts used in this analysis:
-
-
- Show/Hide
-
-
-
-
-
- Artifact ID
- Study IDs
- Prep IDs
- Study Title
- Parent Processing
- Merging Scheme
- Total Samples Selected
-
-
-
- {% for aid, data in artifacts.items() %}
-
- {{aid}}
- {{data[0]}}
- {{', '.join(data[4])}}
- {{data[1]}}
- {{data[2][1]}}
- {{data[2][0]}}
- {{ len(data[3]) }}
-
- {% end %}
-
-
+
+
+
+ {{analysis_name}} - ID {{analysis_id}}
+
+ ({{analysis_description}}) - {% if analysis_is_public %}
+ Public
+ {% else %}
+ Private
+ {% end %} {% if analysis_mapping_id is not None %}
+
+ Mapping file
+ {% end %} {% if not analysis_is_public %}
+ Make
+ analysis public
+ {% end %}
+
+ Reservation: {% raw analysis_reservation %}
+
+
+ Owner:
+
{{analysis_owner}}
+
+
+ Shared with:
+
+
+
Studies and artifacts used in this analysis:
+
+
+ Show/Hide
+
+
+
+
+
+ Artifact ID
+ Study IDs
+ Prep IDs
+ Study Title
+ Parent Processing
+ Merging Scheme
+ Total Samples Selected
+
+
+
+ {% for aid, data in artifacts.items() %}
+
+ {{aid}}
+ {{data[0]}}
+ {{', '.join(data[4])}}
+
+ {{data[1]}}
+
+ {{data[2][1]}}
+ {{data[2][0]}}
+ {{ len(data[3]) }}
+
+ {% end %}
+
+
+
+
-
-
-
+
-
-
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Reservation (optional)
-
- Update
-
-
-
-
-
-
+
+
+
+
+
+
+
+ Reservation (optional)
+
+
+ Update
+
+
+
+
+
+
+
{% end %}
diff --git a/qiita_pet/templates/list_analyses.html b/qiita_pet/templates/list_analyses.html
index bcfc79207..6ef6280fc 100644
--- a/qiita_pet/templates/list_analyses.html
+++ b/qiita_pet/templates/list_analyses.html
@@ -145,6 +145,7 @@
Your Analyses
Analysis ID
Analysis Name
Visibility
+
Owner
Creation Timestamp
Mapping File
Delete?
@@ -168,6 +169,9 @@
Your Analyses
{{analysis['visibility']}}
+
+ {{analysis['owner']}}
+
{{analysis['timestamp']}}
@@ -195,6 +199,7 @@
Public Analyses
Artifacts
Analysis ID
Analysis Name
+
Owner
Creation Timestamp
Mapping File
@@ -213,6 +218,9 @@
Public Analyses
({{analysis['description']}})
{% end %}
+
+ {{analysis['owner']}}
+
{{analysis['timestamp']}}