Handle multiple locations with same PLZ
This commit is contained in:
parent
565808fd95
commit
5040d139b5
|
@ -7,7 +7,10 @@ def calculate_distance(plz_1: Plz, plz_2: Plz):
|
||||||
if plz_1 == plz_2:
|
if plz_1 == plz_2:
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
try:
|
||||||
dist = round(distance((plz_1.lat, plz_1.lon), (plz_2.lat, plz_2.lon)).kilometers)
|
dist = round(distance((plz_1.lat, plz_1.lon), (plz_2.lat, plz_2.lon)).kilometers)
|
||||||
|
except AttributeError:
|
||||||
|
return None
|
||||||
|
|
||||||
return None if dist > 400 else dist
|
return None if dist > 400 else dist
|
||||||
|
|
||||||
|
|
|
@ -59,8 +59,10 @@ def offer_detail(request, offer_id):
|
||||||
if offer.zipcode == request.user.zipcode:
|
if offer.zipcode == request.user.zipcode:
|
||||||
dist = 0
|
dist = 0
|
||||||
else:
|
else:
|
||||||
dist = calculate_distance(Plz.objects.filter(plz=offer.zipcode)[
|
user_plz = get_single_plz(request.user.zipcode)
|
||||||
0], Plz.objects.filter(plz=request.user.zipcode)[0])
|
offer_plz = get_single_plz(offer.zipcode)
|
||||||
|
|
||||||
|
dist = calculate_distance(offer_plz, user_plz)
|
||||||
else:
|
else:
|
||||||
dist = None
|
dist = None
|
||||||
else:
|
else:
|
||||||
|
@ -194,6 +196,11 @@ def register_user(request):
|
||||||
return render(request, "basic_form.html", {"form": form, "button_label": _("Register"), "title": _("Registeration"), "umami_event": "User registration", "form_note": mark_safe(_('Please note the <a href="/imprint">privacy policy</a>'))})
|
return render(request, "basic_form.html", {"form": form, "button_label": _("Register"), "title": _("Registeration"), "umami_event": "User registration", "form_note": mark_safe(_('Please note the <a href="/imprint">privacy policy</a>'))})
|
||||||
|
|
||||||
|
|
||||||
|
def get_single_plz(plz):
|
||||||
|
p = Plz.objects.filter(plz=plz)
|
||||||
|
return p[0] if len(p) >= 1 else None
|
||||||
|
|
||||||
|
|
||||||
def save_language(request):
|
def save_language(request):
|
||||||
referer_url = request.META.get('HTTP_REFERER')
|
referer_url = request.META.get('HTTP_REFERER')
|
||||||
response = redirect(referer_url)
|
response = redirect(referer_url)
|
||||||
|
|
Loading…
Reference in a new issue