mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-20 14:31:08 -05:00
okay fine
This commit is contained in:
79
location/forms.py
Normal file
79
location/forms.py
Normal file
@@ -0,0 +1,79 @@
|
||||
from django import forms
|
||||
from .models import Location
|
||||
|
||||
class LocationForm(forms.ModelForm):
|
||||
"""Form for creating and updating Location objects"""
|
||||
|
||||
class Meta:
|
||||
model = Location
|
||||
fields = [
|
||||
'name',
|
||||
'location_type',
|
||||
'latitude',
|
||||
'longitude',
|
||||
'street_address',
|
||||
'city',
|
||||
'state',
|
||||
'country',
|
||||
'postal_code',
|
||||
]
|
||||
widgets = {
|
||||
'latitude': forms.NumberInput(attrs={
|
||||
'step': 'any',
|
||||
'class': 'location-lat',
|
||||
'data-map-target': 'lat'
|
||||
}),
|
||||
'longitude': forms.NumberInput(attrs={
|
||||
'step': 'any',
|
||||
'class': 'location-lng',
|
||||
'data-map-target': 'lng'
|
||||
})
|
||||
}
|
||||
|
||||
class LocationSearchForm(forms.Form):
|
||||
"""Form for searching locations using OpenStreetMap Nominatim"""
|
||||
|
||||
query = forms.CharField(
|
||||
max_length=255,
|
||||
required=True,
|
||||
widget=forms.TextInput(attrs={
|
||||
'placeholder': 'Search for a location...',
|
||||
'class': 'location-search',
|
||||
'data-action': 'search#query',
|
||||
'autocomplete': 'off'
|
||||
})
|
||||
)
|
||||
|
||||
# Hidden fields for storing selected location data
|
||||
selected_lat = forms.DecimalField(
|
||||
required=False,
|
||||
widget=forms.HiddenInput(attrs={'data-search-target': 'selectedLat'})
|
||||
)
|
||||
selected_lng = forms.DecimalField(
|
||||
required=False,
|
||||
widget=forms.HiddenInput(attrs={'data-search-target': 'selectedLng'})
|
||||
)
|
||||
selected_name = forms.CharField(
|
||||
required=False,
|
||||
widget=forms.HiddenInput(attrs={'data-search-target': 'selectedName'})
|
||||
)
|
||||
selected_address = forms.CharField(
|
||||
required=False,
|
||||
widget=forms.HiddenInput(attrs={'data-search-target': 'selectedAddress'})
|
||||
)
|
||||
selected_city = forms.CharField(
|
||||
required=False,
|
||||
widget=forms.HiddenInput(attrs={'data-search-target': 'selectedCity'})
|
||||
)
|
||||
selected_state = forms.CharField(
|
||||
required=False,
|
||||
widget=forms.HiddenInput(attrs={'data-search-target': 'selectedState'})
|
||||
)
|
||||
selected_country = forms.CharField(
|
||||
required=False,
|
||||
widget=forms.HiddenInput(attrs={'data-search-target': 'selectedCountry'})
|
||||
)
|
||||
selected_postal_code = forms.CharField(
|
||||
required=False,
|
||||
widget=forms.HiddenInput(attrs={'data-search-target': 'selectedPostalCode'})
|
||||
)
|
||||
Reference in New Issue
Block a user