Skip to content

Commit

Permalink
Show logged in email and logout option - fix fossasia#71 (fossasia#78)
Browse files Browse the repository at this point in the history
  • Loading branch information
Harshit Kedia authored and tstreamDOTh committed Oct 18, 2017
1 parent 38b1a94 commit f77ecea
Show file tree
Hide file tree
Showing 6 changed files with 67 additions and 12 deletions.
3 changes: 3 additions & 0 deletions src/chatbot.html
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@
<img class="logo" src="images/susi_logo_white.png">
</a>
<img class="settings-icon" id="settingsIcon" src="images/settings.svg">
<div class="logged-info">
<span class="logged-email" id="loggedEmail"></span>
</div>
</div>
<section class="messages-history" id="messagesHistory">

Expand Down
10 changes: 9 additions & 1 deletion src/index.css
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,16 @@ body{
.top-bar{
background-color: #4285f4;
height: 12%;
padding-bottom: 10px;
}
.logged-info{
text-align: center;
color: #fff;
font-size: 14px;
}
.logged-email{
display: none;
}

.logo{
display: relative;
margin-left: 35%;
Expand Down
18 changes: 17 additions & 1 deletion src/scripts/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
var messageFormElement = document.getElementById("messageForm");
var inputMessageElement = document.getElementById("inputMessage");
var messagesHistoryElement = document.getElementById("messagesHistory");
var loggedEmail = document.getElementById("loggedEmail");
var topBar = document.getElementById("nav");
var messageCount=0;
var messagesHistory=[];
Expand All @@ -14,7 +15,22 @@ messageFormElement.addEventListener("submit", function (event) {
event.preventDefault();
handleMessageInputSubmit();
});

// initialization based on cache status
var buffer = browser.storage.sync.get(null);
buffer.then(function(res){
if(res["loggedUser"]){
topBar.style.height="14%";
messagesHistoryElement.style.height="73%";
loggedEmail.style.display="inline";
loggedEmail.innerText=res["loggedUser"].email;
}
else{
topBar.style.height="12%";
messagesHistoryElement.style.height="75%";
loggedEmail.style.display="none";
loggedEmail.innerText="";
}
});
if(enableSync){
//browser.storage.sync.clear(); //Uncomment the line and run the extension to clear the storage.
document.addEventListener("DOMContentLoaded", restoreMessages);
Expand Down
36 changes: 30 additions & 6 deletions src/scripts/options.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
/*global messagesHistory, enableSync, applyTheme, userMapObj, htmlMsg*/
var settings = document.getElementById("settings");
var clearMessageHistoryButton = document.getElementById("clearMessageHistory");
var loginForm = document.getElementById("login");
var logoutButton = document.getElementById("logout");
var loginButton = document.getElementById("login");
var accessToken = "";
var time = "" ;
Expand All @@ -11,14 +13,16 @@ var userMapObj={latitude:null,longitude:null,status:null,mapids:[]};

settings.addEventListener("submit", saveOptions);
loginButton.addEventListener("submit", login);
logoutButton.addEventListener("click", logout);
clearMessageHistoryButton.addEventListener("click", clearMessageHistory);

document.addEventListener("DOMContentLoaded", persistSettings);

function login(event){
event.preventDefault();
var email=document.getElementById("username").value;
var loginEndPoint = BASE_URL+"/aaa/login.json?type=access-token&login="
+ encodeURIComponent(document.getElementById("username").value)
+ encodeURIComponent(email)
+ "&password="
+ encodeURIComponent(document.getElementById("password").value);
$.ajax({
Expand All @@ -30,10 +34,17 @@ function login(event){
success: function (response) {
if(response.accepted){
accessToken = response.access_token;
browser.storage.sync.set({
loggedUser:{
email:email
}
});
time = response.valid_seconds;
alert(response.message);
applyUserSettings();
retrieveUserChatHistory();
loginForm.style.display="none";
logoutButton.style.display="block";
}
else {
alert("Login Failed. Try Again");
Expand All @@ -56,7 +67,13 @@ function login(event){
});

}

function logout(){
browser.storage.sync.remove("messagesHistory");
browser.storage.sync.remove("userMapObj");
browser.storage.sync.remove("loggedUser");
loginForm.style.display="block";
logoutButton.style.display="none";
}
function applyUserSettings(){
var userSettings = BASE_URL+"/aaa/listUserSettings.json?access_token="+accessToken;
$.ajax({
Expand All @@ -72,7 +89,7 @@ function applyUserSettings(){
theme: response.settings.theme
});
}

}
});

Expand Down Expand Up @@ -115,7 +132,6 @@ function clearMessageHistory(){
function persistSettings(){
var buffer = browser.storage.sync.get(null);
buffer.then(function(res){

if(res["theme"]){
if(res["theme"]=="dark"){
$("#theme").val("dark");
Expand All @@ -124,6 +140,14 @@ function persistSettings(){
$("#theme").val("light");
}
}
if(res["loggedUser"]){
loginForm.style.display="none";
logoutButton.style.display="block";
}
else{
loginForm.style.display="block";
logoutButton.style.display="none";
}

});
}
Expand All @@ -134,7 +158,7 @@ function saveOptions(e) {
browser.storage.sync.set({
theme: document.querySelector("#theme").value
});

}

function createMyMessageHistory(message,timeString,msgId){
Expand Down Expand Up @@ -347,4 +371,4 @@ function urlDomain(data) {
var a = document.createElement("a");
a.href = data;
return a.hostname;
}
}
6 changes: 5 additions & 1 deletion src/settings.css
Original file line number Diff line number Diff line change
Expand Up @@ -47,4 +47,8 @@ button{
cursor: pointer;
font-size: 16px;
background-color: #4285f4;
}
}

.hide{
display: none;
}
6 changes: 3 additions & 3 deletions src/settings.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@
<link rel="stylesheet" type="text/css" href="settings.css">
</head>
<body>
<h3>Login</h3>
<hr>
<form id="login" >
<h3>Login</h3>
<input type="email" id="username" placeholder="email">
<br>
<input type="password" id="password" placeholder="password">
Expand All @@ -17,6 +16,7 @@ <h3>Login</h3>
<br>
<a href="https://chat.susi.ai/">New User? Visit our website to sign up for free.</a>
</form>
<input type="button" id="logout" class="hide" value="Logout" />
<br>
<h3>Settings</h3>
<hr>
Expand All @@ -37,4 +37,4 @@ <h4>Theme</h4>
<script src="scripts/main.js"></script>
<script src="scripts/options.js"></script>
</body>
</html>
</html>

0 comments on commit f77ecea

Please sign in to comment.