summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
authoretienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864>2008-11-23 22:37:53 +0000
committeretienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864>2008-11-23 22:37:53 +0000
commit4f3c2faf2844c23167c6b79cc6536b7257356d7b (patch)
tree91787bb07bbd3a978430502e97adae7c9fb1bad4 /main
parent6f97020d6b56f19d37a0941b299e68b2e8837d68 (diff)
downloadChimère-4f3c2faf2844c23167c6b79cc6536b7257356d7b.tar.bz2
Chimère-4f3c2faf2844c23167c6b79cc6536b7257356d7b.zip
Displaying details differently. Adding a news system.
git-svn-id: http://www.peacefrogs.net/svn/chimere/trunk@3 9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864
Diffstat (limited to 'main')
-rw-r--r--main/admin.py11
-rw-r--r--main/models.py15
-rw-r--r--main/views.py18
3 files changed, 33 insertions, 11 deletions
diff --git a/main/admin.py b/main/admin.py
index 0ec485f..2bfa390 100644
--- a/main/admin.py
+++ b/main/admin.py
@@ -5,8 +5,7 @@ Settings for administration pages
"""
from chimere.main.models import Category, Icon, SubCategory, Marker, \
- PropertyModel, Property
-from chimere.main.widgets import PointChooserWidget
+ PropertyModel, Property, News
from chimere.main.forms import MarkerAdminForm
from django.contrib import admin
@@ -19,14 +18,8 @@ class MarkerAdmin(admin.ModelAdmin):
list_filter = ('status', 'subcategory')
form = MarkerAdminForm
- """
- def formfield_for_dbfield(self, db_field, **kwargs):
- if db_field.name == 'point':
- kwargs['widget'] = PointChooserWidget
- return super(MarkerAdmin, self).formfield_for_dbfield(db_field,
- **kwargs)
-"""
# register of differents database fields
+admin.site.register(News)
admin.site.register(Category)
admin.site.register(Icon)
admin.site.register(SubCategory)
diff --git a/main/models.py b/main/models.py
index d4ba9be..61ae576 100644
--- a/main/models.py
+++ b/main/models.py
@@ -11,6 +11,20 @@ from django.contrib import admin
from chimere import settings
from chimere.main.widgets import PointField
+
+class News(models.Model):
+ """News of the site
+ """
+ title = models.CharField(_("Name"), max_length=150)
+ available = models.BooleanField(_("Available"))
+ date = models.DateField(_("Date"), auto_now_add=True)
+ content = models.TextField()
+ def __unicode__(self):
+ ordering = ["-date"]
+ return self.title
+ class Meta:
+ verbose_name = _("News")
+
class Category(models.Model):
"""Category of Point Of Interest (POI)
"""
@@ -122,7 +136,6 @@ class Marker(models.Model):
def getGeoJSON(self):
'''Return a GeoJSON string
'''
- print self.subcategory.icon.image
return """{"type":"Feature", "geometry":{"type":"Point", \
"crs": "EPSG:%(epsg)d", "coordinates":[%(longitude)s, %(latitude)s]}, \
"properties":{"pk": %(id)d, "name": "%(name)s", \
diff --git a/main/views.py b/main/views.py
index c0503ad..2a1bc14 100644
--- a/main/views.py
+++ b/main/views.py
@@ -7,12 +7,13 @@ Views of the project
import datetime
from django.shortcuts import render_to_response
+from django.template import loader
from django.http import HttpResponseRedirect, HttpResponse
from django.core import serializers
from chimere import settings
from chimere.main.actions import actions
-from chimere.main.models import SubCategory, PropertyModel, Marker
+from chimere.main.models import SubCategory, PropertyModel, Marker, News
from chimere.main.widgets import getMapJS, PointChooserWidget, URL_OSM_JS
from chimere.main.forms import MarkerForm
@@ -28,11 +29,18 @@ def index(request):
extra_js = ""
for url in URL_OSM_JS + ["%smain_map.js" % settings.MEDIA_URL]:
extra_js += '<script src="%s"></script>\n' % url
+ extra_js += '<script src="/chimere/jsi18n/"></script>\n'
+ # show the presentation page
+ detail_content = ''
+ if not 'visited' in request.session:
+ request.session['visited'] = '1'
+ detail_content = welcome(request)
response_dct = {'actions':actions, 'action_selected':'view',
'error_message':'',
'sub_categories':subcategories,
'extra_head':extra_js + getMapJS(),
'media_path':settings.MEDIA_URL,
+ 'detail_content':detail_content,
}
return render_to_response('main_map.html', response_dct)
@@ -69,6 +77,14 @@ def edit(request):
response_dct['current_category'] = int(form.data['subcategory'])
return render_to_response('edit.html', response_dct)
+def welcome(request):
+ """
+ Welcome string
+ """
+ response_dct = {}
+ response_dct['news_lst'] = News.objects.filter(available=True)
+ return loader.render_to_string('welcome.html', response_dct)
+
def submited(request):
"""
Successful submission page