1 //---------------------------------------------------------
2 // OpenERP Web Boostrap
3 //---------------------------------------------------------
12 var session_counter = 0;
15 var openerp = this.openerp = {
17 * Debug flag turns on logging
20 // element_ids registry linked to all controllers on the page
21 // TODO rename to elements, or keep gtk naming?
23 // Per session namespace
24 // openerp.<module> will map to
25 // openerp.sessions.sessionname.<module> using a closure
28 * OpenERP instance constructor
30 * @param {Boolean} skip_init if true, skips the built-in initialization
32 init: function(skip_init) {
34 // links to the global openerp
36 // Only base will be loaded, the rest will be by loaded by
37 // openerp.base.Connection on the first connection
38 _modules_loaded: false,
39 // this unique id will be replaced by hostname_databasename by
40 // openerp.base.Connection on the first connection
41 _session_id: "session" + session_counter++,
42 screen: openerp.screen,
43 sessions: openerp.sessions,
47 openerp.sessions[new_instance._session_id] = new_instance;
49 openerp.base(new_instance);
56 //---------------------------------------------------------
57 // OpenERP base module split
58 //---------------------------------------------------------
60 openerp.base = function(instance) {
61 openerp.base.core(instance);
62 openerp.base.dates(instance);
63 openerp.base.chrome(instance);
64 openerp.base.data(instance);
65 if (openerp.base.views) {
66 openerp.base.views(instance);
68 if (openerp.base.search) {
69 openerp.base.search(instance);
71 if (openerp.base.list) {
72 openerp.base.list(instance);
74 if (openerp.base. m2o) {
75 openerp.base.m2o(instance);
77 if (openerp.base.form) {
78 openerp.base.form(instance);
80 if (openerp.base.list && openerp.base.list.editable) {
81 openerp.base.list.editable(instance);
83 if (openerp.web_mobile) {
84 openerp.web_mobile(instance);
86 if (openerp.base.view_tree) {
87 openerp.base.view_tree(instance);
89 if (openerp.base.data_export) {
90 openerp.base.data_export(instance);
94 // vim:et fdc=0 fdl=0 foldnestmax=3 fdm=syntax: