Files
mayan-edms/mayan/apps/documents/utils.py
Roberto Rosario 88863fd6d0 Fix typo in Cache get_model
Signed-off-by: Roberto Rosario <roberto.rosario@mayan-edms.com>
2019-07-26 02:23:09 -04:00

49 lines
1.2 KiB
Python

from __future__ import unicode_literals
import pycountry
from django.apps import apps
from django.utils.translation import ugettext_lazy as _
from .literals import DOCUMENT_IMAGES_CACHE_NAME
def callback_update_cache_size(setting):
Cache = apps.get_model(app_label='file_caching', model_name='Cache')
cache = Cache.objects.get(name=DOCUMENT_IMAGES_CACHE_NAME)
cache.maximum_size = setting.value
cache.save()
def get_language(language_code):
language = getattr(
pycountry.languages.get(alpha_3=language_code), 'name', None
)
if language:
return _(language)
else:
return _('Unknown language "%s"') % language_code
def get_language_choices():
from .settings import setting_language_codes
return sorted(
[
(
iso639_3, _(pycountry.languages.get(alpha_3=iso639_3).name)
) for iso639_3 in setting_language_codes.value
], key=lambda x: x[1]
)
def parse_range(astr):
# http://stackoverflow.com/questions/4248399/
# page-range-for-printing-algorithm
result = set()
for part in astr.split(','):
x = part.split('-')
result.update(range(int(x[0]), int(x[-1]) + 1))
return sorted(result)