def post_read(): usr = current_user._get_current_object() add_fields = list() if isinstance(usr, AnonymousUser): c = post.get() else: c = post.get(filter_inactive=False) add_fields.extend(['draft']) return json_response([i.serialize(add_fields=add_fields) for i in c], 200)
def post_read_instance_by_id(post_id): usr = current_user._get_current_object() add_fields = list() if not isinstance(usr, AnonymousUser): add_fields.extend(['draft']) p = post.get_by_id(post_id) if not p: return abort(404) return json_response(p.serialize(add_fields=add_fields), 200)
def company_delete(company_id): if not current_user.is_authenticated(): return abort(403) try: company.delete(current_user, company_id) except (ObjectNotFoundError, UnauthorizedObjectAccessError): # In either instance, return a not found response return abort(404) # TODO :: This response needs to make sense. return json_response([0], 204)
def post_create(): usr = current_user._get_current_object() data = request.json subtitle = data.get('subtitle', None) format = data.get('format', 'txt') domain = data.get('domain', app.config.get('DEFAULT_CONTENT_DOMAIN')) tags = data.get('tags', None) tags = [t.strip() for t in tags.split(',')] if tags else None p = post.create(usr, data.get('slug'), data.get('title'), data.get('content'), format, subtitle=subtitle, domain=domain, tags=tags) return json_response(p.serialize(), 201)
def update(usr, p, data): if usr.id != p.author_id or p.author_id != data['author_id']: msg = 'You are not authorized to update post id: %s' % p.id raise UnauthorizedObjectAccessError(msg) if 'tags' in data: data['tags'] = [t.strip() for t in data['tags'].split(',')] activate = False if 'active' in data: activate = True is_active = data['active'] del data['active'] kwargs = dict() for (k, v) in data.items(): if k in ('title', 'content', 'tags'): kwargs[k] = v post.update(p, usr, **kwargs) if activate: post.publish(p, usr, is_active=is_active) return json_response(p.serialize(), 200)
def post_read_instance_by_slug(post_slug): p = post.get_by_slug(post_slug) if not p: return abort(404) return json_response(p.serialize(), 200)
def user_read_instance_by_username(username): u = User.query.filter_by(username=username).first() if not u: return abort(404) return json_response(u.serialize(), 200)
def user_read(): users = User.query.order_by(User.id).all() return json_response([u.serialize() for u in users], 200)
def role_read_instance(role_id): r = Role.query.filter_by(id=role_id).first() if not r: return abort(404) return json_response(r.serialize(), 200)
def role_read(): roles = Role.query.order_by(Role.id).all() return json_response([r.serialize() for r in roles], 200)