about summary refs log tree commit diff
path: root/wqflask/wqflask/collect.py
diff options
context:
space:
mode:
Diffstat (limited to 'wqflask/wqflask/collect.py')
-rw-r--r--wqflask/wqflask/collect.py67
1 files changed, 28 insertions, 39 deletions
diff --git a/wqflask/wqflask/collect.py b/wqflask/wqflask/collect.py
index b22e0004..0291f2b8 100644
--- a/wqflask/wqflask/collect.py
+++ b/wqflask/wqflask/collect.py
@@ -1,45 +1,34 @@
-from __future__ import print_function, division, absolute_import
-
-
-import os
 import hashlib
 import datetime
-import time
-
-import uuid
-import hashlib
-import base64
-
-import urlparse
-
 import simplejson as json
 
-import redis
-Redis = redis.StrictRedis()
-
-from flask import (Flask, g, render_template, url_for, request, make_response,
-                   redirect, flash, jsonify)
+from flask import g
+from flask import render_template
+from flask import url_for
+from flask import request
+from flask import redirect
+from flask import flash
 
 from wqflask import app
-
-from pprint import pformat as pf
-
-from wqflask.database import db_session
-
-from wqflask import model
-
-from utility import Bunch, Struct, hmac
+from utility import hmac
 from utility.formatting import numify
+from utility.redis_tools import get_redis_conn
 
-from base import trait
+from base.trait import create_trait
+from base.trait import retrieve_trait_info
+from base.trait import jsonable
 from base.data_set import create_dataset
 
-import logging
 from utility.logger import getLogger
+
 logger = getLogger(__name__)
+Redis = get_redis_conn()
+
 
 def process_traits(unprocessed_traits):
-    if isinstance(unprocessed_traits, basestring):
+    if isinstance(unprocessed_traits, bytes):
+        unprocessed_traits = unprocessed_traits.decode('utf-8').split(",")
+    else:  # It's a string
         unprocessed_traits = unprocessed_traits.split(",")
     traits = set()
     for trait in unprocessed_traits:
@@ -126,7 +115,8 @@ def collections_new():
         g.user_session.add_traits_to_collection(collection_id, traits)
         return redirect(url_for('view_collection', uc_id=collection_id))
     else:
-        CauseAnError
+        # CauseAnError
+        pass
 
 def create_new(collection_name):
     params = request.args
@@ -158,15 +148,12 @@ def remove_traits():
     params = request.form
 
     uc_id = params['uc_id']
-    traits_to_remove = params.getlist('traits[]')
+    traits_to_remove = params['trait_list']
     traits_to_remove = process_traits(traits_to_remove)
-    logger.debug("\n\n  after processing, traits_to_remove:", traits_to_remove)
 
     members_now = g.user_session.remove_traits_from_collection(uc_id, traits_to_remove)
 
-    # We need to return something so we'll return this...maybe in the future
-    # we can use it to check the results
-    return str(len(members_now))
+    return redirect(url_for("view_collection", uc_id=uc_id))
 
 
 @app.route("/collections/delete", methods=('POST',))
@@ -197,25 +184,27 @@ def view_collection():
     params = request.args
 
     uc_id = params['uc_id']
-    uc = (collection for collection in g.user_session.user_collections if collection["id"] == uc_id).next()
+    uc = next((collection for collection in g.user_session.user_collections if collection["id"] == uc_id))
     traits = uc["members"]
 
     trait_obs = []
     json_version = []
 
     for atrait in traits:
+        if ':' not in atrait:
+            continue
         name, dataset_name = atrait.split(':')
         if dataset_name == "Temp":
             group = name.split("_")[2]
             dataset = create_dataset(dataset_name, dataset_type = "Temp", group_name = group)
-            trait_ob = trait.GeneralTrait(name=name, dataset=dataset)
+            trait_ob = create_trait(name=name, dataset=dataset)
         else:
             dataset = create_dataset(dataset_name)
-            trait_ob = trait.GeneralTrait(name=name, dataset=dataset)
-            trait_ob = trait.retrieve_trait_info(trait_ob, dataset, get_qtl_info=True)
+            trait_ob = create_trait(name=name, dataset=dataset)
+            trait_ob = retrieve_trait_info(trait_ob, dataset, get_qtl_info=True)
         trait_obs.append(trait_ob)
 
-        json_version.append(trait.jsonable(trait_ob))
+        json_version.append(jsonable(trait_ob))
 
     collection_info = dict(trait_obs=trait_obs,
                            uc = uc)