Skip to content
Extraits de code Groupes Projets
Valider ee612351 rédigé par Anteunis Charles's avatar Anteunis Charles
Parcourir les fichiers

filer map by activity

parent 772bab84
Branches
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Aucun aperçu pour ce type de fichier
......@@ -5,7 +5,7 @@ from django.contrib.auth.forms import UserCreationForm, UserChangeForm
from django.core.exceptions import ValidationError
import os
from .models import QuestionQuotid, InfosUser, Annonce
from .models import QuestionQuotid, InfosUser, Annonce, Sport
class UserForm(UserCreationForm):
......@@ -49,3 +49,11 @@ class AnnonceForm(forms.ModelForm):
model = Annonce
fields = '__all__'
exclude = ('orga',)
SPORT_LIST = list(dict.fromkeys([s.activite for s in list(Sport.objects.all())]))
SPORT_CHOICES = []
for s in SPORT_LIST:
SPORT_CHOICES.append((s,s))
class SearchSportForm(forms.Form):
sport_choice = forms.ChoiceField(choices=SPORT_CHOICES)
......@@ -44,6 +44,9 @@ class Sport(models.Model):
lieu = models.CharField(max_length=100, null=True)
geoPoint = models.CharField(max_length=100, null=True)
def __str__(self):
return self.activite +' - '+ self.lieu
MALADIES_CHOICES = [
('RH', 'Rhume'),
('GR', 'Grippe'),
......
......@@ -5,10 +5,18 @@
<div class="container">
<h3>Carte des différents centres de sport</h3>
<form action="" method="POST">
{% csrf_token %}
{{ form }}
<br>
<input type="submit" value="filtrer">
<a class="button" href="{% url 'carte' %}">réinitialiser</a>
</form>
<div id="mapid">
</div>
<style>
#mapid {
height: 600px;
......@@ -27,9 +35,9 @@
accessToken: 'pk.eyJ1IjoiZ291cGl4IiwiYSI6ImNrMnFyaXpobTBnbXQzY2xudHpoMDJ6Y2MifQ.vCJOhagzQl5G2PFTwe8jbA'
}).addTo(mymap);
{% for pos in geotab %}
var tmpMarker = L.marker({{pos.0}}).addTo(mymap);
tmpMarker.bindPopup("{{pos.1}} - {{pos.2}}");
{% for pos in sportList %}
var tmpMarker = L.marker({{pos.geoPoint}}).addTo(mymap);
tmpMarker.bindPopup("{{pos.lieu}} - {{pos.activite}}");
{% endfor %}
</script>
......
......@@ -7,8 +7,8 @@ from django.contrib.auth.models import User
from datetime import date
from django.utils import timezone
from .forms import UserForm, UserModifForm, QuestionQuotidForm, InfoUserForm, AnnonceForm
from .models import Menu, QuestionQuotid, InfosUser, Annonce
from .forms import UserForm, UserModifForm, QuestionQuotidForm, InfoUserForm, AnnonceForm, SearchSportForm
from .models import Menu, QuestionQuotid, InfosUser, Annonce, Sport
import json
......@@ -162,22 +162,21 @@ def question_quotid(request):
def carte(request):
val = []
with open("sports.json") as jsonfile:
data=json.load(jsonfile)
for salle in data:
fields = salle['fields']
try:
val.append([fields['geo_point_2d'],
fields['lieu'],
fields['activite']]
)
sportList = Sport.objects.all()
#sportDiffList = list(dict.fromkeys([s.activite for s in list(sportList)]))
except KeyError:
pass
if request.method == 'POST':
form = SearchSportForm(request.POST)
if form.is_valid() :
sportList = Sport.objects.filter(activite=form.cleaned_data['sport_choice'])
else :
form = SearchSportForm()
jsonfile.close()
context = {
'geotab': val,
'sportList': sportList,
'form': form,
}
return render(request, 'nutriform/carte.html', context)
......
import json
from nutriform.models import Sport
val = []
......@@ -7,10 +8,21 @@ with open("sports.json") as jsonfile:
for salle in data:
fields = salle['fields']
try:
print(fields)
except KeyError:
pass;
val.append([fields['salle'],
fields['activite'],
fields['lieu'],
fields['geo_point_2d'],
]
)
print(len(val))
except KeyError:
pass
jsonfile.close()
for sport in val:
s = Sport.objects.create(salle=sport[0],
activite=sport[1],
lieu=sport[2],
geoPoint=sport[3])
s.save()
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter