Browse Source

Bugfix on multisite dyncode generation

The handled sites groups were not read from settings
Yann Weber 7 years ago
parent
commit
71213ef58e
2 changed files with 9 additions and 5 deletions
  1. 5
    5
      lodel/bootstrap.py
  2. 4
    0
      lodel/plugin/core_scripts.py

+ 5
- 5
lodel/bootstrap.py View File

208
     #WARNING !!!! Hardcoded interface name ! Here we have to find the 
208
     #WARNING !!!! Hardcoded interface name ! Here we have to find the 
209
     #interface plugin name in order to populate the cache properly
209
     #interface plugin name in order to populate the cache properly
210
     app = LodelContext.module('lodel.plugins.webui.run')
210
     app = LodelContext.module('lodel.plugins.webui.run')
211
+    #a dirty & quick attempt to fix context unwanted exite via
212
+    #hooks
213
+    for name in ( 'Plugin', 'LodelHook', 'logger', 'core_hooks',
214
+           'core_scripts'):
215
+        del(globals()[name])
211
     #HAS TO be populated in __loader__ context
216
     #HAS TO be populated in __loader__ context
212
     LodelContext.set(None)
217
     LodelContext.set(None)
213
     LodelContext.expose_modules(globals(), {
218
     LodelContext.expose_modules(globals(), {
217
     #dyncode
222
     #dyncode
218
     LodelContext.set(ctx_name)
223
     LodelContext.set(ctx_name)
219
     dyncode_bootstraping()
224
     dyncode_bootstraping()
220
-    #a dirty & quick attempt to fix context unwanted exite via
221
-    #hooks
222
-    for name in ( 'Plugin', 'LodelHook', 'logger', 'core_hooks',
223
-           'core_scripts'):
224
-        del(globals()[name])
225
     #site fully loaded, switching back to loader context
225
     #site fully loaded, switching back to loader context
226
     LodelContext.set(None)
226
     LodelContext.set(None)
227
 
227
 

+ 4
- 0
lodel/plugin/core_scripts.py View File

376
                     dyncode_path = os.path.join(
376
                     dyncode_path = os.path.join(
377
                         os.path.join(lodlesites_path, sitename),
377
                         os.path.join(lodlesites_path, sitename),
378
                         'leapi_dyncode.py') #BOO hardcoded dyncode file name
378
                         'leapi_dyncode.py') #BOO hardcoded dyncode file name
379
+                    LodelContext.set(sitename)
379
                     cls.refresh_dyncode(emfile_path, dyncode_path,
380
                     cls.refresh_dyncode(emfile_path, dyncode_path,
380
                         em_translator)
381
                         em_translator)
382
+                    LodelContext.set(None)
381
         #Refresh only one dyncode
383
         #Refresh only one dyncode
382
         #if multisite it's the lodelsites dyncode
384
         #if multisite it's the lodelsites dyncode
383
         LodelContext.set(None)
385
         LodelContext.set(None)
385
 
387
 
386
     
388
     
387
     ##@brief Refresh dyncode
389
     ##@brief Refresh dyncode
390
+    #@warning you HAVE TO be in handled site context (in order to fetch groups
391
+    #from conf)
388
     #@param model_file str : EM filename
392
     #@param model_file str : EM filename
389
     #@param dyncode_file str : dyncode output filename
393
     #@param dyncode_file str : dyncode output filename
390
     #@param em_translator str : translator name
394
     #@param em_translator str : translator name

Loading…
Cancel
Save