From 82baace848223768f0ee8e230720e93dc2092b0e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ses=C3=B3stris=20Vieira?=
Date: Thu, 27 Apr 2023 10:03:37 -0300
Subject: [PATCH] =?UTF-8?q?Ajustes=20na=20integra=C3=A7=C3=A3o=20SIGI=20x?=
=?UTF-8?q?=20Moodle?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
sigi/apps/eventos/admin.py | 55 +++++++++++++------
.../admin/eventos/evento/createcourse.html | 10 +++-
2 files changed, 46 insertions(+), 19 deletions(-)
diff --git a/sigi/apps/eventos/admin.py b/sigi/apps/eventos/admin.py
index 7d6921d..8e317be 100644
--- a/sigi/apps/eventos/admin.py
+++ b/sigi/apps/eventos/admin.py
@@ -472,6 +472,7 @@ class EventoAdmin(CartExportMixin, admin.ModelAdmin):
shortname = f"{evento.tipo_evento.nome} - {evento.turma}"
inicio = int(time.mktime(evento.data_inicio.astimezone().timetuple()))
fim = int(time.mktime(evento.data_termino.astimezone().timetuple()))
+ erros = []
try:
novo_curso = mws.core.course.duplicate_course(
evento.tipo_evento.moodle_template_courseid,
@@ -482,6 +483,17 @@ class EventoAdmin(CartExportMixin, admin.ModelAdmin):
)
evento.moodle_courseid = novo_curso.id
evento.save()
+ except Exception as e:
+ self.message_user(
+ request,
+ _(
+ "Ocorreu um erro ao criar o curso no Saberes com "
+ f"a mensagem {e.message}"
+ ),
+ level=messages.ERROR,
+ )
+ return redirect(change_url)
+ try:
changes = {
"id": novo_curso.id,
"summary": evento.descricao,
@@ -489,6 +501,15 @@ class EventoAdmin(CartExportMixin, admin.ModelAdmin):
"enddate": fim,
}
res = mws.core.course.update_courses([changes])
+ except Exception as e:
+ erros.append(
+ _(
+ "Falha na tentativa de alterar o sumário e as datas de "
+ "início e término do curso, com a seguinte mensagem: "
+ f"{e.message}"
+ )
+ )
+ try:
membros = evento.equipe_set.exclude(
membro__moodle_userid=None
).exclude(funcao__moodle_roleid=None)
@@ -502,24 +523,22 @@ class EventoAdmin(CartExportMixin, admin.ModelAdmin):
}
)
mws.enrol.manual.enrol_users(equipe)
- context = {
- "evento": evento,
- "fullname": fullname,
- "shortname": shortname,
- "membros": membros,
- "opts": self.model._meta,
- "preserved_filters": self.get_preserved_filters(request),
- }
- return render(
- request, "admin/eventos/evento/createcourse.html", context
- )
except Exception as e:
- self.message_user(
- request,
+ erros.append(
_(
- "Ocorreu um erro ao criar o curso no Saberes com "
- f"a mensagem {e.message}"
- ),
- level=messages.ERROR,
+ "Falha ao tentar inscrever a equipe no curso do Saberes, "
+ f"com a seguinte mensagem: {e.message}"
+ )
)
- return redirect(change_url)
+ context = {
+ "evento": evento,
+ "fullname": fullname,
+ "shortname": shortname,
+ "membros": membros,
+ "erros": erros,
+ "opts": self.model._meta,
+ "preserved_filters": self.get_preserved_filters(request),
+ }
+ return render(
+ request, "admin/eventos/evento/createcourse.html", context
+ )
diff --git a/sigi/apps/eventos/templates/admin/eventos/evento/createcourse.html b/sigi/apps/eventos/templates/admin/eventos/evento/createcourse.html
index a59d87f..49a945f 100644
--- a/sigi/apps/eventos/templates/admin/eventos/evento/createcourse.html
+++ b/sigi/apps/eventos/templates/admin/eventos/evento/createcourse.html
@@ -27,13 +27,21 @@
acessado em {{ courseurl }}. O nome completo do curso é "{{ fullname }}"
e o nome breve é "{{ shortname }}".
{% endblocktrans %}
-
+
{% trans "Os seguintes servidores foram inscritos no curso:" %}
{% for membro in membros %}
- {{ membro }}
{% endfor %}
+ {% if erros %}
+
+ {% trans "OCORRERAM OS SEGUINTES ERROS:" %}
+
+ {% for erro in erros %}
+ - {{ erro }}
+ {% endfor %}
+ {% endif %}