diff options
| author | RGA(OpenERP) <> | 2012-10-12 19:23:42 +0530 |
|---|---|---|
| committer | RGA(OpenERP) <> | 2012-10-12 19:23:42 +0530 |
| commit | 0b508d66fe8b4b0fb70f22a1f3fee5887913ad06 (patch) | |
| tree | 4314f2078dbc22936c1abc6c9415b2dcf9ecb513 /addons/google_docs/static/src | |
| parent | f830a534d67cd34dc4b98f9207cbaab6fd80e966 (diff) | |
[IMP] imporve code + usability
bzr revid: rgaopenerp-20121012135342-hjj8slov7yvfwal0
Diffstat (limited to 'addons/google_docs/static/src')
| -rw-r--r-- | addons/google_docs/static/src/js/gdocs.js | 30 | ||||
| -rw-r--r-- | addons/google_docs/static/src/xml/gdocs.xml | 8 |
2 files changed, 21 insertions, 17 deletions
diff --git a/addons/google_docs/static/src/js/gdocs.js b/addons/google_docs/static/src/js/gdocs.js index bcfd24f8c0d..c2c0ded407b 100644 --- a/addons/google_docs/static/src/js/gdocs.js +++ b/addons/google_docs/static/src/js/gdocs.js @@ -1,28 +1,22 @@ openerp.google_docs = function(instance, m) { -var _t = instance.web._t; +var QWeb = instance.web.qweb, + _t = instance.web._t; instance.web.Sidebar = instance.web.Sidebar.extend({ - on_attachments_loaded: function(attachments) { - var self = this; - self._super(attachments); - // if attachment contains a google doc url do nothing - // else display a button to create a google doc - var flag = false; - _.each(attachments, function(i) { - if (i.url && i.url.match('/docs.google.com/')) { flag = true; } + redraw: function() { + var self = this; + this._super.apply(this, arguments); + self.$el.find('.oe_sidebar_add_attachment').after(QWeb.render('Google_doc', {widget: self})) + self.$el.find('.oe_sidebar_add_google_doc').on('click', function (e) { + self.on_google_doc(); }); - if (! flag) { - this.add_items('files', [ - { label: _t('Add Google Doc...'), callback: self.on_google_doc }, - ]); - } }, on_google_doc: function() { var self = this; var form = self.getParent(); form.sidebar_context().then(function (context) { var ds = new instance.web.DataSet(this, 'ir.attachment', context); - ds.call('google_doc_get', [form.dataset.model, [form.datarecord.id], context], function(r) { + def = ds.call('google_doc_get', [form.dataset.model, [form.datarecord.id], context], function(r) { if (r == 'False') { var params = { error: response, @@ -33,8 +27,10 @@ var _t = instance.web._t; modal: true, }); } - form.reload(); - }); + + }).done(function(){ + form.reload(); + }); }) } }) diff --git a/addons/google_docs/static/src/xml/gdocs.xml b/addons/google_docs/static/src/xml/gdocs.xml new file mode 100644 index 00000000000..85a3b3f8be0 --- /dev/null +++ b/addons/google_docs/static/src/xml/gdocs.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- vim:fdl=1: +--> +<templates id="template" xml:space="preserve"> +<t t-name="Google_doc"> + <li class="oe_sidebar_add_google_doc"><span><b>Add Google Doc...</b></span></li> +</t> +</templates>
\ No newline at end of file |
