def editar(id): agente = Agente.query.get_or_404(id) permission = EditarAgenteNucleoPermission(agente.id_nucleo) if is_accessible() or g.user.id == id or (is_accessible(roles_accepted=('coordenador_nucleo', )) and permission.can()): nucleos = [(c.id, c.descricao) for c in Nucleo.query.order_by(Nucleo.descricao).all()] form = AgenteFormEditar(obj=agente) form.id_nucleo.choices = nucleos form.id_nucleo.choices.insert(0, (0, "Selecione...")) if request.method == "POST" and form.validate_on_submit(): coordenador_nucleo = agente.coordenador_nucleo form.populate_obj(agente) if g.user.coordenador_pastoral == False: agente.coordenador_nucleo = coordenador_nucleo db.session.commit() flash(u"Agente editado com sucesso!", "success") return redirect("/agente/") else: abort(403) return render_template("agente/form_editar.html", form = form, menu='agente')
def excluir(id): agente = Agente.query.get_or_404(id) permission = EditarAgenteNucleoPermission(agente.id_nucleo) if is_accessible() or g.user.id == id or (is_accessible(roles_accepted=('coordenador_nucleo', )) and permission.can()): if id <> None and request.method == "GET": agente.active = False db.session.commit() flash(u"Agente excluĂdo com sucesso!", "success") else: abort(403) return redirect("/agente/")
def editar(id): evento = Evento.query.get_or_404(id) nucleos = [(c.id, c.descricao) for c in Nucleo.query.order_by(Nucleo.descricao).all()] if is_accessible() or (g.user.id_nucleo == evento.id_nucleo): form = EventoForm(obj=evento) form.id_nucleo.choices = nucleos form.id_nucleo.choices.insert(0, (0, "Selecione...")) if request.method == "POST" and form.validate_on_submit(): form.populate_obj(evento) if evento.id_nucleo == 0: evento.id_nucleo = None db.session.commit() flash(u"Evento editado com sucesso!", "success") return redirect("/evento/") else: abort(403) return render_template("evento/form.html", form = form, menu='eventos')