Esempio n. 1
0
def create_post():
    # API Token exist?
    if 'X_API_Token' not in request.headers:
        return make_response(jsonify({'message': 'API token not found'}), 400)
    # API Token Correct?
    if not check_api_token(request.headers['X_API_Token']):
        return make_response(jsonify({'message': 'API token is not correct'}),
                             400)
    # When multipule Content-Type Specified, 'application/json' != request.headers['Content-Type'] is True.
    # So, split request.headers['Content-Type'] to list by ';'.
    if 'application/json' not in request.headers['Content-Type'].split(';'):
        return make_response(jsonify({'message': 'error'}), 400)

    json = request.json
    if not ('b64image' in json and 'place_uid' in json and 'uuid' in json):
        return make_response(
            jsonify({'message': 'Require b64, place_uid, uuid.'}), 400)

    # get user_id from uuid
    user_records = get_user_by_uuid(json['uuid'])
    if len(user_records) == 0:
        return make_response(jsonify({'message': 'uuid not found.'}), 400)

    user_id = user_records[0]['id']

    # upload
    ret = uploadPost(json['b64image'], user_id)

    # create record
    create(ret['cloud_storage_filename'], user_id, json['place_uid'])

    return make_response(jsonify({'message': 'Successfuly Uploaded.'}))
Esempio n. 2
0
def points(uuid):
    # API Token exist?
    if 'X_API_Token' not in request.headers:
        return make_response(jsonify({'message': 'API token not found'}), 400)
    # API Token Correct?
    if not check_api_token(request.headers['X_API_Token']):
        return make_response(jsonify({'message': 'API token is not correct'}),
                             400)

    # check Content-Type header
    if 'application/json' not in request.headers['Content-Type'].split(';'):
        return make_response(jsonify({'message': 'error'}), 400)

    # check request json contains item 'point'?
    if 'point' not in request.json:
        return make_response(jsonify({'message': 'Require point'}), 400)

    user_records = get_user_by_uuid(uuid)
    if len(user_records) == 0:
        return make_response(
            jsonify({'message': 'No user found on specified uuid'}), 400)

    add_point(uuid, request.json['point'])
    create_point_history(user_records[0]['id'], request.json['point'])

    res = get_user_by_uuid(uuid)

    return make_response(jsonify(res[0]), 200)
Esempio n. 3
0
def getphoto():
  # API Token exist?
  if 'X_API_Token' not in request.headers:
    return make_response(jsonify({'message': 'API token not found'}), 400)
  # API Token Correct?
  if not check_api_token(request.headers['X_API_Token']):
    return make_response(jsonify({'message': 'API token is not correct'}), 400)

  params = request.args
  photoreference = params.get('photoreference')
  maxWidth = params.get('maxwidth')
  maxHeight = params.get('maxheight')

  if photoreference is None:
    return make_response(jsonify({'message': 'Missing parameter \'photoreference\''}), 400)
  if maxWidth is None:
    # Use default value
    maxWidth = 600
  if maxHeight is None:
    # Use default value
    maxHeight = 600

  content, code = photo(photoreference, maxWidth, maxHeight)
  if code == 302:
    return make_response(jsonify(content), code)
  else:
    return make_response(Response(content, headers={'Content-Type': 'application/json'}), code)
Esempio n. 4
0
def getdetails(place_uid):
  # API Token exist?
  if 'X_API_Token' not in request.headers:
    return make_response(jsonify({'message': 'API token not found'}), 400)
  # API Token Correct?
  if not check_api_token(request.headers['X_API_Token']):
    return make_response(jsonify({'message': 'API token is not correct'}), 400)

  content, code = detail(place_uid)
  return make_response(Response(content, headers={'Content-Type': 'application/json'}), code)
Esempio n. 5
0
def icon(icon_id):
  # API Token exist?
  if 'X_API_Token' not in request.headers:
    return make_response(jsonify({'message': 'API token not found'}), 400)
  # API Token Correct?
  if not check_api_token(request.headers['X_API_Token']):
    return make_response(jsonify({'message': 'API token is not correct'}), 400)

  ret = get_icon(icon_id)

  if len(ret) == 0:
    return make_response(jsonify({'message': 'Icon not found, check request parameter.'}), 400)
  if len(ret) == 1:
    return make_response(jsonify(ret[0]), 200)
Esempio n. 6
0
def index():
    # API Token exist?
    if 'X_API_Token' not in request.headers:
        return make_response(jsonify({'message': 'API token not found'}), 400)
    # API Token Correct?
    if not check_api_token(request.headers['X_API_Token']):
        return make_response(jsonify({'message': 'API token is not correct'}),
                             400)
    # API Key Corrected, begin create user.
    if request.method == 'POST':
        created_user = create_user()
        return make_response(jsonify(created_user))
    else:
        return make_response(jsonify({'message': 'This is user view root'}))
Esempio n. 7
0
def get_user(uuid):
    # API Token exist?
    if 'X_API_Token' not in request.headers:
        return make_response(jsonify({'message': 'API token not found'}), 400)
    # API Token Correct?
    if not check_api_token(request.headers['X_API_Token']):
        return make_response(jsonify({'message': 'API token is not correct'}),
                             400)

    res = get_user_by_uuid(uuid)

    if len(res) > 0:
        return make_response(jsonify(res[0]), 200)
    else:
        return '', 204
