diff --git a/firebase-test/firebasetest.js b/firebase-test/firebasetest.js index 1c7f359..c9eb2ab 100644 --- a/firebase-test/firebasetest.js +++ b/firebase-test/firebasetest.js @@ -10,11 +10,20 @@ var config = { firebase.initializeApp(config); +var provider = new firebase.auth.GithubAuthProvider(); + // Create a JavaScript object for the HTML element that has id="message" var messageBox = document.getElementById("message"); // Create a JavaScript object for the HTML element that has id="username" var usernameBox = document.getElementById("username"); +// Create Objects for Buttons UserInfo +var userInfoBox = document.getElementById("userinfo"); +// Create Objects for Button Login +var loginButton = document.getElementById("login"); +// Create Objects for Button Logout +var logoutButton = document.getElementById("logout"); + // Get a reference to the root of our database var dbRef = firebase.database().ref(); // Get a reference to the "greeting" section of our database @@ -22,6 +31,12 @@ var dbGreeting = dbRef.child("greeting"); // Get a reference to the "myname" section of our database var dbUsername = dbRef.child("myname"); +// button function and event listener +document.addEventListener("click", myButton); + +function myButton(github){ + alert("hi"); +} // Whenever "greeting" value in our database is updated, show the data inside messageBox! dbGreeting.on("value", function(dataSnapshot) { messageBox.textContent = dataSnapshot.val(); @@ -33,3 +48,45 @@ dbUsername.on("value", function(dataSnapshot) { usernameBox.textContent = dataSnapshot.val(); console.log( dataSnapshot.val() ); }); + +// Event Listener for Login +// Use Firebase with Github Auth to log in the user +firebase.auth().signInWithRedirect(provider).catch(function(error){ + // Log any errors to the console + console.log(error); +}); + + +// Event Listener for Logout +// Change your logout button's event listener +firebase.auth().signOut().catch(function(error){ + // Log any errors to the console + console.log(error); +}); + +// onAuthStateChanged +//When user logs in or logs out: +firebase.auth().onAuthStateChanged(function(user){ + // If user is now logged in: + if (user){ + console.log("User successfully logged in to Firebase!"); + + //Here: update the paragraph with ID of "userinfo to display Github's Username and Github profile photo " + //Otherwise, if no user currently logged in: + var username = document.getElementById("username"); + var profilephoto = document.getElementById("profilephoto"); + + // Display Username and Photo + var show = document.getElementById("userinfo").innerHTML; + var show1 = document.getElementById("profilephoto").innerHTML; + } + else + { + console.log("User successfully logged OUT from Firebase!"); + + // Here: Update the paragraph with ID of "userinfo" to display the message "Not currently logged in." + document.getElementById("userinfo").textContent = "Not currently logged in"; + + } + +}); \ No newline at end of file diff --git a/firebase-test/index.html b/firebase-test/index.html index a77c6f5..b865b06 100644 --- a/firebase-test/index.html +++ b/firebase-test/index.html @@ -6,9 +6,16 @@
Not currently logged in.
+ - + +