about summary refs log tree commit diff
path: root/wqflask/base
diff options
context:
space:
mode:
authorArtem Tarasov2015-06-18 20:05:49 +0300
committerArtem Tarasov2015-06-18 20:05:49 +0300
commit45ebe51fbee7da1617b01cff7b9ab404d6ad1aa7 (patch)
tree33e2e5a0de9f080db3fb9a38e77aa318637a034a /wqflask/base
parente4621a2a759f55659b5c631baec5e5f497e0cff1 (diff)
downloadgenenetwork2-45ebe51fbee7da1617b01cff7b9ab404d6ad1aa7.tar.gz
fix all_samples_ordered
move duplicated code into a method,
handle the case of missing f1/f12 correctly
Diffstat (limited to 'wqflask/base')
-rwxr-xr-xwqflask/base/data_set.py6
-rwxr-xr-xwqflask/base/trait.py9
2 files changed, 7 insertions, 8 deletions
diff --git a/wqflask/base/data_set.py b/wqflask/base/data_set.py
index acfee3d4..b17396e5 100755
--- a/wqflask/base/data_set.py
+++ b/wqflask/base/data_set.py
@@ -392,6 +392,12 @@ class DatasetGroup(object):
             Redis.set(key, json.dumps(self.samplelist))
             Redis.expire(key, 60*5)
 
+    def all_samples_ordered(self):
+        result = []
+        lists = (self.parlist, self.f1list, self.samplelist)
+        [result.extend(l) for l in lists if l]
+        return result
+
     def read_genotype_file(self):
         '''Read genotype from .geno file instead of database'''
         #if self.group == 'BXD300':
diff --git a/wqflask/base/trait.py b/wqflask/base/trait.py
index 7f1170a9..2e0e86fb 100755
--- a/wqflask/base/trait.py
+++ b/wqflask/base/trait.py
@@ -251,14 +251,7 @@ class GeneralTrait(object):
         # Todo: is this necessary? If not remove
         self.data.clear()
 
-        if self.dataset.group.parlist:
-            all_samples_ordered = (self.dataset.group.parlist +
-                                   self.dataset.group.f1list +
-                                   self.dataset.group.samplelist)
-        elif self.dataset.group.f1list:
-            all_samples_ordered = self.dataset.group.f1list + self.dataset.group.samplelist
-        else:
-            all_samples_ordered = self.dataset.group.samplelist
+        all_samples_ordered = self.dataset.group.all_samples_ordered()
 
         if results:
             for item in results: