diff options
| author | Antony Lesuisse <al@openerp.com> | 2011-03-08 12:19:54 +0100 |
|---|---|---|
| committer | Antony Lesuisse <al@openerp.com> | 2011-03-08 12:19:54 +0100 |
| commit | 04eaeaaeb4bda62369e2b056d0e0a0dbe61914f4 (patch) | |
| tree | b2d1fba82db9c8b9c7ca5946d1b766ef259b2535 | |
| parent | f563b184fa35edc0850601ffc38de2ea64bfcbe2 (diff) | |
addons loading part2
bzr revid: al@openerp.com-20110308111954-7z5sp3jtp0skllze
| -rw-r--r-- | addons/base/controllers/main.py | 53 |
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 |
