Esempio n. 1
0
def add_topic():
    node_types = Node.get_types()
    for nt in node_types:
        nt['nodes'] = Node.get_nodes_by_type(nt['TypeID'])

    if request.method == 'GET':
        # choose a node to be default, here is node_id = 10001
        node_id = int(request.args['node_id']) if "node_id" in request.args else 10001
        form = TopicForm(node_id=node_id)
        node = Node.get_node_by_id(node_id)
        return render_template('topic/add_topic.html', node=node, node_types=node_types, form=form)
    else:
        form = TopicForm(request.form)
        if form.validate():
            # node_id = int(form.node_id.data)
            node_id = 10001
            title = cgi.escape(form.title.data)
            content = cgi.escape(form.content.data)
            user_id = session['user_id']
            new_topic_id = Topic.add(node_id, title, content, user_id)
            return redirect(url_for('single_topic', topic_id=new_topic_id))
        else:
            # choose a node to be default, here is node_id = 10001
            # node_id = int(form.node_id.data)
            node_id = 10001
            node = Node.get_node_by_id(node_id)
            return render_template('topic/add_topic.html', node=node, node_types=node_types, form=form)