Exemple #1
0
    def put(self, hash):
        """
        Create an edit of a revision.
        """
        user   = auth(session, required=True)
        parser = restful.reqparse.RequestParser()
        parser.add_argument("document",type=str, required=True)
        args   = parser.parse_args()  

        parent = Revision.query.filter(and_(Revision.hash == hash, Revision.user == user)).first()
        if parent != None:
            revision         = Revision()
            revision.user    = user
            revision.parent  = parent
            revision.content = args.document
            revision.size    = len(revision.content)
            revision.hash    = hashlib.sha1(args.document).hexdigest()
            revision.get_mimetype()
            db.session.add(revision)
            db.session.add(parent)
            db.session.commit()
            return revision.jsonify(), 201
        return {}, 404