diff --git a/.gitignore b/.gitignore index 03c1efa..a48cce4 100644 --- a/.gitignore +++ b/.gitignore @@ -88,7 +88,7 @@ ENV/ # Rope project settings .ropeproject jdav_web/db.sqlite3 -*.py.swp +*.swp # django database migrations */*/migrations/* diff --git a/jdav_web/material/apps.py b/jdav_web/material/apps.py index 347c729..047a5ab 100644 --- a/jdav_web/material/apps.py +++ b/jdav_web/material/apps.py @@ -1,5 +1,7 @@ from django.apps import AppConfig +from django.utils.translation import ugettext_lazy as _ class MaterialConfig(AppConfig): name = 'material' + verbose_name = _('material') diff --git a/jdav_web/material/locale/de/LC_MESSAGES/django.po b/jdav_web/material/locale/de/LC_MESSAGES/django.po new file mode 100644 index 0000000..fd7587b --- /dev/null +++ b/jdav_web/material/locale/de/LC_MESSAGES/django.po @@ -0,0 +1,67 @@ +# 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: 2016-10-21 23:38+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: apps.py:7 +msgid "material" +msgstr "Material" + +#: models.py:17 +msgid "name" +msgstr "Name" + +#: models.py:18 +msgid "purchase date" +msgstr "Kaufdatum" + +#: models.py:19 +msgid "lifetime (years)" +msgstr "Lebenszeit (Jahre)" + +#: models.py:21 +msgid "photo" +msgstr "Bild" + +#: models.py:35 +msgid "Not too old?" +msgstr "Nicht zu alt?" + +#: models.py:38 +msgid "material part" +msgstr "Materialteil" + +#: models.py:39 +msgid "material parts" +msgstr "Materialteile" + +#: models.py:45 +msgid "owner" +msgstr "Besitzer" + +#: models.py:46 +msgid "count" +msgstr "Anzahl" + +#: models.py:53 +msgid "ownership" +msgstr "Besitztum" + +#: models.py:54 +msgid "ownerships" +msgstr "Besitztümer" diff --git a/jdav_web/material/models.py b/jdav_web/material/models.py index 1c8cfa2..131eec9 100644 --- a/jdav_web/material/models.py +++ b/jdav_web/material/models.py @@ -2,6 +2,7 @@ from datetime import datetime from django.db import models from django.utils import timezone +from django.utils.translation import ugettext_lazy as _ # maximum time in years of a material part until being replaced MAX_TIME_MATERIAL = 5 @@ -13,11 +14,11 @@ class MaterialPart(models.Model): Represents one part of material, which is owned (and stored) by different members of the association (Ownership) """ - name = models.CharField(max_length=30) - buy_date = models.DateField('purchase date', editable=True) - lifetime = models.DecimalField('lifetime (years)', decimal_places=0, + name = models.CharField(_('name'), max_length=30) + buy_date = models.DateField(_('purchase date'), editable=True) + lifetime = models.DecimalField(_('lifetime (years)'), decimal_places=0, max_digits=3) - photo = models.ImageField('photo', upload_to='images', blank=True) + photo = models.ImageField(_('photo'), upload_to='images', blank=True) def __str__(self): """String representation""" @@ -31,19 +32,27 @@ class MaterialPart(models.Model): not_too_old.admin_order_field = 'buy_date' not_too_old.boolean = True - not_too_old.short_description = 'Not too old?' + not_too_old.short_description = _('Not too old?') + + class Meta: + verbose_name = _('material part') + verbose_name_plural = _('material parts') class Ownership(models.Model): """Represents the connection between a MaterialPart and a Member""" material = models.ForeignKey(MaterialPart, on_delete=models.CASCADE) - owner = models.ForeignKey('members.Member') - count = models.IntegerField(default=1) + owner = models.ForeignKey('members.Member', verbose_name=_('owner')) + count = models.IntegerField(_('count'), default=1) def __str__(self): """String representation""" return str(self.owner) + class Meta: + verbose_name = _('ownership') + verbose_name_plural = _('ownerships') + def yearsago(years, from_date=None): """Function to return the date with a delta of years in the past""" diff --git a/jdav_web/members/apps.py b/jdav_web/members/apps.py index f773ade..bc8b0c5 100644 --- a/jdav_web/members/apps.py +++ b/jdav_web/members/apps.py @@ -1,5 +1,7 @@ from django.apps import AppConfig +from django.utils.translation import ugettext_lazy as _ class MembersConfig(AppConfig): name = 'members' + verbose_name = _('members') diff --git a/jdav_web/members/locale/de/LC_MESSAGES/django.po b/jdav_web/members/locale/de/LC_MESSAGES/django.po new file mode 100644 index 0000000..b845483 --- /dev/null +++ b/jdav_web/members/locale/de/LC_MESSAGES/django.po @@ -0,0 +1,55 @@ +# 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: 2016-10-21 23:37+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: apps.py:7 models.py:45 +msgid "members" +msgstr "Teilnehmer" + +#: models.py:10 +msgid "name" +msgstr "Name" + +#: models.py:12 +msgid "minimum age (years)" +msgstr "Mindestalter (Jahre)" + +#: models.py:19 +msgid "group" +msgstr "Gruppe" + +#: models.py:20 +msgid "groups" +msgstr "Gruppen" + +#: models.py:28 +msgid "prename" +msgstr "Vorname" + +#: models.py:29 +msgid "last name" +msgstr "Nachname" + +#: models.py:31 +msgid "birth date" +msgstr "Geburtsdatum" + +#: models.py:44 +msgid "member" +msgstr "Teilnehmer" diff --git a/jdav_web/members/models.py b/jdav_web/members/models.py index fee5bd0..1dc3516 100644 --- a/jdav_web/members/models.py +++ b/jdav_web/members/models.py @@ -1,4 +1,5 @@ from django.db import models +from django.utils.translation import ugettext_lazy as _ class Group(models.Model): @@ -6,23 +7,28 @@ class Group(models.Model): Represents one group of the association e.g: J1, J2, Jugendleiter, etc. """ - name = models.CharField(max_length=20) # name of group e.g: J1 etc. - min_age = models.IntegerField(default=5) # in years + name = models.CharField(max_length=20, verbose_name=_('name')) # e.g: J1 + min_age = models.IntegerField(default=5, + verbose_name=_('minimum age (years)')) def __str__(self): """String representation""" return self.name + class Meta: + verbose_name = _('group') + verbose_name_plural = _('groups') + class Member(models.Model): """ Represents a member of the association Might be a member of different groups: e.g. J1, J2, Jugendleiter, etc. """ - prename = models.CharField(max_length=20) - lastname = models.CharField(max_length=20) + prename = models.CharField(max_length=20, verbose_name=_('prename')) + lastname = models.CharField(max_length=20, verbose_name=_('last name')) email = models.EmailField(max_length=100, default="") - birth_date = models.DateField('birth date') # to determine the age + birth_date = models.DateField(_('birth date')) # to determine the age group = models.ManyToManyField(Group) def __str__(self): @@ -33,3 +39,7 @@ class Member(models.Model): def name(self): """Returning whole name (prename + lastname)""" return "{0} {1}".format(self.prename, self.lastname) + + class Meta: + verbose_name = _('member') + verbose_name_plural = _('members')