diff --git a/addons/web_linkedin/static/src/css/linkedin.css b/addons/web_linkedin/static/src/css/linkedin.css index 992dc48aeb8..d6e8dc5067b 100644 --- a/addons/web_linkedin/static/src/css/linkedin.css +++ b/addons/web_linkedin/static/src/css/linkedin.css @@ -42,3 +42,13 @@ color: grey; margin-bottom: 10px; } + +.openerp .oe_social_network_login { + margin-bottom: 10px; +} + +.openerp .oe_social_network_login .oe_error { + display: none; + cursor: pointer; +} + diff --git a/addons/web_linkedin/static/src/js/linkedin.js b/addons/web_linkedin/static/src/js/linkedin.js index d6237e48d51..8fca845673a 100644 --- a/addons/web_linkedin/static/src/js/linkedin.js +++ b/addons/web_linkedin/static/src/js/linkedin.js @@ -6,6 +6,13 @@ openerp.web_linkedin = function(instance) { var QWeb = instance.web.qweb; var _t = instance.web._t; + openerp.web_linkedin.onLinkedInAuth = function () { + IN.API.Profile("me") + .result( function(me) { + console.log("me", me); + }); + }; + instance.web_linkedin.LinkedinTester = instance.web.Class.extend({ init: function() { this.linkedin_added = false; @@ -15,8 +22,12 @@ openerp.web_linkedin = function(instance) { test_linkedin: function() { var self = this; return this.test_api_key().then(function() { - if (self.linkedin_added) + if (self.linkedin_added) { + if (IN.User.isAuthorized()) { + self.auth_def.resolve(); + } return self.linkedin_def.promise(); + } var tag = document.createElement('script'); tag.type = 'text/javascript'; tag.src = "http://platform.linkedin.com/in.js"; @@ -178,6 +189,7 @@ openerp.web_linkedin = function(instance) { instance.web_linkedin.LinkedinPopup = instance.web.Dialog.extend({ template: "Linkedin.popup", init: function(parent, text) { + var self = this; this._super(parent, {title:_t("LinkedIn search")}); this.text = text; this.limit = 5; @@ -189,6 +201,20 @@ openerp.web_linkedin = function(instance) { instance.web_linkedin.tester.test_authentication().done(function() { self.trigger("authentified"); }); + + this.bind_error(); + }, + bind_error: function() { + var self = this; + this.error_message = window.setTimeout(function() {self.$(".oe_social_network_login .oe_error").show();}, 500); + this.$el.on("DOMNodeInserted", function (e) { + self.$el.off("DOMNodeInserted"); + window.clearTimeout(self.error_message); + self.$(".oe_social_network_login .oe_error").hide(); + }); + this.$(".oe_social_network_login .oe_error").click(function () { + IN.User.authorize(); + }); }, authentified: function() { var self = this; diff --git a/addons/web_linkedin/static/src/xml/linkedin.xml b/addons/web_linkedin/static/src/xml/linkedin.xml index 4956fd7df5a..6230ef894fd 100644 --- a/addons/web_linkedin/static/src/xml/linkedin.xml +++ b/addons/web_linkedin/static/src/xml/linkedin.xml @@ -8,12 +8,16 @@
- -

People

-
+ +

People

+

Companies

-
+