tracking files
This commit is contained in:
parent
cce97527b5
commit
9b3c02f6c1
73 changed files with 1671 additions and 479 deletions
16
src/app/services/auth.interceptor.spec.ts
Normal file
16
src/app/services/auth.interceptor.spec.ts
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
import { TestBed } from '@angular/core/testing';
|
||||
|
||||
import { AuthInterceptor } from './auth.interceptor';
|
||||
|
||||
describe('AuthInterceptor', () => {
|
||||
beforeEach(() => TestBed.configureTestingModule({
|
||||
providers: [
|
||||
AuthInterceptor
|
||||
]
|
||||
}));
|
||||
|
||||
it('should be created', () => {
|
||||
const interceptor: AuthInterceptor = TestBed.inject(AuthInterceptor);
|
||||
expect(interceptor).toBeTruthy();
|
||||
});
|
||||
});
|
||||
31
src/app/services/auth.interceptor.ts
Normal file
31
src/app/services/auth.interceptor.ts
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
import { Injectable } from '@angular/core';
|
||||
import {
|
||||
HttpRequest,
|
||||
HttpHandler,
|
||||
HttpEvent,
|
||||
HttpInterceptor
|
||||
} from '@angular/common/http';
|
||||
import { Observable } from 'rxjs';
|
||||
import { TokenService } from './token.service';
|
||||
|
||||
@Injectable()
|
||||
export class AuthInterceptor implements HttpInterceptor {
|
||||
|
||||
constructor(private tokenService: TokenService) {}
|
||||
|
||||
intercept(request: HttpRequest<unknown>, next: HttpHandler): Observable<HttpEvent<unknown>> {
|
||||
console.log('Coucou je suis le videur ! ');
|
||||
const token = this.tokenService.getToken();
|
||||
if(token) {
|
||||
|
||||
const authReq = request.clone(
|
||||
{
|
||||
headers : request.headers.set('Authorization', `Bearer ${token}`)
|
||||
}
|
||||
)
|
||||
return next.handle(authReq);
|
||||
} else {
|
||||
return next.handle(request);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -14,7 +14,7 @@ export class AuthService {
|
|||
private tokenKey: string;
|
||||
|
||||
constructor(private http: HttpClient) {
|
||||
// On se sert des variables d'environnement de notre application
|
||||
|
||||
this.apiUrl = environment.apiUrl;
|
||||
this.tokenKey = environment.tokenKey;
|
||||
}
|
||||
|
|
@ -34,19 +34,14 @@ export class AuthService {
|
|||
};
|
||||
|
||||
console.log('Mon body : ', body);
|
||||
|
||||
// Modifier cette partie ci-dessous :
|
||||
// - pour pouvoir stocker dans le localstorage notre accesstoken
|
||||
// - Sous la clé "TOKEN-LBP"
|
||||
|
||||
return this.http.post(`${this.apiUrl}/membres/sign-in`, body).pipe(
|
||||
map((x: any) => {
|
||||
console.log('Service : ', x.token);
|
||||
// Modification à faire ici
|
||||
localStorage.setItem(this.tokenKey, x.token);
|
||||
return x; // permet de renvoyer la réponse à l'initiateur (page Signin) après le traitement du map
|
||||
})
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
forgotPassword(email: string): Observable<any> {
|
||||
|
|
|
|||
16
src/app/services/evenement.service.spec.ts
Normal file
16
src/app/services/evenement.service.spec.ts
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
import { TestBed } from '@angular/core/testing';
|
||||
|
||||
import { EvenementService } from './evenement.service';
|
||||
|
||||
describe('EvenementService', () => {
|
||||
let service: EvenementService;
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({});
|
||||
service = TestBed.inject(EvenementService);
|
||||
});
|
||||
|
||||
it('should be created', () => {
|
||||
expect(service).toBeTruthy();
|
||||
});
|
||||
});
|
||||
36
src/app/services/evenement.service.ts
Normal file
36
src/app/services/evenement.service.ts
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
import { HttpClient } from '@angular/common/http';
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Observable } from 'rxjs';
|
||||
import { environment } from 'src/environments/environment';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class EvenementService {
|
||||
apiUrl: string;
|
||||
tokenKey: string;
|
||||
|
||||
constructor(private http: HttpClient) {
|
||||
// On se sert des variables d'environnement de notre application
|
||||
this.apiUrl = environment.apiUrl;
|
||||
this.tokenKey = environment.tokenKey;
|
||||
}
|
||||
|
||||
getEvenementsByIdTeam(id: any): Observable<any> {
|
||||
return this.http.get(`${this.apiUrl}/evenements/team/` + id);
|
||||
}
|
||||
|
||||
addEvenements(evenement: any): Observable<any> {
|
||||
console.log(evenement);
|
||||
|
||||
return this.http.post(`${this.apiUrl}/evenements/add`, evenement);
|
||||
}
|
||||
|
||||
deleteEvenements(id: any): Observable<any> {
|
||||
return this.http.delete(`${this.apiUrl}/evenements/delete/`+id,{responseType: 'text'});
|
||||
}
|
||||
|
||||
updateEvenements(evenement:any): Observable<any> {
|
||||
return this.http.put(`${this.apiUrl}/evenements/update/1`, evenement);
|
||||
}
|
||||
}
|
||||
16
src/app/services/mail.service.spec.ts
Normal file
16
src/app/services/mail.service.spec.ts
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
import { TestBed } from '@angular/core/testing';
|
||||
|
||||
import { MailService } from './mail.service';
|
||||
|
||||
describe('MailService', () => {
|
||||
let service: MailService;
|
||||
|
||||
beforeEach(() => {
|
||||
TestBed.configureTestingModule({});
|
||||
service = TestBed.inject(MailService);
|
||||
});
|
||||
|
||||
it('should be created', () => {
|
||||
expect(service).toBeTruthy();
|
||||
});
|
||||
});
|
||||
29
src/app/services/mail.service.ts
Normal file
29
src/app/services/mail.service.ts
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
import { HttpClient } from '@angular/common/http';
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Router } from '@angular/router';
|
||||
import { Observable } from 'rxjs';
|
||||
import { environment } from 'src/environments/environment';
|
||||
import { Mail } from '../models/mail';
|
||||
import { TokenService } from './token.service';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class MailService {
|
||||
apiUrl: string;
|
||||
tokenKey: string;
|
||||
|
||||
constructor(private http: HttpClient, private tokenService: TokenService, private router: Router) {
|
||||
this.apiUrl = environment.apiUrl;
|
||||
this.tokenKey = environment.tokenKey;
|
||||
}
|
||||
|
||||
envoiMailText(mail: Mail): Observable<any> | void{
|
||||
return this.http.post(`${this.apiUrl}/sendmail/text`, mail, {
|
||||
responseType: "text"
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,8 +1,10 @@
|
|||
import { HttpClient } from '@angular/common/http';
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Router } from '@angular/router';
|
||||
import { Observable } from 'rxjs';
|
||||
import { environment } from 'src/environments/environment';
|
||||
import { Membre } from '../models/membre';
|
||||
import { TokenService } from './token.service';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
|
|
@ -11,7 +13,7 @@ export class MembreService {
|
|||
apiUrl: string;
|
||||
tokenKey: string;
|
||||
|
||||
constructor(private http: HttpClient) {
|
||||
constructor(private http: HttpClient, private tokenService: TokenService, private router: Router) {
|
||||
this.apiUrl = environment.apiUrl;
|
||||
this.tokenKey = environment.tokenKey;
|
||||
}
|
||||
|
|
@ -20,14 +22,27 @@ export class MembreService {
|
|||
return this.http.get(`${this.apiUrl}/membres/all`);
|
||||
}
|
||||
|
||||
getMembreId(id: any): Observable<any> {
|
||||
return this.http.get(`${this.apiUrl}/membres/1` + id);
|
||||
getMembresByTeamId(): Observable<any> | void{
|
||||
const teamId = this.tokenService.getCurrentTeamId();
|
||||
if (teamId){
|
||||
return this.http.get(`${this.apiUrl}/membres/team/${teamId}`);
|
||||
}else {
|
||||
this.router.navigate(['accueil']);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
addMembre(membre: Membre): Observable<any> {
|
||||
console.log(membre);
|
||||
getMembreId(id: any): Observable<any> {
|
||||
return this.http.get(`${this.apiUrl}/membres/` + id);
|
||||
}
|
||||
|
||||
return this.http.post(`${this.apiUrl}/membres/sign-up`, membre);
|
||||
addMembre(membre: Membre): Observable<any> | void{
|
||||
const teamId = this.tokenService.getCurrentTeamId();
|
||||
if (teamId){
|
||||
return this.http.post(`${this.apiUrl}/membres/add/${teamId}`, membre);
|
||||
}else {
|
||||
this.router.navigate(['accueil']);
|
||||
}
|
||||
}
|
||||
|
||||
deleteMembre(membre: Membre): Observable<any> {
|
||||
|
|
|
|||
|
|
@ -44,13 +44,18 @@ apiUrl: string;
|
|||
|
||||
}
|
||||
|
||||
deleteMenu(id: any): Observable<any> {
|
||||
return this.http.delete(`${this.apiUrl}/menus/delete/`+ id);
|
||||
deleteMenu(id:number): Observable<any> {
|
||||
return this.http.delete(`${this.apiUrl}/menus/delete/${id}`);
|
||||
}
|
||||
|
||||
updateMenu(menu: Menu): Observable<any> {
|
||||
return this.http.put(`${this.apiUrl}/contacts/update/`, menu);
|
||||
}
|
||||
|
||||
updateMenu(menu: Menu, id:number): Observable<any> | void {
|
||||
const teamId = this.tokenService.getCurrentTeamId();
|
||||
if (teamId){
|
||||
return this.http.put(`${this.apiUrl}/menus/update/${teamId}/${id}`, menu);
|
||||
}else {
|
||||
this.router.navigate(['accueil']);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
import { HttpClient } from '@angular/common/http';
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Router } from '@angular/router';
|
||||
import { Observable } from 'rxjs';
|
||||
import { environment } from 'src/environments/environment';
|
||||
import { Team } from '../models/team';
|
||||
import { TokenService } from './token.service';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
|
|
@ -12,7 +14,7 @@ export class TeamService {
|
|||
tokenKey: string;
|
||||
|
||||
|
||||
constructor(private http: HttpClient) {
|
||||
constructor(private http: HttpClient, private tokenService: TokenService, private router: Router) {
|
||||
this.apiUrl = environment.apiUrl;
|
||||
this.tokenKey = environment.tokenKey;
|
||||
}
|
||||
|
|
@ -20,8 +22,13 @@ export class TeamService {
|
|||
return this.http.get(`${this.apiUrl}/teams/all`);
|
||||
}
|
||||
|
||||
getTeamById(id: any): Observable<any> {
|
||||
return this.http.get(`${this.apiUrl}/teams/1` + id);
|
||||
getTeamById(): Observable<any> | void {
|
||||
const teamId = this.tokenService.getCurrentTeamId();
|
||||
if (teamId){
|
||||
return this.http.get(`${this.apiUrl}/teams/${teamId}`);
|
||||
} else {
|
||||
this.router.navigate(['accueil']);
|
||||
}
|
||||
}
|
||||
|
||||
addTeam(team: Team): Observable<any> {
|
||||
|
|
|
|||
|
|
@ -20,11 +20,22 @@ tokenKey = environment.tokenKey;
|
|||
}
|
||||
}
|
||||
|
||||
public eraseToken(): string | null {
|
||||
const token = localStorage.getItem(this.tokenKey);
|
||||
if(token) {
|
||||
this.tokenKey = '';
|
||||
return token;
|
||||
}else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public getCurrentMembreId(): number | null {
|
||||
const token = this.getToken();
|
||||
if(token) {
|
||||
const decodedToken = jwt_decode<any>(token);
|
||||
const userId = decodedToken.sub;
|
||||
const userId = decodedToken.userId;
|
||||
return userId;
|
||||
} else {
|
||||
return null;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue