Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • web-et-numerique/factory/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server
1 result
Show changes
Commits on Source (3)
...@@ -2,6 +2,33 @@ ...@@ -2,6 +2,33 @@
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
## [3.0.0](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/compare/v2.4.2...v3.0.0) (2024-03-19)
### Features
* added migration script to remove lockdownActivity ([0cfbff9](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/0cfbff93d36542b8fb47229475fad62ad7aadbb8))
* **forgot-password:** redirect if token is invalid ([b851ddc](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/b851ddc352827e6fdc3cf288a80b34c8481790e3))
* **newsletter:** add MedNum newsletter tag ([d4b0a3a](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/d4b0a3a8a5cc9f734bf1bf0b01b0f8b30d234a02))
* **onboarding:** resend validation email ([a84ef06](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/a84ef066c06b475cc75489ea4b67ce75885eabd5))
### Bug Fixes
* **admin:** get resin users with any CNFS jobs ([7bc7091](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/7bc7091c4971ef5e324b5b92586826e751e333bd))
* **admin:** when admin deletes a user, don't delete the structure(s) ([5597b6e](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/5597b6e2c0ac3eb9e36e5d24c7f74269670edc48))
* **annuaire:** missing withAppointment ([44df008](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/44df0080ddec4556763550dfc770f6e753ced412))
* **annuaire:** no scroll when view more and return from user page ([1ffb915](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/1ffb91534129e83b429bf2fd0f44e25e8595b4b4))
* **claimStructures:** Allow admin to let multiple users join the same structure ([08d4aa4](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/08d4aa4a0a7a0298de21dec027ad276d14f59e30))
* **employer:** remove deleted employer from search index ([59b32b8](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/59b32b87931f2f672ebafb0940027bcad59f1e29))
* **newsletter:** get subscription status from mailchimp ([da6b472](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/da6b4720f5087dd034d5f8dbaacf7c3b91b2eb69))
* **rdv:** filter user personalOffer for carto ([d103221](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/d1032215e0702ea705a8c4303a8e1a643ed8e95f))
* **scripts:** drop job groups in init-db ([9c0a1a9](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/9c0a1a99d1b6764f0fe4ca9735b37034cc6fc559))
* **search:** reset es index after employer is updated + increase search size ([ac14b77](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/ac14b77837a59e210a155a1cff98c35108b9767f))
* **structure:** ctm for multiple postcode ([b03ad39](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/b03ad395866250db79f91ebc288d23375f52b46b))
* **structure:** disable invalid data.gouv import ([650b3eb](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/650b3ebb8c95fd76d6b49ca312345fbdbdb16187))
* **structure:** update CNFS label ([fc4d967](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/commit/fc4d967d9c88492fee71b938fb4ff47f12890923))
## [2.5.0](https://forge.grandlyon.com/web-et-numerique/factory/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/compare/v2.4.2...v2.5.0) (2023-11-07) ## [2.5.0](https://forge.grandlyon.com/web-et-numerique/factory/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_server/compare/v2.4.2...v2.5.0) (2023-11-07)
......
{ {
"name": "ram_server", "name": "ram_server",
"version": "2.5.0", "version": "3.0.0",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "ram_server", "name": "ram_server",
"version": "2.5.0", "version": "3.0.0",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@elastic/elasticsearch": "~8.5.0", "@elastic/elasticsearch": "~8.5.0",
......
{ {
"name": "ram_server", "name": "ram_server",
"private": true, "private": true,
"version": "2.5.0", "version": "3.0.0",
"description": "Nest TypeScript starter repository", "description": "Nest TypeScript starter repository",
"license": "MIT", "license": "MIT",
"scripts": { "scripts": {
......
...@@ -76,7 +76,7 @@ export class StructuresSearchService { ...@@ -76,7 +76,7 @@ export class StructuresSearchService {
index: this.index, index: this.index,
}) })
) { ) {
return this.elasticsearchService.indices.delete({ return await this.elasticsearchService.indices.delete({
index: this.index, index: this.index,
}); });
} }
......
...@@ -117,7 +117,7 @@ export class StructuresController { ...@@ -117,7 +117,7 @@ export class StructuresController {
public async resetES(): Promise<StructureDocument[]> { public async resetES(): Promise<StructureDocument[]> {
// Update denormalized fields (which are used in search) // Update denormalized fields (which are used in search)
await this.structureService.updateAllDenormalizedFields(); await this.structureService.updateAllDenormalizedFields();
return this.structureService.initiateStructureIndex(); return await this.structureService.initiateStructureIndex();
} }
@Post('updateDN') @Post('updateDN')
...@@ -125,7 +125,7 @@ export class StructuresController { ...@@ -125,7 +125,7 @@ export class StructuresController {
@Roles('admin') @Roles('admin')
public async updateDN(): Promise<StructureDocument[]> { public async updateDN(): Promise<StructureDocument[]> {
// Update denormalized fields // Update denormalized fields
return this.structureService.updateAllDenormalizedFields(); return await this.structureService.updateAllDenormalizedFields();
} }
@ApiOperation({ summary: 'Patch one value or more of a structure' }) @ApiOperation({ summary: 'Patch one value or more of a structure' })
......
...@@ -80,7 +80,7 @@ export class EmployerController { ...@@ -80,7 +80,7 @@ export class EmployerController {
@UseGuards(JwtAuthGuard, RolesGuard) @UseGuards(JwtAuthGuard, RolesGuard)
@Roles('admin') @Roles('admin')
public async resetES(): Promise<Employer[]> { public async resetES(): Promise<Employer[]> {
return this.employerService.initEmployerIndex(); return await this.employerService.initEmployerIndex();
} }
@UseGuards(JwtAuthGuard, RolesGuard) @UseGuards(JwtAuthGuard, RolesGuard)
......
...@@ -53,6 +53,6 @@ export class UsersRegistryController { ...@@ -53,6 +53,6 @@ export class UsersRegistryController {
@Roles('admin') @Roles('admin')
public async resetES() { public async resetES() {
this.logger.debug('reset ES UserRegistry'); this.logger.debug('reset ES UserRegistry');
return this.userRegistryService.initUserRegistryIndex(); return await this.userRegistryService.initUserRegistryIndex();
} }
} }
...@@ -209,7 +209,7 @@ export class UsersController { ...@@ -209,7 +209,7 @@ export class UsersController {
@ApiBody({ type: DescriptionDto }) @ApiBody({ type: DescriptionDto })
@Post('description') @Post('description')
public async updateDescription(@Req() req, @Body() body: DescriptionDto): Promise<User> { public async updateDescription(@Req() req, @Body() body: DescriptionDto): Promise<User> {
return this.usersService.updateDescription(req.user._id, body); return await this.usersService.updateDescription(req.user._id, body);
} }
@Post('join-request/:id') @Post('join-request/:id')
......
...@@ -74,7 +74,7 @@ const mockUserRegistrySearchService = { ...@@ -74,7 +74,7 @@ const mockUserRegistrySearchService = {
indexUserRegistry: jest.fn(), indexUserRegistry: jest.fn(),
isStrongPassword: jest.fn(), isStrongPassword: jest.fn(),
search: jest.fn(), search: jest.fn(),
update: jest.fn(), update: jest.fn().mockImplementation(() => ({ catch: jest.fn() })),
}; };
const mockJwtService = { const mockJwtService = {
......
...@@ -961,7 +961,10 @@ export class UsersService { ...@@ -961,7 +961,10 @@ export class UsersService {
throw new HttpException('User not found', HttpStatus.BAD_REQUEST); throw new HttpException('User not found', HttpStatus.BAD_REQUEST);
} }
const populatedResult = await this.findPopulatedUserRegistryById(userId); const populatedResult = await this.findPopulatedUserRegistryById(userId);
this.userRegistrySearchService.update(populatedResult); this.userRegistrySearchService.update(populatedResult).catch((e) => {
// Log but don't return error to user if not found in ES
this.logger.error(e);
});
return result; return result;
} }
......