summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntony Lesuisse <al@openerp.com>2011-03-08 12:19:54 +0100
committerAntony Lesuisse <al@openerp.com>2011-03-08 12:19:54 +0100
commit04eaeaaeb4bda62369e2b056d0e0a0dbe61914f4 (patch)
treeb2d1fba82db9c8b9c7ca5946d1b766ef259b2535
parentf563b184fa35edc0850601ffc38de2ea64bfcbe2 (diff)
addons loading part2
bzr revid: al@openerp.com-20110308111954-7z5sp3jtp0skllze
-rw-r--r--addons/base/controllers/main.py53
1 files changed, 24 insertions, 29 deletions
diff --git a/addons/base/controllers/main.py b/addons/base/controllers/main.py
index 96c84634032..5e59b31875a 100644
--- a/addons/base/controllers/main.py
+++ b/addons/base/controllers/main.py
@@ -66,13 +66,18 @@ class Hello(openerpweb.Controller):
class Connection(openerpweb.Controller):
_cp_path = "/base/connection"
- def filesofmodulemap(self, ):
- # TODO root should be a global config
- files=[]
- for j in cssfiles.get(i,[]):
- files.append(j)
- def fileconcat(self, file_list):
+ def manifest_glob(self, modlist, key):
+ files = []
+ for i in mods.split(','):
+ globlist = openerpweb.addons_manifest.get(i,{}).get('css',[])
+ for j in globlist:
+ tmp = glob.glob(os.path.join(path_addons,i,j))
+ files.append(tmp)
+ print modlist, key, files
+ return files
+
+ def concat_files(self, file_list):
""" Concatenate file content
return (concat,timestamp)
concat: concatenation of file content
@@ -90,38 +95,28 @@ class Connection(openerpweb.Controller):
files_concat = "".join(files_content)
return files_concat
+ def list_modules(self, req):
+ return
+
+ @openerpweb.jsonrequest
+ def manifest_files(self, req, key, mods):
+ files = self.manifest_glob(mods, key)
+ return {'files': files}
+
def css(self, req):
# TODO http get argument mods is a comma seprated value of modules
mods = 'base,base_hello'
- files = []
- for i in mods.split(','):
- globlist = openerpweb.addons_manifest.get(i,{})
- for j in globlist:
- tmp = glob.glob(os.path.join(path_addons,i,j))
- print tmp
- files.append(tmp)
-
- # TODO modules should list their css and js in __openerp__
- # TODO cssfiles should be a global registry of files
- cssfiles = {
- 'base': ['base/static/openerp/base.css']
- }
- files = filesofmodulemap(mods)
- (concat, timestamp) = self.fileconcat(files)
+ files = self.manifest_glob(mods.split(','), 'css')
+ (concat, timestamp) = self.concat_files(files)
# TODO request set the Date of last modif and Etag
return concat
css.exposed=1
def js(self, req):
# TODO http get argument mods is a comma seprated value of modules
- mods = 'base,base_calendar'
- # TODO modules should list their css and js in __openerp__
- # TODO cssfiles should be a global registry of files
- jsfiles = {
- 'base': ['base/static/openerp/openerp.base.js']
- }
- files = filesofmodulemap(mods)
- (concat, timestamp) = self.fileconcat(files)
+ mods = 'base,base_hello'
+ files = self.manifest_glob(mods.split(','), 'js')
+ (concat, timestamp) = self.concat_files(files)
# TODO request set the Date of last modif and Etag
return concat
js.exposed=1