diff options
Diffstat (limited to 'apps/projects')
-rw-r--r-- | apps/projects/admin.py | 204 | ||||
-rw-r--r-- | apps/projects/models/__init__.py | 3 | ||||
-rw-r--r-- | apps/projects/views.py | 8 |
3 files changed, 211 insertions, 4 deletions
diff --git a/apps/projects/admin.py b/apps/projects/admin.py index 0ecdeed..e1142f8 100644 --- a/apps/projects/admin.py +++ b/apps/projects/admin.py @@ -6,6 +6,7 @@ from django.conf import settings from projects.models.base import Project from projects.models.fiveby import FiveBy +from projects.models.natparks import NationalParkBorders,NationalParkBordersTwo, NationalParks GMAP = GoogleMap(key=settings.GOOGLE_MAPS_API_KEY) @@ -109,7 +110,208 @@ class FiveByAdmin(OSMGeoAdmin): #wms_name = 'OpenLayers WMS' #debug = False #widget = OpenLayersWidget + +class NationalParkBordersAdmin(OSMGeoAdmin): + + list_display = ('name1','name2','name3','url') + search_fields = ['name1',] + fieldsets = ( + ('Project', {'fields': ('name1', 'mpoly','url'), 'classes': ('show','extrapretty','wide')}), + ) + + + + class Media: + js = ['/media/admin/custom/model.js'] + extra_js = [GMAP.api_url + GMAP.key] + map_template = 'gis/admin/google.html' + #map_template = 'gis/admin/google.html' + # Default GeoDjango OpenLayers map options + # Uncomment and modify as desired + # To learn more about this jargon visit: + # www.openlayers.org + + default_lon = -9314310 + default_lat = 3991847 + default_zoom = 6 + #display_wkt = False + #display_srid = False + #extra_js = [] + #num_zoom = 18 + #max_zoom = False + #min_zoom = False + #units = False + #max_resolution = False + #max_extent = False + #modifiable = True + #mouse_position = True + #scale_text = True + #layerswitcher = True + scrollable = False + #admin_media_prefix = settings.ADMIN_MEDIA_PREFIX + map_width = 700 + map_height = 325 + #map_srid = 4326 + #map_template = 'gis/admin/openlayers.html' + #openlayers_url = 'http://openlayers.org/api/2.6/OpenLayers.js' + #wms_url = 'http://labs.metacarta.com/wms/vmap0' + #wms_layer = 'basic' + #wms_name = 'OpenLayers WMS' + #debug = False + #widget = OpenLayersWidget + + +class NationalParkBordersTwoAdmin(OSMGeoAdmin): + + list_display = ('name',) + search_fields = ['name',] + fieldsets = ( + ('Project', {'fields': ('name', 'mpoly','mline','mpoint'), 'classes': ('show','extrapretty','wide')}), + ) + + + + class Media: + js = ['/media/admin/custom/model.js'] + extra_js = [GMAP.api_url + GMAP.key] + map_template = 'gis/admin/google.html' + #map_template = 'gis/admin/google.html' + # Default GeoDjango OpenLayers map options + # Uncomment and modify as desired + # To learn more about this jargon visit: + # www.openlayers.org + + default_lon = -9314310 + default_lat = 3991847 + default_zoom = 6 + #display_wkt = False + #display_srid = False + #extra_js = [] + #num_zoom = 18 + #max_zoom = False + #min_zoom = False + #units = False + #max_resolution = False + #max_extent = False + #modifiable = True + #mouse_position = True + #scale_text = True + #layerswitcher = True + scrollable = False + #admin_media_prefix = settings.ADMIN_MEDIA_PREFIX + map_width = 700 + map_height = 325 + #map_srid = 4326 + #map_template = 'gis/admin/openlayers.html' + #openlayers_url = 'http://openlayers.org/api/2.6/OpenLayers.js' + #wms_url = 'http://labs.metacarta.com/wms/vmap0' + #wms_layer = 'basic' + #wms_name = 'OpenLayers WMS' + #debug = False + #widget = OpenLayersWidget +class NationalParksAdmin(OSMGeoAdmin): + + list_display = ('unit_name','type','state','name','visited', 'size') + list_filter = ('state', 'type') + search_fields = ['name',] + fieldsets = ( + ('Project', {'fields': ('name', 'tag_line',('state','visited'),'dek','date_visited_begin','date_visited_end','mpoly','image',('post','gallery'),('url','size','fee', 'camping_fee'),'zoom'), 'classes': ('show','extrapretty','wide')}), + ) + + + + class Media: + js = ['/media/admin/custom/model.js'] + extra_js = [GMAP.api_url + GMAP.key] + map_template = 'gis/admin/google.html' + #map_template = 'gis/admin/google.html' + # Default GeoDjango OpenLayers map options + # Uncomment and modify as desired + # To learn more about this jargon visit: + # www.openlayers.org + + default_lon = -9314310 + default_lat = 3991847 + default_zoom = 6 + #display_wkt = False + #display_srid = False + #extra_js = [] + #num_zoom = 18 + #max_zoom = False + #min_zoom = False + #units = False + #max_resolution = False + #max_extent = False + #modifiable = True + #mouse_position = True + #scale_text = True + #layerswitcher = True + scrollable = False + #admin_media_prefix = settings.ADMIN_MEDIA_PREFIX + map_width = 700 + map_height = 325 + #map_srid = 4326 + #map_template = 'gis/admin/openlayers.html' + #openlayers_url = 'http://openlayers.org/api/2.6/OpenLayers.js' + #wms_url = 'http://labs.metacarta.com/wms/vmap0' + #wms_layer = 'basic' + #wms_name = 'OpenLayers WMS' + #debug = False + #widget = OpenLayersWidget +''' +class NPEntryAdmin(OSMGeoAdmin): + + list_display = ('title',) + search_fields = ['title','park'] + fieldsets = ( + ('Project', {'fields': ('title', 'dek', 'park', 'post', ('slug', 'status'),'pub_date','point',), 'classes': ('show','extrapretty','wide')}), + ) + + + class Media: + js = ['/media/admin/custom/model.js'] + extra_js = [GMAP.api_url + GMAP.key] + map_template = 'gis/admin/google.html' + #map_template = 'gis/admin/google.html' + # Default GeoDjango OpenLayers map options + # Uncomment and modify as desired + # To learn more about this jargon visit: + # www.openlayers.org + + default_lon = -9314310 + default_lat = 3991847 + default_zoom = 6 + #display_wkt = False + #display_srid = False + #extra_js = [] + #num_zoom = 18 + #max_zoom = False + #min_zoom = False + #units = False + #max_resolution = False + #max_extent = False + #modifiable = True + #mouse_position = True + #scale_text = True + #layerswitcher = True + scrollable = False + #admin_media_prefix = settings.ADMIN_MEDIA_PREFIX + map_width = 700 + map_height = 325 + #map_srid = 4326 + #map_template = 'gis/admin/openlayers.html' + #openlayers_url = 'http://openlayers.org/api/2.6/OpenLayers.js' + #wms_url = 'http://labs.metacarta.com/wms/vmap0' + #wms_layer = 'basic' + #wms_name = 'OpenLayers WMS' + #debug = False + #widget = OpenLayersWidget +''' admin.site.register(Project, ProjectAdmin) -admin.site.register(FiveBy, FiveByAdmin)
\ No newline at end of file +admin.site.register(FiveBy, FiveByAdmin) +#admin.site.register(NPEntry, NPEntryAdmin) +admin.site.register(NationalParkBorders, NationalParkBordersAdmin) +admin.site.register(NationalParkBordersTwo, NationalParkBordersTwoAdmin) +admin.site.register(NationalParks, NationalParksAdmin)
\ No newline at end of file diff --git a/apps/projects/models/__init__.py b/apps/projects/models/__init__.py index b29933a..5d544c1 100644 --- a/apps/projects/models/__init__.py +++ b/apps/projects/models/__init__.py @@ -1,2 +1,3 @@ from base import Project -from fiveby import FiveBy
\ No newline at end of file +from fiveby import FiveBy +from natparks import NationalParkBorders, NationalParkBordersTwo, NationalParks
\ No newline at end of file diff --git a/apps/projects/views.py b/apps/projects/views.py index 8103270..e3ed773 100644 --- a/apps/projects/views.py +++ b/apps/projects/views.py @@ -6,8 +6,9 @@ from django.db.models import get_model from projects.models.base import Project from projects.models.fiveby import FiveBy +from projects.models.natparks import NationalParks -projects = {'5x5':'FiveBy','6x6':'SixBy'} +projects = {'5x5':'FiveBy','6x6':'SixBy','national-parks':'NationalParks'} """ Projects by slug @@ -15,7 +16,10 @@ Projects by slug def detail(request,slug): name = projects[slug] model = get_model('projects', name) - qs = model.objects.filter(status__exact=1) + if slug == 'national-parks': + qs = model.objects.filter(visited__exact=True).order_by("-date_visited_begin") + else: + qs = model.objects.filter(status__exact=1) template = 'details/%s.html' %(slug) return object_list(request, queryset=qs, template_name=template,) |