Skip to content
Snippets Groups Projects
Commit 503a13f8 authored by Tom Teichler's avatar Tom Teichler :beers:
Browse files

Use slug field instead of groups short name

parent c96de14d
No related branches found
No related tags found
1 merge request!6Resolve "Slug for event must not be the short_name of the group"
......@@ -14,6 +14,7 @@ Added
* Add link to public page to events list
* Add RSS feed of upcoming events
* Add slug field to Event model
Changed
~~~~~~~
......
......@@ -31,6 +31,7 @@ class Event(ExtensibleModel):
description = models.CharField(max_length=500, verbose_name=_("Description"))
published = models.BooleanField(default=False, verbose_name=_("Publish"))
place = models.CharField(max_length=50, verbose_name="Place")
slug models.SlugField(max_length=255, verbose_name=_("Slug"))
# Date details
date_event = models.DateField(verbose_name=_("Date of event"))
......@@ -70,7 +71,7 @@ class Event(ExtensibleModel):
return self.date_event > now
def get_absolute_url(self):
return reverse("event_by_name", kwargs={"slug": self.linked_group.short_name})
return reverse("event_by_name", kwargs={"slug": self.slug})
@property
def booked_percentage(self):
......
......@@ -15,13 +15,13 @@ class ManageEventsTable(tables.Table):
edit = tables.LinkColumn(
"edit_event_by_slug",
args=[A("linked_group__short_name")],
args=[A("slug")],
verbose_name=_("Edit"),
text=_("Edit"),
)
view = tables.LinkColumn(
"event_by_name",
args=[A("linked_group__short_name")],
args=[A("slug")],
verbose_name=_("View"),
text=_("View"),
)
......
......@@ -61,9 +61,9 @@
</div>
<div class="card-action">
{% if can_register and not is_authenticated %}
<a href="{% url "register_event_by_slug_start" event.linked_group.short_name %}">{% trans "Register now" %}</a>
<a href="{% url "register_event_by_slug_start" event.slug %}">{% trans "Register now" %}</a>
{% elif can_register and is_authenticated %}
<a href="{% url "register_event_by_slug" event.linked_group.short_name %}">{% trans "Register now" %}</a>
<a href="{% url "register_event_by_slug" event.slug %}">{% trans "Register now" %}</a>
{% else %}
<a href="#">{% trans "Not available" %}</a>
{% endif %}
......
......@@ -87,7 +87,7 @@
or have problems logging in, please send us an e-mail.
{% endblocktrans %}
</p>
<a href="{% url "login" %}?next=/app/paweljong/event/{{ event.linked_group.short_name }}/register">{% trans "Login" %}</a>
<a href="{% url "login" %}?next=/app/paweljong/event/{{ event.slug }}/register">{% trans "Login" %}</a>
</div>
<div id="with_email">
<p>
......@@ -98,7 +98,7 @@
https://leopard.institute/pages/services.html</a>
{% endblocktrans %}
</p>
<a href="{% url "set_email_needed" event.linked_group.short_name %}">{% trans "Register now" %}</a>
<a href="{% url "set_email_needed" event.slug %}">{% trans "Register now" %}</a>
</div>
<div id="without_email">
<p>
......@@ -108,7 +108,7 @@
a personal e-mail address, please choose the respective option instead!
{% endblocktrans %}
</p>
<a href="{% url "register_event_by_slug" event.linked_group.short_name %}">{% trans "Register now" %}</a>
<a href="{% url "register_event_by_slug" event.slug %}">{% trans "Register now" %}</a>
</div>
{% else %}
<div id="not_possible">
......
......@@ -116,7 +116,7 @@
<td>
<i class="material-icons small">local_activity</a>
</td>
<td colspan="3"><a href="{% url 'edit_event_by_slug' registration.event.linked_group.short_name %}">{{ registration.event }}</a></td>
<td colspan="3"><a href="{% url 'edit_event_by_slug' registration.event.slug %}">{{ registration.event }}</a></td>
</tr>
<tr>
<td>
......
......@@ -53,7 +53,7 @@ class CreateEventView(PermissionRequiredMixin, AdvancedCreateView):
class EditEventView(PermissionRequiredMixin, RevisionMixin, AdvancedEditView):
form_class = EditEventForm
model = Event
slug_field = "linked_group__short_name"
slug_field = "slug"
permission_required = "paweljong.change_event"
context_object_name = "manage_events"
template_name = "paweljong/event/edit.html"
......@@ -293,7 +293,7 @@ class RegisterEventWizardView(SessionWizardView):
def get_context_data(self, form, **kwargs):
context = super().get_context_data(form, **kwargs)
context["event"] = Event.objects.get(linked_group__short_name=self.kwargs["slug"])
context["event"] = Event.objects.get(slug=self.kwargs["slug"])
if self.steps.current == "email":
context["page_title"] = ""
......@@ -369,10 +369,10 @@ class RegisterEventWizardView(SessionWizardView):
if step == "email":
kwargs["request"] = self.request
if step == "additional":
event = Event.objects.get(linked_group__short_name=self.kwargs["slug"])
event = Event.objects.get(slug=self.kwargs["slug"])
kwargs["event"] = event
if step == "consent":
event = Event.objects.get(linked_group__short_name=self.kwargs["slug"])
event = Event.objects.get(slug=self.kwargs["slug"])
kwargs["event"] = event
return kwargs
......@@ -439,7 +439,7 @@ class RegisterEventWizardView(SessionWizardView):
def done(self, form_list, **kwargs):
event = Event.objects.get(linked_group__short_name=self.kwargs["slug"])
event = Event.objects.get(slug=self.kwargs["slug"])
cleaned_data_email = self.get_cleaned_data_for_step("email")
cleaned_data_contact_details = self.get_cleaned_data_for_step("contact_details")
cleaned_data_guardians = self.get_cleaned_data_for_step("guardians")
......@@ -610,7 +610,7 @@ class RegisterEventWizardView(SessionWizardView):
class EventFullView(DetailView):
model = Event
slug_field = "linked_group__short_name"
slug_field = "slug"
template_name = "paweljong/event/full.html"
object_context_name = "event"
......@@ -625,7 +625,7 @@ class EventFullView(DetailView):
class RegisterEventStart(DetailView):
model = Event
slug_field = "linked_group__short_name"
slug_field = "slug"
template_name = "paweljong/event/register_start.html"
object_context_name = "event"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment