about summary refs log tree commit diff
path: root/wqflask/wqflask
diff options
context:
space:
mode:
authorZachary Sloan2013-06-27 23:03:14 +0000
committerZachary Sloan2013-06-27 23:03:14 +0000
commit62bd1bb6ad9f9f1c991127387154b5e0ca271fae (patch)
tree1f458ff27728111487887f564d907c0708e3055c /wqflask/wqflask
parente712f665d8d1000d87a7c1aafce776062ff75cf1 (diff)
downloadgenenetwork2-62bd1bb6ad9f9f1c991127387154b5e0ca271fae.tar.gz
Created a group manager page where user administrators can create
groups of datasets to give/add read privileges to
Diffstat (limited to 'wqflask/wqflask')
-rw-r--r--wqflask/wqflask/correlation/show_corr_results.py8
-rw-r--r--wqflask/wqflask/templates/admin/group_manager.html49
-rw-r--r--wqflask/wqflask/user_manager.py16
-rw-r--r--wqflask/wqflask/views.py13
4 files changed, 78 insertions, 8 deletions
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 %}
+<!-- Start of body -->
+    <header class="jumbotron subhead" id="overview">
+        <div class="container">
+            <h1>Group Manager</h1>
+        </div>
+    </header>
+
+    <div class="container">
+        <div class="page-header">
+
+        </div>
+        <form>
+            <div class="control-group">
+                <b>Group Name: </b>
+                <div class="input-append">
+                    <input type="text" name="group_name">
+                    <button type="submit" class="btn btn-primary">Save</button>
+                </div>
+            </div>
+
+            <table class="table table-hover">
+                <thead>
+                    <tr>
+                        <th>Read</th>
+                        <th>Type</th>
+                        <th>ID</th>
+                        <th>Name</th>
+                        <th>Full Name</th>
+                    </tr>
+                </thead>
+            {% for dataset in datasets %}
+                <tr>
+                    <td><input type="checkbox" name="read" value="{{ dataset.type }}:{{ dataset.name }}"></td>
+                    <td>{{ dataset.type }}</td>
+                    <td>{{ dataset.id }}</td>
+                    <td>{{ dataset.name }}</td>
+                    <td>{{ dataset.fullname }}</td>
+                </tr>
+            {% endfor %}
+            </table>
+        </form>
+    </div>
+
+<!-- End of body -->
+
+{% endblock %}
\ No newline at end of file
diff --git a/wqflask/wqflask/user_manager.py b/wqflask/wqflask/user_manager.py
index b8ebc71f..9e666bbd 100644
--- a/wqflask/wqflask/user_manager.py
+++ b/wqflask/wqflask/user_manager.py
@@ -13,6 +13,8 @@ from flask import Flask, g
 
 from pprint import pformat as pf
 
+from base.data_set import create_datasets_list
+
 #from app import db
 print("globals are:", globals())
 
@@ -32,6 +34,20 @@ class UserManager(object):
         #print("user is:", user)
         self.user = model.User.query.get(self.user_id)
         print("user is:", self.user)
+        datasets = create_datasets_list()
+        for dataset in datasets:
+            if not dataset.check_confidentiality():
+                continue
+            print("\n  Name:", dataset.name)
+            print("  Type:", dataset.type)
+            print("  ID:", dataset.id)
+            print("  Confidential:", dataset.check_confidentiality())
+        #print("   ---> self.datasets:", self.datasets)
+
+
+class GroupsManager(object):
+    def __init__(self, kw):
+        self.datasets = create_datasets_list()
 
 
 class RolesManager(object):
diff --git a/wqflask/wqflask/views.py b/wqflask/wqflask/views.py
index bd56f7a9..813075b8 100644
--- a/wqflask/wqflask/views.py
+++ b/wqflask/wqflask/views.py
@@ -54,7 +54,7 @@ def connect_db():
 @app.route("/")
 def index_page():
     print("Sending index_page")
-    create_datasets_list()
+    #create_datasets_list()
     #key = "all_datasets"
     #result = Redis.get(key)
     #if result:
@@ -63,7 +63,7 @@ def index_page():
     #else:
     #    with Bench("Creating DataSets object"):
     #        ds = DataSets()
-    #    Redis.set(key, pickle.dumps(result))
+    #    Redis.set(key, pickle.dumps(result, pickle.HIGHEST_PROTOCOL))
     #    Redis.expire(key, 2*60)
     #print("[orange] ds:", ds.datasets)
     return render_template("index_page.html")
@@ -112,7 +112,7 @@ def search_page():
             result = the_search.__dict__
 
             print("result: ", pf(result))
-            Redis.set(key, pickle.dumps(result))
+            Redis.set(key, pickle.dumps(result, pickle.HIGHEST_PROTOCOL))
             Redis.expire(key, 60*60)
 
         if result['quick']:
@@ -232,7 +232,7 @@ def marker_regression_page():
         #    print("  ---**--- {}: {}".format(type(template_vars.__dict__[item]), item))
 
         #causeerror
-        Redis.set(key, pickle.dumps(result))
+        Redis.set(key, pickle.dumps(result, pickle.HIGHEST_PROTOCOL))
         Redis.expire(key, 60*60)
 
     with Bench("Rendering template"):
@@ -283,6 +283,11 @@ def manage_user():
     template_vars = user_manager.UserManager(request.args)
     return render_template("admin/ind_user_manager.html", **template_vars.__dict__)
 
+@app.route("/manage/groups")
+def manage_groups():
+    template_vars = user_manager.GroupsManager(request.args)
+    return render_template("admin/group_manager.html", **template_vars.__dict__)
+
 
 def json_default_handler(obj):
     '''Based on http://stackoverflow.com/a/2680060/1175849'''