Files
fachschaften/organizations/views.py
2017-02-10 22:06:49 +01:00

74 lines
2.6 KiB
Python

from flask import Blueprint, jsonify, render_template, abort, redirect, url_for, request
organization_pages = Blueprint('organizations', __name__)
from src.organizations.controller import controller
#from src.database import db_session, read_json
#from .model import Organization #, OrganizationSchema
#from datetime import datetime
#import json
#from src import clogger
#import flask
@organization_pages.route("/")
@organization_pages.route("")
@organization_pages.route(".json")
def index():
organizations=controller.get_all()
return jsonify(organizations=organizations)
@organization_pages.route("/<int:id>",methods=['GET'])
@organization_pages.route("/<int:id>.json",methods=['GET'])
def get(id):
organization=controller.get(id)
return jsonify(organization=organization)
@organization_pages.route("/<string:key>",methods=['GET'])
@organization_pages.route("/<string:key>.json",methods=['GET'])
def get_by_key(key):
organization=controller.get_by_key(key)
return jsonify(organization=organization)
@organization_pages.route("/<string:key>/articles",methods=['GET'])
@organization_pages.route("/<string:key>/articles.json",methods=['GET'])
def get_articles_by_key(key):
organization=controller.get_by_key(key)
articles=controller.get_by_key_articles(key)
return jsonify(organization=organization, articles=articles)
@organization_pages.route("/<int:id>/sections",methods=['GET'])
@organization_pages.route("/<int:id>/sections.json",methods=['GET'])
def get_sections(id):
organization=Organization.query.get(id)
sections=organization.sections
return jsonify(organization=organization, sections=sections)
@organization_pages.route("/<int:id>/articles",methods=['GET'])
@organization_pages.route("/<int:id>/articles.json",methods=['GET'])
def get_articles(id):
articles=controller.get_articles(id)
organization=controller.get(id)
return jsonify(organization=organization, articles=articles)
@organization_pages.route("/<int:id>",methods=['PUT'])
@organization_pages.route("/<int:id>.json",methods=['PUT'])
def update(id):
o,errors=controller.update(id,request)
return jsonify(organization=o, errors=errors)
@organization_pages.route("/<int:id>",methods=['DELETE'])
@organization_pages.route("/<int:id>.json",methods=['DELETE'])
def delete(id):
controller.delete(id)
return jsonify()
@organization_pages.route("/",methods=['POST'])
@organization_pages.route("",methods=['POST'])
@organization_pages.route(".json",methods=['POST'])
def create():
organization,errors=controller.create(request)
return jsonify(organization=organization,errors=errors)