Last active
December 20, 2015 08:39
-
-
Save autonome/6101578 to your computer and use it in GitHub Desktop.
firebase+persona example
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<button id="signin">Sign in</button> | |
<script type='text/javascript' src='https://cdn.firebase.com/v0/firebase.js'></script> | |
<script type='text/javascript' src='https://cdn.firebase.com/v0/firebase-simple-login.js'></script> | |
<script type='text/javascript' src='https://login.persona.org/include.js'></script> | |
<script type='text/javascript'> | |
var chatRef = new Firebase('https://SampleChat.firebaseIO-demo.com'), | |
signedIn = false | |
var auth = new FirebaseSimpleLogin(chatRef, function(error, user) { | |
console.log('onLoginStateChange', error, user) | |
if (error) { | |
// an error occurred while attempting login | |
console.log(error) | |
document.querySelector('#signin').innerHTML = 'Sign In' | |
} | |
else if (user) { | |
// user authenticated with Firebase | |
console.log('User ID: ' + user.id + ', Provider: ' + user.provider) | |
document.querySelector('#signin').innerHTML = 'Sign Out' | |
signedIn = true | |
} | |
else { | |
// user is not logged in | |
console.log('not logged in') | |
document.querySelector('#signin').innerHTML = 'Sign In' | |
signedIn = false | |
} | |
}) | |
function signin() { | |
if (!signedIn) { | |
auth.login('persona', { | |
rememberMe: true | |
}) | |
} | |
else { | |
auth.logout() | |
} | |
} | |
document.querySelector('#signin').addEventListener('click', signin, false) | |
</script> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment