def delete(slug, name): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) schema = object_or_404(Schema.by_name(project, name)) schemata.delete(schema) db.session.commit() raise Gone()
def update(slug): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) data = request_data({'author': request.account}) project = projects.save(data, project=project) db.session.commit() return jsonify(project)
def create(slug): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) data = request_data({"project": project}) schema = schemata.save(data) db.session.commit() return jsonify(schema, status=201)
def delete(slug, id): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) permission = object_or_404(Permission.by_project_and_id(project, id)) permissions.delete(permission) db.session.commit() raise Gone()
def create(slug): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) data = request_data({'project': project}) permission = permissions.save(data) db.session.commit() return jsonify(permission, status=201)
def create(slug): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) data = request_data({'project': project}) schema = schemata.save(data) db.session.commit() return jsonify(schemata.to_rest(schema), status=201)
def index(slug): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) query = Permission.all() query = query.filter_by(project=project) pager = Pager(query, slug=slug) validate_cache(keys=pager.cache_keys()) return jsonify(pager, index=True)
def index(slug): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) query = Permission.all() query = query.filter_by(project=project) pager = Pager(query) conv = lambda es: [permissions.to_rest_index(e) for e in es] return jsonify(pager.to_dict(conv))
def update(slug, id): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) permission = object_or_404(Permission.by_project_and_id(project, id)) data = request_data({'project': project}) permission = permissions.save(data, permission=permission) db.session.commit() return jsonify(permission)
def update(slug, name): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) schema = object_or_404(Schema.by_name(project, name)) data = request_data({'project': project}) schema = schemata.save(data, schema=schema) db.session.commit() return jsonify(schema)
def update(slug, name): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) schema = object_or_404(Schema.by_name(project, name)) data = request_data({'project': project}) project = schemata.save(data, schema=schema) db.session.commit() return jsonify(schemata.to_rest(schema))
def delete(slug, name): project = object_or_404(Project.by_slug(slug)) authz.require(authz.project_manage(project)) schema = object_or_404(Schema.by_name(project, name)) deleted = schemata.delete(schema) db.session.commit() if deleted: raise Gone() else: return jsonify(schema)
def view(slug, id): project = object_or_404(Project.by_slug(slug)) permission = object_or_404(Permission.by_project_and_id(project, id)) authz.require( authz.project_manage(project) or request.account == permission.account) return jsonify(permission)
def view(slug, id): project = object_or_404(Project.by_slug(slug)) permission = object_or_404(Permission.by_project_and_id(project, id)) authz.require(authz.project_manage(project) or request.account == permission.account) return jsonify(permission)