summaryrefslogtreecommitdiff
path: root/addons/edi/static/src
diff options
context:
space:
mode:
authorQuentin (OpenERP) <qdp-launchpad@openerp.com>2012-02-08 15:24:41 +0100
committerQuentin (OpenERP) <qdp-launchpad@openerp.com>2012-02-08 15:24:41 +0100
commit0fd2e8ea33af1bccf6dfa0351efccaa5696bd01d (patch)
tree0a88a3b07e3148c71bb08e51d69793f4b7cafb97 /addons/edi/static/src
parent75e1bf1787385187b66a3a0b34d223b8685fd511 (diff)
parenta5819a49d297bf5f6c4bab83485f9bc7600c7e75 (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.js49
-rw-r--r--addons/edi/static/src/xml/edi.xml2
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>