Add group model.
authorRaphaël Barrois <raphael.barrois@polytechnique.org>
Sat, 2 Feb 2013 11:46:27 +0000 (12:46 +0100)
committerRaphaël Barrois <raphael.barrois@polytechnique.org>
Sat, 2 Feb 2013 11:46:29 +0000 (12:46 +0100)
Signed-off-by: Raphaël Barrois <raphael.barrois@polytechnique.org>
Makefile
manage.py
xnet/group/__init__.py [new file with mode: 0644]
xnet/group/admin.py [new file with mode: 0644]
xnet/group/models.py [new file with mode: 0644]
xnet/locale/fr_FR/LC_MESSAGES/django.po [new file with mode: 0644]
xnet/settings.py

index cda2569..c0a4e20 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-MANAGE_PY = python2 manage.py
+MANAGE_PY = python manage.py
 
 
 default: all
index 75b1188..787c342 100755 (executable)
--- a/manage.py
+++ b/manage.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python2
+#!/usr/bin/env python
 import os
 import sys
 
diff --git a/xnet/group/__init__.py b/xnet/group/__init__.py
new file mode 100644 (file)
index 0000000..8b13789
--- /dev/null
@@ -0,0 +1 @@
+
diff --git a/xnet/group/admin.py b/xnet/group/admin.py
new file mode 100644 (file)
index 0000000..1ac2240
--- /dev/null
@@ -0,0 +1,11 @@
+from django.contrib import admin
+
+from . import models
+
+
+class GroupAdmin(admin.ModelAdmin):
+    list_display = ['short', 'name', 'kind', 'domain', 'dns']
+    list_filter = ['kind', 'domain']
+    search_fields = ['name', 'short', 'dns']
+
+admin.site.register(models.Group, GroupAdmin)
diff --git a/xnet/group/models.py b/xnet/group/models.py
new file mode 100644 (file)
index 0000000..f3d856b
--- /dev/null
@@ -0,0 +1,45 @@
+from django.db import models
+from django.utils.translation import ugettext_lazy as _
+
+
+class Group(models.Model):
+    KIND_PROMO = 'promo'
+    KIND_GROUP = 'group'
+    KIND_BINET = 'binet'
+    KIND_INSTIT = 'instit'
+
+    KIND_CHOICES = (
+        (KIND_PROMO, _(u"Promo")),
+        (KIND_GROUP, _(u"Group")),
+        (KIND_BINET, _(u"Binet")),
+        (KIND_INSTIT, _(u"Institution")),
+    )
+
+    DOMAIN_HISTORY = 'history'
+    DOMAIN_INTERNATIONAL = 'international'
+    DOMAIN_EVENTS = 'events'
+    DOMAIN_LEISURE = 'leisure'
+    DOMAIN_SPORTS = 'sports'
+    DOMAIN_PRO = 'pro'
+    DOMAIN_REGION = 'region'
+
+    DOMAIN_CHOICES = (
+        (DOMAIN_HISTORY, _(u"History")),
+        (DOMAIN_INTERNATIONAL, _(u"International")),
+        (DOMAIN_EVENTS, _(u"Events")),
+        (DOMAIN_LEISURE, _(u"Leisure")),
+        (DOMAIN_SPORTS, _(u"Sports")),
+        (DOMAIN_PRO, _(u"Pro")),
+        (DOMAIN_REGION, _(u"Region")),
+    )
+
+    name = models.CharField(max_length=100, verbose_name=_(u"name"), unique=True)
+    short = models.SlugField(max_length=10, verbose_name=_(u"short name"), unique=True)
+    kind = models.CharField(max_length=10, choices=KIND_CHOICES, verbose_name=_(u"kind"))
+    domain = models.CharField(max_length=20, choices=DOMAIN_CHOICES, verbose_name=_(u"domain"))
+
+    dns = models.CharField(max_length=128, verbose_name=_(u"dns domain"), unique=True)
+
+    class Meta:
+        verbose_name = _(u"group")
+        verbose_name_plural = _(u"groups")
diff --git a/xnet/locale/fr_FR/LC_MESSAGES/django.po b/xnet/locale/fr_FR/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..2236944
--- /dev/null
@@ -0,0 +1,90 @@
+# 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 <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2013-02-02 12:43+0100\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: models.py:12
+msgid "Promo"
+msgstr "Promo"
+
+#: models.py:13
+msgid "Group"
+msgstr "Groupe"
+
+#: models.py:14
+msgid "Binet"
+msgstr "Binet"
+
+#: models.py:15
+msgid "Institution"
+msgstr "Institution"
+
+#: models.py:27
+msgid "History"
+msgstr "Histoire"
+
+#: models.py:28
+msgid "International"
+msgstr "International"
+
+#: models.py:29
+msgid "Events"
+msgstr "Évènementiel"
+
+#: models.py:30
+msgid "Leisure"
+msgstr "Loisirs"
+
+#: models.py:31
+msgid "Sports"
+msgstr "Sports"
+
+#: models.py:32
+msgid "Pro"
+msgstr "Professionnel"
+
+#: models.py:33
+msgid "Region"
+msgstr "Région"
+
+#: models.py:36
+msgid "name"
+msgstr "nom"
+
+#: models.py:37
+msgid "short name"
+msgstr "diminutif"
+
+#: models.py:38
+msgid "kind"
+msgstr "type"
+
+#: models.py:39
+msgid "domain"
+msgstr "domaine"
+
+#: models.py:41
+msgid "dns domain"
+msgstr "domaine DNS"
+
+#: models.py:44
+msgid "group"
+msgstr "groupe"
+
+#: models.py:45
+msgid "groups"
+msgstr "groupes"
index f13afca..014d798 100644 (file)
@@ -42,6 +42,10 @@ TIME_ZONE = 'Europe/Paris'
 # Language code for this installation. All choices can be found here:
 # http://www.i18nguy.com/unicode/language-identifiers.html
 LANGUAGE_CODE = 'en-us'
+OCALE_PATHS = (
+    os.path.join(ROOT_DIR, 'locale'),
+)
+
 
 SITE_ID = 1
 
@@ -133,6 +137,7 @@ INSTALLED_APPS = (
 
     'django_authgroupex',
     'xnet.site',
+    'xnet.group',
     'xnet.example',
 )