Example #1
0
def edit_member():

    form = MemberOfProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if form.validate_on_submit():
        index = str(form.index.data)
        new_member = {
            'name': form.name.data,
            'general_role': form.general_role.data,
            'project_role': form.project_role.data
        }
        dao.find_one_and_update({'_id': ObjectId(form.project_id.data)},
                                {'$set': {
                                    'members.' + index: new_member
                                }})
        projects = pfactory.projects_database_dao().find()
        projects = list(projects)
        projects = dumps(projects)
        return jsonify(projects=projects)
    else:
        return jsonify({'error': 'Houve um erro'})
Example #2
0
def edit_project():
    """Render project editing form."""

    form = ProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if form.validate_on_submit() and form.create.data:
        new_project = {
            'title': form.title.data,
            'subtitle': form.subtitle.data,
            'description': form.description.data,
            'situation': form.situation.data,
            'year': form.year.data,
            'email': form.email.data,
            'dt_init': form.dt_init.data,
            'dt_end': form.dt_end.data
        }
        dao.find_one_and_update({'_id': ObjectId(form.project_id.data)},
                                {'$set': new_project})
        return redirect(
            url_for('crud_projects.edit_project',
                    success_msg='Projeto editado com sucesso.'))
    return render_template('admin/edit_projects.html',
                           form=form,
                           projects=projects,
                           success_msg=request.args.get('success_msg'))
def edit_project():
    """Render project editing form."""

    form = ProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if form.validate_on_submit() and form.create.data:
        new_project = {
            'title': form.title.data,
            'subtitle': form.subtitle.data,
            'description': form.description.data,
            'situation': form.situation.data,
            'year': form.year.data,
            'email': form.email.data,
            'dt_init': form.dt_init.data,
            'dt_end': form.dt_end.data
        }
        dao.find_one_and_update({'_id' : ObjectId(form.project_id.data)}, {
            '$set' : new_project})
        return redirect(
            url_for(
                'crud_projects.edit_project',
                success_msg='Projeto editado com sucesso.'
            )
        )
    return render_template(
        'admin/edit_projects.html',
        form=form,
        projects=projects,
        success_msg=request.args.get('success_msg')
    )
def delete_project():
    """Render project deleting form."""

    form = ProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if form.validate_on_submit() and form.create.data:
        dao.find_one_and_update({'_id' : ObjectId(form.project_id.data)}, {
            '$set' : {'deleted' : '' }})
        return redirect(
            url_for(
                'crud_projects.delete_project',
                success_msg='Projeto deletado com sucesso.'
            )
        )
    return render_template(
        'admin/delete_project.html',
        form=form,
        projects=projects,
        success_msg=request.args.get('success_msg')
    )
Example #5
0
def add_project():
    """Render project adding form."""

    form = ProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    ownerProgram = pfactory.mongo_id

    if form.validate_on_submit() and form.create.data:
        new_project = {
            'ownerProgram': ownerProgram,
            'title': form.title.data,
            'subtitle': form.subtitle.data,
            'description': form.description.data,
            'situation': form.situation.data,
            'year': form.year.data,
            'email': form.email.data,
            'dt_init': form.dt_init.data,
            'dt_end': form.dt_end.data,
            'members': []
        }

        dao.insert_one(None, new_project)

        return redirect(
            url_for('crud_projects.add_project',
                    success_msg='Projeto adicionado adicionado com sucesso.'))
    return render_template('admin/add_project.html',
                           form=form,
                           success_msg=request.args.get('success_msg'))
Example #6
0
def view_member():

    form = MemberOfProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if request.args.get('crud_type') == 'Adicionar':
        return render_template('admin/add_member_in_project.html',
                               form=form,
                               projects=projects,
                               crud_type=request.args.get('crud_type'),
                               success_msg=request.args.get('success_msg'))
    if request.args.get('crud_type') == 'Deletar':
        return render_template('admin/delete_member_in_project.html',
                               form=form,
                               projects=projects,
                               crud_type=request.args.get('crud_type'),
                               success_msg=request.args.get('success_msg'))
    else:
        return render_template('admin/edit_member_in_project.html',
                               form=form,
                               projects=projects,
                               crud_type=request.args.get('crud_type'),
                               success_msg=request.args.get('success_msg'))
def view_member():

    form = MemberOfProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if request.args.get('crud_type') == 'Adicionar':
        return render_template(
            'admin/add_member_in_project.html',
            form=form,
            projects=projects,
            crud_type=request.args.get('crud_type'),
            success_msg=request.args.get('success_msg')
        )
    if request.args.get('crud_type') == 'Deletar':
        return render_template(
            'admin/delete_member_in_project.html',
            form=form,
            projects=projects,
            crud_type=request.args.get('crud_type'),
            success_msg=request.args.get('success_msg')
        )
    else:
        return render_template(
            'admin/edit_member_in_project.html',
            form=form,
            projects=projects,
            crud_type=request.args.get('crud_type'),
            success_msg=request.args.get('success_msg')
        )
