1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
from django.contrib import admin
from django import forms
from blog.models import Entry, PostImage, Topic
from blog.widgets import AdminImageWidget
from django.contrib.gis.admin import OSMGeoAdmin
from django.contrib.gis.maps.google import GoogleMap
from django.conf import settings
GMAP = GoogleMap(key=settings.GOOGLE_MAPS_API_KEY)
class EntryAdmin(OSMGeoAdmin):
def formfield_for_dbfield(self, db_field, **kwargs):
if db_field.name == 'thumbnail':
field = forms.FileField(widget=AdminImageWidget)
else:
field = super(EntryAdmin,self).formfield_for_dbfield(db_field,**kwargs)
return field
list_display = ('title', 'pub_date','template_name', 'status','region','location','photo_gallery')
search_fields = ['title', 'body_markdown']
prepopulated_fields = {"slug" : ('title',)}
list_filter = ('pub_date', 'enable_comments', 'status','region','location')
fieldsets = (
('Entry', {'fields': ('title','body_markdown', ('location','region'), 'pub_date', ('status','enable_comments'), 'slug','photo_gallery'), 'classes': ('show','extrapretty','wide')}),
('Pub Location', {'fields': ('point',('image','thumbnail',),'dek', 'topics', 'meta_description','template_name'), 'classes': ('collapse', '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 PostImageAdmin(admin.ModelAdmin):
list_display = ('title', 'output_tags')
class TopicAdmin(admin.ModelAdmin):
list_display = ('name', 'slug')
admin.site.register(Topic, TopicAdmin)
admin.site.register(PostImage, PostImageAdmin)
admin.site.register(Entry, EntryAdmin)
|