✨ Add shortlinks for govplan updates
This commit is contained in:
parent
da21081be0
commit
fc64045cde
3 changed files with 26 additions and 1 deletions
|
|
@ -350,6 +350,15 @@ class GovernmentPlanUpdate(models.Model):
|
||||||
def get_absolute_domain_url(self):
|
def get_absolute_domain_url(self):
|
||||||
return settings.SITE_URL + self.get_absolute_url()
|
return settings.SITE_URL + self.get_absolute_url()
|
||||||
|
|
||||||
|
def get_absolute_short_url(self):
|
||||||
|
return reverse(
|
||||||
|
"govplan:planupdate_shortlink",
|
||||||
|
kwargs={"gov": self.plan.government.slug, "obj_id": self.pk},
|
||||||
|
)
|
||||||
|
|
||||||
|
def get_absolute_domain_short_url(self):
|
||||||
|
return settings.SITE_URL + self.get_absolute_short_url()
|
||||||
|
|
||||||
def get_url_domain(self):
|
def get_url_domain(self):
|
||||||
return urlparse(self.url).netloc or None
|
return urlparse(self.url).netloc or None
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ from .views import (
|
||||||
GovPlanSectionDetailOGView,
|
GovPlanSectionDetailOGView,
|
||||||
GovPlanSectionDetailView,
|
GovPlanSectionDetailView,
|
||||||
search,
|
search,
|
||||||
|
update_shortlink,
|
||||||
)
|
)
|
||||||
|
|
||||||
app_name = "govplan"
|
app_name = "govplan"
|
||||||
|
|
@ -39,4 +40,9 @@ urlpatterns = [
|
||||||
GovPlanSectionDetailOGView.as_view(),
|
GovPlanSectionDetailOGView.as_view(),
|
||||||
name="section_og",
|
name="section_og",
|
||||||
),
|
),
|
||||||
|
path(
|
||||||
|
pgettext_lazy("url part", "<slug:gov>/u/<int:obj_id>/"),
|
||||||
|
update_shortlink,
|
||||||
|
name="planupdate_shortlink",
|
||||||
|
),
|
||||||
]
|
]
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,12 @@ from django.utils.translation import gettext_lazy as _
|
||||||
from django.views.generic import DetailView, UpdateView
|
from django.views.generic import DetailView, UpdateView
|
||||||
|
|
||||||
from .forms import GovernmentPlanUpdateProposalForm
|
from .forms import GovernmentPlanUpdateProposalForm
|
||||||
from .models import Government, GovernmentPlan, GovernmentPlanSection
|
from .models import (
|
||||||
|
Government,
|
||||||
|
GovernmentPlan,
|
||||||
|
GovernmentPlanSection,
|
||||||
|
GovernmentPlanUpdate,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class GovernmentMixin:
|
class GovernmentMixin:
|
||||||
|
|
@ -132,3 +137,8 @@ def search(request):
|
||||||
return render(
|
return render(
|
||||||
request, "froide_govplan/plugins/card_cols.html", {"object_list": plans}
|
request, "froide_govplan/plugins/card_cols.html", {"object_list": plans}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def update_shortlink(request, gov, obj_id):
|
||||||
|
obj = get_object_or_404(GovernmentPlanUpdate, plan__government__slug=gov, pk=obj_id)
|
||||||
|
return redirect(obj)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue