diff --git a/src/app/members/account/core/personal-data.service.ts b/src/app/members/account/core/personal-data.service.ts index be2695f8cbb6dc4f3a89f085c349a4fe6db6ffab..1352ec7ad363b015df41ec60e284b6abff68b869 100644 --- a/src/app/members/account/core/personal-data.service.ts +++ b/src/app/members/account/core/personal-data.service.ts @@ -1,10 +1,10 @@ import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; -import { Resolve,ActivatedRouteSnapshot } from '@angular/router'; +import { Resolve, ActivatedRouteSnapshot } from '@angular/router'; import { Observable, of, forkJoin } from 'rxjs'; -import { tap, map, filter,catchError } from 'rxjs/operators'; -import { ApiService, AuthService,} from 'app/core'; -import {PersonalDataAdapter,PersonalData} from './personal-data.model' +import { tap, map, filter, catchError } from 'rxjs/operators'; +import { ApiService, AuthService, } from 'app/core'; +import { PersonalDataAdapter, PersonalData } from './personal-data.model' @Injectable({ @@ -19,64 +19,66 @@ export class PersonalDataService extends ApiService { constructor( private http: HttpClient, private auth: AuthService - ) { super(); } + ) { super(); } //get personalData by user - get(filters: any): Observable<PersonalData> { + get(filters: any): Observable<PersonalData> { const url = this.baseUrl; return this.http.get(url, { params: filters }).pipe( map((data: any) => { - - return data.map(item => this.adapter.adapt(item))}), + + return data.map(item => this.adapter.adapt(item)) + }), ); } retrieve(id: number | string): Observable<PersonalData> { let url = this.baseUrl; return this.http.get<PersonalData>(url).pipe( - map(v =>{ + map(v => { - if(v instanceof Array){ - if (v.length>1){ - return this.adapter.adapt(v.find((user)=>user.user_id===id)) + if (v instanceof Array) { + if (v.length > 1) { + return this.adapter.adapt(v.find((user) => user.user_id === id)) } - else if (v.length===1){ - return this.adapter.adapt(v[0]) - }else{ - + else if (v.length === 1) { + return this.adapter.adapt(v[0]) + } else { + return this.adapter.adapt({}) } - + } - - }), + + }), ); } forUser(userId: number): Observable<PersonalData> { - return this.get({ user_id: String(userId)}); + return this.get({ user_id: String(userId) }); } //edit personalData for a user edit(personalData: PersonalData): Observable<any> { - + const body: any = this.adapter.encode(personalData); - return this.http.put(personalData.url, body); - } + + return this.http.put(this.baseUrl + '/' + personalData.user_id + "/", body); + } } @Injectable({ - providedIn: 'root' - }) + providedIn: 'root' +}) export class PersonalDataResolver implements Resolve<PersonalData>{ - - constructor(private service: PersonalDataService, private auth: AuthService) { } + + constructor(private service: PersonalDataService, private auth: AuthService) { } //fetch user - - resolve(route: ActivatedRouteSnapshot): Observable<PersonalData> { - const user = this.auth.getUserSnapshot(); - return this.service.retrieve(user.id).pipe( - catchError(e => of(null)) - ); - + + resolve(route: ActivatedRouteSnapshot): Observable<PersonalData> { + const user = this.auth.getUserSnapshot(); + return this.service.retrieve(user.id).pipe( + catchError(e => of(null)) + ); + } } diff --git a/src/app/members/account/edit-data/edit-data.component.ts b/src/app/members/account/edit-data/edit-data.component.ts index c2f796b8d88c646e548d318886d6a5a95588c1c9..0de2d03c1d057882df23cf69568445a6c096a15a 100644 --- a/src/app/members/account/edit-data/edit-data.component.ts +++ b/src/app/members/account/edit-data/edit-data.component.ts @@ -2,20 +2,20 @@ import { Component, OnInit } from '@angular/core'; import { FormGroup, FormBuilder, Validators, ReactiveFormsModule, FormControlName, FormControl } from '@angular/forms'; import { Router } from '@angular/router'; import { MatSnackBar } from '@angular/material'; -import {ActivatedRoute} from '@angular/router' -import { PersonalData,PersonalDataService } from '../core'; +import { ActivatedRoute } from '@angular/router' +import { PersonalData, PersonalDataService } from '../core'; import { tap, mergeMap } from 'rxjs/operators'; import { AuthService } from 'app/core'; -import {User} from 'app/core'; -import {Observable} from 'rxjs'; -import {map, startWith} from 'rxjs/operators'; +import { User } from 'app/core'; +import { Observable } from 'rxjs'; +import { map, startWith } from 'rxjs/operators'; export interface Nationality { - id : string; + id: string; name: string; -} +} @Component({ @@ -28,362 +28,358 @@ export interface Nationality { export class EditDataComponent implements OnInit { personalData: PersonalData; - formGroup : FormGroup; + formGroup: FormGroup; loading = false; - public error : String = ""; - public postEditMessage : String = "" ; - classType=""; - + public error: String = ""; + public postEditMessage: String = ""; + classType = ""; + myControl = new FormControl(); - + public possibleParentsStatus = [ - {id:"maried",name:"Vos parents vivent ensemble"}, - {id:"separated",name:"Vos parents vivent séparément"}, - {id:"monoparental",name:"Vous avez un seul parent"}, - {id:"noparents",name:"Vous ne dépendez pas de vos parents"}, + { id: "maried", name: "Vos parents vivent ensemble" }, + { id: "separated", name: "Vos parents vivent séparément" }, + { id: "monoparental", name: "Vous avez un seul parent" }, + { id: "noparents", name: "Vous ne dépendez pas de vos parents" }, ] public possibleParentsActivities = [ - {id:"Agriculteur",name:"Agriculteur"}, - {id:"Artisan, commerçant, chef d'entreprise",name:"Artisan, commerçant, chef d'entreprise"}, - {id:"Cadre, profession intellectuelle supérieure",name:"Cadre, profession intellectuelle supérieure"}, - {id:"Enseignant et assimilé",name:"Enseignant et assimilé"}, - {id:"Profession intermédiaire",name:"Profession intermédiaire"}, - {id:"Employé",name:"Employé"}, - {id:"Ouvrier",name:"Ouvrier"}, - {id:"Retraité",name:"Retraité"}, - {id:"Inactif",name:"Inactif"}, - {id:"Autre",name:"Autre"} + { id: "Agriculteur", name: "Agriculteur" }, + { id: "Artisan, commerçant, chef d'entreprise", name: "Artisan, commerçant, chef d'entreprise" }, + { id: "Cadre, profession intellectuelle supérieure", name: "Cadre, profession intellectuelle supérieure" }, + { id: "Enseignant et assimilé", name: "Enseignant et assimilé" }, + { id: "Profession intermédiaire", name: "Profession intermédiaire" }, + { id: "Employé", name: "Employé" }, + { id: "Ouvrier", name: "Ouvrier" }, + { id: "Retraité", name: "Retraité" }, + { id: "Inactif", name: "Inactif" }, + { id: "Autre", name: "Autre" } ] public possibleNationalities: Nationality[] = [ - {id:"AFG", name:"Afghane"}, - {id:"ALB", name:"Albanaise"}, - {id:"DZA", name:"Algérienne"}, - {id:"DEU", name:"Allemande"}, - {id:"USA", name:"Americaine"}, - {id:"AND", name:"Andorrane"}, - {id:"AGO", name:"Angolaise"}, - {id:"ATG", name:"Antiguaise-et-Barbudienne"}, - {id:"ARG", name:"Argentine"}, - {id:"ARM", name:"Armenienne"}, - {id:"AUS", name:"Australienne"}, - {id:"AUT", name:"Autrichienne"}, - {id:"AZE", name:"Azerbaïdjanaise"}, - {id:"BHS", name:"Bahamienne"}, - {id:"BHR", name:"Bahreinienne"}, - {id:"BGD", name:"Bangladaise"}, - {id:"BRB", name:"Barbadienne"}, - {id:"BEL", name:"Belge"}, - {id:"BLZ", name:"Belizienne"}, - {id:"BEN", name:"Béninoise"}, - {id:"BTN", name:"Bhoutanaise"}, - {id:"BLR", name:"Biélorusse"}, - {id:"MMR", name:"Birmane"}, - {id:"GNB", name:"Bissau-Guinéenne"}, - {id:"BOL", name:"Bolivienne"}, - {id:"BIH", name:"Bosnienne"}, - {id:"BWA", name:"Botswanaise"}, - {id:"BRA", name:"Brésilienne"}, - {id:"GBR", name:"Britannique"}, - {id:"BRN", name:"Brunéienne"}, - {id:"BGR", name:"Bulgare"}, - {id:"BFA", name:"Burkinabée"}, - {id:"BDI", name:"Burundaise"}, - {id:"KHM", name:"Cambodgienne"}, - {id:"CMR", name:"Camerounaise"}, - {id:"CAN", name:"Canadienne"}, - {id:"CPV", name:"Cap-verdienne"}, - {id:"CAF", name:"Centrafricaine"}, - {id:"CHL", name:"Chilienne"}, - {id:"CHN", name:"Chinoise"}, - {id:"CYP", name:"Chypriote"}, - {id:"COL", name:"Colombienne"}, - {id:"COM", name:"Comorienne"}, - {id:"COG", name:"Congolaise"}, - {id:"COD", name:"Congolaise"}, - {id:"COK", name:"Cookienne"}, - {id:"CRI", name:"Costaricaine"}, - {id:"HRV", name:"Croate"}, - {id:"CUB", name:"Cubaine"}, - {id:"DNK", name:"Danoise"}, - {id:"DJI", name:"Djiboutienne"}, - {id:"DOM", name:"Dominicaine"}, - {id:"DMA", name:"Dominiquaise"}, - {id:"EGY", name:"Égyptienne"}, - {id:"ARE", name:"Émirienne"}, - {id:"GNQ", name:"Équato-guineenne"}, - {id:"ECU", name:"Équatorienne"}, - {id:"ERI", name:"Érythréenne"}, - {id:"ESP", name:"Espagnole"}, - {id:"TLS", name:"Est-timoraise"}, - {id:"EST", name:"Estonienne"}, - {id:"ETH", name:"Éthiopienne"}, - {id:"FJI", name:"Fidjienne"}, - {id:"FIN", name:"Finlandaise"}, - {id:"FRA", name:"Française"}, - {id:"GAB", name:"Gabonaise"}, - {id:"GMB", name:"Gambienne"}, - {id:"GEO", name:"Georgienne"}, - {id:"GHA", name:"Ghanéenne"}, - {id:"GRD", name:"Grenadienne"}, - {id:"GTM", name:"Guatémaltèque"}, - {id:"GIN", name:"Guinéenne"}, - {id:"GUY", name:"Guyanienne"}, - {id:"HTI", name:"Haïtienne"}, - {id:"GRC", name:"Hellénique"}, - {id:"HND", name:"Hondurienne"}, - {id:"HUN", name:"Hongroise"}, - {id:"IND", name:"Indienne"}, - {id:"IDN", name:"Indonésienne"}, - {id:"IRQ", name:"Irakienne"}, - {id:"IRN", name:"Iranienne"},{id:"IRL", name:"Irlandaise"}, - {id:"ISL", name:"Islandaise"}, - {id:"ISR", name:"Israélienne"}, - {id:"ITA", name:"Italienne"}, - {id:"CIV", name:"Ivoirienne"}, - {id:"JAM", name:"Jamaïcaine"}, - {id:"JPN", name:"Japonaise"}, - {id:"JOR", name:"Jordanienne"}, - {id:"KAZ", name:"Kazakhstanaise"}, - {id:"KEN", name:"Kenyane"}, - {id:"KGZ", name:"Kirghize"}, - {id:"KIR", name:"Kiribatienne"},{id:"KNA", name:"Kittitienne"},{id:"KWT", name:"Koweïtienne"},{id:"LAO", name:"Laotienne"},{id:"LSO", name:"Lesothane"},{id:"LVA", name:"Lettone"},{id:"LBN", name:"Libanaise"},{id:"LBR", name:"Libérienne"},{id:"LBY", name:"Libyenne"},{id:"LIE", name:"Liechtensteinoise"},{id:"LTU", name:"Lituanienne"},{id:"LUX", name:"Luxembourgeoise"},{id:"MKD", name:"Macédonienne"},{id:"MYS", name:"Malaisienne"},{id:"MWI", name:"Malawienne"},{id:"MDV", name:"Maldivienne"},{id:"MDG", name:"Malgache"},{id:"MLI", name:"Maliennes"},{id:"MLT", name:"Maltaise"},{id:"MAR", name:"Marocaine"},{id:"MHL", name:"Marshallaise"},{id:"MUS", name:"Mauricienne"},{id:"MRT", name:"Mauritanienne"},{id:"MEX", name:"Mexicaine"},{id:"FSM", name:"Micronésienne"},{id:"MDA", name:"Moldave"},{id:"MCO", name:"Monegasque"},{id:"MNG", name:"Mongole"},{id:"MNE", name:"Monténégrine"},{id:"MOZ", name:"Mozambicaine"},{id:"NAM", name:"Namibienne"},{id:"NRU", name:"Nauruane"},{id:"NLD", name:"Néerlandaise"},{id:"NZL", name:"Néo-Zélandaise"}, - {id:"NPL", name:"Népalaise"},{id:"NIC", name:"Nicaraguayenne"},{id:"NGA", name:"Nigériane"},{id:"NER", name:"Nigérienne"},{id:"NIU", name:"Niuéenne"},{id:"PRK", name:"Nord-coréenne"},{id:"NOR", name:"Norvégienne"},{id:"OMN", name:"Omanaise"},{id:"UGA", name:"Ougandaise"},{id:"UZB", name:"Ouzbéke"},{id:"PAK", name:"Pakistanaise"},{id:"PLW", name:"Palaosienne"},{id:"PSE", name:"Palestinienne"},{id:"PAN", name:"Panaméenne"},{id:"PNG", name:"Papouane-Néo-Guinéenne"},{id:"PRY", name:"Paraguayenne"},{id:"PER", name:"Péruvienne"},{id:"PHL", name:"Philippine"},{id:"POL", name:"Polonaise"},{id:"PRT", name:"Portugaise"},{id:"QAT", name:"Qatarienne"},{id:"ROU", name:"Roumaine"},{id:"RUS", name:"Russe"},{id:"RWA", name:"Rwandaise"},{id:"LCA", name:"Saint-Lucienne"},{id:"SMR", name:"Saint-Marinaise"},{id:"VCT", name:"Saint-Vincentaise"},{id:"SLB", name:"Salomonaise"},{id:"SLV", name:"Salvadorienne"},{id:"WSM", name:"Samoane"},{id:"STP", name:"Santoméenne"},{id:"SAU", name:"Saoudienne"},{id:"SEN", name:"Sénégalaise"},{id:"SRB", name:"Serbe"},{id:"SYC", name:"Seychelloise"},{id:"SLE", name:"Sierra-Léonaise"},{id:"SGP", name:"Singapourienne"},{id:"SVK", name:"Slovaque"},{id:"SVN", name:"Slovène"},{id:"SOM", name:"Somalienne"},{id:"SDN", name:"Soudanaise"},{id:"LKA", name:"Sri-Lankaise"},{id:"ZAF", name:"Sud-Africaine"},{id:"KOR", name:"Sud-Coréenne"},{id:"SSD", name:"Sud-Soudanaise"},{id:"SWE", name:"Suédoise"},{id:"CHE", name:"Suisse"},{id:"SUR", name:"Surinamaise"},{id:"SWZ", name:"Swazie"},{id:"SYR", name:"Syrienne"},{id:"TJK", name:"Tadjike"},{id:"TZA", name:"Tanzanienne"},{id:"TCD", name:"Tchadienne"},{id:"CZE", name:"Tchèque"},{id:"THA", name:"Thaïlandaise"},{id:"TGO", name:"Togolaise"},{id:"TON", name:"Tonguienne"},{id:"TTO", name:"Trinidadienne"},{id:"TUN", name:"Tunisienne"},{id:"TKM", name:"Turkmène"},{id:"TUR", name:"Turque"},{id:"TUV", name:"Tuvaluane"},{id:"UKR", name:"Ukrainienne"},{id:"URY", name:"Uruguayenne"},{id:"VUT", name:"Vanuatuane"},{id:"VAT", name:"Vaticane"},{id:"VEN", name:"Vénézuélienne"},{id:"VNM", name:"Vietnamienne"},{id:"YEM", name:"Yéménite"},{id:"ZMB", name:"Zambienne"},{id:"ZWE", name:"Zimbabwéenne"} -] + { id: "AFG", name: "Afghane" }, + { id: "ALB", name: "Albanaise" }, + { id: "DZA", name: "Algérienne" }, + { id: "DEU", name: "Allemande" }, + { id: "USA", name: "Americaine" }, + { id: "AND", name: "Andorrane" }, + { id: "AGO", name: "Angolaise" }, + { id: "ATG", name: "Antiguaise-et-Barbudienne" }, + { id: "ARG", name: "Argentine" }, + { id: "ARM", name: "Armenienne" }, + { id: "AUS", name: "Australienne" }, + { id: "AUT", name: "Autrichienne" }, + { id: "AZE", name: "Azerbaïdjanaise" }, + { id: "BHS", name: "Bahamienne" }, + { id: "BHR", name: "Bahreinienne" }, + { id: "BGD", name: "Bangladaise" }, + { id: "BRB", name: "Barbadienne" }, + { id: "BEL", name: "Belge" }, + { id: "BLZ", name: "Belizienne" }, + { id: "BEN", name: "Béninoise" }, + { id: "BTN", name: "Bhoutanaise" }, + { id: "BLR", name: "Biélorusse" }, + { id: "MMR", name: "Birmane" }, + { id: "GNB", name: "Bissau-Guinéenne" }, + { id: "BOL", name: "Bolivienne" }, + { id: "BIH", name: "Bosnienne" }, + { id: "BWA", name: "Botswanaise" }, + { id: "BRA", name: "Brésilienne" }, + { id: "GBR", name: "Britannique" }, + { id: "BRN", name: "Brunéienne" }, + { id: "BGR", name: "Bulgare" }, + { id: "BFA", name: "Burkinabée" }, + { id: "BDI", name: "Burundaise" }, + { id: "KHM", name: "Cambodgienne" }, + { id: "CMR", name: "Camerounaise" }, + { id: "CAN", name: "Canadienne" }, + { id: "CPV", name: "Cap-verdienne" }, + { id: "CAF", name: "Centrafricaine" }, + { id: "CHL", name: "Chilienne" }, + { id: "CHN", name: "Chinoise" }, + { id: "CYP", name: "Chypriote" }, + { id: "COL", name: "Colombienne" }, + { id: "COM", name: "Comorienne" }, + { id: "COG", name: "Congolaise" }, + { id: "COD", name: "Congolaise" }, + { id: "COK", name: "Cookienne" }, + { id: "CRI", name: "Costaricaine" }, + { id: "HRV", name: "Croate" }, + { id: "CUB", name: "Cubaine" }, + { id: "DNK", name: "Danoise" }, + { id: "DJI", name: "Djiboutienne" }, + { id: "DOM", name: "Dominicaine" }, + { id: "DMA", name: "Dominiquaise" }, + { id: "EGY", name: "Égyptienne" }, + { id: "ARE", name: "Émirienne" }, + { id: "GNQ", name: "Équato-guineenne" }, + { id: "ECU", name: "Équatorienne" }, + { id: "ERI", name: "Érythréenne" }, + { id: "ESP", name: "Espagnole" }, + { id: "TLS", name: "Est-timoraise" }, + { id: "EST", name: "Estonienne" }, + { id: "ETH", name: "Éthiopienne" }, + { id: "FJI", name: "Fidjienne" }, + { id: "FIN", name: "Finlandaise" }, + { id: "FRA", name: "Française" }, + { id: "GAB", name: "Gabonaise" }, + { id: "GMB", name: "Gambienne" }, + { id: "GEO", name: "Georgienne" }, + { id: "GHA", name: "Ghanéenne" }, + { id: "GRD", name: "Grenadienne" }, + { id: "GTM", name: "Guatémaltèque" }, + { id: "GIN", name: "Guinéenne" }, + { id: "GUY", name: "Guyanienne" }, + { id: "HTI", name: "Haïtienne" }, + { id: "GRC", name: "Hellénique" }, + { id: "HND", name: "Hondurienne" }, + { id: "HUN", name: "Hongroise" }, + { id: "IND", name: "Indienne" }, + { id: "IDN", name: "Indonésienne" }, + { id: "IRQ", name: "Irakienne" }, + { id: "IRN", name: "Iranienne" }, { id: "IRL", name: "Irlandaise" }, + { id: "ISL", name: "Islandaise" }, + { id: "ISR", name: "Israélienne" }, + { id: "ITA", name: "Italienne" }, + { id: "CIV", name: "Ivoirienne" }, + { id: "JAM", name: "Jamaïcaine" }, + { id: "JPN", name: "Japonaise" }, + { id: "JOR", name: "Jordanienne" }, + { id: "KAZ", name: "Kazakhstanaise" }, + { id: "KEN", name: "Kenyane" }, + { id: "KGZ", name: "Kirghize" }, + { id: "KIR", name: "Kiribatienne" }, { id: "KNA", name: "Kittitienne" }, { id: "KWT", name: "Koweïtienne" }, { id: "LAO", name: "Laotienne" }, { id: "LSO", name: "Lesothane" }, { id: "LVA", name: "Lettone" }, { id: "LBN", name: "Libanaise" }, { id: "LBR", name: "Libérienne" }, { id: "LBY", name: "Libyenne" }, { id: "LIE", name: "Liechtensteinoise" }, { id: "LTU", name: "Lituanienne" }, { id: "LUX", name: "Luxembourgeoise" }, { id: "MKD", name: "Macédonienne" }, { id: "MYS", name: "Malaisienne" }, { id: "MWI", name: "Malawienne" }, { id: "MDV", name: "Maldivienne" }, { id: "MDG", name: "Malgache" }, { id: "MLI", name: "Maliennes" }, { id: "MLT", name: "Maltaise" }, { id: "MAR", name: "Marocaine" }, { id: "MHL", name: "Marshallaise" }, { id: "MUS", name: "Mauricienne" }, { id: "MRT", name: "Mauritanienne" }, { id: "MEX", name: "Mexicaine" }, { id: "FSM", name: "Micronésienne" }, { id: "MDA", name: "Moldave" }, { id: "MCO", name: "Monegasque" }, { id: "MNG", name: "Mongole" }, { id: "MNE", name: "Monténégrine" }, { id: "MOZ", name: "Mozambicaine" }, { id: "NAM", name: "Namibienne" }, { id: "NRU", name: "Nauruane" }, { id: "NLD", name: "Néerlandaise" }, { id: "NZL", name: "Néo-Zélandaise" }, + { id: "NPL", name: "Népalaise" }, { id: "NIC", name: "Nicaraguayenne" }, { id: "NGA", name: "Nigériane" }, { id: "NER", name: "Nigérienne" }, { id: "NIU", name: "Niuéenne" }, { id: "PRK", name: "Nord-coréenne" }, { id: "NOR", name: "Norvégienne" }, { id: "OMN", name: "Omanaise" }, { id: "UGA", name: "Ougandaise" }, { id: "UZB", name: "Ouzbéke" }, { id: "PAK", name: "Pakistanaise" }, { id: "PLW", name: "Palaosienne" }, { id: "PSE", name: "Palestinienne" }, { id: "PAN", name: "Panaméenne" }, { id: "PNG", name: "Papouane-Néo-Guinéenne" }, { id: "PRY", name: "Paraguayenne" }, { id: "PER", name: "Péruvienne" }, { id: "PHL", name: "Philippine" }, { id: "POL", name: "Polonaise" }, { id: "PRT", name: "Portugaise" }, { id: "QAT", name: "Qatarienne" }, { id: "ROU", name: "Roumaine" }, { id: "RUS", name: "Russe" }, { id: "RWA", name: "Rwandaise" }, { id: "LCA", name: "Saint-Lucienne" }, { id: "SMR", name: "Saint-Marinaise" }, { id: "VCT", name: "Saint-Vincentaise" }, { id: "SLB", name: "Salomonaise" }, { id: "SLV", name: "Salvadorienne" }, { id: "WSM", name: "Samoane" }, { id: "STP", name: "Santoméenne" }, { id: "SAU", name: "Saoudienne" }, { id: "SEN", name: "Sénégalaise" }, { id: "SRB", name: "Serbe" }, { id: "SYC", name: "Seychelloise" }, { id: "SLE", name: "Sierra-Léonaise" }, { id: "SGP", name: "Singapourienne" }, { id: "SVK", name: "Slovaque" }, { id: "SVN", name: "Slovène" }, { id: "SOM", name: "Somalienne" }, { id: "SDN", name: "Soudanaise" }, { id: "LKA", name: "Sri-Lankaise" }, { id: "ZAF", name: "Sud-Africaine" }, { id: "KOR", name: "Sud-Coréenne" }, { id: "SSD", name: "Sud-Soudanaise" }, { id: "SWE", name: "Suédoise" }, { id: "CHE", name: "Suisse" }, { id: "SUR", name: "Surinamaise" }, { id: "SWZ", name: "Swazie" }, { id: "SYR", name: "Syrienne" }, { id: "TJK", name: "Tadjike" }, { id: "TZA", name: "Tanzanienne" }, { id: "TCD", name: "Tchadienne" }, { id: "CZE", name: "Tchèque" }, { id: "THA", name: "Thaïlandaise" }, { id: "TGO", name: "Togolaise" }, { id: "TON", name: "Tonguienne" }, { id: "TTO", name: "Trinidadienne" }, { id: "TUN", name: "Tunisienne" }, { id: "TKM", name: "Turkmène" }, { id: "TUR", name: "Turque" }, { id: "TUV", name: "Tuvaluane" }, { id: "UKR", name: "Ukrainienne" }, { id: "URY", name: "Uruguayenne" }, { id: "VUT", name: "Vanuatuane" }, { id: "VAT", name: "Vaticane" }, { id: "VEN", name: "Vénézuélienne" }, { id: "VNM", name: "Vietnamienne" }, { id: "YEM", name: "Yéménite" }, { id: "ZMB", name: "Zambienne" }, { id: "ZWE", name: "Zimbabwéenne" } + ] public possibleSchools = [ - {id:"Jean Perrin (Longjumeau)", name:"Jean Perrin (Longjumeau)"}, - {id:"Robert Doisneau (Corbeil-Essonnes)",name:"Robert Doisneau (Corbeil-Essonnes)"}, - {id:"Henri Matisse (Montreuil)",name:"Henri Matisse (Montreuil)"}, - {id:"Jean Jaurès (Montreuil)",name:"Jean Jaurès (Montreuil)"}, - {id:"Charles Péguy (Bobigny)",name:"Charles Péguy (Bobigny)"}, - {id:"Jean Jaurès (Chatenay-Malabry)",name:"Jean Jaurès (Chatenay-Malabry)"}, - {id:"Parc des Loges (Evry)",name:"Parc des Loges (Evry)"}, - {id:"Jean Jaurès (Argenteuil)",name:"Jean Jaurès (Argenteuil)"}, + { id: "Jean Perrin (Longjumeau)", name: "Jean Perrin (Longjumeau)" }, + { id: "Robert Doisneau (Corbeil-Essonnes)", name: "Robert Doisneau (Corbeil-Essonnes)" }, + { id: "Henri Matisse (Montreuil)", name: "Henri Matisse (Montreuil)" }, + { id: "Jean Jaurès (Montreuil)", name: "Jean Jaurès (Montreuil)" }, + { id: "Charles Péguy (Bobigny)", name: "Charles Péguy (Bobigny)" }, + { id: "Jean Jaurès (Chatenay-Malabry)", name: "Jean Jaurès (Chatenay-Malabry)" }, + { id: "Parc des Loges (Evry)", name: "Parc des Loges (Evry)" }, + { id: "Jean Jaurès (Argenteuil)", name: "Jean Jaurès (Argenteuil)" }, ] public possibleScholarships = [ - {id:"echelon1",name:"Oui, échelon 1"}, - {id:"echelon2",name:"Oui, échelon 2"}, - {id:"echelon3",name:"Oui, échelon 3"}, - {id:"echelon4",name:"Oui, échelon 4"}, - {id:"echelon5",name:"Oui, échelon 5"}, - {id:"echelon6",name:"Oui, échelon 6"}, - {id:"no",name:"Non"}, + { id: "echelon1", name: "Oui, échelon 1" }, + { id: "echelon2", name: "Oui, échelon 2" }, + { id: "echelon3", name: "Oui, échelon 3" }, + { id: "echelon4", name: "Oui, échelon 4" }, + { id: "echelon5", name: "Oui, échelon 5" }, + { id: "echelon6", name: "Oui, échelon 6" }, + { id: "no", name: "Non" }, ] - + public possibleSpecialitiesTechno = [ - {id:"Aucun",name:"Aucun"}, - {id:"STI2D",name:"Sciences et technologies de l’industrie et du développement durable"}, - {id:"STD2A",name:"Sciences et technologies du design et des arts appliqués"}, - {id:"STMG",name:"Sciences et technologies du management et de la gestion"}, - {id:"ST2S",name:"Sciences et technologies de la santé et du social"}, - {id:"STL",name:"Sciences et technologies de laboratoire"}, - {id:"S2TMD",name:"Sciences et techniques du théâtre, de la musique et de la danse"}, - {id:"STHR",name:"Sciences et technologies de l'hôtellerie et de la restauration"}, - {id:"STAV",name:"Sciences et technologies de l'agronomie et du vivant"}, + { id: "Aucun", name: "Aucun" }, + { id: "STI2D", name: "Sciences et technologies de l’industrie et du développement durable" }, + { id: "STD2A", name: "Sciences et technologies du design et des arts appliqués" }, + { id: "STMG", name: "Sciences et technologies du management et de la gestion" }, + { id: "ST2S", name: "Sciences et technologies de la santé et du social" }, + { id: "STL", name: "Sciences et technologies de laboratoire" }, + { id: "S2TMD", name: "Sciences et techniques du théâtre, de la musique et de la danse" }, + { id: "STHR", name: "Sciences et technologies de l'hôtellerie et de la restauration" }, + { id: "STAV", name: "Sciences et technologies de l'agronomie et du vivant" }, ] public possibleSpecialitiesGeneral = [ - {id:"Aucun",name:"Tu es dans une filière générale, tu n'as pas besoin de remplir cette case."}, + { id: "Aucun", name: "Tu es dans une filière générale, tu n'as pas besoin de remplir cette case." }, ] public possibleSpecialitiesPro = [ - {id:"Aucun",name:"Aucun"}, - {id:"Accompagnement soins et services à la personne",name:"Accompagnement soins et services à la personne"}, - {id:"Aéronautique",name:"Aéronautique"}, - {id:"Aménagement et finition du bâtiment",name:"Aménagement et finition du bâtiment"}, - {id:"Animation - enfance et personnes âgées",name:"Animation - enfance et personnes âgées"}, - {id:"Artisanat et métiers d'art",name:"Artisanat et métiers d'art"}, - {id:"Assistance à la gestion des organisations et de leurs activités",name:"Assistance à la gestion des organisations et de leurs activités"}, - {id:"Aviation générale",name:"Aviation générale"}, - {id:"Bio-industries de transformation",name:"Bio-industries de transformation"}, - {id:"Boucher charcutier traiteur",name:"Boucher charcutier traiteur"}, - {id:"Boulanger - pâtissier",name:"Boulanger - pâtissier"}, - {id:"Commerce",name:"Commerce"}, - {id:"Commercialisation et services en restauration",name:"Commercialisation et services en restauration"}, - {id:"Conducteur transport routier marchandises",name:"Conducteur transport routier marchandises"}, - {id:"Construction des carrosseries",name:"Construction des carrosseries"}, - {id:"Cuisine",name:"Cuisine"}, - {id:"Esthétique cosmétique parfumerie",name:"Esthétique cosmétique parfumerie"}, - {id:"Étude et définition de produits industriels",name:"Étude et définition de produits industriels"}, - {id:"Etude et réalisation d'agencement",name:"Etude et réalisation d'agencement"}, - {id:"Façonnage de produits imprimés, routage",name:"Façonnage de produits imprimés, routage"}, - {id:"Fonderie",name:"Fonderie"}, - {id:"Gestion administration",name:"Gestion administration"}, - {id:"Gestion des pollutions et protection de l'environnement",name:"Gestion des pollutions et protection de l'environnement"}, - {id:"Hygiène, propreté et stérilisation",name:"Hygiène, propreté et stérilisation"}, - {id:"Installateur en chauffage, climatisation et énergies renouvelables ",name:"Installateur en chauffage, climatisation et énergies renouvelables "}, - {id:"Interventions sur le patrimoine bâti",name:"Interventions sur le patrimoine bâti"}, - {id:"Logistique",name:"Logistique"}, - {id:"Maintenance des équipements industriels",name:"Maintenance des équipements industriels"}, - {id:"Maintenance des matériels",name:"Maintenance des matériels"}, - {id:"Maintenance des systèmes de production connectés",name:"Maintenance des systèmes de production connectés"}, - {id:"Maintenance des véhicules",name:"Maintenance des véhicules"}, - {id:"Maintenance et Efficacité Energétique",name:"Maintenance et Efficacité Energétique"}, - {id:"Maintenance nautique",name:"Maintenance nautique"}, - {id:"Menuiserie Aluminium-Verre",name:"Menuiserie Aluminium-Verre"}, - {id:"Métiers de l'accueil",name:"Métiers de l'accueil"}, - {id:"Métiers de l'électricité et de ses environnements connectés",name:"Métiers de l'électricité et de ses environnements connectés"}, - {id:"Métiers de la coiffure",name:"Métiers de la coiffure"}, - {id:"Métiers de la mode - vêtements",name:"Logistique"}, - {id:"Métiers de la sécurité",name:"Métiers de la sécurité"}, - {id:"Métiers du commerce et de la vente",name:"Métiers du commerce et de la vente"}, - {id:"Métiers du cuir",name:"Métiers du cuir"}, - {id:"Métiers du Froid et des Énergies Renouvelables",name:"Métiers du Froid et des Énergies Renouvelables"}, - {id:"Métiers du pressing et de la blanchisserie",name:"Métiers du pressing et de la blanchisserie"}, - {id:"Métiers et arts de la pierre",name:"Métiers et arts de la pierre"}, - {id:"Microtechniques",name:"Microtechniques"}, - {id:"Modélisation et prototypage 3D",name:"Modélisation et prototypage 3D"}, - {id:"Optique lunetterie",name:"Optique lunetterie"}, - {id:"Organisation de transport de marchandises",name:"Organisation de transport de marchandises"}, - {id:"Ouvrage du bâtiment : métallerie",name:"Ouvrage du bâtiment : métallerie"}, - {id:"Perruquier posticheur",name:"Perruquier posticheur"}, - {id:"Photographie",name:"Photographie"}, - {id:"Pilote de ligne de production",name:"Pilote de ligne de production"}, - {id:"Plastiques et composites",name:"Plastiques et composites"}, - {id:"Poissonnier écailler traiteur",name:"Poissonnier écailler traiteur"}, - {id:"Procédés de la chimie, de l'eau et des papiers-cartons",name:"Procédés de la chimie, de l'eau et des papiers-cartons"}, - {id:"Productique mécanique",name:"Productique mécanique"}, - {id:"Prothèse dentaire",name:"Prothèse dentaire"}, - {id:"Réalisation de produits imprimés et plurimédia",name:"Réalisation de produits imprimés et plurimédia"}, - {id:"Réparation des carrosseries",name:"Réparation des carrosseries"}, - {id:"Services de proximité et vie locale",name:"Services de proximité et vie locale"}, - {id:"Systèmes numériques",name:"Systèmes numériques"}, - {id:"Technicien Gaz",name:"Technicien Gaz"}, - {id:"Technicien constructeur bois",name:"Technicien constructeur bois"}, - {id:"Technicien de maintenance de systèmes énergétiques et climatiques",name:"Technicien de maintenance de systèmes énergétiques et climatiques"}, - {id:"Technicien d'études du bâtiment",name:"Technicien d'études du bâtiment"}, - {id:"Technicien du froid et du conditionnement de l'air",name:"Technicien du froid et du conditionnement de l'air"}, - {id:"Technicien d'usinage",name:"Technicien d'usinage"}, - {id:"Technicien de fabrication bois et matériaux associés",name:"Technicien de fabrication bois et matériaux associés"}, - {id:"Technicien de maintenance de systèmes énergétiques et climatiques",name:"Technicien de maintenance de systèmes énergétiques et climatiques"}, - {id:"Technicien du bâtiment : organisation et réalisation du gros oeuvre",name:"Technicien du bâtiment : organisation et réalisation du gros oeuvre"}, - {id:"Technicien en appareillage orthopédique",name:"Technicien en appareillage orthopédique"}, - {id:"Technicien en chaudronnerie industrielle",name:"Technicien en chaudronnerie industrielle"}, - {id:"Technicien en installation des systèmes énergétiques et climatiques",name:"Technicien en installation des systèmes énergétiques et climatiques"}, - {id:"Technicien en prothèse dentaire",name:"Technicien en prothèse dentaire"}, - {id:"Technicien en réalisation de produits mécaniques",name:"Technicien en réalisation de produits mécaniques"}, - {id:"Technicien géomètre topographe",name:"Technicien géomètre topographe"}, - {id:"Technicien menuisier agenceur",name:"Technicien menuisier agenceur"}, - {id:"Technicien modeleur",name:"Technicien modeleur"}, - {id:"Technicien outilleur",name:"Technicien outilleur"}, - {id:"Techniques d'interventions sur installations nucléaires",name:"Techniques d'interventions sur installations nucléaires"}, - {id:"Traitements des matériaux",name:"Traitements des matériaux"}, - {id:"Transport",name:"Transport"}, - {id:"Transport fluvial",name:"Transport fluvial"}, - {id:"Travaux publics",name:"Travaux publics"}, - {id:"Vente",name:"Vente"}, + { id: "Aucun", name: "Aucun" }, + { id: "Accompagnement soins et services à la personne", name: "Accompagnement soins et services à la personne" }, + { id: "Aéronautique", name: "Aéronautique" }, + { id: "Aménagement et finition du bâtiment", name: "Aménagement et finition du bâtiment" }, + { id: "Animation - enfance et personnes âgées", name: "Animation - enfance et personnes âgées" }, + { id: "Artisanat et métiers d'art", name: "Artisanat et métiers d'art" }, + { id: "Assistance à la gestion des organisations et de leurs activités", name: "Assistance à la gestion des organisations et de leurs activités" }, + { id: "Aviation générale", name: "Aviation générale" }, + { id: "Bio-industries de transformation", name: "Bio-industries de transformation" }, + { id: "Boucher charcutier traiteur", name: "Boucher charcutier traiteur" }, + { id: "Boulanger - pâtissier", name: "Boulanger - pâtissier" }, + { id: "Commerce", name: "Commerce" }, + { id: "Commercialisation et services en restauration", name: "Commercialisation et services en restauration" }, + { id: "Conducteur transport routier marchandises", name: "Conducteur transport routier marchandises" }, + { id: "Construction des carrosseries", name: "Construction des carrosseries" }, + { id: "Cuisine", name: "Cuisine" }, + { id: "Esthétique cosmétique parfumerie", name: "Esthétique cosmétique parfumerie" }, + { id: "Étude et définition de produits industriels", name: "Étude et définition de produits industriels" }, + { id: "Etude et réalisation d'agencement", name: "Etude et réalisation d'agencement" }, + { id: "Façonnage de produits imprimés, routage", name: "Façonnage de produits imprimés, routage" }, + { id: "Fonderie", name: "Fonderie" }, + { id: "Gestion administration", name: "Gestion administration" }, + { id: "Gestion des pollutions et protection de l'environnement", name: "Gestion des pollutions et protection de l'environnement" }, + { id: "Hygiène, propreté et stérilisation", name: "Hygiène, propreté et stérilisation" }, + { id: "Installateur en chauffage, climatisation et énergies renouvelables ", name: "Installateur en chauffage, climatisation et énergies renouvelables " }, + { id: "Interventions sur le patrimoine bâti", name: "Interventions sur le patrimoine bâti" }, + { id: "Logistique", name: "Logistique" }, + { id: "Maintenance des équipements industriels", name: "Maintenance des équipements industriels" }, + { id: "Maintenance des matériels", name: "Maintenance des matériels" }, + { id: "Maintenance des systèmes de production connectés", name: "Maintenance des systèmes de production connectés" }, + { id: "Maintenance des véhicules", name: "Maintenance des véhicules" }, + { id: "Maintenance et Efficacité Energétique", name: "Maintenance et Efficacité Energétique" }, + { id: "Maintenance nautique", name: "Maintenance nautique" }, + { id: "Menuiserie Aluminium-Verre", name: "Menuiserie Aluminium-Verre" }, + { id: "Métiers de l'accueil", name: "Métiers de l'accueil" }, + { id: "Métiers de l'électricité et de ses environnements connectés", name: "Métiers de l'électricité et de ses environnements connectés" }, + { id: "Métiers de la coiffure", name: "Métiers de la coiffure" }, + { id: "Métiers de la mode - vêtements", name: "Logistique" }, + { id: "Métiers de la sécurité", name: "Métiers de la sécurité" }, + { id: "Métiers du commerce et de la vente", name: "Métiers du commerce et de la vente" }, + { id: "Métiers du cuir", name: "Métiers du cuir" }, + { id: "Métiers du Froid et des Énergies Renouvelables", name: "Métiers du Froid et des Énergies Renouvelables" }, + { id: "Métiers du pressing et de la blanchisserie", name: "Métiers du pressing et de la blanchisserie" }, + { id: "Métiers et arts de la pierre", name: "Métiers et arts de la pierre" }, + { id: "Microtechniques", name: "Microtechniques" }, + { id: "Modélisation et prototypage 3D", name: "Modélisation et prototypage 3D" }, + { id: "Optique lunetterie", name: "Optique lunetterie" }, + { id: "Organisation de transport de marchandises", name: "Organisation de transport de marchandises" }, + { id: "Ouvrage du bâtiment : métallerie", name: "Ouvrage du bâtiment : métallerie" }, + { id: "Perruquier posticheur", name: "Perruquier posticheur" }, + { id: "Photographie", name: "Photographie" }, + { id: "Pilote de ligne de production", name: "Pilote de ligne de production" }, + { id: "Plastiques et composites", name: "Plastiques et composites" }, + { id: "Poissonnier écailler traiteur", name: "Poissonnier écailler traiteur" }, + { id: "Procédés de la chimie, de l'eau et des papiers-cartons", name: "Procédés de la chimie, de l'eau et des papiers-cartons" }, + { id: "Productique mécanique", name: "Productique mécanique" }, + { id: "Prothèse dentaire", name: "Prothèse dentaire" }, + { id: "Réalisation de produits imprimés et plurimédia", name: "Réalisation de produits imprimés et plurimédia" }, + { id: "Réparation des carrosseries", name: "Réparation des carrosseries" }, + { id: "Services de proximité et vie locale", name: "Services de proximité et vie locale" }, + { id: "Systèmes numériques", name: "Systèmes numériques" }, + { id: "Technicien Gaz", name: "Technicien Gaz" }, + { id: "Technicien constructeur bois", name: "Technicien constructeur bois" }, + { id: "Technicien de maintenance de systèmes énergétiques et climatiques", name: "Technicien de maintenance de systèmes énergétiques et climatiques" }, + { id: "Technicien d'études du bâtiment", name: "Technicien d'études du bâtiment" }, + { id: "Technicien du froid et du conditionnement de l'air", name: "Technicien du froid et du conditionnement de l'air" }, + { id: "Technicien d'usinage", name: "Technicien d'usinage" }, + { id: "Technicien de fabrication bois et matériaux associés", name: "Technicien de fabrication bois et matériaux associés" }, + { id: "Technicien de maintenance de systèmes énergétiques et climatiques", name: "Technicien de maintenance de systèmes énergétiques et climatiques" }, + { id: "Technicien du bâtiment : organisation et réalisation du gros oeuvre", name: "Technicien du bâtiment : organisation et réalisation du gros oeuvre" }, + { id: "Technicien en appareillage orthopédique", name: "Technicien en appareillage orthopédique" }, + { id: "Technicien en chaudronnerie industrielle", name: "Technicien en chaudronnerie industrielle" }, + { id: "Technicien en installation des systèmes énergétiques et climatiques", name: "Technicien en installation des systèmes énergétiques et climatiques" }, + { id: "Technicien en prothèse dentaire", name: "Technicien en prothèse dentaire" }, + { id: "Technicien en réalisation de produits mécaniques", name: "Technicien en réalisation de produits mécaniques" }, + { id: "Technicien géomètre topographe", name: "Technicien géomètre topographe" }, + { id: "Technicien menuisier agenceur", name: "Technicien menuisier agenceur" }, + { id: "Technicien modeleur", name: "Technicien modeleur" }, + { id: "Technicien outilleur", name: "Technicien outilleur" }, + { id: "Techniques d'interventions sur installations nucléaires", name: "Techniques d'interventions sur installations nucléaires" }, + { id: "Traitements des matériaux", name: "Traitements des matériaux" }, + { id: "Transport", name: "Transport" }, + { id: "Transport fluvial", name: "Transport fluvial" }, + { id: "Travaux publics", name: "Travaux publics" }, + { id: "Vente", name: "Vente" }, ] constructor( private route: ActivatedRoute, - private personalDataService : PersonalDataService, + private personalDataService: PersonalDataService, private formBuilder: FormBuilder, private router: Router, private auth: AuthService, private snackBar: MatSnackBar, - - ) { } + + ) { } filteredOptions: Observable<Nationality[]>; ngOnInit() { this.personalData = this.route.snapshot.data['personalData']; this.createForm(); - this.classType=this.personalData.classType; - + this.classType = this.personalData.classType; + } public _filter(value: string): string[] { const filterValue = value.toLowerCase(); - let entryNatList : Array<string>; - for (let nationality of this.possibleNationalities) - { + let entryNatList: Array<string>; + for (let nationality of this.possibleNationalities) { entryNatList.push(nationality.name); } - return entryNatList.filter(option => option.toLowerCase().includes(filterValue)); + return entryNatList.filter(option => option.toLowerCase().includes(filterValue)); } - + createForm() { - + this.formGroup = this.formBuilder.group({ - firstName:this.personalData.firstName, - lastName:this.personalData.lastName, - gender:this.personalData.gender, - nationality : this.personalData.nationality, - addressNumber:[this.personalData.addressNumber,Validators.pattern("^[0-9]*$")], - street:this.personalData.street, - zipCode:this.personalData.zipCode, - city:this.personalData.city, - personalPhone:[this.personalData.personalPhone,Validators.pattern("^([0-9]{2}[]?){5}$")], - parentsPhone:[this.personalData.parentsPhone,Validators.pattern("^([0-9]{2}[]?){5}$")], - - - parentsEmail:[this.personalData.parentsEmail,Validators.email], - school:this.personalData.school, - grade:this.personalData.grade, - classType : this.personalData.classType, - specialTeaching:this.personalData.specialTeaching, - scholarship:this.personalData.scholarship, - fatherActivity:this.personalData.fatherActivity, - motherActivity:this.personalData.motherActivity, - parentsStatus:this.personalData.parentsStatus, - dependantsNumber:this.personalData.dependantsNumber, + firstName: this.personalData.firstName, + lastName: this.personalData.lastName, + gender: this.personalData.gender, + nationality: this.personalData.nationality, + addressNumber: [this.personalData.addressNumber, Validators.pattern("^[0-9]*$")], + street: this.personalData.street, + zipCode: this.personalData.zipCode, + city: this.personalData.city, + personalPhone: [this.personalData.personalPhone, Validators.pattern("^([0-9]{2}[]?){5}$")], + parentsPhone: [this.personalData.parentsPhone, Validators.pattern("^([0-9]{2}[]?){5}$")], + + + parentsEmail: [this.personalData.parentsEmail, Validators.email], + school: this.personalData.school, + grade: this.personalData.grade, + classType: this.personalData.classType, + specialTeaching: this.personalData.specialTeaching, + scholarship: this.personalData.scholarship, + fatherActivity: this.personalData.fatherActivity, + motherActivity: this.personalData.motherActivity, + parentsStatus: this.personalData.parentsStatus, + dependantsNumber: this.personalData.dependantsNumber, acceptedConditions: false }) - + } - setSpeciality(){ - if (this.classType=="Technologique") - { - return this.possibleSpecialitiesTechno; - } - else if (this.classType=="Professionnelle") - { - return this.possibleSpecialitiesPro; - } - else (this.classType=="General") - { - return this.possibleSpecialitiesGeneral; - } + setSpeciality() { + if (this.classType == "Technologique") { + return this.possibleSpecialitiesTechno; + } + else if (this.classType == "Professionnelle") { + return this.possibleSpecialitiesPro; + } + else (this.classType == "General") + { + return this.possibleSpecialitiesGeneral; + } } - submit(){ + submit() { this.loading = true; - const {firstName,lastName,gender,nationality,classType,addressNumber,street,zipCode,city,personalPhone,parentsPhone,parentsEmail,school,grade,specialTeaching,scholarship,fatherActivity,motherActivity,parentsStatus,dependantsNumber} = this.formGroup.value; - const personalData: PersonalData = {...this.personalData,classType,firstName,lastName,gender,nationality,addressNumber,street,zipCode,city,personalPhone,parentsPhone,parentsEmail,school,grade,specialTeaching,scholarship,fatherActivity,motherActivity,parentsStatus,dependantsNumber}; - + const { firstName, lastName, gender, nationality, classType, addressNumber, street, zipCode, city, personalPhone, parentsPhone, parentsEmail, school, grade, specialTeaching, scholarship, fatherActivity, motherActivity, parentsStatus, dependantsNumber } = this.formGroup.value; + const personalData: PersonalData = { ...this.personalData, classType, firstName, lastName, gender, nationality, addressNumber, street, zipCode, city, personalPhone, parentsPhone, parentsEmail, school, grade, specialTeaching, scholarship, fatherActivity, motherActivity, parentsStatus, dependantsNumber }; + this.personalDataService.edit(personalData).pipe( tap(() => this.loading = false), - tap(()=> this.error = ""), + tap(() => this.error = ""), tap(() => { - this.postEditMessage = "Merci d'avoir completé tes données personnelles ! Nous allons t'envoyer un email contenant le lien vers le dossier d'inscription, si tu ne le reçois pas, pense à vérifier tes spams." - setTimeout(()=>{ + setTimeout(() => { this.router.navigate(['./membres/compte/donnees']) this.postEditMessage = "" - },7000) - + }, 7000) + }), ).subscribe( - () => {}, + () => { }, (error) => { this.error = "Erreur lors de la modification des données, vérifie que tes données rentrées sont sous le bon format" this.loading = false }, ); - + } - + }