Plurals handling

This commit is contained in:
Michal Čihař 2012-02-27 11:08:16 +01:00
parent 6569e7e592
commit 53e2f3137c

View File

@ -1,6 +1,8 @@
from django.db import models from django.db import models
from lang.models import Language from lang.models import Language
PLURAL_SEPARATOR = '\x00\x00'
class Project(models.Model): class Project(models.Model):
name = models.CharField(max_length = 100) name = models.CharField(max_length = 100)
slug = models.SlugField(db_index = True) slug = models.SlugField(db_index = True)
@ -29,3 +31,23 @@ class Unit(models.Model):
flags = models.TextField() flags = models.TextField()
source = models.TextField() source = models.TextField()
target = models.TextField() target = models.TextField()
def is_plural(self):
return self.source.find(PLURAL_SEPARATOR) != -1
def get_source_plurals(self):
return self.source.split(PLURAL_SEPARATOR)
def get_target_plurals(self):
ret = self.target.split(PLURAL_SEPARATOR)
plurals = self.translation.language.nplurals
if len(ret) == plurals:
return ret
while len(ret) < plurals:
ret.append('')
while len(ret) > plurals:
del(ret[-1])
return ret