Skip to content

Commit a02bff9

Browse files
committed
get user workspaces
1 parent 5c198e5 commit a02bff9

File tree

4 files changed

+53
-34
lines changed

4 files changed

+53
-34
lines changed

src/App.vue

Lines changed: 4 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,22 @@
11
<template>
22
<div>
3-
<nav class="navbar navbar-default">
4-
<div class="container">
5-
<ul class="nav navbar-nav">
6-
<li><router-link to="/dashboard">Dashboard</router-link></li>
7-
<li><router-link to="/login" v-if="!user.authenticated">Login</router-link></li>
8-
<li><router-link to="/login" v-if="user.authenticated" v-on:click.native="logout">Logout</router-link></li>
9-
</ul>
10-
</div>
11-
</nav>
3+
124
<div class="container">
135
<router-view></router-view>
146
</div>
157
</div>
168
</template>
179

1810
<script>
19-
import api from './utils/api'
11+
2012
2113
export default {
2214
name: 'app',
2315
24-
data() {
25-
return {
26-
user: api.user
27-
}
28-
},
16+
2917
3018
methods: {
31-
logout() {
32-
api.logout()
33-
.then((response)=>{
34-
this.$router.push('/login');
35-
});
36-
}
19+
3720
}
3821
}
3922
</script>

src/components/Dashboard.vue

Lines changed: 34 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,17 @@
22
<div id="app">
33
<!--<img src="./assets/logo.png">-->
44
<!--<router-view></router-view>-->
5-
<p>Welcome {{username}}</p>
5+
<p>Welcome {{user.username}}</p>
6+
<nav class="navbar navbar-default">
7+
<div class="container">
8+
<ul class="nav navbar-nav">
9+
<li><router-link to="/dashboard">Dashboard</router-link></li>
10+
<li><router-link to="/login" v-if="!user.authenticated">Login</router-link></li>
11+
<li><router-link to="/login" v-if="user.authenticated" v-on:click.native="logout">Logout</router-link></li>
12+
<li v-if="enrolledWorkspaces[selectedWorkspaceIndex]">{{enrolledWorkspaces[selectedWorkspaceIndex].name}}</li>
13+
</ul>
14+
</div>
15+
</nav>
616
<todo-list v-bind:todos="todosarray"></todo-list>
717
<create-todo v-on:add-todo="addTodo"></create-todo>
818
</div>
@@ -44,19 +54,39 @@ export default {
4454
done: false
4555
}
4656
],
47-
username: ''
57+
//username: '',
58+
user: api.user,
59+
enrolledWorkspaces: [],
60+
selectedWorkspaceIndex: 0
4861
};
4962
},
5063
beforeMount(){
51-
this.username = api.user.username;
52-
64+
this.user = api.user;
65+
//console.log('dashhhh:: ' + JSON.stringify(api.user.user));
66+
this.user.userdetails.user.WorkspaceIds.map((workspace,index)=>{
67+
api.getWorkspace(workspace.workspaceId)
68+
.then((resp)=>{
69+
console.log('getWorkspace response:-> ' + JSON.stringify(resp.data));
70+
this.enrolledWorkspaces.push(resp.data);
71+
console.log('enrolledWorkspace ' +index+ ':: ' + JSON.stringify(this.enrolledWorkspaces));
72+
});
73+
});
74+
this.selectedWorkspaceIndex = this.user.userdetails.user.WorkspaceIds.findIndex((ws)=>{
75+
return ws.selected;
76+
});
5377
5478
},
5579
methods: {
5680
addTodo(newtodo) {
5781
console.log("addTodo() called");
5882
this.todosarray.push(newtodo);
5983
},
84+
logout() {
85+
api.logout()
86+
.then((response)=>{
87+
this.$router.push('/login');
88+
});
89+
},
6090
},
6191
6292
}

src/components/Register.vue

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,11 @@
6161
e.preventDefault();
6262
api.register(this,this.user,'/dashboard')
6363
.then((response)=>{
64-
console.log('register response-> '+ JSON.stringify(response));
64+
console.log('registration success ');
6565
var credentials = {
6666
username: this.user.username,
6767
password: this.user.password
68-
};
69-
console.log('register credentials:: ' + JSON.stringify(credentials));
68+
};
7069
7170
//api.login(this,credentials,'/dashboard');
7271
api.login(credentials)

src/utils/api.js

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,17 @@ export default {
88

99
user: {
1010
authenticated: false,
11-
username:''
11+
username:'',
12+
userdetails: {}
1213
},
1314

1415
login(creds) {
1516
return axios.post(nodeurl + '/auth/login', creds) //{ username: credentials.username, password: credentials.password }
1617
.then((response)=>{
17-
console.log('loggedin response '+ JSON.stringify(response));
18+
console.log('login success ');
1819
//login success
1920
this.user.authenticated = true;
20-
this.user.username = response.data.user.username;
21+
this.user.username = response.data.user._id;
2122
//return response;
2223
//context.$router.push(redirect); //redirect to dashboard
2324

@@ -30,6 +31,8 @@ export default {
3031
if(response.data.user){ //already loggedin
3132
this.user.authenticated = true;
3233
this.user.username = response.data.user._id;
34+
//console.log('getLoginStatus response -> '+ JSON.stringify(response));
35+
this.user.userdetails = response.data;
3336
}
3437
else{
3538
this.user.authenticated = false;
@@ -43,7 +46,7 @@ export default {
4346
return axios.get(nodeurl + '/auth/logout')
4447
.then(function(response){
4548
//if(response.data.message='loggedout'){
46-
console.log(response);
49+
console.log('logout success');
4750
this.user.authenticated = false;
4851
//return response;
4952
//context.$router.push(redirect);
@@ -54,7 +57,7 @@ export default {
5457
checkLoggedin(to, from, next){
5558
api.getLoginStatus()
5659
.then((response)=>{
57-
console.log('checkLogin Response: '+ JSON.stringify(response));
60+
console.log('checkLogin Response: ');
5861

5962
next(response.data.user ? true : { ////go to login if not loggedin
6063
path: '/login',
@@ -69,7 +72,7 @@ export default {
6972
checkLoggedout(to, from, next){
7073
api.getLoginStatus()
7174
.then(function(response){
72-
console.log('checkLoggedout Response: '+ JSON.stringify(response));
75+
console.log('checkLoggedout Response: ');
7376

7477
next(response.data.user ? { //go to dashboard if already loggedin
7578
path: '/dashboard',
@@ -84,4 +87,8 @@ export default {
8487
return axios.post(nodeurl + '/auth/register', userdetails);
8588
},
8689

90+
getWorkspace(workspaceId){
91+
return axios.get(nodeurl + '/api/workspace/' + workspaceId);
92+
},
93+
8794
}

0 commit comments

Comments
 (0)