コード例 #1
0
ファイル: admin.py プロジェクト: luccasmmg/PosGraduacao
def delete_professors():
    """Render a view for deleting professors."""

    form = ProfessorForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.board_of_professors_dao()
    json = pfactory.board_of_professors_dao().find_one()
    json = dict(json)
    json = dumps(json)

    if form.validate_on_submit() and form.create.data:
        index = str(form.index.data)
        dao.find_one_and_update(None, {
            '$set': {'professors.' + index + '.deleted'  : ""}
        })

        return redirect(
            url_for(
                'admin.delete_professors',
                professors=json,
                success_msg='Professor deletado com sucesso.'
            )
        )

    return render_template(
        'admin/delete_professors.html',
        form=form,
        professors=json,
        success_msg=request.args.get('success_msg')
    )
コード例 #2
0
ファイル: admin.py プロジェクト: luccasmmg/PosGraduacao
def add_professors():
    """Render a view for professors."""

    form = ProfessorForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.board_of_professors_dao()

    if form.validate_on_submit() and form.create.data:
        new_professor = {
            'name': form.name.data,
            'rank': form.rank.data,
            'lattes': form.lattes.data,
            'email': form.email.data
        }

        dao.find_one_and_update(None, {
            '$push': {'professors': new_professor}
        })

        return redirect(
            url_for(
                'admin.add_professors',
                success_msg='Professor adicionado adicionado com sucesso.'
            )
        )

    return render_template(
        'admin/add_professors.html',
        form=form,
        success_msg=request.args.get('success_msg')
    )
コード例 #3
0
ファイル: admin.py プロジェクト: luccasmmg/PosGraduacao
def add_researcher():
    """Render a view for researchers."""

    form = ResearcherForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.board_of_professors_dao()

    if form.validate_on_submit() and form.create.data:
        new_researcher = {
            'name': form.name.data,
            'cpf': form.cpf.data,
        }

        dao.find_one_and_update(None, {
            '$push': {'researchers': new_researcher}
        })

        return redirect(
            url_for(
                'admin.add_researcher',
                success_msg='Pesquisador adicionado com sucesso.'
            )
        )

    return render_template(
        'admin/add_researcher.html',
        form=form,
        success_msg=request.args.get('success_msg')
    )
コード例 #4
0
ファイル: admin.py プロジェクト: luccasmmg/PosGraduacao
def edit_professors():
    """Render a view for editing professors."""

    form = ProfessorForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.board_of_professors_dao()
    json = pfactory.board_of_professors_dao().find_one()
    json = dict(json)
    json = dumps(json)

    if form.validate_on_submit() and form.create.data:
        index = str(form.index.data)
        new_professor = {
            'name': form.name.data,
            'rank': form.rank.data,
            'lattes': form.lattes.data,
            'email': form.email.data
        }

        dao.find_one_and_update(None, {
            '$set': {'professors.' + index : new_professor}
        })

        return redirect(
            url_for(
                'admin.edit_professors',
                professors=json,
                success_msg='Professor editado com sucesso.'
            )
        )

    return render_template(
        'admin/edit_professors.html',
        form=form,
        professors=json,
        success_msg=request.args.get('success_msg')
    )
コード例 #5
0
def view_chapters(initials):
    """Render a view for chapters list."""

    pfactory = PosGraduationFactory(initials)
    post_graduation = pfactory.post_graduation
    researchers = list(
        pfactory.board_of_professors_dao().find_one()['researchers'])
    publications = pfactory.publications_sigaa_dao(researchers,
                                                   'capitulos-livros').find()

    # renders an own page or redirect to another (external/404)?
    return render_template('public/chapters.html',
                           std=get_std_for_template(post_graduation),
                           publications=publications)
コード例 #6
0
def view_professors(initials):
    """Render a view for professors list."""

    try:
        pfactory = PosGraduationFactory(initials)
        post_graduation = pfactory.post_graduation
        board_of_professors_sigaa = SigaaScraper.professors_list(initials)
        board_of_professors_database = list(
            pfactory.board_of_professors_dao().find_one()['professors'])
        board_of_professors = board_of_professors_sigaa + board_of_professors_database
        print(board_of_professors, file=sys.stderr)

        return render_template(
            'public/professors.html',
            std=get_std_for_template(post_graduation),
            board_of_professors=board_of_professors,
        )
    except Exception:
        return page_not_found()