Esempio n. 8
0
def next():
  # API Token exist?
  if 'X_API_Token' not in request.headers:
    return make_response(jsonify({'message': 'API token not found'}), 400)
  # API Token Correct?
  if not check_api_token(request.headers['X_API_Token']):
    return make_response(jsonify({'message': 'API token is not correct'}), 400)

  params = request.args

  pageToken = params.get('pagetoken')
  if pageToken is None:
    return make_response(jsonify({'message': 'Missing paramter \'pagetoken\''}), 400)

  content, code = nextpage(pageToken)
  return make_response(Response(content, headers={'Content-Type': 'application/json'}), code)
Esempio n. 9
0
def goods(uuid):
    # API Token exist?
    if 'X_API_Token' not in request.headers:
        return make_response(jsonify({'message': 'API token not found'}), 400)
    # API Token Correct?
    if not check_api_token(request.headers['X_API_Token']):
        return make_response(jsonify({'message': 'API token is not correct'}),
                             400)

    user_records = get_user_by_uuid(uuid)
    if len(user_records) == 0:
        return make_response(
            jsonify({'message': 'No user found on specified uuid'}), 400)

    ret = get_goods(user_records[0]['id'])
    return make_response(jsonify(ret), 200)
Esempio n. 10
0
def posts(uuid):
    # API Token exist?
    if 'X_API_Token' not in request.headers:
        return make_response(jsonify({'message': 'API token not found'}), 400)
    # API Token Correct?
    if not check_api_token(request.headers['X_API_Token']):
        return make_response(jsonify({'message': 'API token is not correct'}),
                             400)
    res = get_posts_by_uuid(uuid)

    if len(res) > 0:
        return make_response(
            jsonify({
                'message': 'Request Completed.',
                'posts_array': res
            }), 200)
    else:
        return '', 204
Esempio n. 11
0
def visit_place(uuid, place_uid):
    # API Token exist?
    if 'X_API_Token' not in request.headers:
        return make_response(jsonify({'message': 'API token not found'}), 400)
    # API Token Correct?
    if not check_api_token(request.headers['X_API_Token']):
        return make_response(jsonify({'message': 'API token is not correct'}),
                             400)

    user_records = get_user_by_uuid(uuid)
    if len(user_records) == 0:
        return make_response(
            jsonify({'message': 'No user found on specified uuid'}), 400)

    visit(user_records[0]['id'], place_uid)

    return make_response(
        jsonify({'message': '{} visited at {}'.format(uuid, place_uid)}), 200)
Esempio n. 12
0
def posts(place_uid):
  # API Token exist?
  if 'X_API_Token' not in request.headers:
    return make_response(jsonify({'message': 'API token not found'}), 400)
  # API Token Correct?
  if not check_api_token(request.headers['X_API_Token']):
    return make_response(jsonify({'message': 'API token is not correct'}), 400)

  params = request.args
  before = params.get('before')
  if is_datetime(before):
    res = get_posts_by_place(place_uid, before)
  else:
    res = get_posts_by_place(place_uid)

  if len(res) > 0:
    return make_response(jsonify({'message': 'Request Completed.', 'posts_array': res}), 200)
  else:
    return '', 204
Esempio n. 13
0
def getdirection():
  # API Token exist?
  if 'X_API_Token' not in request.headers:
    return make_response(jsonify({'message': 'API token not found'}), 400)
  # API Token Correct?
  if not check_api_token(request.headers['X_API_Token']):
    return make_response(jsonify({'message': 'API token is not correct'}), 400)

  params = request.args
  
  origin = params.get('origin')
  destination = params.get('destination')

  if origin is None:
    return make_response(jsonify({'message': 'Missing parameter \'origin\''}), 400)
  if destination is None:
    return make_response(jsonify({'message': 'Missing parameter \'destination\''}), 400)

  content, code = direction(origin, destination)
  return make_response(Response(content, headers={'Content-Type': 'application/json'}), code)
Esempio n. 14
0
def set_icon(uuid, icon_id):
    # API Token exist?
    if 'X_API_Token' not in request.headers:
        return make_response(jsonify({'message': 'API token not found'}), 400)
    # API Token Correct?
    if not check_api_token(request.headers['X_API_Token']):
        return make_response(jsonify({'message': 'API token is not correct'}),
                             400)

    user_records = get_user_by_uuid(uuid)
    if len(user_records) == 0:
        return make_response(
            jsonify({'message': 'No user found on specified uuid'}), 400)

    content, code = change_icon(user_records[0]['id'], icon_id)

    if code == 400:
        return make_response(jsonify(content), code)

    return make_response(jsonify(get_user_by_uuid(uuid)[0]), 200)
Esempio n. 15
0
def getbytype():
  # API Token exist?
  if 'X_API_Token' not in request.headers:
    return make_response(jsonify({'message': 'API token not found'}), 400)
  # API Token Correct?
  if not check_api_token(request.headers['X_API_Token']):
    return make_response(jsonify({'message': 'API token is not correct'}), 400)

  params = request.args
  location = params.get('location')
  radius = params.get('radius')
  type_value = params.get('type')
  if location is None:
    return make_response(jsonify({'message': 'Missing parameter \'location\''}), 400)
  if radius is None:
    return make_response(jsonify({'message': 'Missing parameter \'radius\''}), 400)
  if type_value is None:
    return make_response(jsonify({'message': 'Missing parameter \'type\''}), 400)
  
  content, code = bytype(location, radius, type_value)
  return make_response(Response(content, headers={'Content-Type': 'application/json'}), code)