Commit 6ec19f15 authored by 神楽坂玲奈's avatar 神楽坂玲奈

login

parent 6a532662
...@@ -28,6 +28,12 @@ export class LoginComponent { ...@@ -28,6 +28,12 @@ export class LoginComponent {
'sig': crypto.createHmac('sha256', 'zsZv6LXHDwwtUAGa').update(payload).digest('hex') 'sig': crypto.createHmac('sha256', 'zsZv6LXHDwwtUAGa').update(payload).digest('hex')
}); });
this.url = "https://ygobbs.com/session/sso_provider?" + request; this.url = "https://ygobbs.com/session/sso_provider?" + request;
if (this.loginService.logging_out) {
let request = querystring.stringify({
'redirect': this.url
});
this.url = "https://ygobbs.com/logout?" + request;
}
} }
return_sso(return_url) { return_sso(return_url) {
......
...@@ -2,21 +2,26 @@ ...@@ -2,21 +2,26 @@
* Created by zh99998 on 2016/10/25. * Created by zh99998 on 2016/10/25.
*/ */
import {Injectable} from "@angular/core"; import {Injectable} from "@angular/core";
import {Http} from "@angular/http";
/*interface User { interface User {
admin: boolean; admin: boolean;
avatar_url: string; avatar_url: string;
email: string; email: string;
external_id: number; external_id: number;
moderator: boolean; moderator: boolean;
name: string; name: string;
username: string; username: string;
}*/ }
@Injectable() @Injectable()
export class LoginService { export class LoginService {
user = JSON.parse(localStorage.getItem('login')); user: User = JSON.parse(localStorage.getItem('login'));
logging_out;
constructor(private http: Http) {
}
login(user) { login(user) {
this.user = user; this.user = user;
...@@ -24,7 +29,9 @@ export class LoginService { ...@@ -24,7 +29,9 @@ export class LoginService {
} }
logout() { logout() {
this.logging_out = true;
this.user = null; this.user = null;
localStorage.removeItem('login'); localStorage.removeItem('login');
} }
} }
\ No newline at end of file
...@@ -19,10 +19,10 @@ ...@@ -19,10 +19,10 @@
<div class="navbar-right"> <div class="navbar-right">
<div id="user" *ngIf="loginService.user"> <div id="user" *ngIf="loginService.user">
<a href="#forum" class="require-login profile"> <a href="#forum" class="require-login profile">
<img id="avatar" src="https://ygobbs.com/letter_avatar_proxy/v2/letter/a/e47774/36.png" alt="image"> <img id="avatar" [src]="loginService.user.avatar_url" alt="image">
</a> </a>
<a href="#forum" class="require-login profile item" id="username"></a> <a href="#forum" class="require-login profile item" id="username"></a>
<a (click)="currentPage='login'" href="#ygopro" id="logout" class="require-login item">切换账号</a> <a (click)="loginService.logout()" href="#ygopro" id="logout" class="require-login item">切换账号</a>
<a (click)="refresh()" href="#ygopro" id="refresh" class="item">刷新</a> <a (click)="refresh()" href="#ygopro" id="refresh" class="item">刷新</a>
</div> </div>
<div id="window-buttons" [class.darwin]="platform == 'darwin'"> <div id="window-buttons" [class.darwin]="platform == 'darwin'">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment