Skip to content

Commit caadb37

Browse files
committed
Added user details to output
1 parent d1f07ab commit caadb37

File tree

4 files changed

+32
-18
lines changed

4 files changed

+32
-18
lines changed

app/controllers/index.js

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,15 +67,17 @@ module.exports = function(app){
6767
}
6868

6969
var displayName = "";
70-
70+
var email = "";
71+
var loggedIn = false;
7172
if(req.user){
72-
if(req.user.twitter){
73-
displayName = req.user.twitter.displayName;
74-
}
73+
displayName = req.user.displayName();
74+
loggedIn = true;
7575
}
7676

7777
res.render('index.ejs', {
78-
user: displayName,
78+
displayName: displayName,
79+
email: email,
80+
loggedIn: loggedIn,
7981
content: content,
8082
scriptPath: scriptPath,
8183
cssPath: cssPath,

app/models/user.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ var userSchema = mongoose.Schema({
77

88
email: String,
99
password: String,
10+
name: String,
1011

1112
facebook: {
1213
id: String,
@@ -39,5 +40,14 @@ userSchema.methods.validPassword = function(password) {
3940
return bcrypt.compareSync(password, this.password);
4041
};
4142

43+
userSchema.methods.displayName = function(){
44+
return this.name || this.facebook.name || this.twitter.displayName;
45+
};
46+
47+
userSchema.methods.username = function(){
48+
return this.twitter.username;
49+
};
50+
51+
4252
// create the model for users and expose it to our app
4353
module.exports = mongoose.model('User', userSchema);

app/views/index.ejs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@
1111
<script type="text/javascript">
1212
var GlobalSettings = {
1313
apiUrl: "<%= apiPath %>",
14-
user: "<%= user %>"
14+
displayName: "<%= displayName %>",
15+
email: "<%= email %>",
16+
loggedIn: <%= loggedIn %>
1517
}
1618
</script>
1719
</head>

client/js/stores/user.js

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,45 +5,45 @@ import Constants from "../constants";
55
import StoreCommon from "./store_common";
66
import assign from "object-assign";
77

8-
let _user = {};
8+
var _user = {};
99

1010
// log the user in
11-
function login(email, password){
12-
return true;
11+
function login(email, displayName, password){
12+
_user.email = email;
13+
_user.loggedIn = true;
14+
_user.displayName = displayName;
1315
}
1416

1517
// Register
1618
function register(user){
17-
return true;
19+
_user.email = user.email;
20+
_user.loggedIn = true;
21+
_user.displayName = user.displayName;
1822
}
1923

2024
// Extend User Store with EventEmitter to add eventing capabilities
21-
let UserStore = assign({}, StoreCommon, {
25+
var UserStore = assign({}, StoreCommon, {
2226

2327
// Return current user
2428
current(){
2529
return _user;
2630
},
2731

2832
loggedIn(){
29-
return _user.email !== undefined;
30-
},
31-
32-
token(){
33-
return _user.token;
33+
return _user.loggedIn;
3434
}
3535

3636
});
3737

3838
// Register callback with Dispatcher
3939
Dispatcher.register(function(payload) {
40-
let action = payload.action;
40+
var action = payload.action;
4141

4242
switch(action){
4343

4444
// Respond to LOGIN action
4545
case Constants.LOGIN:
46-
login(payload.email, payload.password);
46+
login(payload.email, payload.displayName, payload.password);
4747
break;
4848

4949
// Respond to REGISTER action

0 commit comments

Comments
 (0)