Esempio n. 1
0
def show_users():
    try:
        users = db.session.execute('SELECT id from "user"').fetchall()
        user_ids = [row[0] for row in users]
        return jsonify(users=user_ids)
    except:
        db.session.rollback()
        return jsonify({users: []})
Esempio n. 2
0
def get_file(user_id, file_id):
    if request.method == 'GET':
        return to_json(File.query.get(file_id))
    else:
        db.session.delete(File.query.get(file_id))
        db.session.commit()
        return jsonify({'success': True})
Esempio n. 3
0
def upload(id):
    if request.method == 'GET':
        return to_json(User.query.get(id).files)
    else:
        """Upload a file"""
        uploaded_file = request.files['file']
        if uploaded_file is not None:
            filename = secure_filename(uploaded_file.filename)
            uploaded_file.save(os.path.join('tmp', filename))

            date = request.form.get('lastModifiedDate')
            date_parts = date.split(' ')
            parsed_date = ' '.join(date_parts[0:-2])

            _file = File(name=filename, size=request.form.get('bytes'), modified_at=parsed_date, user=g.current_user)
            db.session.add(_file)
            db.session.commit()

            split_file(_file)
            return to_json(_file)
        return jsonify({})
Esempio n. 4
0
def to_json(obj):
    _visited_objs = []
    def recurse(model):
        if isinstance(model.__class__, DeclarativeMeta):
            if model in _visited_objs:
                return None
            _visited_objs.append(model)

            fields = dict()
            for field in [x for x in dir(model) if not x.startswith('_') and x not in ['metadata', 'query', 'query_class']]:
                v = model.__getattribute__(field)
                if isinstance(v, list) and len(v) > 0 and isinstance(v[0].__class__, DeclarativeMeta):
                    child_list = []
                    for child in v:
                        child_list.append(recurse(child))
                    fields[field] = child_list
                else:
                    fields[field] = recurse(v)
            return fields
        return model
    return jsonify(recurse(obj))