summaryrefslogtreecommitdiff
path: root/addons/google_docs/static/src/js
diff options
context:
space:
mode:
authorThibault Delavallée <tde@openerp.com>2012-06-04 10:01:34 +0200
committerThibault Delavallée <tde@openerp.com>2012-06-04 10:01:34 +0200
commit6a16fd4a786fc7b2e033e306d22bcbc235a4772d (patch)
treed5df66ce9449d046464e1151d064d97f64c2e71e /addons/google_docs/static/src/js
parentfe0115f13abc8bb6d6fc8b1b8d01220e580e4997 (diff)
parent37e59e65b393034b4cc3fe79521be9525b650960 (diff)
[MERGE] Merged with main addons.
bzr revid: tde@openerp.com-20120604080134-t1zg2sv0jpmhbyge
Diffstat (limited to 'addons/google_docs/static/src/js')
-rw-r--r--addons/google_docs/static/src/js/gdocs.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/addons/google_docs/static/src/js/gdocs.js b/addons/google_docs/static/src/js/gdocs.js
new file mode 100644
index 00000000000..8f41a9d7b21
--- /dev/null
+++ b/addons/google_docs/static/src/js/gdocs.js
@@ -0,0 +1,41 @@
+openerp.google_docs = function(instance, m) {
+var _t = instance.web._t;
+
+ instance.web.Sidebar = instance.web.Sidebar.extend({
+ on_attachments_loaded: function(attachments) {
+ 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; }
+ });
+ if (! flag) {
+ this.add_items('files', [
+ { label: _t('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) {
+ if (r == 'False') {
+ var params = {
+ error: response,
+ message: _t("The user google credentials are not set yet. Contact your administrator for help.")
+ }
+ $(openerp.web.qweb.render("DialogWarning", params)).dialog({
+ title: _t("User Google credentials are not yet set."),
+ modal: true,
+ });
+ }
+ form.reload();
+ });
+ })
+ }
+ })
+}