I needed to fix the get_absolute_url to lookup by library_id,
we needed a redirect function to get to the right admin page.
And for sequence runs I don't have any eland results so the get result files
failed because it was assuming that the eland_result from the run xml would
always have all 8 lanes defined in its dictionary. Now I check to see if its
defined and if its not I don't display anything.
@models.permalink
def get_absolute_url(self):
@models.permalink
def get_absolute_url(self):
- return ('htsworkflow.frontend.samples.views.library_to_flowcells', [str(self.id)])
+ return ('htsworkflow.frontend.samples.views.library_to_flowcells', [str(self.library_id)])
from htsworkflow.util import makebed
from htsworkflow.util import opener
from htsworkflow.util import makebed
from htsworkflow.util import opener
-from django.http import HttpResponse
+from django.http import HttpResponse, HttpResponseRedirect
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.template.loader import get_template
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.template.loader import get_template
results = []
for cycle in cur_fc.keys():
results = []
for cycle in cur_fc.keys():
- result_path = cur_fc[cycle]['eland_results'][lane]
+ result_path = cur_fc[cycle]['eland_results'].get(lane, None)
result_link = make_result_link(flowcell_id, cycle, lane, result_path)
results.append({'flowcell_id': flowcell_id,
'cycle': cycle,
result_link = make_result_link(flowcell_id, cycle, lane, result_path)
results.append({'flowcell_id': flowcell_id,
'cycle': cycle,
return url
def make_result_link(flowcell_id, cycle_name, lane, eland_result_path):
return url
def make_result_link(flowcell_id, cycle_name, lane, eland_result_path):
+ if eland_result_path is None:
+ return ("", "", "")
+
result_type = get_eland_result_type(eland_result_path)
result_url = '/results/%s/%s/eland_result/%s' % (flowcell_id, cycle_name, lane)
result_label = 'eland %s' % (result_type,)
result_type = get_eland_result_type(eland_result_path)
result_url = '/results/%s/%s/eland_result/%s' % (flowcell_id, cycle_name, lane)
result_label = 'eland %s' % (result_type,)
return ''
return '(' + '|'.join(output) + ')'
return ''
return '(' + '|'.join(output) + ')'
+
+def library_id_to_admin_url(request, lib_id):
+ lib = Library.objects.get(library_id=lib_id)
+ return HttpResponseRedirect('/admin/samples/library/%s' % (lib.id,))
+