diff options
| author | Quentin (OpenERP) <qdp-launchpad@openerp.com> | 2012-02-08 15:24:41 +0100 |
|---|---|---|
| committer | Quentin (OpenERP) <qdp-launchpad@openerp.com> | 2012-02-08 15:24:41 +0100 |
| commit | 0fd2e8ea33af1bccf6dfa0351efccaa5696bd01d (patch) | |
| tree | 0a88a3b07e3148c71bb08e51d69793f4b7cafb97 /addons/edi/static/src | |
| parent | 75e1bf1787385187b66a3a0b34d223b8685fd511 (diff) | |
| parent | a5819a49d297bf5f6c4bab83485f9bc7600c7e75 (diff) | |
[MERGE] merged with main trunk
bzr revid: qdp-launchpad@openerp.com-20120208142441-r51m3wxvpp6673dk
Diffstat (limited to 'addons/edi/static/src')
| -rw-r--r-- | addons/edi/static/src/js/edi.js | 49 | ||||
| -rw-r--r-- | addons/edi/static/src/xml/edi.xml | 2 |
2 files changed, 34 insertions, 17 deletions
diff --git a/addons/edi/static/src/js/edi.js b/addons/edi/static/src/js/edi.js index 3135c0f8102..0f59768bc4e 100644 --- a/addons/edi/static/src/js/edi.js +++ b/addons/edi/static/src/js/edi.js @@ -1,7 +1,7 @@ openerp.edi = function(openerp) { openerp.edi = {} -openerp.edi.EdiView = openerp.web.Widget.extend({ +openerp.edi.EdiView = openerp.web.OldWidget.extend({ init: function(parent, db, token) { this._super(); this.db = db; @@ -109,35 +109,52 @@ openerp.edi.EdiView = openerp.web.Widget.extend({ openerp.edi.edi_view = function (db, token) { openerp.connection.bind().then(function () { - new openerp.edi.EdiView(null,db,token).appendTo($("body")); + new openerp.edi.EdiView(null,db,token).appendTo($("body").addClass('openerp')); }); } -openerp.edi.EdiImport = openerp.web.Widget.extend({ +openerp.edi.EdiImport = openerp.web.OldWidget.extend({ init: function(parent,url) { this._super(); this.url = url; - var params = {}; - - this.template = "EdiImport"; - this.session = openerp.connection; - this.login = new openerp.web.Login(this); - this.header = new openerp.web.Header(this); }, start: function() { - // TODO fix by explicitly asking login if needed - //this.session.on_session_invalid.add_last(this.do_ask_login); - this.header.appendTo($("#oe_header")); - this.login.appendTo($('#oe_login')); + if (!this.session.session_is_valid()) { + this.show_login(); + this.session.on_session_valid.add({ + callback: this.proxy('show_import'), + unique: true, + }); + } else { + this.show_import(); + } + }, + + show_import: function() { + this.destroy_content(); this.do_import(); }, + + show_login: function() { + this.destroy_content(); + this.login = new openerp.web.Login(this); + this.login.appendTo(this.$element); + }, + + destroy_content: function() { + _.each(_.clone(this.widget_children), function(el) { + el.stop(); + }); + this.$element.children().remove(); + }, + do_import: function() { this.rpc('/edi/import_edi_url', {url: this.url}, this.on_imported, this.on_imported_error); }, on_imported: function(response) { if ('action' in response) { this.rpc("/web/session/save_session_action", {the_action: response.action}, function(key) { - window.location = "/web/webclient/home?debug=1&s_action="+encodeURIComponent(key); + window.location = "/web/webclient/home#sa="+encodeURIComponent(key); }); } else { @@ -147,7 +164,7 @@ openerp.edi.EdiImport = openerp.web.Widget.extend({ buttons: { Ok: function() { $(this).dialog("close"); - window.location = "/web/webclient/home"; + window.location = "/"; } } }).html('The document has been successfully imported!'); @@ -172,7 +189,7 @@ openerp.edi.EdiImport = openerp.web.Widget.extend({ openerp.edi.edi_import = function (url) { openerp.connection.bind().then(function () { - new openerp.edi.EdiImport(null,url).appendTo($("body")); + new openerp.edi.EdiImport(null,url).appendTo($("body").addClass('openerp')); }); } diff --git a/addons/edi/static/src/xml/edi.xml b/addons/edi/static/src/xml/edi.xml index 1e662a2b2cc..9378e12525c 100644 --- a/addons/edi/static/src/xml/edi.xml +++ b/addons/edi/static/src/xml/edi.xml @@ -61,7 +61,7 @@ <br/> To get started immediately, <a href="#" id="oe_edi_download_show_code">see is all it takes to use this EDI document in Python</a>. </p> - <div class="python oe_edi_nested_block_import oe_edi_small" id="oe_edi_download_code"> + <div class="python oe_edi_nested_block_import oe_edi_small" id="oe_edi_download_code" t-translation="off"> <ol><li class="li1"><div class="de1"><span class="kw1">import</span> <span class="kw3">urllib2</span><span class="sy0">,</span> simplejson</div></li> <li class="li1"><div class="de1">edi_document <span class="sy0">=</span> <span class="kw3">urllib2</span>.<span class="me1">urlopen</span><span class="br0">(</span><span class="st0">'<t t-esc="widget.get_download_url()"/>'</span><span class="br0">)</span>.<span class="me1">read</span><span class="br0">(</span><span class="br0">)</span></div></li> <li class="li2"><div class="de2">document_data <span class="sy0">=</span> simplejson.<span class="me1">loads</span><span class="br0">(</span>edi_document<span class="br0">)</span><span class="br0">[</span><span class="nu0">0</span><span class="br0">]</span></div></li> |
