示例#1
0
def search_speaker(q, response_type, page):
    """
    :param q: search text
    :param response_type: html or json | default is json
    :return: returns list of speakers whose name contains q
    """
    if response_type == 'html':
        # get paginated object of matching records in Speaker Table
        result = Speaker().search_paginated(q, page)
        util_obj = Util_Helpers()
        context = dict()
        # paginator is required in listing
        context['paginator'] = result
        context['page'] = page
        # storing search text so that it can persist across pages
        # sending it to searchpaginated macro in _helpers.html & passing it to
        # javascript getPage() function by adding it to url
        context['q'] = q
        response = util_obj.create_response('speaker_table.html', **context)
        return jsonify(response)
    else:
        response = []
        result = Speaker().search(q)
        for item in result:
            response.append({'id': item.id, 'text': item.name})
        return json.dumps(response)
示例#2
0
def error_msg(message=DELETE_MESSAGE):
    from utils_helper import Util_Helpers
    utils_helper_obj = Util_Helpers()
    utils_helper_obj.success = False
    template_data = utils_helper_obj.create_response(None)
    template_data['messages'] = message
    return template_data
示例#3
0
def get_event_response_data_from_cache(event_id):
    """get the reposne of event from cache
    args:
        event_id: id of the event
    return:
        return the response data
    """
    from utils_helper import Util_Helpers
    key = Util_Helpers.cache_key_creation(["event", event_id, "response"])
    event_responses = redis.smembers(key)
    return event_responses
示例#4
0
def cache_user_rsvp_response(response, event_id, previous_event=False):
    """
    1. Get the response dictionary.
    2. JSONIFY (serialize it so that it can be saved in redis cache)
    3. Insert the response into the list
    """
    # in case of previous_event we dont need to convert tag name
    # prvious event means if manually cache the response to run job
    if not previous_event:
        tag_ques_response = modify_reponse_of_user(response)
        response[tag_ques_response[0]] = tag_ques_response[1]
    # concate reponse
    for key, value in response.iteritems():
        if isinstance(value, list):
            response[key] = ','.join(value)
        else:
            response[key] = value
    from utils_helper import Util_Helpers
    key = Util_Helpers.cache_key_creation(["event", event_id, "response"])
    response = json.dumps(response)
    redis.sadd(key, response)