easy_thumbnails.conf: 77 total statements, 0.0% covered

Generated: Wed 2013-03-13 10:33 CET

Source file: /media/Envs/Envs/filer-gallery/lib/python2.7/site-packages/easy_thumbnails/conf.py

Stats: 0 executed, 74 missed, 3 excluded, 47 ignored

  1. from django.conf import settings as django_settings
  2. try:
  3. from django.conf import BaseSettings
  4. except ImportError: # Django <= 1.2
  5. from django.conf import Settings as BaseSettings
  6. class AppSettings(BaseSettings):
  7. """
  8. A holder for app-specific settings.
  9. When :attr:`isolated` is ``False`` (the default) the holder returns
  10. attributes from the project's setting module, falling back to the default
  11. attributes provided in this module if the attribute wasn't found.
  12. """
  13. def __init__(self, isolated=False, *args, **kwargs):
  14. self.isolated = isolated
  15. self._changed = {}
  16. self._added = []
  17. super(AppSettings, self).__init__(*args, **kwargs)
  18. def get_isolated(self):
  19. return self._isolated
  20. def set_isolated(self, value):
  21. if value:
  22. self._isolated_overrides = BaseSettings()
  23. self._isolated = value
  24. isolated = property(get_isolated, set_isolated)
  25. def revert(self):
  26. """
  27. Revert any changes made to settings.
  28. """
  29. for attr, value in self._changed.items():
  30. setattr(django_settings, attr, value)
  31. for attr in self._added:
  32. delattr(django_settings, attr)
  33. self._changed = {}
  34. self._added = []
  35. if self.isolated:
  36. self._isolated_overrides = BaseSettings()
  37. def __getattribute__(self, attr):
  38. if attr == attr.upper():
  39. if self.isolated:
  40. try:
  41. return getattr(self._isolated_overrides, attr)
  42. except AttributeError:
  43. pass
  44. else:
  45. try:
  46. return getattr(django_settings, attr)
  47. except AttributeError:
  48. pass
  49. try:
  50. return super(AppSettings, self).__getattribute__(attr)
  51. except AttributeError:
  52. if not self.isolated:
  53. raise
  54. return getattr(django_settings, attr)
  55. def __setattr__(self, attr, value):
  56. if attr == attr.upper():
  57. if self.isolated:
  58. try:
  59. super(AppSettings, self).__getattribute__(attr)
  60. except AttributeError:
  61. pass
  62. else:
  63. # Set the app setting to an isolated overrides that gets
  64. # checked before the project's settings.
  65. return setattr(self._isolated_overrides, attr, value)
  66. # Keep track of any project settings changes so they can be
  67. # reverted.
  68. if attr not in self._added:
  69. try:
  70. self._changed.setdefault(attr,
  71. getattr(django_settings, attr))
  72. except AttributeError:
  73. self._added.append(attr)
  74. return setattr(django_settings, attr, value)
  75. return super(AppSettings, self).__setattr__(attr, value)
  76. class Settings(AppSettings):
  77. """
  78. Default settings for easy-thumbnails.
  79. """
  80. THUMBNAIL_DEBUG = False
  81. THUMBNAIL_DEFAULT_STORAGE = 'easy_thumbnails.storage.'\
  82. 'ThumbnailFileSystemStorage'
  83. THUMBNAIL_MEDIA_ROOT = ''
  84. THUMBNAIL_MEDIA_URL = ''
  85. THUMBNAIL_BASEDIR = ''
  86. THUMBNAIL_SUBDIR = ''
  87. THUMBNAIL_PREFIX = ''
  88. THUMBNAIL_QUALITY = 85
  89. THUMBNAIL_EXTENSION = 'jpg'
  90. THUMBNAIL_PRESERVE_EXTENSIONS = None
  91. THUMBNAIL_TRANSPARENCY_EXTENSION = 'png'
  92. THUMBNAIL_PROCESSORS = (
  93. 'easy_thumbnails.processors.colorspace',
  94. 'easy_thumbnails.processors.autocrop',
  95. 'easy_thumbnails.processors.scale_and_crop',
  96. 'easy_thumbnails.processors.filters',
  97. )
  98. THUMBNAIL_SOURCE_GENERATORS = (
  99. 'easy_thumbnails.source_generators.pil_image',
  100. )
  101. THUMBNAIL_CHECK_CACHE_MISS = False
  102. THUMBNAIL_ALIASES = None
  103. THUMBNAIL_DEFAULT_OPTIONS = None
  104. settings = Settings()