From e87b59dd34baf6c689880dc7609fd6435d83ae00 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 15 Feb 2012 16:59:28 +0100 Subject: Large reorganization (refs #316), south migration script to new model names (refs #319) --- __init__.py | 0 manage.py | 14 +++++ settings.py.example | 159 ++++++++++++++++++++++++++++++++++++++++++++++++++++ urls.py | 43 ++++++++++++++ 4 files changed, 216 insertions(+) create mode 100644 __init__.py create mode 100755 manage.py create mode 100644 settings.py.example create mode 100644 urls.py diff --git a/__init__.py b/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/manage.py b/manage.py new file mode 100755 index 0000000..300eab0 --- /dev/null +++ b/manage.py @@ -0,0 +1,14 @@ +#!/usr/bin/python +import os, sys +from django.core.management import execute_manager +sys.path.insert(0, os.path.abspath('./..')) + +try: + import settings # Assumed to be in the same directory. +except ImportError: + import sys + sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__) + sys.exit(1) + +if __name__ == "__main__": + execute_manager(settings) diff --git a/settings.py.example b/settings.py.example new file mode 100644 index 0000000..5f993ab --- /dev/null +++ b/settings.py.example @@ -0,0 +1,159 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +import os + +# Django settings for chimere project. +PROJECT_NAME = u'Chimère' +ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" + +EXTRA_URL = 'chimere/' +BASE_URL = SERVER_URL + EXTRA_URL +EMAIL_HOST = 'localhost' + +TINYMCE_URL = 'http://localhost/tinymce/' +JQUERY_URL = "/chimere/static/jquery/jquery-1.4.4.min.js" +GPSBABEL = '/usr/bin/gpsbabel' +GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an + # error of 5 meters +#GPSBABEL_OPTIONS = 'simplify,count=100' + +## chimere specific ## +# center of the map +DEFAULT_CENTER = (-1.679444, 48.114722) +# projection used by the main map +# most public map providers use spherical mercator : 900913 +EPSG_PROJECTION = 900913 +# projection displayed to the end user by openlayers +# chimere use the same projection to save its data in the database +EPSG_DISPLAY_PROJECTION = 4326 +# to restrict the map to a defined bounding box set it here +# (left, bottom, right, top) +RESTRICTED_EXTENT = None +# dynamic load of categories on the main map +DYNAMIC_CATEGORIES = False +# display of shortcuts for areas +DISPLAY_AREAS = True +# specific css for areas +CSS_AREAS = True +# number of day before an event to display +# if equal to 0: disable event management +# if you change this value from 0 to a value in a production environnement +# don't forget to run the upgrade.py script to create appropriate fields in +# the database +DAYS_BEFORE_EVENT = 30 + +# default id category to check on the map +DEFAULT_CATEGORIES = [1] + +# JS definition of the main map cf. OpenLayers documentation for more details +#MAP_LAYER = '''new OpenLayers.Layer.OSM.CycleMap("Cycle map", { +#displayOutsideMaxExtent: true, wrapDateLine: true})''' # OSM cyclemap +MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')" # OSM mapnik map + +DEBUG = True +TEMPLATE_DEBUG = DEBUG + +ADMINS = ( + # ('Your Name', 'your_email@domain.com'), +) + +MANAGERS = ADMINS + +DATABASES = { + 'default': { + 'NAME': 'ratatouille', + 'ENGINE': 'django.contrib.gis.db.backends.postgis', + 'HOST': 'localhost', + 'PORT': '5432', + 'USER': 'ratatouille', + 'PASSWORD': 'wiki', + }, +} + +# Local time zone for this installation. Choices can be found here: +# http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE +# although not all variations may be possible on all operating systems. +# If running in a Windows environment this must be set to the same as your +# system time zone. +TIME_ZONE = 'Europe/Paris' + +# Language code for this installation. All choices can be found here: +# http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes +# http://blogs.law.harvard.edu/tech/stories/storyReader$15 +LANGUAGE_CODE = 'fr-fr' + +SITE_ID = 1 + +# If you set this to False, Django will make some optimizations so as not +# to load the internationalization machinery. +USE_I18N = True +USE_L10N = True + +# Absolute path to the directory that holds media. +# Example: "/home/media/media.lawrence.com/" +MEDIA_ROOT = ROOT_PATH + 'static/' + +# URL that handles the media served from MEDIA_ROOT. +# Example: "http://media.lawrence.com" +MEDIA_URL = '/' + EXTRA_URL + 'static/' + +# share with +SHARE_NETWORKS = ( +("Email", 'mailto:?subject=%(text)s&body=%(url)s', + MEDIA_URL + 'icons/email.png'), +("Facebook", 'http://www.facebook.com/sharer.php?t=%(text)s&u=%(url)s', + MEDIA_URL + 'icons/facebook.png'), +("Twitter", 'http://twitter.com/home?status=%(text)s %(url)s', + MEDIA_URL + 'icons/twitter.png'), +("Identi.ca", 'http://identi.ca/index.php?action=newnotice&status_textarea=%(text)s %(url)s', + MEDIA_URL + 'icons/identica.png'), +) + +# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a +# trailing slash. +# Examples: "http://foo.com/media/", "/media/". +ADMIN_MEDIA_PREFIX = '/' + EXTRA_URL + 'media/' + +# Make this unique, and don't share it with anybody. +SECRET_KEY = 'achanger_!ToChange!' + +# List of callables that know how to import templates from various sources. +TEMPLATE_LOADERS = ( + 'django.template.loaders.filesystem.load_template_source', + 'django.template.loaders.app_directories.load_template_source', +# 'django.template.loaders.eggs.load_template_source', +) + +MIDDLEWARE_CLASSES = ( + 'django.middleware.common.CommonMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.middleware.doc.XViewMiddleware', +) + +ROOT_URLCONF = 'chimere.urls' + +TEMPLATE_DIRS = [ + # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". + # Always use forward slashes, even on Windows. + # Don't forget to use absolute paths, not relative paths. + ROOT_PATH + 'templates', +] + +INSTALLED_APPS = ( + 'django.contrib.auth', + 'django.contrib.admin', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.sites', + 'south', + 'chimere', + # activate it if you want to use migration scripts + #'chimere.scripts', + # activate it if you want to use RSS feeds + 'chimere_rss' +) + +if 'chimere_rss' in INSTALLED_APPS: + TEMPLATE_DIRS.append(ROOT_PATH + 'chimere_rss/templates') diff --git a/urls.py b/urls.py new file mode 100644 index 0000000..8644a5d --- /dev/null +++ b/urls.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# Copyright (C) 2012 Étienne Loks + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# See the file COPYING for details. + +from django.conf import settings +from django.conf.urls.defaults import * + +from django.contrib import admin +from django.contrib.staticfiles.urls import staticfiles_urlpatterns + +admin.autodiscover() +urlpatterns = patterns('django.views.static', + (r'^%s(?P.*)' % settings.MEDIA_URL[1:], 'serve', + {'document_root': settings.MEDIA_ROOT}), +) + +urlpatterns += staticfiles_urlpatterns() + +urlpatterns += patterns('', + (r'^admin/doc/', include('django.contrib.admindocs.urls')), + (r'^admin/', include(admin.site.urls)), + url(r'^chimere/', include('chimere.urls', namespace="chimere")), +) + +if 'rss' in settings.INSTALLED_APPS: + urlpatterns += patterns('', + (r'^chimere/rss/', include('rss.urls')),) + -- cgit v1.2.3 From 38c4f29a41abaf18131c8d831be140ef158928dd Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 15 Feb 2012 18:50:52 +0100 Subject: Work on reorganization (refs #316) --- settings.py.example | 2 +- urls.py | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/settings.py.example b/settings.py.example index 5f993ab..2715d02 100644 --- a/settings.py.example +++ b/settings.py.example @@ -132,7 +132,7 @@ MIDDLEWARE_CLASSES = ( 'django.middleware.doc.XViewMiddleware', ) -ROOT_URLCONF = 'chimere.urls' +ROOT_URLCONF = 'example_project.urls' TEMPLATE_DIRS = [ # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". diff --git a/urls.py b/urls.py index 8644a5d..84a7e13 100644 --- a/urls.py +++ b/urls.py @@ -28,7 +28,6 @@ urlpatterns = patterns('django.views.static', (r'^%s(?P.*)' % settings.MEDIA_URL[1:], 'serve', {'document_root': settings.MEDIA_ROOT}), ) - urlpatterns += staticfiles_urlpatterns() urlpatterns += patterns('', -- cgit v1.2.3 From 74756d42b0ac70a28914d67f0137b6fa2d6a5aa2 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 15 Feb 2012 19:57:33 +0100 Subject: Use staticfiles (refs #315) --- settings.py.example | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ urls.py | 2 +- 2 files changed, 51 insertions(+), 1 deletion(-) diff --git a/settings.py.example b/settings.py.example index 2715d02..c9a3934 100644 --- a/settings.py.example +++ b/settings.py.example @@ -10,6 +10,7 @@ ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" EXTRA_URL = 'chimere/' BASE_URL = SERVER_URL + EXTRA_URL EMAIL_HOST = 'localhost' +STATIC_URL = '/static/' TINYMCE_URL = 'http://localhost/tinymce/' JQUERY_URL = "/chimere/static/jquery/jquery-1.4.4.min.js" @@ -147,6 +148,7 @@ INSTALLED_APPS = ( 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', + 'django.contrib.staticfiles', 'south', 'chimere', # activate it if you want to use migration scripts @@ -157,3 +159,51 @@ INSTALLED_APPS = ( if 'chimere_rss' in INSTALLED_APPS: TEMPLATE_DIRS.append(ROOT_PATH + 'chimere_rss/templates') + +LOGGING = {'version': 1, + 'disable_existing_loggers': False, + 'handlers': { + /# Include the default Django email handler for errors + # This is what you'd get without configuring logging at all. + 'mail_admins': { + 'class': 'django.utils.log.AdminEmailHandler', + 'level': 'ERROR', + # But the emails are plain text by default - HTML is nicer + 'include_html': True, + }, + # Log to a text file that can be rotated by logrotate + 'logfile': { + 'class': 'logging.handlers.WatchedFileHandler', + 'filename': '/var/log/django/chimere.log' + }, + }, + 'loggers': { + # Again, default Django configuration to email unhandled exceptions + 'django.request': { + 'handlers': ['mail_admins'], + 'level': 'ERROR', + 'propagate': True, + }, + # Might as well log any errors anywhere else in Django + 'django': { + 'handlers': ['logfile'], + 'level': 'ERROR', + 'propagate': False, + }, + # Your own app - this assumes all your logger names start with "myapp." + 'main': { + 'handlers': ['logfile'], + 'level': 'WARNING', # Or maybe INFO or DEBUG + 'propogate': False + }, + }, +} + +TEMPLATE_CONTEXT_PROCESSORS = ( + 'django.core.context_processors.debug', + 'django.core.context_processors.i18n', + 'django.core.context_processors.media', + 'django.core.context_processors.static', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', +) diff --git a/urls.py b/urls.py index 84a7e13..1f95694 100644 --- a/urls.py +++ b/urls.py @@ -33,7 +33,7 @@ urlpatterns += staticfiles_urlpatterns() urlpatterns += patterns('', (r'^admin/doc/', include('django.contrib.admindocs.urls')), (r'^admin/', include(admin.site.urls)), - url(r'^chimere/', include('chimere.urls', namespace="chimere")), + url(r'^', include('chimere.urls', namespace="chimere")), ) if 'rss' in settings.INSTALLED_APPS: -- cgit v1.2.3 From 617e86e1abe44ffbf8837306fdd6bb1801f06e0c Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 16 Feb 2012 08:46:47 +0100 Subject: Refactoring: change paths, move files, renaming, re-adapt templates + use context template (refs #316) --- static/icons/email.png | Bin 0 -> 735 bytes static/icons/facebook.png | Bin 0 -> 731 bytes static/icons/identica.png | Bin 0 -> 1373 bytes static/icons/minus.png | Bin 0 -> 259 bytes static/icons/plus.png | Bin 0 -> 275 bytes static/icons/twitter.png | Bin 0 -> 924 bytes static/icons/zoom.png | Bin 0 -> 655 bytes 7 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 static/icons/email.png create mode 100644 static/icons/facebook.png create mode 100644 static/icons/identica.png create mode 100644 static/icons/minus.png create mode 100644 static/icons/plus.png create mode 100644 static/icons/twitter.png create mode 100644 static/icons/zoom.png diff --git a/static/icons/email.png b/static/icons/email.png new file mode 100644 index 0000000..1a0a014 Binary files /dev/null and b/static/icons/email.png differ diff --git a/static/icons/facebook.png b/static/icons/facebook.png new file mode 100644 index 0000000..8036b19 Binary files /dev/null and b/static/icons/facebook.png differ diff --git a/static/icons/identica.png b/static/icons/identica.png new file mode 100644 index 0000000..a9625d1 Binary files /dev/null and b/static/icons/identica.png differ diff --git a/static/icons/minus.png b/static/icons/minus.png new file mode 100644 index 0000000..a95822f Binary files /dev/null and b/static/icons/minus.png differ diff --git a/static/icons/plus.png b/static/icons/plus.png new file mode 100644 index 0000000..404a24a Binary files /dev/null and b/static/icons/plus.png differ diff --git a/static/icons/twitter.png b/static/icons/twitter.png new file mode 100644 index 0000000..295767a Binary files /dev/null and b/static/icons/twitter.png differ diff --git a/static/icons/zoom.png b/static/icons/zoom.png new file mode 100644 index 0000000..3a53680 Binary files /dev/null and b/static/icons/zoom.png differ -- cgit v1.2.3 From a5838f44734d0950bd040457c06a3a67f9bbc191 Mon Sep 17 00:00:00 2001 From: Nim Date: Sun, 19 Feb 2012 04:09:06 +0100 Subject: Many fixes on chimere jquery JS --- static/icons/marker.png | Bin 0 -> 606 bytes static/icons/minus.png | Bin 259 -> 0 bytes static/icons/plus.png | Bin 275 -> 0 bytes static/icons/zoom.png | Bin 655 -> 0 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100755 static/icons/marker.png delete mode 100644 static/icons/minus.png delete mode 100644 static/icons/plus.png delete mode 100644 static/icons/zoom.png diff --git a/static/icons/marker.png b/static/icons/marker.png new file mode 100755 index 0000000..ccd1913 Binary files /dev/null and b/static/icons/marker.png differ diff --git a/static/icons/minus.png b/static/icons/minus.png deleted file mode 100644 index a95822f..0000000 Binary files a/static/icons/minus.png and /dev/null differ diff --git a/static/icons/plus.png b/static/icons/plus.png deleted file mode 100644 index 404a24a..0000000 Binary files a/static/icons/plus.png and /dev/null differ diff --git a/static/icons/zoom.png b/static/icons/zoom.png deleted file mode 100644 index 3a53680..0000000 Binary files a/static/icons/zoom.png and /dev/null differ -- cgit v1.2.3 From 3be078f3009751ed49dc2fcfbba1895bd4c46054 Mon Sep 17 00:00:00 2001 From: Nim Date: Sun, 19 Feb 2012 04:09:30 +0100 Subject: Many fixes on template and static vars --- settings.py.example | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/settings.py.example b/settings.py.example index c9a3934..f7fe697 100644 --- a/settings.py.example +++ b/settings.py.example @@ -12,45 +12,51 @@ BASE_URL = SERVER_URL + EXTRA_URL EMAIL_HOST = 'localhost' STATIC_URL = '/static/' -TINYMCE_URL = 'http://localhost/tinymce/' -JQUERY_URL = "/chimere/static/jquery/jquery-1.4.4.min.js" +TINYMCE_URL = '/tinymce/' +JQUERY_URL = '/javascript/jquery/jquery.js' GPSBABEL = '/usr/bin/gpsbabel' GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an # error of 5 meters #GPSBABEL_OPTIONS = 'simplify,count=100' ## chimere specific ## +CHIMERE_DEFAULT_ZOOM = 10 # center of the map -DEFAULT_CENTER = (-1.679444, 48.114722) +CHIMERE_DEFAULT_CENTER = (-1.679444, 48.114722) # projection used by the main map # most public map providers use spherical mercator : 900913 -EPSG_PROJECTION = 900913 +CHIMERE_EPSG_PROJECTION = 900913 # projection displayed to the end user by openlayers # chimere use the same projection to save its data in the database -EPSG_DISPLAY_PROJECTION = 4326 +CHIMERE_EPSG_DISPLAY_PROJECTION = 4326 # to restrict the map to a defined bounding box set it here # (left, bottom, right, top) -RESTRICTED_EXTENT = None +CHIMERE_RESTRICTED_EXTENT = None # dynamic load of categories on the main map -DYNAMIC_CATEGORIES = False +CHIMERE_DYNAMIC_CATEGORIES = False # display of shortcuts for areas -DISPLAY_AREAS = True +CHIMERE_DISPLAY_AREAS = True # specific css for areas -CSS_AREAS = True +CHIMERE_CSS_AREAS = True # number of day before an event to display # if equal to 0: disable event management # if you change this value from 0 to a value in a production environnement # don't forget to run the upgrade.py script to create appropriate fields in # the database -DAYS_BEFORE_EVENT = 30 +CHIMERE_DAYS_BEFORE_EVENT = 30 + +CHIMERE_ICON_WIDTH = 34 +CHIMERE_ICON_HEIGHT = 38 +CHIMERE_ICON_OFFSET_X = -17 +CHIMERE_ICON_OFFSET_Y = -38 # default id category to check on the map -DEFAULT_CATEGORIES = [1] +CHIMERE_DEFAULT_CATEGORIES = [1] # JS definition of the main map cf. OpenLayers documentation for more details #MAP_LAYER = '''new OpenLayers.Layer.OSM.CycleMap("Cycle map", { #displayOutsideMaxExtent: true, wrapDateLine: true})''' # OSM cyclemap -MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')" # OSM mapnik map +CHIMERE_MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')" # OSM mapnik map DEBUG = True TEMPLATE_DEBUG = DEBUG -- cgit v1.2.3 From e5184262b19dbbbe2f54f7b142998fe56185eefa Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 21 Feb 2012 00:07:11 +0100 Subject: Many changes on templates and styles --- settings.py.example | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/settings.py.example b/settings.py.example index f7fe697..2956e2b 100644 --- a/settings.py.example +++ b/settings.py.example @@ -13,7 +13,15 @@ EMAIL_HOST = 'localhost' STATIC_URL = '/static/' TINYMCE_URL = '/tinymce/' -JQUERY_URL = '/javascript/jquery/jquery.js' +JQUERY_JS_URLS = ('/javascript/jquery/jquery.js', + '/javascript/jquery-ui/jquery-ui.js',) +JQUERY_CSS_URLS = ('/javascript/jquery-ui/css/smoothness/jquery-ui.css', + '/javascript/jquery-ui-themes/base/jquery.ui.all.css') + +OSM_CSS_URLS = ["http://www.openlayers.org/api/theme/default/style.css"] +OSM_JS_URLS = [STATIC_URL + "chimere/js/OpenLayers.js", + "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] + GPSBABEL = '/usr/bin/gpsbabel' GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an # error of 5 meters -- cgit v1.2.3 From 8f96ac7ab08f77db83d6c941eac48ff2a3c76aa8 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 25 Feb 2012 00:29:50 +0100 Subject: Fix permalinks --- settings.py.example | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/settings.py.example b/settings.py.example index 2956e2b..3467d54 100644 --- a/settings.py.example +++ b/settings.py.example @@ -156,12 +156,23 @@ TEMPLATE_DIRS = [ ROOT_PATH + 'templates', ] +TEMPLATE_CONTEXT_PROCESSORS = ( + "django.contrib.auth.context_processors.auth", + "django.core.context_processors.debug", + "django.core.context_processors.i18n", + "django.core.context_processors.media", + "django.core.context_processors.static", + "django.contrib.messages.context_processors.messages", + "django.core.context_processors.request", +) + INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.admin', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', + 'django.contrib.gis', 'django.contrib.staticfiles', 'south', 'chimere', -- cgit v1.2.3 From ef655bd788d4ad95c76ee80fcb5cf5441120bcc9 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 1 Mar 2012 14:43:52 +0100 Subject: Manage mimetypes, order of multimedia types --- settings.py.example | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.py.example b/settings.py.example index 3467d54..6cef223 100644 --- a/settings.py.example +++ b/settings.py.example @@ -128,7 +128,7 @@ SHARE_NETWORKS = ( # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a # trailing slash. # Examples: "http://foo.com/media/", "/media/". -ADMIN_MEDIA_PREFIX = '/' + EXTRA_URL + 'media/' +ADMIN_MEDIA_PREFIX = '/' + EXTRA_URL + '/admin-media/' # Make this unique, and don't share it with anybody. SECRET_KEY = 'achanger_!ToChange!' -- cgit v1.2.3 From 5034533ee21ed6300bc8d3e0d0b1ff23310bd138 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 7 Mar 2012 20:01:35 +0100 Subject: Use a templatetag for inline tables - update french translations - clean in migrations --- locale/fr/LC_MESSAGES/django.po | 685 ++++++++++++++++++++++++++++++++++++++ locale/fr/LC_MESSAGES/djangojs.po | 21 ++ 2 files changed, 706 insertions(+) create mode 100644 locale/fr/LC_MESSAGES/django.po create mode 100644 locale/fr/LC_MESSAGES/djangojs.po diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po new file mode 100644 index 0000000..9251eae --- /dev/null +++ b/locale/fr/LC_MESSAGES/django.po @@ -0,0 +1,685 @@ +# Chimère +# Copyright (C) 2008-2012 +# This file is distributed under the same license as the Chimère package. +# Étienne Loks , 2008-2011. +# +msgid "" +msgstr "" +"Project-Id-Version: 0.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2012-03-07 19:59+0100\n" +"PO-Revision-Date: 2010-03-20 20:00+0100\n" +"Last-Translator: Étienne Loks \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: extra-locales/chimere/__init__.py:6 +msgid "Multimedia files" +msgstr "Fichiers multimedias" + +#: extra-locales/chimere/actions.py:31 +msgid "View" +msgstr "Voir" + +#: extra-locales/chimere/actions.py:32 +msgid "Contribute" +msgstr "Participer" + +#: extra-locales/chimere/actions.py:33 +msgid "Add a new point of interest" +msgstr "Ajout d'un point remarquable" + +#: extra-locales/chimere/actions.py:34 +msgid "Add a new route" +msgstr "Ajout d'un nouveau trajet" + +#: extra-locales/chimere/actions.py:38 +msgid "RSS feeds" +msgstr "Flux RSS" + +#: extra-locales/chimere/actions.py:41 +msgid "Contact us" +msgstr "Nous contacter" + +#: extra-locales/chimere/forms.py:73 +msgid "New submission for" +msgstr "Nouvelle proposition pour" + +#: extra-locales/chimere/forms.py:74 +#, python-format +msgid "The new item \"%s\" has been submited in the category: " +msgstr "Le nouvel élément « %s » a été proposé dans la catégorie : " + +#: extra-locales/chimere/forms.py:76 +msgid "To valid, precise or unvalid this item: " +msgstr "Pour valider, préciser ou rejeter cet élément : " + +#: extra-locales/chimere/forms.py:85 +msgid "Email (optional)" +msgstr "Courriel (optionnel) " + +#: extra-locales/chimere/forms.py:86 +msgid "Object" +msgstr "Objet" + +#: extra-locales/chimere/forms.py:139 +msgid "End date has been set with no start date" +msgstr "Une date de fin a été donnée sans date de début" + +#: extra-locales/chimere/forms.py:224 extra-locales/chimere/models.py:132 +#: extra-locales/chimere/models.py:363 extra-locales/chimere/models.py:387 +#: extra-locales/chimere/models.py:461 +#: extra-locales/chimere/templates/chimere/edit_route.html:41 +msgid "Image" +msgstr "Image" + +#: extra-locales/chimere/forms.py:298 +msgid "File" +msgstr "Fichier" + +#: extra-locales/chimere/forms.py:304 +msgid "Bad file format: this must be a GPX or KML file" +msgstr "Mauvais format de fichier : KML et GPX sont supportés" + +#: extra-locales/chimere/forms.py:309 extra-locales/chimere/models.py:44 +#: extra-locales/chimere/models.py:97 extra-locales/chimere/models.py:118 +#: extra-locales/chimere/models.py:131 extra-locales/chimere/models.py:145 +#: extra-locales/chimere/models.py:193 extra-locales/chimere/models.py:367 +#: extra-locales/chimere/models.py:377 extra-locales/chimere/models.py:386 +#: extra-locales/chimere/models.py:398 extra-locales/chimere/models.py:626 +#: extra-locales/chimere/models.py:668 +msgid "Name" +msgstr "Nom" + +#: extra-locales/chimere/forms.py:318 extra-locales/chimere/models.py:642 +msgid "Area" +msgstr "Zone" + +#: extra-locales/chimere/models.py:45 extra-locales/chimere/models.py:119 +#: extra-locales/chimere/models.py:146 extra-locales/chimere/models.py:202 +#: extra-locales/chimere/models.py:371 extra-locales/chimere/models.py:630 +#: extra-locales/chimere/models.py:670 +msgid "Available" +msgstr "Disponible" + +#: extra-locales/chimere/models.py:46 +msgid "Date" +msgstr "Date" + +#: extra-locales/chimere/models.py:52 extra-locales/chimere/models.py:53 +#: extra-locales/chimere/templates/chimere/blocks/welcome.html:5 +msgid "News" +msgstr "Nouvelle" + +#: extra-locales/chimere/models.py:58 +msgid "Parameters" +msgstr "Paramètres" + +#: extra-locales/chimere/models.py:62 +msgid "TinyUrl" +msgstr "Mini-url" + +#: extra-locales/chimere/models.py:101 extra-locales/chimere/models.py:108 +#: extra-locales/chimere/models.py:149 +msgid "Color theme" +msgstr "Thème de couleur" + +#: extra-locales/chimere/models.py:106 +msgid "Code" +msgstr "Code" + +#: extra-locales/chimere/models.py:107 extra-locales/chimere/models.py:120 +#: extra-locales/chimere/models.py:151 extra-locales/chimere/models.py:379 +#: extra-locales/chimere/models.py:392 extra-locales/chimere/models.py:629 +#: extra-locales/chimere/models.py:669 +msgid "Order" +msgstr "Ordre" + +#: extra-locales/chimere/models.py:113 +msgid "Color" +msgstr "Couleur" + +#: extra-locales/chimere/models.py:126 extra-locales/chimere/models.py:144 +msgid "Category" +msgstr "Catégorie" + +#: extra-locales/chimere/models.py:134 extra-locales/chimere/models.py:389 +#: extra-locales/chimere/models.py:463 +msgid "Height" +msgstr "Hauteur" + +#: extra-locales/chimere/models.py:135 extra-locales/chimere/models.py:390 +#: extra-locales/chimere/models.py:464 +msgid "Width" +msgstr "Largeur" + +#: extra-locales/chimere/models.py:139 extra-locales/chimere/models.py:148 +msgid "Icon" +msgstr "Icône" + +#: extra-locales/chimere/models.py:152 +msgid "Marker" +msgstr "Point d'intérêt" + +#: extra-locales/chimere/models.py:153 extra-locales/chimere/models.py:457 +#: extra-locales/chimere/models.py:472 +#: extra-locales/chimere/templates/chimere/edit_route.html:35 +msgid "Route" +msgstr "Trajet" + +#: extra-locales/chimere/models.py:154 +msgid "Both" +msgstr "Mixte" + +#: extra-locales/chimere/models.py:155 +msgid "Item type" +msgstr "Type d'élément" + +#: extra-locales/chimere/models.py:160 +msgid "Subcategory" +msgstr "Sous-catégorie" + +#: extra-locales/chimere/models.py:195 +msgid "Submitter session key" +msgstr "Clé de session du demandeur" + +#: extra-locales/chimere/models.py:197 +msgid "Submitter email" +msgstr "Courriel du demandeur" + +#: extra-locales/chimere/models.py:199 +msgid "Submitter comment" +msgstr "Commentaire du demandeur" + +#: extra-locales/chimere/models.py:201 +msgid "Submited" +msgstr "Soumis" + +#: extra-locales/chimere/models.py:203 +msgid "Modified" +msgstr "Modifié" + +#: extra-locales/chimere/models.py:204 +msgid "Disabled" +msgstr "Désactivé" + +#: extra-locales/chimere/models.py:208 +msgid "Status" +msgstr "État" + +#: extra-locales/chimere/models.py:210 +#: extra-locales/chimere/templates/chimere/edit.html:41 +#: extra-locales/chimere/templates/chimere/edit_route.html:47 +msgid "Start date" +msgstr "Date de début" + +#: extra-locales/chimere/models.py:211 +msgid "Not mandatory. Set it for dated item such as event. Format YYYY-MM-DD" +msgstr "" +"Optionnel. Précisez ce champ pour les éléments datés comme un événement. " +"Format du champ : AAAA-MM-JJ" + +#: extra-locales/chimere/models.py:213 +#: extra-locales/chimere/templates/chimere/edit.html:47 +#: extra-locales/chimere/templates/chimere/edit_route.html:53 +msgid "End date" +msgstr "Date de fin" + +#: extra-locales/chimere/models.py:214 +msgid "" +"Not mandatory. Set it only if you have a multi-day event. Format YYYY-MM-DD" +msgstr "" +"Optionnel. Précisez ce champ seulement pour des événements durant plusieurs " +"jours. Format du champ : AAAA-MM-JJ" + +#: extra-locales/chimere/models.py:223 +msgid "Reference marker" +msgstr "Point d'intérêt de référence" + +#: extra-locales/chimere/models.py:224 +msgid "Localisation" +msgstr "Localisation" + +#: extra-locales/chimere/models.py:227 +msgid "Available Date" +msgstr "Date de mise en disponibilité" + +#: extra-locales/chimere/models.py:270 extra-locales/chimere/models.py:692 +msgid "Point of interest" +msgstr "Point d'intérêt" + +#: extra-locales/chimere/models.py:361 +msgid "Audio" +msgstr "Audio" + +#: extra-locales/chimere/models.py:362 +msgid "Video" +msgstr "Vidéo" + +#: extra-locales/chimere/models.py:364 +msgid "Other" +msgstr "Autre" + +#: extra-locales/chimere/models.py:365 +msgid "Media type" +msgstr "Type de media" + +#: extra-locales/chimere/models.py:368 +msgid "Mime type" +msgstr "Type mime" + +#: extra-locales/chimere/models.py:378 +msgid "Url" +msgstr "Url" + +#: extra-locales/chimere/models.py:391 +msgid "Display inside the resume?" +msgstr "Apparaît dans le résumé ?" + +#: extra-locales/chimere/models.py:399 +msgid "Raw file (gpx or kml)" +msgstr "Fichier brut (gpx ou kml)" + +#: extra-locales/chimere/models.py:400 +msgid "Simplified file" +msgstr "Fichier simplifié" + +#: extra-locales/chimere/models.py:402 +msgid "KML" +msgstr "KML" + +#: extra-locales/chimere/models.py:402 +msgid "GPX" +msgstr "GPX" + +#: extra-locales/chimere/models.py:407 +msgid "Route file" +msgstr "Fichier de trajet" + +#: extra-locales/chimere/models.py:456 +msgid "Reference route" +msgstr "Trajet de référence" + +#: extra-locales/chimere/models.py:460 +msgid "Associated file" +msgstr "Fichier associé" + +#: extra-locales/chimere/models.py:627 +msgid "Area urn" +msgstr "Urn de la zone" + +#: extra-locales/chimere/models.py:631 +msgid "Upper left corner" +msgstr "Coin en haut à gauche" + +#: extra-locales/chimere/models.py:633 +msgid "Lower right corner" +msgstr "Coin en bas à droite" + +#: extra-locales/chimere/models.py:671 +msgid "Text" +msgstr "Texte" + +#: extra-locales/chimere/models.py:672 +msgid "Long text" +msgstr "Texte long" + +#: extra-locales/chimere/models.py:673 +msgid "Password" +msgstr "Mot de passe" + +#: extra-locales/chimere/models.py:677 +msgid "Type" +msgstr "Type" + +#: extra-locales/chimere/models.py:682 extra-locales/chimere/models.py:694 +msgid "Property model" +msgstr "Modèle de propriété" + +#: extra-locales/chimere/models.py:695 +msgid "Value" +msgstr "Valeur" + +#: extra-locales/chimere/models.py:699 +msgid "Property" +msgstr "Propriété" + +#: extra-locales/chimere/views.py:237 +msgid "Bad file. Please check it with an external software." +msgstr "Fichier incohérent. Merci de le vérifier avec un logiciel externe." + +#: extra-locales/chimere/views.py:353 +msgid "Comments/request on the map" +msgstr "Commentaires/requètes sur la carte" + +#: extra-locales/chimere/views.py:356 +msgid "" +"Thank you for your contribution. It will be taken into account. If you have " +"left your email you may be contacted soon for more details." +msgstr "" +"Merci pour votre contribution. Elle va être prise en compte. Si vous avez " +"laissé votre courriel vous serez peut-être contacté bientôt pour plus de " +"détails." + +#: extra-locales/chimere/views.py:360 +msgid "Temporary error. Renew your message later." +msgstr "Erreur temporaire. Réenvoyez votre message plus tard." + +#: extra-locales/chimere/views.py:481 +msgid "No category available in this area." +msgstr "Pas de catégorie disponible sur cette zone." + +#: extra-locales/chimere/widgets.py:123 +msgid "Latitude" +msgstr "Latitude" + +#: extra-locales/chimere/widgets.py:123 +msgid "Longitude" +msgstr "Longitude" + +#: extra-locales/chimere/widgets.py:147 +msgid "Invalid point" +msgstr "Point invalide" + +#: extra-locales/chimere/widgets.py:174 +msgid "Creation mode" +msgstr "Mode création" + +#: extra-locales/chimere/widgets.py:175 +msgid "To start drawing the route click on the toggle button: \"Draw\"." +msgstr "Pour commencer le dessin cliquez sur le bouton : « Tracer » " + +#: extra-locales/chimere/widgets.py:177 +msgid "Then click on the map to begin the drawing." +msgstr "Puis cliquez sur la carte pour commencer le dessin." + +#: extra-locales/chimere/widgets.py:178 +msgid "You can add points by clicking again." +msgstr "Vous pouvez ajouter des points en cliquant de nouveau." + +#: extra-locales/chimere/widgets.py:179 +msgid "" +"To finish the drawing double click. When the drawing is finished you can " +"edit it." +msgstr "" +"Pour finir le tracé double-cliquez. Quand le tracé est fini vous pouvez " +"toujours l'éditer." + +#: extra-locales/chimere/widgets.py:181 +msgid "" +"While creating to undo a drawing click again on the toggle button \"Stop " +"drawing\"." +msgstr "" +"En mode création vous pouvez annuler un tracé en appuyant sur le bouton « " +"Arrêter le tracé »" + +#: extra-locales/chimere/widgets.py:186 +msgid "Modification mode" +msgstr "Mode modification" + +#: extra-locales/chimere/widgets.py:187 +msgid "To move a point click on it and drag it to the desired position." +msgstr "" +"Pour bouger un point, cliquez dessus, maintenez le click pour le déposer à " +"la position désirée." + +#: extra-locales/chimere/widgets.py:188 +msgid "" +"To delete a point move the mouse cursor over it and press the \"d\" or \"Del" +"\" key." +msgstr "" +"Pour supprimer un point, mettez le curseur de la souris sur celui-ci et " +"appuyez sur le touche « d » ou « Suppr »" + +#: extra-locales/chimere/widgets.py:190 +msgid "" +"To add a point click in the middle of a segment and drag the new point to " +"the desired position" +msgstr "" +"Pour ajouter un nouveau point, cliquez au milieu d'un des segments, " +"maintenez le bouton appuyé et déplacez le nouveau point à la position " +"désirée." + +#: extra-locales/chimere/widgets.py:199 +msgid "Give a name and set category before uploading a file." +msgstr "" +"Renseignez le nom et choisissez au moins une catégorie avant de déposer un " +"fichier." + +#: extra-locales/chimere/widgets.py:202 +msgid "Upload a route file (GPX or KML)" +msgstr "Déposer un trajet (fichier GPX ou KML)" + +#: extra-locales/chimere/widgets.py:203 +msgid "or" +msgstr "ou" + +#: extra-locales/chimere/widgets.py:208 +msgid "Start \"hand\" drawing" +msgstr "Commencer le tracé manuellement" + +#: extra-locales/chimere/widgets.py:220 +msgid "Move on the map" +msgstr "Se déplacer" + +#: extra-locales/chimere/widgets.py:220 +msgid "Draw" +msgstr "Tracer" + +#: extra-locales/chimere/widgets.py:355 +msgid "Select..." +msgstr "Sélectionner..." + +#: extra-locales/chimere/templates/404.html:10 +msgid "Page not found" +msgstr "Page non trouvée" + +#: extra-locales/chimere/templates/500.html:10 +msgid "Internal server error" +msgstr "Erreur interne du serveur" + +#: extra-locales/chimere/templates/admin/base_site.html:4 +#: extra-locales/chimere/templates/admin/base_site.html:7 +msgid "Administration de Chimère" +msgstr "Administration de Chimère" + +#: extra-locales/chimere/templates/chimere/contactus.html:17 +msgid "" +"If you have some requests or remarks about this site you can leave them here." +msgstr "" +"Si vous avez des requètes, des remarques à propos de ce site vous pouvez " +"nous laisser un commentaire ici." + +#: extra-locales/chimere/templates/chimere/contactus.html:20 +msgid "Submit" +msgstr "Proposer" + +#: extra-locales/chimere/templates/chimere/detail.html:7 +msgid "Date:" +msgstr "Date :" + +#: extra-locales/chimere/templates/chimere/detail.html:14 +msgid "Show multimedia gallery" +msgstr "Montrer la galerie multimedia" + +#: extra-locales/chimere/templates/chimere/detail.html:17 +msgid "Share on" +msgstr "Partager sur" + +#: extra-locales/chimere/templates/chimere/detail.html:21 +msgid "Share" +msgstr "Partager" + +#: extra-locales/chimere/templates/chimere/detail.html:25 +msgid "Submit a modification" +msgstr "Proposer une modification" + +#: extra-locales/chimere/templates/chimere/detail.html:46 +msgid "Please use a modern browser or install the non free Flash-Plugin." +msgstr "" +"Utilisez un navigateur internet plus récent ou installez le greffon non " +"libre Flash." + +#: extra-locales/chimere/templates/chimere/edit.html:20 +msgid "Add/modify a site" +msgstr "Ajouter ou modifier un site" + +#: extra-locales/chimere/templates/chimere/edit.html:21 +#: extra-locales/chimere/templates/chimere/edit_route.html:21 +msgid "indicates a mandatory field" +msgstr "indique un champ obligatoire" + +#: extra-locales/chimere/templates/chimere/edit.html:25 +#: extra-locales/chimere/templates/chimere/edit_route.html:25 +msgid "Site name" +msgstr "Nom du site" + +#: extra-locales/chimere/templates/chimere/edit.html:30 +#: extra-locales/chimere/templates/chimere/edit_route.html:30 +msgid "Categories" +msgstr "Catégories" + +#: extra-locales/chimere/templates/chimere/edit.html:35 +msgid "Point" +msgstr "Point" + +#: extra-locales/chimere/templates/chimere/edit.html:36 +#: extra-locales/chimere/templates/chimere/edit_route.html:36 +msgid "Select a location for this new site" +msgstr "Choisissez une localisation pour ce nouveau site" + +#: extra-locales/chimere/templates/chimere/edit.html:69 +#: extra-locales/chimere/templates/chimere/edit_route.html:70 +msgid "Propose" +msgstr "Proposez" + +#: extra-locales/chimere/templates/chimere/edit_route.html:20 +msgid "Add/modify a route" +msgstr "Ajout ou modifier un trajet" + +#: extra-locales/chimere/templates/chimere/main_map.html:12 +#: extra-locales/chimere/templates/chimere/main_map_simple.html:10 +msgid "Topics" +msgstr "Thèmes" + +#: extra-locales/chimere/templates/chimere/upload_file.html:17 +msgid "Thank you for your submission!" +msgstr "Merci pour votre proposition !" + +#: extra-locales/chimere/templates/chimere/upload_file.html:21 +msgid "Upload a file" +msgstr "Déposer un fichier" + +#: extra-locales/chimere/templates/chimere/upload_file.html:51 +msgid "Upload" +msgstr "Déposer" + +#: extra-locales/chimere/templates/chimere/blocks/areas.html:4 +msgid "Shortcuts" +msgstr "Raccourcis" + +#: extra-locales/chimere/templates/chimere/blocks/areas.html:7 +#: extra-locales/chimere/templates/chimere/blocks/categories.html:8 +#: extra-locales/chimere/templates/chimere/blocks/categories.html:17 +msgid "Zoom to" +msgstr "Zoomer sur" + +#: extra-locales/chimere/templates/chimere/blocks/categories.html:21 +msgid "Tell me more..." +msgstr "En savoir plus..." + +#: extra-locales/chimere/templates/chimere/blocks/categories.html:27 +msgid "Display markers and routes waiting for validation" +msgstr "" +"Afficher les points remarquables et les trajets en attente de validation" + +#: extra-locales/chimere/templates/chimere/blocks/footer.html:2 +msgid "This site uses Chimère" +msgstr "Ce site utilise Chimère" + +#: extra-locales/chimere/templates/chimere/blocks/footer.html:2 +msgid "Map" +msgstr "Carte" + +#: extra-locales/chimere/templates/chimere/blocks/map_params.html:5 +msgid "Permalink" +msgstr "Lien permanent" + +#: extra-locales/chimere/templates/chimere/blocks/submited.html:3 +msgid "Thank you" +msgstr "Merci" + +#: extra-locales/chimere/templates/chimere/blocks/submited.html:4 +msgid "" +"Your proposition has been submited. A moderator will treat your submission " +"shortly. Thanks!" +msgstr "" +"Votre proposition a été soumise. Un modérateur va traiter votre proposition " +"sous peu. Merci !" + +#: extra-locales/chimere/templates/chimere/blocks/welcome.html:3 +msgid "Welcome message" +msgstr "Message d'accueil" + +#: extra-locales/chimere/templates/chimere/blocks/welcome.html:24 +msgid "See it on the map" +msgstr "Voir sur la carte" + +#: extra-locales/chimere_rss/feeds.py:128 +#: extra-locales/chimere_rss/feeds.py:217 +msgid "Last points of interest" +msgstr "Derniers points d'intérêt" + +#: extra-locales/chimere_rss/feeds.py:134 +msgid "Latest points of interest from " +msgstr "Nouveaux points d'intérêt de " + +#: extra-locales/chimere_rss/feeds.py:180 +msgid "Last points of interest by area" +msgstr "Nouveaux points d'intérêt par zone" + +#: extra-locales/chimere_rss/views.py:73 +msgid "Incorrect choice in the list" +msgstr "Choix incorrect dans la liste" + +#: extra-locales/chimere_rss/templates/rss.html:10 +msgid "Subscribe to RSS feed" +msgstr "Souscrire à un flux RSS" + +#: extra-locales/chimere_rss/templates/rss.html:17 +msgid "Type of RSS feed" +msgstr "Type de flux RSS" + +#: extra-locales/chimere_rss/templates/rss.html:20 +msgid "All new points of interest" +msgstr "Tous les nouveaux points d'intérêt" + +#: extra-locales/chimere_rss/templates/rss.html:21 +#: extra-locales/chimere_rss/templates/rss.html:28 +msgid "New points of interest by category" +msgstr "Les nouveaux points d'intérêt par catégorie" + +#: extra-locales/chimere_rss/templates/rss.html:22 +#: extra-locales/chimere_rss/templates/rss.html:44 +msgid "New points of interest by area" +msgstr "Les nouveaux points d'intérêt par zone" + +#: extra-locales/chimere_rss/templates/rss.html:30 +msgid "Choose a category" +msgstr "Choisir une catégorie" + +#: extra-locales/chimere_rss/templates/rss.html:47 +msgid "Choose a pre-defined areas" +msgstr "Choisir une zone pré-définie" + +#: extra-locales/chimere_rss/templates/rss.html:61 +msgid "Or select the area by zooming and panning this map" +msgstr "Ou sélectionner une zone en zoomant et en se déplaçant sur cette carte" + +#: extra-locales/chimere_rss/templates/rss.html:66 +msgid "Validate" +msgstr "Valider" + +#~ msgid "Multimedia type is mandatory if is not an iframe." +#~ msgstr "Le type de média est obligatoire si ce n'est pas une iframe." diff --git a/locale/fr/LC_MESSAGES/djangojs.po b/locale/fr/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000..84823e0 --- /dev/null +++ b/locale/fr/LC_MESSAGES/djangojs.po @@ -0,0 +1,21 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-11-23 15:35+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: static/main_map.js:104 +msgid "Show details" +msgstr "Voir le détail" -- cgit v1.2.3 From e34cb98ca87a879f7e8e0735e999798b72f4b925 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 7 Mar 2012 20:03:38 +0100 Subject: Add link to manage correct translation --- extra-locales/chimere | 1 + extra-locales/chimere_rss | 1 + 2 files changed, 2 insertions(+) create mode 120000 extra-locales/chimere create mode 120000 extra-locales/chimere_rss diff --git a/extra-locales/chimere b/extra-locales/chimere new file mode 120000 index 0000000..3c7fdf4 --- /dev/null +++ b/extra-locales/chimere @@ -0,0 +1 @@ +../../chimere \ No newline at end of file diff --git a/extra-locales/chimere_rss b/extra-locales/chimere_rss new file mode 120000 index 0000000..1a8285a --- /dev/null +++ b/extra-locales/chimere_rss @@ -0,0 +1 @@ +../../chimere_rss/ \ No newline at end of file -- cgit v1.2.3 From b4b4a9a8ffd9e4633a033df4286a28d8035bd3bb Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 9 Mar 2012 17:55:57 +0100 Subject: Update translation --- locale/fr/LC_MESSAGES/django.po | 134 +++++++++++++++++++++------------------- 1 file changed, 71 insertions(+), 63 deletions(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 9251eae..0b990f0 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -7,17 +7,21 @@ msgid "" msgstr "" "Project-Id-Version: 0.2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-03-07 19:59+0100\n" +"POT-Creation-Date: 2012-03-09 17:54+0100\n" "PO-Revision-Date: 2010-03-20 20:00+0100\n" "Last-Translator: Étienne Loks \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: extra-locales/chimere/__init__.py:6 +#: extra-locales/chimere/__init__.py:8 msgid "Multimedia files" msgstr "Fichiers multimedias" +#: extra-locales/chimere/__init__.py:9 +msgid "Picture files" +msgstr "Fichiers d'image" + #: extra-locales/chimere/actions.py:31 msgid "View" msgstr "Voir" @@ -42,64 +46,64 @@ msgstr "Flux RSS" msgid "Contact us" msgstr "Nous contacter" -#: extra-locales/chimere/forms.py:73 +#: extra-locales/chimere/forms.py:75 msgid "New submission for" msgstr "Nouvelle proposition pour" -#: extra-locales/chimere/forms.py:74 +#: extra-locales/chimere/forms.py:76 #, python-format msgid "The new item \"%s\" has been submited in the category: " msgstr "Le nouvel élément « %s » a été proposé dans la catégorie : " -#: extra-locales/chimere/forms.py:76 +#: extra-locales/chimere/forms.py:78 msgid "To valid, precise or unvalid this item: " msgstr "Pour valider, préciser ou rejeter cet élément : " -#: extra-locales/chimere/forms.py:85 +#: extra-locales/chimere/forms.py:87 msgid "Email (optional)" msgstr "Courriel (optionnel) " -#: extra-locales/chimere/forms.py:86 +#: extra-locales/chimere/forms.py:88 msgid "Object" msgstr "Objet" -#: extra-locales/chimere/forms.py:139 +#: extra-locales/chimere/forms.py:141 msgid "End date has been set with no start date" msgstr "Une date de fin a été donnée sans date de début" -#: extra-locales/chimere/forms.py:224 extra-locales/chimere/models.py:132 -#: extra-locales/chimere/models.py:363 extra-locales/chimere/models.py:387 -#: extra-locales/chimere/models.py:461 +#: extra-locales/chimere/forms.py:226 extra-locales/chimere/models.py:132 +#: extra-locales/chimere/models.py:362 extra-locales/chimere/models.py:429 +#: extra-locales/chimere/models.py:503 #: extra-locales/chimere/templates/chimere/edit_route.html:41 msgid "Image" msgstr "Image" -#: extra-locales/chimere/forms.py:298 +#: extra-locales/chimere/forms.py:340 msgid "File" msgstr "Fichier" -#: extra-locales/chimere/forms.py:304 +#: extra-locales/chimere/forms.py:346 msgid "Bad file format: this must be a GPX or KML file" msgstr "Mauvais format de fichier : KML et GPX sont supportés" -#: extra-locales/chimere/forms.py:309 extra-locales/chimere/models.py:44 +#: extra-locales/chimere/forms.py:351 extra-locales/chimere/models.py:44 #: extra-locales/chimere/models.py:97 extra-locales/chimere/models.py:118 #: extra-locales/chimere/models.py:131 extra-locales/chimere/models.py:145 -#: extra-locales/chimere/models.py:193 extra-locales/chimere/models.py:367 -#: extra-locales/chimere/models.py:377 extra-locales/chimere/models.py:386 -#: extra-locales/chimere/models.py:398 extra-locales/chimere/models.py:626 -#: extra-locales/chimere/models.py:668 +#: extra-locales/chimere/models.py:193 extra-locales/chimere/models.py:366 +#: extra-locales/chimere/models.py:405 extra-locales/chimere/models.py:428 +#: extra-locales/chimere/models.py:440 extra-locales/chimere/models.py:668 +#: extra-locales/chimere/models.py:710 msgid "Name" msgstr "Nom" -#: extra-locales/chimere/forms.py:318 extra-locales/chimere/models.py:642 +#: extra-locales/chimere/forms.py:360 extra-locales/chimere/models.py:684 msgid "Area" msgstr "Zone" #: extra-locales/chimere/models.py:45 extra-locales/chimere/models.py:119 #: extra-locales/chimere/models.py:146 extra-locales/chimere/models.py:202 -#: extra-locales/chimere/models.py:371 extra-locales/chimere/models.py:630 -#: extra-locales/chimere/models.py:670 +#: extra-locales/chimere/models.py:370 extra-locales/chimere/models.py:672 +#: extra-locales/chimere/models.py:712 msgid "Available" msgstr "Disponible" @@ -130,9 +134,9 @@ msgid "Code" msgstr "Code" #: extra-locales/chimere/models.py:107 extra-locales/chimere/models.py:120 -#: extra-locales/chimere/models.py:151 extra-locales/chimere/models.py:379 -#: extra-locales/chimere/models.py:392 extra-locales/chimere/models.py:629 -#: extra-locales/chimere/models.py:669 +#: extra-locales/chimere/models.py:151 extra-locales/chimere/models.py:407 +#: extra-locales/chimere/models.py:434 extra-locales/chimere/models.py:671 +#: extra-locales/chimere/models.py:711 msgid "Order" msgstr "Ordre" @@ -144,13 +148,13 @@ msgstr "Couleur" msgid "Category" msgstr "Catégorie" -#: extra-locales/chimere/models.py:134 extra-locales/chimere/models.py:389 -#: extra-locales/chimere/models.py:463 +#: extra-locales/chimere/models.py:134 extra-locales/chimere/models.py:431 +#: extra-locales/chimere/models.py:505 msgid "Height" msgstr "Hauteur" -#: extra-locales/chimere/models.py:135 extra-locales/chimere/models.py:390 -#: extra-locales/chimere/models.py:464 +#: extra-locales/chimere/models.py:135 extra-locales/chimere/models.py:432 +#: extra-locales/chimere/models.py:506 msgid "Width" msgstr "Largeur" @@ -162,8 +166,8 @@ msgstr "Icône" msgid "Marker" msgstr "Point d'intérêt" -#: extra-locales/chimere/models.py:153 extra-locales/chimere/models.py:457 -#: extra-locales/chimere/models.py:472 +#: extra-locales/chimere/models.py:153 extra-locales/chimere/models.py:499 +#: extra-locales/chimere/models.py:514 #: extra-locales/chimere/templates/chimere/edit_route.html:35 msgid "Route" msgstr "Trajet" @@ -245,115 +249,119 @@ msgstr "Localisation" msgid "Available Date" msgstr "Date de mise en disponibilité" -#: extra-locales/chimere/models.py:270 extra-locales/chimere/models.py:692 +#: extra-locales/chimere/models.py:269 extra-locales/chimere/models.py:734 msgid "Point of interest" msgstr "Point d'intérêt" -#: extra-locales/chimere/models.py:361 +#: extra-locales/chimere/models.py:360 msgid "Audio" msgstr "Audio" -#: extra-locales/chimere/models.py:362 +#: extra-locales/chimere/models.py:361 msgid "Video" msgstr "Vidéo" -#: extra-locales/chimere/models.py:364 +#: extra-locales/chimere/models.py:363 msgid "Other" msgstr "Autre" -#: extra-locales/chimere/models.py:365 +#: extra-locales/chimere/models.py:364 msgid "Media type" msgstr "Type de media" -#: extra-locales/chimere/models.py:368 +#: extra-locales/chimere/models.py:367 msgid "Mime type" msgstr "Type mime" -#: extra-locales/chimere/models.py:378 +#: extra-locales/chimere/models.py:369 +msgid "Inside an iframe" +msgstr "À l'intérieur d'un iframe" + +#: extra-locales/chimere/models.py:406 msgid "Url" msgstr "Url" -#: extra-locales/chimere/models.py:391 -msgid "Display inside the resume?" -msgstr "Apparaît dans le résumé ?" +#: extra-locales/chimere/models.py:433 +msgid "Display inside the description?" +msgstr "Apparaît dans la description ?" -#: extra-locales/chimere/models.py:399 +#: extra-locales/chimere/models.py:441 msgid "Raw file (gpx or kml)" msgstr "Fichier brut (gpx ou kml)" -#: extra-locales/chimere/models.py:400 +#: extra-locales/chimere/models.py:442 msgid "Simplified file" msgstr "Fichier simplifié" -#: extra-locales/chimere/models.py:402 +#: extra-locales/chimere/models.py:444 msgid "KML" msgstr "KML" -#: extra-locales/chimere/models.py:402 +#: extra-locales/chimere/models.py:444 msgid "GPX" msgstr "GPX" -#: extra-locales/chimere/models.py:407 +#: extra-locales/chimere/models.py:449 msgid "Route file" msgstr "Fichier de trajet" -#: extra-locales/chimere/models.py:456 +#: extra-locales/chimere/models.py:498 msgid "Reference route" msgstr "Trajet de référence" -#: extra-locales/chimere/models.py:460 +#: extra-locales/chimere/models.py:502 msgid "Associated file" msgstr "Fichier associé" -#: extra-locales/chimere/models.py:627 +#: extra-locales/chimere/models.py:669 msgid "Area urn" msgstr "Urn de la zone" -#: extra-locales/chimere/models.py:631 +#: extra-locales/chimere/models.py:673 msgid "Upper left corner" msgstr "Coin en haut à gauche" -#: extra-locales/chimere/models.py:633 +#: extra-locales/chimere/models.py:675 msgid "Lower right corner" msgstr "Coin en bas à droite" -#: extra-locales/chimere/models.py:671 +#: extra-locales/chimere/models.py:713 msgid "Text" msgstr "Texte" -#: extra-locales/chimere/models.py:672 +#: extra-locales/chimere/models.py:714 msgid "Long text" msgstr "Texte long" -#: extra-locales/chimere/models.py:673 +#: extra-locales/chimere/models.py:715 msgid "Password" msgstr "Mot de passe" -#: extra-locales/chimere/models.py:677 +#: extra-locales/chimere/models.py:719 msgid "Type" msgstr "Type" -#: extra-locales/chimere/models.py:682 extra-locales/chimere/models.py:694 +#: extra-locales/chimere/models.py:724 extra-locales/chimere/models.py:736 msgid "Property model" msgstr "Modèle de propriété" -#: extra-locales/chimere/models.py:695 +#: extra-locales/chimere/models.py:737 msgid "Value" msgstr "Valeur" -#: extra-locales/chimere/models.py:699 +#: extra-locales/chimere/models.py:741 msgid "Property" msgstr "Propriété" -#: extra-locales/chimere/views.py:237 +#: extra-locales/chimere/views.py:249 msgid "Bad file. Please check it with an external software." msgstr "Fichier incohérent. Merci de le vérifier avec un logiciel externe." -#: extra-locales/chimere/views.py:353 +#: extra-locales/chimere/views.py:365 msgid "Comments/request on the map" msgstr "Commentaires/requètes sur la carte" -#: extra-locales/chimere/views.py:356 +#: extra-locales/chimere/views.py:368 msgid "" "Thank you for your contribution. It will be taken into account. If you have " "left your email you may be contacted soon for more details." @@ -362,11 +370,11 @@ msgstr "" "laissé votre courriel vous serez peut-être contacté bientôt pour plus de " "détails." -#: extra-locales/chimere/views.py:360 +#: extra-locales/chimere/views.py:372 msgid "Temporary error. Renew your message later." msgstr "Erreur temporaire. Réenvoyez votre message plus tard." -#: extra-locales/chimere/views.py:481 +#: extra-locales/chimere/views.py:493 msgid "No category available in this area." msgstr "Pas de catégorie disponible sur cette zone." @@ -549,7 +557,7 @@ msgstr "Point" msgid "Select a location for this new site" msgstr "Choisissez une localisation pour ce nouveau site" -#: extra-locales/chimere/templates/chimere/edit.html:69 +#: extra-locales/chimere/templates/chimere/edit.html:68 #: extra-locales/chimere/templates/chimere/edit_route.html:70 msgid "Propose" msgstr "Proposez" -- cgit v1.2.3 From e79bd532cc50dd4f6f465d4afd12617b86046f83 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 10 Mar 2012 00:07:27 +0100 Subject: Reorganize fixtures --- fixtures/initial_data.json | 853 +++++++++++++++++++++++++++++++++++++++++++++ settings.py.example | 3 +- 2 files changed, 855 insertions(+), 1 deletion(-) create mode 100644 fixtures/initial_data.json diff --git a/fixtures/initial_data.json b/fixtures/initial_data.json new file mode 100644 index 0000000..814e8e0 --- /dev/null +++ b/fixtures/initial_data.json @@ -0,0 +1,853 @@ +[ + { + "pk": 20, + "model": "contenttypes.contenttype", + "fields": { + "model": "area", + "name": "Area", + "app_label": "chimere" + } + }, + { + "pk": 14, + "model": "contenttypes.contenttype", + "fields": { + "model": "category", + "name": "Category", + "app_label": "chimere" + } + }, + { + "pk": 13, + "model": "contenttypes.contenttype", + "fields": { + "model": "color", + "name": "Color", + "app_label": "chimere" + } + }, + { + "pk": 12, + "model": "contenttypes.contenttype", + "fields": { + "model": "colortheme", + "name": "Color theme", + "app_label": "chimere" + } + }, + { + "pk": 6, + "model": "contenttypes.contenttype", + "fields": { + "model": "contenttype", + "name": "content type", + "app_label": "contenttypes" + } + }, + { + "pk": 2, + "model": "contenttypes.contenttype", + "fields": { + "model": "group", + "name": "group", + "app_label": "auth" + } + }, + { + "pk": 15, + "model": "contenttypes.contenttype", + "fields": { + "model": "icon", + "name": "Icon", + "app_label": "chimere" + } + }, + { + "pk": 5, + "model": "contenttypes.contenttype", + "fields": { + "model": "logentry", + "name": "log entry", + "app_label": "admin" + } + }, + { + "pk": 4, + "model": "contenttypes.contenttype", + "fields": { + "model": "message", + "name": "message", + "app_label": "auth" + } + }, + { + "pk": 9, + "model": "contenttypes.contenttype", + "fields": { + "model": "migrationhistory", + "name": "migration history", + "app_label": "south" + } + }, + { + "pk": 10, + "model": "contenttypes.contenttype", + "fields": { + "model": "news", + "name": "News", + "app_label": "chimere" + } + }, + { + "pk": 1, + "model": "contenttypes.contenttype", + "fields": { + "model": "permission", + "name": "permission", + "app_label": "auth" + } + }, + { + "pk": 17, + "model": "contenttypes.contenttype", + "fields": { + "model": "marker", + "name": "Point of interest", + "app_label": "chimere" + } + }, + { + "pk": 22, + "model": "contenttypes.contenttype", + "fields": { + "model": "property", + "name": "Property", + "app_label": "chimere" + } + }, + { + "pk": 21, + "model": "contenttypes.contenttype", + "fields": { + "model": "propertymodel", + "name": "Property model", + "app_label": "chimere" + } + }, + { + "pk": 19, + "model": "contenttypes.contenttype", + "fields": { + "model": "route", + "name": "Route", + "app_label": "chimere" + } + }, + { + "pk": 18, + "model": "contenttypes.contenttype", + "fields": { + "model": "routefile", + "name": "Route file", + "app_label": "chimere" + } + }, + { + "pk": 7, + "model": "contenttypes.contenttype", + "fields": { + "model": "session", + "name": "session", + "app_label": "sessions" + } + }, + { + "pk": 8, + "model": "contenttypes.contenttype", + "fields": { + "model": "site", + "name": "site", + "app_label": "sites" + } + }, + { + "pk": 16, + "model": "contenttypes.contenttype", + "fields": { + "model": "subcategory", + "name": "Subcategory", + "app_label": "chimere" + } + }, + { + "pk": 11, + "model": "contenttypes.contenttype", + "fields": { + "model": "tinyurl", + "name": "TinyUrl", + "app_label": "chimere" + } + }, + { + "pk": 3, + "model": "contenttypes.contenttype", + "fields": { + "model": "user", + "name": "user", + "app_label": "auth" + } + }, + { + "pk": 1, + "model": "sites.site", + "fields": { + "domain": "example.com", + "name": "example.com" + } + }, + { + "pk": 13, + "model": "auth.permission", + "fields": { + "codename": "add_logentry", + "name": "Can add log entry", + "content_type": 5 + } + }, + { + "pk": 14, + "model": "auth.permission", + "fields": { + "codename": "change_logentry", + "name": "Can change log entry", + "content_type": 5 + } + }, + { + "pk": 15, + "model": "auth.permission", + "fields": { + "codename": "delete_logentry", + "name": "Can delete log entry", + "content_type": 5 + } + }, + { + "pk": 4, + "model": "auth.permission", + "fields": { + "codename": "add_group", + "name": "Can add group", + "content_type": 2 + } + }, + { + "pk": 5, + "model": "auth.permission", + "fields": { + "codename": "change_group", + "name": "Can change group", + "content_type": 2 + } + }, + { + "pk": 6, + "model": "auth.permission", + "fields": { + "codename": "delete_group", + "name": "Can delete group", + "content_type": 2 + } + }, + { + "pk": 10, + "model": "auth.permission", + "fields": { + "codename": "add_message", + "name": "Can add message", + "content_type": 4 + } + }, + { + "pk": 11, + "model": "auth.permission", + "fields": { + "codename": "change_message", + "name": "Can change message", + "content_type": 4 + } + }, + { + "pk": 12, + "model": "auth.permission", + "fields": { + "codename": "delete_message", + "name": "Can delete message", + "content_type": 4 + } + }, + { + "pk": 1, + "model": "auth.permission", + "fields": { + "codename": "add_permission", + "name": "Can add permission", + "content_type": 1 + } + }, + { + "pk": 2, + "model": "auth.permission", + "fields": { + "codename": "change_permission", + "name": "Can change permission", + "content_type": 1 + } + }, + { + "pk": 3, + "model": "auth.permission", + "fields": { + "codename": "delete_permission", + "name": "Can delete permission", + "content_type": 1 + } + }, + { + "pk": 7, + "model": "auth.permission", + "fields": { + "codename": "add_user", + "name": "Can add user", + "content_type": 3 + } + }, + { + "pk": 8, + "model": "auth.permission", + "fields": { + "codename": "change_user", + "name": "Can change user", + "content_type": 3 + } + }, + { + "pk": 9, + "model": "auth.permission", + "fields": { + "codename": "delete_user", + "name": "Can delete user", + "content_type": 3 + } + }, + { + "pk": 58, + "model": "auth.permission", + "fields": { + "codename": "add_area", + "name": "Can add Area", + "content_type": 20 + } + }, + { + "pk": 59, + "model": "auth.permission", + "fields": { + "codename": "change_area", + "name": "Can change Area", + "content_type": 20 + } + }, + { + "pk": 60, + "model": "auth.permission", + "fields": { + "codename": "delete_area", + "name": "Can delete Area", + "content_type": 20 + } + }, + { + "pk": 40, + "model": "auth.permission", + "fields": { + "codename": "add_route", + "name": "Can add Route", + "content_type": 14 + } + }, + { + "pk": 41, + "model": "auth.permission", + "fields": { + "codename": "change_route", + "name": "Can change Route", + "content_type": 14 + } + }, + { + "pk": 42, + "model": "auth.permission", + "fields": { + "codename": "delete_route", + "name": "Can delete Route", + "content_type": 14 + } + }, + { + "pk": 37, + "model": "auth.permission", + "fields": { + "codename": "add_marker", + "name": "Can add Point of interest", + "content_type": 13 + } + }, + { + "pk": 38, + "model": "auth.permission", + "fields": { + "codename": "change_marker", + "name": "Can change Point of interest", + "content_type": 13 + } + }, + { + "pk": 39, + "model": "auth.permission", + "fields": { + "codename": "delete_marker", + "name": "Can delete Point of interest", + "content_type": 13 + } + }, + { + "pk": 34, + "model": "auth.permission", + "fields": { + "codename": "add_subcategory", + "name": "Can add Subcategory", + "content_type": 12 + } + }, + { + "pk": 35, + "model": "auth.permission", + "fields": { + "codename": "change_subcategory", + "name": "Can change Subcategory", + "content_type": 12 + } + }, + { + "pk": 36, + "model": "auth.permission", + "fields": { + "codename": "delete_subcategory", + "name": "Can delete Subcategory", + "content_type": 12 + } + }, + { + "pk": 43, + "model": "auth.permission", + "fields": { + "codename": "add_area", + "name": "Can add Area", + "content_type": 15 + } + }, + { + "pk": 44, + "model": "auth.permission", + "fields": { + "codename": "change_area", + "name": "Can change Area", + "content_type": 15 + } + }, + { + "pk": 45, + "model": "auth.permission", + "fields": { + "codename": "delete_area", + "name": "Can delete Area", + "content_type": 15 + } + }, + { + "pk": 49, + "model": "auth.permission", + "fields": { + "codename": "add_property", + "name": "Can add Property", + "content_type": 17 + } + }, + { + "pk": 50, + "model": "auth.permission", + "fields": { + "codename": "change_property", + "name": "Can change Property", + "content_type": 17 + } + }, + { + "pk": 51, + "model": "auth.permission", + "fields": { + "codename": "delete_property", + "name": "Can delete Property", + "content_type": 17 + } + }, + { + "pk": 28, + "model": "auth.permission", + "fields": { + "codename": "add_category", + "name": "Can add Category", + "content_type": 10 + } + }, + { + "pk": 29, + "model": "auth.permission", + "fields": { + "codename": "change_category", + "name": "Can change Category", + "content_type": 10 + } + }, + { + "pk": 30, + "model": "auth.permission", + "fields": { + "codename": "delete_category", + "name": "Can delete Category", + "content_type": 10 + } + }, + { + "pk": 64, + "model": "auth.permission", + "fields": { + "codename": "add_property", + "name": "Can add Property", + "content_type": 22 + } + }, + { + "pk": 65, + "model": "auth.permission", + "fields": { + "codename": "change_property", + "name": "Can change Property", + "content_type": 22 + } + }, + { + "pk": 66, + "model": "auth.permission", + "fields": { + "codename": "delete_property", + "name": "Can delete Property", + "content_type": 22 + } + }, + { + "pk": 61, + "model": "auth.permission", + "fields": { + "codename": "add_propertymodel", + "name": "Can add Property model", + "content_type": 21 + } + }, + { + "pk": 62, + "model": "auth.permission", + "fields": { + "codename": "change_propertymodel", + "name": "Can change Property model", + "content_type": 21 + } + }, + { + "pk": 63, + "model": "auth.permission", + "fields": { + "codename": "delete_propertymodel", + "name": "Can delete Property model", + "content_type": 21 + } + }, + { + "pk": 55, + "model": "auth.permission", + "fields": { + "codename": "add_route", + "name": "Can add Route", + "content_type": 19 + } + }, + { + "pk": 56, + "model": "auth.permission", + "fields": { + "codename": "change_route", + "name": "Can change Route", + "content_type": 19 + } + }, + { + "pk": 57, + "model": "auth.permission", + "fields": { + "codename": "delete_route", + "name": "Can delete Route", + "content_type": 19 + } + }, + { + "pk": 52, + "model": "auth.permission", + "fields": { + "codename": "add_routefile", + "name": "Can add Route file", + "content_type": 18 + } + }, + { + "pk": 53, + "model": "auth.permission", + "fields": { + "codename": "change_routefile", + "name": "Can change Route file", + "content_type": 18 + } + }, + { + "pk": 54, + "model": "auth.permission", + "fields": { + "codename": "delete_routefile", + "name": "Can delete Route file", + "content_type": 18 + } + }, + { + "pk": 46, + "model": "auth.permission", + "fields": { + "codename": "add_propertymodel", + "name": "Can add Property model", + "content_type": 16 + } + }, + { + "pk": 47, + "model": "auth.permission", + "fields": { + "codename": "change_propertymodel", + "name": "Can change Property model", + "content_type": 16 + } + }, + { + "pk": 48, + "model": "auth.permission", + "fields": { + "codename": "delete_propertymodel", + "name": "Can delete Property model", + "content_type": 16 + } + }, + { + "pk": 31, + "model": "auth.permission", + "fields": { + "codename": "add_icon", + "name": "Can add Icon", + "content_type": 11 + } + }, + { + "pk": 32, + "model": "auth.permission", + "fields": { + "codename": "change_icon", + "name": "Can change Icon", + "content_type": 11 + } + }, + { + "pk": 33, + "model": "auth.permission", + "fields": { + "codename": "delete_icon", + "name": "Can delete Icon", + "content_type": 11 + } + }, + { + "pk": 16, + "model": "auth.permission", + "fields": { + "codename": "add_contenttype", + "name": "Can add content type", + "content_type": 6 + } + }, + { + "pk": 17, + "model": "auth.permission", + "fields": { + "codename": "change_contenttype", + "name": "Can change content type", + "content_type": 6 + } + }, + { + "pk": 18, + "model": "auth.permission", + "fields": { + "codename": "delete_contenttype", + "name": "Can delete content type", + "content_type": 6 + } + }, + { + "pk": 19, + "model": "auth.permission", + "fields": { + "codename": "add_session", + "name": "Can add session", + "content_type": 7 + } + }, + { + "pk": 20, + "model": "auth.permission", + "fields": { + "codename": "change_session", + "name": "Can change session", + "content_type": 7 + } + }, + { + "pk": 21, + "model": "auth.permission", + "fields": { + "codename": "delete_session", + "name": "Can delete session", + "content_type": 7 + } + }, + { + "pk": 22, + "model": "auth.permission", + "fields": { + "codename": "add_site", + "name": "Can add site", + "content_type": 8 + } + }, + { + "pk": 23, + "model": "auth.permission", + "fields": { + "codename": "change_site", + "name": "Can change site", + "content_type": 8 + } + }, + { + "pk": 24, + "model": "auth.permission", + "fields": { + "codename": "delete_site", + "name": "Can delete site", + "content_type": 8 + } + }, + { + "pk": 25, + "model": "auth.permission", + "fields": { + "codename": "add_news", + "name": "Can add News", + "content_type": 9 + } + }, + { + "pk": 26, + "model": "auth.permission", + "fields": { + "codename": "change_news", + "name": "Can change News", + "content_type": 9 + } + }, + { + "pk": 27, + "model": "auth.permission", + "fields": { + "codename": "delete_news", + "name": "Can delete News", + "content_type": 9 + } + }, + { + "pk": 1, + "model": "auth.group", + "fields": { + "name": "Moderator", + "permissions": [ + 40, + 41, + 42, + 37, + 38, + 39, + 49, + 50, + 51 + ] + } + }, + { + "pk": 2, + "model": "auth.group", + "fields": { + "name": "Application administrator", + "permissions": [ + 40, + 41, + 42, + 37, + 38, + 39, + 34, + 35, + 36, + 43, + 44, + 45, + 49, + 50, + 51, + 28, + 29, + 30, + 31, + 32, + 33, + 25, + 26, + 27 + ] + } + } +] diff --git a/settings.py.example b/settings.py.example index 6cef223..908dbe1 100644 --- a/settings.py.example +++ b/settings.py.example @@ -7,6 +7,7 @@ import os PROJECT_NAME = u'Chimère' ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" +SERVER_URL = 'http://www.mydomain.com/' EXTRA_URL = 'chimere/' BASE_URL = SERVER_URL + EXTRA_URL EMAIL_HOST = 'localhost' @@ -188,7 +189,7 @@ if 'chimere_rss' in INSTALLED_APPS: LOGGING = {'version': 1, 'disable_existing_loggers': False, 'handlers': { - /# Include the default Django email handler for errors + # Include the default Django email handler for errors # This is what you'd get without configuring logging at all. 'mail_admins': { 'class': 'django.utils.log.AdminEmailHandler', -- cgit v1.2.3 From 0b06bbb3eab50d54609cdb6c43814ef31928950b Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 10 Mar 2012 12:31:58 +0100 Subject: Update documentation --- settings.py.example | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/settings.py.example b/settings.py.example index 908dbe1..947d46b 100644 --- a/settings.py.example +++ b/settings.py.example @@ -129,7 +129,8 @@ SHARE_NETWORKS = ( # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a # trailing slash. # Examples: "http://foo.com/media/", "/media/". -ADMIN_MEDIA_PREFIX = '/' + EXTRA_URL + '/admin-media/' +ADMIN_MEDIA_PREFIX = '/' if EXTRA_URL else '' +ADMIN_MEDIA_PREFIX += EXTRA_URL + '/admin-media/' # Make this unique, and don't share it with anybody. SECRET_KEY = 'achanger_!ToChange!' -- cgit v1.2.3 From b4ee429a764458d050a136a976b78de3827608f8 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 10 Mar 2012 18:54:18 +0100 Subject: Correct bad parameters --- settings.py.example | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/settings.py.example b/settings.py.example index 947d46b..bac0369 100644 --- a/settings.py.example +++ b/settings.py.example @@ -11,7 +11,8 @@ SERVER_URL = 'http://www.mydomain.com/' EXTRA_URL = 'chimere/' BASE_URL = SERVER_URL + EXTRA_URL EMAIL_HOST = 'localhost' -STATIC_URL = '/static/' +STATIC_URL = '/' + EXTRA_URL + 'staticfiles/' +STATIC_ROOT = ROOT_PATH + 'static/' TINYMCE_URL = '/tinymce/' JQUERY_JS_URLS = ('/javascript/jquery/jquery.js', @@ -108,11 +109,11 @@ USE_L10N = True # Absolute path to the directory that holds media. # Example: "/home/media/media.lawrence.com/" -MEDIA_ROOT = ROOT_PATH + 'static/' +MEDIA_ROOT = ROOT_PATH + 'media/' # URL that handles the media served from MEDIA_ROOT. # Example: "http://media.lawrence.com" -MEDIA_URL = '/' + EXTRA_URL + 'static/' +MEDIA_URL = '/' + EXTRA_URL + 'media/' # share with SHARE_NETWORKS = ( -- cgit v1.2.3 From dff1c99d55a64d1d44233b6cec9a2c6c4e2387a7 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 10 Mar 2012 19:21:42 +0100 Subject: Add distinct media paths --- media/icons/marker.png | Bin 0 -> 606 bytes media/icons/readme | 1 + media/pictures/readme | 1 + media/route_files/readme | 1 + static/icons/marker.png | Bin 606 -> 0 bytes 5 files changed, 3 insertions(+) create mode 100755 media/icons/marker.png create mode 100644 media/icons/readme create mode 100644 media/pictures/readme create mode 100644 media/route_files/readme delete mode 100755 static/icons/marker.png diff --git a/media/icons/marker.png b/media/icons/marker.png new file mode 100755 index 0000000..ccd1913 Binary files /dev/null and b/media/icons/marker.png differ diff --git a/media/icons/readme b/media/icons/readme new file mode 100644 index 0000000..560759a --- /dev/null +++ b/media/icons/readme @@ -0,0 +1 @@ +Icons are stored here diff --git a/media/pictures/readme b/media/pictures/readme new file mode 100644 index 0000000..c0d20b7 --- /dev/null +++ b/media/pictures/readme @@ -0,0 +1 @@ +Pictures are stored here diff --git a/media/route_files/readme b/media/route_files/readme new file mode 100644 index 0000000..90d72ab --- /dev/null +++ b/media/route_files/readme @@ -0,0 +1 @@ +Route files are stored here diff --git a/static/icons/marker.png b/static/icons/marker.png deleted file mode 100755 index ccd1913..0000000 Binary files a/static/icons/marker.png and /dev/null differ -- cgit v1.2.3 From 2096f50a47215436636ef4196b80d5e81c2bada7 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 10 Mar 2012 19:40:28 +0100 Subject: Correct path for share icons --- settings.py.example | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/settings.py.example b/settings.py.example index bac0369..6da66e1 100644 --- a/settings.py.example +++ b/settings.py.example @@ -118,13 +118,13 @@ MEDIA_URL = '/' + EXTRA_URL + 'media/' # share with SHARE_NETWORKS = ( ("Email", 'mailto:?subject=%(text)s&body=%(url)s', - MEDIA_URL + 'icons/email.png'), + STATIC_URL + 'icons/email.png'), ("Facebook", 'http://www.facebook.com/sharer.php?t=%(text)s&u=%(url)s', - MEDIA_URL + 'icons/facebook.png'), + STATIC_URL + 'icons/facebook.png'), ("Twitter", 'http://twitter.com/home?status=%(text)s %(url)s', - MEDIA_URL + 'icons/twitter.png'), + STATIC_URL + 'icons/twitter.png'), ("Identi.ca", 'http://identi.ca/index.php?action=newnotice&status_textarea=%(text)s %(url)s', - MEDIA_URL + 'icons/identica.png'), + STATIC_URL + 'icons/identica.png'), ) # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a -- cgit v1.2.3 From 69a20baf6b85b4c2bc936ef514e7a58072f92c07 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 12 Mar 2012 12:45:18 +0100 Subject: Correct path and upgrade documentation --- settings.py.example | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/settings.py.example b/settings.py.example index 6da66e1..bbe100b 100644 --- a/settings.py.example +++ b/settings.py.example @@ -11,7 +11,7 @@ SERVER_URL = 'http://www.mydomain.com/' EXTRA_URL = 'chimere/' BASE_URL = SERVER_URL + EXTRA_URL EMAIL_HOST = 'localhost' -STATIC_URL = '/' + EXTRA_URL + 'staticfiles/' +STATIC_URL = '/' + EXTRA_URL + 'static/' STATIC_ROOT = ROOT_PATH + 'static/' TINYMCE_URL = '/tinymce/' @@ -55,10 +55,10 @@ CHIMERE_CSS_AREAS = True # the database CHIMERE_DAYS_BEFORE_EVENT = 30 -CHIMERE_ICON_WIDTH = 34 -CHIMERE_ICON_HEIGHT = 38 -CHIMERE_ICON_OFFSET_X = -17 -CHIMERE_ICON_OFFSET_Y = -38 +CHIMERE_ICON_WIDTH = 21 +CHIMERE_ICON_HEIGHT = 25 +CHIMERE_ICON_OFFSET_X = -10 +CHIMERE_ICON_OFFSET_Y = -25 # default id category to check on the map CHIMERE_DEFAULT_CATEGORIES = [1] -- cgit v1.2.3 From 4a05733a15d51a253ff114948bb24885f689b105 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 17 Mar 2012 00:49:22 +0100 Subject: Add import task using celery --- settings.py.example | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/settings.py.example b/settings.py.example index bbe100b..9b3235b 100644 --- a/settings.py.example +++ b/settings.py.example @@ -88,6 +88,15 @@ DATABASES = { }, } +# celery +import djcelery +djcelery.setup_loader() +BROKER_HOST = "localhost" +BROKER_PORT = 5672 +BROKER_USER = "guest" +BROKER_PASSWORD = "guest" +BROKER_VHOST = "/" + # Local time zone for this installation. Choices can be found here: # http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE # although not all variations may be possible on all operating systems. @@ -177,6 +186,7 @@ INSTALLED_APPS = ( 'django.contrib.sites', 'django.contrib.gis', 'django.contrib.staticfiles', + 'djcelery', 'south', 'chimere', # activate it if you want to use migration scripts -- cgit v1.2.3 From 796416c3a0e20763596badebabd459fa369c79ee Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 17 Mar 2012 20:35:22 +0100 Subject: Import OSM data --- settings.py.example | 2 ++ 1 file changed, 2 insertions(+) diff --git a/settings.py.example b/settings.py.example index 9b3235b..a42a1be 100644 --- a/settings.py.example +++ b/settings.py.example @@ -68,6 +68,8 @@ CHIMERE_DEFAULT_CATEGORIES = [1] #displayOutsideMaxExtent: true, wrapDateLine: true})''' # OSM cyclemap CHIMERE_MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')" # OSM mapnik map +CHIMERE_XAPI_URL = 'http://open.mapquestapi.com/xapi/api/0.6/' + DEBUG = True TEMPLATE_DEBUG = DEBUG -- cgit v1.2.3 From 1822efaf48abf49c0cd9e0e0aae675057ae2980a Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sun, 18 Mar 2012 17:45:26 +0100 Subject: Manage versions on OSM import --- settings.py.example | 3 +++ 1 file changed, 3 insertions(+) diff --git a/settings.py.example b/settings.py.example index a42a1be..dc49768 100644 --- a/settings.py.example +++ b/settings.py.example @@ -69,6 +69,9 @@ CHIMERE_DEFAULT_CATEGORIES = [1] CHIMERE_MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')" # OSM mapnik map CHIMERE_XAPI_URL = 'http://open.mapquestapi.com/xapi/api/0.6/' +CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL +CHIMERE_OSM_USER = 'test' +CHIMERE_OSM_PASSWORD = 'test' DEBUG = True TEMPLATE_DEBUG = DEBUG -- cgit v1.2.3 From 3c793d32ae8c83ae78f8c0b82beb5f09901ac2e4 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 29 Mar 2012 16:55:17 +0200 Subject: Work on OSM export - simplify KML import --- settings.py.example | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/settings.py.example b/settings.py.example index dc49768..d9afa6e 100644 --- a/settings.py.example +++ b/settings.py.example @@ -96,11 +96,12 @@ DATABASES = { # celery import djcelery djcelery.setup_loader() -BROKER_HOST = "localhost" -BROKER_PORT = 5672 -BROKER_USER = "guest" -BROKER_PASSWORD = "guest" -BROKER_VHOST = "/" +BROKER_URL = 'django://' +#BROKER_HOST = "localhost" +#BROKER_PORT = 5672 +#BROKER_USER = "guest" +#BROKER_PASSWORD = "guest" +#BROKER_VHOST = "/" # Local time zone for this installation. Choices can be found here: # http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE @@ -191,6 +192,7 @@ INSTALLED_APPS = ( 'django.contrib.sites', 'django.contrib.gis', 'django.contrib.staticfiles', + 'kombu.transport.django', 'djcelery', 'south', 'chimere', -- cgit v1.2.3 From b657813b37515ed8466d284a1459c16766682333 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 12 Apr 2012 00:07:54 +0200 Subject: Small fixes for django 1.4 --- settings.py.example | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/settings.py.example b/settings.py.example index d9afa6e..f7598bc 100644 --- a/settings.py.example +++ b/settings.py.example @@ -153,8 +153,8 @@ SECRET_KEY = 'achanger_!ToChange!' # List of callables that know how to import templates from various sources. TEMPLATE_LOADERS = ( - 'django.template.loaders.filesystem.load_template_source', - 'django.template.loaders.app_directories.load_template_source', + 'django.template.loaders.filesystem.Loader', + 'django.template.loaders.app_directories.Loader', # 'django.template.loaders.eggs.load_template_source', ) -- cgit v1.2.3 From 03aa94962e9bba881c98df96ad07d3f6d7dcc5ee Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 14 Apr 2012 16:40:10 +0200 Subject: Uses a local_settings.py and put settings.py in VCS --- settings.py | 265 ++++++++++++++++++++++++++++++++++++++++++++++++++++ settings.py.example | 254 ------------------------------------------------- 2 files changed, 265 insertions(+), 254 deletions(-) create mode 100644 settings.py delete mode 100644 settings.py.example diff --git a/settings.py b/settings.py new file mode 100644 index 0000000..bed2540 --- /dev/null +++ b/settings.py @@ -0,0 +1,265 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +# overload all theses settings in your local_settings.py file + +import os + +# Django settings for chimere project. +PROJECT_NAME = u'Chimère' +ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" + +SERVER_URL = 'http://www.mydomain.com/' +EXTRA_URL = 'chimere/' +BASE_URL = SERVER_URL + EXTRA_URL +EMAIL_HOST = 'localhost' +STATIC_URL = '/' + EXTRA_URL + 'static/' +STATIC_ROOT = ROOT_PATH + 'static/' + +TINYMCE_URL = '/tinymce/' +JQUERY_JS_URLS = ('/javascript/jquery/jquery.js', + '/javascript/jquery-ui/jquery-ui.js',) +JQUERY_CSS_URLS = ('/javascript/jquery-ui/css/smoothness/jquery-ui.css', + '/javascript/jquery-ui-themes/base/jquery.ui.all.css') + +OSM_CSS_URLS = ["http://www.openlayers.org/api/theme/default/style.css"] +OSM_JS_URLS = [STATIC_URL + "chimere/js/OpenLayers.js", + "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] + +GPSBABEL = '/usr/bin/gpsbabel' +GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an + # error of 5 meters +#GPSBABEL_OPTIONS = 'simplify,count=100' + +## chimere specific ## +CHIMERE_DEFAULT_ZOOM = 10 +# center of the map +CHIMERE_DEFAULT_CENTER = (-1.679444, 48.114722) +# projection used by the main map +# most public map providers use spherical mercator : 900913 +CHIMERE_EPSG_PROJECTION = 900913 +# projection displayed to the end user by openlayers +# chimere use the same projection to save its data in the database +CHIMERE_EPSG_DISPLAY_PROJECTION = 4326 +# to restrict the map to a defined bounding box set it here +# (left, bottom, right, top) +CHIMERE_RESTRICTED_EXTENT = None +# dynamic load of categories on the main map +CHIMERE_DYNAMIC_CATEGORIES = False +# display of shortcuts for areas +CHIMERE_DISPLAY_AREAS = True +# specific css for areas +CHIMERE_CSS_AREAS = True +# number of day before an event to display +# if equal to 0: disable event management +# if you change this value from 0 to a value in a production environnement +# don't forget to run the upgrade.py script to create appropriate fields in +# the database +CHIMERE_DAYS_BEFORE_EVENT = 30 + +CHIMERE_ICON_WIDTH = 21 +CHIMERE_ICON_HEIGHT = 25 +CHIMERE_ICON_OFFSET_X = -10 +CHIMERE_ICON_OFFSET_Y = -25 + +# default id category to check on the map +CHIMERE_DEFAULT_CATEGORIES = [1] + +# display picture inside the description by default or inside a galery? +CHIMERE_MINIATURE_BY_DEFAULT = False + +# JS definition of the main map cf. OpenLayers documentation for more details +#MAP_LAYER = '''new OpenLayers.Layer.OSM.CycleMap("Cycle map", { +#displayOutsideMaxExtent: true, wrapDateLine: true})''' # OSM cyclemap +CHIMERE_MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')" # OSM mapnik map + +CHIMERE_XAPI_URL = 'http://open.mapquestapi.com/xapi/api/0.6/' +CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL +CHIMERE_OSM_USER = 'test' +CHIMERE_OSM_PASSWORD = 'test' + +DEBUG = True +TEMPLATE_DEBUG = DEBUG + +ADMINS = ( + # ('Your Name', 'your_email@domain.com'), +) + +MANAGERS = ADMINS + +DATABASES = { + 'default': { + 'NAME': 'ratatouille', + 'ENGINE': 'django.contrib.gis.db.backends.postgis', + 'HOST': 'localhost', + 'PORT': '5432', + 'USER': 'ratatouille', + 'PASSWORD': 'wiki', + }, +} + +# celery +import djcelery +djcelery.setup_loader() +BROKER_URL = 'django://' +#BROKER_HOST = "localhost" +#BROKER_PORT = 5672 +#BROKER_USER = "guest" +#BROKER_PASSWORD = "guest" +#BROKER_VHOST = "/" + +# Local time zone for this installation. Choices can be found here: +# http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE +# although not all variations may be possible on all operating systems. +# If running in a Windows environment this must be set to the same as your +# system time zone. +TIME_ZONE = 'Europe/Paris' + +# Language code for this installation. All choices can be found here: +# http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes +# http://blogs.law.harvard.edu/tech/stories/storyReader$15 +LANGUAGE_CODE = 'fr-fr' + +SITE_ID = 1 + +# If you set this to False, Django will make some optimizations so as not +# to load the internationalization machinery. +USE_I18N = True +USE_L10N = True + +# Absolute path to the directory that holds media. +# Example: "/home/media/media.lawrence.com/" +MEDIA_ROOT = ROOT_PATH + 'media/' + +# URL that handles the media served from MEDIA_ROOT. +# Example: "http://media.lawrence.com" +MEDIA_URL = '/' + EXTRA_URL + 'media/' + +# share with +SHARE_NETWORKS = ( +("Email", 'mailto:?subject=%(text)s&body=%(url)s', + STATIC_URL + 'icons/email.png'), +("Facebook", 'http://www.facebook.com/sharer.php?t=%(text)s&u=%(url)s', + STATIC_URL + 'icons/facebook.png'), +("Twitter", 'http://twitter.com/home?status=%(text)s %(url)s', + STATIC_URL + 'icons/twitter.png'), +("Identi.ca", 'http://identi.ca/index.php?action=newnotice&status_textarea=%(text)s %(url)s', + STATIC_URL + 'icons/identica.png'), +) + +# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a +# trailing slash. +# Examples: "http://foo.com/media/", "/media/". +ADMIN_MEDIA_PREFIX = '/' if EXTRA_URL else '' +ADMIN_MEDIA_PREFIX += EXTRA_URL + '/admin-media/' + +# Make this unique, and don't share it with anybody. +SECRET_KEY = 'achanger_!ToChange!' + +# List of callables that know how to import templates from various sources. +TEMPLATE_LOADERS = ( + 'django.template.loaders.filesystem.Loader', + 'django.template.loaders.app_directories.Loader', +# 'django.template.loaders.eggs.load_template_source', +) + +MIDDLEWARE_CLASSES = ( + 'django.middleware.common.CommonMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.middleware.doc.XViewMiddleware', +) + +ROOT_URLCONF = 'example_project.urls' + +TEMPLATE_DIRS = [ + # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". + # Always use forward slashes, even on Windows. + # Don't forget to use absolute paths, not relative paths. + ROOT_PATH + 'templates', +] + +TEMPLATE_CONTEXT_PROCESSORS = ( + "django.contrib.auth.context_processors.auth", + "django.core.context_processors.debug", + "django.core.context_processors.i18n", + "django.core.context_processors.media", + "django.core.context_processors.static", + "django.contrib.messages.context_processors.messages", + "django.core.context_processors.request", +) + +INSTALLED_APPS = ( + 'django.contrib.auth', + 'django.contrib.admin', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.sites', + 'django.contrib.gis', + 'django.contrib.staticfiles', + 'kombu.transport.django', + 'djcelery', + 'south', + 'chimere', + # activate it if you want to use migration scripts + #'chimere.scripts', + # activate it if you want to use RSS feeds + 'chimere_rss' +) + +if 'chimere_rss' in INSTALLED_APPS: + TEMPLATE_DIRS.append(ROOT_PATH + 'chimere_rss/templates') + +LOGGING = {'version': 1, + 'disable_existing_loggers': False, + 'handlers': { + # Include the default Django email handler for errors + # This is what you'd get without configuring logging at all. + 'mail_admins': { + 'class': 'django.utils.log.AdminEmailHandler', + 'level': 'ERROR', + # But the emails are plain text by default - HTML is nicer + 'include_html': True, + }, + # Log to a text file that can be rotated by logrotate + 'logfile': { + 'class': 'logging.handlers.WatchedFileHandler', + 'filename': '/var/log/django/chimere.log' + }, + }, + 'loggers': { + # Again, default Django configuration to email unhandled exceptions + 'django.request': { + 'handlers': ['mail_admins'], + 'level': 'ERROR', + 'propagate': True, + }, + # Might as well log any errors anywhere else in Django + 'django': { + 'handlers': ['logfile'], + 'level': 'ERROR', + 'propagate': False, + }, + # Your own app - this assumes all your logger names start with "myapp." + 'main': { + 'handlers': ['logfile'], + 'level': 'WARNING', # Or maybe INFO or DEBUG + 'propogate': False + }, + }, +} + +TEMPLATE_CONTEXT_PROCESSORS = ( + 'django.core.context_processors.debug', + 'django.core.context_processors.i18n', + 'django.core.context_processors.media', + 'django.core.context_processors.static', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', +) + +try: + from local_settings import * +except ImportError, e: + print 'Unable to load local_settings.py:', e + diff --git a/settings.py.example b/settings.py.example deleted file mode 100644 index f7598bc..0000000 --- a/settings.py.example +++ /dev/null @@ -1,254 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- - -import os - -# Django settings for chimere project. -PROJECT_NAME = u'Chimère' -ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" - -SERVER_URL = 'http://www.mydomain.com/' -EXTRA_URL = 'chimere/' -BASE_URL = SERVER_URL + EXTRA_URL -EMAIL_HOST = 'localhost' -STATIC_URL = '/' + EXTRA_URL + 'static/' -STATIC_ROOT = ROOT_PATH + 'static/' - -TINYMCE_URL = '/tinymce/' -JQUERY_JS_URLS = ('/javascript/jquery/jquery.js', - '/javascript/jquery-ui/jquery-ui.js',) -JQUERY_CSS_URLS = ('/javascript/jquery-ui/css/smoothness/jquery-ui.css', - '/javascript/jquery-ui-themes/base/jquery.ui.all.css') - -OSM_CSS_URLS = ["http://www.openlayers.org/api/theme/default/style.css"] -OSM_JS_URLS = [STATIC_URL + "chimere/js/OpenLayers.js", - "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] - -GPSBABEL = '/usr/bin/gpsbabel' -GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an - # error of 5 meters -#GPSBABEL_OPTIONS = 'simplify,count=100' - -## chimere specific ## -CHIMERE_DEFAULT_ZOOM = 10 -# center of the map -CHIMERE_DEFAULT_CENTER = (-1.679444, 48.114722) -# projection used by the main map -# most public map providers use spherical mercator : 900913 -CHIMERE_EPSG_PROJECTION = 900913 -# projection displayed to the end user by openlayers -# chimere use the same projection to save its data in the database -CHIMERE_EPSG_DISPLAY_PROJECTION = 4326 -# to restrict the map to a defined bounding box set it here -# (left, bottom, right, top) -CHIMERE_RESTRICTED_EXTENT = None -# dynamic load of categories on the main map -CHIMERE_DYNAMIC_CATEGORIES = False -# display of shortcuts for areas -CHIMERE_DISPLAY_AREAS = True -# specific css for areas -CHIMERE_CSS_AREAS = True -# number of day before an event to display -# if equal to 0: disable event management -# if you change this value from 0 to a value in a production environnement -# don't forget to run the upgrade.py script to create appropriate fields in -# the database -CHIMERE_DAYS_BEFORE_EVENT = 30 - -CHIMERE_ICON_WIDTH = 21 -CHIMERE_ICON_HEIGHT = 25 -CHIMERE_ICON_OFFSET_X = -10 -CHIMERE_ICON_OFFSET_Y = -25 - -# default id category to check on the map -CHIMERE_DEFAULT_CATEGORIES = [1] - -# JS definition of the main map cf. OpenLayers documentation for more details -#MAP_LAYER = '''new OpenLayers.Layer.OSM.CycleMap("Cycle map", { -#displayOutsideMaxExtent: true, wrapDateLine: true})''' # OSM cyclemap -CHIMERE_MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')" # OSM mapnik map - -CHIMERE_XAPI_URL = 'http://open.mapquestapi.com/xapi/api/0.6/' -CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL -CHIMERE_OSM_USER = 'test' -CHIMERE_OSM_PASSWORD = 'test' - -DEBUG = True -TEMPLATE_DEBUG = DEBUG - -ADMINS = ( - # ('Your Name', 'your_email@domain.com'), -) - -MANAGERS = ADMINS - -DATABASES = { - 'default': { - 'NAME': 'ratatouille', - 'ENGINE': 'django.contrib.gis.db.backends.postgis', - 'HOST': 'localhost', - 'PORT': '5432', - 'USER': 'ratatouille', - 'PASSWORD': 'wiki', - }, -} - -# celery -import djcelery -djcelery.setup_loader() -BROKER_URL = 'django://' -#BROKER_HOST = "localhost" -#BROKER_PORT = 5672 -#BROKER_USER = "guest" -#BROKER_PASSWORD = "guest" -#BROKER_VHOST = "/" - -# Local time zone for this installation. Choices can be found here: -# http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE -# although not all variations may be possible on all operating systems. -# If running in a Windows environment this must be set to the same as your -# system time zone. -TIME_ZONE = 'Europe/Paris' - -# Language code for this installation. All choices can be found here: -# http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes -# http://blogs.law.harvard.edu/tech/stories/storyReader$15 -LANGUAGE_CODE = 'fr-fr' - -SITE_ID = 1 - -# If you set this to False, Django will make some optimizations so as not -# to load the internationalization machinery. -USE_I18N = True -USE_L10N = True - -# Absolute path to the directory that holds media. -# Example: "/home/media/media.lawrence.com/" -MEDIA_ROOT = ROOT_PATH + 'media/' - -# URL that handles the media served from MEDIA_ROOT. -# Example: "http://media.lawrence.com" -MEDIA_URL = '/' + EXTRA_URL + 'media/' - -# share with -SHARE_NETWORKS = ( -("Email", 'mailto:?subject=%(text)s&body=%(url)s', - STATIC_URL + 'icons/email.png'), -("Facebook", 'http://www.facebook.com/sharer.php?t=%(text)s&u=%(url)s', - STATIC_URL + 'icons/facebook.png'), -("Twitter", 'http://twitter.com/home?status=%(text)s %(url)s', - STATIC_URL + 'icons/twitter.png'), -("Identi.ca", 'http://identi.ca/index.php?action=newnotice&status_textarea=%(text)s %(url)s', - STATIC_URL + 'icons/identica.png'), -) - -# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a -# trailing slash. -# Examples: "http://foo.com/media/", "/media/". -ADMIN_MEDIA_PREFIX = '/' if EXTRA_URL else '' -ADMIN_MEDIA_PREFIX += EXTRA_URL + '/admin-media/' - -# Make this unique, and don't share it with anybody. -SECRET_KEY = 'achanger_!ToChange!' - -# List of callables that know how to import templates from various sources. -TEMPLATE_LOADERS = ( - 'django.template.loaders.filesystem.Loader', - 'django.template.loaders.app_directories.Loader', -# 'django.template.loaders.eggs.load_template_source', -) - -MIDDLEWARE_CLASSES = ( - 'django.middleware.common.CommonMiddleware', - 'django.contrib.sessions.middleware.SessionMiddleware', - 'django.contrib.auth.middleware.AuthenticationMiddleware', - 'django.middleware.doc.XViewMiddleware', -) - -ROOT_URLCONF = 'example_project.urls' - -TEMPLATE_DIRS = [ - # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". - # Always use forward slashes, even on Windows. - # Don't forget to use absolute paths, not relative paths. - ROOT_PATH + 'templates', -] - -TEMPLATE_CONTEXT_PROCESSORS = ( - "django.contrib.auth.context_processors.auth", - "django.core.context_processors.debug", - "django.core.context_processors.i18n", - "django.core.context_processors.media", - "django.core.context_processors.static", - "django.contrib.messages.context_processors.messages", - "django.core.context_processors.request", -) - -INSTALLED_APPS = ( - 'django.contrib.auth', - 'django.contrib.admin', - 'django.contrib.contenttypes', - 'django.contrib.sessions', - 'django.contrib.sites', - 'django.contrib.gis', - 'django.contrib.staticfiles', - 'kombu.transport.django', - 'djcelery', - 'south', - 'chimere', - # activate it if you want to use migration scripts - #'chimere.scripts', - # activate it if you want to use RSS feeds - 'chimere_rss' -) - -if 'chimere_rss' in INSTALLED_APPS: - TEMPLATE_DIRS.append(ROOT_PATH + 'chimere_rss/templates') - -LOGGING = {'version': 1, - 'disable_existing_loggers': False, - 'handlers': { - # Include the default Django email handler for errors - # This is what you'd get without configuring logging at all. - 'mail_admins': { - 'class': 'django.utils.log.AdminEmailHandler', - 'level': 'ERROR', - # But the emails are plain text by default - HTML is nicer - 'include_html': True, - }, - # Log to a text file that can be rotated by logrotate - 'logfile': { - 'class': 'logging.handlers.WatchedFileHandler', - 'filename': '/var/log/django/chimere.log' - }, - }, - 'loggers': { - # Again, default Django configuration to email unhandled exceptions - 'django.request': { - 'handlers': ['mail_admins'], - 'level': 'ERROR', - 'propagate': True, - }, - # Might as well log any errors anywhere else in Django - 'django': { - 'handlers': ['logfile'], - 'level': 'ERROR', - 'propagate': False, - }, - # Your own app - this assumes all your logger names start with "myapp." - 'main': { - 'handlers': ['logfile'], - 'level': 'WARNING', # Or maybe INFO or DEBUG - 'propogate': False - }, - }, -} - -TEMPLATE_CONTEXT_PROCESSORS = ( - 'django.core.context_processors.debug', - 'django.core.context_processors.i18n', - 'django.core.context_processors.media', - 'django.core.context_processors.static', - 'django.contrib.auth.context_processors.auth', - 'django.contrib.messages.context_processors.messages', -) -- cgit v1.2.3 From ec38fbb14ddb13c58c0d5b6f36454d68336caf18 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 17 Apr 2012 01:04:38 +0200 Subject: settings.py reorganization --- settings.py | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/settings.py b/settings.py index bed2540..8bbf3b4 100644 --- a/settings.py +++ b/settings.py @@ -5,6 +5,9 @@ import os +DEBUG = False +TEMPLATE_DEBUG = DEBUG + # Django settings for chimere project. PROJECT_NAME = u'Chimère' ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" @@ -78,9 +81,6 @@ CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL CHIMERE_OSM_USER = 'test' CHIMERE_OSM_PASSWORD = 'test' -DEBUG = True -TEMPLATE_DEBUG = DEBUG - ADMINS = ( # ('Your Name', 'your_email@domain.com'), ) @@ -102,11 +102,6 @@ DATABASES = { import djcelery djcelery.setup_loader() BROKER_URL = 'django://' -#BROKER_HOST = "localhost" -#BROKER_PORT = 5672 -#BROKER_USER = "guest" -#BROKER_PASSWORD = "guest" -#BROKER_VHOST = "/" # Local time zone for this installation. Choices can be found here: # http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE @@ -249,15 +244,6 @@ LOGGING = {'version': 1, }, } -TEMPLATE_CONTEXT_PROCESSORS = ( - 'django.core.context_processors.debug', - 'django.core.context_processors.i18n', - 'django.core.context_processors.media', - 'django.core.context_processors.static', - 'django.contrib.auth.context_processors.auth', - 'django.contrib.messages.context_processors.messages', -) - try: from local_settings import * except ImportError, e: -- cgit v1.2.3 From e3d1445be6e65dadce46a59b9f1340b20a3fbe13 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 17 Apr 2012 01:05:15 +0200 Subject: Work on rss feeds (refs #324) --- urls.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/urls.py b/urls.py index 1f95694..6dc5e32 100644 --- a/urls.py +++ b/urls.py @@ -30,13 +30,14 @@ urlpatterns = patterns('django.views.static', ) urlpatterns += staticfiles_urlpatterns() +if 'chimere_rss' in settings.INSTALLED_APPS: + urlpatterns += patterns('', + url(r'^feeds/', include('chimere_rss.urls', namespace="chimere-rss")),) + urlpatterns += patterns('', (r'^admin/doc/', include('django.contrib.admindocs.urls')), (r'^admin/', include(admin.site.urls)), url(r'^', include('chimere.urls', namespace="chimere")), ) -if 'rss' in settings.INSTALLED_APPS: - urlpatterns += patterns('', - (r'^chimere/rss/', include('rss.urls')),) -- cgit v1.2.3 From 767268f24af65d6b1b790bc52d49c8aa8fcdeabe Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 19 Apr 2012 19:21:15 +0200 Subject: Better management of multimedia files - default field for areas * change picture and multimedia files from many to many to foreign key * adapt the admin to be more efficient with multimedia files * add a default field for areas - only one area can be the default one * add a jquery Chosen widget - currently not used --- settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.py b/settings.py index 8bbf3b4..25e9c51 100644 --- a/settings.py +++ b/settings.py @@ -199,7 +199,7 @@ INSTALLED_APPS = ( # activate it if you want to use migration scripts #'chimere.scripts', # activate it if you want to use RSS feeds - 'chimere_rss' + #'chimere_rss' ) if 'chimere_rss' in INSTALLED_APPS: -- cgit v1.2.3 From 39e6c310908f70c3414611bda9ed46ceacf3358d Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sun, 22 Apr 2012 23:22:25 +0200 Subject: Fix JME load inside description - style improvment --- settings.py | 1 + 1 file changed, 1 insertion(+) diff --git a/settings.py b/settings.py index 25e9c51..71db794 100644 --- a/settings.py +++ b/settings.py @@ -163,6 +163,7 @@ MIDDLEWARE_CLASSES = ( 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.middleware.doc.XViewMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware' ) ROOT_URLCONF = 'example_project.urls' -- cgit v1.2.3 From 6577a08e9f9a573e34c869c1f854772007bc1794 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 4 May 2012 20:29:41 +0200 Subject: Shapefile import --- settings.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/settings.py b/settings.py index 71db794..b0d4188 100644 --- a/settings.py +++ b/settings.py @@ -81,6 +81,9 @@ CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL CHIMERE_OSM_USER = 'test' CHIMERE_OSM_PASSWORD = 'test' +# encoding for shapefile import +CHIMERE_SHAPEFILE_ENCODING = 'ISO-8859-1' + ADMINS = ( # ('Your Name', 'your_email@domain.com'), ) -- cgit v1.2.3 From e302640980079b88d2ea42f4f63500ba756f3e22 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 5 May 2012 21:49:29 +0200 Subject: Manage different and multiple layers in areas (including default) --- settings.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/settings.py b/settings.py index b0d4188..332198e 100644 --- a/settings.py +++ b/settings.py @@ -71,10 +71,10 @@ CHIMERE_DEFAULT_CATEGORIES = [1] # display picture inside the description by default or inside a galery? CHIMERE_MINIATURE_BY_DEFAULT = False -# JS definition of the main map cf. OpenLayers documentation for more details -#MAP_LAYER = '''new OpenLayers.Layer.OSM.CycleMap("Cycle map", { -#displayOutsideMaxExtent: true, wrapDateLine: true})''' # OSM cyclemap -CHIMERE_MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')" # OSM mapnik map +# JS definition of the default map (for admin and when no map are defined in +# the application) +# cf. OpenLayers documentation for more details +CHIMERE_DEFAULT_MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')" # OSM mapnik map CHIMERE_XAPI_URL = 'http://open.mapquestapi.com/xapi/api/0.6/' CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL -- cgit v1.2.3 From cf0c06ff9957fe72f6e7a568e78891280f56a8e3 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 7 May 2012 16:47:58 +0200 Subject: Manage default categories inside admin --- settings.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/settings.py b/settings.py index 332198e..e21cdc6 100644 --- a/settings.py +++ b/settings.py @@ -65,9 +65,6 @@ CHIMERE_ICON_HEIGHT = 25 CHIMERE_ICON_OFFSET_X = -10 CHIMERE_ICON_OFFSET_Y = -25 -# default id category to check on the map -CHIMERE_DEFAULT_CATEGORIES = [1] - # display picture inside the description by default or inside a galery? CHIMERE_MINIATURE_BY_DEFAULT = False -- cgit v1.2.3 From 65fe8956f0226419e877fa8e631defe58bd410f0 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 7 May 2012 18:12:02 +0200 Subject: Manage specific CSS for areas inside admin --- settings.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/settings.py b/settings.py index e21cdc6..43c0b40 100644 --- a/settings.py +++ b/settings.py @@ -51,8 +51,6 @@ CHIMERE_RESTRICTED_EXTENT = None CHIMERE_DYNAMIC_CATEGORIES = False # display of shortcuts for areas CHIMERE_DISPLAY_AREAS = True -# specific css for areas -CHIMERE_CSS_AREAS = True # number of day before an event to display # if equal to 0: disable event management # if you change this value from 0 to a value in a production environnement -- cgit v1.2.3 From 696fa419d598abea388effb4d8898f38a93a17d6 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 8 May 2012 00:16:22 +0200 Subject: Fix share icons --- settings.py | 26 ++++++++++++++------------ static/icons/email.png | Bin 735 -> 0 bytes static/icons/facebook.png | Bin 731 -> 0 bytes static/icons/identica.png | Bin 1373 -> 0 bytes static/icons/twitter.png | Bin 924 -> 0 bytes 5 files changed, 14 insertions(+), 12 deletions(-) delete mode 100644 static/icons/email.png delete mode 100644 static/icons/facebook.png delete mode 100644 static/icons/identica.png delete mode 100644 static/icons/twitter.png diff --git a/settings.py b/settings.py index 43c0b40..9b20a11 100644 --- a/settings.py +++ b/settings.py @@ -128,18 +128,6 @@ MEDIA_ROOT = ROOT_PATH + 'media/' # Example: "http://media.lawrence.com" MEDIA_URL = '/' + EXTRA_URL + 'media/' -# share with -SHARE_NETWORKS = ( -("Email", 'mailto:?subject=%(text)s&body=%(url)s', - STATIC_URL + 'icons/email.png'), -("Facebook", 'http://www.facebook.com/sharer.php?t=%(text)s&u=%(url)s', - STATIC_URL + 'icons/facebook.png'), -("Twitter", 'http://twitter.com/home?status=%(text)s %(url)s', - STATIC_URL + 'icons/twitter.png'), -("Identi.ca", 'http://identi.ca/index.php?action=newnotice&status_textarea=%(text)s %(url)s', - STATIC_URL + 'icons/identica.png'), -) - # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a # trailing slash. # Examples: "http://foo.com/media/", "/media/". @@ -248,3 +236,17 @@ try: except ImportError, e: print 'Unable to load local_settings.py:', e +if 'SHARE_NETWORKS' not in globals(): + # after the locals to get the right STATIC_URL + + # share with + SHARE_NETWORKS = ( + ("Email", 'mailto:?subject=%(text)s&body=%(url)s', + STATIC_URL + 'chimere/img/email.png'), + ("Facebook", 'http://www.facebook.com/sharer.php?t=%(text)s&u=%(url)s', + STATIC_URL + 'chimere/img/facebook.png'), + ("Twitter", 'http://twitter.com/home?status=%(text)s %(url)s', + STATIC_URL + 'chimere/img/twitter.png'), + ("Identi.ca", 'http://identi.ca/index.php?action=newnotice&status_textarea=%(text)s %(url)s', + STATIC_URL + 'chimere/img/identica.png'), + ) diff --git a/static/icons/email.png b/static/icons/email.png deleted file mode 100644 index 1a0a014..0000000 Binary files a/static/icons/email.png and /dev/null differ diff --git a/static/icons/facebook.png b/static/icons/facebook.png deleted file mode 100644 index 8036b19..0000000 Binary files a/static/icons/facebook.png and /dev/null differ diff --git a/static/icons/identica.png b/static/icons/identica.png deleted file mode 100644 index a9625d1..0000000 Binary files a/static/icons/identica.png and /dev/null differ diff --git a/static/icons/twitter.png b/static/icons/twitter.png deleted file mode 100644 index 295767a..0000000 Binary files a/static/icons/twitter.png and /dev/null differ -- cgit v1.2.3 From b0545c9f0421458f2dd5cc347f984fa862dd56fa Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 8 May 2012 13:07:49 +0200 Subject: Fix restricted extent - Add restricted extent to area admin --- settings.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/settings.py b/settings.py index 9b20a11..ddd8261 100644 --- a/settings.py +++ b/settings.py @@ -44,9 +44,6 @@ CHIMERE_EPSG_PROJECTION = 900913 # projection displayed to the end user by openlayers # chimere use the same projection to save its data in the database CHIMERE_EPSG_DISPLAY_PROJECTION = 4326 -# to restrict the map to a defined bounding box set it here -# (left, bottom, right, top) -CHIMERE_RESTRICTED_EXTENT = None # dynamic load of categories on the main map CHIMERE_DYNAMIC_CATEGORIES = False # display of shortcuts for areas -- cgit v1.2.3 From 5301354f3623de398b8f2a3b93342cc31e5128e1 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 9 May 2012 13:38:46 +0200 Subject: Update french translation --- locale/fr/LC_MESSAGES/django.po | 532 +++++++++++++++++++++++++++++----------- 1 file changed, 383 insertions(+), 149 deletions(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 0b990f0..00660a9 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: 0.2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-03-09 17:54+0100\n" +"POT-Creation-Date: 2012-05-09 09:31+0200\n" "PO-Revision-Date: 2010-03-20 20:00+0100\n" "Last-Translator: Étienne Loks \n" "MIME-Version: 1.0\n" @@ -46,6 +46,35 @@ msgstr "Flux RSS" msgid "Contact us" msgstr "Nous contacter" +#: extra-locales/chimere/admin.py:58 +#: extra-locales/chimere_rss/templates/rss.html:66 +msgid "Validate" +msgstr "Valider" + +#: extra-locales/chimere/admin.py:69 +msgid "Export to KML" +msgstr "Exporter en KML" + +#: extra-locales/chimere/admin.py:83 +msgid "Export to Shapefile" +msgstr "Exporter en Shapefile" + +#: extra-locales/chimere/admin.py:169 +msgid "Import" +msgstr "Import" + +#: extra-locales/chimere/admin.py:175 +msgid "Cancel import" +msgstr "Annuler l'import" + +#: extra-locales/chimere/admin.py:181 +msgid "Cancel export" +msgstr "Annuler l'export" + +#: extra-locales/chimere/admin.py:189 +msgid "Export to osm" +msgstr "Exporter vers osm" + #: extra-locales/chimere/forms.py:75 msgid "New submission for" msgstr "Nouvelle proposition pour" @@ -67,301 +96,492 @@ msgstr "Courriel (optionnel) " msgid "Object" msgstr "Objet" -#: extra-locales/chimere/forms.py:141 +#: extra-locales/chimere/forms.py:145 msgid "End date has been set with no start date" msgstr "Une date de fin a été donnée sans date de début" -#: extra-locales/chimere/forms.py:226 extra-locales/chimere/models.py:132 -#: extra-locales/chimere/models.py:362 extra-locales/chimere/models.py:429 -#: extra-locales/chimere/models.py:503 +#: extra-locales/chimere/forms.py:233 extra-locales/chimere/models.py:135 +#: extra-locales/chimere/models.py:429 extra-locales/chimere/models.py:513 +#: extra-locales/chimere/models.py:602 #: extra-locales/chimere/templates/chimere/edit_route.html:41 msgid "Image" msgstr "Image" -#: extra-locales/chimere/forms.py:340 +#: extra-locales/chimere/forms.py:345 msgid "File" msgstr "Fichier" -#: extra-locales/chimere/forms.py:346 +#: extra-locales/chimere/forms.py:351 msgid "Bad file format: this must be a GPX or KML file" msgstr "Mauvais format de fichier : KML et GPX sont supportés" -#: extra-locales/chimere/forms.py:351 extra-locales/chimere/models.py:44 -#: extra-locales/chimere/models.py:97 extra-locales/chimere/models.py:118 -#: extra-locales/chimere/models.py:131 extra-locales/chimere/models.py:145 -#: extra-locales/chimere/models.py:193 extra-locales/chimere/models.py:366 -#: extra-locales/chimere/models.py:405 extra-locales/chimere/models.py:428 -#: extra-locales/chimere/models.py:440 extra-locales/chimere/models.py:668 -#: extra-locales/chimere/models.py:710 +#: extra-locales/chimere/forms.py:356 extra-locales/chimere/models.py:47 +#: extra-locales/chimere/models.py:100 extra-locales/chimere/models.py:121 +#: extra-locales/chimere/models.py:134 extra-locales/chimere/models.py:148 +#: extra-locales/chimere/models.py:230 extra-locales/chimere/models.py:433 +#: extra-locales/chimere/models.py:472 extra-locales/chimere/models.py:512 +#: extra-locales/chimere/models.py:539 extra-locales/chimere/models.py:774 +#: extra-locales/chimere/models.py:786 extra-locales/chimere/models.py:866 msgid "Name" msgstr "Nom" -#: extra-locales/chimere/forms.py:360 extra-locales/chimere/models.py:684 +#: extra-locales/chimere/forms.py:365 extra-locales/chimere/models.py:818 msgid "Area" msgstr "Zone" -#: extra-locales/chimere/models.py:45 extra-locales/chimere/models.py:119 -#: extra-locales/chimere/models.py:146 extra-locales/chimere/models.py:202 -#: extra-locales/chimere/models.py:370 extra-locales/chimere/models.py:672 -#: extra-locales/chimere/models.py:712 +#: extra-locales/chimere/models.py:48 extra-locales/chimere/models.py:122 +#: extra-locales/chimere/models.py:149 extra-locales/chimere/models.py:239 +#: extra-locales/chimere/models.py:437 extra-locales/chimere/models.py:792 +#: extra-locales/chimere/models.py:868 msgid "Available" msgstr "Disponible" -#: extra-locales/chimere/models.py:46 +#: extra-locales/chimere/models.py:49 msgid "Date" msgstr "Date" -#: extra-locales/chimere/models.py:52 extra-locales/chimere/models.py:53 +#: extra-locales/chimere/models.py:55 extra-locales/chimere/models.py:56 #: extra-locales/chimere/templates/chimere/blocks/welcome.html:5 msgid "News" msgstr "Nouvelle" -#: extra-locales/chimere/models.py:58 +#: extra-locales/chimere/models.py:61 msgid "Parameters" msgstr "Paramètres" -#: extra-locales/chimere/models.py:62 +#: extra-locales/chimere/models.py:65 msgid "TinyUrl" msgstr "Mini-url" -#: extra-locales/chimere/models.py:101 extra-locales/chimere/models.py:108 -#: extra-locales/chimere/models.py:149 +#: extra-locales/chimere/models.py:104 extra-locales/chimere/models.py:111 +#: extra-locales/chimere/models.py:151 msgid "Color theme" msgstr "Thème de couleur" -#: extra-locales/chimere/models.py:106 +#: extra-locales/chimere/models.py:109 msgid "Code" msgstr "Code" -#: extra-locales/chimere/models.py:107 extra-locales/chimere/models.py:120 -#: extra-locales/chimere/models.py:151 extra-locales/chimere/models.py:407 -#: extra-locales/chimere/models.py:434 extra-locales/chimere/models.py:671 -#: extra-locales/chimere/models.py:711 +#: extra-locales/chimere/models.py:110 extra-locales/chimere/models.py:123 +#: extra-locales/chimere/models.py:153 extra-locales/chimere/models.py:474 +#: extra-locales/chimere/models.py:519 extra-locales/chimere/models.py:791 +#: extra-locales/chimere/models.py:855 extra-locales/chimere/models.py:867 msgid "Order" msgstr "Ordre" -#: extra-locales/chimere/models.py:113 +#: extra-locales/chimere/models.py:116 msgid "Color" msgstr "Couleur" -#: extra-locales/chimere/models.py:126 extra-locales/chimere/models.py:144 +#: extra-locales/chimere/models.py:129 extra-locales/chimere/models.py:147 msgid "Category" msgstr "Catégorie" -#: extra-locales/chimere/models.py:134 extra-locales/chimere/models.py:431 -#: extra-locales/chimere/models.py:505 +#: extra-locales/chimere/models.py:137 extra-locales/chimere/models.py:515 +#: extra-locales/chimere/models.py:604 msgid "Height" msgstr "Hauteur" -#: extra-locales/chimere/models.py:135 extra-locales/chimere/models.py:432 -#: extra-locales/chimere/models.py:506 +#: extra-locales/chimere/models.py:138 extra-locales/chimere/models.py:516 +#: extra-locales/chimere/models.py:605 msgid "Width" msgstr "Largeur" -#: extra-locales/chimere/models.py:139 extra-locales/chimere/models.py:148 +#: extra-locales/chimere/models.py:142 extra-locales/chimere/models.py:150 msgid "Icon" msgstr "Icône" -#: extra-locales/chimere/models.py:152 +#: extra-locales/chimere/models.py:154 msgid "Marker" msgstr "Point d'intérêt" -#: extra-locales/chimere/models.py:153 extra-locales/chimere/models.py:499 -#: extra-locales/chimere/models.py:514 +#: extra-locales/chimere/models.py:155 extra-locales/chimere/models.py:598 +#: extra-locales/chimere/models.py:613 #: extra-locales/chimere/templates/chimere/edit_route.html:35 msgid "Route" msgstr "Trajet" -#: extra-locales/chimere/models.py:154 +#: extra-locales/chimere/models.py:156 msgid "Both" msgstr "Mixte" -#: extra-locales/chimere/models.py:155 +#: extra-locales/chimere/models.py:157 msgid "Item type" msgstr "Type d'élément" -#: extra-locales/chimere/models.py:160 +#: extra-locales/chimere/models.py:162 msgid "Subcategory" msgstr "Sous-catégorie" -#: extra-locales/chimere/models.py:195 +#: extra-locales/chimere/models.py:208 +msgid "Importer type" +msgstr "Type d'import" + +#: extra-locales/chimere/models.py:211 extra-locales/chimere/models.py:250 +msgid "Source" +msgstr "Source" + +#: extra-locales/chimere/models.py:213 +msgid "Filter" +msgstr "Filtre" + +#: extra-locales/chimere/models.py:216 +msgid "Associated subcategories" +msgstr "Sous-catégories associées" + +#: extra-locales/chimere/models.py:217 +msgid "State" +msgstr "État" + +#: extra-locales/chimere/models.py:219 +msgid "SRID" +msgstr "SRID" + +#: extra-locales/chimere/models.py:220 +msgid "Zipped file" +msgstr "Fichier zippé" + +#: extra-locales/chimere/models.py:223 +msgid "Importer" +msgstr "Import" + +#: extra-locales/chimere/models.py:232 msgid "Submitter session key" msgstr "Clé de session du demandeur" -#: extra-locales/chimere/models.py:197 +#: extra-locales/chimere/models.py:234 msgid "Submitter email" msgstr "Courriel du demandeur" -#: extra-locales/chimere/models.py:199 +#: extra-locales/chimere/models.py:236 msgid "Submitter comment" msgstr "Commentaire du demandeur" -#: extra-locales/chimere/models.py:201 +#: extra-locales/chimere/models.py:238 msgid "Submited" msgstr "Soumis" -#: extra-locales/chimere/models.py:203 +#: extra-locales/chimere/models.py:240 msgid "Modified" msgstr "Modifié" -#: extra-locales/chimere/models.py:204 +#: extra-locales/chimere/models.py:241 msgid "Disabled" msgstr "Désactivé" -#: extra-locales/chimere/models.py:208 +#: extra-locales/chimere/models.py:242 +msgid "Imported" +msgstr "Importé" + +#: extra-locales/chimere/models.py:243 +msgid "Excluded" +msgstr "Exclu" + +#: extra-locales/chimere/models.py:245 msgid "Status" msgstr "État" -#: extra-locales/chimere/models.py:210 -#: extra-locales/chimere/templates/chimere/edit.html:41 +#: extra-locales/chimere/models.py:246 +msgid "Import key" +msgstr "Clé d'import" + +#: extra-locales/chimere/models.py:248 +msgid "Import version" +msgstr "Version de l'import" + +#: extra-locales/chimere/models.py:253 +#: extra-locales/chimere/templates/chimere/edit.html:44 #: extra-locales/chimere/templates/chimere/edit_route.html:47 msgid "Start date" msgstr "Date de début" -#: extra-locales/chimere/models.py:211 +#: extra-locales/chimere/models.py:254 msgid "Not mandatory. Set it for dated item such as event. Format YYYY-MM-DD" msgstr "" "Optionnel. Précisez ce champ pour les éléments datés comme un événement. " "Format du champ : AAAA-MM-JJ" -#: extra-locales/chimere/models.py:213 -#: extra-locales/chimere/templates/chimere/edit.html:47 +#: extra-locales/chimere/models.py:256 +#: extra-locales/chimere/templates/chimere/edit.html:50 #: extra-locales/chimere/templates/chimere/edit_route.html:53 msgid "End date" msgstr "Date de fin" -#: extra-locales/chimere/models.py:214 +#: extra-locales/chimere/models.py:257 msgid "" "Not mandatory. Set it only if you have a multi-day event. Format YYYY-MM-DD" msgstr "" "Optionnel. Précisez ce champ seulement pour des événements durant plusieurs " "jours. Format du champ : AAAA-MM-JJ" -#: extra-locales/chimere/models.py:223 +#: extra-locales/chimere/models.py:289 msgid "Reference marker" msgstr "Point d'intérêt de référence" -#: extra-locales/chimere/models.py:224 +#: extra-locales/chimere/models.py:290 msgid "Localisation" msgstr "Localisation" -#: extra-locales/chimere/models.py:227 +#: extra-locales/chimere/models.py:293 msgid "Available Date" msgstr "Date de mise en disponibilité" -#: extra-locales/chimere/models.py:269 extra-locales/chimere/models.py:734 +#: extra-locales/chimere/models.py:297 +msgid "Description" +msgstr "Description" + +#: extra-locales/chimere/models.py:336 extra-locales/chimere/models.py:890 msgid "Point of interest" msgstr "Point d'intérêt" -#: extra-locales/chimere/models.py:360 +#: extra-locales/chimere/models.py:427 msgid "Audio" msgstr "Audio" -#: extra-locales/chimere/models.py:361 +#: extra-locales/chimere/models.py:428 msgid "Video" msgstr "Vidéo" -#: extra-locales/chimere/models.py:363 +#: extra-locales/chimere/models.py:430 msgid "Other" msgstr "Autre" -#: extra-locales/chimere/models.py:364 +#: extra-locales/chimere/models.py:431 msgid "Media type" msgstr "Type de media" -#: extra-locales/chimere/models.py:367 +#: extra-locales/chimere/models.py:434 msgid "Mime type" msgstr "Type mime" -#: extra-locales/chimere/models.py:369 +#: extra-locales/chimere/models.py:436 msgid "Inside an iframe" msgstr "À l'intérieur d'un iframe" -#: extra-locales/chimere/models.py:406 +#: extra-locales/chimere/models.py:473 msgid "Url" msgstr "Url" -#: extra-locales/chimere/models.py:433 +#: extra-locales/chimere/models.py:476 extra-locales/chimere/models.py:517 msgid "Display inside the description?" msgstr "Apparaît dans la description ?" -#: extra-locales/chimere/models.py:441 +#: extra-locales/chimere/models.py:540 msgid "Raw file (gpx or kml)" msgstr "Fichier brut (gpx ou kml)" -#: extra-locales/chimere/models.py:442 +#: extra-locales/chimere/models.py:541 msgid "Simplified file" msgstr "Fichier simplifié" -#: extra-locales/chimere/models.py:444 +#: extra-locales/chimere/models.py:543 msgid "KML" msgstr "KML" -#: extra-locales/chimere/models.py:444 +#: extra-locales/chimere/models.py:543 msgid "GPX" msgstr "GPX" -#: extra-locales/chimere/models.py:449 +#: extra-locales/chimere/models.py:548 msgid "Route file" msgstr "Fichier de trajet" -#: extra-locales/chimere/models.py:498 +#: extra-locales/chimere/models.py:597 msgid "Reference route" msgstr "Trajet de référence" -#: extra-locales/chimere/models.py:502 +#: extra-locales/chimere/models.py:601 msgid "Associated file" msgstr "Fichier associé" -#: extra-locales/chimere/models.py:669 +#: extra-locales/chimere/models.py:775 +msgid "Layer code" +msgstr "Code pour la couche" + +#: extra-locales/chimere/models.py:781 +msgid "Layer" +msgstr "Couche" + +#: extra-locales/chimere/models.py:787 msgid "Area urn" msgstr "Urn de la zone" -#: extra-locales/chimere/models.py:673 +#: extra-locales/chimere/models.py:789 +#: extra-locales/chimere/templates/chimere/blocks/welcome.html:3 +msgid "Welcome message" +msgstr "Message d'accueil" + +#: extra-locales/chimere/models.py:793 msgid "Upper left corner" msgstr "Coin en haut à gauche" -#: extra-locales/chimere/models.py:675 +#: extra-locales/chimere/models.py:795 msgid "Lower right corner" msgstr "Coin en bas à droite" -#: extra-locales/chimere/models.py:713 +#: extra-locales/chimere/models.py:797 +msgid "Default area" +msgstr "Zone par défaut" + +#: extra-locales/chimere/models.py:798 +msgid "Only one area is set by default" +msgstr "Seule une zone est définie par défaut" + +#: extra-locales/chimere/models.py:802 +msgid "Categories checked by default" +msgstr "Catégories cochées par défaut" + +#: extra-locales/chimere/models.py:805 +msgid "Restricted to theses subcategories" +msgstr "Restreindres à ces sous-catégories" + +#: extra-locales/chimere/models.py:806 +msgid "If no subcategory is set all subcategories are available" +msgstr "Si aucune sous-catégorie n'est définie toutes les sous-catégories sont disponibles" + +#: extra-locales/chimere/models.py:807 +msgid "Link to an external CSS" +msgstr "Lien vers une feuille de style externe" + +#: extra-locales/chimere/models.py:809 +msgid "Restrict to the area extent" +msgstr "Restreindre à l'étendue de la zone" + +#: extra-locales/chimere/models.py:856 +msgid "Default layer" +msgstr "Couche par défaut" + +#: extra-locales/chimere/models.py:860 extra-locales/chimere/models.py:861 +msgid "Layers" +msgstr "Couches" + +#: extra-locales/chimere/models.py:869 msgid "Text" msgstr "Texte" -#: extra-locales/chimere/models.py:714 +#: extra-locales/chimere/models.py:870 msgid "Long text" msgstr "Texte long" -#: extra-locales/chimere/models.py:715 +#: extra-locales/chimere/models.py:871 msgid "Password" msgstr "Mot de passe" -#: extra-locales/chimere/models.py:719 +#: extra-locales/chimere/models.py:875 msgid "Type" msgstr "Type" -#: extra-locales/chimere/models.py:724 extra-locales/chimere/models.py:736 +#: extra-locales/chimere/models.py:880 extra-locales/chimere/models.py:892 msgid "Property model" msgstr "Modèle de propriété" -#: extra-locales/chimere/models.py:737 +#: extra-locales/chimere/models.py:893 msgid "Value" msgstr "Valeur" -#: extra-locales/chimere/models.py:741 +#: extra-locales/chimere/models.py:897 msgid "Property" msgstr "Propriété" -#: extra-locales/chimere/views.py:249 +#: extra-locales/chimere/tasks.py:42 +msgid "Import pending" +msgstr "Import en attente" + +#: extra-locales/chimere/tasks.py:43 +msgid "Import processing" +msgstr "Import en cours" + +#: extra-locales/chimere/tasks.py:44 +msgid "Import successfuly done" +msgstr "Import fait avec succès" + +#: extra-locales/chimere/tasks.py:45 +#, python-format +msgid " %(new)d new item(s), %(updated)d updated item(s)" +msgstr " %(new)d nouveau(x) élément(s), %(updated)d élément(s) mis à jour" + +#: extra-locales/chimere/tasks.py:46 +msgid "Import failed" +msgstr "Import échoué" + +#: extra-locales/chimere/tasks.py:47 +msgid "Import canceled" +msgstr "Import annulé" + +#: extra-locales/chimere/tasks.py:48 +msgid "Export pending" +msgstr "Export en attente" + +#: extra-locales/chimere/tasks.py:49 +msgid "Export processing" +msgstr "Export en cours" + +#: extra-locales/chimere/tasks.py:50 +msgid "Export successfuly done" +msgstr "Export réalisé avec succès" + +#: extra-locales/chimere/tasks.py:51 +#, python-format +msgid " %(updated)d updated item(s)" +msgstr " %(updated)d éléments mis à jour" + +#: extra-locales/chimere/tasks.py:52 +msgid "Export failed" +msgstr "Export échoué" + +#: extra-locales/chimere/tasks.py:53 +msgid "Export canceled" +msgstr "Export annulé" + +#: extra-locales/chimere/utils.py:70 extra-locales/chimere/utils.py:111 +msgid "Bad zip file" +msgstr "Mauvais fichier zip" + +#: extra-locales/chimere/utils.py:114 +msgid "Missing file(s) inside the zip file" +msgstr "Fichier(s) manquant(s) dans l'archive zip" + +#: extra-locales/chimere/utils.py:235 +msgid "Error while reading the data source." +msgstr "Erreur lors de la lecture de la source." + +#: extra-locales/chimere/utils.py:253 +msgid "Type of geographic item of this shapefile is not managed by Chimère." +msgstr "Les types des éléments géographiques de ce fichier Shapefile ne sont pas gérés par Chimère." + +#: extra-locales/chimere/utils.py:336 +msgid "Could not create file!" +msgstr "Ne peut pas créer le fichier !" + +#: extra-locales/chimere/utils.py:468 +msgid "New items imported - validate them before exporting" +msgstr "Nouveaux éléments importés - valider ceux-ci avant d'exporter" + +#: extra-locales/chimere/utils.py:470 +msgid "" +"There are items from a former import not yet validated - validate them " +"before exporting" +msgstr "" +"Il y a des éléments d'un import précédent pas encore validé - Validez " +"les avant d'exporter" + +#: extra-locales/chimere/utils.py:480 +msgid "Bad param" +msgstr "Mauvais paramètre" + +#: extra-locales/chimere/views.py:196 +msgid "There are missing field(s) and/or errors in the submited form." +msgstr "Il y a des champs manquants ou des erreurs dans ce formulaire." + +#: extra-locales/chimere/views.py:275 msgid "Bad file. Please check it with an external software." msgstr "Fichier incohérent. Merci de le vérifier avec un logiciel externe." -#: extra-locales/chimere/views.py:365 +#: extra-locales/chimere/views.py:395 msgid "Comments/request on the map" msgstr "Commentaires/requètes sur la carte" -#: extra-locales/chimere/views.py:368 +#: extra-locales/chimere/views.py:398 msgid "" "Thank you for your contribution. It will be taken into account. If you have " "left your email you may be contacted soon for more details." @@ -370,43 +590,43 @@ msgstr "" "laissé votre courriel vous serez peut-être contacté bientôt pour plus de " "détails." -#: extra-locales/chimere/views.py:372 +#: extra-locales/chimere/views.py:402 msgid "Temporary error. Renew your message later." msgstr "Erreur temporaire. Réenvoyez votre message plus tard." -#: extra-locales/chimere/views.py:493 +#: extra-locales/chimere/views.py:531 msgid "No category available in this area." msgstr "Pas de catégorie disponible sur cette zone." -#: extra-locales/chimere/widgets.py:123 +#: extra-locales/chimere/widgets.py:172 msgid "Latitude" msgstr "Latitude" -#: extra-locales/chimere/widgets.py:123 +#: extra-locales/chimere/widgets.py:172 msgid "Longitude" msgstr "Longitude" -#: extra-locales/chimere/widgets.py:147 +#: extra-locales/chimere/widgets.py:197 msgid "Invalid point" msgstr "Point invalide" -#: extra-locales/chimere/widgets.py:174 +#: extra-locales/chimere/widgets.py:241 msgid "Creation mode" msgstr "Mode création" -#: extra-locales/chimere/widgets.py:175 +#: extra-locales/chimere/widgets.py:242 msgid "To start drawing the route click on the toggle button: \"Draw\"." msgstr "Pour commencer le dessin cliquez sur le bouton : « Tracer » " -#: extra-locales/chimere/widgets.py:177 +#: extra-locales/chimere/widgets.py:244 msgid "Then click on the map to begin the drawing." msgstr "Puis cliquez sur la carte pour commencer le dessin." -#: extra-locales/chimere/widgets.py:178 +#: extra-locales/chimere/widgets.py:245 msgid "You can add points by clicking again." msgstr "Vous pouvez ajouter des points en cliquant de nouveau." -#: extra-locales/chimere/widgets.py:179 +#: extra-locales/chimere/widgets.py:246 msgid "" "To finish the drawing double click. When the drawing is finished you can " "edit it." @@ -414,7 +634,7 @@ msgstr "" "Pour finir le tracé double-cliquez. Quand le tracé est fini vous pouvez " "toujours l'éditer." -#: extra-locales/chimere/widgets.py:181 +#: extra-locales/chimere/widgets.py:248 msgid "" "While creating to undo a drawing click again on the toggle button \"Stop " "drawing\"." @@ -422,17 +642,17 @@ msgstr "" "En mode création vous pouvez annuler un tracé en appuyant sur le bouton « " "Arrêter le tracé »" -#: extra-locales/chimere/widgets.py:186 +#: extra-locales/chimere/widgets.py:253 msgid "Modification mode" msgstr "Mode modification" -#: extra-locales/chimere/widgets.py:187 +#: extra-locales/chimere/widgets.py:254 msgid "To move a point click on it and drag it to the desired position." msgstr "" "Pour bouger un point, cliquez dessus, maintenez le click pour le déposer à " "la position désirée." -#: extra-locales/chimere/widgets.py:188 +#: extra-locales/chimere/widgets.py:255 msgid "" "To delete a point move the mouse cursor over it and press the \"d\" or \"Del" "\" key." @@ -440,7 +660,7 @@ msgstr "" "Pour supprimer un point, mettez le curseur de la souris sur celui-ci et " "appuyez sur le touche « d » ou « Suppr »" -#: extra-locales/chimere/widgets.py:190 +#: extra-locales/chimere/widgets.py:257 msgid "" "To add a point click in the middle of a segment and drag the new point to " "the desired position" @@ -449,33 +669,33 @@ msgstr "" "maintenez le bouton appuyé et déplacez le nouveau point à la position " "désirée." -#: extra-locales/chimere/widgets.py:199 +#: extra-locales/chimere/widgets.py:264 msgid "Give a name and set category before uploading a file." msgstr "" "Renseignez le nom et choisissez au moins une catégorie avant de déposer un " "fichier." -#: extra-locales/chimere/widgets.py:202 +#: extra-locales/chimere/widgets.py:267 msgid "Upload a route file (GPX or KML)" msgstr "Déposer un trajet (fichier GPX ou KML)" -#: extra-locales/chimere/widgets.py:203 +#: extra-locales/chimere/widgets.py:268 msgid "or" msgstr "ou" -#: extra-locales/chimere/widgets.py:208 +#: extra-locales/chimere/widgets.py:273 msgid "Start \"hand\" drawing" msgstr "Commencer le tracé manuellement" -#: extra-locales/chimere/widgets.py:220 +#: extra-locales/chimere/widgets.py:285 msgid "Move on the map" msgstr "Se déplacer" -#: extra-locales/chimere/widgets.py:220 +#: extra-locales/chimere/widgets.py:285 msgid "Draw" msgstr "Tracer" -#: extra-locales/chimere/widgets.py:355 +#: extra-locales/chimere/widgets.py:421 msgid "Select..." msgstr "Sélectionner..." @@ -503,61 +723,59 @@ msgstr "" msgid "Submit" msgstr "Proposer" -#: extra-locales/chimere/templates/chimere/detail.html:7 +#: extra-locales/chimere/templates/chimere/detail.html:16 msgid "Date:" msgstr "Date :" -#: extra-locales/chimere/templates/chimere/detail.html:14 +#: extra-locales/chimere/templates/chimere/detail.html:26 msgid "Show multimedia gallery" msgstr "Montrer la galerie multimedia" -#: extra-locales/chimere/templates/chimere/detail.html:17 +#: extra-locales/chimere/templates/chimere/detail.html:29 msgid "Share on" msgstr "Partager sur" -#: extra-locales/chimere/templates/chimere/detail.html:21 +#: extra-locales/chimere/templates/chimere/detail.html:33 msgid "Share" msgstr "Partager" -#: extra-locales/chimere/templates/chimere/detail.html:25 +#: extra-locales/chimere/templates/chimere/detail.html:37 msgid "Submit a modification" msgstr "Proposer une modification" -#: extra-locales/chimere/templates/chimere/detail.html:46 -msgid "Please use a modern browser or install the non free Flash-Plugin." -msgstr "" -"Utilisez un navigateur internet plus récent ou installez le greffon non " -"libre Flash." +#: extra-locales/chimere/templates/chimere/edit.html:19 +msgid "Error" +msgstr "Erreur" -#: extra-locales/chimere/templates/chimere/edit.html:20 +#: extra-locales/chimere/templates/chimere/edit.html:23 msgid "Add/modify a site" msgstr "Ajouter ou modifier un site" -#: extra-locales/chimere/templates/chimere/edit.html:21 +#: extra-locales/chimere/templates/chimere/edit.html:24 #: extra-locales/chimere/templates/chimere/edit_route.html:21 msgid "indicates a mandatory field" msgstr "indique un champ obligatoire" -#: extra-locales/chimere/templates/chimere/edit.html:25 +#: extra-locales/chimere/templates/chimere/edit.html:28 #: extra-locales/chimere/templates/chimere/edit_route.html:25 msgid "Site name" msgstr "Nom du site" -#: extra-locales/chimere/templates/chimere/edit.html:30 +#: extra-locales/chimere/templates/chimere/edit.html:33 #: extra-locales/chimere/templates/chimere/edit_route.html:30 msgid "Categories" msgstr "Catégories" -#: extra-locales/chimere/templates/chimere/edit.html:35 +#: extra-locales/chimere/templates/chimere/edit.html:38 msgid "Point" msgstr "Point" -#: extra-locales/chimere/templates/chimere/edit.html:36 +#: extra-locales/chimere/templates/chimere/edit.html:39 #: extra-locales/chimere/templates/chimere/edit_route.html:36 msgid "Select a location for this new site" msgstr "Choisissez une localisation pour ce nouveau site" -#: extra-locales/chimere/templates/chimere/edit.html:68 +#: extra-locales/chimere/templates/chimere/edit.html:72 #: extra-locales/chimere/templates/chimere/edit_route.html:70 msgid "Propose" msgstr "Proposez" @@ -566,28 +784,36 @@ msgstr "Proposez" msgid "Add/modify a route" msgstr "Ajout ou modifier un trajet" -#: extra-locales/chimere/templates/chimere/main_map.html:12 +#: extra-locales/chimere/templates/chimere/main_map.html:13 #: extra-locales/chimere/templates/chimere/main_map_simple.html:10 msgid "Topics" msgstr "Thèmes" -#: extra-locales/chimere/templates/chimere/upload_file.html:17 +#: extra-locales/chimere/templates/chimere/main_map.html:33 +msgid "You must enable JavaScript in your browser to display Chimère." +msgstr "Vous devez activer le JavaScript dans votre navigateur pour afficher Chimère." + +#: extra-locales/chimere/templates/chimere/upload_file.html:13 msgid "Thank you for your submission!" msgstr "Merci pour votre proposition !" -#: extra-locales/chimere/templates/chimere/upload_file.html:21 +#: extra-locales/chimere/templates/chimere/upload_file.html:17 msgid "Upload a file" msgstr "Déposer un fichier" -#: extra-locales/chimere/templates/chimere/upload_file.html:51 +#: extra-locales/chimere/templates/chimere/upload_file.html:46 msgid "Upload" msgstr "Déposer" #: extra-locales/chimere/templates/chimere/blocks/areas.html:4 +msgid "Areas:" +msgstr "Zones :" + +#: extra-locales/chimere/templates/chimere/blocks/areas_alternative.html:4 msgid "Shortcuts" msgstr "Raccourcis" -#: extra-locales/chimere/templates/chimere/blocks/areas.html:7 +#: extra-locales/chimere/templates/chimere/blocks/areas_alternative.html:7 #: extra-locales/chimere/templates/chimere/blocks/categories.html:8 #: extra-locales/chimere/templates/chimere/blocks/categories.html:17 msgid "Zoom to" @@ -614,23 +840,37 @@ msgstr "Carte" msgid "Permalink" msgstr "Lien permanent" +#: extra-locales/chimere/templates/chimere/blocks/multimedia_file.html:19 +msgid "Please use a modern browser or install the non free Flash-Plugin." +msgstr "" +"Utilisez un navigateur internet plus récent ou installez le greffon non " +"libre Flash." + #: extra-locales/chimere/templates/chimere/blocks/submited.html:3 +msgid "" +"Your new proposition/modification has been submited. A moderator will treat " +"your submission shortly. Thanks!" +msgstr "" +"Votre proposition/modification a été soumise. Un modérateur va traiter votre " +"proposition sous peu. Merci !" + +#: extra-locales/chimere/templates/chimere/blocks/submited.html:8 msgid "Thank you" msgstr "Merci" -#: extra-locales/chimere/templates/chimere/blocks/submited.html:4 -msgid "" -"Your proposition has been submited. A moderator will treat your submission " -"shortly. Thanks!" -msgstr "" -"Votre proposition a été soumise. Un modérateur va traiter votre proposition " -"sous peu. Merci !" +#: extra-locales/chimere/templates/chimere/blocks/submited.html:11 +msgid "Add a new item" +msgstr "Ajout d'un nouvel élément" -#: extra-locales/chimere/templates/chimere/blocks/welcome.html:3 -msgid "Welcome message" -msgstr "Message d'accueil" +#: extra-locales/chimere/templates/chimere/blocks/submited.html:15 +msgid "Continue edition of this item" +msgstr "Continuer l'édition de cet élément" + +#: extra-locales/chimere/templates/chimere/blocks/submited.html:19 +msgid "Return to the map" +msgstr "Retourner à la carte" -#: extra-locales/chimere/templates/chimere/blocks/welcome.html:24 +#: extra-locales/chimere/templates/chimere/blocks/welcome.html:28 msgid "See it on the map" msgstr "Voir sur la carte" @@ -685,9 +925,3 @@ msgstr "Choisir une zone pré-définie" msgid "Or select the area by zooming and panning this map" msgstr "Ou sélectionner une zone en zoomant et en se déplaçant sur cette carte" -#: extra-locales/chimere_rss/templates/rss.html:66 -msgid "Validate" -msgstr "Valider" - -#~ msgid "Multimedia type is mandatory if is not an iframe." -#~ msgstr "Le type de média est obligatoire si ce n'est pas une iframe." -- cgit v1.2.3 From d28284ebf8d8f3ba3c743313a226b28f20015e2e Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 16 May 2012 12:56:44 +0200 Subject: Fix RSS feeds for django 1.4 - reintegrate them in the main application --- extra-locales/chimere_rss | 1 - settings.py | 9 +++------ urls.py | 4 ---- 3 files changed, 3 insertions(+), 11 deletions(-) delete mode 120000 extra-locales/chimere_rss diff --git a/extra-locales/chimere_rss b/extra-locales/chimere_rss deleted file mode 120000 index 1a8285a..0000000 --- a/extra-locales/chimere_rss +++ /dev/null @@ -1 +0,0 @@ -../../chimere_rss/ \ No newline at end of file diff --git a/settings.py b/settings.py index ddd8261..82c4454 100644 --- a/settings.py +++ b/settings.py @@ -54,6 +54,8 @@ CHIMERE_DISPLAY_AREAS = True # don't forget to run the upgrade.py script to create appropriate fields in # the database CHIMERE_DAYS_BEFORE_EVENT = 30 +# allow feeds +CHIMERE_FEEDS = True CHIMERE_ICON_WIDTH = 21 CHIMERE_ICON_HEIGHT = 25 @@ -180,15 +182,10 @@ INSTALLED_APPS = ( 'djcelery', 'south', 'chimere', - # activate it if you want to use migration scripts + # activate it if you want to use old migration scripts #'chimere.scripts', - # activate it if you want to use RSS feeds - #'chimere_rss' ) -if 'chimere_rss' in INSTALLED_APPS: - TEMPLATE_DIRS.append(ROOT_PATH + 'chimere_rss/templates') - LOGGING = {'version': 1, 'disable_existing_loggers': False, 'handlers': { diff --git a/urls.py b/urls.py index 6dc5e32..a49cb4f 100644 --- a/urls.py +++ b/urls.py @@ -30,10 +30,6 @@ urlpatterns = patterns('django.views.static', ) urlpatterns += staticfiles_urlpatterns() -if 'chimere_rss' in settings.INSTALLED_APPS: - urlpatterns += patterns('', - url(r'^feeds/', include('chimere_rss.urls', namespace="chimere-rss")),) - urlpatterns += patterns('', (r'^admin/doc/', include('django.contrib.admindocs.urls')), (r'^admin/', include(admin.site.urls)), -- cgit v1.2.3 From ac2a0b1f5d4876c7fb63caf08ba00a625aebf2b8 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 17 May 2012 12:39:53 +0200 Subject: Update translation --- locale/fr/LC_MESSAGES/django.po | 283 +++++++++++++++++++++------------------- 1 file changed, 151 insertions(+), 132 deletions(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 00660a9..bc64733 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -7,18 +7,18 @@ msgid "" msgstr "" "Project-Id-Version: 0.2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-05-09 09:31+0200\n" +"POT-Creation-Date: 2012-05-17 12:35+0200\n" "PO-Revision-Date: 2010-03-20 20:00+0100\n" "Last-Translator: Étienne Loks \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: extra-locales/chimere/__init__.py:8 +#: extra-locales/chimere/__init__.py:8 extra-locales/chimere/models.py:485 msgid "Multimedia files" msgstr "Fichiers multimedias" -#: extra-locales/chimere/__init__.py:9 +#: extra-locales/chimere/__init__.py:9 extra-locales/chimere/models.py:534 msgid "Picture files" msgstr "Fichiers d'image" @@ -47,7 +47,7 @@ msgid "Contact us" msgstr "Nous contacter" #: extra-locales/chimere/admin.py:58 -#: extra-locales/chimere_rss/templates/rss.html:66 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:69 msgid "Validate" msgstr "Valider" @@ -75,6 +75,18 @@ msgstr "Annuler l'export" msgid "Export to osm" msgstr "Exporter vers osm" +#: extra-locales/chimere/feeds.py:122 extra-locales/chimere/feeds.py:209 +msgid "Last points of interest" +msgstr "Derniers points d'intérêt" + +#: extra-locales/chimere/feeds.py:128 +msgid "Latest points of interest from " +msgstr "Nouveaux points d'intérêt de " + +#: extra-locales/chimere/feeds.py:174 +msgid "Last points of interest by area" +msgstr "Nouveaux points d'intérêt par zone" + #: extra-locales/chimere/forms.py:75 msgid "New submission for" msgstr "Nouvelle proposition pour" @@ -101,8 +113,8 @@ msgid "End date has been set with no start date" msgstr "Une date de fin a été donnée sans date de début" #: extra-locales/chimere/forms.py:233 extra-locales/chimere/models.py:135 -#: extra-locales/chimere/models.py:429 extra-locales/chimere/models.py:513 -#: extra-locales/chimere/models.py:602 +#: extra-locales/chimere/models.py:428 extra-locales/chimere/models.py:520 +#: extra-locales/chimere/models.py:613 #: extra-locales/chimere/templates/chimere/edit_route.html:41 msgid "Image" msgstr "Image" @@ -118,21 +130,21 @@ msgstr "Mauvais format de fichier : KML et GPX sont supportés" #: extra-locales/chimere/forms.py:356 extra-locales/chimere/models.py:47 #: extra-locales/chimere/models.py:100 extra-locales/chimere/models.py:121 #: extra-locales/chimere/models.py:134 extra-locales/chimere/models.py:148 -#: extra-locales/chimere/models.py:230 extra-locales/chimere/models.py:433 -#: extra-locales/chimere/models.py:472 extra-locales/chimere/models.py:512 -#: extra-locales/chimere/models.py:539 extra-locales/chimere/models.py:774 -#: extra-locales/chimere/models.py:786 extra-locales/chimere/models.py:866 +#: extra-locales/chimere/models.py:230 extra-locales/chimere/models.py:432 +#: extra-locales/chimere/models.py:475 extra-locales/chimere/models.py:519 +#: extra-locales/chimere/models.py:550 extra-locales/chimere/models.py:785 +#: extra-locales/chimere/models.py:797 extra-locales/chimere/models.py:877 msgid "Name" msgstr "Nom" -#: extra-locales/chimere/forms.py:365 extra-locales/chimere/models.py:818 +#: extra-locales/chimere/forms.py:365 extra-locales/chimere/models.py:829 msgid "Area" msgstr "Zone" #: extra-locales/chimere/models.py:48 extra-locales/chimere/models.py:122 #: extra-locales/chimere/models.py:149 extra-locales/chimere/models.py:239 -#: extra-locales/chimere/models.py:437 extra-locales/chimere/models.py:792 -#: extra-locales/chimere/models.py:868 +#: extra-locales/chimere/models.py:436 extra-locales/chimere/models.py:803 +#: extra-locales/chimere/models.py:879 msgid "Available" msgstr "Disponible" @@ -163,9 +175,9 @@ msgid "Code" msgstr "Code" #: extra-locales/chimere/models.py:110 extra-locales/chimere/models.py:123 -#: extra-locales/chimere/models.py:153 extra-locales/chimere/models.py:474 -#: extra-locales/chimere/models.py:519 extra-locales/chimere/models.py:791 -#: extra-locales/chimere/models.py:855 extra-locales/chimere/models.py:867 +#: extra-locales/chimere/models.py:153 extra-locales/chimere/models.py:477 +#: extra-locales/chimere/models.py:526 extra-locales/chimere/models.py:802 +#: extra-locales/chimere/models.py:866 extra-locales/chimere/models.py:878 msgid "Order" msgstr "Ordre" @@ -177,13 +189,13 @@ msgstr "Couleur" msgid "Category" msgstr "Catégorie" -#: extra-locales/chimere/models.py:137 extra-locales/chimere/models.py:515 -#: extra-locales/chimere/models.py:604 +#: extra-locales/chimere/models.py:137 extra-locales/chimere/models.py:522 +#: extra-locales/chimere/models.py:615 msgid "Height" msgstr "Hauteur" -#: extra-locales/chimere/models.py:138 extra-locales/chimere/models.py:516 -#: extra-locales/chimere/models.py:605 +#: extra-locales/chimere/models.py:138 extra-locales/chimere/models.py:523 +#: extra-locales/chimere/models.py:616 msgid "Width" msgstr "Largeur" @@ -195,8 +207,8 @@ msgstr "Icône" msgid "Marker" msgstr "Point d'intérêt" -#: extra-locales/chimere/models.py:155 extra-locales/chimere/models.py:598 -#: extra-locales/chimere/models.py:613 +#: extra-locales/chimere/models.py:155 extra-locales/chimere/models.py:609 +#: extra-locales/chimere/models.py:624 #: extra-locales/chimere/templates/chimere/edit_route.html:35 msgid "Route" msgstr "Trajet" @@ -322,164 +334,182 @@ msgstr "Point d'intérêt de référence" msgid "Localisation" msgstr "Localisation" -#: extra-locales/chimere/models.py:293 +#: extra-locales/chimere/models.py:292 msgid "Available Date" msgstr "Date de mise en disponibilité" -#: extra-locales/chimere/models.py:297 +#: extra-locales/chimere/models.py:296 msgid "Description" msgstr "Description" -#: extra-locales/chimere/models.py:336 extra-locales/chimere/models.py:890 +#: extra-locales/chimere/models.py:335 extra-locales/chimere/models.py:901 msgid "Point of interest" msgstr "Point d'intérêt" -#: extra-locales/chimere/models.py:427 +#: extra-locales/chimere/models.py:426 msgid "Audio" msgstr "Audio" -#: extra-locales/chimere/models.py:428 +#: extra-locales/chimere/models.py:427 msgid "Video" msgstr "Vidéo" -#: extra-locales/chimere/models.py:430 +#: extra-locales/chimere/models.py:429 msgid "Other" msgstr "Autre" -#: extra-locales/chimere/models.py:431 +#: extra-locales/chimere/models.py:430 msgid "Media type" msgstr "Type de media" -#: extra-locales/chimere/models.py:434 +#: extra-locales/chimere/models.py:433 msgid "Mime type" msgstr "Type mime" -#: extra-locales/chimere/models.py:436 +#: extra-locales/chimere/models.py:435 msgid "Inside an iframe" msgstr "À l'intérieur d'un iframe" -#: extra-locales/chimere/models.py:473 +#: extra-locales/chimere/models.py:439 +msgid "Multimedia type" +msgstr "Type de multimedia" + +#: extra-locales/chimere/models.py:440 +msgid "Multimedia types" +msgstr "Types de multimedia" + +#: extra-locales/chimere/models.py:476 msgid "Url" msgstr "Url" -#: extra-locales/chimere/models.py:476 extra-locales/chimere/models.py:517 +#: extra-locales/chimere/models.py:479 extra-locales/chimere/models.py:524 msgid "Display inside the description?" msgstr "Apparaît dans la description ?" -#: extra-locales/chimere/models.py:540 +#: extra-locales/chimere/models.py:484 +msgid "Multimedia file" +msgstr "Fichier multimedia" + +#: extra-locales/chimere/models.py:533 +msgid "Picture file" +msgstr "Fichier d'image" + +#: extra-locales/chimere/models.py:551 msgid "Raw file (gpx or kml)" msgstr "Fichier brut (gpx ou kml)" -#: extra-locales/chimere/models.py:541 +#: extra-locales/chimere/models.py:552 msgid "Simplified file" msgstr "Fichier simplifié" -#: extra-locales/chimere/models.py:543 +#: extra-locales/chimere/models.py:554 msgid "KML" msgstr "KML" -#: extra-locales/chimere/models.py:543 +#: extra-locales/chimere/models.py:554 msgid "GPX" msgstr "GPX" -#: extra-locales/chimere/models.py:548 +#: extra-locales/chimere/models.py:559 msgid "Route file" msgstr "Fichier de trajet" -#: extra-locales/chimere/models.py:597 +#: extra-locales/chimere/models.py:608 msgid "Reference route" msgstr "Trajet de référence" -#: extra-locales/chimere/models.py:601 +#: extra-locales/chimere/models.py:612 msgid "Associated file" msgstr "Fichier associé" -#: extra-locales/chimere/models.py:775 +#: extra-locales/chimere/models.py:786 msgid "Layer code" msgstr "Code pour la couche" -#: extra-locales/chimere/models.py:781 +#: extra-locales/chimere/models.py:792 msgid "Layer" msgstr "Couche" -#: extra-locales/chimere/models.py:787 +#: extra-locales/chimere/models.py:798 msgid "Area urn" msgstr "Urn de la zone" -#: extra-locales/chimere/models.py:789 +#: extra-locales/chimere/models.py:800 #: extra-locales/chimere/templates/chimere/blocks/welcome.html:3 msgid "Welcome message" msgstr "Message d'accueil" -#: extra-locales/chimere/models.py:793 +#: extra-locales/chimere/models.py:804 msgid "Upper left corner" msgstr "Coin en haut à gauche" -#: extra-locales/chimere/models.py:795 +#: extra-locales/chimere/models.py:806 msgid "Lower right corner" msgstr "Coin en bas à droite" -#: extra-locales/chimere/models.py:797 +#: extra-locales/chimere/models.py:808 msgid "Default area" msgstr "Zone par défaut" -#: extra-locales/chimere/models.py:798 +#: extra-locales/chimere/models.py:809 msgid "Only one area is set by default" msgstr "Seule une zone est définie par défaut" -#: extra-locales/chimere/models.py:802 +#: extra-locales/chimere/models.py:813 msgid "Categories checked by default" msgstr "Catégories cochées par défaut" -#: extra-locales/chimere/models.py:805 +#: extra-locales/chimere/models.py:816 msgid "Restricted to theses subcategories" msgstr "Restreindres à ces sous-catégories" -#: extra-locales/chimere/models.py:806 +#: extra-locales/chimere/models.py:817 msgid "If no subcategory is set all subcategories are available" -msgstr "Si aucune sous-catégorie n'est définie toutes les sous-catégories sont disponibles" +msgstr "" +"Si aucune sous-catégorie n'est définie toutes les sous-catégories sont " +"disponibles" -#: extra-locales/chimere/models.py:807 +#: extra-locales/chimere/models.py:818 msgid "Link to an external CSS" msgstr "Lien vers une feuille de style externe" -#: extra-locales/chimere/models.py:809 +#: extra-locales/chimere/models.py:820 msgid "Restrict to the area extent" msgstr "Restreindre à l'étendue de la zone" -#: extra-locales/chimere/models.py:856 +#: extra-locales/chimere/models.py:867 msgid "Default layer" msgstr "Couche par défaut" -#: extra-locales/chimere/models.py:860 extra-locales/chimere/models.py:861 +#: extra-locales/chimere/models.py:871 extra-locales/chimere/models.py:872 msgid "Layers" msgstr "Couches" -#: extra-locales/chimere/models.py:869 +#: extra-locales/chimere/models.py:880 msgid "Text" msgstr "Texte" -#: extra-locales/chimere/models.py:870 +#: extra-locales/chimere/models.py:881 msgid "Long text" msgstr "Texte long" -#: extra-locales/chimere/models.py:871 +#: extra-locales/chimere/models.py:882 msgid "Password" msgstr "Mot de passe" -#: extra-locales/chimere/models.py:875 +#: extra-locales/chimere/models.py:886 msgid "Type" msgstr "Type" -#: extra-locales/chimere/models.py:880 extra-locales/chimere/models.py:892 +#: extra-locales/chimere/models.py:891 extra-locales/chimere/models.py:903 msgid "Property model" msgstr "Modèle de propriété" -#: extra-locales/chimere/models.py:893 +#: extra-locales/chimere/models.py:904 msgid "Value" msgstr "Valeur" -#: extra-locales/chimere/models.py:897 +#: extra-locales/chimere/models.py:908 msgid "Property" msgstr "Propriété" @@ -533,55 +563,57 @@ msgstr "Export échoué" msgid "Export canceled" msgstr "Export annulé" -#: extra-locales/chimere/utils.py:70 extra-locales/chimere/utils.py:111 +#: extra-locales/chimere/utils.py:69 extra-locales/chimere/utils.py:110 msgid "Bad zip file" msgstr "Mauvais fichier zip" -#: extra-locales/chimere/utils.py:114 +#: extra-locales/chimere/utils.py:113 msgid "Missing file(s) inside the zip file" msgstr "Fichier(s) manquant(s) dans l'archive zip" -#: extra-locales/chimere/utils.py:235 +#: extra-locales/chimere/utils.py:240 msgid "Error while reading the data source." msgstr "Erreur lors de la lecture de la source." -#: extra-locales/chimere/utils.py:253 +#: extra-locales/chimere/utils.py:262 msgid "Type of geographic item of this shapefile is not managed by Chimère." -msgstr "Les types des éléments géographiques de ce fichier Shapefile ne sont pas gérés par Chimère." +msgstr "" +"Les types des éléments géographiques de ce fichier Shapefile ne sont pas " +"gérés par Chimère." -#: extra-locales/chimere/utils.py:336 +#: extra-locales/chimere/utils.py:345 msgid "Could not create file!" msgstr "Ne peut pas créer le fichier !" -#: extra-locales/chimere/utils.py:468 +#: extra-locales/chimere/utils.py:477 msgid "New items imported - validate them before exporting" msgstr "Nouveaux éléments importés - valider ceux-ci avant d'exporter" -#: extra-locales/chimere/utils.py:470 +#: extra-locales/chimere/utils.py:479 msgid "" "There are items from a former import not yet validated - validate them " "before exporting" msgstr "" -"Il y a des éléments d'un import précédent pas encore validé - Validez " -"les avant d'exporter" +"Il y a des éléments d'un import précédent pas encore validé - Validez les " +"avant d'exporter" -#: extra-locales/chimere/utils.py:480 +#: extra-locales/chimere/utils.py:489 msgid "Bad param" msgstr "Mauvais paramètre" -#: extra-locales/chimere/views.py:196 +#: extra-locales/chimere/views.py:200 msgid "There are missing field(s) and/or errors in the submited form." msgstr "Il y a des champs manquants ou des erreurs dans ce formulaire." -#: extra-locales/chimere/views.py:275 +#: extra-locales/chimere/views.py:279 msgid "Bad file. Please check it with an external software." msgstr "Fichier incohérent. Merci de le vérifier avec un logiciel externe." -#: extra-locales/chimere/views.py:395 +#: extra-locales/chimere/views.py:399 msgid "Comments/request on the map" msgstr "Commentaires/requètes sur la carte" -#: extra-locales/chimere/views.py:398 +#: extra-locales/chimere/views.py:402 msgid "" "Thank you for your contribution. It will be taken into account. If you have " "left your email you may be contacted soon for more details." @@ -590,43 +622,47 @@ msgstr "" "laissé votre courriel vous serez peut-être contacté bientôt pour plus de " "détails." -#: extra-locales/chimere/views.py:402 +#: extra-locales/chimere/views.py:406 msgid "Temporary error. Renew your message later." msgstr "Erreur temporaire. Réenvoyez votre message plus tard." -#: extra-locales/chimere/views.py:531 +#: extra-locales/chimere/views.py:535 msgid "No category available in this area." msgstr "Pas de catégorie disponible sur cette zone." -#: extra-locales/chimere/widgets.py:172 +#: extra-locales/chimere/views.py:642 +msgid "Incorrect choice in the list" +msgstr "Choix incorrect dans la liste" + +#: extra-locales/chimere/widgets.py:174 msgid "Latitude" msgstr "Latitude" -#: extra-locales/chimere/widgets.py:172 +#: extra-locales/chimere/widgets.py:174 msgid "Longitude" msgstr "Longitude" -#: extra-locales/chimere/widgets.py:197 +#: extra-locales/chimere/widgets.py:199 msgid "Invalid point" msgstr "Point invalide" -#: extra-locales/chimere/widgets.py:241 +#: extra-locales/chimere/widgets.py:244 msgid "Creation mode" msgstr "Mode création" -#: extra-locales/chimere/widgets.py:242 +#: extra-locales/chimere/widgets.py:245 msgid "To start drawing the route click on the toggle button: \"Draw\"." msgstr "Pour commencer le dessin cliquez sur le bouton : « Tracer » " -#: extra-locales/chimere/widgets.py:244 +#: extra-locales/chimere/widgets.py:247 msgid "Then click on the map to begin the drawing." msgstr "Puis cliquez sur la carte pour commencer le dessin." -#: extra-locales/chimere/widgets.py:245 +#: extra-locales/chimere/widgets.py:248 msgid "You can add points by clicking again." msgstr "Vous pouvez ajouter des points en cliquant de nouveau." -#: extra-locales/chimere/widgets.py:246 +#: extra-locales/chimere/widgets.py:249 msgid "" "To finish the drawing double click. When the drawing is finished you can " "edit it." @@ -634,7 +670,7 @@ msgstr "" "Pour finir le tracé double-cliquez. Quand le tracé est fini vous pouvez " "toujours l'éditer." -#: extra-locales/chimere/widgets.py:248 +#: extra-locales/chimere/widgets.py:251 msgid "" "While creating to undo a drawing click again on the toggle button \"Stop " "drawing\"." @@ -642,17 +678,17 @@ msgstr "" "En mode création vous pouvez annuler un tracé en appuyant sur le bouton « " "Arrêter le tracé »" -#: extra-locales/chimere/widgets.py:253 +#: extra-locales/chimere/widgets.py:256 msgid "Modification mode" msgstr "Mode modification" -#: extra-locales/chimere/widgets.py:254 +#: extra-locales/chimere/widgets.py:257 msgid "To move a point click on it and drag it to the desired position." msgstr "" "Pour bouger un point, cliquez dessus, maintenez le click pour le déposer à " "la position désirée." -#: extra-locales/chimere/widgets.py:255 +#: extra-locales/chimere/widgets.py:258 msgid "" "To delete a point move the mouse cursor over it and press the \"d\" or \"Del" "\" key." @@ -660,7 +696,7 @@ msgstr "" "Pour supprimer un point, mettez le curseur de la souris sur celui-ci et " "appuyez sur le touche « d » ou « Suppr »" -#: extra-locales/chimere/widgets.py:257 +#: extra-locales/chimere/widgets.py:260 msgid "" "To add a point click in the middle of a segment and drag the new point to " "the desired position" @@ -669,33 +705,33 @@ msgstr "" "maintenez le bouton appuyé et déplacez le nouveau point à la position " "désirée." -#: extra-locales/chimere/widgets.py:264 +#: extra-locales/chimere/widgets.py:267 msgid "Give a name and set category before uploading a file." msgstr "" "Renseignez le nom et choisissez au moins une catégorie avant de déposer un " "fichier." -#: extra-locales/chimere/widgets.py:267 +#: extra-locales/chimere/widgets.py:270 msgid "Upload a route file (GPX or KML)" msgstr "Déposer un trajet (fichier GPX ou KML)" -#: extra-locales/chimere/widgets.py:268 +#: extra-locales/chimere/widgets.py:271 msgid "or" msgstr "ou" -#: extra-locales/chimere/widgets.py:273 +#: extra-locales/chimere/widgets.py:276 msgid "Start \"hand\" drawing" msgstr "Commencer le tracé manuellement" -#: extra-locales/chimere/widgets.py:285 +#: extra-locales/chimere/widgets.py:288 msgid "Move on the map" msgstr "Se déplacer" -#: extra-locales/chimere/widgets.py:285 +#: extra-locales/chimere/widgets.py:288 msgid "Draw" msgstr "Tracer" -#: extra-locales/chimere/widgets.py:421 +#: extra-locales/chimere/widgets.py:424 msgid "Select..." msgstr "Sélectionner..." @@ -712,14 +748,14 @@ msgstr "Erreur interne du serveur" msgid "Administration de Chimère" msgstr "Administration de Chimère" -#: extra-locales/chimere/templates/chimere/contactus.html:17 +#: extra-locales/chimere/templates/chimere/contactus.html:16 msgid "" "If you have some requests or remarks about this site you can leave them here." msgstr "" "Si vous avez des requètes, des remarques à propos de ce site vous pouvez " "nous laisser un commentaire ici." -#: extra-locales/chimere/templates/chimere/contactus.html:20 +#: extra-locales/chimere/templates/chimere/contactus.html:19 msgid "Submit" msgstr "Proposer" @@ -791,7 +827,8 @@ msgstr "Thèmes" #: extra-locales/chimere/templates/chimere/main_map.html:33 msgid "You must enable JavaScript in your browser to display Chimère." -msgstr "Vous devez activer le JavaScript dans votre navigateur pour afficher Chimère." +msgstr "" +"Vous devez activer le JavaScript dans votre navigateur pour afficher Chimère." #: extra-locales/chimere/templates/chimere/upload_file.html:13 msgid "Thank you for your submission!" @@ -836,7 +873,7 @@ msgstr "Ce site utilise Chimère" msgid "Map" msgstr "Carte" -#: extra-locales/chimere/templates/chimere/blocks/map_params.html:5 +#: extra-locales/chimere/templates/chimere/blocks/map_params.html:6 msgid "Permalink" msgstr "Lien permanent" @@ -874,54 +911,36 @@ msgstr "Retourner à la carte" msgid "See it on the map" msgstr "Voir sur la carte" -#: extra-locales/chimere_rss/feeds.py:128 -#: extra-locales/chimere_rss/feeds.py:217 -msgid "Last points of interest" -msgstr "Derniers points d'intérêt" - -#: extra-locales/chimere_rss/feeds.py:134 -msgid "Latest points of interest from " -msgstr "Nouveaux points d'intérêt de " - -#: extra-locales/chimere_rss/feeds.py:180 -msgid "Last points of interest by area" -msgstr "Nouveaux points d'intérêt par zone" - -#: extra-locales/chimere_rss/views.py:73 -msgid "Incorrect choice in the list" -msgstr "Choix incorrect dans la liste" - -#: extra-locales/chimere_rss/templates/rss.html:10 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:13 msgid "Subscribe to RSS feed" msgstr "Souscrire à un flux RSS" -#: extra-locales/chimere_rss/templates/rss.html:17 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:20 msgid "Type of RSS feed" msgstr "Type de flux RSS" -#: extra-locales/chimere_rss/templates/rss.html:20 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:23 msgid "All new points of interest" msgstr "Tous les nouveaux points d'intérêt" -#: extra-locales/chimere_rss/templates/rss.html:21 -#: extra-locales/chimere_rss/templates/rss.html:28 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:24 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:31 msgid "New points of interest by category" msgstr "Les nouveaux points d'intérêt par catégorie" -#: extra-locales/chimere_rss/templates/rss.html:22 -#: extra-locales/chimere_rss/templates/rss.html:44 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:25 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:47 msgid "New points of interest by area" msgstr "Les nouveaux points d'intérêt par zone" -#: extra-locales/chimere_rss/templates/rss.html:30 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:33 msgid "Choose a category" msgstr "Choisir une catégorie" -#: extra-locales/chimere_rss/templates/rss.html:47 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:50 msgid "Choose a pre-defined areas" msgstr "Choisir une zone pré-définie" -#: extra-locales/chimere_rss/templates/rss.html:61 +#: extra-locales/chimere/templates/chimere/feeds/rss.html:64 msgid "Or select the area by zooming and panning this map" msgstr "Ou sélectionner une zone en zoomant et en se déplaçant sur cette carte" - -- cgit v1.2.3 From 6f6623c829b16ee22eb0d79dd760fbe9d3ec7933 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 17 May 2012 12:43:01 +0200 Subject: Minor translation --- locale/fr/LC_MESSAGES/django.po | 80 +++++++++++++++++++++-------------------- 1 file changed, 42 insertions(+), 38 deletions(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index bc64733..8ef85f9 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: 0.2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-05-17 12:35+0200\n" +"POT-Creation-Date: 2012-05-17 12:41+0200\n" "PO-Revision-Date: 2010-03-20 20:00+0100\n" "Last-Translator: Étienne Loks \n" "MIME-Version: 1.0\n" @@ -114,7 +114,7 @@ msgstr "Une date de fin a été donnée sans date de début" #: extra-locales/chimere/forms.py:233 extra-locales/chimere/models.py:135 #: extra-locales/chimere/models.py:428 extra-locales/chimere/models.py:520 -#: extra-locales/chimere/models.py:613 +#: extra-locales/chimere/models.py:614 #: extra-locales/chimere/templates/chimere/edit_route.html:41 msgid "Image" msgstr "Image" @@ -132,19 +132,19 @@ msgstr "Mauvais format de fichier : KML et GPX sont supportés" #: extra-locales/chimere/models.py:134 extra-locales/chimere/models.py:148 #: extra-locales/chimere/models.py:230 extra-locales/chimere/models.py:432 #: extra-locales/chimere/models.py:475 extra-locales/chimere/models.py:519 -#: extra-locales/chimere/models.py:550 extra-locales/chimere/models.py:785 -#: extra-locales/chimere/models.py:797 extra-locales/chimere/models.py:877 +#: extra-locales/chimere/models.py:550 extra-locales/chimere/models.py:786 +#: extra-locales/chimere/models.py:798 extra-locales/chimere/models.py:878 msgid "Name" msgstr "Nom" -#: extra-locales/chimere/forms.py:365 extra-locales/chimere/models.py:829 +#: extra-locales/chimere/forms.py:365 extra-locales/chimere/models.py:830 msgid "Area" msgstr "Zone" #: extra-locales/chimere/models.py:48 extra-locales/chimere/models.py:122 #: extra-locales/chimere/models.py:149 extra-locales/chimere/models.py:239 -#: extra-locales/chimere/models.py:436 extra-locales/chimere/models.py:803 -#: extra-locales/chimere/models.py:879 +#: extra-locales/chimere/models.py:436 extra-locales/chimere/models.py:804 +#: extra-locales/chimere/models.py:880 msgid "Available" msgstr "Disponible" @@ -176,8 +176,8 @@ msgstr "Code" #: extra-locales/chimere/models.py:110 extra-locales/chimere/models.py:123 #: extra-locales/chimere/models.py:153 extra-locales/chimere/models.py:477 -#: extra-locales/chimere/models.py:526 extra-locales/chimere/models.py:802 -#: extra-locales/chimere/models.py:866 extra-locales/chimere/models.py:878 +#: extra-locales/chimere/models.py:526 extra-locales/chimere/models.py:803 +#: extra-locales/chimere/models.py:867 extra-locales/chimere/models.py:879 msgid "Order" msgstr "Ordre" @@ -190,12 +190,12 @@ msgid "Category" msgstr "Catégorie" #: extra-locales/chimere/models.py:137 extra-locales/chimere/models.py:522 -#: extra-locales/chimere/models.py:615 +#: extra-locales/chimere/models.py:616 msgid "Height" msgstr "Hauteur" #: extra-locales/chimere/models.py:138 extra-locales/chimere/models.py:523 -#: extra-locales/chimere/models.py:616 +#: extra-locales/chimere/models.py:617 msgid "Width" msgstr "Largeur" @@ -207,8 +207,8 @@ msgstr "Icône" msgid "Marker" msgstr "Point d'intérêt" -#: extra-locales/chimere/models.py:155 extra-locales/chimere/models.py:609 -#: extra-locales/chimere/models.py:624 +#: extra-locales/chimere/models.py:155 extra-locales/chimere/models.py:610 +#: extra-locales/chimere/models.py:625 #: extra-locales/chimere/templates/chimere/edit_route.html:35 msgid "Route" msgstr "Trajet" @@ -342,7 +342,7 @@ msgstr "Date de mise en disponibilité" msgid "Description" msgstr "Description" -#: extra-locales/chimere/models.py:335 extra-locales/chimere/models.py:901 +#: extra-locales/chimere/models.py:335 extra-locales/chimere/models.py:902 msgid "Point of interest" msgstr "Point d'intérêt" @@ -414,102 +414,106 @@ msgstr "GPX" msgid "Route file" msgstr "Fichier de trajet" -#: extra-locales/chimere/models.py:608 +#: extra-locales/chimere/models.py:560 +msgid "Route files" +msgstr "Fichiers de trajet" + +#: extra-locales/chimere/models.py:609 msgid "Reference route" msgstr "Trajet de référence" -#: extra-locales/chimere/models.py:612 +#: extra-locales/chimere/models.py:613 msgid "Associated file" msgstr "Fichier associé" -#: extra-locales/chimere/models.py:786 +#: extra-locales/chimere/models.py:787 msgid "Layer code" msgstr "Code pour la couche" -#: extra-locales/chimere/models.py:792 +#: extra-locales/chimere/models.py:793 msgid "Layer" msgstr "Couche" -#: extra-locales/chimere/models.py:798 +#: extra-locales/chimere/models.py:799 msgid "Area urn" msgstr "Urn de la zone" -#: extra-locales/chimere/models.py:800 +#: extra-locales/chimere/models.py:801 #: extra-locales/chimere/templates/chimere/blocks/welcome.html:3 msgid "Welcome message" msgstr "Message d'accueil" -#: extra-locales/chimere/models.py:804 +#: extra-locales/chimere/models.py:805 msgid "Upper left corner" msgstr "Coin en haut à gauche" -#: extra-locales/chimere/models.py:806 +#: extra-locales/chimere/models.py:807 msgid "Lower right corner" msgstr "Coin en bas à droite" -#: extra-locales/chimere/models.py:808 +#: extra-locales/chimere/models.py:809 msgid "Default area" msgstr "Zone par défaut" -#: extra-locales/chimere/models.py:809 +#: extra-locales/chimere/models.py:810 msgid "Only one area is set by default" msgstr "Seule une zone est définie par défaut" -#: extra-locales/chimere/models.py:813 +#: extra-locales/chimere/models.py:814 msgid "Categories checked by default" msgstr "Catégories cochées par défaut" -#: extra-locales/chimere/models.py:816 +#: extra-locales/chimere/models.py:817 msgid "Restricted to theses subcategories" msgstr "Restreindres à ces sous-catégories" -#: extra-locales/chimere/models.py:817 +#: extra-locales/chimere/models.py:818 msgid "If no subcategory is set all subcategories are available" msgstr "" "Si aucune sous-catégorie n'est définie toutes les sous-catégories sont " "disponibles" -#: extra-locales/chimere/models.py:818 +#: extra-locales/chimere/models.py:819 msgid "Link to an external CSS" msgstr "Lien vers une feuille de style externe" -#: extra-locales/chimere/models.py:820 +#: extra-locales/chimere/models.py:821 msgid "Restrict to the area extent" msgstr "Restreindre à l'étendue de la zone" -#: extra-locales/chimere/models.py:867 +#: extra-locales/chimere/models.py:868 msgid "Default layer" msgstr "Couche par défaut" -#: extra-locales/chimere/models.py:871 extra-locales/chimere/models.py:872 +#: extra-locales/chimere/models.py:872 extra-locales/chimere/models.py:873 msgid "Layers" msgstr "Couches" -#: extra-locales/chimere/models.py:880 +#: extra-locales/chimere/models.py:881 msgid "Text" msgstr "Texte" -#: extra-locales/chimere/models.py:881 +#: extra-locales/chimere/models.py:882 msgid "Long text" msgstr "Texte long" -#: extra-locales/chimere/models.py:882 +#: extra-locales/chimere/models.py:883 msgid "Password" msgstr "Mot de passe" -#: extra-locales/chimere/models.py:886 +#: extra-locales/chimere/models.py:887 msgid "Type" msgstr "Type" -#: extra-locales/chimere/models.py:891 extra-locales/chimere/models.py:903 +#: extra-locales/chimere/models.py:892 extra-locales/chimere/models.py:904 msgid "Property model" msgstr "Modèle de propriété" -#: extra-locales/chimere/models.py:904 +#: extra-locales/chimere/models.py:905 msgid "Value" msgstr "Valeur" -#: extra-locales/chimere/models.py:908 +#: extra-locales/chimere/models.py:909 msgid "Property" msgstr "Propriété" -- cgit v1.2.3 From b2e4776595bd3b85d2ace84bf348704dd3a8c9bf Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 22 May 2012 11:54:01 +0200 Subject: Create dirs to overload templates in example_project --- templates/chimere/blocks/overload_templates_here | 0 templates/chimere/overload_templates_here | 0 templates/overload_templates_here | 0 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 templates/chimere/blocks/overload_templates_here create mode 100644 templates/chimere/overload_templates_here create mode 100644 templates/overload_templates_here diff --git a/templates/chimere/blocks/overload_templates_here b/templates/chimere/blocks/overload_templates_here new file mode 100644 index 0000000..e69de29 diff --git a/templates/chimere/overload_templates_here b/templates/chimere/overload_templates_here new file mode 100644 index 0000000..e69de29 diff --git a/templates/overload_templates_here b/templates/overload_templates_here new file mode 100644 index 0000000..e69de29 -- cgit v1.2.3 From cee85630e4518b6ae63d395a1bf1d3ee9248846b Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 3 Jul 2012 00:26:00 +0200 Subject: Fix feeds - remove BASE_URL ref * fix area feeds * fix url feeds * temporary fix: pass Marker from BaseGeoManager to GeoManager to fix a strange error in area feeds using contained filter --- settings.py | 1 - 1 file changed, 1 deletion(-) diff --git a/settings.py b/settings.py index 82c4454..a7e8ec7 100644 --- a/settings.py +++ b/settings.py @@ -14,7 +14,6 @@ ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" SERVER_URL = 'http://www.mydomain.com/' EXTRA_URL = 'chimere/' -BASE_URL = SERVER_URL + EXTRA_URL EMAIL_HOST = 'localhost' STATIC_URL = '/' + EXTRA_URL + 'static/' STATIC_ROOT = ROOT_PATH + 'static/' -- cgit v1.2.3 From f9e779bd27fed50aaa4d9eb05a20c90593aa46e7 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 3 Jul 2012 00:34:00 +0200 Subject: Remove old reference to EXTRA_URL --- settings.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/settings.py b/settings.py index a7e8ec7..e821682 100644 --- a/settings.py +++ b/settings.py @@ -13,9 +13,8 @@ PROJECT_NAME = u'Chimère' ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" SERVER_URL = 'http://www.mydomain.com/' -EXTRA_URL = 'chimere/' EMAIL_HOST = 'localhost' -STATIC_URL = '/' + EXTRA_URL + 'static/' +STATIC_URL = '/static/' STATIC_ROOT = ROOT_PATH + 'static/' TINYMCE_URL = '/tinymce/' @@ -124,13 +123,12 @@ MEDIA_ROOT = ROOT_PATH + 'media/' # URL that handles the media served from MEDIA_ROOT. # Example: "http://media.lawrence.com" -MEDIA_URL = '/' + EXTRA_URL + 'media/' +MEDIA_URL = '/media/' # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a # trailing slash. # Examples: "http://foo.com/media/", "/media/". -ADMIN_MEDIA_PREFIX = '/' if EXTRA_URL else '' -ADMIN_MEDIA_PREFIX += EXTRA_URL + '/admin-media/' +ADMIN_MEDIA_PREFIX = '/admin-media/' # Make this unique, and don't share it with anybody. SECRET_KEY = 'achanger_!ToChange!' -- cgit v1.2.3 From cac51cf98ed10ccaf7a5639d6c88d8147d304df2 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 5 Jul 2012 19:50:18 +0200 Subject: Fix bad share networks links --- settings.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/settings.py b/settings.py index e821682..69a3fbf 100644 --- a/settings.py +++ b/settings.py @@ -227,11 +227,12 @@ try: except ImportError, e: print 'Unable to load local_settings.py:', e -if 'SHARE_NETWORKS' not in globals(): +if 'CHIMERE_SHARE_NETWORKS' not in globals(): # after the locals to get the right STATIC_URL # share with - SHARE_NETWORKS = ( + global CHIMERE_SHARE_NETWORKS + CHIMERE_SHARE_NETWORKS = ( ("Email", 'mailto:?subject=%(text)s&body=%(url)s', STATIC_URL + 'chimere/img/email.png'), ("Facebook", 'http://www.facebook.com/sharer.php?t=%(text)s&u=%(url)s', -- cgit v1.2.3 From bd2ac04b30986f5bae452c15d0d50803064df755 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 11 Jul 2012 16:14:38 +0200 Subject: Update doc - minor fix on description where no area is provided --- local_settings.py.sample | 29 +++++++++++++++++++++++++++++ settings.py | 1 - 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 local_settings.py.sample diff --git a/local_settings.py.sample b/local_settings.py.sample new file mode 100644 index 0000000..9ccd41d --- /dev/null +++ b/local_settings.py.sample @@ -0,0 +1,29 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +# rename this file to local_settings.py and overload settings in this file + +import os + +CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL +CHIMERE_OSM_USER = 'osm_user' +CHIMERE_OSM_PASSWORD = 'osm_pass' + +ADMINS = ( + # ('Your Name', 'your_email@domain.com'), +) + +MANAGERS = ADMINS + +DATABASES = { + 'default': { + 'NAME': 'chimere', + 'ENGINE': 'django.contrib.gis.db.backends.postgis', + 'HOST': 'localhost', + 'PORT': '5432', + 'USER': 'postgres', + 'PASSWORD': '', + }, +} + +ROOT_URLCONF = 'example_project.urls' diff --git a/settings.py b/settings.py index 69a3fbf..0164673 100644 --- a/settings.py +++ b/settings.py @@ -12,7 +12,6 @@ TEMPLATE_DEBUG = DEBUG PROJECT_NAME = u'Chimère' ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" -SERVER_URL = 'http://www.mydomain.com/' EMAIL_HOST = 'localhost' STATIC_URL = '/static/' STATIC_ROOT = ROOT_PATH + 'static/' -- cgit v1.2.3 From 63e0f32df8835845356dac0f09fc61fc0d6214f9 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 12 Jul 2012 09:18:22 +0200 Subject: Settings: Fix default settings --- settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.py b/settings.py index 0164673..1eed91b 100644 --- a/settings.py +++ b/settings.py @@ -213,7 +213,7 @@ LOGGING = {'version': 1, 'propagate': False, }, # Your own app - this assumes all your logger names start with "myapp." - 'main': { + 'chimere': { 'handlers': ['logfile'], 'level': 'WARNING', # Or maybe INFO or DEBUG 'propogate': False -- cgit v1.2.3 From f2f33f19d7c55662f954fc8a77e0e812e1e12d75 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 18 Jul 2012 21:29:08 +0200 Subject: Improve user submissions (routes and markers) --- locale/fr/LC_MESSAGES/django.po | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 8ef85f9..2f730e4 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -656,7 +656,7 @@ msgstr "Mode création" #: extra-locales/chimere/widgets.py:245 msgid "To start drawing the route click on the toggle button: \"Draw\"." -msgstr "Pour commencer le dessin cliquez sur le bouton : « Tracer » " +msgstr "Pour commencer le dessin cliquez sur le bouton : « Tracer »." #: extra-locales/chimere/widgets.py:247 msgid "Then click on the map to begin the drawing." @@ -679,8 +679,8 @@ msgid "" "While creating to undo a drawing click again on the toggle button \"Stop " "drawing\"." msgstr "" -"En mode création vous pouvez annuler un tracé en appuyant sur le bouton « " -"Arrêter le tracé »" +"En mode création vous pouvez annuler un tracé en appuyant sur le bouton « " +"Arrêter le tracé »." #: extra-locales/chimere/widgets.py:256 msgid "Modification mode" @@ -698,7 +698,7 @@ msgid "" "\" key." msgstr "" "Pour supprimer un point, mettez le curseur de la souris sur celui-ci et " -"appuyez sur le touche « d » ou « Suppr »" +"appuyez sur le touche « d » ou « Suppr »." #: extra-locales/chimere/widgets.py:260 msgid "" -- cgit v1.2.3 From 33e1c4c9ebe28a439b6d8e73d759c619cdeee2d4 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 18 Jul 2012 23:01:30 +0200 Subject: Minor fix in translation --- locale/fr/LC_MESSAGES/django.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 2f730e4..8d805b3 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -465,7 +465,7 @@ msgstr "Catégories cochées par défaut" #: extra-locales/chimere/models.py:817 msgid "Restricted to theses subcategories" -msgstr "Restreindres à ces sous-catégories" +msgstr "Restreindre à ces sous-catégories" #: extra-locales/chimere/models.py:818 msgid "If no subcategory is set all subcategories are available" -- cgit v1.2.3 From f516c26beefc118a9a5b23083df233c2339404ef Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 24 Jul 2012 17:46:26 +0200 Subject: Update translation --- locale/fr/LC_MESSAGES/django.po | 430 +++++++++++++++++++++------------------- 1 file changed, 226 insertions(+), 204 deletions(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 8d805b3..929fd4a 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -7,18 +7,18 @@ msgid "" msgstr "" "Project-Id-Version: 0.2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-05-17 12:41+0200\n" +"POT-Creation-Date: 2012-07-24 17:45+0200\n" "PO-Revision-Date: 2010-03-20 20:00+0100\n" "Last-Translator: Étienne Loks \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: extra-locales/chimere/__init__.py:8 extra-locales/chimere/models.py:485 +#: extra-locales/chimere/__init__.py:8 extra-locales/chimere/models.py:490 msgid "Multimedia files" msgstr "Fichiers multimedias" -#: extra-locales/chimere/__init__.py:9 extra-locales/chimere/models.py:534 +#: extra-locales/chimere/__init__.py:9 extra-locales/chimere/models.py:539 msgid "Picture files" msgstr "Fichiers d'image" @@ -75,445 +75,452 @@ msgstr "Annuler l'export" msgid "Export to osm" msgstr "Exporter vers osm" -#: extra-locales/chimere/feeds.py:122 extra-locales/chimere/feeds.py:209 +#: extra-locales/chimere/feeds.py:124 extra-locales/chimere/feeds.py:211 msgid "Last points of interest" msgstr "Derniers points d'intérêt" -#: extra-locales/chimere/feeds.py:128 +#: extra-locales/chimere/feeds.py:130 msgid "Latest points of interest from " msgstr "Nouveaux points d'intérêt de " -#: extra-locales/chimere/feeds.py:174 +#: extra-locales/chimere/feeds.py:176 msgid "Last points of interest by area" msgstr "Nouveaux points d'intérêt par zone" -#: extra-locales/chimere/forms.py:75 +#: extra-locales/chimere/forms.py:76 msgid "New submission for" msgstr "Nouvelle proposition pour" -#: extra-locales/chimere/forms.py:76 +#: extra-locales/chimere/forms.py:77 #, python-format msgid "The new item \"%s\" has been submited in the category: " msgstr "Le nouvel élément « %s » a été proposé dans la catégorie : " -#: extra-locales/chimere/forms.py:78 +#: extra-locales/chimere/forms.py:79 msgid "To valid, precise or unvalid this item: " msgstr "Pour valider, préciser ou rejeter cet élément : " -#: extra-locales/chimere/forms.py:87 +#: extra-locales/chimere/forms.py:89 msgid "Email (optional)" msgstr "Courriel (optionnel) " -#: extra-locales/chimere/forms.py:88 +#: extra-locales/chimere/forms.py:90 msgid "Object" msgstr "Objet" -#: extra-locales/chimere/forms.py:145 +#: extra-locales/chimere/forms.py:147 msgid "End date has been set with no start date" msgstr "Une date de fin a été donnée sans date de début" -#: extra-locales/chimere/forms.py:233 extra-locales/chimere/models.py:135 -#: extra-locales/chimere/models.py:428 extra-locales/chimere/models.py:520 -#: extra-locales/chimere/models.py:614 -#: extra-locales/chimere/templates/chimere/edit_route.html:41 -msgid "Image" -msgstr "Image" - -#: extra-locales/chimere/forms.py:345 +#: extra-locales/chimere/forms.py:358 msgid "File" msgstr "Fichier" -#: extra-locales/chimere/forms.py:351 +#: extra-locales/chimere/forms.py:364 msgid "Bad file format: this must be a GPX or KML file" msgstr "Mauvais format de fichier : KML et GPX sont supportés" -#: extra-locales/chimere/forms.py:356 extra-locales/chimere/models.py:47 -#: extra-locales/chimere/models.py:100 extra-locales/chimere/models.py:121 -#: extra-locales/chimere/models.py:134 extra-locales/chimere/models.py:148 -#: extra-locales/chimere/models.py:230 extra-locales/chimere/models.py:432 -#: extra-locales/chimere/models.py:475 extra-locales/chimere/models.py:519 -#: extra-locales/chimere/models.py:550 extra-locales/chimere/models.py:786 -#: extra-locales/chimere/models.py:798 extra-locales/chimere/models.py:878 +#: extra-locales/chimere/forms.py:369 extra-locales/chimere/models.py:48 +#: extra-locales/chimere/models.py:101 extra-locales/chimere/models.py:122 +#: extra-locales/chimere/models.py:135 extra-locales/chimere/models.py:149 +#: extra-locales/chimere/models.py:232 extra-locales/chimere/models.py:437 +#: extra-locales/chimere/models.py:480 extra-locales/chimere/models.py:524 +#: extra-locales/chimere/models.py:555 extra-locales/chimere/models.py:792 +#: extra-locales/chimere/models.py:804 extra-locales/chimere/models.py:884 +#: extra-locales/chimere/templates/chimere/edit.html:39 +#: extra-locales/chimere/templates/chimere/edit_route.html:36 msgid "Name" msgstr "Nom" -#: extra-locales/chimere/forms.py:365 extra-locales/chimere/models.py:830 +#: extra-locales/chimere/forms.py:378 extra-locales/chimere/models.py:836 msgid "Area" msgstr "Zone" -#: extra-locales/chimere/models.py:48 extra-locales/chimere/models.py:122 -#: extra-locales/chimere/models.py:149 extra-locales/chimere/models.py:239 -#: extra-locales/chimere/models.py:436 extra-locales/chimere/models.py:804 -#: extra-locales/chimere/models.py:880 +#: extra-locales/chimere/models.py:49 extra-locales/chimere/models.py:123 +#: extra-locales/chimere/models.py:150 extra-locales/chimere/models.py:241 +#: extra-locales/chimere/models.py:441 extra-locales/chimere/models.py:810 +#: extra-locales/chimere/models.py:886 msgid "Available" msgstr "Disponible" -#: extra-locales/chimere/models.py:49 +#: extra-locales/chimere/models.py:50 msgid "Date" msgstr "Date" -#: extra-locales/chimere/models.py:55 extra-locales/chimere/models.py:56 +#: extra-locales/chimere/models.py:56 extra-locales/chimere/models.py:57 #: extra-locales/chimere/templates/chimere/blocks/welcome.html:5 msgid "News" msgstr "Nouvelle" -#: extra-locales/chimere/models.py:61 +#: extra-locales/chimere/models.py:62 msgid "Parameters" msgstr "Paramètres" -#: extra-locales/chimere/models.py:65 +#: extra-locales/chimere/models.py:66 msgid "TinyUrl" msgstr "Mini-url" -#: extra-locales/chimere/models.py:104 extra-locales/chimere/models.py:111 -#: extra-locales/chimere/models.py:151 +#: extra-locales/chimere/models.py:105 extra-locales/chimere/models.py:112 +#: extra-locales/chimere/models.py:152 msgid "Color theme" msgstr "Thème de couleur" -#: extra-locales/chimere/models.py:109 +#: extra-locales/chimere/models.py:110 msgid "Code" msgstr "Code" -#: extra-locales/chimere/models.py:110 extra-locales/chimere/models.py:123 -#: extra-locales/chimere/models.py:153 extra-locales/chimere/models.py:477 -#: extra-locales/chimere/models.py:526 extra-locales/chimere/models.py:803 -#: extra-locales/chimere/models.py:867 extra-locales/chimere/models.py:879 +#: extra-locales/chimere/models.py:111 extra-locales/chimere/models.py:124 +#: extra-locales/chimere/models.py:154 extra-locales/chimere/models.py:482 +#: extra-locales/chimere/models.py:531 extra-locales/chimere/models.py:809 +#: extra-locales/chimere/models.py:873 extra-locales/chimere/models.py:885 msgid "Order" msgstr "Ordre" -#: extra-locales/chimere/models.py:116 +#: extra-locales/chimere/models.py:117 msgid "Color" msgstr "Couleur" -#: extra-locales/chimere/models.py:129 extra-locales/chimere/models.py:147 -msgid "Category" -msgstr "Catégorie" +#: extra-locales/chimere/models.py:130 extra-locales/chimere/models.py:148 +#: extra-locales/chimere/templates/chimere/main_map.html:13 +msgid "Theme" +msgstr "Thème" + +#: extra-locales/chimere/models.py:136 extra-locales/chimere/models.py:433 +#: extra-locales/chimere/models.py:525 extra-locales/chimere/models.py:620 +msgid "Image" +msgstr "Image" -#: extra-locales/chimere/models.py:137 extra-locales/chimere/models.py:522 -#: extra-locales/chimere/models.py:616 +#: extra-locales/chimere/models.py:138 extra-locales/chimere/models.py:527 +#: extra-locales/chimere/models.py:622 msgid "Height" msgstr "Hauteur" -#: extra-locales/chimere/models.py:138 extra-locales/chimere/models.py:523 -#: extra-locales/chimere/models.py:617 +#: extra-locales/chimere/models.py:139 extra-locales/chimere/models.py:528 +#: extra-locales/chimere/models.py:623 msgid "Width" msgstr "Largeur" -#: extra-locales/chimere/models.py:142 extra-locales/chimere/models.py:150 +#: extra-locales/chimere/models.py:143 extra-locales/chimere/models.py:151 msgid "Icon" msgstr "Icône" -#: extra-locales/chimere/models.py:154 +#: extra-locales/chimere/models.py:155 msgid "Marker" msgstr "Point d'intérêt" -#: extra-locales/chimere/models.py:155 extra-locales/chimere/models.py:610 -#: extra-locales/chimere/models.py:625 -#: extra-locales/chimere/templates/chimere/edit_route.html:35 +#: extra-locales/chimere/models.py:156 extra-locales/chimere/models.py:616 +#: extra-locales/chimere/models.py:631 +#: extra-locales/chimere/templates/chimere/edit_route.html:27 msgid "Route" msgstr "Trajet" -#: extra-locales/chimere/models.py:156 +#: extra-locales/chimere/models.py:157 msgid "Both" msgstr "Mixte" -#: extra-locales/chimere/models.py:157 +#: extra-locales/chimere/models.py:158 msgid "Item type" msgstr "Type d'élément" -#: extra-locales/chimere/models.py:162 -msgid "Subcategory" -msgstr "Sous-catégorie" +#: extra-locales/chimere/models.py:163 +msgid "Subtheme" +msgstr "Sous-thème" + +#: extra-locales/chimere/models.py:164 +msgid "Subthemes" +msgstr "Sous-thèmes" -#: extra-locales/chimere/models.py:208 +#: extra-locales/chimere/models.py:210 msgid "Importer type" msgstr "Type d'import" -#: extra-locales/chimere/models.py:211 extra-locales/chimere/models.py:250 +#: extra-locales/chimere/models.py:213 extra-locales/chimere/models.py:252 msgid "Source" msgstr "Source" -#: extra-locales/chimere/models.py:213 +#: extra-locales/chimere/models.py:215 msgid "Filter" msgstr "Filtre" -#: extra-locales/chimere/models.py:216 +#: extra-locales/chimere/models.py:218 msgid "Associated subcategories" msgstr "Sous-catégories associées" -#: extra-locales/chimere/models.py:217 +#: extra-locales/chimere/models.py:219 msgid "State" msgstr "État" -#: extra-locales/chimere/models.py:219 +#: extra-locales/chimere/models.py:221 msgid "SRID" msgstr "SRID" -#: extra-locales/chimere/models.py:220 +#: extra-locales/chimere/models.py:222 msgid "Zipped file" msgstr "Fichier zippé" -#: extra-locales/chimere/models.py:223 +#: extra-locales/chimere/models.py:225 msgid "Importer" msgstr "Import" -#: extra-locales/chimere/models.py:232 +#: extra-locales/chimere/models.py:234 msgid "Submitter session key" msgstr "Clé de session du demandeur" -#: extra-locales/chimere/models.py:234 +#: extra-locales/chimere/models.py:236 msgid "Submitter email" msgstr "Courriel du demandeur" -#: extra-locales/chimere/models.py:236 +#: extra-locales/chimere/models.py:238 msgid "Submitter comment" msgstr "Commentaire du demandeur" -#: extra-locales/chimere/models.py:238 +#: extra-locales/chimere/models.py:240 msgid "Submited" msgstr "Soumis" -#: extra-locales/chimere/models.py:240 +#: extra-locales/chimere/models.py:242 msgid "Modified" msgstr "Modifié" -#: extra-locales/chimere/models.py:241 +#: extra-locales/chimere/models.py:243 msgid "Disabled" msgstr "Désactivé" -#: extra-locales/chimere/models.py:242 +#: extra-locales/chimere/models.py:244 msgid "Imported" msgstr "Importé" -#: extra-locales/chimere/models.py:243 +#: extra-locales/chimere/models.py:245 msgid "Excluded" msgstr "Exclu" -#: extra-locales/chimere/models.py:245 +#: extra-locales/chimere/models.py:247 msgid "Status" msgstr "État" -#: extra-locales/chimere/models.py:246 +#: extra-locales/chimere/models.py:248 msgid "Import key" msgstr "Clé d'import" -#: extra-locales/chimere/models.py:248 +#: extra-locales/chimere/models.py:250 msgid "Import version" msgstr "Version de l'import" -#: extra-locales/chimere/models.py:253 -#: extra-locales/chimere/templates/chimere/edit.html:44 -#: extra-locales/chimere/templates/chimere/edit_route.html:47 +#: extra-locales/chimere/models.py:255 +#: extra-locales/chimere/templates/chimere/edit.html:56 +#: extra-locales/chimere/templates/chimere/edit_route.html:52 msgid "Start date" msgstr "Date de début" -#: extra-locales/chimere/models.py:254 +#: extra-locales/chimere/models.py:256 msgid "Not mandatory. Set it for dated item such as event. Format YYYY-MM-DD" msgstr "" "Optionnel. Précisez ce champ pour les éléments datés comme un événement. " "Format du champ : AAAA-MM-JJ" -#: extra-locales/chimere/models.py:256 -#: extra-locales/chimere/templates/chimere/edit.html:50 -#: extra-locales/chimere/templates/chimere/edit_route.html:53 +#: extra-locales/chimere/models.py:258 +#: extra-locales/chimere/templates/chimere/edit.html:62 +#: extra-locales/chimere/templates/chimere/edit_route.html:58 msgid "End date" msgstr "Date de fin" -#: extra-locales/chimere/models.py:257 +#: extra-locales/chimere/models.py:259 msgid "" "Not mandatory. Set it only if you have a multi-day event. Format YYYY-MM-DD" msgstr "" "Optionnel. Précisez ce champ seulement pour des événements durant plusieurs " "jours. Format du champ : AAAA-MM-JJ" -#: extra-locales/chimere/models.py:289 +#: extra-locales/chimere/models.py:291 msgid "Reference marker" msgstr "Point d'intérêt de référence" -#: extra-locales/chimere/models.py:290 +#: extra-locales/chimere/models.py:292 msgid "Localisation" msgstr "Localisation" -#: extra-locales/chimere/models.py:292 +#: extra-locales/chimere/models.py:294 msgid "Available Date" msgstr "Date de mise en disponibilité" -#: extra-locales/chimere/models.py:296 +#: extra-locales/chimere/models.py:298 +#: extra-locales/chimere/templates/chimere/edit.html:49 +#: extra-locales/chimere/templates/chimere/edit_route.html:46 msgid "Description" msgstr "Description" -#: extra-locales/chimere/models.py:335 extra-locales/chimere/models.py:902 +#: extra-locales/chimere/models.py:337 extra-locales/chimere/models.py:908 msgid "Point of interest" msgstr "Point d'intérêt" -#: extra-locales/chimere/models.py:426 +#: extra-locales/chimere/models.py:431 msgid "Audio" msgstr "Audio" -#: extra-locales/chimere/models.py:427 +#: extra-locales/chimere/models.py:432 msgid "Video" msgstr "Vidéo" -#: extra-locales/chimere/models.py:429 +#: extra-locales/chimere/models.py:434 msgid "Other" msgstr "Autre" -#: extra-locales/chimere/models.py:430 +#: extra-locales/chimere/models.py:435 msgid "Media type" msgstr "Type de media" -#: extra-locales/chimere/models.py:433 +#: extra-locales/chimere/models.py:438 msgid "Mime type" msgstr "Type mime" -#: extra-locales/chimere/models.py:435 +#: extra-locales/chimere/models.py:440 msgid "Inside an iframe" msgstr "À l'intérieur d'un iframe" -#: extra-locales/chimere/models.py:439 +#: extra-locales/chimere/models.py:444 msgid "Multimedia type" msgstr "Type de multimedia" -#: extra-locales/chimere/models.py:440 +#: extra-locales/chimere/models.py:445 msgid "Multimedia types" msgstr "Types de multimedia" -#: extra-locales/chimere/models.py:476 +#: extra-locales/chimere/models.py:481 msgid "Url" msgstr "Url" -#: extra-locales/chimere/models.py:479 extra-locales/chimere/models.py:524 +#: extra-locales/chimere/models.py:484 extra-locales/chimere/models.py:529 msgid "Display inside the description?" msgstr "Apparaît dans la description ?" -#: extra-locales/chimere/models.py:484 +#: extra-locales/chimere/models.py:489 msgid "Multimedia file" msgstr "Fichier multimedia" -#: extra-locales/chimere/models.py:533 +#: extra-locales/chimere/models.py:538 msgid "Picture file" msgstr "Fichier d'image" -#: extra-locales/chimere/models.py:551 +#: extra-locales/chimere/models.py:556 msgid "Raw file (gpx or kml)" msgstr "Fichier brut (gpx ou kml)" -#: extra-locales/chimere/models.py:552 +#: extra-locales/chimere/models.py:557 msgid "Simplified file" msgstr "Fichier simplifié" -#: extra-locales/chimere/models.py:554 +#: extra-locales/chimere/models.py:559 msgid "KML" msgstr "KML" -#: extra-locales/chimere/models.py:554 +#: extra-locales/chimere/models.py:559 msgid "GPX" msgstr "GPX" -#: extra-locales/chimere/models.py:559 +#: extra-locales/chimere/models.py:564 msgid "Route file" msgstr "Fichier de trajet" -#: extra-locales/chimere/models.py:560 +#: extra-locales/chimere/models.py:565 msgid "Route files" msgstr "Fichiers de trajet" -#: extra-locales/chimere/models.py:609 +#: extra-locales/chimere/models.py:615 msgid "Reference route" msgstr "Trajet de référence" -#: extra-locales/chimere/models.py:613 +#: extra-locales/chimere/models.py:619 msgid "Associated file" msgstr "Fichier associé" -#: extra-locales/chimere/models.py:787 +#: extra-locales/chimere/models.py:793 msgid "Layer code" msgstr "Code pour la couche" -#: extra-locales/chimere/models.py:793 +#: extra-locales/chimere/models.py:799 msgid "Layer" msgstr "Couche" -#: extra-locales/chimere/models.py:799 +#: extra-locales/chimere/models.py:805 msgid "Area urn" msgstr "Urn de la zone" -#: extra-locales/chimere/models.py:801 +#: extra-locales/chimere/models.py:807 #: extra-locales/chimere/templates/chimere/blocks/welcome.html:3 msgid "Welcome message" msgstr "Message d'accueil" -#: extra-locales/chimere/models.py:805 +#: extra-locales/chimere/models.py:811 msgid "Upper left corner" msgstr "Coin en haut à gauche" -#: extra-locales/chimere/models.py:807 +#: extra-locales/chimere/models.py:813 msgid "Lower right corner" msgstr "Coin en bas à droite" -#: extra-locales/chimere/models.py:809 +#: extra-locales/chimere/models.py:815 msgid "Default area" msgstr "Zone par défaut" -#: extra-locales/chimere/models.py:810 +#: extra-locales/chimere/models.py:816 msgid "Only one area is set by default" msgstr "Seule une zone est définie par défaut" -#: extra-locales/chimere/models.py:814 +#: extra-locales/chimere/models.py:820 msgid "Categories checked by default" msgstr "Catégories cochées par défaut" -#: extra-locales/chimere/models.py:817 +#: extra-locales/chimere/models.py:823 msgid "Restricted to theses subcategories" msgstr "Restreindre à ces sous-catégories" -#: extra-locales/chimere/models.py:818 +#: extra-locales/chimere/models.py:824 msgid "If no subcategory is set all subcategories are available" msgstr "" "Si aucune sous-catégorie n'est définie toutes les sous-catégories sont " "disponibles" -#: extra-locales/chimere/models.py:819 +#: extra-locales/chimere/models.py:825 msgid "Link to an external CSS" msgstr "Lien vers une feuille de style externe" -#: extra-locales/chimere/models.py:821 +#: extra-locales/chimere/models.py:827 msgid "Restrict to the area extent" msgstr "Restreindre à l'étendue de la zone" -#: extra-locales/chimere/models.py:868 +#: extra-locales/chimere/models.py:874 msgid "Default layer" msgstr "Couche par défaut" -#: extra-locales/chimere/models.py:872 extra-locales/chimere/models.py:873 +#: extra-locales/chimere/models.py:878 extra-locales/chimere/models.py:879 msgid "Layers" msgstr "Couches" -#: extra-locales/chimere/models.py:881 +#: extra-locales/chimere/models.py:887 msgid "Text" msgstr "Texte" -#: extra-locales/chimere/models.py:882 +#: extra-locales/chimere/models.py:888 msgid "Long text" msgstr "Texte long" -#: extra-locales/chimere/models.py:883 +#: extra-locales/chimere/models.py:889 msgid "Password" msgstr "Mot de passe" -#: extra-locales/chimere/models.py:887 +#: extra-locales/chimere/models.py:893 msgid "Type" msgstr "Type" -#: extra-locales/chimere/models.py:892 extra-locales/chimere/models.py:904 +#: extra-locales/chimere/models.py:898 extra-locales/chimere/models.py:910 msgid "Property model" msgstr "Modèle de propriété" -#: extra-locales/chimere/models.py:905 +#: extra-locales/chimere/models.py:911 msgid "Value" msgstr "Valeur" -#: extra-locales/chimere/models.py:909 +#: extra-locales/chimere/models.py:915 msgid "Property" msgstr "Propriété" @@ -567,33 +574,41 @@ msgstr "Export échoué" msgid "Export canceled" msgstr "Export annulé" -#: extra-locales/chimere/utils.py:69 extra-locales/chimere/utils.py:110 +#: extra-locales/chimere/utils.py:104 extra-locales/chimere/utils.py:152 msgid "Bad zip file" msgstr "Mauvais fichier zip" -#: extra-locales/chimere/utils.py:113 +#: extra-locales/chimere/utils.py:155 msgid "Missing file(s) inside the zip file" msgstr "Fichier(s) manquant(s) dans l'archive zip" -#: extra-locales/chimere/utils.py:240 +#: extra-locales/chimere/utils.py:284 msgid "Error while reading the data source." msgstr "Erreur lors de la lecture de la source." -#: extra-locales/chimere/utils.py:262 +#: extra-locales/chimere/utils.py:319 msgid "Type of geographic item of this shapefile is not managed by Chimère." msgstr "" "Les types des éléments géographiques de ce fichier Shapefile ne sont pas " "gérés par Chimère." -#: extra-locales/chimere/utils.py:345 +#: extra-locales/chimere/utils.py:400 msgid "Could not create file!" msgstr "Ne peut pas créer le fichier !" -#: extra-locales/chimere/utils.py:477 +#: extra-locales/chimere/utils.py:411 +msgid "Failed to create field" +msgstr "Ne peut pas créer un champ" + +#: extra-locales/chimere/utils.py:482 +msgid "Nothing to import" +msgstr "Rien à importer" + +#: extra-locales/chimere/utils.py:562 msgid "New items imported - validate them before exporting" msgstr "Nouveaux éléments importés - valider ceux-ci avant d'exporter" -#: extra-locales/chimere/utils.py:479 +#: extra-locales/chimere/utils.py:564 msgid "" "There are items from a former import not yet validated - validate them " "before exporting" @@ -601,23 +616,23 @@ msgstr "" "Il y a des éléments d'un import précédent pas encore validé - Validez les " "avant d'exporter" -#: extra-locales/chimere/utils.py:489 +#: extra-locales/chimere/utils.py:574 msgid "Bad param" msgstr "Mauvais paramètre" -#: extra-locales/chimere/views.py:200 +#: extra-locales/chimere/views.py:220 msgid "There are missing field(s) and/or errors in the submited form." msgstr "Il y a des champs manquants ou des erreurs dans ce formulaire." -#: extra-locales/chimere/views.py:279 +#: extra-locales/chimere/views.py:299 msgid "Bad file. Please check it with an external software." msgstr "Fichier incohérent. Merci de le vérifier avec un logiciel externe." -#: extra-locales/chimere/views.py:399 +#: extra-locales/chimere/views.py:421 msgid "Comments/request on the map" msgstr "Commentaires/requètes sur la carte" -#: extra-locales/chimere/views.py:402 +#: extra-locales/chimere/views.py:424 msgid "" "Thank you for your contribution. It will be taken into account. If you have " "left your email you may be contacted soon for more details." @@ -626,47 +641,48 @@ msgstr "" "laissé votre courriel vous serez peut-être contacté bientôt pour plus de " "détails." -#: extra-locales/chimere/views.py:406 +#: extra-locales/chimere/views.py:428 msgid "Temporary error. Renew your message later." msgstr "Erreur temporaire. Réenvoyez votre message plus tard." -#: extra-locales/chimere/views.py:535 +#: extra-locales/chimere/views.py:558 msgid "No category available in this area." msgstr "Pas de catégorie disponible sur cette zone." -#: extra-locales/chimere/views.py:642 +#: extra-locales/chimere/views.py:665 msgid "Incorrect choice in the list" msgstr "Choix incorrect dans la liste" -#: extra-locales/chimere/widgets.py:174 +#: extra-locales/chimere/widgets.py:187 msgid "Latitude" msgstr "Latitude" -#: extra-locales/chimere/widgets.py:174 +#: extra-locales/chimere/widgets.py:187 msgid "Longitude" msgstr "Longitude" -#: extra-locales/chimere/widgets.py:199 +#: extra-locales/chimere/widgets.py:212 msgid "Invalid point" msgstr "Point invalide" -#: extra-locales/chimere/widgets.py:244 +#: extra-locales/chimere/widgets.py:262 msgid "Creation mode" msgstr "Mode création" -#: extra-locales/chimere/widgets.py:245 +#: extra-locales/chimere/widgets.py:263 msgid "To start drawing the route click on the toggle button: \"Draw\"." -msgstr "Pour commencer le dessin cliquez sur le bouton : « Tracer »." +msgstr "" +"Pour commencer le dessin cliquez sur le bouton : « Tracer »." -#: extra-locales/chimere/widgets.py:247 +#: extra-locales/chimere/widgets.py:265 msgid "Then click on the map to begin the drawing." msgstr "Puis cliquez sur la carte pour commencer le dessin." -#: extra-locales/chimere/widgets.py:248 +#: extra-locales/chimere/widgets.py:266 msgid "You can add points by clicking again." msgstr "Vous pouvez ajouter des points en cliquant de nouveau." -#: extra-locales/chimere/widgets.py:249 +#: extra-locales/chimere/widgets.py:267 msgid "" "To finish the drawing double click. When the drawing is finished you can " "edit it." @@ -674,25 +690,25 @@ msgstr "" "Pour finir le tracé double-cliquez. Quand le tracé est fini vous pouvez " "toujours l'éditer." -#: extra-locales/chimere/widgets.py:251 +#: extra-locales/chimere/widgets.py:269 msgid "" "While creating to undo a drawing click again on the toggle button \"Stop " "drawing\"." msgstr "" -"En mode création vous pouvez annuler un tracé en appuyant sur le bouton « " -"Arrêter le tracé »." +"En mode création vous pouvez annuler un tracé en appuyant sur le bouton " +"« Arrêter le tracé »." -#: extra-locales/chimere/widgets.py:256 +#: extra-locales/chimere/widgets.py:274 msgid "Modification mode" msgstr "Mode modification" -#: extra-locales/chimere/widgets.py:257 +#: extra-locales/chimere/widgets.py:275 msgid "To move a point click on it and drag it to the desired position." msgstr "" "Pour bouger un point, cliquez dessus, maintenez le click pour le déposer à " "la position désirée." -#: extra-locales/chimere/widgets.py:258 +#: extra-locales/chimere/widgets.py:276 msgid "" "To delete a point move the mouse cursor over it and press the \"d\" or \"Del" "\" key." @@ -700,7 +716,7 @@ msgstr "" "Pour supprimer un point, mettez le curseur de la souris sur celui-ci et " "appuyez sur le touche « d » ou « Suppr »." -#: extra-locales/chimere/widgets.py:260 +#: extra-locales/chimere/widgets.py:278 msgid "" "To add a point click in the middle of a segment and drag the new point to " "the desired position" @@ -709,33 +725,33 @@ msgstr "" "maintenez le bouton appuyé et déplacez le nouveau point à la position " "désirée." -#: extra-locales/chimere/widgets.py:267 +#: extra-locales/chimere/widgets.py:285 msgid "Give a name and set category before uploading a file." msgstr "" "Renseignez le nom et choisissez au moins une catégorie avant de déposer un " "fichier." -#: extra-locales/chimere/widgets.py:270 +#: extra-locales/chimere/widgets.py:288 msgid "Upload a route file (GPX or KML)" msgstr "Déposer un trajet (fichier GPX ou KML)" -#: extra-locales/chimere/widgets.py:271 +#: extra-locales/chimere/widgets.py:289 msgid "or" msgstr "ou" -#: extra-locales/chimere/widgets.py:276 +#: extra-locales/chimere/widgets.py:294 msgid "Start \"hand\" drawing" msgstr "Commencer le tracé manuellement" -#: extra-locales/chimere/widgets.py:288 +#: extra-locales/chimere/widgets.py:317 msgid "Move on the map" msgstr "Se déplacer" -#: extra-locales/chimere/widgets.py:288 +#: extra-locales/chimere/widgets.py:317 msgid "Draw" msgstr "Tracer" -#: extra-locales/chimere/widgets.py:424 +#: extra-locales/chimere/widgets.py:442 msgid "Select..." msgstr "Sélectionner..." @@ -752,6 +768,11 @@ msgstr "Erreur interne du serveur" msgid "Administration de Chimère" msgstr "Administration de Chimère" +#: extra-locales/chimere/templates/chimere/base.html:18 +msgid "You must enable JavaScript in your browser to display Chimère." +msgstr "" +"Vous devez activer le JavaScript dans votre navigateur pour afficher Chimère." + #: extra-locales/chimere/templates/chimere/contactus.html:16 msgid "" "If you have some requests or remarks about this site you can leave them here." @@ -783,57 +804,46 @@ msgstr "Partager" msgid "Submit a modification" msgstr "Proposer une modification" -#: extra-locales/chimere/templates/chimere/edit.html:19 +#: extra-locales/chimere/templates/chimere/edit.html:20 msgid "Error" msgstr "Erreur" -#: extra-locales/chimere/templates/chimere/edit.html:23 +#: extra-locales/chimere/templates/chimere/edit.html:24 msgid "Add/modify a site" msgstr "Ajouter ou modifier un site" -#: extra-locales/chimere/templates/chimere/edit.html:24 -#: extra-locales/chimere/templates/chimere/edit_route.html:21 -msgid "indicates a mandatory field" -msgstr "indique un champ obligatoire" - -#: extra-locales/chimere/templates/chimere/edit.html:28 -#: extra-locales/chimere/templates/chimere/edit_route.html:25 -msgid "Site name" -msgstr "Nom du site" - -#: extra-locales/chimere/templates/chimere/edit.html:33 -#: extra-locales/chimere/templates/chimere/edit_route.html:30 -msgid "Categories" -msgstr "Catégories" - -#: extra-locales/chimere/templates/chimere/edit.html:38 +#: extra-locales/chimere/templates/chimere/edit.html:30 msgid "Point" msgstr "Point" -#: extra-locales/chimere/templates/chimere/edit.html:39 -#: extra-locales/chimere/templates/chimere/edit_route.html:36 +#: extra-locales/chimere/templates/chimere/edit.html:31 +#: extra-locales/chimere/templates/chimere/edit_route.html:28 msgid "Select a location for this new site" msgstr "Choisissez une localisation pour ce nouveau site" -#: extra-locales/chimere/templates/chimere/edit.html:72 -#: extra-locales/chimere/templates/chimere/edit_route.html:70 +#: extra-locales/chimere/templates/chimere/edit.html:37 +#: extra-locales/chimere/templates/chimere/edit_route.html:34 +msgid "indicates a mandatory field" +msgstr "indique un champ obligatoire" + +#: extra-locales/chimere/templates/chimere/edit.html:44 +#: extra-locales/chimere/templates/chimere/edit_route.html:41 +msgid "Themes" +msgstr "Thèmes" + +#: extra-locales/chimere/templates/chimere/edit.html:86 +#: extra-locales/chimere/templates/chimere/edit_route.html:77 msgid "Propose" msgstr "Proposez" -#: extra-locales/chimere/templates/chimere/edit_route.html:20 +#: extra-locales/chimere/templates/chimere/edit_route.html:21 msgid "Add/modify a route" msgstr "Ajout ou modifier un trajet" -#: extra-locales/chimere/templates/chimere/main_map.html:13 #: extra-locales/chimere/templates/chimere/main_map_simple.html:10 msgid "Topics" msgstr "Thèmes" -#: extra-locales/chimere/templates/chimere/main_map.html:33 -msgid "You must enable JavaScript in your browser to display Chimère." -msgstr "" -"Vous devez activer le JavaScript dans votre navigateur pour afficher Chimère." - #: extra-locales/chimere/templates/chimere/upload_file.html:13 msgid "Thank you for your submission!" msgstr "Merci pour votre proposition !" @@ -911,7 +921,7 @@ msgstr "Continuer l'édition de cet élément" msgid "Return to the map" msgstr "Retourner à la carte" -#: extra-locales/chimere/templates/chimere/blocks/welcome.html:28 +#: extra-locales/chimere/templates/chimere/blocks/welcome.html:31 msgid "See it on the map" msgstr "Voir sur la carte" @@ -948,3 +958,15 @@ msgstr "Choisir une zone pré-définie" #: extra-locales/chimere/templates/chimere/feeds/rss.html:64 msgid "Or select the area by zooming and panning this map" msgstr "Ou sélectionner une zone en zoomant et en se déplaçant sur cette carte" + +#~ msgid "Category" +#~ msgstr "Catégorie" + +#~ msgid "Subcategory" +#~ msgstr "Sous-catégorie" + +#~ msgid "Site name" +#~ msgstr "Nom du site" + +#~ msgid "Categories" +#~ msgstr "Catégories" -- cgit v1.2.3 From 0e5abeb934c23609da0c4cf9a03649421b043015 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 25 Jul 2012 22:06:40 +0200 Subject: Manage dynamic areas by areas --- locale/fr/LC_MESSAGES/django.po | 78 ++++++++++++++++++++++++----------------- settings.py | 2 -- 2 files changed, 45 insertions(+), 35 deletions(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 929fd4a..4e41334 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: 0.2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-07-24 17:45+0200\n" +"POT-Creation-Date: 2012-07-25 21:54+0200\n" "PO-Revision-Date: 2010-03-20 20:00+0100\n" "Last-Translator: Étienne Loks \n" "MIME-Version: 1.0\n" @@ -126,20 +126,20 @@ msgstr "Mauvais format de fichier : KML et GPX sont supportés" #: extra-locales/chimere/models.py:232 extra-locales/chimere/models.py:437 #: extra-locales/chimere/models.py:480 extra-locales/chimere/models.py:524 #: extra-locales/chimere/models.py:555 extra-locales/chimere/models.py:792 -#: extra-locales/chimere/models.py:804 extra-locales/chimere/models.py:884 +#: extra-locales/chimere/models.py:804 extra-locales/chimere/models.py:887 #: extra-locales/chimere/templates/chimere/edit.html:39 #: extra-locales/chimere/templates/chimere/edit_route.html:36 msgid "Name" msgstr "Nom" -#: extra-locales/chimere/forms.py:378 extra-locales/chimere/models.py:836 +#: extra-locales/chimere/forms.py:378 extra-locales/chimere/models.py:839 msgid "Area" msgstr "Zone" #: extra-locales/chimere/models.py:49 extra-locales/chimere/models.py:123 #: extra-locales/chimere/models.py:150 extra-locales/chimere/models.py:241 #: extra-locales/chimere/models.py:441 extra-locales/chimere/models.py:810 -#: extra-locales/chimere/models.py:886 +#: extra-locales/chimere/models.py:889 msgid "Available" msgstr "Disponible" @@ -172,7 +172,7 @@ msgstr "Code" #: extra-locales/chimere/models.py:111 extra-locales/chimere/models.py:124 #: extra-locales/chimere/models.py:154 extra-locales/chimere/models.py:482 #: extra-locales/chimere/models.py:531 extra-locales/chimere/models.py:809 -#: extra-locales/chimere/models.py:873 extra-locales/chimere/models.py:885 +#: extra-locales/chimere/models.py:876 extra-locales/chimere/models.py:888 msgid "Order" msgstr "Ordre" @@ -349,7 +349,7 @@ msgstr "Date de mise en disponibilité" msgid "Description" msgstr "Description" -#: extra-locales/chimere/models.py:337 extra-locales/chimere/models.py:908 +#: extra-locales/chimere/models.py:337 extra-locales/chimere/models.py:911 msgid "Point of interest" msgstr "Point d'intérêt" @@ -467,60 +467,72 @@ msgid "Only one area is set by default" msgstr "Seule une zone est définie par défaut" #: extra-locales/chimere/models.py:820 -msgid "Categories checked by default" -msgstr "Catégories cochées par défaut" +msgid "Themes checked by default" +msgstr "Thèmes cochés par défaut" + +#: extra-locales/chimere/models.py:821 +msgid "Themes dynamicaly displayed" +msgstr "Thèmes affichés dynamiquement" + +#: extra-locales/chimere/models.py:822 +msgid "" +"If checked, themes are only displayed in the menu if they are available on " +"the current extent." +msgstr "" +"Si coché, les thèmes sont disponibles sur le menu seulement si ils " +"apparaissent sur la zone affichée." -#: extra-locales/chimere/models.py:823 -msgid "Restricted to theses subcategories" -msgstr "Restreindre à ces sous-catégories" +#: extra-locales/chimere/models.py:826 +msgid "Restricted to theses subthemes" +msgstr "Restreindre à ces sous-thèmes" -#: extra-locales/chimere/models.py:824 -msgid "If no subcategory is set all subcategories are available" +#: extra-locales/chimere/models.py:827 +msgid "If no subtheme is set all subthemes are available" msgstr "" -"Si aucune sous-catégorie n'est définie toutes les sous-catégories sont " +"Si aucun sous-thème n'est défini tous les sous-thèmes sont " "disponibles" -#: extra-locales/chimere/models.py:825 +#: extra-locales/chimere/models.py:828 msgid "Link to an external CSS" msgstr "Lien vers une feuille de style externe" -#: extra-locales/chimere/models.py:827 +#: extra-locales/chimere/models.py:830 msgid "Restrict to the area extent" msgstr "Restreindre à l'étendue de la zone" -#: extra-locales/chimere/models.py:874 +#: extra-locales/chimere/models.py:877 msgid "Default layer" msgstr "Couche par défaut" -#: extra-locales/chimere/models.py:878 extra-locales/chimere/models.py:879 +#: extra-locales/chimere/models.py:881 extra-locales/chimere/models.py:882 msgid "Layers" msgstr "Couches" -#: extra-locales/chimere/models.py:887 +#: extra-locales/chimere/models.py:890 msgid "Text" msgstr "Texte" -#: extra-locales/chimere/models.py:888 +#: extra-locales/chimere/models.py:891 msgid "Long text" msgstr "Texte long" -#: extra-locales/chimere/models.py:889 +#: extra-locales/chimere/models.py:892 msgid "Password" msgstr "Mot de passe" -#: extra-locales/chimere/models.py:893 +#: extra-locales/chimere/models.py:896 msgid "Type" msgstr "Type" -#: extra-locales/chimere/models.py:898 extra-locales/chimere/models.py:910 +#: extra-locales/chimere/models.py:901 extra-locales/chimere/models.py:913 msgid "Property model" msgstr "Modèle de propriété" -#: extra-locales/chimere/models.py:911 +#: extra-locales/chimere/models.py:914 msgid "Value" msgstr "Valeur" -#: extra-locales/chimere/models.py:915 +#: extra-locales/chimere/models.py:918 msgid "Property" msgstr "Propriété" @@ -620,19 +632,19 @@ msgstr "" msgid "Bad param" msgstr "Mauvais paramètre" -#: extra-locales/chimere/views.py:220 +#: extra-locales/chimere/views.py:223 msgid "There are missing field(s) and/or errors in the submited form." msgstr "Il y a des champs manquants ou des erreurs dans ce formulaire." -#: extra-locales/chimere/views.py:299 +#: extra-locales/chimere/views.py:302 msgid "Bad file. Please check it with an external software." msgstr "Fichier incohérent. Merci de le vérifier avec un logiciel externe." -#: extra-locales/chimere/views.py:421 +#: extra-locales/chimere/views.py:424 msgid "Comments/request on the map" msgstr "Commentaires/requètes sur la carte" -#: extra-locales/chimere/views.py:424 +#: extra-locales/chimere/views.py:427 msgid "" "Thank you for your contribution. It will be taken into account. If you have " "left your email you may be contacted soon for more details." @@ -641,15 +653,15 @@ msgstr "" "laissé votre courriel vous serez peut-être contacté bientôt pour plus de " "détails." -#: extra-locales/chimere/views.py:428 +#: extra-locales/chimere/views.py:431 msgid "Temporary error. Renew your message later." msgstr "Erreur temporaire. Réenvoyez votre message plus tard." -#: extra-locales/chimere/views.py:558 +#: extra-locales/chimere/views.py:562 msgid "No category available in this area." msgstr "Pas de catégorie disponible sur cette zone." -#: extra-locales/chimere/views.py:665 +#: extra-locales/chimere/views.py:669 msgid "Incorrect choice in the list" msgstr "Choix incorrect dans la liste" @@ -921,7 +933,7 @@ msgstr "Continuer l'édition de cet élément" msgid "Return to the map" msgstr "Retourner à la carte" -#: extra-locales/chimere/templates/chimere/blocks/welcome.html:31 +#: extra-locales/chimere/templates/chimere/blocks/welcome.html:47 msgid "See it on the map" msgstr "Voir sur la carte" diff --git a/settings.py b/settings.py index 1eed91b..e0975e1 100644 --- a/settings.py +++ b/settings.py @@ -41,8 +41,6 @@ CHIMERE_EPSG_PROJECTION = 900913 # projection displayed to the end user by openlayers # chimere use the same projection to save its data in the database CHIMERE_EPSG_DISPLAY_PROJECTION = 4326 -# dynamic load of categories on the main map -CHIMERE_DYNAMIC_CATEGORIES = False # display of shortcuts for areas CHIMERE_DISPLAY_AREAS = True # number of day before an event to display -- cgit v1.2.3 From 479eb07ee0d7c0b1b6d7677d558033489842aa91 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 2 Aug 2012 13:49:55 +0200 Subject: Make Celery and Kombu optional (but the import is not available) --- settings.py | 31 ++++++++++++++++++++++--------- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/settings.py b/settings.py index e0975e1..29c7823 100644 --- a/settings.py +++ b/settings.py @@ -1,6 +1,7 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- +# Don't edit this file: # overload all theses settings in your local_settings.py file import os @@ -90,11 +91,6 @@ DATABASES = { }, } -# celery -import djcelery -djcelery.setup_loader() -BROKER_URL = 'django://' - # Local time zone for this installation. Choices can be found here: # http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE # although not all variations may be possible on all operating systems. @@ -164,7 +160,7 @@ TEMPLATE_CONTEXT_PROCESSORS = ( "django.core.context_processors.request", ) -INSTALLED_APPS = ( +INSTALLED_APPS = [ 'django.contrib.auth', 'django.contrib.admin', 'django.contrib.contenttypes', @@ -172,13 +168,30 @@ INSTALLED_APPS = ( 'django.contrib.sites', 'django.contrib.gis', 'django.contrib.staticfiles', - 'kombu.transport.django', - 'djcelery', 'south', 'chimere', # activate it if you want to use old migration scripts #'chimere.scripts', -) +] + +# celery +try: + import djceleryaaaaaa + import kombu + djcelery.setup_loader() + BROKER_URL = 'django://' + INSTALLED_APPS += ['kombu.transport.django', + 'djcelery'] +except ImportError: + # some import and export will not be available + pass + +INSTALLED_APPS += [ + 'south', + 'chimere', + # activate it if you want to use old migration scripts + #'chimere.scripts', +] LOGGING = {'version': 1, 'disable_existing_loggers': False, -- cgit v1.2.3 From 1b29b3d615fc0c7d52469e097eeefd711d23c414 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 2 Aug 2012 13:56:01 +0200 Subject: Rechange wording: from theme to categories --- locale/fr/LC_MESSAGES/django.po | 138 +++++++++++++++++++++------------------- 1 file changed, 72 insertions(+), 66 deletions(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 4e41334..8421b35 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: 0.2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-07-25 21:54+0200\n" +"POT-Creation-Date: 2012-08-02 13:55+0200\n" "PO-Revision-Date: 2010-03-20 20:00+0100\n" "Last-Translator: Étienne Loks \n" "MIME-Version: 1.0\n" @@ -46,32 +46,32 @@ msgstr "Flux RSS" msgid "Contact us" msgstr "Nous contacter" -#: extra-locales/chimere/admin.py:58 +#: extra-locales/chimere/admin.py:62 #: extra-locales/chimere/templates/chimere/feeds/rss.html:69 msgid "Validate" msgstr "Valider" -#: extra-locales/chimere/admin.py:69 +#: extra-locales/chimere/admin.py:73 msgid "Export to KML" msgstr "Exporter en KML" -#: extra-locales/chimere/admin.py:83 +#: extra-locales/chimere/admin.py:87 msgid "Export to Shapefile" msgstr "Exporter en Shapefile" -#: extra-locales/chimere/admin.py:169 +#: extra-locales/chimere/admin.py:173 msgid "Import" msgstr "Import" -#: extra-locales/chimere/admin.py:175 +#: extra-locales/chimere/admin.py:179 msgid "Cancel import" msgstr "Annuler l'import" -#: extra-locales/chimere/admin.py:181 +#: extra-locales/chimere/admin.py:185 msgid "Cancel export" msgstr "Annuler l'export" -#: extra-locales/chimere/admin.py:189 +#: extra-locales/chimere/admin.py:193 msgid "Export to osm" msgstr "Exporter vers osm" @@ -126,20 +126,20 @@ msgstr "Mauvais format de fichier : KML et GPX sont supportés" #: extra-locales/chimere/models.py:232 extra-locales/chimere/models.py:437 #: extra-locales/chimere/models.py:480 extra-locales/chimere/models.py:524 #: extra-locales/chimere/models.py:555 extra-locales/chimere/models.py:792 -#: extra-locales/chimere/models.py:804 extra-locales/chimere/models.py:887 +#: extra-locales/chimere/models.py:804 extra-locales/chimere/models.py:889 #: extra-locales/chimere/templates/chimere/edit.html:39 #: extra-locales/chimere/templates/chimere/edit_route.html:36 msgid "Name" msgstr "Nom" -#: extra-locales/chimere/forms.py:378 extra-locales/chimere/models.py:839 +#: extra-locales/chimere/forms.py:378 extra-locales/chimere/models.py:841 msgid "Area" msgstr "Zone" #: extra-locales/chimere/models.py:49 extra-locales/chimere/models.py:123 #: extra-locales/chimere/models.py:150 extra-locales/chimere/models.py:241 #: extra-locales/chimere/models.py:441 extra-locales/chimere/models.py:810 -#: extra-locales/chimere/models.py:889 +#: extra-locales/chimere/models.py:891 msgid "Available" msgstr "Disponible" @@ -172,7 +172,7 @@ msgstr "Code" #: extra-locales/chimere/models.py:111 extra-locales/chimere/models.py:124 #: extra-locales/chimere/models.py:154 extra-locales/chimere/models.py:482 #: extra-locales/chimere/models.py:531 extra-locales/chimere/models.py:809 -#: extra-locales/chimere/models.py:876 extra-locales/chimere/models.py:888 +#: extra-locales/chimere/models.py:878 extra-locales/chimere/models.py:890 msgid "Order" msgstr "Ordre" @@ -182,8 +182,8 @@ msgstr "Couleur" #: extra-locales/chimere/models.py:130 extra-locales/chimere/models.py:148 #: extra-locales/chimere/templates/chimere/main_map.html:13 -msgid "Theme" -msgstr "Thème" +msgid "Category" +msgstr "Catégorie" #: extra-locales/chimere/models.py:136 extra-locales/chimere/models.py:433 #: extra-locales/chimere/models.py:525 extra-locales/chimere/models.py:620 @@ -223,12 +223,12 @@ msgid "Item type" msgstr "Type d'élément" #: extra-locales/chimere/models.py:163 -msgid "Subtheme" -msgstr "Sous-thème" +msgid "Sub-category" +msgstr "Sous-catégorie" #: extra-locales/chimere/models.py:164 -msgid "Subthemes" -msgstr "Sous-thèmes" +msgid "Sub-categories" +msgstr "Sous-catégories" #: extra-locales/chimere/models.py:210 msgid "Importer type" @@ -349,7 +349,7 @@ msgstr "Date de mise en disponibilité" msgid "Description" msgstr "Description" -#: extra-locales/chimere/models.py:337 extra-locales/chimere/models.py:911 +#: extra-locales/chimere/models.py:337 extra-locales/chimere/models.py:913 msgid "Point of interest" msgstr "Point d'intérêt" @@ -467,122 +467,122 @@ msgid "Only one area is set by default" msgstr "Seule une zone est définie par défaut" #: extra-locales/chimere/models.py:820 -msgid "Themes checked by default" -msgstr "Thèmes cochés par défaut" - -#: extra-locales/chimere/models.py:821 -msgid "Themes dynamicaly displayed" -msgstr "Thèmes affichés dynamiquement" +msgid "Sub-categories checked by default" +msgstr "Sous-catégories cochées par défaut" #: extra-locales/chimere/models.py:822 +msgid "Sub-categories dynamicaly displayed" +msgstr "Sous-categories affichées dynamiquement" + +#: extra-locales/chimere/models.py:823 msgid "" -"If checked, themes are only displayed in the menu if they are available on " -"the current extent." +"If checked, categories are only displayed in the menu if they are available " +"on the current extent." msgstr "" -"Si coché, les thèmes sont disponibles sur le menu seulement si ils " +"Si coché, les catégories sont disponibles sur le menu seulement si elles " "apparaissent sur la zone affichée." -#: extra-locales/chimere/models.py:826 -msgid "Restricted to theses subthemes" -msgstr "Restreindre à ces sous-thèmes" - #: extra-locales/chimere/models.py:827 -msgid "If no subtheme is set all subthemes are available" +msgid "Restricted to theses sub-categories" +msgstr "Restreindre à ces sous-categories" + +#: extra-locales/chimere/models.py:828 +msgid "If no sub-category is set all sub-categories are available" msgstr "" -"Si aucun sous-thème n'est défini tous les sous-thèmes sont " +"Si aucune sous-catégorie n'est définie toutes les sous-catégories sont " "disponibles" -#: extra-locales/chimere/models.py:828 +#: extra-locales/chimere/models.py:830 msgid "Link to an external CSS" msgstr "Lien vers une feuille de style externe" -#: extra-locales/chimere/models.py:830 +#: extra-locales/chimere/models.py:832 msgid "Restrict to the area extent" msgstr "Restreindre à l'étendue de la zone" -#: extra-locales/chimere/models.py:877 +#: extra-locales/chimere/models.py:879 msgid "Default layer" msgstr "Couche par défaut" -#: extra-locales/chimere/models.py:881 extra-locales/chimere/models.py:882 +#: extra-locales/chimere/models.py:883 extra-locales/chimere/models.py:884 msgid "Layers" msgstr "Couches" -#: extra-locales/chimere/models.py:890 +#: extra-locales/chimere/models.py:892 msgid "Text" msgstr "Texte" -#: extra-locales/chimere/models.py:891 +#: extra-locales/chimere/models.py:893 msgid "Long text" msgstr "Texte long" -#: extra-locales/chimere/models.py:892 +#: extra-locales/chimere/models.py:894 msgid "Password" msgstr "Mot de passe" -#: extra-locales/chimere/models.py:896 +#: extra-locales/chimere/models.py:898 msgid "Type" msgstr "Type" -#: extra-locales/chimere/models.py:901 extra-locales/chimere/models.py:913 +#: extra-locales/chimere/models.py:903 extra-locales/chimere/models.py:915 msgid "Property model" msgstr "Modèle de propriété" -#: extra-locales/chimere/models.py:914 +#: extra-locales/chimere/models.py:916 msgid "Value" msgstr "Valeur" -#: extra-locales/chimere/models.py:918 +#: extra-locales/chimere/models.py:920 msgid "Property" msgstr "Propriété" -#: extra-locales/chimere/tasks.py:42 +#: extra-locales/chimere/tasks.py:47 msgid "Import pending" msgstr "Import en attente" -#: extra-locales/chimere/tasks.py:43 +#: extra-locales/chimere/tasks.py:48 msgid "Import processing" msgstr "Import en cours" -#: extra-locales/chimere/tasks.py:44 +#: extra-locales/chimere/tasks.py:49 msgid "Import successfuly done" msgstr "Import fait avec succès" -#: extra-locales/chimere/tasks.py:45 +#: extra-locales/chimere/tasks.py:50 #, python-format msgid " %(new)d new item(s), %(updated)d updated item(s)" msgstr " %(new)d nouveau(x) élément(s), %(updated)d élément(s) mis à jour" -#: extra-locales/chimere/tasks.py:46 +#: extra-locales/chimere/tasks.py:51 msgid "Import failed" msgstr "Import échoué" -#: extra-locales/chimere/tasks.py:47 +#: extra-locales/chimere/tasks.py:52 msgid "Import canceled" msgstr "Import annulé" -#: extra-locales/chimere/tasks.py:48 +#: extra-locales/chimere/tasks.py:53 msgid "Export pending" msgstr "Export en attente" -#: extra-locales/chimere/tasks.py:49 +#: extra-locales/chimere/tasks.py:54 msgid "Export processing" msgstr "Export en cours" -#: extra-locales/chimere/tasks.py:50 +#: extra-locales/chimere/tasks.py:55 msgid "Export successfuly done" msgstr "Export réalisé avec succès" -#: extra-locales/chimere/tasks.py:51 +#: extra-locales/chimere/tasks.py:56 #, python-format msgid " %(updated)d updated item(s)" msgstr " %(updated)d éléments mis à jour" -#: extra-locales/chimere/tasks.py:52 +#: extra-locales/chimere/tasks.py:57 msgid "Export failed" msgstr "Export échoué" -#: extra-locales/chimere/tasks.py:53 +#: extra-locales/chimere/tasks.py:58 msgid "Export canceled" msgstr "Export annulé" @@ -840,8 +840,8 @@ msgstr "indique un champ obligatoire" #: extra-locales/chimere/templates/chimere/edit.html:44 #: extra-locales/chimere/templates/chimere/edit_route.html:41 -msgid "Themes" -msgstr "Thèmes" +msgid "Categories" +msgstr "Catégories" #: extra-locales/chimere/templates/chimere/edit.html:86 #: extra-locales/chimere/templates/chimere/edit_route.html:77 @@ -971,14 +971,20 @@ msgstr "Choisir une zone pré-définie" msgid "Or select the area by zooming and panning this map" msgstr "Ou sélectionner une zone en zoomant et en se déplaçant sur cette carte" -#~ msgid "Category" -#~ msgstr "Catégorie" +#~ msgid "Categorys" +#~ msgstr "Catégories" + +#~ msgid "Theme" +#~ msgstr "Thème" -#~ msgid "Subcategory" -#~ msgstr "Sous-catégorie" +#~ msgid "Subtheme" +#~ msgstr "Sous-thème" + +#~ msgid "Subthemes" +#~ msgstr "Sous-thèmes" + +#~ msgid "Themes" +#~ msgstr "Thèmes" #~ msgid "Site name" #~ msgstr "Nom du site" - -#~ msgid "Categories" -#~ msgstr "Catégories" -- cgit v1.2.3 From 69aadc1c565c2324fc200aa22aff7991fdfd13ad Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 2 Aug 2012 15:51:38 +0200 Subject: Fix migration script --- settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.py b/settings.py index 29c7823..812ca66 100644 --- a/settings.py +++ b/settings.py @@ -120,7 +120,7 @@ MEDIA_URL = '/media/' # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a # trailing slash. -# Examples: "http://foo.com/media/", "/media/". +# deprecated in Django 1.4 but left for Django 1.3 ADMIN_MEDIA_PREFIX = '/admin-media/' # Make this unique, and don't share it with anybody. -- cgit v1.2.3 From 0481713cdc036c1fc8e620c906f545769cd81136 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 2 Aug 2012 19:46:09 +0200 Subject: Move locale to application --- extra-locales/chimere | 1 - locale/fr/LC_MESSAGES/django.po | 990 -------------------------------------- locale/fr/LC_MESSAGES/djangojs.po | 21 - 3 files changed, 1012 deletions(-) delete mode 120000 extra-locales/chimere delete mode 100644 locale/fr/LC_MESSAGES/django.po delete mode 100644 locale/fr/LC_MESSAGES/djangojs.po diff --git a/extra-locales/chimere b/extra-locales/chimere deleted file mode 120000 index 3c7fdf4..0000000 --- a/extra-locales/chimere +++ /dev/null @@ -1 +0,0 @@ -../../chimere \ No newline at end of file diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po deleted file mode 100644 index 8421b35..0000000 --- a/locale/fr/LC_MESSAGES/django.po +++ /dev/null @@ -1,990 +0,0 @@ -# Chimère -# Copyright (C) 2008-2012 -# This file is distributed under the same license as the Chimère package. -# Étienne Loks , 2008-2011. -# -msgid "" -msgstr "" -"Project-Id-Version: 0.2\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-08-02 13:55+0200\n" -"PO-Revision-Date: 2010-03-20 20:00+0100\n" -"Last-Translator: Étienne Loks \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: extra-locales/chimere/__init__.py:8 extra-locales/chimere/models.py:490 -msgid "Multimedia files" -msgstr "Fichiers multimedias" - -#: extra-locales/chimere/__init__.py:9 extra-locales/chimere/models.py:539 -msgid "Picture files" -msgstr "Fichiers d'image" - -#: extra-locales/chimere/actions.py:31 -msgid "View" -msgstr "Voir" - -#: extra-locales/chimere/actions.py:32 -msgid "Contribute" -msgstr "Participer" - -#: extra-locales/chimere/actions.py:33 -msgid "Add a new point of interest" -msgstr "Ajout d'un point remarquable" - -#: extra-locales/chimere/actions.py:34 -msgid "Add a new route" -msgstr "Ajout d'un nouveau trajet" - -#: extra-locales/chimere/actions.py:38 -msgid "RSS feeds" -msgstr "Flux RSS" - -#: extra-locales/chimere/actions.py:41 -msgid "Contact us" -msgstr "Nous contacter" - -#: extra-locales/chimere/admin.py:62 -#: extra-locales/chimere/templates/chimere/feeds/rss.html:69 -msgid "Validate" -msgstr "Valider" - -#: extra-locales/chimere/admin.py:73 -msgid "Export to KML" -msgstr "Exporter en KML" - -#: extra-locales/chimere/admin.py:87 -msgid "Export to Shapefile" -msgstr "Exporter en Shapefile" - -#: extra-locales/chimere/admin.py:173 -msgid "Import" -msgstr "Import" - -#: extra-locales/chimere/admin.py:179 -msgid "Cancel import" -msgstr "Annuler l'import" - -#: extra-locales/chimere/admin.py:185 -msgid "Cancel export" -msgstr "Annuler l'export" - -#: extra-locales/chimere/admin.py:193 -msgid "Export to osm" -msgstr "Exporter vers osm" - -#: extra-locales/chimere/feeds.py:124 extra-locales/chimere/feeds.py:211 -msgid "Last points of interest" -msgstr "Derniers points d'intérêt" - -#: extra-locales/chimere/feeds.py:130 -msgid "Latest points of interest from " -msgstr "Nouveaux points d'intérêt de " - -#: extra-locales/chimere/feeds.py:176 -msgid "Last points of interest by area" -msgstr "Nouveaux points d'intérêt par zone" - -#: extra-locales/chimere/forms.py:76 -msgid "New submission for" -msgstr "Nouvelle proposition pour" - -#: extra-locales/chimere/forms.py:77 -#, python-format -msgid "The new item \"%s\" has been submited in the category: " -msgstr "Le nouvel élément « %s » a été proposé dans la catégorie : " - -#: extra-locales/chimere/forms.py:79 -msgid "To valid, precise or unvalid this item: " -msgstr "Pour valider, préciser ou rejeter cet élément : " - -#: extra-locales/chimere/forms.py:89 -msgid "Email (optional)" -msgstr "Courriel (optionnel) " - -#: extra-locales/chimere/forms.py:90 -msgid "Object" -msgstr "Objet" - -#: extra-locales/chimere/forms.py:147 -msgid "End date has been set with no start date" -msgstr "Une date de fin a été donnée sans date de début" - -#: extra-locales/chimere/forms.py:358 -msgid "File" -msgstr "Fichier" - -#: extra-locales/chimere/forms.py:364 -msgid "Bad file format: this must be a GPX or KML file" -msgstr "Mauvais format de fichier : KML et GPX sont supportés" - -#: extra-locales/chimere/forms.py:369 extra-locales/chimere/models.py:48 -#: extra-locales/chimere/models.py:101 extra-locales/chimere/models.py:122 -#: extra-locales/chimere/models.py:135 extra-locales/chimere/models.py:149 -#: extra-locales/chimere/models.py:232 extra-locales/chimere/models.py:437 -#: extra-locales/chimere/models.py:480 extra-locales/chimere/models.py:524 -#: extra-locales/chimere/models.py:555 extra-locales/chimere/models.py:792 -#: extra-locales/chimere/models.py:804 extra-locales/chimere/models.py:889 -#: extra-locales/chimere/templates/chimere/edit.html:39 -#: extra-locales/chimere/templates/chimere/edit_route.html:36 -msgid "Name" -msgstr "Nom" - -#: extra-locales/chimere/forms.py:378 extra-locales/chimere/models.py:841 -msgid "Area" -msgstr "Zone" - -#: extra-locales/chimere/models.py:49 extra-locales/chimere/models.py:123 -#: extra-locales/chimere/models.py:150 extra-locales/chimere/models.py:241 -#: extra-locales/chimere/models.py:441 extra-locales/chimere/models.py:810 -#: extra-locales/chimere/models.py:891 -msgid "Available" -msgstr "Disponible" - -#: extra-locales/chimere/models.py:50 -msgid "Date" -msgstr "Date" - -#: extra-locales/chimere/models.py:56 extra-locales/chimere/models.py:57 -#: extra-locales/chimere/templates/chimere/blocks/welcome.html:5 -msgid "News" -msgstr "Nouvelle" - -#: extra-locales/chimere/models.py:62 -msgid "Parameters" -msgstr "Paramètres" - -#: extra-locales/chimere/models.py:66 -msgid "TinyUrl" -msgstr "Mini-url" - -#: extra-locales/chimere/models.py:105 extra-locales/chimere/models.py:112 -#: extra-locales/chimere/models.py:152 -msgid "Color theme" -msgstr "Thème de couleur" - -#: extra-locales/chimere/models.py:110 -msgid "Code" -msgstr "Code" - -#: extra-locales/chimere/models.py:111 extra-locales/chimere/models.py:124 -#: extra-locales/chimere/models.py:154 extra-locales/chimere/models.py:482 -#: extra-locales/chimere/models.py:531 extra-locales/chimere/models.py:809 -#: extra-locales/chimere/models.py:878 extra-locales/chimere/models.py:890 -msgid "Order" -msgstr "Ordre" - -#: extra-locales/chimere/models.py:117 -msgid "Color" -msgstr "Couleur" - -#: extra-locales/chimere/models.py:130 extra-locales/chimere/models.py:148 -#: extra-locales/chimere/templates/chimere/main_map.html:13 -msgid "Category" -msgstr "Catégorie" - -#: extra-locales/chimere/models.py:136 extra-locales/chimere/models.py:433 -#: extra-locales/chimere/models.py:525 extra-locales/chimere/models.py:620 -msgid "Image" -msgstr "Image" - -#: extra-locales/chimere/models.py:138 extra-locales/chimere/models.py:527 -#: extra-locales/chimere/models.py:622 -msgid "Height" -msgstr "Hauteur" - -#: extra-locales/chimere/models.py:139 extra-locales/chimere/models.py:528 -#: extra-locales/chimere/models.py:623 -msgid "Width" -msgstr "Largeur" - -#: extra-locales/chimere/models.py:143 extra-locales/chimere/models.py:151 -msgid "Icon" -msgstr "Icône" - -#: extra-locales/chimere/models.py:155 -msgid "Marker" -msgstr "Point d'intérêt" - -#: extra-locales/chimere/models.py:156 extra-locales/chimere/models.py:616 -#: extra-locales/chimere/models.py:631 -#: extra-locales/chimere/templates/chimere/edit_route.html:27 -msgid "Route" -msgstr "Trajet" - -#: extra-locales/chimere/models.py:157 -msgid "Both" -msgstr "Mixte" - -#: extra-locales/chimere/models.py:158 -msgid "Item type" -msgstr "Type d'élément" - -#: extra-locales/chimere/models.py:163 -msgid "Sub-category" -msgstr "Sous-catégorie" - -#: extra-locales/chimere/models.py:164 -msgid "Sub-categories" -msgstr "Sous-catégories" - -#: extra-locales/chimere/models.py:210 -msgid "Importer type" -msgstr "Type d'import" - -#: extra-locales/chimere/models.py:213 extra-locales/chimere/models.py:252 -msgid "Source" -msgstr "Source" - -#: extra-locales/chimere/models.py:215 -msgid "Filter" -msgstr "Filtre" - -#: extra-locales/chimere/models.py:218 -msgid "Associated subcategories" -msgstr "Sous-catégories associées" - -#: extra-locales/chimere/models.py:219 -msgid "State" -msgstr "État" - -#: extra-locales/chimere/models.py:221 -msgid "SRID" -msgstr "SRID" - -#: extra-locales/chimere/models.py:222 -msgid "Zipped file" -msgstr "Fichier zippé" - -#: extra-locales/chimere/models.py:225 -msgid "Importer" -msgstr "Import" - -#: extra-locales/chimere/models.py:234 -msgid "Submitter session key" -msgstr "Clé de session du demandeur" - -#: extra-locales/chimere/models.py:236 -msgid "Submitter email" -msgstr "Courriel du demandeur" - -#: extra-locales/chimere/models.py:238 -msgid "Submitter comment" -msgstr "Commentaire du demandeur" - -#: extra-locales/chimere/models.py:240 -msgid "Submited" -msgstr "Soumis" - -#: extra-locales/chimere/models.py:242 -msgid "Modified" -msgstr "Modifié" - -#: extra-locales/chimere/models.py:243 -msgid "Disabled" -msgstr "Désactivé" - -#: extra-locales/chimere/models.py:244 -msgid "Imported" -msgstr "Importé" - -#: extra-locales/chimere/models.py:245 -msgid "Excluded" -msgstr "Exclu" - -#: extra-locales/chimere/models.py:247 -msgid "Status" -msgstr "État" - -#: extra-locales/chimere/models.py:248 -msgid "Import key" -msgstr "Clé d'import" - -#: extra-locales/chimere/models.py:250 -msgid "Import version" -msgstr "Version de l'import" - -#: extra-locales/chimere/models.py:255 -#: extra-locales/chimere/templates/chimere/edit.html:56 -#: extra-locales/chimere/templates/chimere/edit_route.html:52 -msgid "Start date" -msgstr "Date de début" - -#: extra-locales/chimere/models.py:256 -msgid "Not mandatory. Set it for dated item such as event. Format YYYY-MM-DD" -msgstr "" -"Optionnel. Précisez ce champ pour les éléments datés comme un événement. " -"Format du champ : AAAA-MM-JJ" - -#: extra-locales/chimere/models.py:258 -#: extra-locales/chimere/templates/chimere/edit.html:62 -#: extra-locales/chimere/templates/chimere/edit_route.html:58 -msgid "End date" -msgstr "Date de fin" - -#: extra-locales/chimere/models.py:259 -msgid "" -"Not mandatory. Set it only if you have a multi-day event. Format YYYY-MM-DD" -msgstr "" -"Optionnel. Précisez ce champ seulement pour des événements durant plusieurs " -"jours. Format du champ : AAAA-MM-JJ" - -#: extra-locales/chimere/models.py:291 -msgid "Reference marker" -msgstr "Point d'intérêt de référence" - -#: extra-locales/chimere/models.py:292 -msgid "Localisation" -msgstr "Localisation" - -#: extra-locales/chimere/models.py:294 -msgid "Available Date" -msgstr "Date de mise en disponibilité" - -#: extra-locales/chimere/models.py:298 -#: extra-locales/chimere/templates/chimere/edit.html:49 -#: extra-locales/chimere/templates/chimere/edit_route.html:46 -msgid "Description" -msgstr "Description" - -#: extra-locales/chimere/models.py:337 extra-locales/chimere/models.py:913 -msgid "Point of interest" -msgstr "Point d'intérêt" - -#: extra-locales/chimere/models.py:431 -msgid "Audio" -msgstr "Audio" - -#: extra-locales/chimere/models.py:432 -msgid "Video" -msgstr "Vidéo" - -#: extra-locales/chimere/models.py:434 -msgid "Other" -msgstr "Autre" - -#: extra-locales/chimere/models.py:435 -msgid "Media type" -msgstr "Type de media" - -#: extra-locales/chimere/models.py:438 -msgid "Mime type" -msgstr "Type mime" - -#: extra-locales/chimere/models.py:440 -msgid "Inside an iframe" -msgstr "À l'intérieur d'un iframe" - -#: extra-locales/chimere/models.py:444 -msgid "Multimedia type" -msgstr "Type de multimedia" - -#: extra-locales/chimere/models.py:445 -msgid "Multimedia types" -msgstr "Types de multimedia" - -#: extra-locales/chimere/models.py:481 -msgid "Url" -msgstr "Url" - -#: extra-locales/chimere/models.py:484 extra-locales/chimere/models.py:529 -msgid "Display inside the description?" -msgstr "Apparaît dans la description ?" - -#: extra-locales/chimere/models.py:489 -msgid "Multimedia file" -msgstr "Fichier multimedia" - -#: extra-locales/chimere/models.py:538 -msgid "Picture file" -msgstr "Fichier d'image" - -#: extra-locales/chimere/models.py:556 -msgid "Raw file (gpx or kml)" -msgstr "Fichier brut (gpx ou kml)" - -#: extra-locales/chimere/models.py:557 -msgid "Simplified file" -msgstr "Fichier simplifié" - -#: extra-locales/chimere/models.py:559 -msgid "KML" -msgstr "KML" - -#: extra-locales/chimere/models.py:559 -msgid "GPX" -msgstr "GPX" - -#: extra-locales/chimere/models.py:564 -msgid "Route file" -msgstr "Fichier de trajet" - -#: extra-locales/chimere/models.py:565 -msgid "Route files" -msgstr "Fichiers de trajet" - -#: extra-locales/chimere/models.py:615 -msgid "Reference route" -msgstr "Trajet de référence" - -#: extra-locales/chimere/models.py:619 -msgid "Associated file" -msgstr "Fichier associé" - -#: extra-locales/chimere/models.py:793 -msgid "Layer code" -msgstr "Code pour la couche" - -#: extra-locales/chimere/models.py:799 -msgid "Layer" -msgstr "Couche" - -#: extra-locales/chimere/models.py:805 -msgid "Area urn" -msgstr "Urn de la zone" - -#: extra-locales/chimere/models.py:807 -#: extra-locales/chimere/templates/chimere/blocks/welcome.html:3 -msgid "Welcome message" -msgstr "Message d'accueil" - -#: extra-locales/chimere/models.py:811 -msgid "Upper left corner" -msgstr "Coin en haut à gauche" - -#: extra-locales/chimere/models.py:813 -msgid "Lower right corner" -msgstr "Coin en bas à droite" - -#: extra-locales/chimere/models.py:815 -msgid "Default area" -msgstr "Zone par défaut" - -#: extra-locales/chimere/models.py:816 -msgid "Only one area is set by default" -msgstr "Seule une zone est définie par défaut" - -#: extra-locales/chimere/models.py:820 -msgid "Sub-categories checked by default" -msgstr "Sous-catégories cochées par défaut" - -#: extra-locales/chimere/models.py:822 -msgid "Sub-categories dynamicaly displayed" -msgstr "Sous-categories affichées dynamiquement" - -#: extra-locales/chimere/models.py:823 -msgid "" -"If checked, categories are only displayed in the menu if they are available " -"on the current extent." -msgstr "" -"Si coché, les catégories sont disponibles sur le menu seulement si elles " -"apparaissent sur la zone affichée." - -#: extra-locales/chimere/models.py:827 -msgid "Restricted to theses sub-categories" -msgstr "Restreindre à ces sous-categories" - -#: extra-locales/chimere/models.py:828 -msgid "If no sub-category is set all sub-categories are available" -msgstr "" -"Si aucune sous-catégorie n'est définie toutes les sous-catégories sont " -"disponibles" - -#: extra-locales/chimere/models.py:830 -msgid "Link to an external CSS" -msgstr "Lien vers une feuille de style externe" - -#: extra-locales/chimere/models.py:832 -msgid "Restrict to the area extent" -msgstr "Restreindre à l'étendue de la zone" - -#: extra-locales/chimere/models.py:879 -msgid "Default layer" -msgstr "Couche par défaut" - -#: extra-locales/chimere/models.py:883 extra-locales/chimere/models.py:884 -msgid "Layers" -msgstr "Couches" - -#: extra-locales/chimere/models.py:892 -msgid "Text" -msgstr "Texte" - -#: extra-locales/chimere/models.py:893 -msgid "Long text" -msgstr "Texte long" - -#: extra-locales/chimere/models.py:894 -msgid "Password" -msgstr "Mot de passe" - -#: extra-locales/chimere/models.py:898 -msgid "Type" -msgstr "Type" - -#: extra-locales/chimere/models.py:903 extra-locales/chimere/models.py:915 -msgid "Property model" -msgstr "Modèle de propriété" - -#: extra-locales/chimere/models.py:916 -msgid "Value" -msgstr "Valeur" - -#: extra-locales/chimere/models.py:920 -msgid "Property" -msgstr "Propriété" - -#: extra-locales/chimere/tasks.py:47 -msgid "Import pending" -msgstr "Import en attente" - -#: extra-locales/chimere/tasks.py:48 -msgid "Import processing" -msgstr "Import en cours" - -#: extra-locales/chimere/tasks.py:49 -msgid "Import successfuly done" -msgstr "Import fait avec succès" - -#: extra-locales/chimere/tasks.py:50 -#, python-format -msgid " %(new)d new item(s), %(updated)d updated item(s)" -msgstr " %(new)d nouveau(x) élément(s), %(updated)d élément(s) mis à jour" - -#: extra-locales/chimere/tasks.py:51 -msgid "Import failed" -msgstr "Import échoué" - -#: extra-locales/chimere/tasks.py:52 -msgid "Import canceled" -msgstr "Import annulé" - -#: extra-locales/chimere/tasks.py:53 -msgid "Export pending" -msgstr "Export en attente" - -#: extra-locales/chimere/tasks.py:54 -msgid "Export processing" -msgstr "Export en cours" - -#: extra-locales/chimere/tasks.py:55 -msgid "Export successfuly done" -msgstr "Export réalisé avec succès" - -#: extra-locales/chimere/tasks.py:56 -#, python-format -msgid " %(updated)d updated item(s)" -msgstr " %(updated)d éléments mis à jour" - -#: extra-locales/chimere/tasks.py:57 -msgid "Export failed" -msgstr "Export échoué" - -#: extra-locales/chimere/tasks.py:58 -msgid "Export canceled" -msgstr "Export annulé" - -#: extra-locales/chimere/utils.py:104 extra-locales/chimere/utils.py:152 -msgid "Bad zip file" -msgstr "Mauvais fichier zip" - -#: extra-locales/chimere/utils.py:155 -msgid "Missing file(s) inside the zip file" -msgstr "Fichier(s) manquant(s) dans l'archive zip" - -#: extra-locales/chimere/utils.py:284 -msgid "Error while reading the data source." -msgstr "Erreur lors de la lecture de la source." - -#: extra-locales/chimere/utils.py:319 -msgid "Type of geographic item of this shapefile is not managed by Chimère." -msgstr "" -"Les types des éléments géographiques de ce fichier Shapefile ne sont pas " -"gérés par Chimère." - -#: extra-locales/chimere/utils.py:400 -msgid "Could not create file!" -msgstr "Ne peut pas créer le fichier !" - -#: extra-locales/chimere/utils.py:411 -msgid "Failed to create field" -msgstr "Ne peut pas créer un champ" - -#: extra-locales/chimere/utils.py:482 -msgid "Nothing to import" -msgstr "Rien à importer" - -#: extra-locales/chimere/utils.py:562 -msgid "New items imported - validate them before exporting" -msgstr "Nouveaux éléments importés - valider ceux-ci avant d'exporter" - -#: extra-locales/chimere/utils.py:564 -msgid "" -"There are items from a former import not yet validated - validate them " -"before exporting" -msgstr "" -"Il y a des éléments d'un import précédent pas encore validé - Validez les " -"avant d'exporter" - -#: extra-locales/chimere/utils.py:574 -msgid "Bad param" -msgstr "Mauvais paramètre" - -#: extra-locales/chimere/views.py:223 -msgid "There are missing field(s) and/or errors in the submited form." -msgstr "Il y a des champs manquants ou des erreurs dans ce formulaire." - -#: extra-locales/chimere/views.py:302 -msgid "Bad file. Please check it with an external software." -msgstr "Fichier incohérent. Merci de le vérifier avec un logiciel externe." - -#: extra-locales/chimere/views.py:424 -msgid "Comments/request on the map" -msgstr "Commentaires/requètes sur la carte" - -#: extra-locales/chimere/views.py:427 -msgid "" -"Thank you for your contribution. It will be taken into account. If you have " -"left your email you may be contacted soon for more details." -msgstr "" -"Merci pour votre contribution. Elle va être prise en compte. Si vous avez " -"laissé votre courriel vous serez peut-être contacté bientôt pour plus de " -"détails." - -#: extra-locales/chimere/views.py:431 -msgid "Temporary error. Renew your message later." -msgstr "Erreur temporaire. Réenvoyez votre message plus tard." - -#: extra-locales/chimere/views.py:562 -msgid "No category available in this area." -msgstr "Pas de catégorie disponible sur cette zone." - -#: extra-locales/chimere/views.py:669 -msgid "Incorrect choice in the list" -msgstr "Choix incorrect dans la liste" - -#: extra-locales/chimere/widgets.py:187 -msgid "Latitude" -msgstr "Latitude" - -#: extra-locales/chimere/widgets.py:187 -msgid "Longitude" -msgstr "Longitude" - -#: extra-locales/chimere/widgets.py:212 -msgid "Invalid point" -msgstr "Point invalide" - -#: extra-locales/chimere/widgets.py:262 -msgid "Creation mode" -msgstr "Mode création" - -#: extra-locales/chimere/widgets.py:263 -msgid "To start drawing the route click on the toggle button: \"Draw\"." -msgstr "" -"Pour commencer le dessin cliquez sur le bouton : « Tracer »." - -#: extra-locales/chimere/widgets.py:265 -msgid "Then click on the map to begin the drawing." -msgstr "Puis cliquez sur la carte pour commencer le dessin." - -#: extra-locales/chimere/widgets.py:266 -msgid "You can add points by clicking again." -msgstr "Vous pouvez ajouter des points en cliquant de nouveau." - -#: extra-locales/chimere/widgets.py:267 -msgid "" -"To finish the drawing double click. When the drawing is finished you can " -"edit it." -msgstr "" -"Pour finir le tracé double-cliquez. Quand le tracé est fini vous pouvez " -"toujours l'éditer." - -#: extra-locales/chimere/widgets.py:269 -msgid "" -"While creating to undo a drawing click again on the toggle button \"Stop " -"drawing\"." -msgstr "" -"En mode création vous pouvez annuler un tracé en appuyant sur le bouton " -"« Arrêter le tracé »." - -#: extra-locales/chimere/widgets.py:274 -msgid "Modification mode" -msgstr "Mode modification" - -#: extra-locales/chimere/widgets.py:275 -msgid "To move a point click on it and drag it to the desired position." -msgstr "" -"Pour bouger un point, cliquez dessus, maintenez le click pour le déposer à " -"la position désirée." - -#: extra-locales/chimere/widgets.py:276 -msgid "" -"To delete a point move the mouse cursor over it and press the \"d\" or \"Del" -"\" key." -msgstr "" -"Pour supprimer un point, mettez le curseur de la souris sur celui-ci et " -"appuyez sur le touche « d » ou « Suppr »." - -#: extra-locales/chimere/widgets.py:278 -msgid "" -"To add a point click in the middle of a segment and drag the new point to " -"the desired position" -msgstr "" -"Pour ajouter un nouveau point, cliquez au milieu d'un des segments, " -"maintenez le bouton appuyé et déplacez le nouveau point à la position " -"désirée." - -#: extra-locales/chimere/widgets.py:285 -msgid "Give a name and set category before uploading a file." -msgstr "" -"Renseignez le nom et choisissez au moins une catégorie avant de déposer un " -"fichier." - -#: extra-locales/chimere/widgets.py:288 -msgid "Upload a route file (GPX or KML)" -msgstr "Déposer un trajet (fichier GPX ou KML)" - -#: extra-locales/chimere/widgets.py:289 -msgid "or" -msgstr "ou" - -#: extra-locales/chimere/widgets.py:294 -msgid "Start \"hand\" drawing" -msgstr "Commencer le tracé manuellement" - -#: extra-locales/chimere/widgets.py:317 -msgid "Move on the map" -msgstr "Se déplacer" - -#: extra-locales/chimere/widgets.py:317 -msgid "Draw" -msgstr "Tracer" - -#: extra-locales/chimere/widgets.py:442 -msgid "Select..." -msgstr "Sélectionner..." - -#: extra-locales/chimere/templates/404.html:10 -msgid "Page not found" -msgstr "Page non trouvée" - -#: extra-locales/chimere/templates/500.html:10 -msgid "Internal server error" -msgstr "Erreur interne du serveur" - -#: extra-locales/chimere/templates/admin/base_site.html:4 -#: extra-locales/chimere/templates/admin/base_site.html:7 -msgid "Administration de Chimère" -msgstr "Administration de Chimère" - -#: extra-locales/chimere/templates/chimere/base.html:18 -msgid "You must enable JavaScript in your browser to display Chimère." -msgstr "" -"Vous devez activer le JavaScript dans votre navigateur pour afficher Chimère." - -#: extra-locales/chimere/templates/chimere/contactus.html:16 -msgid "" -"If you have some requests or remarks about this site you can leave them here." -msgstr "" -"Si vous avez des requètes, des remarques à propos de ce site vous pouvez " -"nous laisser un commentaire ici." - -#: extra-locales/chimere/templates/chimere/contactus.html:19 -msgid "Submit" -msgstr "Proposer" - -#: extra-locales/chimere/templates/chimere/detail.html:16 -msgid "Date:" -msgstr "Date :" - -#: extra-locales/chimere/templates/chimere/detail.html:26 -msgid "Show multimedia gallery" -msgstr "Montrer la galerie multimedia" - -#: extra-locales/chimere/templates/chimere/detail.html:29 -msgid "Share on" -msgstr "Partager sur" - -#: extra-locales/chimere/templates/chimere/detail.html:33 -msgid "Share" -msgstr "Partager" - -#: extra-locales/chimere/templates/chimere/detail.html:37 -msgid "Submit a modification" -msgstr "Proposer une modification" - -#: extra-locales/chimere/templates/chimere/edit.html:20 -msgid "Error" -msgstr "Erreur" - -#: extra-locales/chimere/templates/chimere/edit.html:24 -msgid "Add/modify a site" -msgstr "Ajouter ou modifier un site" - -#: extra-locales/chimere/templates/chimere/edit.html:30 -msgid "Point" -msgstr "Point" - -#: extra-locales/chimere/templates/chimere/edit.html:31 -#: extra-locales/chimere/templates/chimere/edit_route.html:28 -msgid "Select a location for this new site" -msgstr "Choisissez une localisation pour ce nouveau site" - -#: extra-locales/chimere/templates/chimere/edit.html:37 -#: extra-locales/chimere/templates/chimere/edit_route.html:34 -msgid "indicates a mandatory field" -msgstr "indique un champ obligatoire" - -#: extra-locales/chimere/templates/chimere/edit.html:44 -#: extra-locales/chimere/templates/chimere/edit_route.html:41 -msgid "Categories" -msgstr "Catégories" - -#: extra-locales/chimere/templates/chimere/edit.html:86 -#: extra-locales/chimere/templates/chimere/edit_route.html:77 -msgid "Propose" -msgstr "Proposez" - -#: extra-locales/chimere/templates/chimere/edit_route.html:21 -msgid "Add/modify a route" -msgstr "Ajout ou modifier un trajet" - -#: extra-locales/chimere/templates/chimere/main_map_simple.html:10 -msgid "Topics" -msgstr "Thèmes" - -#: extra-locales/chimere/templates/chimere/upload_file.html:13 -msgid "Thank you for your submission!" -msgstr "Merci pour votre proposition !" - -#: extra-locales/chimere/templates/chimere/upload_file.html:17 -msgid "Upload a file" -msgstr "Déposer un fichier" - -#: extra-locales/chimere/templates/chimere/upload_file.html:46 -msgid "Upload" -msgstr "Déposer" - -#: extra-locales/chimere/templates/chimere/blocks/areas.html:4 -msgid "Areas:" -msgstr "Zones :" - -#: extra-locales/chimere/templates/chimere/blocks/areas_alternative.html:4 -msgid "Shortcuts" -msgstr "Raccourcis" - -#: extra-locales/chimere/templates/chimere/blocks/areas_alternative.html:7 -#: extra-locales/chimere/templates/chimere/blocks/categories.html:8 -#: extra-locales/chimere/templates/chimere/blocks/categories.html:17 -msgid "Zoom to" -msgstr "Zoomer sur" - -#: extra-locales/chimere/templates/chimere/blocks/categories.html:21 -msgid "Tell me more..." -msgstr "En savoir plus..." - -#: extra-locales/chimere/templates/chimere/blocks/categories.html:27 -msgid "Display markers and routes waiting for validation" -msgstr "" -"Afficher les points remarquables et les trajets en attente de validation" - -#: extra-locales/chimere/templates/chimere/blocks/footer.html:2 -msgid "This site uses Chimère" -msgstr "Ce site utilise Chimère" - -#: extra-locales/chimere/templates/chimere/blocks/footer.html:2 -msgid "Map" -msgstr "Carte" - -#: extra-locales/chimere/templates/chimere/blocks/map_params.html:6 -msgid "Permalink" -msgstr "Lien permanent" - -#: extra-locales/chimere/templates/chimere/blocks/multimedia_file.html:19 -msgid "Please use a modern browser or install the non free Flash-Plugin." -msgstr "" -"Utilisez un navigateur internet plus récent ou installez le greffon non " -"libre Flash." - -#: extra-locales/chimere/templates/chimere/blocks/submited.html:3 -msgid "" -"Your new proposition/modification has been submited. A moderator will treat " -"your submission shortly. Thanks!" -msgstr "" -"Votre proposition/modification a été soumise. Un modérateur va traiter votre " -"proposition sous peu. Merci !" - -#: extra-locales/chimere/templates/chimere/blocks/submited.html:8 -msgid "Thank you" -msgstr "Merci" - -#: extra-locales/chimere/templates/chimere/blocks/submited.html:11 -msgid "Add a new item" -msgstr "Ajout d'un nouvel élément" - -#: extra-locales/chimere/templates/chimere/blocks/submited.html:15 -msgid "Continue edition of this item" -msgstr "Continuer l'édition de cet élément" - -#: extra-locales/chimere/templates/chimere/blocks/submited.html:19 -msgid "Return to the map" -msgstr "Retourner à la carte" - -#: extra-locales/chimere/templates/chimere/blocks/welcome.html:47 -msgid "See it on the map" -msgstr "Voir sur la carte" - -#: extra-locales/chimere/templates/chimere/feeds/rss.html:13 -msgid "Subscribe to RSS feed" -msgstr "Souscrire à un flux RSS" - -#: extra-locales/chimere/templates/chimere/feeds/rss.html:20 -msgid "Type of RSS feed" -msgstr "Type de flux RSS" - -#: extra-locales/chimere/templates/chimere/feeds/rss.html:23 -msgid "All new points of interest" -msgstr "Tous les nouveaux points d'intérêt" - -#: extra-locales/chimere/templates/chimere/feeds/rss.html:24 -#: extra-locales/chimere/templates/chimere/feeds/rss.html:31 -msgid "New points of interest by category" -msgstr "Les nouveaux points d'intérêt par catégorie" - -#: extra-locales/chimere/templates/chimere/feeds/rss.html:25 -#: extra-locales/chimere/templates/chimere/feeds/rss.html:47 -msgid "New points of interest by area" -msgstr "Les nouveaux points d'intérêt par zone" - -#: extra-locales/chimere/templates/chimere/feeds/rss.html:33 -msgid "Choose a category" -msgstr "Choisir une catégorie" - -#: extra-locales/chimere/templates/chimere/feeds/rss.html:50 -msgid "Choose a pre-defined areas" -msgstr "Choisir une zone pré-définie" - -#: extra-locales/chimere/templates/chimere/feeds/rss.html:64 -msgid "Or select the area by zooming and panning this map" -msgstr "Ou sélectionner une zone en zoomant et en se déplaçant sur cette carte" - -#~ msgid "Categorys" -#~ msgstr "Catégories" - -#~ msgid "Theme" -#~ msgstr "Thème" - -#~ msgid "Subtheme" -#~ msgstr "Sous-thème" - -#~ msgid "Subthemes" -#~ msgstr "Sous-thèmes" - -#~ msgid "Themes" -#~ msgstr "Thèmes" - -#~ msgid "Site name" -#~ msgstr "Nom du site" diff --git a/locale/fr/LC_MESSAGES/djangojs.po b/locale/fr/LC_MESSAGES/djangojs.po deleted file mode 100644 index 84823e0..0000000 --- a/locale/fr/LC_MESSAGES/djangojs.po +++ /dev/null @@ -1,21 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-11-23 15:35+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: static/main_map.js:104 -msgid "Show details" -msgstr "Voir le détail" -- cgit v1.2.3 From a5379e39721dd59e9e768be19f2fc4e6ccfbd233 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 2 Aug 2012 20:25:18 +0200 Subject: Fix import test for celery --- settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.py b/settings.py index 812ca66..a7c14d5 100644 --- a/settings.py +++ b/settings.py @@ -176,7 +176,7 @@ INSTALLED_APPS = [ # celery try: - import djceleryaaaaaa + import djcelery import kombu djcelery.setup_loader() BROKER_URL = 'django://' -- cgit v1.2.3 From 8a73bb09fe6f10ad7c0bb8e3af999b2d6dc127ae Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 21 Aug 2012 21:43:40 +0200 Subject: Map: change the pan to a cleaner one (thanks to OpenStreetMap website) --- settings.py | 1 + 1 file changed, 1 insertion(+) diff --git a/settings.py b/settings.py index a7c14d5..38bc916 100644 --- a/settings.py +++ b/settings.py @@ -25,6 +25,7 @@ JQUERY_CSS_URLS = ('/javascript/jquery-ui/css/smoothness/jquery-ui.css', OSM_CSS_URLS = ["http://www.openlayers.org/api/theme/default/style.css"] OSM_JS_URLS = [STATIC_URL + "chimere/js/OpenLayers.js", + STATIC_URL + "chimere/js/SimplePanZoom.js", "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] GPSBABEL = '/usr/bin/gpsbabel' -- cgit v1.2.3 From ad295b5481cb572503644210d3fee15bf5292755 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 24 Aug 2012 12:41:02 +0200 Subject: Fix default Openlayers path when static path is not the default --- settings.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/settings.py b/settings.py index 38bc916..742314d 100644 --- a/settings.py +++ b/settings.py @@ -24,9 +24,6 @@ JQUERY_CSS_URLS = ('/javascript/jquery-ui/css/smoothness/jquery-ui.css', '/javascript/jquery-ui-themes/base/jquery.ui.all.css') OSM_CSS_URLS = ["http://www.openlayers.org/api/theme/default/style.css"] -OSM_JS_URLS = [STATIC_URL + "chimere/js/OpenLayers.js", - STATIC_URL + "chimere/js/SimplePanZoom.js", - "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] GPSBABEL = '/usr/bin/gpsbabel' GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an @@ -253,3 +250,10 @@ if 'CHIMERE_SHARE_NETWORKS' not in globals(): ("Identi.ca", 'http://identi.ca/index.php?action=newnotice&status_textarea=%(text)s %(url)s', STATIC_URL + 'chimere/img/identica.png'), ) + +if 'OSM_JS_URLS' not in globals(): + global OSM_JS_URLS + OSM_JS_URLS = [STATIC_URL + "chimere/js/OpenLayers.js", + STATIC_URL + "chimere/js/SimplePanZoom.js", + "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] + -- cgit v1.2.3 From 6406e60ed316cf7d9e0d8e7b6786607230a76b7a Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 24 Aug 2012 17:32:54 +0200 Subject: Manage thumbnails for picture files - display with prettyPhoto on detail desc --- settings.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/settings.py b/settings.py index 742314d..dec2827 100644 --- a/settings.py +++ b/settings.py @@ -72,6 +72,11 @@ CHIMERE_OSM_PASSWORD = 'test' # encoding for shapefile import CHIMERE_SHAPEFILE_ENCODING = 'ISO-8859-1' +# thumbnail +CHIMERE_THUMBS_SCALE_HEIGHT=250 +CHIMERE_THUMBS_SCALE_WIDTH=None + + ADMINS = ( # ('Your Name', 'your_email@domain.com'), ) -- cgit v1.2.3 From 59dca39274104f20a4d0c2ce0537feac18a168e1 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 18 Sep 2012 01:21:02 +0200 Subject: Work on CSV export --- settings.py | 1 + 1 file changed, 1 insertion(+) diff --git a/settings.py b/settings.py index dec2827..6aaa577 100644 --- a/settings.py +++ b/settings.py @@ -76,6 +76,7 @@ CHIMERE_SHAPEFILE_ENCODING = 'ISO-8859-1' CHIMERE_THUMBS_SCALE_HEIGHT=250 CHIMERE_THUMBS_SCALE_WIDTH=None +CHIMERE_CSV_ENCODING = 'ISO-8859-1' ADMINS = ( # ('Your Name', 'your_email@domain.com'), -- cgit v1.2.3 From d8d49648aec7440f0b9b29ddec79842edd3e8d35 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sun, 7 Oct 2012 21:02:54 +0200 Subject: Documentation/configuration: fix path, add dependancies --- local_settings.py.sample | 3 +++ settings.py | 8 -------- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/local_settings.py.sample b/local_settings.py.sample index 9ccd41d..b5939af 100644 --- a/local_settings.py.sample +++ b/local_settings.py.sample @@ -9,6 +9,9 @@ CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL CHIMERE_OSM_USER = 'osm_user' CHIMERE_OSM_PASSWORD = 'osm_pass' +# Make this string unique, and don't share it with anybody. +SECRET_KEY = '' + ADMINS = ( # ('Your Name', 'your_email@domain.com'), ) diff --git a/settings.py b/settings.py index 6aaa577..1b72dad 100644 --- a/settings.py +++ b/settings.py @@ -122,14 +122,6 @@ MEDIA_ROOT = ROOT_PATH + 'media/' # Example: "http://media.lawrence.com" MEDIA_URL = '/media/' -# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a -# trailing slash. -# deprecated in Django 1.4 but left for Django 1.3 -ADMIN_MEDIA_PREFIX = '/admin-media/' - -# Make this unique, and don't share it with anybody. -SECRET_KEY = 'achanger_!ToChange!' - # List of callables that know how to import templates from various sources. TEMPLATE_LOADERS = ( 'django.template.loaders.filesystem.Loader', -- cgit v1.2.3 From 749810918b0e3bf3a256af99ef8e7f89c52ad14c Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 9 Oct 2012 16:22:55 +0200 Subject: Update documentation --- settings.py | 1 + 1 file changed, 1 insertion(+) diff --git a/settings.py b/settings.py index 1b72dad..e6e0430 100644 --- a/settings.py +++ b/settings.py @@ -144,6 +144,7 @@ TEMPLATE_DIRS = [ # Always use forward slashes, even on Windows. # Don't forget to use absolute paths, not relative paths. ROOT_PATH + 'templates', + ROOT_PATH + '../chimere/templates', ] TEMPLATE_CONTEXT_PROCESSORS = ( -- cgit v1.2.3 From a6153b8b87e88130068e0b83986516417f8f5257 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 9 Oct 2012 17:47:02 +0200 Subject: Integration of Alban Tiberghien changes to make the application more 'pip' and 'virtualenv' friendly Changes has been integrated in alternate files 'local_settings.py.pip.sample' and 'apache-wsgi-pip.conf' in order to not conflict with installation not using 'pip'. The changes are: - Add django-extensions - Install tinymce as 3rd app - Minor fix in jquery path - Fix shabang in order to work with virtual environment As I want to minimise the size of the tracked files in the Git repository jQuery-UI files were not included (as a small fix Google CDN is set by default for jquery-UI). --- local_settings.py.pip.sample | 42 ++++++++++++++++++++++++++++++++++++++++++ manage.py | 2 +- urls.py | 5 +++++ 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 local_settings.py.pip.sample diff --git a/local_settings.py.pip.sample b/local_settings.py.pip.sample new file mode 100644 index 0000000..6b6cffc --- /dev/null +++ b/local_settings.py.pip.sample @@ -0,0 +1,42 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +# rename this file to local_settings.py and overload settings in this file + +import os + +STATIC_URL = '/static/' + +CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL +CHIMERE_OSM_USER = 'osm_user' +CHIMERE_OSM_PASSWORD = 'osm_pass' + +# Make this string unique, and don't share it with anybody. +SECRET_KEY = '' + +ADMINS = ( + # ('Your Name', 'your_email@domain.com'), +) + +MANAGERS = ADMINS + +DATABASES = { + 'default': { + 'NAME': 'chimere', + 'ENGINE': 'django.contrib.gis.db.backends.postgis', + 'HOST': 'localhost', + 'PORT': '5432', + 'USER': 'postgres', + 'PASSWORD': '', + }, +} + +ROOT_URLCONF = 'example_project.urls' + +INSTALLED_APPS += ['django_extensions', + 'tinymce'] + +TINYMCE_URL = '%stiny_mce/' % STATIC_URL +JQUERY_JS_URLS = ('%sjquery/jquery.js' % STATIC_URL, + 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/jquery-ui.min.js') +JQUERY_CSS_URLS = ('https://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css') diff --git a/manage.py b/manage.py index 300eab0..301acc2 100755 --- a/manage.py +++ b/manage.py @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/env python import os, sys from django.core.management import execute_manager sys.path.insert(0, os.path.abspath('./..')) diff --git a/urls.py b/urls.py index a49cb4f..e37ae53 100644 --- a/urls.py +++ b/urls.py @@ -28,6 +28,11 @@ urlpatterns = patterns('django.views.static', (r'^%s(?P.*)' % settings.MEDIA_URL[1:], 'serve', {'document_root': settings.MEDIA_ROOT}), ) + +if "tinymce" in settings.INSTALLED_APPS: + urlpatterns += patterns('django.views.static', + (r'^tinymce/', include('tinymce.urls')),) + urlpatterns += staticfiles_urlpatterns() urlpatterns += patterns('', -- cgit v1.2.3 From 9e4df9248031a6d7bb7f3da74259e596e96ba289 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sat, 24 Nov 2012 15:36:43 +0100 Subject: Admin: improve property model management * Add the ability to hide property model from the admin * Add a warning to the admin that it should reload the webserver --- settings.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/settings.py b/settings.py index e6e0430..c48a847 100644 --- a/settings.py +++ b/settings.py @@ -69,6 +69,10 @@ CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL CHIMERE_OSM_USER = 'test' CHIMERE_OSM_PASSWORD = 'test' +# as the web server need to be reloaded when property models are changed +# it could be a good idea to hide it to an admin who could'nt do that +CHIMERE_HIDE_PROPERTYMODEL = False + # encoding for shapefile import CHIMERE_SHAPEFILE_ENCODING = 'ISO-8859-1' -- cgit v1.2.3 From 7c4e532a440af62bdc31cb114e1be18a6b96e5af Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 24 Jan 2013 22:33:54 +0000 Subject: Fix database initialisation for upgrade. --- fixtures/first_data.json | 853 +++++++++++++++++++++++++++++++++++++++++++++ fixtures/initial_data.json | 853 --------------------------------------------- 2 files changed, 853 insertions(+), 853 deletions(-) create mode 100644 fixtures/first_data.json delete mode 100644 fixtures/initial_data.json diff --git a/fixtures/first_data.json b/fixtures/first_data.json new file mode 100644 index 0000000..814e8e0 --- /dev/null +++ b/fixtures/first_data.json @@ -0,0 +1,853 @@ +[ + { + "pk": 20, + "model": "contenttypes.contenttype", + "fields": { + "model": "area", + "name": "Area", + "app_label": "chimere" + } + }, + { + "pk": 14, + "model": "contenttypes.contenttype", + "fields": { + "model": "category", + "name": "Category", + "app_label": "chimere" + } + }, + { + "pk": 13, + "model": "contenttypes.contenttype", + "fields": { + "model": "color", + "name": "Color", + "app_label": "chimere" + } + }, + { + "pk": 12, + "model": "contenttypes.contenttype", + "fields": { + "model": "colortheme", + "name": "Color theme", + "app_label": "chimere" + } + }, + { + "pk": 6, + "model": "contenttypes.contenttype", + "fields": { + "model": "contenttype", + "name": "content type", + "app_label": "contenttypes" + } + }, + { + "pk": 2, + "model": "contenttypes.contenttype", + "fields": { + "model": "group", + "name": "group", + "app_label": "auth" + } + }, + { + "pk": 15, + "model": "contenttypes.contenttype", + "fields": { + "model": "icon", + "name": "Icon", + "app_label": "chimere" + } + }, + { + "pk": 5, + "model": "contenttypes.contenttype", + "fields": { + "model": "logentry", + "name": "log entry", + "app_label": "admin" + } + }, + { + "pk": 4, + "model": "contenttypes.contenttype", + "fields": { + "model": "message", + "name": "message", + "app_label": "auth" + } + }, + { + "pk": 9, + "model": "contenttypes.contenttype", + "fields": { + "model": "migrationhistory", + "name": "migration history", + "app_label": "south" + } + }, + { + "pk": 10, + "model": "contenttypes.contenttype", + "fields": { + "model": "news", + "name": "News", + "app_label": "chimere" + } + }, + { + "pk": 1, + "model": "contenttypes.contenttype", + "fields": { + "model": "permission", + "name": "permission", + "app_label": "auth" + } + }, + { + "pk": 17, + "model": "contenttypes.contenttype", + "fields": { + "model": "marker", + "name": "Point of interest", + "app_label": "chimere" + } + }, + { + "pk": 22, + "model": "contenttypes.contenttype", + "fields": { + "model": "property", + "name": "Property", + "app_label": "chimere" + } + }, + { + "pk": 21, + "model": "contenttypes.contenttype", + "fields": { + "model": "propertymodel", + "name": "Property model", + "app_label": "chimere" + } + }, + { + "pk": 19, + "model": "contenttypes.contenttype", + "fields": { + "model": "route", + "name": "Route", + "app_label": "chimere" + } + }, + { + "pk": 18, + "model": "contenttypes.contenttype", + "fields": { + "model": "routefile", + "name": "Route file", + "app_label": "chimere" + } + }, + { + "pk": 7, + "model": "contenttypes.contenttype", + "fields": { + "model": "session", + "name": "session", + "app_label": "sessions" + } + }, + { + "pk": 8, + "model": "contenttypes.contenttype", + "fields": { + "model": "site", + "name": "site", + "app_label": "sites" + } + }, + { + "pk": 16, + "model": "contenttypes.contenttype", + "fields": { + "model": "subcategory", + "name": "Subcategory", + "app_label": "chimere" + } + }, + { + "pk": 11, + "model": "contenttypes.contenttype", + "fields": { + "model": "tinyurl", + "name": "TinyUrl", + "app_label": "chimere" + } + }, + { + "pk": 3, + "model": "contenttypes.contenttype", + "fields": { + "model": "user", + "name": "user", + "app_label": "auth" + } + }, + { + "pk": 1, + "model": "sites.site", + "fields": { + "domain": "example.com", + "name": "example.com" + } + }, + { + "pk": 13, + "model": "auth.permission", + "fields": { + "codename": "add_logentry", + "name": "Can add log entry", + "content_type": 5 + } + }, + { + "pk": 14, + "model": "auth.permission", + "fields": { + "codename": "change_logentry", + "name": "Can change log entry", + "content_type": 5 + } + }, + { + "pk": 15, + "model": "auth.permission", + "fields": { + "codename": "delete_logentry", + "name": "Can delete log entry", + "content_type": 5 + } + }, + { + "pk": 4, + "model": "auth.permission", + "fields": { + "codename": "add_group", + "name": "Can add group", + "content_type": 2 + } + }, + { + "pk": 5, + "model": "auth.permission", + "fields": { + "codename": "change_group", + "name": "Can change group", + "content_type": 2 + } + }, + { + "pk": 6, + "model": "auth.permission", + "fields": { + "codename": "delete_group", + "name": "Can delete group", + "content_type": 2 + } + }, + { + "pk": 10, + "model": "auth.permission", + "fields": { + "codename": "add_message", + "name": "Can add message", + "content_type": 4 + } + }, + { + "pk": 11, + "model": "auth.permission", + "fields": { + "codename": "change_message", + "name": "Can change message", + "content_type": 4 + } + }, + { + "pk": 12, + "model": "auth.permission", + "fields": { + "codename": "delete_message", + "name": "Can delete message", + "content_type": 4 + } + }, + { + "pk": 1, + "model": "auth.permission", + "fields": { + "codename": "add_permission", + "name": "Can add permission", + "content_type": 1 + } + }, + { + "pk": 2, + "model": "auth.permission", + "fields": { + "codename": "change_permission", + "name": "Can change permission", + "content_type": 1 + } + }, + { + "pk": 3, + "model": "auth.permission", + "fields": { + "codename": "delete_permission", + "name": "Can delete permission", + "content_type": 1 + } + }, + { + "pk": 7, + "model": "auth.permission", + "fields": { + "codename": "add_user", + "name": "Can add user", + "content_type": 3 + } + }, + { + "pk": 8, + "model": "auth.permission", + "fields": { + "codename": "change_user", + "name": "Can change user", + "content_type": 3 + } + }, + { + "pk": 9, + "model": "auth.permission", + "fields": { + "codename": "delete_user", + "name": "Can delete user", + "content_type": 3 + } + }, + { + "pk": 58, + "model": "auth.permission", + "fields": { + "codename": "add_area", + "name": "Can add Area", + "content_type": 20 + } + }, + { + "pk": 59, + "model": "auth.permission", + "fields": { + "codename": "change_area", + "name": "Can change Area", + "content_type": 20 + } + }, + { + "pk": 60, + "model": "auth.permission", + "fields": { + "codename": "delete_area", + "name": "Can delete Area", + "content_type": 20 + } + }, + { + "pk": 40, + "model": "auth.permission", + "fields": { + "codename": "add_route", + "name": "Can add Route", + "content_type": 14 + } + }, + { + "pk": 41, + "model": "auth.permission", + "fields": { + "codename": "change_route", + "name": "Can change Route", + "content_type": 14 + } + }, + { + "pk": 42, + "model": "auth.permission", + "fields": { + "codename": "delete_route", + "name": "Can delete Route", + "content_type": 14 + } + }, + { + "pk": 37, + "model": "auth.permission", + "fields": { + "codename": "add_marker", + "name": "Can add Point of interest", + "content_type": 13 + } + }, + { + "pk": 38, + "model": "auth.permission", + "fields": { + "codename": "change_marker", + "name": "Can change Point of interest", + "content_type": 13 + } + }, + { + "pk": 39, + "model": "auth.permission", + "fields": { + "codename": "delete_marker", + "name": "Can delete Point of interest", + "content_type": 13 + } + }, + { + "pk": 34, + "model": "auth.permission", + "fields": { + "codename": "add_subcategory", + "name": "Can add Subcategory", + "content_type": 12 + } + }, + { + "pk": 35, + "model": "auth.permission", + "fields": { + "codename": "change_subcategory", + "name": "Can change Subcategory", + "content_type": 12 + } + }, + { + "pk": 36, + "model": "auth.permission", + "fields": { + "codename": "delete_subcategory", + "name": "Can delete Subcategory", + "content_type": 12 + } + }, + { + "pk": 43, + "model": "auth.permission", + "fields": { + "codename": "add_area", + "name": "Can add Area", + "content_type": 15 + } + }, + { + "pk": 44, + "model": "auth.permission", + "fields": { + "codename": "change_area", + "name": "Can change Area", + "content_type": 15 + } + }, + { + "pk": 45, + "model": "auth.permission", + "fields": { + "codename": "delete_area", + "name": "Can delete Area", + "content_type": 15 + } + }, + { + "pk": 49, + "model": "auth.permission", + "fields": { + "codename": "add_property", + "name": "Can add Property", + "content_type": 17 + } + }, + { + "pk": 50, + "model": "auth.permission", + "fields": { + "codename": "change_property", + "name": "Can change Property", + "content_type": 17 + } + }, + { + "pk": 51, + "model": "auth.permission", + "fields": { + "codename": "delete_property", + "name": "Can delete Property", + "content_type": 17 + } + }, + { + "pk": 28, + "model": "auth.permission", + "fields": { + "codename": "add_category", + "name": "Can add Category", + "content_type": 10 + } + }, + { + "pk": 29, + "model": "auth.permission", + "fields": { + "codename": "change_category", + "name": "Can change Category", + "content_type": 10 + } + }, + { + "pk": 30, + "model": "auth.permission", + "fields": { + "codename": "delete_category", + "name": "Can delete Category", + "content_type": 10 + } + }, + { + "pk": 64, + "model": "auth.permission", + "fields": { + "codename": "add_property", + "name": "Can add Property", + "content_type": 22 + } + }, + { + "pk": 65, + "model": "auth.permission", + "fields": { + "codename": "change_property", + "name": "Can change Property", + "content_type": 22 + } + }, + { + "pk": 66, + "model": "auth.permission", + "fields": { + "codename": "delete_property", + "name": "Can delete Property", + "content_type": 22 + } + }, + { + "pk": 61, + "model": "auth.permission", + "fields": { + "codename": "add_propertymodel", + "name": "Can add Property model", + "content_type": 21 + } + }, + { + "pk": 62, + "model": "auth.permission", + "fields": { + "codename": "change_propertymodel", + "name": "Can change Property model", + "content_type": 21 + } + }, + { + "pk": 63, + "model": "auth.permission", + "fields": { + "codename": "delete_propertymodel", + "name": "Can delete Property model", + "content_type": 21 + } + }, + { + "pk": 55, + "model": "auth.permission", + "fields": { + "codename": "add_route", + "name": "Can add Route", + "content_type": 19 + } + }, + { + "pk": 56, + "model": "auth.permission", + "fields": { + "codename": "change_route", + "name": "Can change Route", + "content_type": 19 + } + }, + { + "pk": 57, + "model": "auth.permission", + "fields": { + "codename": "delete_route", + "name": "Can delete Route", + "content_type": 19 + } + }, + { + "pk": 52, + "model": "auth.permission", + "fields": { + "codename": "add_routefile", + "name": "Can add Route file", + "content_type": 18 + } + }, + { + "pk": 53, + "model": "auth.permission", + "fields": { + "codename": "change_routefile", + "name": "Can change Route file", + "content_type": 18 + } + }, + { + "pk": 54, + "model": "auth.permission", + "fields": { + "codename": "delete_routefile", + "name": "Can delete Route file", + "content_type": 18 + } + }, + { + "pk": 46, + "model": "auth.permission", + "fields": { + "codename": "add_propertymodel", + "name": "Can add Property model", + "content_type": 16 + } + }, + { + "pk": 47, + "model": "auth.permission", + "fields": { + "codename": "change_propertymodel", + "name": "Can change Property model", + "content_type": 16 + } + }, + { + "pk": 48, + "model": "auth.permission", + "fields": { + "codename": "delete_propertymodel", + "name": "Can delete Property model", + "content_type": 16 + } + }, + { + "pk": 31, + "model": "auth.permission", + "fields": { + "codename": "add_icon", + "name": "Can add Icon", + "content_type": 11 + } + }, + { + "pk": 32, + "model": "auth.permission", + "fields": { + "codename": "change_icon", + "name": "Can change Icon", + "content_type": 11 + } + }, + { + "pk": 33, + "model": "auth.permission", + "fields": { + "codename": "delete_icon", + "name": "Can delete Icon", + "content_type": 11 + } + }, + { + "pk": 16, + "model": "auth.permission", + "fields": { + "codename": "add_contenttype", + "name": "Can add content type", + "content_type": 6 + } + }, + { + "pk": 17, + "model": "auth.permission", + "fields": { + "codename": "change_contenttype", + "name": "Can change content type", + "content_type": 6 + } + }, + { + "pk": 18, + "model": "auth.permission", + "fields": { + "codename": "delete_contenttype", + "name": "Can delete content type", + "content_type": 6 + } + }, + { + "pk": 19, + "model": "auth.permission", + "fields": { + "codename": "add_session", + "name": "Can add session", + "content_type": 7 + } + }, + { + "pk": 20, + "model": "auth.permission", + "fields": { + "codename": "change_session", + "name": "Can change session", + "content_type": 7 + } + }, + { + "pk": 21, + "model": "auth.permission", + "fields": { + "codename": "delete_session", + "name": "Can delete session", + "content_type": 7 + } + }, + { + "pk": 22, + "model": "auth.permission", + "fields": { + "codename": "add_site", + "name": "Can add site", + "content_type": 8 + } + }, + { + "pk": 23, + "model": "auth.permission", + "fields": { + "codename": "change_site", + "name": "Can change site", + "content_type": 8 + } + }, + { + "pk": 24, + "model": "auth.permission", + "fields": { + "codename": "delete_site", + "name": "Can delete site", + "content_type": 8 + } + }, + { + "pk": 25, + "model": "auth.permission", + "fields": { + "codename": "add_news", + "name": "Can add News", + "content_type": 9 + } + }, + { + "pk": 26, + "model": "auth.permission", + "fields": { + "codename": "change_news", + "name": "Can change News", + "content_type": 9 + } + }, + { + "pk": 27, + "model": "auth.permission", + "fields": { + "codename": "delete_news", + "name": "Can delete News", + "content_type": 9 + } + }, + { + "pk": 1, + "model": "auth.group", + "fields": { + "name": "Moderator", + "permissions": [ + 40, + 41, + 42, + 37, + 38, + 39, + 49, + 50, + 51 + ] + } + }, + { + "pk": 2, + "model": "auth.group", + "fields": { + "name": "Application administrator", + "permissions": [ + 40, + 41, + 42, + 37, + 38, + 39, + 34, + 35, + 36, + 43, + 44, + 45, + 49, + 50, + 51, + 28, + 29, + 30, + 31, + 32, + 33, + 25, + 26, + 27 + ] + } + } +] diff --git a/fixtures/initial_data.json b/fixtures/initial_data.json deleted file mode 100644 index 814e8e0..0000000 --- a/fixtures/initial_data.json +++ /dev/null @@ -1,853 +0,0 @@ -[ - { - "pk": 20, - "model": "contenttypes.contenttype", - "fields": { - "model": "area", - "name": "Area", - "app_label": "chimere" - } - }, - { - "pk": 14, - "model": "contenttypes.contenttype", - "fields": { - "model": "category", - "name": "Category", - "app_label": "chimere" - } - }, - { - "pk": 13, - "model": "contenttypes.contenttype", - "fields": { - "model": "color", - "name": "Color", - "app_label": "chimere" - } - }, - { - "pk": 12, - "model": "contenttypes.contenttype", - "fields": { - "model": "colortheme", - "name": "Color theme", - "app_label": "chimere" - } - }, - { - "pk": 6, - "model": "contenttypes.contenttype", - "fields": { - "model": "contenttype", - "name": "content type", - "app_label": "contenttypes" - } - }, - { - "pk": 2, - "model": "contenttypes.contenttype", - "fields": { - "model": "group", - "name": "group", - "app_label": "auth" - } - }, - { - "pk": 15, - "model": "contenttypes.contenttype", - "fields": { - "model": "icon", - "name": "Icon", - "app_label": "chimere" - } - }, - { - "pk": 5, - "model": "contenttypes.contenttype", - "fields": { - "model": "logentry", - "name": "log entry", - "app_label": "admin" - } - }, - { - "pk": 4, - "model": "contenttypes.contenttype", - "fields": { - "model": "message", - "name": "message", - "app_label": "auth" - } - }, - { - "pk": 9, - "model": "contenttypes.contenttype", - "fields": { - "model": "migrationhistory", - "name": "migration history", - "app_label": "south" - } - }, - { - "pk": 10, - "model": "contenttypes.contenttype", - "fields": { - "model": "news", - "name": "News", - "app_label": "chimere" - } - }, - { - "pk": 1, - "model": "contenttypes.contenttype", - "fields": { - "model": "permission", - "name": "permission", - "app_label": "auth" - } - }, - { - "pk": 17, - "model": "contenttypes.contenttype", - "fields": { - "model": "marker", - "name": "Point of interest", - "app_label": "chimere" - } - }, - { - "pk": 22, - "model": "contenttypes.contenttype", - "fields": { - "model": "property", - "name": "Property", - "app_label": "chimere" - } - }, - { - "pk": 21, - "model": "contenttypes.contenttype", - "fields": { - "model": "propertymodel", - "name": "Property model", - "app_label": "chimere" - } - }, - { - "pk": 19, - "model": "contenttypes.contenttype", - "fields": { - "model": "route", - "name": "Route", - "app_label": "chimere" - } - }, - { - "pk": 18, - "model": "contenttypes.contenttype", - "fields": { - "model": "routefile", - "name": "Route file", - "app_label": "chimere" - } - }, - { - "pk": 7, - "model": "contenttypes.contenttype", - "fields": { - "model": "session", - "name": "session", - "app_label": "sessions" - } - }, - { - "pk": 8, - "model": "contenttypes.contenttype", - "fields": { - "model": "site", - "name": "site", - "app_label": "sites" - } - }, - { - "pk": 16, - "model": "contenttypes.contenttype", - "fields": { - "model": "subcategory", - "name": "Subcategory", - "app_label": "chimere" - } - }, - { - "pk": 11, - "model": "contenttypes.contenttype", - "fields": { - "model": "tinyurl", - "name": "TinyUrl", - "app_label": "chimere" - } - }, - { - "pk": 3, - "model": "contenttypes.contenttype", - "fields": { - "model": "user", - "name": "user", - "app_label": "auth" - } - }, - { - "pk": 1, - "model": "sites.site", - "fields": { - "domain": "example.com", - "name": "example.com" - } - }, - { - "pk": 13, - "model": "auth.permission", - "fields": { - "codename": "add_logentry", - "name": "Can add log entry", - "content_type": 5 - } - }, - { - "pk": 14, - "model": "auth.permission", - "fields": { - "codename": "change_logentry", - "name": "Can change log entry", - "content_type": 5 - } - }, - { - "pk": 15, - "model": "auth.permission", - "fields": { - "codename": "delete_logentry", - "name": "Can delete log entry", - "content_type": 5 - } - }, - { - "pk": 4, - "model": "auth.permission", - "fields": { - "codename": "add_group", - "name": "Can add group", - "content_type": 2 - } - }, - { - "pk": 5, - "model": "auth.permission", - "fields": { - "codename": "change_group", - "name": "Can change group", - "content_type": 2 - } - }, - { - "pk": 6, - "model": "auth.permission", - "fields": { - "codename": "delete_group", - "name": "Can delete group", - "content_type": 2 - } - }, - { - "pk": 10, - "model": "auth.permission", - "fields": { - "codename": "add_message", - "name": "Can add message", - "content_type": 4 - } - }, - { - "pk": 11, - "model": "auth.permission", - "fields": { - "codename": "change_message", - "name": "Can change message", - "content_type": 4 - } - }, - { - "pk": 12, - "model": "auth.permission", - "fields": { - "codename": "delete_message", - "name": "Can delete message", - "content_type": 4 - } - }, - { - "pk": 1, - "model": "auth.permission", - "fields": { - "codename": "add_permission", - "name": "Can add permission", - "content_type": 1 - } - }, - { - "pk": 2, - "model": "auth.permission", - "fields": { - "codename": "change_permission", - "name": "Can change permission", - "content_type": 1 - } - }, - { - "pk": 3, - "model": "auth.permission", - "fields": { - "codename": "delete_permission", - "name": "Can delete permission", - "content_type": 1 - } - }, - { - "pk": 7, - "model": "auth.permission", - "fields": { - "codename": "add_user", - "name": "Can add user", - "content_type": 3 - } - }, - { - "pk": 8, - "model": "auth.permission", - "fields": { - "codename": "change_user", - "name": "Can change user", - "content_type": 3 - } - }, - { - "pk": 9, - "model": "auth.permission", - "fields": { - "codename": "delete_user", - "name": "Can delete user", - "content_type": 3 - } - }, - { - "pk": 58, - "model": "auth.permission", - "fields": { - "codename": "add_area", - "name": "Can add Area", - "content_type": 20 - } - }, - { - "pk": 59, - "model": "auth.permission", - "fields": { - "codename": "change_area", - "name": "Can change Area", - "content_type": 20 - } - }, - { - "pk": 60, - "model": "auth.permission", - "fields": { - "codename": "delete_area", - "name": "Can delete Area", - "content_type": 20 - } - }, - { - "pk": 40, - "model": "auth.permission", - "fields": { - "codename": "add_route", - "name": "Can add Route", - "content_type": 14 - } - }, - { - "pk": 41, - "model": "auth.permission", - "fields": { - "codename": "change_route", - "name": "Can change Route", - "content_type": 14 - } - }, - { - "pk": 42, - "model": "auth.permission", - "fields": { - "codename": "delete_route", - "name": "Can delete Route", - "content_type": 14 - } - }, - { - "pk": 37, - "model": "auth.permission", - "fields": { - "codename": "add_marker", - "name": "Can add Point of interest", - "content_type": 13 - } - }, - { - "pk": 38, - "model": "auth.permission", - "fields": { - "codename": "change_marker", - "name": "Can change Point of interest", - "content_type": 13 - } - }, - { - "pk": 39, - "model": "auth.permission", - "fields": { - "codename": "delete_marker", - "name": "Can delete Point of interest", - "content_type": 13 - } - }, - { - "pk": 34, - "model": "auth.permission", - "fields": { - "codename": "add_subcategory", - "name": "Can add Subcategory", - "content_type": 12 - } - }, - { - "pk": 35, - "model": "auth.permission", - "fields": { - "codename": "change_subcategory", - "name": "Can change Subcategory", - "content_type": 12 - } - }, - { - "pk": 36, - "model": "auth.permission", - "fields": { - "codename": "delete_subcategory", - "name": "Can delete Subcategory", - "content_type": 12 - } - }, - { - "pk": 43, - "model": "auth.permission", - "fields": { - "codename": "add_area", - "name": "Can add Area", - "content_type": 15 - } - }, - { - "pk": 44, - "model": "auth.permission", - "fields": { - "codename": "change_area", - "name": "Can change Area", - "content_type": 15 - } - }, - { - "pk": 45, - "model": "auth.permission", - "fields": { - "codename": "delete_area", - "name": "Can delete Area", - "content_type": 15 - } - }, - { - "pk": 49, - "model": "auth.permission", - "fields": { - "codename": "add_property", - "name": "Can add Property", - "content_type": 17 - } - }, - { - "pk": 50, - "model": "auth.permission", - "fields": { - "codename": "change_property", - "name": "Can change Property", - "content_type": 17 - } - }, - { - "pk": 51, - "model": "auth.permission", - "fields": { - "codename": "delete_property", - "name": "Can delete Property", - "content_type": 17 - } - }, - { - "pk": 28, - "model": "auth.permission", - "fields": { - "codename": "add_category", - "name": "Can add Category", - "content_type": 10 - } - }, - { - "pk": 29, - "model": "auth.permission", - "fields": { - "codename": "change_category", - "name": "Can change Category", - "content_type": 10 - } - }, - { - "pk": 30, - "model": "auth.permission", - "fields": { - "codename": "delete_category", - "name": "Can delete Category", - "content_type": 10 - } - }, - { - "pk": 64, - "model": "auth.permission", - "fields": { - "codename": "add_property", - "name": "Can add Property", - "content_type": 22 - } - }, - { - "pk": 65, - "model": "auth.permission", - "fields": { - "codename": "change_property", - "name": "Can change Property", - "content_type": 22 - } - }, - { - "pk": 66, - "model": "auth.permission", - "fields": { - "codename": "delete_property", - "name": "Can delete Property", - "content_type": 22 - } - }, - { - "pk": 61, - "model": "auth.permission", - "fields": { - "codename": "add_propertymodel", - "name": "Can add Property model", - "content_type": 21 - } - }, - { - "pk": 62, - "model": "auth.permission", - "fields": { - "codename": "change_propertymodel", - "name": "Can change Property model", - "content_type": 21 - } - }, - { - "pk": 63, - "model": "auth.permission", - "fields": { - "codename": "delete_propertymodel", - "name": "Can delete Property model", - "content_type": 21 - } - }, - { - "pk": 55, - "model": "auth.permission", - "fields": { - "codename": "add_route", - "name": "Can add Route", - "content_type": 19 - } - }, - { - "pk": 56, - "model": "auth.permission", - "fields": { - "codename": "change_route", - "name": "Can change Route", - "content_type": 19 - } - }, - { - "pk": 57, - "model": "auth.permission", - "fields": { - "codename": "delete_route", - "name": "Can delete Route", - "content_type": 19 - } - }, - { - "pk": 52, - "model": "auth.permission", - "fields": { - "codename": "add_routefile", - "name": "Can add Route file", - "content_type": 18 - } - }, - { - "pk": 53, - "model": "auth.permission", - "fields": { - "codename": "change_routefile", - "name": "Can change Route file", - "content_type": 18 - } - }, - { - "pk": 54, - "model": "auth.permission", - "fields": { - "codename": "delete_routefile", - "name": "Can delete Route file", - "content_type": 18 - } - }, - { - "pk": 46, - "model": "auth.permission", - "fields": { - "codename": "add_propertymodel", - "name": "Can add Property model", - "content_type": 16 - } - }, - { - "pk": 47, - "model": "auth.permission", - "fields": { - "codename": "change_propertymodel", - "name": "Can change Property model", - "content_type": 16 - } - }, - { - "pk": 48, - "model": "auth.permission", - "fields": { - "codename": "delete_propertymodel", - "name": "Can delete Property model", - "content_type": 16 - } - }, - { - "pk": 31, - "model": "auth.permission", - "fields": { - "codename": "add_icon", - "name": "Can add Icon", - "content_type": 11 - } - }, - { - "pk": 32, - "model": "auth.permission", - "fields": { - "codename": "change_icon", - "name": "Can change Icon", - "content_type": 11 - } - }, - { - "pk": 33, - "model": "auth.permission", - "fields": { - "codename": "delete_icon", - "name": "Can delete Icon", - "content_type": 11 - } - }, - { - "pk": 16, - "model": "auth.permission", - "fields": { - "codename": "add_contenttype", - "name": "Can add content type", - "content_type": 6 - } - }, - { - "pk": 17, - "model": "auth.permission", - "fields": { - "codename": "change_contenttype", - "name": "Can change content type", - "content_type": 6 - } - }, - { - "pk": 18, - "model": "auth.permission", - "fields": { - "codename": "delete_contenttype", - "name": "Can delete content type", - "content_type": 6 - } - }, - { - "pk": 19, - "model": "auth.permission", - "fields": { - "codename": "add_session", - "name": "Can add session", - "content_type": 7 - } - }, - { - "pk": 20, - "model": "auth.permission", - "fields": { - "codename": "change_session", - "name": "Can change session", - "content_type": 7 - } - }, - { - "pk": 21, - "model": "auth.permission", - "fields": { - "codename": "delete_session", - "name": "Can delete session", - "content_type": 7 - } - }, - { - "pk": 22, - "model": "auth.permission", - "fields": { - "codename": "add_site", - "name": "Can add site", - "content_type": 8 - } - }, - { - "pk": 23, - "model": "auth.permission", - "fields": { - "codename": "change_site", - "name": "Can change site", - "content_type": 8 - } - }, - { - "pk": 24, - "model": "auth.permission", - "fields": { - "codename": "delete_site", - "name": "Can delete site", - "content_type": 8 - } - }, - { - "pk": 25, - "model": "auth.permission", - "fields": { - "codename": "add_news", - "name": "Can add News", - "content_type": 9 - } - }, - { - "pk": 26, - "model": "auth.permission", - "fields": { - "codename": "change_news", - "name": "Can change News", - "content_type": 9 - } - }, - { - "pk": 27, - "model": "auth.permission", - "fields": { - "codename": "delete_news", - "name": "Can delete News", - "content_type": 9 - } - }, - { - "pk": 1, - "model": "auth.group", - "fields": { - "name": "Moderator", - "permissions": [ - 40, - 41, - 42, - 37, - 38, - 39, - 49, - 50, - 51 - ] - } - }, - { - "pk": 2, - "model": "auth.group", - "fields": { - "name": "Application administrator", - "permissions": [ - 40, - 41, - 42, - 37, - 38, - 39, - 34, - 35, - 36, - 43, - 44, - 45, - 49, - 50, - 51, - 28, - 29, - 30, - 31, - 32, - 33, - 25, - 26, - 27 - ] - } - } -] -- cgit v1.2.3 From 365f8b65cfe6581660918f1cbb248b25657961f3 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 1 Feb 2013 17:57:20 +0100 Subject: Adapt example_project to avoid unicode characters. Temporary fix to prevent a Django bug. cf. https://code.djangoproject.com/ticket/18091 --- settings.py | 12 +++--------- urls.py | 2 +- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/settings.py b/settings.py index c48a847..b0839d6 100644 --- a/settings.py +++ b/settings.py @@ -10,7 +10,7 @@ DEBUG = False TEMPLATE_DEBUG = DEBUG # Django settings for chimere project. -PROJECT_NAME = u'Chimère' +PROJECT_NAME = 'Chimere' ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" EMAIL_HOST = 'localhost' @@ -26,8 +26,7 @@ JQUERY_CSS_URLS = ('/javascript/jquery-ui/css/smoothness/jquery-ui.css', OSM_CSS_URLS = ["http://www.openlayers.org/api/theme/default/style.css"] GPSBABEL = '/usr/bin/gpsbabel' -GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an - # error of 5 meters +GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an error of 5 meters #GPSBABEL_OPTIONS = 'simplify,count=100' ## chimere specific ## @@ -169,10 +168,6 @@ INSTALLED_APPS = [ 'django.contrib.sites', 'django.contrib.gis', 'django.contrib.staticfiles', - 'south', - 'chimere', - # activate it if you want to use old migration scripts - #'chimere.scripts', ] # celery @@ -190,8 +185,7 @@ except ImportError: INSTALLED_APPS += [ 'south', 'chimere', - # activate it if you want to use old migration scripts - #'chimere.scripts', +# 'chimere.scripts', # activate it if you want to use old migration scripts ] LOGGING = {'version': 1, diff --git a/urls.py b/urls.py index e37ae53..fff1366 100644 --- a/urls.py +++ b/urls.py @@ -1,6 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -# Copyright (C) 2012 Étienne Loks +# Copyright (C) 2012-2013 Etienne Loks # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as -- cgit v1.2.3 From 528ade0bfccb149d2ec2e056f1d55b1979ce0785 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 1 Feb 2013 18:32:47 +0100 Subject: Changes to reflect move from example_project to chimere_example_project --- local_settings.py.pip.sample | 4 ++-- local_settings.py.sample | 6 ++++-- settings.py | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/local_settings.py.pip.sample b/local_settings.py.pip.sample index 6b6cffc..e88acec 100644 --- a/local_settings.py.pip.sample +++ b/local_settings.py.pip.sample @@ -5,6 +5,8 @@ import os +ROOT_URLCONF = 'chimere_example_project.urls' + STATIC_URL = '/static/' CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL @@ -31,8 +33,6 @@ DATABASES = { }, } -ROOT_URLCONF = 'example_project.urls' - INSTALLED_APPS += ['django_extensions', 'tinymce'] diff --git a/local_settings.py.sample b/local_settings.py.sample index b5939af..0d3252d 100644 --- a/local_settings.py.sample +++ b/local_settings.py.sample @@ -5,6 +5,10 @@ import os +ROOT_URLCONF = 'chimere_example_project.urls' + +STATIC_URL = '/static/' + CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL CHIMERE_OSM_USER = 'osm_user' CHIMERE_OSM_PASSWORD = 'osm_pass' @@ -28,5 +32,3 @@ DATABASES = { 'PASSWORD': '', }, } - -ROOT_URLCONF = 'example_project.urls' diff --git a/settings.py b/settings.py index b0839d6..431d6b1 100644 --- a/settings.py +++ b/settings.py @@ -140,7 +140,7 @@ MIDDLEWARE_CLASSES = ( 'django.contrib.messages.middleware.MessageMiddleware' ) -ROOT_URLCONF = 'example_project.urls' +ROOT_URLCONF = 'chimere_example_project.urls' TEMPLATE_DIRS = [ # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". -- cgit v1.2.3 From 8d12c16e4489d2e9079d328c7d673a216444533a Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 1 Feb 2013 23:23:49 +0100 Subject: Fix path according to Chimère reorganization MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- settings.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/settings.py b/settings.py index 431d6b1..eaeac4a 100644 --- a/settings.py +++ b/settings.py @@ -250,7 +250,7 @@ if 'CHIMERE_SHARE_NETWORKS' not in globals(): if 'OSM_JS_URLS' not in globals(): global OSM_JS_URLS - OSM_JS_URLS = [STATIC_URL + "chimere/js/OpenLayers.js", - STATIC_URL + "chimere/js/SimplePanZoom.js", + OSM_JS_URLS = [STATIC_URL + "openlayers/OpenLayers.js", + STATIC_URL + "openlayers/SimplePanZoom.js", "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] -- cgit v1.2.3 From 7a1c278fb7ed736de0d744093aaafdf26274a969 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 18 Feb 2013 19:49:35 +0100 Subject: Allow to easily specify the log file --- settings.py | 81 ++++++++++++++++++++++++++++++++----------------------------- 1 file changed, 43 insertions(+), 38 deletions(-) diff --git a/settings.py b/settings.py index eaeac4a..ca2b460 100644 --- a/settings.py +++ b/settings.py @@ -188,50 +188,55 @@ INSTALLED_APPS += [ # 'chimere.scripts', # activate it if you want to use old migration scripts ] -LOGGING = {'version': 1, - 'disable_existing_loggers': False, - 'handlers': { - # Include the default Django email handler for errors - # This is what you'd get without configuring logging at all. - 'mail_admins': { - 'class': 'django.utils.log.AdminEmailHandler', - 'level': 'ERROR', - # But the emails are plain text by default - HTML is nicer - 'include_html': True, - }, - # Log to a text file that can be rotated by logrotate - 'logfile': { - 'class': 'logging.handlers.WatchedFileHandler', - 'filename': '/var/log/django/chimere.log' - }, - }, - 'loggers': { - # Again, default Django configuration to email unhandled exceptions - 'django.request': { - 'handlers': ['mail_admins'], - 'level': 'ERROR', - 'propagate': True, - }, - # Might as well log any errors anywhere else in Django - 'django': { - 'handlers': ['logfile'], - 'level': 'ERROR', - 'propagate': False, - }, - # Your own app - this assumes all your logger names start with "myapp." - 'chimere': { - 'handlers': ['logfile'], - 'level': 'WARNING', # Or maybe INFO or DEBUG - 'propogate': False - }, - }, -} +LOG_PATH = '/var/log/django/' try: from local_settings import * except ImportError, e: print 'Unable to load local_settings.py:', e +if 'LOGGING' not in globals(): + global LOGGING + LOGGING = {'version': 1, + 'disable_existing_loggers': False, + 'handlers': { + # Include the default Django email handler for errors + # This is what you'd get without configuring logging at all. + 'mail_admins': { + 'class': 'django.utils.log.AdminEmailHandler', + 'level': 'ERROR', + # But the emails are plain text by default - HTML is nicer + 'include_html': True, + }, + # Log to a text file that can be rotated by logrotate + 'logfile': { + 'class': 'logging.handlers.WatchedFileHandler', + 'filename': LOG_PATH + 'chimere.log' + }, + }, + 'loggers': { + # Again, default Django configuration to email unhandled exceptions + 'django.request': { + 'handlers': ['mail_admins'], + 'level': 'ERROR', + 'propagate': True, + }, + # Might as well log any errors anywhere else in Django + 'django': { + 'handlers': ['logfile'], + 'level': 'ERROR', + 'propagate': False, + }, + # Your own app - this assumes all your logger names start with "myapp." + 'chimere': { + 'handlers': ['logfile'], + 'level': 'WARNING', # Or maybe INFO or DEBUG + 'propogate': False + }, + }, + } + + if 'CHIMERE_SHARE_NETWORKS' not in globals(): # after the locals to get the right STATIC_URL -- cgit v1.2.3 From f674848f7f765c14534482b1bcd62970eab87b30 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 1 Apr 2013 15:05:36 +0200 Subject: Change settings according to chimere library --- settings.py | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/settings.py b/settings.py index ca2b460..658a251 100644 --- a/settings.py +++ b/settings.py @@ -23,8 +23,6 @@ JQUERY_JS_URLS = ('/javascript/jquery/jquery.js', JQUERY_CSS_URLS = ('/javascript/jquery-ui/css/smoothness/jquery-ui.css', '/javascript/jquery-ui-themes/base/jquery.ui.all.css') -OSM_CSS_URLS = ["http://www.openlayers.org/api/theme/default/style.css"] - GPSBABEL = '/usr/bin/gpsbabel' GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an error of 5 meters #GPSBABEL_OPTIONS = 'simplify,count=100' @@ -147,7 +145,7 @@ TEMPLATE_DIRS = [ # Always use forward slashes, even on Windows. # Don't forget to use absolute paths, not relative paths. ROOT_PATH + 'templates', - ROOT_PATH + '../chimere/templates', + #ROOT_PATH + '../chimere/templates', ] TEMPLATE_CONTEXT_PROCESSORS = ( @@ -190,6 +188,9 @@ INSTALLED_APPS += [ LOG_PATH = '/var/log/django/' +CHIMERE_VIEW_RENDERER = 'openlayers' # 'openlayers' or 'leaflet' +CHIMERE_EDIT_RENDERER = 'openlayers' # 'openlayers' + try: from local_settings import * except ImportError, e: @@ -253,9 +254,25 @@ if 'CHIMERE_SHARE_NETWORKS' not in globals(): STATIC_URL + 'chimere/img/identica.png'), ) -if 'OSM_JS_URLS' not in globals(): - global OSM_JS_URLS - OSM_JS_URLS = [STATIC_URL + "openlayers/OpenLayers.js", - STATIC_URL + "openlayers/SimplePanZoom.js", - "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] +if 'MAP_JS_URLS' not in globals(): + global MAP_JS_URLS + MAP_JS_URLS = { + 'openlayers':[ + STATIC_URL + "openlayers/OpenLayers.js", + STATIC_URL + "openlayers/SimplePanZoom.js", + "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"], + 'leaflet':[ + STATIC_URL + "leaflet/leaflet.js" + ] + } + +if 'MAP_CSS_URLS' not in globals(): + global MAP_CSS_URLS + MAP_CSS_URLS = { + 'openlayers':["http://www.openlayers.org/api/theme/default/style.css"], + 'leaflet':[ + STATIC_URL + "leaflet/leaflet.css", + STATIC_URL + "leaflet/leaflet.ie.css" + ] + } -- cgit v1.2.3 From 5b0240709be25116b950ed39301553b51778f967 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 1 Apr 2013 15:11:14 +0200 Subject: Add routing settings --- settings.py | 39 ++++++++++++++++++++++++++++++++++----- 1 file changed, 34 insertions(+), 5 deletions(-) diff --git a/settings.py b/settings.py index ca2b460..0918e93 100644 --- a/settings.py +++ b/settings.py @@ -5,6 +5,7 @@ # overload all theses settings in your local_settings.py file import os +_ = lambda s: s DEBUG = False TEMPLATE_DEBUG = DEBUG @@ -14,6 +15,7 @@ PROJECT_NAME = 'Chimere' ROOT_PATH = os.path.realpath(os.path.dirname(__file__)) + "/" EMAIL_HOST = 'localhost' +CONTACT_EMAIL = '' STATIC_URL = '/static/' STATIC_ROOT = ROOT_PATH + 'static/' @@ -26,7 +28,8 @@ JQUERY_CSS_URLS = ('/javascript/jquery-ui/css/smoothness/jquery-ui.css', OSM_CSS_URLS = ["http://www.openlayers.org/api/theme/default/style.css"] GPSBABEL = '/usr/bin/gpsbabel' -GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an error of 5 meters +GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an + # error of 5 meters #GPSBABEL_OPTIONS = 'simplify,count=100' ## chimere specific ## @@ -68,12 +71,40 @@ CHIMERE_OSM_API_URL = 'api06.dev.openstreetmap.org' # test URL CHIMERE_OSM_USER = 'test' CHIMERE_OSM_PASSWORD = 'test' +# encoding for shapefile import +CHIMERE_SHAPEFILE_ENCODING = 'ISO-8859-1' + # as the web server need to be reloaded when property models are changed # it could be a good idea to hide it to an admin who could'nt do that CHIMERE_HIDE_PROPERTYMODEL = False -# encoding for shapefile import -CHIMERE_SHAPEFILE_ENCODING = 'ISO-8859-1' +# enable routing in Chimère +CHIMERE_ENABLE_ROUTING = False + +CHIMERE_ROUTING_TRANSPORT = (('foot', _(u"Foot")), + ('bicycle', _(u"Bicycle")), + ('motorcar', _(u"Motorcar")), + ) + +CHIMERE_ROUTING_SPEEDS = {'foot':((3, _(u"You are walking slowly")), + (6, _(u"You are walking pretty quickly")),), + 'bicycle':((16, _(u"You are riding pretty slowly")), + (22, _(u"You are riding pretty quickly")),) + } + +# available routing engine: 'routino' +CHIMERE_ROUTING_ENGINE = { + 'ENGINE': 'routino', + 'PATH': '/usr/local/src/web/bin/router', + 'DB_PATH': '/var/local/routino/', +} + +CHIMERE_ROUTING_FAIL_MESSAGE = u"""

Attention

+

Le moteur de routage a échoué dans sa recherche de trajet. Les points de +départ ou d'arrivée sont peut-être trop loin d'une voie existante ou le trajet +est trop dangereux.

""" + +NOMINATIM_URL = 'http://nominatim.openstreetmap.org/search' # thumbnail CHIMERE_THUMBS_SCALE_HEIGHT=250 @@ -147,7 +178,6 @@ TEMPLATE_DIRS = [ # Always use forward slashes, even on Windows. # Don't forget to use absolute paths, not relative paths. ROOT_PATH + 'templates', - ROOT_PATH + '../chimere/templates', ] TEMPLATE_CONTEXT_PROCESSORS = ( @@ -185,7 +215,6 @@ except ImportError: INSTALLED_APPS += [ 'south', 'chimere', -# 'chimere.scripts', # activate it if you want to use old migration scripts ] LOG_PATH = '/var/log/django/' -- cgit v1.2.3 From 31f9b9de92dfe30cb2902727e32927a596a41d11 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 1 Apr 2013 18:43:46 +0200 Subject: Better management of URLs in settings.py --- settings.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/settings.py b/settings.py index 9fb6b0c..2e5ad40 100644 --- a/settings.py +++ b/settings.py @@ -289,9 +289,11 @@ if 'MAP_JS_URLS' not in globals(): 'openlayers':[ STATIC_URL + "openlayers/OpenLayers.js", STATIC_URL + "openlayers/SimplePanZoom.js", - "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"], + "http://www.openstreetmap.org/openlayers/OpenStreetMap.js", + STATIC_URL + "chimere/js/jquery.chimere-ol.js"], 'leaflet':[ - STATIC_URL + "leaflet/leaflet.js" + STATIC_URL + "leaflet/leaflet.js", + STATIC_URL + "chimere/js/jquery.chimere-leaflet.js" ] } -- cgit v1.2.3 From 5140a7ad602e246f8bf2449220ef5bc9d64436d6 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 3 Apr 2013 16:34:43 +0200 Subject: Allow conditions for CSS urls. --- settings.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/settings.py b/settings.py index 2e5ad40..391c6e5 100644 --- a/settings.py +++ b/settings.py @@ -290,7 +290,8 @@ if 'MAP_JS_URLS' not in globals(): STATIC_URL + "openlayers/OpenLayers.js", STATIC_URL + "openlayers/SimplePanZoom.js", "http://www.openstreetmap.org/openlayers/OpenStreetMap.js", - STATIC_URL + "chimere/js/jquery.chimere-ol.js"], + STATIC_URL + "chimere/js/jquery.chimere-ol.js" + ], 'leaflet':[ STATIC_URL + "leaflet/leaflet.js", STATIC_URL + "chimere/js/jquery.chimere-leaflet.js" @@ -299,11 +300,13 @@ if 'MAP_JS_URLS' not in globals(): if 'MAP_CSS_URLS' not in globals(): global MAP_CSS_URLS + # key: [(url, condition)] MAP_CSS_URLS = { - 'openlayers':["http://www.openlayers.org/api/theme/default/style.css"], + 'openlayers':[("http://www.openlayers.org/api/theme/default/style.css", + None)], 'leaflet':[ - STATIC_URL + "leaflet/leaflet.css", - STATIC_URL + "leaflet/leaflet.ie.css" + (STATIC_URL + "leaflet/leaflet.css", None), + (STATIC_URL + "leaflet/leaflet.ie.css", 'lte IE 8') ] } -- cgit v1.2.3 From 5c4d02160ddf89e187850bb27c42ef734cf574ec Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 5 Apr 2013 13:01:58 +0200 Subject: Manage conditionnal CSS (better to come...) --- settings.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/settings.py b/settings.py index 391c6e5..da703fb 100644 --- a/settings.py +++ b/settings.py @@ -300,8 +300,12 @@ if 'MAP_JS_URLS' not in globals(): if 'MAP_CSS_URLS' not in globals(): global MAP_CSS_URLS - # key: [(url, condition)] MAP_CSS_URLS = { + 'openlayers':["http://www.openlayers.org/api/theme/default/style.css"], + 'leaflet':[STATIC_URL + "leaflet/leaflet.css"], + } + # key: [(url, condition)] + MAP_CONDITIONNAL_CSS_URLS = { 'openlayers':[("http://www.openlayers.org/api/theme/default/style.css", None)], 'leaflet':[ -- cgit v1.2.3 From a6d6e5077c7a6d6581004e54abc79a9d0723905c Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 7 Jun 2013 17:05:38 +0200 Subject: Simplification --- media/icons/marker.png | Bin 606 -> 0 bytes media/icons/readme | 1 - media/pictures/readme | 1 - media/route_files/readme | 1 - settings.py | 8 +++++++- 5 files changed, 7 insertions(+), 4 deletions(-) delete mode 100755 media/icons/marker.png delete mode 100644 media/icons/readme delete mode 100644 media/pictures/readme delete mode 100644 media/route_files/readme diff --git a/media/icons/marker.png b/media/icons/marker.png deleted file mode 100755 index ccd1913..0000000 Binary files a/media/icons/marker.png and /dev/null differ diff --git a/media/icons/readme b/media/icons/readme deleted file mode 100644 index 560759a..0000000 --- a/media/icons/readme +++ /dev/null @@ -1 +0,0 @@ -Icons are stored here diff --git a/media/pictures/readme b/media/pictures/readme deleted file mode 100644 index c0d20b7..0000000 --- a/media/pictures/readme +++ /dev/null @@ -1 +0,0 @@ -Pictures are stored here diff --git a/media/route_files/readme b/media/route_files/readme deleted file mode 100644 index 90d72ab..0000000 --- a/media/route_files/readme +++ /dev/null @@ -1 +0,0 @@ -Route files are stored here diff --git a/settings.py b/settings.py index eaeac4a..cb2199b 100644 --- a/settings.py +++ b/settings.py @@ -4,7 +4,7 @@ # Don't edit this file: # overload all theses settings in your local_settings.py file -import os +import os, sys DEBUG = False TEMPLATE_DEBUG = DEBUG @@ -81,6 +81,9 @@ CHIMERE_THUMBS_SCALE_WIDTH=None CHIMERE_CSV_ENCODING = 'ISO-8859-1' +# generic contact email +CONTACT_EMAIL = '' + ADMINS = ( # ('Your Name', 'your_email@domain.com'), ) @@ -98,6 +101,9 @@ DATABASES = { }, } +if 'test' in sys.argv: + SOUTH_TESTS_MIGRATE = False + # Local time zone for this installation. Choices can be found here: # http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE # although not all variations may be possible on all operating systems. -- cgit v1.2.3 From 55d98517fede51fb945f48ecb73a02e52ebd4158 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 7 Jun 2013 17:22:53 +0200 Subject: Better management of static files --- .gitignore | 4 ++++ project_static/.project_static | 0 settings.py | 2 ++ 3 files changed, 6 insertions(+) create mode 100644 .gitignore create mode 100644 project_static/.project_static diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2aac5f9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +media/* +local_settings.py +static/* +*.pyc diff --git a/project_static/.project_static b/project_static/.project_static new file mode 100644 index 0000000..e69de29 diff --git a/settings.py b/settings.py index 5d554ce..019b675 100644 --- a/settings.py +++ b/settings.py @@ -17,6 +17,8 @@ EMAIL_HOST = 'localhost' STATIC_URL = '/static/' STATIC_ROOT = ROOT_PATH + 'static/' +STATICFILES_DIRS = (ROOT_PATH + 'project_static',) + TINYMCE_URL = '/tinymce/' JQUERY_JS_URLS = ('/javascript/jquery/jquery.js', '/javascript/jquery-ui/jquery-ui.js',) -- cgit v1.2.3 From a8939240991e5c1b90faff2e940b4035d5d11b51 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 25 Oct 2013 16:27:22 +0200 Subject: Adapt settings for mobile management --- settings.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/settings.py b/settings.py index 677cf83..0447d02 100644 --- a/settings.py +++ b/settings.py @@ -9,6 +9,7 @@ _ = lambda s: s DEBUG = False TEMPLATE_DEBUG = DEBUG +MOBILE_TEST = False # Django settings for chimere project. PROJECT_NAME = 'Chimere' @@ -226,6 +227,7 @@ INSTALLED_APPS += [ ] LOG_PATH = '/var/log/django/' +MOBILE_DOMAINS = [] # if you have specific domains for mobile access try: from local_settings import * @@ -295,4 +297,8 @@ if 'OSM_JS_URLS' not in globals(): OSM_JS_URLS = [STATIC_URL + "openlayers/OpenLayers.js", STATIC_URL + "openlayers/SimplePanZoom.js", "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] - +if 'OSM_MOBILE_JS_URLS' not in globals(): + global OSM_MOBILE_URLS + OSM_JS_MOBILE_URLS = [STATIC_URL + "openlayers/OpenLayers.mobile.js", + STATIC_URL + "openlayers/SimplePanZoom.js", + "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] -- cgit v1.2.3 From e52f9f1cbef803c826510bfdea46ea205240a882 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Mon, 22 Sep 2014 01:30:40 +0200 Subject: Work on search engine - new bootstrap layout --- .gitignore | 8 ++ chimere_example_static/bootstrap/bootstrap.min.css | 9 ++ chimere_example_static/bootstrap/bootstrap.min.js | 6 ++ .../chimere/css/extra-styles.css | 99 ++++++++++++++++++++++ chimere_example_static/chimere/css/form-compat.css | 64 ++++++++++++++ chimere_example_static/chimere/js/interface.js | 32 +++++++ manage.py | 3 + settings.py | 26 ++++++ templates/chimere/base.html | 37 ++++++++ templates/chimere/blocks/actions.html | 65 ++++++++++++++ templates/chimere/blocks/map.html | 94 ++++++++++++++++++++ templates/chimere/main_map.html | 64 ++++++++++++++ 12 files changed, 507 insertions(+) create mode 100644 .gitignore create mode 100644 chimere_example_static/bootstrap/bootstrap.min.css create mode 100644 chimere_example_static/bootstrap/bootstrap.min.js create mode 100644 chimere_example_static/chimere/css/extra-styles.css create mode 100644 chimere_example_static/chimere/css/form-compat.css create mode 100644 chimere_example_static/chimere/js/interface.js create mode 100644 templates/chimere/base.html create mode 100644 templates/chimere/blocks/actions.html create mode 100644 templates/chimere/blocks/map.html create mode 100644 templates/chimere/main_map.html diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0562840 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +*.pyc +*.swp +*.bak +*.mo +*.ignore +static +media +local_settings.py diff --git a/chimere_example_static/bootstrap/bootstrap.min.css b/chimere_example_static/bootstrap/bootstrap.min.css new file mode 100644 index 0000000..a553c4f --- /dev/null +++ b/chimere_example_static/bootstrap/bootstrap.min.css @@ -0,0 +1,9 @@ +/*! + * Bootstrap v3.0.0 + * + * Copyright 2013 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world by @mdo and @fat. + *//*! normalize.css v2.1.0 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{margin:.67em 0;font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}mark{color:#000;background:#ff0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid #c0c0c0}legend{padding:0;border:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:100%}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{padding:0;box-sizing:border-box}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:2cm .5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button,input,select[multiple],textarea{background-image:none}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}img{vertical-align:middle}.img-responsive{display:block;height:auto;max-width:100%}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16.099999999999998px;font-weight:200;line-height:1.4}@media(min-width:768px){.lead{font-size:21px}}small{font-size:85%}cite{font-style:normal}.text-muted{color:#999}.text-primary{color:#428bca}.text-warning{color:#c09853}.text-danger{color:#b94a48}.text-success{color:#468847}.text-info{color:#3a87ad}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{margin-top:20px;margin-bottom:10px}h4,h5,h6{margin-top:10px;margin-bottom:10px}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}h1 small,.h1 small{font-size:24px}h2 small,.h2 small{font-size:18px}h3 small,.h3 small,h4 small,.h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}blockquote p:last-child{margin-bottom:0}blockquote small{display:block;line-height:1.428571429;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:1.428571429}code,pre{font-family:Monaco,Menlo,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.row{margin-right:-15px;margin-left:-15px}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11{float:left}.col-xs-1{width:8.333333333333332%}.col-xs-2{width:16.666666666666664%}.col-xs-3{width:25%}.col-xs-4{width:33.33333333333333%}.col-xs-5{width:41.66666666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.333333333333336%}.col-xs-8{width:66.66666666666666%}.col-xs-9{width:75%}.col-xs-10{width:83.33333333333334%}.col-xs-11{width:91.66666666666666%}.col-xs-12{width:100%}@media(min-width:768px){.container{max-width:750px}.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11{float:left}.col-sm-1{width:8.333333333333332%}.col-sm-2{width:16.666666666666664%}.col-sm-3{width:25%}.col-sm-4{width:33.33333333333333%}.col-sm-5{width:41.66666666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.333333333333336%}.col-sm-8{width:66.66666666666666%}.col-sm-9{width:75%}.col-sm-10{width:83.33333333333334%}.col-sm-11{width:91.66666666666666%}.col-sm-12{width:100%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-11{left:91.66666666666666%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-11{margin-left:91.66666666666666%}}@media(min-width:992px){.container{max-width:970px}.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11{float:left}.col-md-1{width:8.333333333333332%}.col-md-2{width:16.666666666666664%}.col-md-3{width:25%}.col-md-4{width:33.33333333333333%}.col-md-5{width:41.66666666666667%}.col-md-6{width:50%}.col-md-7{width:58.333333333333336%}.col-md-8{width:66.66666666666666%}.col-md-9{width:75%}.col-md-10{width:83.33333333333334%}.col-md-11{width:91.66666666666666%}.col-md-12{width:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.333333333333332%}.col-md-push-2{left:16.666666666666664%}.col-md-push-3{left:25%}.col-md-push-4{left:33.33333333333333%}.col-md-push-5{left:41.66666666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.333333333333336%}.col-md-push-8{left:66.66666666666666%}.col-md-push-9{left:75%}.col-md-push-10{left:83.33333333333334%}.col-md-push-11{left:91.66666666666666%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-11{right:91.66666666666666%}.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-11{margin-left:91.66666666666666%}}@media(min-width:1200px){.container{max-width:1170px}.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11{float:left}.col-lg-1{width:8.333333333333332%}.col-lg-2{width:16.666666666666664%}.col-lg-3{width:25%}.col-lg-4{width:33.33333333333333%}.col-lg-5{width:41.66666666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.333333333333336%}.col-lg-8{width:66.66666666666666%}.col-lg-9{width:75%}.col-lg-10{width:83.33333333333334%}.col-lg-11{width:91.66666666666666%}.col-lg-12{width:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-11{left:91.66666666666666%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-11{margin-left:91.66666666666666%}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table thead>tr>th,.table tbody>tr>th,.table tfoot>tr>th,.table thead>tr>td,.table tbody>tr>td,.table tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table caption+thead tr:first-child th,.table colgroup+thead tr:first-child th,.table thead:first-child tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed thead>tr>th,.table-condensed tbody>tr>th,.table-condensed tfoot>tr>th,.table-condensed thead>tr>td,.table-condensed tbody>tr>td,.table-condensed tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*="col-"]{display:table-column;float:none}table td[class*="col-"],table th[class*="col-"]{display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8;border-color:#d6e9c6}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td{background-color:#d0e9c6;border-color:#c9e2b3}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede;border-color:#eed3d7}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td{background-color:#ebcccc;border-color:#e6c1c7}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3;border-color:#fbeed5}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td{background-color:#faf2cc;border-color:#f8e5be}@media(max-width:768px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0;background-color:#fff}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>thead>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>thead>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}select[multiple],select[size]{height:auto}select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{height:auto}.form-control:-moz-placeholder{color:#999}.form-control::-moz-placeholder{color:#999}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}textarea.form-control{height:auto}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.radio label,.checkbox label{display:inline;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:normal;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm{height:auto}.input-lg{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:45px;line-height:45px}textarea.input-lg{height:auto}.has-warning .help-block,.has-warning .control-label{color:#c09853}.has-warning .form-control{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.has-warning .input-group-addon{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.has-error .help-block,.has-error .control-label{color:#b94a48}.has-error .form-control{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.has-error .input-group-addon{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.has-success .help-block,.has-success .control-label{color:#468847}.has-success .form-control{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.has-success .input-group-addon{color:#468847;background-color:#dff0d8;border-color:#468847}.form-control-static{padding-top:7px;margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline .radio,.form-inline .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:none;margin-left:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}@media(min-width:768px){.form-horizontal .control-label{text-align:right}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;border:1px solid transparent;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-link{font-weight:normal;color:#428bca;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-xs{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs{padding:1px 5px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:normal;line-height:1}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-print:before{content:"\e045"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-briefcase:before{content:"\1f4bc"}.glyphicon-calendar:before{content:"\1f4c5"}.glyphicon-pushpin:before{content:"\1f4cc"}.glyphicon-paperclip:before{content:"\1f4ce"}.glyphicon-camera:before{content:"\1f4f7"}.glyphicon-lock:before{content:"\1f512"}.glyphicon-bell:before{content:"\1f514"}.glyphicon-bookmark:before{content:"\1f516"}.glyphicon-fire:before{content:"\1f525"}.glyphicon-wrench:before{content:"\1f527"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid #000;border-right:4px solid transparent;border-bottom:0 dotted;border-left:4px solid transparent;content:""}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#fff;text-decoration:none;background-color:#428bca}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#428bca;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.btn-default .caret{border-top-color:#333}.btn-primary .caret,.btn-success .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret{border-top-color:#fff}.dropup .btn-default .caret{border-bottom-color:#333}.dropup .btn-primary .caret,.dropup .btn-success .caret,.dropup .btn-warning .caret,.dropup .btn-danger .caret,.dropup .btn-info .caret{border-bottom-color:#fff}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group{float:left}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group,.btn-toolbar>.btn-group+.btn-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group-xs>.btn{padding:5px 10px;padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child>.btn:last-child,.btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.btn-group-justified .btn{display:table-cell;float:none;width:1%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group.col{float:none;padding-right:0;padding-left:0}.input-group .form-control{width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:45px;line-height:45px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-4px}.input-group-btn>.btn:hover,.input-group-btn>.btn:active{z-index:2}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}}.nav-tabs.nav-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs.nav-justified>.active>a{border-bottom-color:#fff}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:5px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-justified>li{display:table-cell;width:1%}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs-justified>.active>a{border-bottom-color:#fff}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.nav .caret{border-top-color:#428bca;border-bottom-color:#428bca}.nav a:hover .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;z-index:1000;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}@media(min-width:768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}@media(min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media(min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-collapse .navbar-nav.navbar-left:first-child{margin-left:-15px}.navbar-collapse .navbar-nav.navbar-right:last-child{margin-right:-15px}.navbar-collapse .navbar-text:last-child{margin-right:0}}.container>.navbar-header,.container>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media(min-width:768px){.container>.navbar-header,.container>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{border-width:0 0 1px}@media(min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;border-width:0 0 1px}@media(min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;z-index:1030}.navbar-fixed-bottom{bottom:0;margin-bottom:0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media(min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media(min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media(max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media(min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}@media(min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}@media(min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}}@media(max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media(min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-nav.pull-right>li>.dropdown-menu,.navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-text{float:left;margin-top:15px;margin-bottom:15px}@media(min-width:768px){.navbar-text{margin-right:15px;margin-left:15px}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e6e6e6}.navbar-default .navbar-nav>.dropdown>a:hover .caret,.navbar-default .navbar-nav>.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.open>a .caret,.navbar-default .navbar-nav>.open>a:hover .caret,.navbar-default .navbar-nav>.open>a:focus .caret{border-top-color:#555;border-bottom-color:#555}.navbar-default .navbar-nav>.dropdown>a .caret{border-top-color:#777;border-bottom-color:#777}@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.dropdown>a:hover .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-nav>.dropdown>a .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .navbar-nav>.open>a .caret,.navbar-inverse .navbar-nav>.open>a:hover .caret,.navbar-inverse .navbar-nav>.open>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}@media(max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{background-color:#eee}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#428bca;border-color:#428bca}.pagination>.disabled>span,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.badge:empty{display:none}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.btn .badge{position:relative;top:-1px}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.jumbotron h1{line-height:1;color:inherit}.jumbotron p{line-height:1.4}.container .jumbotron{border-radius:6px}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1{font-size:63px}}.thumbnail{display:inline-block;display:block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img{display:block;height:auto;max-width:100%}a.thumbnail:hover,a.thumbnail:focus{border-color:#428bca}.thumbnail>img{margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#356635}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#2d6987}.alert-warning{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.alert-warning hr{border-top-color:#f8e5be}.alert-warning .alert-link{color:#a47e3c}.alert-danger{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger hr{border-top-color:#e6c1c7}.alert-danger .alert-link{color:#953b39}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0}.panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.list-group .list-group-item:last-child{border-bottom:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table{margin-bottom:0}.panel>.panel-body+.table{border-top:1px solid #ddd}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-warning{border-color:#fbeed5}.panel-warning>.panel-heading{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#fbeed5}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#fbeed5}.panel-danger{border-color:#eed3d7}.panel-danger>.panel-heading{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#eed3d7}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#eed3d7}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}body.modal-open,.modal-open .navbar-fixed-top,.modal-open .navbar-fixed-bottom{margin-right:15px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{z-index:1050;width:auto;padding:10px;margin-right:auto;margin-left:auto}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:20px}.modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.modal-dialog{right:auto;left:50%;width:600px;padding-top:30px;padding-bottom:30px}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}}.tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;height:auto;max-width:100%;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);opacity:.5;filter:alpha(opacity=50)}.carousel-control.left{background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0001)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.5) 0),color-stop(rgba(0,0,0,0.0001) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000',endColorstr='#00000000',GradientType=1)}.carousel-control.right{right:0;left:auto;background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.0001)),to(rgba(0,0,0,0.5)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.0001) 0),color-stop(rgba(0,0,0,0.5) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#80000000',GradientType=1)}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;left:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after{display:table;content:" "}.clearfix:after{clear:both}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.affix{position:fixed}@-ms-viewport{width:device-width}@media screen and (max-width:400px){@-ms-viewport{width:320px}}.hidden{display:none!important;visibility:hidden!important}.visible-xs{display:none!important}tr.visible-xs{display:none!important}th.visible-xs,td.visible-xs{display:none!important}@media(max-width:767px){.visible-xs{display:block!important}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}tr.visible-xs.visible-sm{display:table-row!important}th.visible-xs.visible-sm,td.visible-xs.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}tr.visible-xs.visible-md{display:table-row!important}th.visible-xs.visible-md,td.visible-xs.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-xs.visible-lg{display:block!important}tr.visible-xs.visible-lg{display:table-row!important}th.visible-xs.visible-lg,td.visible-xs.visible-lg{display:table-cell!important}}.visible-sm{display:none!important}tr.visible-sm{display:none!important}th.visible-sm,td.visible-sm{display:none!important}@media(max-width:767px){.visible-sm.visible-xs{display:block!important}tr.visible-sm.visible-xs{display:table-row!important}th.visible-sm.visible-xs,td.visible-sm.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-sm{display:block!important}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}tr.visible-sm.visible-md{display:table-row!important}th.visible-sm.visible-md,td.visible-sm.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-sm.visible-lg{display:block!important}tr.visible-sm.visible-lg{display:table-row!important}th.visible-sm.visible-lg,td.visible-sm.visible-lg{display:table-cell!important}}.visible-md{display:none!important}tr.visible-md{display:none!important}th.visible-md,td.visible-md{display:none!important}@media(max-width:767px){.visible-md.visible-xs{display:block!important}tr.visible-md.visible-xs{display:table-row!important}th.visible-md.visible-xs,td.visible-md.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}tr.visible-md.visible-sm{display:table-row!important}th.visible-md.visible-sm,td.visible-md.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-md{display:block!important}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-md.visible-lg{display:block!important}tr.visible-md.visible-lg{display:table-row!important}th.visible-md.visible-lg,td.visible-md.visible-lg{display:table-cell!important}}.visible-lg{display:none!important}tr.visible-lg{display:none!important}th.visible-lg,td.visible-lg{display:none!important}@media(max-width:767px){.visible-lg.visible-xs{display:block!important}tr.visible-lg.visible-xs{display:table-row!important}th.visible-lg.visible-xs,td.visible-lg.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}tr.visible-lg.visible-sm{display:table-row!important}th.visible-lg.visible-sm,td.visible-lg.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}tr.visible-lg.visible-md{display:table-row!important}th.visible-lg.visible-md,td.visible-lg.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-lg{display:block!important}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}.hidden-xs{display:block!important}tr.hidden-xs{display:table-row!important}th.hidden-xs,td.hidden-xs{display:table-cell!important}@media(max-width:767px){.hidden-xs{display:none!important}tr.hidden-xs{display:none!important}th.hidden-xs,td.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm{display:none!important}tr.hidden-xs.hidden-sm{display:none!important}th.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md{display:none!important}tr.hidden-xs.hidden-md{display:none!important}th.hidden-xs.hidden-md,td.hidden-xs.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-xs.hidden-lg{display:none!important}tr.hidden-xs.hidden-lg{display:none!important}th.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg{display:none!important}}.hidden-sm{display:block!important}tr.hidden-sm{display:table-row!important}th.hidden-sm,td.hidden-sm{display:table-cell!important}@media(max-width:767px){.hidden-sm.hidden-xs{display:none!important}tr.hidden-sm.hidden-xs{display:none!important}th.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}tr.hidden-sm{display:none!important}th.hidden-sm,td.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md{display:none!important}tr.hidden-sm.hidden-md{display:none!important}th.hidden-sm.hidden-md,td.hidden-sm.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-sm.hidden-lg{display:none!important}tr.hidden-sm.hidden-lg{display:none!important}th.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg{display:none!important}}.hidden-md{display:block!important}tr.hidden-md{display:table-row!important}th.hidden-md,td.hidden-md{display:table-cell!important}@media(max-width:767px){.hidden-md.hidden-xs{display:none!important}tr.hidden-md.hidden-xs{display:none!important}th.hidden-md.hidden-xs,td.hidden-md.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-md.hidden-sm{display:none!important}tr.hidden-md.hidden-sm{display:none!important}th.hidden-md.hidden-sm,td.hidden-md.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}tr.hidden-md{display:none!important}th.hidden-md,td.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-md.hidden-lg{display:none!important}tr.hidden-md.hidden-lg{display:none!important}th.hidden-md.hidden-lg,td.hidden-md.hidden-lg{display:none!important}}.hidden-lg{display:block!important}tr.hidden-lg{display:table-row!important}th.hidden-lg,td.hidden-lg{display:table-cell!important}@media(max-width:767px){.hidden-lg.hidden-xs{display:none!important}tr.hidden-lg.hidden-xs{display:none!important}th.hidden-lg.hidden-xs,td.hidden-lg.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-lg.hidden-sm{display:none!important}tr.hidden-lg.hidden-sm{display:none!important}th.hidden-lg.hidden-sm,td.hidden-lg.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-lg.hidden-md{display:none!important}tr.hidden-lg.hidden-md{display:none!important}th.hidden-lg.hidden-md,td.hidden-lg.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-lg{display:none!important}tr.hidden-lg{display:none!important}th.hidden-lg,td.hidden-lg{display:none!important}}.visible-print{display:none!important}tr.visible-print{display:none!important}th.visible-print,td.visible-print{display:none!important}@media print{.visible-print{display:block!important}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}.hidden-print{display:none!important}tr.hidden-print{display:none!important}th.hidden-print,td.hidden-print{display:none!important}} \ No newline at end of file diff --git a/chimere_example_static/bootstrap/bootstrap.min.js b/chimere_example_static/bootstrap/bootstrap.min.js new file mode 100644 index 0000000..1765631 --- /dev/null +++ b/chimere_example_static/bootstrap/bootstrap.min.js @@ -0,0 +1,6 @@ +/** +* bootstrap.js v3.0.0 by @fat and @mdo +* Copyright 2013 Twitter Inc. +* http://www.apache.org/licenses/LICENSE-2.0 +*/ +if(!jQuery)throw new Error("Bootstrap requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]}}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(a.support.transition.end,function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b()})}(window.jQuery),+function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){f.trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one(a.support.transition.end,c).emulateTransitionEnd(150):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("bs.alert");e||d.data("bs.alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.bs.alert.data-api",b,c.prototype.close)}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d)};b.DEFAULTS={loadingText:"loading..."},b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.is("input")?"val":"html",e=c.data();a+="Text",e.resetText||c.data("resetText",c[d]()),c[d](e[a]||this.options[a]),setTimeout(function(){"loadingText"==a?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons"]');if(a.length){var b=this.$element.find("input").prop("checked",!this.$element.hasClass("active")).trigger("change");"radio"===b.prop("type")&&a.find(".active").removeClass("active")}this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof c&&c;e||d.data("bs.button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.bs.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle"),b.preventDefault()})}(window.jQuery),+function(a){"use strict";var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},b.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},b.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},b.prototype.to=function(b){var c=this,d=this.getActiveIndex();return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},b.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition.end&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},b.prototype.next=function(){return this.sliding?void 0:this.slide("next")},b.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},b.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}this.sliding=!0,f&&this.pause();var j=a.Event("slide.bs.carousel",{relatedTarget:e[0],direction:g});if(!e.hasClass("active")){if(this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid",function(){var b=a(i.$indicators.children()[i.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(j),j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)}).emulateTransitionEnd(600)}else{if(this.$element.trigger(j),j.isDefaultPrevented())return;d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return f&&this.cycle(),this}};var c=a.fn.carousel;a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c),g="string"==typeof c?c:f.slide;e||d.data("bs.carousel",e=new b(this,f)),"number"==typeof c?e.to(c):g?e[g]():f.interval&&e.pause().cycle()})},a.fn.carousel.Constructor=b,a.fn.carousel.noConflict=function(){return a.fn.carousel=c,this},a(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",function(b){var c,d=a(this),e=a(d.attr("data-target")||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"")),f=a.extend({},e.data(),d.data()),g=d.attr("data-slide-to");g&&(f.interval=!1),e.carousel(f),(g=d.attr("data-slide-to"))&&e.data("bs.carousel").to(g),b.preventDefault()}),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var b=a(this);b.carousel(b.data())})})}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d),this.transitioning=null,this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.DEFAULTS={toggle:!0},b.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},b.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b=a.Event("show.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.$parent&&this.$parent.find("> .panel > .in");if(c&&c.length){var d=c.data("bs.collapse");if(d&&d.transitioning)return;c.collapse("hide"),d||c.data("bs.collapse",null)}var e=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[e](0),this.transitioning=1;var f=function(){this.$element.removeClass("collapsing").addClass("in")[e]("auto"),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return f.call(this);var g=a.camelCase(["scroll",e].join("-"));this.$element.one(a.support.transition.end,a.proxy(f,this)).emulateTransitionEnd(350)[e](this.$element[0][g])}}},b.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"),this.transitioning=1;var d=function(){this.transitioning=0,this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse")};return a.support.transition?(this.$element[c](0).one(a.support.transition.end,a.proxy(d,this)).emulateTransitionEnd(350),void 0):d.call(this)}}},b.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};var c=a.fn.collapse;a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("bs.collapse"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c);e||d.data("bs.collapse",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.collapse.Constructor=b,a.fn.collapse.noConflict=function(){return a.fn.collapse=c,this},a(document).on("click.bs.collapse.data-api","[data-toggle=collapse]",function(b){var c,d=a(this),e=d.attr("data-target")||b.preventDefault()||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),f=a(e),g=f.data("bs.collapse"),h=g?"toggle":d.data(),i=d.attr("data-parent"),j=i&&a(i);g&&g.transitioning||(j&&j.find('[data-toggle=collapse][data-parent="'+i+'"]').not(d).addClass("collapsed"),d[f.hasClass("in")?"addClass":"removeClass"]("collapsed")),f.collapse(h)})}(window.jQuery),+function(a){"use strict";function b(){a(d).remove(),a(e).each(function(b){var d=c(a(this));d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown")),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown"))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){if("ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(''}),b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),b.prototype.constructor=b,b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content")[this.options.html?"html":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},b.prototype.hasContent=function(){return this.getTitle()||this.getContent()},b.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")},b.prototype.tip=function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip};var c=a.fn.popover;a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof c&&c;e||d.data("bs.popover",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.noConflict=function(){return a.fn.popover=c,this}}(window.jQuery),+function(a){"use strict";function b(c,d){var e,f=a.proxy(this.process,this);this.$element=a(c).is("body")?a(window):a(c),this.$body=a("body"),this.$scrollElement=this.$element.on("scroll.bs.scroll-spy.data-api",f),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||(e=a(c).attr("href"))&&e.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.offsets=a([]),this.targets=a([]),this.activeTarget=null,this.refresh(),this.process()}b.DEFAULTS={offset:10},b.prototype.refresh=function(){var b=this.$element[0]==window?"offset":"position";this.offsets=a([]),this.targets=a([]);var c=this;this.$body.find(this.selector).map(function(){var d=a(this),e=d.data("target")||d.attr("href"),f=/^#\w/.test(e)&&a(e);return f&&f.length&&[[f[b]().top+(!a.isWindow(c.$scrollElement.get(0))&&c.$scrollElement.scrollTop()),e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){c.offsets.push(this[0]),c.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,d=c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(b>=d)return g!=(a=f.last()[0])&&this.activate(a);for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(!e[a+1]||b<=e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){this.activeTarget=b,a(this.selector).parents(".active").removeClass("active");var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active");d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate")};var c=a.fn.scrollspy;a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=c,this},a(window).on("load",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(window.jQuery),+function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.attr("data-target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a")[0],f=a.Event("show.bs.tab",{relatedTarget:e});if(b.trigger(f),!f.isDefaultPrevented()){var g=a(d);this.activate(b.parent("li"),c),this.activate(g,g.parent(),function(){b.trigger({type:"shown.bs.tab",relatedTarget:e})})}}},b.prototype.activate=function(b,c,d){function e(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),g?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var f=c.find("> .active"),g=d&&a.support.transition&&f.hasClass("fade");g?f.one(a.support.transition.end,e).emulateTransitionEnd(150):e(),f.removeClass("in")};var c=a.fn.tab;a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new b(this)),"string"==typeof c&&e[c]()})},a.fn.tab.Constructor=b,a.fn.tab.noConflict=function(){return a.fn.tab=c,this},a(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})}(window.jQuery),+function(a){"use strict";var b=function(c,d){this.options=a.extend({},b.DEFAULTS,d),this.$window=a(window).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(c),this.affixed=this.unpin=null,this.checkPosition()};b.RESET="affix affix-top affix-bottom",b.DEFAULTS={offset:0},b.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},b.prototype.checkPosition=function(){if(this.$element.is(":visible")){var c=a(document).height(),d=this.$window.scrollTop(),e=this.$element.offset(),f=this.options.offset,g=f.top,h=f.bottom;"object"!=typeof f&&(h=g=f),"function"==typeof g&&(g=f.top()),"function"==typeof h&&(h=f.bottom());var i=null!=this.unpin&&d+this.unpin<=e.top?!1:null!=h&&e.top+this.$element.height()>=c-h?"bottom":null!=g&&g>=d?"top":!1;this.affixed!==i&&(this.unpin&&this.$element.css("top",""),this.affixed=i,this.unpin="bottom"==i?e.top-d:null,this.$element.removeClass(b.RESET).addClass("affix"+(i?"-"+i:"")),"bottom"==i&&this.$element.offset({top:document.body.offsetHeight-h-this.$element.height()}))}};var c=a.fn.affix;a.fn.affix=function(c){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof c&&c;e||d.data("bs.affix",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.affix.Constructor=b,a.fn.affix.noConflict=function(){return a.fn.affix=c,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var b=a(this),c=b.data();c.offset=c.offset||{},c.offsetBottom&&(c.offset.bottom=c.offsetBottom),c.offsetTop&&(c.offset.top=c.offsetTop),b.affix(c)})})}(window.jQuery); \ No newline at end of file diff --git a/chimere_example_static/chimere/css/extra-styles.css b/chimere_example_static/chimere/css/extra-styles.css new file mode 100644 index 0000000..9196d03 --- /dev/null +++ b/chimere_example_static/chimere/css/extra-styles.css @@ -0,0 +1,99 @@ +.nav-pills{ + margin-top:5px; +} + +.nav-pills > li.active > a, .nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + background-color: #327E04; +} + +a:hover, a:focus { + color: #327E04; +} + +.container{ + max-width:none; +} + +#utils-div{ + border-color: #DDD; +} + +#search-box { + position: relative; + z-index: 200; + left: auto; + top: auto; + border: 0px solid transparent; + display:none; +} + +#panel, #detail{ + background-color: #F8F8F8; +} + +#panel{ + max-height:none; + right:0; + bottom:0; + border:0 transparent; + border-left:1px solid #E7E7E7; + padding:16px; + width:400px; +} + +#detail { + right:auto; + left:0; + bottom:0; + border:0 transparent; + border-right:1px solid #E7E7E7; + border-top:1px solid #E7E7E7; +} + +#categories input{ + display:None; +} + +.subcategory label{ + padding: 0.2em 0.5em; + border-radius:5px; +} + +.subcategory.selected label{ + background-color:rgb(175, 231, 175); +} + +#panel #categories, +#categories > ul { + width:auto; +} + +#categories{ + display:none; +} + +#main-map { + height: auto; + bottom: 0px; +} + +#footer .map-footer { + bottom: 0; + right: 400px; + margin:0; + background-color:#fff; + opacity:0.8; +} + +#layer_selection { + display:none; +} + +.olControlPanPanel { + top: 30px; +} + +.olControlZoomPanel { + top: 95px; +} diff --git a/chimere_example_static/chimere/css/form-compat.css b/chimere_example_static/chimere/css/form-compat.css new file mode 100644 index 0000000..2aa8d23 --- /dev/null +++ b/chimere_example_static/chimere/css/form-compat.css @@ -0,0 +1,64 @@ +input:-moz-placeholder { + color: #999999; +} + +input::-moz-placeholder { + color: #999999; +} + +input:-ms-input-placeholder { + color: #999999; +} + +input::-webkit-input-placeholder { + color: #999999; +} + +input { + display: block; + padding: 6px 12px; + font-size: 14px; + line-height: 1.428571429; + color: #555555; + vertical-align: middle; + background-color: #ffffff; + border: 1px solid #cccccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; + transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; +} + +input:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); +} + +input[disabled], +input[readonly], +fieldset[disabled] input { + cursor: not-allowed; + background-color: #eeeeee; +} + +input[type="checkbox"], +input[type="radio"] { + display: inline; +} + +.alert-error { + color: #b94a48; + background-color: #f2dede; + border-color: #eed3d7; +} + +.alert-error hr { + border-top-color: #e6c1c7; +} + +.alert-error .alert-link { + color: #953b39; +} diff --git a/chimere_example_static/chimere/js/interface.js b/chimere_example_static/chimere/js/interface.js new file mode 100644 index 0000000..c4fa536 --- /dev/null +++ b/chimere_example_static/chimere/js/interface.js @@ -0,0 +1,32 @@ +$(function(){ + if (has_search){ + $('a[href=#categories]').click(function(){ + $(this).parent().parent().children().removeClass('active'); + $(this).parent().addClass('active'); + $("#search-box").fadeOut(400, + function(){ $("#categories").fadeIn() }); + }); + $('a[href=#search-box]').click(function(){ + $(this).parent().parent().children().removeClass('active'); + $(this).parent().addClass('active'); + $("#categories").fadeOut(400, + function(){ $("#search-box").fadeIn() }); + }); + $('a[href=#search-box]').click(); + } else { + $("#categories").fadeIn(); + } + highlight_selected_categories(); + $('.subcategory label').click(highlight_selected_categories); +}); + +function highlight_selected_categories(){ + $('.subcategory input').each(function(){ + var lbl = $(this).parent(); + if($(this).is(':checked')){ + lbl.addClass('selected'); + }else{ + lbl.removeClass('selected'); + } + }); +} diff --git a/manage.py b/manage.py index 301acc2..20f85bc 100755 --- a/manage.py +++ b/manage.py @@ -5,6 +5,9 @@ sys.path.insert(0, os.path.abspath('./..')) try: import settings # Assumed to be in the same directory. + if settings.DEBUG: + sys.path.insert(0, os.path.abspath('./../chimere')) + sys.path.insert(0, os.path.abspath('./../../geo-django-fla/')) except ImportError: import sys sys.stderr.write("Error: Can't find the file 'settings.py' in the directory containing %r. It appears you've customized things.\nYou'll have to run django-admin.py, passing it your settings module.\n(If the file settings.py does indeed exist, it's causing an ImportError somehow.)\n" % __file__) diff --git a/settings.py b/settings.py index da703fb..1cc2d36 100644 --- a/settings.py +++ b/settings.py @@ -19,11 +19,16 @@ CONTACT_EMAIL = '' STATIC_URL = '/static/' STATIC_ROOT = ROOT_PATH + 'static/' +STATICFILES_DIRS = ( + os.path.join(ROOT_PATH, "chimere_example_static"), +) + TINYMCE_URL = '/tinymce/' JQUERY_JS_URLS = ('/javascript/jquery/jquery.js', '/javascript/jquery-ui/jquery-ui.js',) JQUERY_CSS_URLS = ('/javascript/jquery-ui/css/smoothness/jquery-ui.css', '/javascript/jquery-ui-themes/base/jquery.ui.all.css') +OSM_CSS_URLS = ["http://www.openlayers.org/api/theme/default/style.css"] GPSBABEL = '/usr/bin/gpsbabel' GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' # simplify with an @@ -104,10 +109,22 @@ est trop dangereux.

""" NOMINATIM_URL = 'http://nominatim.openstreetmap.org/search' +MOBILE_TEST = False +MOBILE_DOMAINS = [] + # thumbnail CHIMERE_THUMBS_SCALE_HEIGHT=250 CHIMERE_THUMBS_SCALE_WIDTH=None +# search engine +CHIMERE_SEARCH_ENGINE = False +HAYSTACK_CONNECTIONS = { + 'default': { + 'ENGINE': 'haystack.backends.solr_backend.SolrEngine', + 'URL': 'http://127.0.0.1:8080/solr' + }, +} + CHIMERE_CSV_ENCODING = 'ISO-8859-1' ADMINS = ( @@ -225,6 +242,9 @@ try: except ImportError, e: print 'Unable to load local_settings.py:', e +if CHIMERE_SEARCH_ENGINE: + INSTALLED_APPS.insert(INSTALLED_APPS.index('south'), 'haystack') + if 'LOGGING' not in globals(): global LOGGING LOGGING = {'version': 1, @@ -314,3 +334,9 @@ if 'MAP_CSS_URLS' not in globals(): ] } +if 'OSM_JS_URLS' not in globals(): + global OSM_JS_URLS + OSM_JS_URLS = [STATIC_URL + "openlayers/OpenLayers.js", + STATIC_URL + "openlayers/SimplePanZoom.js", + "http://www.openstreetmap.org/openlayers/OpenStreetMap.js"] + diff --git a/templates/chimere/base.html b/templates/chimere/base.html new file mode 100644 index 0000000..2468571 --- /dev/null +++ b/templates/chimere/base.html @@ -0,0 +1,37 @@ +{% extends "base.html" %} +{% load chimere_tags i18n %} +{% block extra_head %} + + +{% if css_area %} +{% endif %} +{% if MOBILE %} + +{%endif%} + + + + + +{% endblock %} +{% block header %} + + {% block page_title %}{% endblock %} + {% block actions %} + {% include "chimere/blocks/actions.html" %} + {% endblock %} +{% endblock %} +{% block content %} + {% block top %}{% endblock %} + {% block message_map %}{% endblock %} + {% block message_edit %}{% endblock %} + {% block bottom %}{% endblock %} +{% endblock %} +{% block footer %} + {% include "chimere/blocks/footer.html" %} +{% endblock %} + diff --git a/templates/chimere/blocks/actions.html b/templates/chimere/blocks/actions.html new file mode 100644 index 0000000..f806d63 --- /dev/null +++ b/templates/chimere/blocks/actions.html @@ -0,0 +1,65 @@ +{% load i18n chimere_tags %} + + + diff --git a/templates/chimere/blocks/map.html b/templates/chimere/blocks/map.html new file mode 100644 index 0000000..db0741b --- /dev/null +++ b/templates/chimere/blocks/map.html @@ -0,0 +1,94 @@ +{% load i18n %} +
+ +
+
+ Ajax loader +

{% trans "Loading of the map in progress" %}

+
+
+
+

{% trans "Display options" %}

+
    +
  • {% trans "Map type"%}
  • +
+
+ +
+
+ diff --git a/templates/chimere/main_map.html b/templates/chimere/main_map.html new file mode 100644 index 0000000..25d99c4 --- /dev/null +++ b/templates/chimere/main_map.html @@ -0,0 +1,64 @@ +{% extends "chimere/base.html" %} +{% load i18n unlocalize_point chimere_tags %} +{% block extra_head %} +{% head_jquery %} +{% head_chimere %} +{% head_jme %} + +{% if has_search %} +{% endif %} +{{ block.super }} +{% endblock %} +{% block message_edit %}{% endblock %} +{% block sidebar %} + +
+
+ +{%comment%} +
+
+ {% routing %} + {% display_welcome %} + {% display_news news_visible %} + + + + + {% trans "Simple map" %} +
+
+{%endcomment%} +
+{% endblock %} +{% block search_box %} {% endblock %} +{% block content %} + {{block.super}} +
+ + {% map_menu %} + {% map 'main-map' %} +
+ +{% endblock %} +{% block footer %} + +{% endblock %} -- cgit v1.2.3 From 1c03304bc25c38b6baa6de73332fd030df3e0400 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 30 Oct 2014 18:18:33 +0100 Subject: Many improvments for searches and bootstrap themes --- .../chimere/css/extra-styles.css | 35 ++++ chimere_example_static/chimere/css/form-compat.css | 9 +- chimere_example_static/chimere/img/logo.jpg | Bin 0 -> 25981 bytes chimere_example_static/chimere/img/minus.png | Bin 0 -> 236 bytes chimere_example_static/chimere/img/plus.png | Bin 0 -> 528 bytes .../fonts/glyphicons-halflings-regular.eot | Bin 0 -> 20335 bytes .../fonts/glyphicons-halflings-regular.svg | 229 +++++++++++++++++++++ .../fonts/glyphicons-halflings-regular.ttf | Bin 0 -> 41280 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 0 -> 23320 bytes media/icons/marker.png | Bin 606 -> 0 bytes media/icons/readme | 1 - media/pictures/readme | 1 - media/route_files/readme | 1 - templates/chimere/blocks/actions.html | 15 +- templates/chimere/blocks/categories.html | 32 +++ templates/chimere/main_map.html | 3 +- templates/search/search.html | 53 +++++ wsgi.py | 11 + 18 files changed, 380 insertions(+), 10 deletions(-) create mode 100644 chimere_example_static/chimere/img/logo.jpg create mode 100755 chimere_example_static/chimere/img/minus.png create mode 100755 chimere_example_static/chimere/img/plus.png create mode 100644 chimere_example_static/fonts/glyphicons-halflings-regular.eot create mode 100644 chimere_example_static/fonts/glyphicons-halflings-regular.svg create mode 100644 chimere_example_static/fonts/glyphicons-halflings-regular.ttf create mode 100644 chimere_example_static/fonts/glyphicons-halflings-regular.woff delete mode 100755 media/icons/marker.png delete mode 100644 media/icons/readme delete mode 100644 media/pictures/readme delete mode 100644 media/route_files/readme create mode 100644 templates/chimere/blocks/categories.html create mode 100644 templates/search/search.html create mode 100644 wsgi.py diff --git a/chimere_example_static/chimere/css/extra-styles.css b/chimere_example_static/chimere/css/extra-styles.css index 9196d03..cddbce1 100644 --- a/chimere_example_static/chimere/css/extra-styles.css +++ b/chimere_example_static/chimere/css/extra-styles.css @@ -1,3 +1,20 @@ +#content{ + border:0 solid transparent; + margin-top:40px; +} + +#footer a, #footer a:link, #footer a:visited{ + color:#327E04; +} + +.control_image { + vertical-align: -1px; +} + +input{ + display:inline-block; +} + .nav-pills{ margin-top:5px; } @@ -7,6 +24,14 @@ background-color: #327E04; } +#permalink{ + display:inherit; + margin:0; + margin-left:2px; + padding:inherit; + width:inherit; +} + a:hover, a:focus { color: #327E04; } @@ -28,6 +53,13 @@ a:hover, a:focus { display:none; } +.ac-results{ + position: absolute; + background-color: white; + border: 1px solid #CCC; + padding: 0.2em 0.4em; +} + #panel, #detail{ background-color: #F8F8F8; } @@ -40,6 +72,9 @@ a:hover, a:focus { border-left:1px solid #E7E7E7; padding:16px; width:400px; + background-image:url('../img/logo.jpg'); + background-position:bottom center; + background-repeat:no-repeat; } #detail { diff --git a/chimere_example_static/chimere/css/form-compat.css b/chimere_example_static/chimere/css/form-compat.css index 2aa8d23..f83672f 100644 --- a/chimere_example_static/chimere/css/form-compat.css +++ b/chimere_example_static/chimere/css/form-compat.css @@ -14,9 +14,9 @@ input::-webkit-input-placeholder { color: #999999; } +textarea, input { display: block; - padding: 6px 12px; font-size: 14px; line-height: 1.428571429; color: #555555; @@ -30,8 +30,13 @@ input { transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; } +input{ + padding: 6px 12px; +} + +textarea:focus, input:focus { - border-color: #66afe9; + border-color: #81cf57; outline: 0; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); diff --git a/chimere_example_static/chimere/img/logo.jpg b/chimere_example_static/chimere/img/logo.jpg new file mode 100644 index 0000000..cc2ff36 Binary files /dev/null and b/chimere_example_static/chimere/img/logo.jpg differ diff --git a/chimere_example_static/chimere/img/minus.png b/chimere_example_static/chimere/img/minus.png new file mode 100755 index 0000000..e8ebf51 Binary files /dev/null and b/chimere_example_static/chimere/img/minus.png differ diff --git a/chimere_example_static/chimere/img/plus.png b/chimere_example_static/chimere/img/plus.png new file mode 100755 index 0000000..b26a6f9 Binary files /dev/null and b/chimere_example_static/chimere/img/plus.png differ diff --git a/chimere_example_static/fonts/glyphicons-halflings-regular.eot b/chimere_example_static/fonts/glyphicons-halflings-regular.eot new file mode 100644 index 0000000..4a4ca86 Binary files /dev/null and b/chimere_example_static/fonts/glyphicons-halflings-regular.eot differ diff --git a/chimere_example_static/fonts/glyphicons-halflings-regular.svg b/chimere_example_static/fonts/glyphicons-halflings-regular.svg new file mode 100644 index 0000000..89d2909 --- /dev/null +++ b/chimere_example_static/fonts/glyphicons-halflings-regular.svg @@ -0,0 +1,229 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chimere_example_static/fonts/glyphicons-halflings-regular.ttf b/chimere_example_static/fonts/glyphicons-halflings-regular.ttf new file mode 100644 index 0000000..67fa00b Binary files /dev/null and b/chimere_example_static/fonts/glyphicons-halflings-regular.ttf differ diff --git a/chimere_example_static/fonts/glyphicons-halflings-regular.woff b/chimere_example_static/fonts/glyphicons-halflings-regular.woff new file mode 100644 index 0000000..8c54182 Binary files /dev/null and b/chimere_example_static/fonts/glyphicons-halflings-regular.woff differ diff --git a/media/icons/marker.png b/media/icons/marker.png deleted file mode 100755 index ccd1913..0000000 Binary files a/media/icons/marker.png and /dev/null differ diff --git a/media/icons/readme b/media/icons/readme deleted file mode 100644 index 560759a..0000000 --- a/media/icons/readme +++ /dev/null @@ -1 +0,0 @@ -Icons are stored here diff --git a/media/pictures/readme b/media/pictures/readme deleted file mode 100644 index c0d20b7..0000000 --- a/media/pictures/readme +++ /dev/null @@ -1 +0,0 @@ -Pictures are stored here diff --git a/media/route_files/readme b/media/route_files/readme deleted file mode 100644 index 90d72ab..0000000 --- a/media/route_files/readme +++ /dev/null @@ -1 +0,0 @@ -Route files are stored here diff --git a/templates/chimere/blocks/actions.html b/templates/chimere/blocks/actions.html index f806d63..04fee47 100644 --- a/templates/chimere/blocks/actions.html +++ b/templates/chimere/blocks/actions.html @@ -21,19 +21,26 @@ {% if is_map %} {% if areas_visible %}
  • {% display_areas %}
  • -
  • +
  • {% routing %}
  • {% display_welcome %}
  • {% display_news news_visible %}
  • {% trans "Simple map" %}
  • - {% endif %} - - {% endif %} {% trans "Categories "%} {% if has_search %}
  • {% trans "Search" %}
  • {% endif %} + {% endif %} + {% for action, subactions in actions %} + {% ifequal action.id action_selected.0 %}{% if subactions %} + {% for subaction in subactions %} + + {{ subaction.label }} + + {% endfor %} + {% endif %}{% endifequal %} + {% endfor %} diff --git a/templates/chimere/blocks/categories.html b/templates/chimere/blocks/categories.html new file mode 100644 index 0000000..4e65f1e --- /dev/null +++ b/templates/chimere/blocks/categories.html @@ -0,0 +1,32 @@ +{% load i18n %} +
      + {% for category, lst_sub_categories in sub_categories %} +
    • + control + + {% trans category.name %} + + +
    • + {% endfor %} + {% if sub_categories %} +
    • + {% trans "Display markers and routes waiting for validation"%} +
    • + {% endif %} +
    + diff --git a/templates/chimere/main_map.html b/templates/chimere/main_map.html index 25d99c4..9d99c05 100644 --- a/templates/chimere/main_map.html +++ b/templates/chimere/main_map.html @@ -6,7 +6,8 @@ {% head_jme %} {% if has_search %} -{% endif %} + +{% endif %} {{ block.super }} {% endblock %} {% block message_edit %}{% endblock %} diff --git a/templates/search/search.html b/templates/search/search.html new file mode 100644 index 0000000..5019734 --- /dev/null +++ b/templates/search/search.html @@ -0,0 +1,53 @@ +{% load url from future %}{% load i18n %} +{% if query %} + +
    +
      +{% for result in page.object_list %} +
    • + {{ result.object }} +
    • +{% empty %} +
    • {% trans "No results found." %}
    • +{% endfor %} +
    +
    +{% if page.has_previous or page.has_next %} +
    + {% if page.has_previous %}{% trans "Previous" %}{% endif %} + {% if page.has_next %}{% trans "More results..." %}{% endif %} +
    +{% endif %} + +{% else %} +
    + + +
    +
    + +{% endif %} diff --git a/wsgi.py b/wsgi.py new file mode 100644 index 0000000..093cc8a --- /dev/null +++ b/wsgi.py @@ -0,0 +1,11 @@ +import os, sys + +MAIN_PATH = os.path.realpath(os.path.dirname(__file__)) + "/.." +sys.path.append(MAIN_PATH) +if not "DJANGO_SETTINGS_MODULE" in os.environ or \ + not os.environ['DJANGO_SETTINGS_MODULE']: + # change with your project name + os.environ['DJANGO_SETTINGS_MODULE'] = 'mychimere_project.settings' +import django.core.handlers.wsgi +application = django.core.handlers.wsgi.WSGIHandler() + -- cgit v1.2.3 From 71be3cac99d820e496de2b3b4bc529b1523a416a Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 9 Dec 2014 15:10:55 +0100 Subject: Add missing paramaterers in settings --- settings.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/settings.py b/settings.py index 1cc2d36..c7147ab 100644 --- a/settings.py +++ b/settings.py @@ -81,6 +81,9 @@ CHIMERE_SHAPEFILE_ENCODING = 'ISO-8859-1' # it could be a good idea to hide it to an admin who could'nt do that CHIMERE_HIDE_PROPERTYMODEL = False +# clustering of markers +CHIMERE_ENABLE_CLUSTERING = False + # enable routing in Chimère CHIMERE_ENABLE_ROUTING = False -- cgit v1.2.3 From f9d605393bd6b69c2d6c7e1056364b23a571fd15 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 10 Dec 2014 13:47:17 +0100 Subject: Add icon for search results --- templates/search/search.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/search/search.html b/templates/search/search.html index 5019734..170efd7 100644 --- a/templates/search/search.html +++ b/templates/search/search.html @@ -16,7 +16,7 @@ for (idx=0 ; idx < new_ids.length ; idx++){
      {% for result in page.object_list %}
    • - {{ result.object }} + {{ result.object }}
    • {% empty %}
    • {% trans "No results found." %}
    • -- cgit v1.2.3 From d8ab648752b73a1a6d92d69f774e2073b987140f Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 10 Dec 2014 19:16:37 +0100 Subject: Fix search result --- templates/search/search.html | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/templates/search/search.html b/templates/search/search.html index 170efd7..8ac385e 100644 --- a/templates/search/search.html +++ b/templates/search/search.html @@ -1,13 +1,14 @@ {% load url from future %}{% load i18n %} {% if query %} {% if query %} -{% if query %} - -
      -
        -{% for result in page.object_list %} -
      • - {{ result.object }} -
      • -{% empty %} -
      • {% trans "No results found." %}
      • -{% endfor %} -
      -
      -{% if page.has_previous or page.has_next %} -
      - -
      -{% endif %} - -{% else %} -
      - - -
      -
      -
      - -{% endif %} -- cgit v1.2.3 From 31b880fce64d5ea51668895142b1c7e2cafab7b1 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 24 Feb 2015 01:16:13 +0100 Subject: Add font-awesome --- chimere_example_static/font-awesome/LICENSE | 1 + .../font-awesome/css/font-awesome.css | 1801 ++++++++++++++++++++ .../font-awesome/css/font-awesome.min.css | 4 + .../font-awesome/fonts/FontAwesome.otf | Bin 0 -> 93888 bytes .../font-awesome/fonts/fontawesome-webfont.eot | Bin 0 -> 60767 bytes .../font-awesome/fonts/fontawesome-webfont.svg | 565 ++++++ .../font-awesome/fonts/fontawesome-webfont.ttf | Bin 0 -> 122092 bytes .../font-awesome/fonts/fontawesome-webfont.woff | Bin 0 -> 71508 bytes .../font-awesome/fonts/fontawesome-webfont.woff2 | Bin 0 -> 56780 bytes 9 files changed, 2371 insertions(+) create mode 100644 chimere_example_static/font-awesome/LICENSE create mode 100644 chimere_example_static/font-awesome/css/font-awesome.css create mode 100644 chimere_example_static/font-awesome/css/font-awesome.min.css create mode 100644 chimere_example_static/font-awesome/fonts/FontAwesome.otf create mode 100644 chimere_example_static/font-awesome/fonts/fontawesome-webfont.eot create mode 100644 chimere_example_static/font-awesome/fonts/fontawesome-webfont.svg create mode 100644 chimere_example_static/font-awesome/fonts/fontawesome-webfont.ttf create mode 100644 chimere_example_static/font-awesome/fonts/fontawesome-webfont.woff create mode 100644 chimere_example_static/font-awesome/fonts/fontawesome-webfont.woff2 diff --git a/chimere_example_static/font-awesome/LICENSE b/chimere_example_static/font-awesome/LICENSE new file mode 100644 index 0000000..2e5e82e --- /dev/null +++ b/chimere_example_static/font-awesome/LICENSE @@ -0,0 +1 @@ +Font Awesome licensed under SIL OFL 1.1 · Code licensed under MIT License · Documentation licensed under CC BY 3.0 diff --git a/chimere_example_static/font-awesome/css/font-awesome.css b/chimere_example_static/font-awesome/css/font-awesome.css new file mode 100644 index 0000000..2dcdc22 --- /dev/null +++ b/chimere_example_static/font-awesome/css/font-awesome.css @@ -0,0 +1,1801 @@ +/*! + * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */ +/* FONT PATH + * -------------------------- */ +@font-face { + font-family: 'FontAwesome'; + src: url('../fonts/fontawesome-webfont.eot?v=4.3.0'); + src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.3.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.3.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.3.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.3.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular') format('svg'); + font-weight: normal; + font-style: normal; +} +.fa { + display: inline-block; + font: normal normal normal 14px/1 FontAwesome; + font-size: inherit; + text-rendering: auto; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + transform: translate(0, 0); +} +/* makes the font 33% larger relative to the icon container */ +.fa-lg { + font-size: 1.33333333em; + line-height: 0.75em; + vertical-align: -15%; +} +.fa-2x { + font-size: 2em; +} +.fa-3x { + font-size: 3em; +} +.fa-4x { + font-size: 4em; +} +.fa-5x { + font-size: 5em; +} +.fa-fw { + width: 1.28571429em; + text-align: center; +} +.fa-ul { + padding-left: 0; + margin-left: 2.14285714em; + list-style-type: none; +} +.fa-ul > li { + position: relative; +} +.fa-li { + position: absolute; + left: -2.14285714em; + width: 2.14285714em; + top: 0.14285714em; + text-align: center; +} +.fa-li.fa-lg { + left: -1.85714286em; +} +.fa-border { + padding: .2em .25em .15em; + border: solid 0.08em #eeeeee; + border-radius: .1em; +} +.pull-right { + float: right; +} +.pull-left { + float: left; +} +.fa.pull-left { + margin-right: .3em; +} +.fa.pull-right { + margin-left: .3em; +} +.fa-spin { + -webkit-animation: fa-spin 2s infinite linear; + animation: fa-spin 2s infinite linear; +} +.fa-pulse { + -webkit-animation: fa-spin 1s infinite steps(8); + animation: fa-spin 1s infinite steps(8); +} +@-webkit-keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +@keyframes fa-spin { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +.fa-rotate-90 { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1); + -webkit-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} +.fa-rotate-180 { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2); + -webkit-transform: rotate(180deg); + -ms-transform: rotate(180deg); + transform: rotate(180deg); +} +.fa-rotate-270 { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); + -webkit-transform: rotate(270deg); + -ms-transform: rotate(270deg); + transform: rotate(270deg); +} +.fa-flip-horizontal { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1); + -webkit-transform: scale(-1, 1); + -ms-transform: scale(-1, 1); + transform: scale(-1, 1); +} +.fa-flip-vertical { + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1); + -webkit-transform: scale(1, -1); + -ms-transform: scale(1, -1); + transform: scale(1, -1); +} +:root .fa-rotate-90, +:root .fa-rotate-180, +:root .fa-rotate-270, +:root .fa-flip-horizontal, +:root .fa-flip-vertical { + filter: none; +} +.fa-stack { + position: relative; + display: inline-block; + width: 2em; + height: 2em; + line-height: 2em; + vertical-align: middle; +} +.fa-stack-1x, +.fa-stack-2x { + position: absolute; + left: 0; + width: 100%; + text-align: center; +} +.fa-stack-1x { + line-height: inherit; +} +.fa-stack-2x { + font-size: 2em; +} +.fa-inverse { + color: #ffffff; +} +/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen + readers do not read off random characters that represent icons */ +.fa-glass:before { + content: "\f000"; +} +.fa-music:before { + content: "\f001"; +} +.fa-search:before { + content: "\f002"; +} +.fa-envelope-o:before { + content: "\f003"; +} +.fa-heart:before { + content: "\f004"; +} +.fa-star:before { + content: "\f005"; +} +.fa-star-o:before { + content: "\f006"; +} +.fa-user:before { + content: "\f007"; +} +.fa-film:before { + content: "\f008"; +} +.fa-th-large:before { + content: "\f009"; +} +.fa-th:before { + content: "\f00a"; +} +.fa-th-list:before { + content: "\f00b"; +} +.fa-check:before { + content: "\f00c"; +} +.fa-remove:before, +.fa-close:before, +.fa-times:before { + content: "\f00d"; +} +.fa-search-plus:before { + content: "\f00e"; +} +.fa-search-minus:before { + content: "\f010"; +} +.fa-power-off:before { + content: "\f011"; +} +.fa-signal:before { + content: "\f012"; +} +.fa-gear:before, +.fa-cog:before { + content: "\f013"; +} +.fa-trash-o:before { + content: "\f014"; +} +.fa-home:before { + content: "\f015"; +} +.fa-file-o:before { + content: "\f016"; +} +.fa-clock-o:before { + content: "\f017"; +} +.fa-road:before { + content: "\f018"; +} +.fa-download:before { + content: "\f019"; +} +.fa-arrow-circle-o-down:before { + content: "\f01a"; +} +.fa-arrow-circle-o-up:before { + content: "\f01b"; +} +.fa-inbox:before { + content: "\f01c"; +} +.fa-play-circle-o:before { + content: "\f01d"; +} +.fa-rotate-right:before, +.fa-repeat:before { + content: "\f01e"; +} +.fa-refresh:before { + content: "\f021"; +} +.fa-list-alt:before { + content: "\f022"; +} +.fa-lock:before { + content: "\f023"; +} +.fa-flag:before { + content: "\f024"; +} +.fa-headphones:before { + content: "\f025"; +} +.fa-volume-off:before { + content: "\f026"; +} +.fa-volume-down:before { + content: "\f027"; +} +.fa-volume-up:before { + content: "\f028"; +} +.fa-qrcode:before { + content: "\f029"; +} +.fa-barcode:before { + content: "\f02a"; +} +.fa-tag:before { + content: "\f02b"; +} +.fa-tags:before { + content: "\f02c"; +} +.fa-book:before { + content: "\f02d"; +} +.fa-bookmark:before { + content: "\f02e"; +} +.fa-print:before { + content: "\f02f"; +} +.fa-camera:before { + content: "\f030"; +} +.fa-font:before { + content: "\f031"; +} +.fa-bold:before { + content: "\f032"; +} +.fa-italic:before { + content: "\f033"; +} +.fa-text-height:before { + content: "\f034"; +} +.fa-text-width:before { + content: "\f035"; +} +.fa-align-left:before { + content: "\f036"; +} +.fa-align-center:before { + content: "\f037"; +} +.fa-align-right:before { + content: "\f038"; +} +.fa-align-justify:before { + content: "\f039"; +} +.fa-list:before { + content: "\f03a"; +} +.fa-dedent:before, +.fa-outdent:before { + content: "\f03b"; +} +.fa-indent:before { + content: "\f03c"; +} +.fa-video-camera:before { + content: "\f03d"; +} +.fa-photo:before, +.fa-image:before, +.fa-picture-o:before { + content: "\f03e"; +} +.fa-pencil:before { + content: "\f040"; +} +.fa-map-marker:before { + content: "\f041"; +} +.fa-adjust:before { + content: "\f042"; +} +.fa-tint:before { + content: "\f043"; +} +.fa-edit:before, +.fa-pencil-square-o:before { + content: "\f044"; +} +.fa-share-square-o:before { + content: "\f045"; +} +.fa-check-square-o:before { + content: "\f046"; +} +.fa-arrows:before { + content: "\f047"; +} +.fa-step-backward:before { + content: "\f048"; +} +.fa-fast-backward:before { + content: "\f049"; +} +.fa-backward:before { + content: "\f04a"; +} +.fa-play:before { + content: "\f04b"; +} +.fa-pause:before { + content: "\f04c"; +} +.fa-stop:before { + content: "\f04d"; +} +.fa-forward:before { + content: "\f04e"; +} +.fa-fast-forward:before { + content: "\f050"; +} +.fa-step-forward:before { + content: "\f051"; +} +.fa-eject:before { + content: "\f052"; +} +.fa-chevron-left:before { + content: "\f053"; +} +.fa-chevron-right:before { + content: "\f054"; +} +.fa-plus-circle:before { + content: "\f055"; +} +.fa-minus-circle:before { + content: "\f056"; +} +.fa-times-circle:before { + content: "\f057"; +} +.fa-check-circle:before { + content: "\f058"; +} +.fa-question-circle:before { + content: "\f059"; +} +.fa-info-circle:before { + content: "\f05a"; +} +.fa-crosshairs:before { + content: "\f05b"; +} +.fa-times-circle-o:before { + content: "\f05c"; +} +.fa-check-circle-o:before { + content: "\f05d"; +} +.fa-ban:before { + content: "\f05e"; +} +.fa-arrow-left:before { + content: "\f060"; +} +.fa-arrow-right:before { + content: "\f061"; +} +.fa-arrow-up:before { + content: "\f062"; +} +.fa-arrow-down:before { + content: "\f063"; +} +.fa-mail-forward:before, +.fa-share:before { + content: "\f064"; +} +.fa-expand:before { + content: "\f065"; +} +.fa-compress:before { + content: "\f066"; +} +.fa-plus:before { + content: "\f067"; +} +.fa-minus:before { + content: "\f068"; +} +.fa-asterisk:before { + content: "\f069"; +} +.fa-exclamation-circle:before { + content: "\f06a"; +} +.fa-gift:before { + content: "\f06b"; +} +.fa-leaf:before { + content: "\f06c"; +} +.fa-fire:before { + content: "\f06d"; +} +.fa-eye:before { + content: "\f06e"; +} +.fa-eye-slash:before { + content: "\f070"; +} +.fa-warning:before, +.fa-exclamation-triangle:before { + content: "\f071"; +} +.fa-plane:before { + content: "\f072"; +} +.fa-calendar:before { + content: "\f073"; +} +.fa-random:before { + content: "\f074"; +} +.fa-comment:before { + content: "\f075"; +} +.fa-magnet:before { + content: "\f076"; +} +.fa-chevron-up:before { + content: "\f077"; +} +.fa-chevron-down:before { + content: "\f078"; +} +.fa-retweet:before { + content: "\f079"; +} +.fa-shopping-cart:before { + content: "\f07a"; +} +.fa-folder:before { + content: "\f07b"; +} +.fa-folder-open:before { + content: "\f07c"; +} +.fa-arrows-v:before { + content: "\f07d"; +} +.fa-arrows-h:before { + content: "\f07e"; +} +.fa-bar-chart-o:before, +.fa-bar-chart:before { + content: "\f080"; +} +.fa-twitter-square:before { + content: "\f081"; +} +.fa-facebook-square:before { + content: "\f082"; +} +.fa-camera-retro:before { + content: "\f083"; +} +.fa-key:before { + content: "\f084"; +} +.fa-gears:before, +.fa-cogs:before { + content: "\f085"; +} +.fa-comments:before { + content: "\f086"; +} +.fa-thumbs-o-up:before { + content: "\f087"; +} +.fa-thumbs-o-down:before { + content: "\f088"; +} +.fa-star-half:before { + content: "\f089"; +} +.fa-heart-o:before { + content: "\f08a"; +} +.fa-sign-out:before { + content: "\f08b"; +} +.fa-linkedin-square:before { + content: "\f08c"; +} +.fa-thumb-tack:before { + content: "\f08d"; +} +.fa-external-link:before { + content: "\f08e"; +} +.fa-sign-in:before { + content: "\f090"; +} +.fa-trophy:before { + content: "\f091"; +} +.fa-github-square:before { + content: "\f092"; +} +.fa-upload:before { + content: "\f093"; +} +.fa-lemon-o:before { + content: "\f094"; +} +.fa-phone:before { + content: "\f095"; +} +.fa-square-o:before { + content: "\f096"; +} +.fa-bookmark-o:before { + content: "\f097"; +} +.fa-phone-square:before { + content: "\f098"; +} +.fa-twitter:before { + content: "\f099"; +} +.fa-facebook-f:before, +.fa-facebook:before { + content: "\f09a"; +} +.fa-github:before { + content: "\f09b"; +} +.fa-unlock:before { + content: "\f09c"; +} +.fa-credit-card:before { + content: "\f09d"; +} +.fa-rss:before { + content: "\f09e"; +} +.fa-hdd-o:before { + content: "\f0a0"; +} +.fa-bullhorn:before { + content: "\f0a1"; +} +.fa-bell:before { + content: "\f0f3"; +} +.fa-certificate:before { + content: "\f0a3"; +} +.fa-hand-o-right:before { + content: "\f0a4"; +} +.fa-hand-o-left:before { + content: "\f0a5"; +} +.fa-hand-o-up:before { + content: "\f0a6"; +} +.fa-hand-o-down:before { + content: "\f0a7"; +} +.fa-arrow-circle-left:before { + content: "\f0a8"; +} +.fa-arrow-circle-right:before { + content: "\f0a9"; +} +.fa-arrow-circle-up:before { + content: "\f0aa"; +} +.fa-arrow-circle-down:before { + content: "\f0ab"; +} +.fa-globe:before { + content: "\f0ac"; +} +.fa-wrench:before { + content: "\f0ad"; +} +.fa-tasks:before { + content: "\f0ae"; +} +.fa-filter:before { + content: "\f0b0"; +} +.fa-briefcase:before { + content: "\f0b1"; +} +.fa-arrows-alt:before { + content: "\f0b2"; +} +.fa-group:before, +.fa-users:before { + content: "\f0c0"; +} +.fa-chain:before, +.fa-link:before { + content: "\f0c1"; +} +.fa-cloud:before { + content: "\f0c2"; +} +.fa-flask:before { + content: "\f0c3"; +} +.fa-cut:before, +.fa-scissors:before { + content: "\f0c4"; +} +.fa-copy:before, +.fa-files-o:before { + content: "\f0c5"; +} +.fa-paperclip:before { + content: "\f0c6"; +} +.fa-save:before, +.fa-floppy-o:before { + content: "\f0c7"; +} +.fa-square:before { + content: "\f0c8"; +} +.fa-navicon:before, +.fa-reorder:before, +.fa-bars:before { + content: "\f0c9"; +} +.fa-list-ul:before { + content: "\f0ca"; +} +.fa-list-ol:before { + content: "\f0cb"; +} +.fa-strikethrough:before { + content: "\f0cc"; +} +.fa-underline:before { + content: "\f0cd"; +} +.fa-table:before { + content: "\f0ce"; +} +.fa-magic:before { + content: "\f0d0"; +} +.fa-truck:before { + content: "\f0d1"; +} +.fa-pinterest:before { + content: "\f0d2"; +} +.fa-pinterest-square:before { + content: "\f0d3"; +} +.fa-google-plus-square:before { + content: "\f0d4"; +} +.fa-google-plus:before { + content: "\f0d5"; +} +.fa-money:before { + content: "\f0d6"; +} +.fa-caret-down:before { + content: "\f0d7"; +} +.fa-caret-up:before { + content: "\f0d8"; +} +.fa-caret-left:before { + content: "\f0d9"; +} +.fa-caret-right:before { + content: "\f0da"; +} +.fa-columns:before { + content: "\f0db"; +} +.fa-unsorted:before, +.fa-sort:before { + content: "\f0dc"; +} +.fa-sort-down:before, +.fa-sort-desc:before { + content: "\f0dd"; +} +.fa-sort-up:before, +.fa-sort-asc:before { + content: "\f0de"; +} +.fa-envelope:before { + content: "\f0e0"; +} +.fa-linkedin:before { + content: "\f0e1"; +} +.fa-rotate-left:before, +.fa-undo:before { + content: "\f0e2"; +} +.fa-legal:before, +.fa-gavel:before { + content: "\f0e3"; +} +.fa-dashboard:before, +.fa-tachometer:before { + content: "\f0e4"; +} +.fa-comment-o:before { + content: "\f0e5"; +} +.fa-comments-o:before { + content: "\f0e6"; +} +.fa-flash:before, +.fa-bolt:before { + content: "\f0e7"; +} +.fa-sitemap:before { + content: "\f0e8"; +} +.fa-umbrella:before { + content: "\f0e9"; +} +.fa-paste:before, +.fa-clipboard:before { + content: "\f0ea"; +} +.fa-lightbulb-o:before { + content: "\f0eb"; +} +.fa-exchange:before { + content: "\f0ec"; +} +.fa-cloud-download:before { + content: "\f0ed"; +} +.fa-cloud-upload:before { + content: "\f0ee"; +} +.fa-user-md:before { + content: "\f0f0"; +} +.fa-stethoscope:before { + content: "\f0f1"; +} +.fa-suitcase:before { + content: "\f0f2"; +} +.fa-bell-o:before { + content: "\f0a2"; +} +.fa-coffee:before { + content: "\f0f4"; +} +.fa-cutlery:before { + content: "\f0f5"; +} +.fa-file-text-o:before { + content: "\f0f6"; +} +.fa-building-o:before { + content: "\f0f7"; +} +.fa-hospital-o:before { + content: "\f0f8"; +} +.fa-ambulance:before { + content: "\f0f9"; +} +.fa-medkit:before { + content: "\f0fa"; +} +.fa-fighter-jet:before { + content: "\f0fb"; +} +.fa-beer:before { + content: "\f0fc"; +} +.fa-h-square:before { + content: "\f0fd"; +} +.fa-plus-square:before { + content: "\f0fe"; +} +.fa-angle-double-left:before { + content: "\f100"; +} +.fa-angle-double-right:before { + content: "\f101"; +} +.fa-angle-double-up:before { + content: "\f102"; +} +.fa-angle-double-down:before { + content: "\f103"; +} +.fa-angle-left:before { + content: "\f104"; +} +.fa-angle-right:before { + content: "\f105"; +} +.fa-angle-up:before { + content: "\f106"; +} +.fa-angle-down:before { + content: "\f107"; +} +.fa-desktop:before { + content: "\f108"; +} +.fa-laptop:before { + content: "\f109"; +} +.fa-tablet:before { + content: "\f10a"; +} +.fa-mobile-phone:before, +.fa-mobile:before { + content: "\f10b"; +} +.fa-circle-o:before { + content: "\f10c"; +} +.fa-quote-left:before { + content: "\f10d"; +} +.fa-quote-right:before { + content: "\f10e"; +} +.fa-spinner:before { + content: "\f110"; +} +.fa-circle:before { + content: "\f111"; +} +.fa-mail-reply:before, +.fa-reply:before { + content: "\f112"; +} +.fa-github-alt:before { + content: "\f113"; +} +.fa-folder-o:before { + content: "\f114"; +} +.fa-folder-open-o:before { + content: "\f115"; +} +.fa-smile-o:before { + content: "\f118"; +} +.fa-frown-o:before { + content: "\f119"; +} +.fa-meh-o:before { + content: "\f11a"; +} +.fa-gamepad:before { + content: "\f11b"; +} +.fa-keyboard-o:before { + content: "\f11c"; +} +.fa-flag-o:before { + content: "\f11d"; +} +.fa-flag-checkered:before { + content: "\f11e"; +} +.fa-terminal:before { + content: "\f120"; +} +.fa-code:before { + content: "\f121"; +} +.fa-mail-reply-all:before, +.fa-reply-all:before { + content: "\f122"; +} +.fa-star-half-empty:before, +.fa-star-half-full:before, +.fa-star-half-o:before { + content: "\f123"; +} +.fa-location-arrow:before { + content: "\f124"; +} +.fa-crop:before { + content: "\f125"; +} +.fa-code-fork:before { + content: "\f126"; +} +.fa-unlink:before, +.fa-chain-broken:before { + content: "\f127"; +} +.fa-question:before { + content: "\f128"; +} +.fa-info:before { + content: "\f129"; +} +.fa-exclamation:before { + content: "\f12a"; +} +.fa-superscript:before { + content: "\f12b"; +} +.fa-subscript:before { + content: "\f12c"; +} +.fa-eraser:before { + content: "\f12d"; +} +.fa-puzzle-piece:before { + content: "\f12e"; +} +.fa-microphone:before { + content: "\f130"; +} +.fa-microphone-slash:before { + content: "\f131"; +} +.fa-shield:before { + content: "\f132"; +} +.fa-calendar-o:before { + content: "\f133"; +} +.fa-fire-extinguisher:before { + content: "\f134"; +} +.fa-rocket:before { + content: "\f135"; +} +.fa-maxcdn:before { + content: "\f136"; +} +.fa-chevron-circle-left:before { + content: "\f137"; +} +.fa-chevron-circle-right:before { + content: "\f138"; +} +.fa-chevron-circle-up:before { + content: "\f139"; +} +.fa-chevron-circle-down:before { + content: "\f13a"; +} +.fa-html5:before { + content: "\f13b"; +} +.fa-css3:before { + content: "\f13c"; +} +.fa-anchor:before { + content: "\f13d"; +} +.fa-unlock-alt:before { + content: "\f13e"; +} +.fa-bullseye:before { + content: "\f140"; +} +.fa-ellipsis-h:before { + content: "\f141"; +} +.fa-ellipsis-v:before { + content: "\f142"; +} +.fa-rss-square:before { + content: "\f143"; +} +.fa-play-circle:before { + content: "\f144"; +} +.fa-ticket:before { + content: "\f145"; +} +.fa-minus-square:before { + content: "\f146"; +} +.fa-minus-square-o:before { + content: "\f147"; +} +.fa-level-up:before { + content: "\f148"; +} +.fa-level-down:before { + content: "\f149"; +} +.fa-check-square:before { + content: "\f14a"; +} +.fa-pencil-square:before { + content: "\f14b"; +} +.fa-external-link-square:before { + content: "\f14c"; +} +.fa-share-square:before { + content: "\f14d"; +} +.fa-compass:before { + content: "\f14e"; +} +.fa-toggle-down:before, +.fa-caret-square-o-down:before { + content: "\f150"; +} +.fa-toggle-up:before, +.fa-caret-square-o-up:before { + content: "\f151"; +} +.fa-toggle-right:before, +.fa-caret-square-o-right:before { + content: "\f152"; +} +.fa-euro:before, +.fa-eur:before { + content: "\f153"; +} +.fa-gbp:before { + content: "\f154"; +} +.fa-dollar:before, +.fa-usd:before { + content: "\f155"; +} +.fa-rupee:before, +.fa-inr:before { + content: "\f156"; +} +.fa-cny:before, +.fa-rmb:before, +.fa-yen:before, +.fa-jpy:before { + content: "\f157"; +} +.fa-ruble:before, +.fa-rouble:before, +.fa-rub:before { + content: "\f158"; +} +.fa-won:before, +.fa-krw:before { + content: "\f159"; +} +.fa-bitcoin:before, +.fa-btc:before { + content: "\f15a"; +} +.fa-file:before { + content: "\f15b"; +} +.fa-file-text:before { + content: "\f15c"; +} +.fa-sort-alpha-asc:before { + content: "\f15d"; +} +.fa-sort-alpha-desc:before { + content: "\f15e"; +} +.fa-sort-amount-asc:before { + content: "\f160"; +} +.fa-sort-amount-desc:before { + content: "\f161"; +} +.fa-sort-numeric-asc:before { + content: "\f162"; +} +.fa-sort-numeric-desc:before { + content: "\f163"; +} +.fa-thumbs-up:before { + content: "\f164"; +} +.fa-thumbs-down:before { + content: "\f165"; +} +.fa-youtube-square:before { + content: "\f166"; +} +.fa-youtube:before { + content: "\f167"; +} +.fa-xing:before { + content: "\f168"; +} +.fa-xing-square:before { + content: "\f169"; +} +.fa-youtube-play:before { + content: "\f16a"; +} +.fa-dropbox:before { + content: "\f16b"; +} +.fa-stack-overflow:before { + content: "\f16c"; +} +.fa-instagram:before { + content: "\f16d"; +} +.fa-flickr:before { + content: "\f16e"; +} +.fa-adn:before { + content: "\f170"; +} +.fa-bitbucket:before { + content: "\f171"; +} +.fa-bitbucket-square:before { + content: "\f172"; +} +.fa-tumblr:before { + content: "\f173"; +} +.fa-tumblr-square:before { + content: "\f174"; +} +.fa-long-arrow-down:before { + content: "\f175"; +} +.fa-long-arrow-up:before { + content: "\f176"; +} +.fa-long-arrow-left:before { + content: "\f177"; +} +.fa-long-arrow-right:before { + content: "\f178"; +} +.fa-apple:before { + content: "\f179"; +} +.fa-windows:before { + content: "\f17a"; +} +.fa-android:before { + content: "\f17b"; +} +.fa-linux:before { + content: "\f17c"; +} +.fa-dribbble:before { + content: "\f17d"; +} +.fa-skype:before { + content: "\f17e"; +} +.fa-foursquare:before { + content: "\f180"; +} +.fa-trello:before { + content: "\f181"; +} +.fa-female:before { + content: "\f182"; +} +.fa-male:before { + content: "\f183"; +} +.fa-gittip:before, +.fa-gratipay:before { + content: "\f184"; +} +.fa-sun-o:before { + content: "\f185"; +} +.fa-moon-o:before { + content: "\f186"; +} +.fa-archive:before { + content: "\f187"; +} +.fa-bug:before { + content: "\f188"; +} +.fa-vk:before { + content: "\f189"; +} +.fa-weibo:before { + content: "\f18a"; +} +.fa-renren:before { + content: "\f18b"; +} +.fa-pagelines:before { + content: "\f18c"; +} +.fa-stack-exchange:before { + content: "\f18d"; +} +.fa-arrow-circle-o-right:before { + content: "\f18e"; +} +.fa-arrow-circle-o-left:before { + content: "\f190"; +} +.fa-toggle-left:before, +.fa-caret-square-o-left:before { + content: "\f191"; +} +.fa-dot-circle-o:before { + content: "\f192"; +} +.fa-wheelchair:before { + content: "\f193"; +} +.fa-vimeo-square:before { + content: "\f194"; +} +.fa-turkish-lira:before, +.fa-try:before { + content: "\f195"; +} +.fa-plus-square-o:before { + content: "\f196"; +} +.fa-space-shuttle:before { + content: "\f197"; +} +.fa-slack:before { + content: "\f198"; +} +.fa-envelope-square:before { + content: "\f199"; +} +.fa-wordpress:before { + content: "\f19a"; +} +.fa-openid:before { + content: "\f19b"; +} +.fa-institution:before, +.fa-bank:before, +.fa-university:before { + content: "\f19c"; +} +.fa-mortar-board:before, +.fa-graduation-cap:before { + content: "\f19d"; +} +.fa-yahoo:before { + content: "\f19e"; +} +.fa-google:before { + content: "\f1a0"; +} +.fa-reddit:before { + content: "\f1a1"; +} +.fa-reddit-square:before { + content: "\f1a2"; +} +.fa-stumbleupon-circle:before { + content: "\f1a3"; +} +.fa-stumbleupon:before { + content: "\f1a4"; +} +.fa-delicious:before { + content: "\f1a5"; +} +.fa-digg:before { + content: "\f1a6"; +} +.fa-pied-piper:before { + content: "\f1a7"; +} +.fa-pied-piper-alt:before { + content: "\f1a8"; +} +.fa-drupal:before { + content: "\f1a9"; +} +.fa-joomla:before { + content: "\f1aa"; +} +.fa-language:before { + content: "\f1ab"; +} +.fa-fax:before { + content: "\f1ac"; +} +.fa-building:before { + content: "\f1ad"; +} +.fa-child:before { + content: "\f1ae"; +} +.fa-paw:before { + content: "\f1b0"; +} +.fa-spoon:before { + content: "\f1b1"; +} +.fa-cube:before { + content: "\f1b2"; +} +.fa-cubes:before { + content: "\f1b3"; +} +.fa-behance:before { + content: "\f1b4"; +} +.fa-behance-square:before { + content: "\f1b5"; +} +.fa-steam:before { + content: "\f1b6"; +} +.fa-steam-square:before { + content: "\f1b7"; +} +.fa-recycle:before { + content: "\f1b8"; +} +.fa-automobile:before, +.fa-car:before { + content: "\f1b9"; +} +.fa-cab:before, +.fa-taxi:before { + content: "\f1ba"; +} +.fa-tree:before { + content: "\f1bb"; +} +.fa-spotify:before { + content: "\f1bc"; +} +.fa-deviantart:before { + content: "\f1bd"; +} +.fa-soundcloud:before { + content: "\f1be"; +} +.fa-database:before { + content: "\f1c0"; +} +.fa-file-pdf-o:before { + content: "\f1c1"; +} +.fa-file-word-o:before { + content: "\f1c2"; +} +.fa-file-excel-o:before { + content: "\f1c3"; +} +.fa-file-powerpoint-o:before { + content: "\f1c4"; +} +.fa-file-photo-o:before, +.fa-file-picture-o:before, +.fa-file-image-o:before { + content: "\f1c5"; +} +.fa-file-zip-o:before, +.fa-file-archive-o:before { + content: "\f1c6"; +} +.fa-file-sound-o:before, +.fa-file-audio-o:before { + content: "\f1c7"; +} +.fa-file-movie-o:before, +.fa-file-video-o:before { + content: "\f1c8"; +} +.fa-file-code-o:before { + content: "\f1c9"; +} +.fa-vine:before { + content: "\f1ca"; +} +.fa-codepen:before { + content: "\f1cb"; +} +.fa-jsfiddle:before { + content: "\f1cc"; +} +.fa-life-bouy:before, +.fa-life-buoy:before, +.fa-life-saver:before, +.fa-support:before, +.fa-life-ring:before { + content: "\f1cd"; +} +.fa-circle-o-notch:before { + content: "\f1ce"; +} +.fa-ra:before, +.fa-rebel:before { + content: "\f1d0"; +} +.fa-ge:before, +.fa-empire:before { + content: "\f1d1"; +} +.fa-git-square:before { + content: "\f1d2"; +} +.fa-git:before { + content: "\f1d3"; +} +.fa-hacker-news:before { + content: "\f1d4"; +} +.fa-tencent-weibo:before { + content: "\f1d5"; +} +.fa-qq:before { + content: "\f1d6"; +} +.fa-wechat:before, +.fa-weixin:before { + content: "\f1d7"; +} +.fa-send:before, +.fa-paper-plane:before { + content: "\f1d8"; +} +.fa-send-o:before, +.fa-paper-plane-o:before { + content: "\f1d9"; +} +.fa-history:before { + content: "\f1da"; +} +.fa-genderless:before, +.fa-circle-thin:before { + content: "\f1db"; +} +.fa-header:before { + content: "\f1dc"; +} +.fa-paragraph:before { + content: "\f1dd"; +} +.fa-sliders:before { + content: "\f1de"; +} +.fa-share-alt:before { + content: "\f1e0"; +} +.fa-share-alt-square:before { + content: "\f1e1"; +} +.fa-bomb:before { + content: "\f1e2"; +} +.fa-soccer-ball-o:before, +.fa-futbol-o:before { + content: "\f1e3"; +} +.fa-tty:before { + content: "\f1e4"; +} +.fa-binoculars:before { + content: "\f1e5"; +} +.fa-plug:before { + content: "\f1e6"; +} +.fa-slideshare:before { + content: "\f1e7"; +} +.fa-twitch:before { + content: "\f1e8"; +} +.fa-yelp:before { + content: "\f1e9"; +} +.fa-newspaper-o:before { + content: "\f1ea"; +} +.fa-wifi:before { + content: "\f1eb"; +} +.fa-calculator:before { + content: "\f1ec"; +} +.fa-paypal:before { + content: "\f1ed"; +} +.fa-google-wallet:before { + content: "\f1ee"; +} +.fa-cc-visa:before { + content: "\f1f0"; +} +.fa-cc-mastercard:before { + content: "\f1f1"; +} +.fa-cc-discover:before { + content: "\f1f2"; +} +.fa-cc-amex:before { + content: "\f1f3"; +} +.fa-cc-paypal:before { + content: "\f1f4"; +} +.fa-cc-stripe:before { + content: "\f1f5"; +} +.fa-bell-slash:before { + content: "\f1f6"; +} +.fa-bell-slash-o:before { + content: "\f1f7"; +} +.fa-trash:before { + content: "\f1f8"; +} +.fa-copyright:before { + content: "\f1f9"; +} +.fa-at:before { + content: "\f1fa"; +} +.fa-eyedropper:before { + content: "\f1fb"; +} +.fa-paint-brush:before { + content: "\f1fc"; +} +.fa-birthday-cake:before { + content: "\f1fd"; +} +.fa-area-chart:before { + content: "\f1fe"; +} +.fa-pie-chart:before { + content: "\f200"; +} +.fa-line-chart:before { + content: "\f201"; +} +.fa-lastfm:before { + content: "\f202"; +} +.fa-lastfm-square:before { + content: "\f203"; +} +.fa-toggle-off:before { + content: "\f204"; +} +.fa-toggle-on:before { + content: "\f205"; +} +.fa-bicycle:before { + content: "\f206"; +} +.fa-bus:before { + content: "\f207"; +} +.fa-ioxhost:before { + content: "\f208"; +} +.fa-angellist:before { + content: "\f209"; +} +.fa-cc:before { + content: "\f20a"; +} +.fa-shekel:before, +.fa-sheqel:before, +.fa-ils:before { + content: "\f20b"; +} +.fa-meanpath:before { + content: "\f20c"; +} +.fa-buysellads:before { + content: "\f20d"; +} +.fa-connectdevelop:before { + content: "\f20e"; +} +.fa-dashcube:before { + content: "\f210"; +} +.fa-forumbee:before { + content: "\f211"; +} +.fa-leanpub:before { + content: "\f212"; +} +.fa-sellsy:before { + content: "\f213"; +} +.fa-shirtsinbulk:before { + content: "\f214"; +} +.fa-simplybuilt:before { + content: "\f215"; +} +.fa-skyatlas:before { + content: "\f216"; +} +.fa-cart-plus:before { + content: "\f217"; +} +.fa-cart-arrow-down:before { + content: "\f218"; +} +.fa-diamond:before { + content: "\f219"; +} +.fa-ship:before { + content: "\f21a"; +} +.fa-user-secret:before { + content: "\f21b"; +} +.fa-motorcycle:before { + content: "\f21c"; +} +.fa-street-view:before { + content: "\f21d"; +} +.fa-heartbeat:before { + content: "\f21e"; +} +.fa-venus:before { + content: "\f221"; +} +.fa-mars:before { + content: "\f222"; +} +.fa-mercury:before { + content: "\f223"; +} +.fa-transgender:before { + content: "\f224"; +} +.fa-transgender-alt:before { + content: "\f225"; +} +.fa-venus-double:before { + content: "\f226"; +} +.fa-mars-double:before { + content: "\f227"; +} +.fa-venus-mars:before { + content: "\f228"; +} +.fa-mars-stroke:before { + content: "\f229"; +} +.fa-mars-stroke-v:before { + content: "\f22a"; +} +.fa-mars-stroke-h:before { + content: "\f22b"; +} +.fa-neuter:before { + content: "\f22c"; +} +.fa-facebook-official:before { + content: "\f230"; +} +.fa-pinterest-p:before { + content: "\f231"; +} +.fa-whatsapp:before { + content: "\f232"; +} +.fa-server:before { + content: "\f233"; +} +.fa-user-plus:before { + content: "\f234"; +} +.fa-user-times:before { + content: "\f235"; +} +.fa-hotel:before, +.fa-bed:before { + content: "\f236"; +} +.fa-viacoin:before { + content: "\f237"; +} +.fa-train:before { + content: "\f238"; +} +.fa-subway:before { + content: "\f239"; +} +.fa-medium:before { + content: "\f23a"; +} diff --git a/chimere_example_static/font-awesome/css/font-awesome.min.css b/chimere_example_static/font-awesome/css/font-awesome.min.css new file mode 100644 index 0000000..24fcc04 --- /dev/null +++ b/chimere_example_static/font-awesome/css/font-awesome.min.css @@ -0,0 +1,4 @@ +/*! + * Font Awesome 4.3.0 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.3.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.3.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.3.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.3.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.3.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translate(0, 0)}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-genderless:before,.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"} \ No newline at end of file diff --git a/chimere_example_static/font-awesome/fonts/FontAwesome.otf b/chimere_example_static/font-awesome/fonts/FontAwesome.otf new file mode 100644 index 0000000..f7936cc Binary files /dev/null and b/chimere_example_static/font-awesome/fonts/FontAwesome.otf differ diff --git a/chimere_example_static/font-awesome/fonts/fontawesome-webfont.eot b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.eot new file mode 100644 index 0000000..33b2bb8 Binary files /dev/null and b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.eot differ diff --git a/chimere_example_static/font-awesome/fonts/fontawesome-webfont.svg b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.svg new file mode 100644 index 0000000..1ee89d4 --- /dev/null +++ b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.svg @@ -0,0 +1,565 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/chimere_example_static/font-awesome/fonts/fontawesome-webfont.ttf b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.ttf new file mode 100644 index 0000000..ed9372f Binary files /dev/null and b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.ttf differ diff --git a/chimere_example_static/font-awesome/fonts/fontawesome-webfont.woff b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.woff new file mode 100644 index 0000000..8b280b9 Binary files /dev/null and b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.woff differ diff --git a/chimere_example_static/font-awesome/fonts/fontawesome-webfont.woff2 b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.woff2 new file mode 100644 index 0000000..3311d58 Binary files /dev/null and b/chimere_example_static/font-awesome/fonts/fontawesome-webfont.woff2 differ -- cgit v1.2.3 From 6bcf3e51cba6bc4211e6e64bc6e0ec03e90eed8a Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 24 Feb 2015 01:16:24 +0100 Subject: Work on top menu bar style --- .../chimere/css/extra-styles.css | 74 ++++++++++++++++++++++ templates/chimere/base.html | 1 + templates/chimere/blocks/actions.html | 39 +++--------- 3 files changed, 85 insertions(+), 29 deletions(-) diff --git a/chimere_example_static/chimere/css/extra-styles.css b/chimere_example_static/chimere/css/extra-styles.css index cddbce1..29a1c30 100644 --- a/chimere_example_static/chimere/css/extra-styles.css +++ b/chimere_example_static/chimere/css/extra-styles.css @@ -71,6 +71,7 @@ a:hover, a:focus { border:0 transparent; border-left:1px solid #E7E7E7; padding:16px; + padding-top:60px; width:400px; background-image:url('../img/logo.jpg'); background-position:bottom center; @@ -132,3 +133,76 @@ a:hover, a:focus { .olControlZoomPanel { top: 95px; } + +span#permalink, .navbar-nav .lbl, #areas-div label, #permalink, #simple_button, +#categories-lnk, #search-lnk, .fa-chimere-action{ + font-variant: small-caps; + font-size: 1.1em; + margin-left: 0.3em; + color:#777; + padding-left:0; + font-weight:normal; +} + +#areas-div{ + line-height: 32px; +} + +#areas-div, span#permalink, #simple_button{ + display: inline; + padding: 0px; +} + +#permalink-lnk, #simple_button{ + line-height: 42px; +} + +#permalink-lnk{ + padding: 0px 0px 0px 1em; +} + +#simple_button{ + padding: 10px 15px; +} + +.nav-pills > li#simple_button-lnk > a > .fa{ + color:#777; +} + +.nav-pills > li > a > .fa{ + color: #54C200; +} + +.nav-pills > li.active > a > .fa{ + color:#fff; +} + +.navbar-default .navbar-brand{ + color:#327E04; + font-size:1em; +} + +.fa{ + font-size:1.4em; +} + +.fa-chimere-view:before{ + content:"\f06e"; +} + +.fa-chimere-contribute:before{ + content:"\f040"; +} + +.fa-chimere-rss:before{ + content:"\f09e"; +} + +.fa-chimere-contact:before{ + content:"\f1fa"; +} + +.fa-chimere-maps:before{ + content:"\f14e"; +} + diff --git a/templates/chimere/base.html b/templates/chimere/base.html index 2468571..9089251 100644 --- a/templates/chimere/base.html +++ b/templates/chimere/base.html @@ -8,6 +8,7 @@ {% if MOBILE %} {%endif%} + diff --git a/templates/chimere/blocks/actions.html b/templates/chimere/blocks/actions.html index 04fee47..4c4865f 100644 --- a/templates/chimere/blocks/actions.html +++ b/templates/chimere/blocks/actions.html @@ -6,13 +6,16 @@ - {{PROJECT_NAME}} + - -- cgit v1.2.3 From 0185b94ec99d7d11a35349a310e57b06d55c2df3 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 24 Feb 2015 20:42:33 +0100 Subject: CSS (especially for small screens) and JS fixes --- .../chimere/css/extra-styles.css | 113 ++++++++++++++++++++- chimere_example_static/chimere/js/interface.js | 57 +++++++++-- templates/chimere/blocks/actions.html | 10 +- templates/chimere/main_map.html | 4 +- 4 files changed, 167 insertions(+), 17 deletions(-) diff --git a/chimere_example_static/chimere/css/extra-styles.css b/chimere_example_static/chimere/css/extra-styles.css index 29a1c30..f5d4c3c 100644 --- a/chimere_example_static/chimere/css/extra-styles.css +++ b/chimere_example_static/chimere/css/extra-styles.css @@ -38,6 +38,7 @@ a:hover, a:focus { .container{ max-width:none; + padding-right: 0; } #utils-div{ @@ -76,12 +77,15 @@ a:hover, a:focus { background-image:url('../img/logo.jpg'); background-position:bottom center; background-repeat:no-repeat; + z-index:12; } #detail { right:auto; left:0; bottom:0; + top:0; + padding-top:100px; border:0 transparent; border-right:1px solid #E7E7E7; border-top:1px solid #E7E7E7; @@ -116,7 +120,7 @@ a:hover, a:focus { #footer .map-footer { bottom: 0; - right: 400px; + right: 420px; margin:0; background-color:#fff; opacity:0.8; @@ -127,11 +131,11 @@ a:hover, a:focus { } .olControlPanPanel { - top: 30px; + top: 60px; } .olControlZoomPanel { - top: 95px; + top: 125px; } span#permalink, .navbar-nav .lbl, #areas-div label, #permalink, #simple_button, @@ -165,6 +169,10 @@ span#permalink, .navbar-nav .lbl, #areas-div label, #permalink, #simple_button, padding: 10px 15px; } +#areas-div{ + line-height:42px; +} + .nav-pills > li#simple_button-lnk > a > .fa{ color:#777; } @@ -178,7 +186,7 @@ span#permalink, .navbar-nav .lbl, #areas-div label, #permalink, #simple_button, } .navbar-default .navbar-brand{ - color:#327E04; + color:#54C200; font-size:1em; } @@ -206,3 +214,100 @@ span#permalink, .navbar-nav .lbl, #areas-div label, #permalink, #simple_button, content:"\f14e"; } +#maps-lnk label, #contact-lnk .lbl, #simple_button-lnk .lbl, #rss-lnk .lbl{ + display:none; +} + +#permalink, +#simple_button-lnk lbl{ + padding: 0 0.8em; +} + +@media (min-width: 1552px) { + #maps-lnk label, + #contact-lnk .lbl, + #rss-lnk .lbl{ + display:inline; + } +} + +@media (min-width: 1200px) { + #simple_button-lnk .lbl{ + display:inline; + } +} + +@media (min-width: 1100px) { + #panel{ + padding-top:16px; + } + #detail{ + padding-top:50px; + } +} + +@media (max-width: 767px) { + #simple_button-lnk .lbl, #maps-lnk label, #contact-lnk .lbl, #rss-lnk .lbl{ + display:inline-block; + } + .selection-sep{ + width: 80%; + border-bottom: 1px solid #CCC; + margin: 0 0 0.5em 0; + } + + #permalink-lnk, + #simple_button{ + line-height: 50px; + } + #panel{ + padding-top:16px; + } + #detail{ + padding-top:50px; + } +} + +.show-hide-panel{ + position:absolute; + right: 400px; + top: 0; + bottom: 0; + background-color:#eee; + width:20px; + z-index:10; + color:#666; +} + +.show-hide-panel:hover{ + cursor:pointer; +} + +.show-hide-panel span { + position:absolute; + left:2px; + top:200px; +} + +#show-panel{ + right:0; + display:none; +} + +@media (max-width: 767px) { + #show-panel{ + display:block; + } + #panel, #hide-panel{ + display:none; + } + #footer .map-footer { + right:20px; + } +} + +@media (min-height: 400px) { + .show-hide-panel span { + top:300px; + } +} diff --git a/chimere_example_static/chimere/js/interface.js b/chimere_example_static/chimere/js/interface.js index c4fa536..c0c00bf 100644 --- a/chimere_example_static/chimere/js/interface.js +++ b/chimere_example_static/chimere/js/interface.js @@ -1,16 +1,11 @@ $(function(){ + if (has_search){ $('a[href=#categories]').click(function(){ - $(this).parent().parent().children().removeClass('active'); - $(this).parent().addClass('active'); - $("#search-box").fadeOut(400, - function(){ $("#categories").fadeIn() }); + show_panel(display_categories); }); $('a[href=#search-box]').click(function(){ - $(this).parent().parent().children().removeClass('active'); - $(this).parent().addClass('active'); - $("#categories").fadeOut(400, - function(){ $("#search-box").fadeIn() }); + show_panel(display_search); }); $('a[href=#search-box]').click(); } else { @@ -18,8 +13,54 @@ $(function(){ } highlight_selected_categories(); $('.subcategory label').click(highlight_selected_categories); + $('#categories-lnk, #search-lnk').click(function(){ + if($('.navbar-toggle').css('display') !='none'){ + $(".navbar-toggle").click(); + } + }); + $('#hide-panel').click(hide_panel); + $('#show-panel').click(show_panel); + $('#close-detail').click(function(){ + $('#detail').fadeOut(); + }); }); +function display_categories(){ + $('a[href=#categories]').parent().parent().children().removeClass('active'); + $('a[href=#categories]').parent().addClass('active'); + $("#search-box").fadeOut(400, + function(){ $("#categories").fadeIn(); }); +} + +function display_search(){ + $('a[href=#search-box]').parent().parent().children().removeClass('active'); + $('a[href=#search-box]').parent().addClass('active'); + $("#categories").fadeOut(400, + function(){ $("#search-box").fadeIn(); $('#id_q').focus(); }); +} + +function show_panel(fct){ + if(!fct) fct = function(){}; + if($('#panel').css('display') == 'none'){ + $('#show-panel').fadeOut(200, function(){ + $('#hide-panel').fadeIn(500); + $("#panel").fadeIn(500); + $("#panel").fadeIn(500, fct); + }); + } else { + fct(); + } +} + +function hide_panel(){ + if($('#panel').css('display') != 'none'){ + $('#hide-panel').fadeOut(500); + $("#panel").fadeOut(500, function(){ + $('#show-panel').fadeIn(); + }); + } +} + function highlight_selected_categories(){ $('.subcategory input').each(function(){ var lbl = $(this).parent(); diff --git a/templates/chimere/blocks/actions.html b/templates/chimere/blocks/actions.html index 4c4865f..1aaf5c2 100644 --- a/templates/chimere/blocks/actions.html +++ b/templates/chimere/blocks/actions.html @@ -6,12 +6,12 @@ - + diff --git a/templates/chimere/main_map.html b/templates/chimere/main_map.html index fd11546..5a9189d 100644 --- a/templates/chimere/main_map.html +++ b/templates/chimere/main_map.html @@ -13,8 +13,8 @@ {% block message_edit %}{% endblock %} {% block sidebar %} {% display_welcome %} -
      -
      +
      +