models.py 827 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
"""
Models for the dark-launching languages
"""
from django.db import models

from config_models.models import ConfigurationModel


class DarkLangConfig(ConfigurationModel):
    """
    Configuration for the dark_lang django app
    """
    released_languages = models.TextField(
        blank=True,
        help_text="A comma-separated list of language codes to release to the public."
    )

    @property
    def released_languages_list(self):
        """
        ``released_languages`` as a list of language codes.
22 23

        Example: ['it', 'de-at', 'es', 'pt-br']
24
        """
25
        if not self.released_languages.strip():
26 27
            return []

28
        languages = [lang.lower().strip() for lang in self.released_languages.split(',')]
29 30 31
        # Put in alphabetical order
        languages.sort()
        return languages