mirror of
https://github.com/ae-utbm/sith.git
synced 2026-11-07 01:39:32 +00:00
merge alert message and info message edition views
This commit is contained in:
1 parent
9b38d4bff0
commit
d1649ddb49
5 files changed
+45
-119
No files matched your search
+15
-49
@@ -31,8 +31,9 @@ from pytest_django.asserts import assertNumQueries, assertRedirects
|
||||
|
||||
from club.models import Club, ClubRole, Membership
|
||||
from com.models import News, NewsDate, Poster, Sith, Weekmail, WeekmailArticle
|
||||
from core.baker_recipes import subscriber_user
|
||||
from core.baker_recipes import old_subscriber_user, subscriber_user
|
||||
from core.models import AnonymousUser, Group, User
|
||||
from core.templatetags.renderer import markdown
|
||||
from core.utils import RED_PIXEL_PNG
|
||||
|
||||
|
||||
@@ -42,68 +43,32 @@ def user_community():
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
@pytest.mark.parametrize(
|
||||
"url",
|
||||
[
|
||||
reverse("com:alert_edit"),
|
||||
reverse("com:info_edit"),
|
||||
],
|
||||
)
|
||||
def test_com_page_is_working(client, url, user_community):
|
||||
def test_com_page_is_working(client, user_community):
|
||||
client.force_login(user_community)
|
||||
response = client.get(url)
|
||||
response = client.get(reverse("com:banner_edit"))
|
||||
assert response.status_code == 200
|
||||
|
||||
|
||||
class TestCom(TestCase):
|
||||
@classmethod
|
||||
def setUpTestData(cls):
|
||||
cls.skia = User.objects.get(username="skia")
|
||||
cls.com_group = Group.objects.get(id=settings.SITH_GROUP_COM_ADMIN_ID)
|
||||
cls.skia.groups.set([cls.com_group])
|
||||
cls.com_admin = subscriber_user.make(groups=[cls.com_group])
|
||||
|
||||
def setUp(self):
|
||||
self.client.force_login(self.skia)
|
||||
|
||||
def test_alert_msg(self):
|
||||
def test_banner_messages(self):
|
||||
self.client.force_login(self.com_admin)
|
||||
alert_msg = "### ALERTE!\n\n**Caaaataaaapuuuulte!!!!**\n"
|
||||
info_msg = "### INFO:\n\n**Caaaataaaapuuuulte!!!!**\n"
|
||||
self.client.post(
|
||||
reverse("com:alert_edit"),
|
||||
{
|
||||
"alert_msg": """
|
||||
### ALERTE!
|
||||
|
||||
**Caaaataaaapuuuulte!!!!**
|
||||
"""
|
||||
},
|
||||
reverse("com:banner_edit"), {"alert_msg": alert_msg, "info_msg": info_msg}
|
||||
)
|
||||
r = self.client.get(reverse("core:index"))
|
||||
assert r.status_code == 200
|
||||
self.assertInHTML(
|
||||
"""<div id="alert_box"><div class="markdown"><h3>ALERTE!</h3>
|
||||
<p><strong>Caaaataaaapuuuulte!!!!</strong></p>""",
|
||||
r.content.decode(),
|
||||
)
|
||||
|
||||
def test_info_msg(self):
|
||||
self.client.post(
|
||||
reverse("com:info_edit"),
|
||||
{
|
||||
"info_msg": """
|
||||
### INFO: **Caaaataaaapuuuulte!!!!**
|
||||
"""
|
||||
},
|
||||
)
|
||||
r = self.client.get(reverse("core:index"))
|
||||
|
||||
assert r.status_code == 200
|
||||
self.assertInHTML(
|
||||
"""<div id="info_box"><div class="markdown">
|
||||
<h3>INFO: <strong>Caaaataaaapuuuulte!!!!</strong></h3>""",
|
||||
r.content.decode(),
|
||||
)
|
||||
self.assertInHTML(f'<div id="alert_box">{markdown(alert_msg)}</div>', r.text)
|
||||
self.assertInHTML(f'<div id="info_box">{markdown(info_msg)}</div>', r.text)
|
||||
|
||||
def test_birthday_non_subscribed_user(self):
|
||||
self.client.force_login(User.objects.get(username="guy"))
|
||||
self.client.force_login(baker.make(User))
|
||||
response = self.client.get(reverse("core:index"))
|
||||
self.assertContains(
|
||||
response,
|
||||
@@ -111,6 +76,7 @@ class TestCom(TestCase):
|
||||
)
|
||||
|
||||
def test_birthday_subscibed_user(self):
|
||||
self.client.force_login(subscriber_user.make())
|
||||
response = self.client.get(reverse("core:index"))
|
||||
|
||||
self.assertNotContains(
|
||||
@@ -119,7 +85,7 @@ class TestCom(TestCase):
|
||||
)
|
||||
|
||||
def test_birthday_old_subscibed_user(self):
|
||||
self.client.force_login(User.objects.get(username="old_subscriber"))
|
||||
self.client.force_login(old_subscriber_user.make())
|
||||
response = self.client.get(reverse("core:index"))
|
||||
|
||||
self.assertNotContains(
|
||||
|
||||
+2
-4
@@ -16,8 +16,7 @@
|
||||
from django.urls import path
|
||||
|
||||
from com.views import (
|
||||
AlertMsgEditView,
|
||||
InfoMsgEditView,
|
||||
BannerMessagesEditView,
|
||||
NewsAdminListView,
|
||||
NewsCreateView,
|
||||
NewsDeleteView,
|
||||
@@ -45,8 +44,7 @@ from com.views import (
|
||||
)
|
||||
|
||||
urlpatterns = [
|
||||
path("sith/edit/alert/", AlertMsgEditView.as_view(), name="alert_edit"),
|
||||
path("sith/edit/info/", InfoMsgEditView.as_view(), name="info_edit"),
|
||||
path("sith/edit/banner/", BannerMessagesEditView.as_view(), name="banner_edit"),
|
||||
path(
|
||||
"sith/edit/weekmail_destinations/",
|
||||
WeekmailDestinationEditView.as_view(),
|
||||
|
||||
+9
-20
@@ -75,14 +75,9 @@ class ComTabsMixin(TabedViewMixin):
|
||||
"name": _("Weekmail destinations"),
|
||||
},
|
||||
{
|
||||
"url": reverse("com:info_edit"),
|
||||
"slug": "info",
|
||||
"name": _("Info message"),
|
||||
},
|
||||
{
|
||||
"url": reverse("com:alert_edit"),
|
||||
"slug": "alert",
|
||||
"name": _("Alert message"),
|
||||
"url": reverse("com:banner_edit"),
|
||||
"slug": "banner",
|
||||
"name": _("Banner messages"),
|
||||
},
|
||||
{
|
||||
"url": reverse("com:poster_list"),
|
||||
@@ -105,20 +100,14 @@ class ComEditView(ComTabsMixin, CanEditPropMixin, UpdateView):
|
||||
return Sith.objects.first()
|
||||
|
||||
|
||||
class AlertMsgEditView(ComEditView):
|
||||
class BannerMessagesEditView(ComEditView):
|
||||
form_class = modelform_factory(
|
||||
Sith, fields=["alert_msg"], widgets={"alert_msg": MarkdownInput}
|
||||
Sith,
|
||||
fields=["alert_msg", "info_msg"],
|
||||
widgets={"alert_msg": MarkdownInput, "info_msg": MarkdownInput},
|
||||
)
|
||||
current_tab = "alert"
|
||||
success_url = reverse_lazy("com:alert_edit")
|
||||
|
||||
|
||||
class InfoMsgEditView(ComEditView):
|
||||
form_class = modelform_factory(
|
||||
Sith, fields=["info_msg"], widgets={"info_msg": MarkdownInput}
|
||||
)
|
||||
current_tab = "info"
|
||||
success_url = reverse_lazy("com:info_edit")
|
||||
current_tab = "banner"
|
||||
success_url = reverse_lazy("com:banner_edit")
|
||||
|
||||
|
||||
class WeekmailDestinationEditView(ComEditView):
|
||||
|
||||
@@ -130,9 +130,7 @@
|
||||
<li><a href="{{ url('com:weekmail_destinations') }}">{% trans %}Weekmail destinations{% endtrans %}</a></li>
|
||||
<li><a href="{{ url('com:news_new') }}">{% trans %}Create news{% endtrans %}</a></li>
|
||||
<li><a href="{{ url('com:news_admin_list') }}">{% trans %}Moderate news{% endtrans %}</a></li>
|
||||
<li><a href="{{ url('com:alert_edit') }}">{% trans %}Edit alert message{% endtrans %}</a></li>
|
||||
<li><a href="{{ url('com:info_edit') }}">{% trans %}Edit information message{% endtrans %}</a></li>
|
||||
<li><a href="{{ url('core:file_moderation') }}">{% trans %}Moderate files{% endtrans %}</a></li>
|
||||
<li><a href="{{ url('com:banner_edit') }}">{% trans %}Edit banner messages{% endtrans %}</a></li>
|
||||
<li><a href="{{ url('com:poster_list') }}">{% trans %}Posters{% endtrans %}</a></li>
|
||||
<li><a href="{{ url('com:screen_list') }}">{% trans %}Screens{% endtrans %}</a></li>
|
||||
{% endif %}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-10-27 23:26+0100\n"
|
||||
"POT-Creation-Date: 2026-11-06 17:22+0100\n"
|
||||
"PO-Revision-Date: 2016-07-18\n"
|
||||
"Last-Translator: Maréchal <thomas.girod@utbm.fr\n"
|
||||
"Language-Team: AE info <ae.info@utbm.fr>\n"
|
||||
@@ -20,15 +20,15 @@ msgstr ""
|
||||
msgid "Email domain is not allowed."
|
||||
msgstr "Le domaine de l'addresse e-mail n'est pas autorisé."
|
||||
|
||||
#: antispam/models.py
|
||||
#: antispam/models/models.py
|
||||
msgid "domain"
|
||||
msgstr "domaine"
|
||||
|
||||
#: antispam/models.py
|
||||
#: antispam/models/models.py
|
||||
msgid "is externally managed"
|
||||
msgstr "est géré de manière externe"
|
||||
|
||||
#: antispam/models.py
|
||||
#: antispam/models/models.py
|
||||
msgid ""
|
||||
"True if kept up-to-date using external toxic domain providers, else False"
|
||||
msgstr ""
|
||||
@@ -1503,17 +1503,13 @@ msgstr "Le mot de la fin"
|
||||
msgid "Communication administration"
|
||||
msgstr "Administration de la communication"
|
||||
|
||||
#: com/views.py core/templates/core/user_tools.jinja
|
||||
#: com/views.py
|
||||
msgid "Weekmail destinations"
|
||||
msgstr "Destinataires du Weekmail"
|
||||
|
||||
#: com/views.py
|
||||
msgid "Info message"
|
||||
msgstr "Message d'info"
|
||||
|
||||
#: com/views.py
|
||||
msgid "Alert message"
|
||||
msgstr "Message d'alerte"
|
||||
msgid "Banner messages"
|
||||
msgstr "Messages de bannière"
|
||||
|
||||
#: com/views.py
|
||||
msgid "Posters list"
|
||||
@@ -2984,24 +2980,6 @@ msgstr "Gestion générale des comptoirs"
|
||||
msgid "Products management"
|
||||
msgstr "Gestion des produits"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
msgid "Product types management"
|
||||
msgstr "Gestion des types de produit"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
msgid "Returnable products management"
|
||||
msgstr "Gestion des consignes"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
#: counter/templates/counter/cash_summary_list.jinja counter/views/mixins.py
|
||||
msgid "Cash register summaries"
|
||||
msgstr "Relevés de caisse"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
#: counter/templates/counter/invoices_call.jinja counter/views/mixins.py
|
||||
msgid "Invoices call"
|
||||
msgstr "Appels à facture"
|
||||
|
||||
#: core/templates/core/user_tools.jinja core/views/user.py
|
||||
#: counter/templates/counter/counter_list.jinja
|
||||
msgid "Stats"
|
||||
@@ -3011,6 +2989,11 @@ msgstr "Stats"
|
||||
msgid "Accounting"
|
||||
msgstr "Comptabilité"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
#: counter/templates/counter/invoices_call.jinja counter/views/mixins.py
|
||||
msgid "Invoices call"
|
||||
msgstr "Appels à facture"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
msgid "Refound Account"
|
||||
msgstr "Rembourser un compte"
|
||||
@@ -3019,25 +3002,13 @@ msgstr "Rembourser un compte"
|
||||
msgid "Communication"
|
||||
msgstr "Communication"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
msgid "Create weekmail article"
|
||||
msgstr "Rédiger un nouvel article dans le Weekmail"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
msgid "Moderate news"
|
||||
msgstr "Modérer les nouvelles"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
msgid "Edit alert message"
|
||||
msgstr "Éditer le message d'alerte"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
msgid "Edit information message"
|
||||
msgstr "Éditer le message d'informations"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
msgid "Moderate files"
|
||||
msgstr "Modérer les fichiers"
|
||||
msgid "Edit banner messages"
|
||||
msgstr "Éditer les messages de bannière"
|
||||
|
||||
#: core/templates/core/user_tools.jinja
|
||||
msgid "Moderate pictures"
|
||||
@@ -3787,6 +3758,10 @@ msgstr "Liste des relevés de caisse"
|
||||
msgid "Theoric sums"
|
||||
msgstr "Sommes théoriques"
|
||||
|
||||
#: counter/templates/counter/cash_summary_list.jinja counter/views/mixins.py
|
||||
msgid "Cash register summaries"
|
||||
msgstr "Relevés de caisse"
|
||||
|
||||
#: counter/templates/counter/cash_summary_list.jinja counter/views/cash.py
|
||||
msgid "Emptied"
|
||||
msgstr "Coffre vidé"
|
||||
|
||||
Reference in new issue
Block a user