Ejemplo n.º 1
0
def search(request):
    data = {"filter_form": AdvancedFilterForm()}

    if request.method == "POST": 
        query = request.POST.copy()
    else:
        query = request.GET.copy()
    result = HistoneSearch(query, navbar="search" in query.keys())

    data["original_query"] = query

    if len(result.errors) == 0:
        data["result"] = True
    else:
        data["filter_errors"] = result.errors

    if result.redirect: 
        return result.redirect

    green = Color("#66c2a5")
    red = Color("#fc8d62")
    data["colors"] = map(str, red.range_to(green, 12))

    data["score_min"], data["score_max"] = result.get_score_range()

    return render(request, 'search.html', data)
Ejemplo n.º 2
0
def search(request):
    data = {"filter_form": AdvancedFilterForm()}

    if request.method == "POST": 
        query = request.POST.copy()
    else:
        query = request.GET.copy()
    result = HistoneSearch(query, navbar="search" in query.keys())

    data["original_query"] = query

    if len(result.errors) == 0:
        data["result"] = True
    else:
        data["filter_errors"] = result.errors

    if result.redirect: 
        return result.redirect

    green = Color("#66c2a5")
    red = Color("#fc8d62")
    data["colors"] = map(str, red.range_to(green, 12))

    data["score_min"], data["score_max"] = result.get_score_range()

    return render(request, 'search.html', data)
Ejemplo n.º 3
0
def get_sunburst_json(request, parameters=None):
    """
    """
    if parameters and isinstance(parameters, dict):
        query = parameters
    elif request.method == "POST": 
        query = request.POST.copy()
    else:
        query = request.GET.copy()
    
    if query:
        result = HistoneSearch(query)
        sunburst = result.get_sunburst()
        return JsonResponse(sunburst, safe=False)
    else:
        raise Http404("No taxonomy distribution sunburst for query") 
Ejemplo n.º 4
0
def get_sunburst_json(request, parameters=None):
    """
    """
    if parameters and isinstance(parameters, dict):
        query = parameters
    elif request.method == "POST": 
        query = request.POST.copy()
    else:
        query = request.GET.copy()
    
    if query:
        result = HistoneSearch(query)
        sunburst = result.get_sunburst()
        return JsonResponse(sunburst, safe=False)
    else:
        raise Http404("No taxonomy distribution sunburst for query") 
Ejemplo n.º 5
0
def search(request):
    data = {"filter_form": AdvancedFilterForm()}
    if request.method == "POST": 
        query = request.POST.copy()
        result = HistoneSearch(
            request, 
            query,
            navbar="search" in request.POST)
        if request.POST.get("reset", True):
            request.session["original_query"] = query
        data["original_query"] = request.session.get("original_query", query)
        data["current_query"] = query
        if len(result.errors) == 0:
            data["result"] = True
        else:
            data["filter_errors"] = result.errors
    else:
        #Show all sequence
        result = HistoneSearch.all(request)
        data["current_query"] = data["original_query"] = {}
        data["result"] = True

    if result.redirect: 
        return result.redirect

    return render(request, 'search.html', data)
Ejemplo n.º 6
0
def get_sequence_table_data(request):
    """Downloads the previous search and converts into json required by Bootstrap table
    """

    if request.method == "GET":
        parameters =  request.GET.dict()
    else:
        #Returning 'false' stops Bootstrap table
        parameters = []

    #Continues to filter previous search, unless paramters contains key 'reset'
    results = HistoneSearch(request, parameters)

    if len(results.errors) > 0:
        #Returning 'false' stops Bootstrap table
        return "false"

    unique = "id_unique" in parameters
    
    return JsonResponse(results.get_dict(unique=unique))
Ejemplo n.º 7
0
def get_sequence_table_data(request):
    """Downloads the previous search and converts into json required by Bootstrap table
    """
    
    if request.method == "GET":
        parameters =  request.GET.dict()
    else:
        assert 0, request.method
        #Returning 'false' stops Bootstrap table
        parameters = []
    
    results = HistoneSearch(parameters)

    if len(results.errors) > 0:
        #Returning 'false' stops Bootstrap table
        return "false"

    result = results.get_dict()
    result["parameters"] = results.parameters
    result["method"] = request.method

    return JsonResponse(result)
Ejemplo n.º 8
0
def get_sequence_table_data(request):
    """Downloads the previous search and converts into json required by Bootstrap table
    """
    
    if request.method == "GET":
        parameters =  request.GET.dict()
    else:
        assert 0, request.method
        #Returning 'false' stops Bootstrap table
        parameters = []
    
    results = HistoneSearch(parameters)

    if len(results.errors) > 0:
        #Returning 'false' stops Bootstrap table
        return "false"

    result = results.get_dict()
    result["parameters"] = results.parameters
    result["method"] = request.method

    return JsonResponse(result)