def ajax_search_reports(request, search_col, search_term, search_type): db_lookup = '%s__%s' % (search_col, search_type) variants = Variant.objects.filter(**{db_lookup: search_term}) #print variants[0].report.study.description # from django.core import serializers # vars = serializers.serialize('json', variants) return HttpResponse(report_parser.json_from_ajax(variants))
def view_report(request, file_id): # build context from file print 'file_id: %s' % file_id report_obj = Report.objects.get(pk=file_id) # Ajaxy version to grab variants from db variants = report_obj.variant_set.all() # print report_data report_html = str(report_parser.json_from_ajax(variants)) # load from file version # report_data = report_parser.json_from_report( # os.path.join(report_parser.get_media_path(), # report_obj.report_file.name)) # report_html = str(report_data.html) # add table class and id replace_string = "<table class=\"table table-hover\" id=\"report-table\">" report_html = report_html.replace("<table>", replace_string) context = {'report_html': report_html, 'viewing_report': True, 'filename': report_obj.report_file.name.split('/')[1], 'study': report_obj.bnids.first().sample.study, 'report_obj': report_obj} return render(request, 'viewer/report/view_report.html', context)
def ajax_search_reports(request, search_col, search_term, search_type): project_pk = request.session.get('viewing_project', None) if project_pk is None: return HttpResponseRedirect(reverse('no_project')) db_lookup = '__'.join([search_col, search_type]) variants = Variant.objects.all() if request.POST.get('report_ids'): report_ids = simplejson.loads(request.POST.get('report_ids')) variants = variants.filter(report_id__in=report_ids) variants = (variants.filter(report__study__project__pk=project_pk) .filter(**{db_lookup: search_term})) return HttpResponse(report_parser.json_from_ajax(variants))
def view_shared_data(request, shared_data_uuid): shared_report = SharedData.objects.filter(uuid__iexact=shared_data_uuid) if len(shared_report) == 0: return HttpResponse(reverse('shared_data_dne')) shared_report = shared_report[0] if shared_report.inactive_date < datetime.date.today(): return HttpResponse(reverse('shared_data_expired')) field_lookup = simplejson.loads(shared_report.field_lookup) variants = Variant.objects.filter(**field_lookup) report_html = str(report_parser.json_from_ajax(variants)) replace_string = "<table class=\"table table-hover\" id=\"report-table\">" report_html = report_html.replace("<table>", replace_string) context = {'report_html': report_html, 'viewing_report': False, 'shared_data_name': shared_report.name} return render(request, 'viewer/report/view_report.html', context)