Пример #1
0
def Upload(request):
    status = None
    message = ""
    if request.is_ajax() or request.method == 'POST':
        # form = uploadFileForm(request.POST, request.FILES)
        if request.method == 'POST':
            genomeInfo = {
                'kingdom': request.POST.get('Kingdom', u''),
                'class': request.POST.get('Class', None),
                'genus': request.POST.get('Genus', None),
                'species': request.POST.get('Species', None),
                'specimen': request.POST.get('specimenName', "Unknown"),
                'genomeName': request.POST.get('genomeName', None),
                'source': request.POST.get('source', None),
                'dateSequenced': request.POST.get('dateSequenced', None),
                'description': request.POST.get('description', None),
                'isPublic': request.POST.get('isPublic', False),
                'chromosome': request.POST.get('chromosomeName', None)
            }
            filePath = StorageRequestHandler.HandleUploadedFile(
                request.FILES['file'], genomeInfo, request.user)
        uploads = StorageRequestHandler.GetUserImports(request.user).distinct()
        return render(request,
                      'uploadStatus.json', {'uploads': uploads},
                      content_type="application/json")
    context = {
        'status': status,
        'message': message,
        'existingSpecimens': StorageRequestHandler.GetTreeList(request.user)
    }
    return render(request, 'upload.html', context)
Пример #2
0
def index(request):
    if request.user.is_authenticated():
        chromosomes = FastaFiles.objects.filter(
            Q(Public=True) | Q(User=request.user))
    else:
        chromosomes = FastaFiles.objects.filter(Public=True)
    specimenNames = chromosomes.values('Specimen__Name').distinct()
    specimenNames = [
        n.values()[0] for n in specimenNames if n.values()[0] != "businesscard"
    ]
    specimens = Specimen.objects.filter(Name__in=specimenNames)

    if request.GET.get('user'):
        specimens = specimens.filter(fastafiles__User__email=request.GET.get(
            'user')).distinct()  #only return uploads from specified user
    if request.GET.get('kingdom'):
        specimens = specimens.filter(
            Kingdom__iexact=request.GET.get('kingdom'))
    if request.GET.get('class'):
        specimens = specimens.filter(Class__iexact=request.GET.get('class'))
    if request.GET.get('genus'):
        specimens = specimens.filter(Genus__iexact=request.GET.get('genus'))
    if request.GET.get('species'):
        specimens = specimens.filter(
            Species__iexact=request.GET.get('species'))

    tree = StorageRequestHandler.GetTreeList(request.user)
    context = {'specimens': specimens, 'tree': tree}
    return render(request, 'index.html', context)
Пример #3
0
def taxonomy(request):
    json_response = "currentTaxonomy = " + json.dumps(
        StorageRequestHandler.GetTreeList())
    return HttpResponse(json_response, content_type="application/json")