Exemplo n.º 1
0
def get_tree():
  mapname = request.query_string
  # user = request.args.get('user')
  mapname = urllib.unquote(mapname)
  current_app.logger.info('Request: {0}'.format(request))
  current_app.logger.info('Query String: {0}'.format(mapname))
  # SANITIZE INPUT! (NO ".." ETC.)
  if mapname == 'none':
    mapname = 'map1'
  filename = None
  if session.get('logged_in'):
    # CHECK THAT THE FILE EXISTS
    msg = model_utils.CreateIfNotFound(session['username'], mapname)
    current_app.logger.info('Git msg: {0}'.format(msg))
    #filename = model_utils.user_dir(session['username'], mapname)
  else:
    # CHECK THAT THE FILE EXISTS
    msg = model_utils.CreateIfNotFound(mapname = mapname)
    current_app.logger.info('Git msg: {0}'.format(msg))
  # tree comes in as string
  tree = model_utils.loadMap(mapname)
  current_app.logger.info('tree: {0}'.format(tree))
  current_app.logger.info('tree type: {0}'.format(type(tree)))
  # convert tree to python object
  tree = json.loads(tree)
  tree["mapname"] = mapname
  msg = json.dumps(tree)
  current_app.logger.info('get_tree msg: {0}'.format(msg))
  # return tree as string again
  return jsonify(tree)
Exemplo n.º 2
0
def get_tree_revision():
  # mapname = request.query_string
  qs = request.query_string
  current_app.logger.info('qs: {0}'.format(qs))
  #mapname = request.args.get('mapname')
  split = qs.split('&')
  mapname = split[0].split('=')[1]
  current_app.logger.info('mapname: {0}'.format(mapname))
  mapname = urllib.unquote(mapname)  # unquote_plus() instead?
  revision_id = split[1].split('=')[1]
  #revision_id = request.form.get('revid')

  current_app.logger.info('Request: {0}'.format(request))
  current_app.logger.info('Query String[mapid]: {}'.format(mapname))
  current_app.logger.info('Query String[revid]: {}'.format(revision_id))

  # SANITIZE INPUT! (NO ".." ETC.)
  # SHOULD CHECK THAT THE MAP EXISTS

  # tree comes in as string
  tree = model_utils.loadMap(mapname, revision_id)
  current_app.logger.info('tree: {0}'.format(tree))
  current_app.logger.info('tree type: {0}'.format(type(tree)))
  # convert tree to python object
  tree = json.loads(tree)
  tree["mapname"] = mapname
  msg = json.dumps(tree)
  current_app.logger.info('get_tree msg: {0}'.format(msg))
  # return tree as string again
  return jsonify(tree)