Browse Source

context processor for accessing DB settings in templates. #320

Rafał Pitoń 11 years ago
parent
commit
b8a971eae3

+ 5 - 0
misago/conf/context_processors.py

@@ -0,0 +1,5 @@
+from misago.conf.dbsettings import db_settings
+
+
+def settings(request):
+    return {'misago_settings': db_settings}

+ 1 - 0
misago/conf/defaults.py

@@ -99,6 +99,7 @@ TEMPLATE_CONTEXT_PROCESSORS = (
     'django.core.context_processors.tz',
     'django.contrib.messages.context_processors.messages',
     'misago.core.context_processors.site_address',
+    'misago.conf.context_processors.settings',
 )
 
 # Register Misago directories

+ 16 - 0
misago/conf/tests/test_context_processors.py

@@ -0,0 +1,16 @@
+from django.test import TestCase
+from misago.conf.context_processors import settings
+from misago.conf.dbsettings import db_settings
+
+
+class MockRequest(object):
+    pass
+
+
+class ContextProcessorTests(TestCase):
+    def test_db_settings(self):
+        """DBSettings are exposed to templates"""
+        mock_request = MockRequest()
+        processor_settings = settings(mock_request)['misago_settings'],
+
+        self.assertEqual(id(processor_settings[0]), id(db_settings))