diff --git a/bds/autocomplete.py b/bds/autocomplete.py index 9c9d8e59..27719a7c 100644 --- a/bds/autocomplete.py +++ b/bds/autocomplete.py @@ -1,5 +1,8 @@ +from urllib.parse import urlencode + from django.contrib.auth import get_user_model from django.db.models import Q +from django.urls import reverse from django.utils.translation import gettext_lazy as _ from shared import autocomplete @@ -21,7 +24,7 @@ class BDSMemberSearch(autocomplete.ModelSearch): return user.username def result_link(self, user): - return "#TODO" + return reverse("bds:user.update", args=(user.pk,)) class BDSOthersSearch(autocomplete.ModelSearch): @@ -38,12 +41,16 @@ class BDSOthersSearch(autocomplete.ModelSearch): return user.username def result_link(self, user): - return "#TODO" + return reverse("bds:user.update", args=(user.pk,)) class BDSLDAPSearch(autocomplete.LDAPSearch): def result_link(self, clipper): - return "#TODO" + print(clipper.fullname) + url = reverse("bds:user.create.fromclipper", args=(clipper.clipper,)) + get = {"fullname": clipper.fullname} + + return "{}?{}".format(url, urlencode(get)) class BDSSearch(autocomplete.Compose): diff --git a/bds/models.py b/bds/models.py index 1d0072a6..f597cc94 100644 --- a/bds/models.py +++ b/bds/models.py @@ -62,6 +62,8 @@ class BDSProfile(models.Model): null=True, ) + is_member = models.BooleanField(_("adhérent⋅e du BDS"), default=False) + mails_bds = models.BooleanField(_("recevoir les mails du BDS"), default=False) has_certificate = models.BooleanField(_("certificat médical"), default=False) @@ -77,8 +79,6 @@ class BDSProfile(models.Model): FFSU_number = models.CharField( _("numéro FFSU"), max_length=50, blank=True, null=True ) - - is_member = models.BooleanField(_("adhérent⋅e du BDS"), default=False) cotisation_period = models.CharField( _("inscription"), default="NO", choices=COTIZ_DURATION_CHOICES, max_length=3 ) diff --git a/bds/urls.py b/bds/urls.py index 8efe41c4..4ddcbf61 100644 --- a/bds/urls.py +++ b/bds/urls.py @@ -7,4 +7,10 @@ urlpatterns = [ path("", views.Home.as_view(), name="home"), path("autocomplete", views.BDSAutocompleteView.as_view(), name="autocomplete"), path("user/update/", views.UserUpdateView.as_view(), name="user.update"), + path("user/create/", views.UserCreateView.as_view(), name="user.create"), + path( + "user/create/", + views.UserCreateView.as_view(), + name="user.create.fromclipper", + ), ]