Attempted linking to archived hard drive.
[htsworkflow.git] / htsworkflow / frontend / samples / views.py
index 52907edc0e8a18b868d27ef40d4ca86564ea7ed7..e79262abdd95c08d05dc9a707af4991cecb79934 100644 (file)
@@ -3,8 +3,10 @@ from htsworkflow.frontend.experiments.models import FlowCell
 from htsworkflow.frontend.samples.changelist import ChangeList
 from htsworkflow.frontend.samples.models import Library
 from htsworkflow.frontend.samples.results import get_flowcell_result_dict, parse_flowcell_id
+from htsworkflow.frontend.bcmagic.forms import BarcodeMagicForm
 from htsworkflow.pipelines.runfolder import load_pipeline_run_xml
 from htsworkflow.pipelines import runfolder
+from htsworkflow.pipelines.eland import ResultLane
 from htsworkflow.frontend import settings
 from htsworkflow.util import makebed
 from htsworkflow.util import opener
@@ -22,7 +24,8 @@ import os
 
 LANE_LIST = [1,2,3,4,5,6,7,8]
 SAMPLES_CONTEXT_DEFAULTS = {
-    'app_name': 'Flowcell/Library Tracker'
+    'app_name': 'Flowcell/Library Tracker',
+    'bcmagic': BarcodeMagicForm()
 }
 
 def create_library_context(cl):
@@ -236,7 +239,11 @@ def _summary_stats(flowcell_id, lane_id):
         run = load_pipeline_run_xml(xmlpath)
         gerald_summary = run.gerald.summary.lane_results
         for end in range(len(gerald_summary)):
-            eland_summary = run.gerald.eland_results.results[end][lane_id]
+            end_summary = run.gerald.eland_results.results[end]
+            if end_summary.has_key(lane_id):
+                eland_summary = run.gerald.eland_results.results[end][lane_id]
+            else:
+                eland_summary = ResultLane(lane_id=lane_id, end=end)
             # add information to lane_summary
             eland_summary.flowcell_id = flowcell_id
             eland_summary.clusters = gerald_summary[end][lane_id].cluster
@@ -356,7 +363,7 @@ def _make_eland_results(flowcell_id, lane, interesting_flowcells):
     if len(storage_id_list) == 0:
         storage_ids = None
     else:
-        storage_ids = ', '.join(storage_id_list)
+        storage_ids = ', '.join([ '<a href="/inventory/%s/">%s</a>' % (s,s) for s in storage_id_list ])
 
     results = []
     for cycle in cur_fc.keys():
@@ -443,4 +450,4 @@ def user_profile(request):
             }
     context.update(SAMPLES_CONTEXT_DEFAULTS)
     return render_to_response('registration/profile.html', context,
-                              context_instance=RequestContext(request))
\ No newline at end of file
+                              context_instance=RequestContext(request))