Skip to content

Commit

Permalink
fix(tokens): remove access token
Browse files Browse the repository at this point in the history
  • Loading branch information
Izak88 committed Dec 21, 2017
1 parent 489ccd0 commit 86cd34a
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 2 deletions.
8 changes: 8 additions & 0 deletions src/api/db/access-token.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,11 @@ export function insertAccessToken(data: any): Promise<any> {
.then(token => !token ? reject(token) : resolve(token.toJSON()));
});
}

export function removeAccessToken(id: number): Promise<any> {
return new Promise((resolve, reject) => {
new AccessToken({ id: id }).destroy()
.then(() => resolve(true))
.catch(() => reject());
});
}
11 changes: 10 additions & 1 deletion src/api/server-routes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import {
import { getBuilds, getBuild } from './db/build';
import { getJob } from './db/job';
import { getJobRuns, getJobRunsBetween } from './db/job-run';
import { insertAccessToken, getAccessTokens } from './db/access-token';
import { insertAccessToken, getAccessTokens, removeAccessToken } from './db/access-token';
import {
updatePermission,
getUserRepositoryPermissions,
Expand Down Expand Up @@ -223,6 +223,15 @@ export function userRoutes(): express.Router {
}).catch(err => res.status(401).json({ data: 'Not Authorized' }));
});

router.get('/remove-token/:id', (req: express.Request, res: express.Response) => {
checkApiRequestAuth(req)
.then(() => {
removeAccessToken(req.params.id)
.then(() => res.status(200).json({ data: true }))
.catch(() => res.status(200).json({ data: false }));
}).catch(err => res.status(401).json({ data: 'Not Authorized' }));
});

router.post('/upload-avatar', upload.any(), (req: express.Request, res: express.Response) => {
const avatar = '/' + relative(getRootDir(), req.files[0].path);
getUser(req.body.userId)
Expand Down
2 changes: 1 addition & 1 deletion src/app/components/app-user/app-user.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ <h1>Access Tokens</h1>
<span>{{ token.created_at | date:'medium' }}</span>
</div>
<div class="column is-1 justify-center">
<i class="ionicon ion-close pointer"></i>
<i class="ionicon ion-close pointer" name="btn-removeToken" (click)="removeToken(token.id)"></i>
</div>
</div>
</div>
Expand Down
8 changes: 8 additions & 0 deletions src/app/components/app-user/app-user.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,14 @@ export class AppUserComponent implements OnInit {
});
}

removeToken(id: number): void {
this.api.removeToken(id).subscribe(event => {
if (event) {
this.fetchUser();
}
});
}

gotoRepository(e: MouseEvent, id: number): void {
e.preventDefault();
e.stopPropagation();
Expand Down
4 changes: 4 additions & 0 deletions src/app/services/api.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,10 @@ export class ApiService {
return this.post(`${this.url}/user/add-token`, data, true);
}

removeToken(id: number): Observable<any> {
return this.get(`${this.url}/user/remove-token/${id}`, null, true);
}

getUsers(): Observable<any> {
return this.get(`${this.url}/user`, null, true);
}
Expand Down

0 comments on commit 86cd34a

Please sign in to comment.