def delete_member():

    form = MemberOfProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if form.validate_on_submit():
        index = str(form.index.data)
        dao.find_one_and_update({'_id' : ObjectId(form.project_id.data)}, {
            '$set': {'members.' + index + '.deleted' : '' }})
        projects = pfactory.projects_database_dao().find()
        projects = list(projects)
        projects = dumps(projects)
        return jsonify(projects=projects)
    else:
        return jsonify({'error':'Houve um erro'})
Example #9
0
def delete_project():
    """Render project deleting form."""

    form = ProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if form.validate_on_submit() and form.create.data:
        dao.find_one_and_update({'_id': ObjectId(form.project_id.data)},
                                {'$set': {
                                    'deleted': ''
                                }})
        return redirect(
            url_for('crud_projects.delete_project',
                    success_msg='Projeto deletado com sucesso.'))
    return render_template('admin/delete_project.html',
                           form=form,
                           projects=projects,
                           success_msg=request.args.get('success_msg'))
Example #10
0
def delete_member():

    form = MemberOfProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if form.validate_on_submit():
        index = str(form.index.data)
        dao.find_one_and_update(
            {'_id': ObjectId(form.project_id.data)},
            {'$set': {
                'members.' + index + '.deleted': ''
            }})
        projects = pfactory.projects_database_dao().find()
        projects = list(projects)
        projects = dumps(projects)
        return jsonify(projects=projects)
    else:
        return jsonify({'error': 'Houve um erro'})
def add_member():

    form = MemberOfProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    projects = dumps(projects)
    if form.validate_on_submit():
        new_member = {
            'name' : form.name.data,
            'general_role' : form.general_role.data,
            'project_role' : form.project_role.data
        }
        dao.find_one_and_update({'_id' : ObjectId(form.project_id.data)}, {
            '$push': {'members': new_member}})
        projects = pfactory.projects_database_dao().find()
        projects = list(projects)
        projects = dumps(projects)
        return jsonify(projects=projects)
    else:
        return jsonify({'error':'Houve um erro'})
Example #12
0
def view_projects(initials):
    """Render a view for projects list."""

    pfactory = PosGraduationFactory(initials)
    post_graduation = pfactory.post_graduation
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    for project in projects:
        coordinators_names = []
        for member in project['members']:
            if 'Coordenador(a)' in member['project_role']:
                coordinators_names.append(member)
                project['members'].remove(member)
        project['coordinators_names'] = coordinators_names

    # renders an own page or redirect to another (external/404)?
    return render_template('public/projects.html',
                           std=get_std_for_template(post_graduation),
                           projects=projects)
def view_projects(initials):
    """Render a view for projects list."""

    pfactory = PosGraduationFactory(initials)
    post_graduation = pfactory.post_graduation
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    for project in projects:
        coordinators_names = []
        for member in project['members']:
            if 'Coordenador(a)' in member['project_role']:
                coordinators_names.append(member)
                project['members'].remove(member)
        project['coordinators_names'] = coordinators_names

    # renders an own page or redirect to another (external/404)?
    return render_template(
        'public/projects.html',
        std=get_std_for_template(post_graduation),
        projects=projects
    )
Example #14
0
def view_projects(initials):
    """Render a view for projects list."""

    pfactory = PosGraduationFactory(initials)
    post_graduation = pfactory.post_graduation
    projects = pfactory.projects_database_dao().find()
    projects = list(projects)
    for project in projects:
        coordinators_names = []
        for member in project['members']:
            if 'Coordenador(a)' in member['project_role']:
                coordinators_names.append(member)
                project['members'].remove(member)
        project['coordinators_names'] = coordinators_names
    coordinator_names = list(
        map(
            lambda x: x['coordinators_names'][0]['name'].strip().title()
            if x['coordinators_names'] and 'deleted' not in x else
            'Sem coordenador', projects))
    coordinator_names = list(dict.fromkeys(coordinator_names))
    coordinator_names.sort()
    coordinators = list(
        map(
            lambda x: {
                'coordinator_name':
                x,
                'projects':
                list(
                    filter(
                        lambda y: y['coordinators_names'][0]['name'].strip(
                        ).title() == x if y['coordinators_names'] else x ==
                        'Sem coordenador', projects))
            }, coordinator_names))

    # renders an own page or redirect to another (external/404)?
    return render_template(
        'public/projects.html',
        std=get_std_for_template(post_graduation),
        coordinators=coordinators,
    )
def add_project():
    """Render project adding form."""

    form = ProjectForm()

    pfactory = PosGraduationFactory(current_user.pg_initials)
    dao = pfactory.projects_database_dao()
    ownerProgram = pfactory.mongo_id

    if form.validate_on_submit() and form.create.data:
        new_project = {
            'ownerProgram': ownerProgram,
            'title': form.title.data,
            'subtitle': form.subtitle.data,
            'description': form.description.data,
            'situation': form.situation.data,
            'year': form.year.data,
            'email': form.email.data,
            'dt_init': form.dt_init.data,
            'dt_end': form.dt_end.data,
            'members' : []
        }

        dao.insert_one(None, new_project)

        return redirect(
            url_for(
                'crud_projects.add_project',
                success_msg='Projeto adicionado adicionado com sucesso.'
            )
        )
    return render_template(
        'admin/add_project.html',
        form=form,
        success_msg=request.args.get('success_msg')
    )