Skip to content

Instantly share code, notes, and snippets.

@autonome
Last active December 20, 2015 08:39
Show Gist options
  • Save autonome/6101578 to your computer and use it in GitHub Desktop.
Save autonome/6101578 to your computer and use it in GitHub Desktop.
firebase+persona example
<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