On ajoute la possibilite d'ajouter des messages sur les événements suivant les étiquettes
This commit is contained in:
parent
a66559aac0
commit
02f078ca50
@ -123,6 +123,7 @@ class TagForm(ModelForm):
|
||||
fields = [
|
||||
"name",
|
||||
"description",
|
||||
"message",
|
||||
"in_included_suggestions",
|
||||
"in_excluded_suggestions",
|
||||
"principal",
|
||||
|
File diff suppressed because it is too large
Load Diff
24
src/agenda_culturel/migrations/0154_tag_message.py
Normal file
24
src/agenda_culturel/migrations/0154_tag_message.py
Normal file
@ -0,0 +1,24 @@
|
||||
# Generated by Django 4.2.19 on 2025-03-14 12:23
|
||||
|
||||
from django.db import migrations
|
||||
import django_ckeditor_5.fields
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("agenda_culturel", "0153_event_local_event"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="tag",
|
||||
name="message",
|
||||
field=django_ckeditor_5.fields.CKEditor5Field(
|
||||
blank=True,
|
||||
help_text="Message displayed to the user on each event associated with this tag.",
|
||||
null=True,
|
||||
verbose_name="Message",
|
||||
),
|
||||
),
|
||||
]
|
@ -198,6 +198,15 @@ class Tag(models.Model):
|
||||
null=True,
|
||||
)
|
||||
|
||||
message = CKEditor5Field(
|
||||
verbose_name=_("Message"),
|
||||
help_text=_(
|
||||
"Message displayed to the user on each event associated with this tag."
|
||||
),
|
||||
blank=True,
|
||||
null=True,
|
||||
)
|
||||
|
||||
principal = models.BooleanField(
|
||||
verbose_name=_("Principal"),
|
||||
help_text=_(
|
||||
@ -1051,6 +1060,15 @@ class Event(models.Model):
|
||||
)
|
||||
return result
|
||||
|
||||
def tag_messages(self):
|
||||
if self.tags is None:
|
||||
return []
|
||||
return Tag.objects.filter(
|
||||
Q(name__in=self.tags)
|
||||
& Q(message__isnull=False)
|
||||
& ~Q(message__in=["", "<p></p>", "<p> </p>"])
|
||||
).values("message")
|
||||
|
||||
def get_all_tags(sort=True):
|
||||
cursor = connection.cursor()
|
||||
raw_query = """
|
||||
|
@ -751,6 +751,10 @@ $yellow-900: #616918 !default;
|
||||
background-position: center left var(--form-element-spacing-vertical); // use vertical for icon left align
|
||||
background-size: $iconsize auto;
|
||||
padding-left: calc(var(--form-element-spacing-vertical) * 2 + #{$iconsize});
|
||||
|
||||
p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
.message.danger, .message.error {
|
||||
--background-color: #{$red-50};
|
||||
|
@ -152,6 +152,7 @@
|
||||
</div>
|
||||
</header>
|
||||
<div class="event-body">
|
||||
{% for message in event.tag_messages %}<div class="message info">{{ message.message|safe }}</div>{% endfor %}
|
||||
{% if event.has_image_url %}
|
||||
<article class="illustration">
|
||||
<img src="{{ event.get_image_url }}" alt="{{ event.image_alt }}" />
|
||||
|
Loading…
x
Reference in New Issue
Block a user