|
@@ -1,27 +1,37 @@
|
1
|
1
|
# -*- coding: utf-8 -*-
|
2
|
2
|
import os
|
3
|
|
-from lodel.context import LodelContext
|
|
3
|
+import os.path
|
4
|
4
|
|
5
|
|
-
|
6
|
|
-def preload():
|
7
|
|
- # TODO Get this path dynamically
|
|
5
|
+try:
|
|
6
|
+ from lodel.context import LodelContext
|
|
7
|
+except ImportError:
|
8
|
8
|
LODEL_BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
|
9
|
+ from lodel.context import LodelContext
|
9
|
10
|
|
10
|
|
- LODEL_INSTANCES_DIR = os.path.join(LODEL_BASE_DIR, 'lodelsites')
|
|
11
|
+def preload():
|
|
12
|
+ # TODO Get this path dynamically but should be ./ everytime (we run
|
|
13
|
+ #the loader from the good folder)
|
|
14
|
+ LODEL_INSTANCE_DIR = './'
|
11
|
15
|
LodelContext.init(LodelContext.MULTISITE)
|
12
|
16
|
lodelsites_list = [sitename for sitename in os.listdir(LODEL_INSTANCES_DIR) if os.path.isdir(sitename)]
|
13
|
17
|
|
14
|
18
|
for lodelsite_path in lodelsites_list:
|
15
|
|
- LodelContext.from_path(lodelsite_path)
|
16
|
|
- lodelcontext = LodelContext._contexts[lodelsite_path.split('/')[-1]]
|
|
19
|
+ ctx_name = LodelContext.from_path(lodelsite_path)
|
|
20
|
+ #Switch to new context
|
|
21
|
+ LodelContext.set(ctx_name)
|
17
|
22
|
|
|
23
|
+ os.cwd(lodelsite_path)
|
18
|
24
|
# Loading settings
|
19
|
|
- lodelcontext.expose_modules(globals(), {'lodel.settings.settings': [('Settings', 'settings')]})
|
20
|
|
- lodelcontext.expose_modules(globals(), {'lodel.settings': ['Settings']})
|
|
25
|
+ LodelContext.expose_modules(globals(), {'lodel.settings.settings': [('Settings', 'settings')]})
|
|
26
|
+ if not settings.started():
|
|
27
|
+ settings('conf.d')
|
|
28
|
+ LodelContext.expose_modules(globals(), {'lodel.settings': ['Settings']})
|
21
|
29
|
|
22
|
|
- # Loading hooks
|
|
30
|
+ # Loading hooks & plugins
|
23
|
31
|
LodelContext.expose_modules(globals(), {
|
24
|
32
|
'lodel.plugin': ['LodelHook'],
|
25
|
33
|
'lodel.plugin.core_hooks': 'core_hooks',
|
26
|
34
|
'lodel.plugin.core_scripts': 'core_scripts'
|
27
|
35
|
})
|
|
36
|
+ #switch back to loader context
|
|
37
|
+ LodelContext.set(None)
|