Example #1
0
def extract_filter_opts():
    """
    Extracts filter data from the url
    """
    filter = request.args.get('filter', None)
    if filter is not None:
        filter = filter.strip()
        filter = from_json(filter)
        if not len(filter):
            raise exceptions.InvalidRequestError(
                'Invalid request syntax. Filter options were not specified')

        filter = deserialize(filter)
        normal_view = generate_normal_view(filter)
        validate_filter(normal_view)

    return filter
Example #2
0
def extract_form_data():
    """
    Extracts form data when was passed json data in the HTTP headers
    """
    if request.json:
        obj = request.json
    elif request.data:
        obj = from_json(request.data)
    else:
        #FIXME: DIRTY DIRTY DIRTY SUCKER
        obj = from_json(request.form.keys()[0])

    document = deserialize(obj)

    if request.method == 'POST':
        validate_document(document)
    elif request.method == 'PUT':
        normal_view = generate_normal_view(document)
        validate_doc_for_update(normal_view)
    
    return document