From 62bd1bb6ad9f9f1c991127387154b5e0ca271fae Mon Sep 17 00:00:00 2001
From: Zachary Sloan
Date: Thu, 27 Jun 2013 23:03:14 +0000
Subject: Created a group manager page where user administrators can create
groups of datasets to give/add read privileges to
---
wqflask/base/data_set.py | 50 ++++++++++++----------
wqflask/wqflask/correlation/show_corr_results.py | 8 ++--
wqflask/wqflask/templates/admin/group_manager.html | 49 +++++++++++++++++++++
wqflask/wqflask/user_manager.py | 16 +++++++
wqflask/wqflask/views.py | 13 ++++--
5 files changed, 106 insertions(+), 30 deletions(-)
create mode 100644 wqflask/wqflask/templates/admin/group_manager.html
(limited to 'wqflask')
diff --git a/wqflask/base/data_set.py b/wqflask/base/data_set.py
index 803cbc4f..03b24230 100755
--- a/wqflask/base/data_set.py
+++ b/wqflask/base/data_set.py
@@ -77,14 +77,31 @@ def create_dataset(dataset_name, dataset_type = None):
def create_datasets_list():
key = "all_datasets"
result = Redis.get(key)
+
if result:
print("Cache hit!!!")
- result = pickle.loads(result)
+ datasets = pickle.loads(result)
+
else:
+ datasets = list()
with Bench("Creating DataSets object"):
- ds = DataSets()
- Redis.set(key, pickle.dumps(result))
- Redis.expire(key, 2*60)
+ type_dict = {'Publish': 'PublishFreeze',
+ 'ProbeSet': 'ProbeSetFreeze',
+ 'Geno': 'GenoFreeze'}
+
+ for dataset_type in type_dict:
+ query = "SELECT Name FROM {}".format(type_dict[dataset_type])
+ for result in g.db.execute(query).fetchall():
+ #The query at the beginning of this function isn't necessary here, but still would
+ #rather just reuse it
+ print("type: {}\tname: {}".format(dataset_type, result.Name))
+ dataset = create_dataset(result.Name, dataset_type)
+ datasets.append(dataset)
+
+ Redis.set(key, pickle.dumps(datasets, pickle.HIGHEST_PROTOCOL))
+ Redis.expire(key, 60*60)
+
+ return datasets
def create_in_clause(items):
@@ -240,24 +257,13 @@ class DatasetGroup(object):
self.samplelist = list(genotype.prgy)
-class DataSets(object):
- """Builds a list of DataSets"""
-
- def __init__(self):
- self.datasets = list()
-
- type_dict = {'Publish': 'PublishFreeze',
- 'ProbeSet': 'ProbeSetFreeze',
- 'Geno': 'GenoFreeze'}
-
- for dataset_type in type_dict:
- query = "SELECT Name FROM {}".format(type_dict[dataset_type])
- for result in g.db.execute(query).fetchall():
- #The query at the beginning of this function isn't necessary here, but still would
- #rather just reuse it
- print("type: {}\tname: {}".format(dataset_type, result.Name))
- create_dataset(result.Name, dataset_type)
-
+#class DataSets(object):
+# """Builds a list of DataSets"""
+#
+# def __init__(self):
+# self.datasets = list()
+#
+
#query = """SELECT Name FROM ProbeSetFreeze
# UNION
diff --git a/wqflask/wqflask/correlation/show_corr_results.py b/wqflask/wqflask/correlation/show_corr_results.py
index 3b47e970..f69fe551 100644
--- a/wqflask/wqflask/correlation/show_corr_results.py
+++ b/wqflask/wqflask/correlation/show_corr_results.py
@@ -205,10 +205,10 @@ class CorrelationResults(object):
- trait_list = self.getTissueCorrelationByList( primary_trait_symbol = self.this_trait.symbol,
- corr_results = self.correlation_results,
- TissueProbeSetFreezeId = 1,
- method=1)
+ #trait_list = self.getTissueCorrelationByList( primary_trait_symbol = self.this_trait.symbol,
+ # corr_results = self.correlation_results,
+ # TissueProbeSetFreezeId = 1,
+ # method=1)
#XZ, 09/18/2008: get all information about the user selected database.
#target_db_name = fd.corr_dataset
diff --git a/wqflask/wqflask/templates/admin/group_manager.html b/wqflask/wqflask/templates/admin/group_manager.html
new file mode 100644
index 00000000..6b7809d3
--- /dev/null
+++ b/wqflask/wqflask/templates/admin/group_manager.html
@@ -0,0 +1,49 @@
+{% extends "base.html" %}
+{% block title %}Group Manager{% endblock %}
+{% block content %}
+
+ Group Manager
+