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)
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)