Issue #11
Login Rede Social
Não é possível logar com o facebook ou g+
-
Milestone changed to 7.0
-
@rafadigomes @vfcosta pessoal, novidades em relação a login por redes?
-
@rafadigomes no dialoga antigo tinha dois trechos de código javascript para tratar o login via oauth.
O primeiro envia uma mensagem de tempos em tempos para a nova janela aberta requisitando o resultado do login oauth:
https://softwarepublico.gov.br/gitlab/noosfero-apps/proposal-app/blob/master/js/main.js#L850
var child = window.open(url, '_blank'); var interval = setInterval(function() { try { if(!child.closed) { child.postMessage({ message: 'requestOauthClientPluginResult' }, '*'); } } catch(e) { // we're here when the child window has been navigated away or closed if (child.closed) { clearInterval(interval); return; } } }, 300);
O segundo recebe a resposta e efetiva o login do usuário no frontend do dialoga:
https://softwarepublico.gov.br/gitlab/noosfero-apps/proposal-app/blob/master/js/main.js#L1889
window.addEventListener('message', function(ev) { if (ev.data.message === 'oauthClientPluginResult') { Main.loginCallback(ev.data.logged_in, ev.data.private_token, ev.data.user); ev.source.close(); } });
Caso isso já não tenha sido portado para a nova versão do dialoga, precisamos adaptar isso e recolocar no frontend.
@ricardopoppi a configuração do oauth para o facebook já está ok. Estou verificando isso para o google.
-
Este é o código javascript que o backend utiliza para enviar a resposta:
window.addEventListener("message", function(ev) { if (ev.data.message === "requestOauthClientPluginResult") { ev.source.postMessage( { message: "oauthClientPluginResult", logged_in: true, private_token: 'XXXX', user: {"login":"YYYY","person":{"identifier":"YYYY","name":"ZZZZ"}} }, "*"); } });
-
@rafadigomes então eu não consegui detectar o porquê de não funcionar. Descobriu algo?
-
Reassigned to @leonardomerlin
-
mentioned in commit 1b9fcc1af4ef1b1562365a30bac70e5635b60453
-
Status changed to closed