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
Select Git revision
  • 354-actualites-partage-article-via-rs-image-d-illus-a-la-place-du-logo-res-in
  • 582-modification-fiche-structure-offre-structure-vs-offre-accompagnant-numerique-ordre-des-blocs
  • 630-bo-admin-fonction-2
  • 673-fiche-structure-mise-en-forme-des-rs
  • 722-envsubst-client-side-conf
  • 723-structures-l-api-ne-prend-pas-en-compte-l-offre-des-mediateurs
  • 728-cartographie-ordre-d-affichage-de-la-liste
  • 734-actualites-menu-en-mobile
  • dev
  • feat/nginx-security
  • master
  • renovate/bluehalo-ngx-leaflet-20.x
  • renovate/chokidar-4.x
  • renovate/chromatic-com-storybook-4.x
  • renovate/devdependencies-(non-major)
  • renovate/leaflet.locatecontrol-0.x
  • renovate/major-ag-grid-monorepo
  • renovate/major-angular-cli-monorepo
  • renovate/major-angular-eslint-monorepo
  • renovate/major-angular-monorepo
  • renovate/major-angularmaterial-monorepo
  • renovate/major-storybook-monorepo
  • renovate/major-typescript-eslint-monorepo
  • renovate/ng-packagr-20.x
  • renovate/ngx-matomo-client-8.x
  • renovate/ngx-toastr-19.x
  • renovate/npm-11.x
  • wip_3.4
  • 1.1.0
  • v0.0.1
  • v0.0.2
  • v0.0.3
  • v1.1.0
  • v1.10.0
  • v1.11.0
  • v1.11.1
  • v1.12.0
  • v1.12.1
  • v1.13.0
  • v1.14.0
  • v1.15.0
  • v1.16.0
  • v1.16.1
  • v1.16.2
  • v1.16.3
  • v1.17.0
  • v1.17.1
  • v1.17.2
  • v1.17.3
  • v1.2.0
  • v1.3.0
  • v1.4.0
  • v1.5.0
  • v1.6.0
  • v1.6.1
  • v1.7.0
  • v1.8.0
  • v1.9.0
  • v1.9.1
  • v2.0.0
  • v2.0.0-beta1
  • v2.0.0-beta1.1
  • v2.0.0-beta2
  • v2.0.0-beta2.1
  • v2.0.0-beta2.2
  • v2.0.0-beta4
  • v2.0.0-beta5
  • v2.0.1
  • v2.0.2
  • v2.1.0
  • v2.1.1
  • v2.1.2
  • v2.2.0
  • v2.3.0
  • v2.3.1
  • v2.3.2
  • v2.3.3
  • v2.4.0
  • v2.4.1
  • v2.4.2
  • v2.5.0
  • v3.0.0
  • v3.0.1
  • v3.0.2
  • v3.1.0
  • v3.1.0-openshift
  • v3.2.0
  • v3.2.1
  • v3.2.2
  • v3.3.0
  • v3.3.1
  • v3.4.0
  • v3.4.1
  • v3.4.2
  • v3.4.3
  • v4.0.0
  • v4.0.1
  • v4.0.2
  • v4.1.0
  • v4.1.1
100 results

Target

Select target project
  • web-et-numerique / Factory / Resin / Client
1 result
Select Git revision
  • 354-actualites-partage-article-via-rs-image-d-illus-a-la-place-du-logo-res-in
  • 582-modification-fiche-structure-offre-structure-vs-offre-accompagnant-numerique-ordre-des-blocs
  • 630-bo-admin-fonction-2
  • 673-fiche-structure-mise-en-forme-des-rs
  • 722-envsubst-client-side-conf
  • 723-structures-l-api-ne-prend-pas-en-compte-l-offre-des-mediateurs
  • 728-cartographie-ordre-d-affichage-de-la-liste
  • 734-actualites-menu-en-mobile
  • dev
  • feat/nginx-security
  • master
  • renovate/bluehalo-ngx-leaflet-20.x
  • renovate/chokidar-4.x
  • renovate/chromatic-com-storybook-4.x
  • renovate/devdependencies-(non-major)
  • renovate/leaflet.locatecontrol-0.x
  • renovate/major-ag-grid-monorepo
  • renovate/major-angular-cli-monorepo
  • renovate/major-angular-eslint-monorepo
  • renovate/major-angular-monorepo
  • renovate/major-angularmaterial-monorepo
  • renovate/major-storybook-monorepo
  • renovate/major-typescript-eslint-monorepo
  • renovate/ng-packagr-20.x
  • renovate/ngx-matomo-client-8.x
  • renovate/ngx-toastr-19.x
  • renovate/npm-11.x
  • wip_3.4
  • 1.1.0
  • v0.0.1
  • v0.0.2
  • v0.0.3
  • v1.1.0
  • v1.10.0
  • v1.11.0
  • v1.11.1
  • v1.12.0
  • v1.12.1
  • v1.13.0
  • v1.14.0
  • v1.15.0
  • v1.16.0
  • v1.16.1
  • v1.16.2
  • v1.16.3
  • v1.17.0
  • v1.17.1
  • v1.17.2
  • v1.17.3
  • v1.2.0
  • v1.3.0
  • v1.4.0
  • v1.5.0
  • v1.6.0
  • v1.6.1
  • v1.7.0
  • v1.8.0
  • v1.9.0
  • v1.9.1
  • v2.0.0
  • v2.0.0-beta1
  • v2.0.0-beta1.1
  • v2.0.0-beta2
  • v2.0.0-beta2.1
  • v2.0.0-beta2.2
  • v2.0.0-beta4
  • v2.0.0-beta5
  • v2.0.1
  • v2.0.2
  • v2.1.0
  • v2.1.1
  • v2.1.2
  • v2.2.0
  • v2.3.0
  • v2.3.1
  • v2.3.2
  • v2.3.3
  • v2.4.0
  • v2.4.1
  • v2.4.2
  • v2.5.0
  • v3.0.0
  • v3.0.1
  • v3.0.2
  • v3.1.0
  • v3.1.0-openshift
  • v3.2.0
  • v3.2.1
  • v3.2.2
  • v3.3.0
  • v3.3.1
  • v3.4.0
  • v3.4.1
  • v3.4.2
  • v3.4.3
  • v4.0.0
  • v4.0.1
  • v4.0.2
  • v4.1.0
  • v4.1.1
100 results
Show changes

Commits on Source 9

42 files
+ 1432
1861
Compare changes
  • Side-by-side
  • Inline

Files

+90 −0
Original line number Diff line number Diff line
@@ -2,6 +2,96 @@

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.

## [2.0.0-beta2.1](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/compare/v1.17.2...v2.0.0-beta2.1) (2022-05-31)


### Features

* **icons:** change assets ([b8be705](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/b8be7054ce2747538d206298892538100288fc0c))


### Bug Fixes

* **carto:** add format for member's names and surnames ([ecb8de1](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/ecb8de104490b4edda78c96ce0e5f1976bd957a6))
* **carto:** lockdown display ([f0f9994](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/f0f9994d95c3431bfd48276c913b247989e95143))
* **design:** members alignment ([167feb5](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/167feb5dd68b45abd7e602b50ae818487723d499))
* **design:** various return on alignments and icons ([c388f2c](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/c388f2c8c539488d753a494a963ca505a8c33178))
* **form:** checkbox issue and remove unecessary title ([c01a8c3](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/c01a8c30130a395b7048b0323cf624a75530fcf4))
* **form:** hover style for structure-choice ([4872a42](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/4872a42457a51c9a52448f0a329c518abed94e48))
* **onboarding:** various small design fix  ([83cc1c7](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/83cc1c769829257be82466bac1ea73d85bb4940e))
* resote icon after bad merge ([ea53b2b](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/ea53b2bd5e091d4ba8f9f8b719e94c12265bbeaf))
* **toastr:** design feedbacks ([d661d05](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/d661d051ae505c6cc3ae11f2cd36df046793adef))

## [2.0.0-beta2](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/compare/v2.0.0-beta1.1...v2.0.0-beta2) (2022-05-24)


### Features

* **admin:** administration panel for jobs and employers ([04d4296](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/04d4296b55b72bfd7f0ca0a1496030cbe178caff))
* **carto:** structure-details component refactor on animation and display. Addition of avatar on form. ([e36c8f7](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/e36c8f7eb0f070ec8e5e67384724695237b7da5b))
* **carto:** updated behavior to join structure from structure details page ([4852abb](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/4852abb8284b971fedab2c4c4ded802523405f5a))
* **clickable eye:** eye closed when showing password ([4cbbb64](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/4cbbb64be6fce757d20f320a1f4c6b96b8586b1b))
* **edit-profile:** edit profile page ([0adf2df](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/0adf2df148cc65f932696d77c1c50698321f4965))
* **form:** Remove old form components ([471712a](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/471712a383d235e4da9be00efa19315dcf3918b6))
* **forms:** standardize layout ([a9a9211](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/a9a92114cb96e0fe3cc7a374b1f5005598db07ed))
* **onboarding:** Add edit mode ([09123af](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/09123af605b5bf67f2b16a7241b5a0a72597aa29))
* **onboarding:** update onboarding images with V2 versions ([1b8cd13](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/1b8cd1387e260b81d8df08b04fa7138937da7366))
* **pin-structures:** pin already selected structures in search ([5ae8924](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/5ae89245fba84e2571124e548045e90b4379bf8e))
* **progress:** Add global progress bar percentage ([6100d89](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/6100d8935084d626d9bace649a08c4507e5bf396))
* rework of profile page ([201b18d](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/201b18dee9db7115253da8edf835f05c9da4942f))
* **structure:** Add structure members in details ([cfb968e](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/cfb968e325bb9d183f2158a95473588f94084f57))
* **toastr:** New toastr design ([53ec5e6](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/53ec5e623a23ecd62fc4ac1fc4c2a8f9b3e03244))


### Bug Fixes

* **carto:** structure-details missing display placeholder and correct link for profile ([f3f6968](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/f3f6968876698e25ef143b9252a0978f41c192f8))
* **cicd:** job orders ([9e86390](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/9e86390f46e20d4acd0269a2899aa60c310ac937))
* **cicd:** update deploy dev to deploy V2 only ([212a6d5](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/212a6d5d7e099e0dfb32d930f9b09f12a0afae89))
* **deps:** update dependency leaflet.locatecontrol to ^0.76.0 ([f2f8b09](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/f2f8b099c2922aec29d6429282b272464e137051))
* **design sprint1:** login page, onboarding ([fb4438e](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/fb4438e33915c749faa8ae273af5e8709e873d7d))
* font-size small for forms ([3149082](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/3149082fb9c3a02a9dbc8d06c99b5ec89133abe4))
* **form:** layout and progress-bar status ([21fc2d2](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/21fc2d218079ab9087ad35f0045859b45587f513))
* **profile:** conditional display of the job and the employer in profile ([bf5db27](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/bf5db27cd8f3c3110a6194837e06a420869ac4be))
* remove unused component ([22c6f92](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/22c6f92007f179cf998374ae8b1d99c523ce241d))
* **style:** correct duplicated values ([4b03965](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/4b0396529362ea92ab0dd57a65b3f290f9c1ed49))

## [2.0.0-beta1.1](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/compare/v1.16.3...v2.0.0-beta1.1) (2022-04-04)


### Bug Fixes

* V2.0.0-beta1 various design returns for onboarding, carto ans structures ([a9b2386](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/a9b2386538bdbf731660a71bee86dfb19a240906))

## [2.0.0-beta1](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/compare/v1.16.1...v2.0.0-beta1) (2022-03-29)


### ⚠ BREAKING CHANGES

* **onboarding:** Some fileds are now added to user structure, there is no coming back

### Features

* **carto:** rework carto, search bar and structure detail screen ([aa058b5](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/aa058b5d18fb3d90aa77d0aab700424babeff93e))
* **cicd:** update deploy for V2.0 ([4440154](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/4440154a4bac74f32da1f79178acab19ba89b83a))
* **cicd:** update wrong prop ([d311dd9](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/d311dd9f5539f9187672d6e5dbc350d121d00729))
* **onboarding:** form refactor for structure and account creation. Add new onboarding cases for profile and personal offer. ([bb89936](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/bb89936f2869564cfa6bc0e1de239aac53315c0a))
* **style:** add tertiary and icon onlybutton. Update logo and header. Button refacto with enum ([276dc59](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/276dc594376cf4054490ccea327323e391bd1571))
* **style:** change colors, buttons, header, typo ([38629d8](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/38629d8ca71eaaa831109b101f71971bb94f53c4))


### Bug Fixes

* add missing layout import ([621d77d](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/621d77d1610e02a47bc4e6b29d8c973e68d6cebe))
* **carto:** review icons and font ([60d23c3](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/60d23c3c00c0f957aad6eaea627f3196fa9d9361))
* **cicd:** change to branches ([79bf80f](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/79bf80f4bb377e3910b9f04e952c814ecbba3ca4))
* **cicd:** wrong job targeted ([0237564](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/0237564284901f584a122d69f5815836a4acca41))
* **filters:** review more filter background ([da44d38](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/da44d38716db680299a27c46a60a4cff79098b9b))
* **gitalb-ci:** autodeploy for V2.0 ([cd1d43d](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/cd1d43d0da89798a175d77179b0a72d346ee520c))
* secondary button width ([375adfe](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/375adfe94efa04e5e1d193e669a75f3d805d9f34))
* **style:** button hover ([122fcfc](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/122fcfc1412282af29734f33985f375b83606b30))
* **style:** update button style ([c8ade31](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/commit/c8ade31b7d4f187a2c9cb0db321dd5355e7ebb88))

## [2.0.0-beta2](https://forge.grandlyon.com/web-et-numerique/pamn_plateforme-des-acteurs-de-la-mediation-numerique/pamn_client/compare/v2.0.0-beta1.1...v2.0.0-beta2) (2022-05-24)

### Features
+1 −1
Original line number Diff line number Diff line
{
  "name": "pamn",
  "version": "2.0.0-beta2",
  "version": "2.0.0-beta2.1",
  "scripts": {
    "ng": "ng",
    "start": "ng serve --configuration=fr --proxy-config proxy.conf.json",
Original line number Diff line number Diff line
@@ -7,6 +7,8 @@ import { StructureListPrintComponent } from './form/orientation-form/component/s
import { OrientationFormComponent } from './form/orientation-form/orientation-form.component';
import { AdminGuard } from './guards/admin.guard';
import { AuthGuard } from './guards/auth.guard';
import { LoginGuard } from './guards/login.guard';
import { DeactivateGuard } from './guards/deactivate.guard';
import { LegalNoticeComponent } from './legal-notice/legal-notice.component';
import { LoginComponent } from './login/login.component';
import { NewsletterSubscriptionComponent } from './newsletter-subscription/newsletter-subscription.component';
@@ -16,9 +18,10 @@ import { ResetEmailComponent } from './reset-email/reset-email.component';
import { ResetPasswordComponent } from './reset-password/reset-password.component';
import { StructureResolver } from './resolvers/structure.resolver';
import { PasswordFormComponent } from './shared/components';
import { StructureJoinComponent } from './structure-join/structure-join.component';
import { StructureJoinComponent } from './structure/structure-join/structure-join.component';
import { StructureDetailsComponent } from './structure-list/components/structure-details/structure-details.component';
import { StructureListComponent } from './structure-list/structure-list.component';
import { StructureExcludeComponent } from './structure/structure-exclude/structure-exclude.component';

const footerOutletRoute: Route = {
  path: '',
@@ -154,27 +157,28 @@ const routes: Routes = [
    ],
  },
  {
    path: 'join',
    path: 'join/:id',
    children: [
      {
        path: '',
        canActivate: [AuthGuard],
        component: StructureJoinComponent,
        resolve: {
          structure: StructureResolver,
        },
      },
      footerOutletRoute,
    ],
  },
  {
    path: 'join/:id',
    path: 'exclude',
    children: [
      {
        path: '',
        canActivate: [AuthGuard],
        component: StructureJoinComponent,
        resolve: {
          structure: StructureResolver,
        },
        canActivate: [LoginGuard],
        component: StructureExcludeComponent,
      },
      footerOutletRoute,
    ],
  },
  {
Original line number Diff line number Diff line
@@ -22,13 +22,14 @@ import { LegalNoticeComponent } from './legal-notice/legal-notice.component';
import { PageComponent } from './page/page.component';
import { ContactComponent } from './contact/contact.component';
import { AuthGuard } from './guards/auth.guard';
import { LoginGuard } from './guards/login.guard';
import { CustomHttpInterceptor } from './config/http-interceptor';
import { ResetEmailComponent } from './reset-email/reset-email.component';
import { ResetPasswordComponent } from './reset-password/reset-password.component';
import { AdminGuard } from './guards/admin.guard';
import { DeactivateGuard } from './guards/deactivate.guard';
import { TempUserResolver } from './resolvers/temp-user.resolver';
import { StructureJoinComponent } from './structure-join/structure-join.component';
import { StructureJoinComponent } from './structure/structure-join/structure-join.component';
import { RouterListenerService } from './services/routerListener.service';
import { NewsletterSubscriptionComponent } from './newsletter-subscription/newsletter-subscription.component';
import { OrientationFormComponent } from './form/orientation-form/orientation-form.component';
@@ -44,6 +45,7 @@ import { UpdateService } from './services/update.service';
import { DataShareConsentComponent } from './shared/components/data-share-consent/data-share-consent.component';
import { FormViewModule } from './form/form-view/form-view.module';
import { LoginComponent } from './login/login.component';
import { StructureExcludeComponent } from './structure/structure-exclude/structure-exclude.component';

@NgModule({
  declarations: [
@@ -70,6 +72,7 @@ import { LoginComponent } from './login/login.component';
    DataShareConsentComponent,
    OrientationComponent,
    LoginComponent,
    StructureExcludeComponent,
  ],
  imports: [
    BrowserModule,
@@ -91,6 +94,7 @@ import { LoginComponent } from './login/login.component';
    AuthGuard,
    AdminGuard,
    RoleGuard,
    LoginGuard,
    DeactivateGuard,
    TempUserResolver,
    StructureResolver,
Original line number Diff line number Diff line
@@ -67,7 +67,7 @@ export class FooterFormComponent implements OnChanges {

      if (this.currentForm === formType.structure && this.currentStep === structureFormStep.mailSentInfo) {
        const user: User = await this.profileService.getProfile();
        if (!user.job.hasPersonalOffer) {
        if (!user.job || !user.job.hasPersonalOffer) {
          this.isLastFormStep = true;
        }
      }
Original line number Diff line number Diff line
@@ -245,10 +245,20 @@ export class FormViewComponent implements OnInit {
  }

  public linkStructureToUser(): void {
    this.structureService.joinStructure(this.structureForm.value._id, this.profile.email).subscribe((data) => {
      this.currentPage = structureFormStep.mailSentInfo;
    this.structure._id = this.structureForm.value._id;
    this.structure.structureName = this.structureForm.value.structureName;

    this.structureService.isClaimed(this.structure._id, this.profile).subscribe((isClaimed) => {
      this.structure.isClaimed = isClaimed;
      if (isClaimed) {
        this.structureService.joinStructure(this.structureForm.value._id, this.profile.email).subscribe(() => {
          this.currentPage = structureFormStep.mailSentInfo;
        });
      } else {
        this.structureService.claimStructureWithAccount(this.structure._id, this.profile.email).subscribe(() => {
          this.currentPage = structureFormStep.mailSentInfo;
        });
      }
    });
  }

@@ -265,7 +275,7 @@ export class FormViewComponent implements OnInit {
      case formType.structure:
        if (type.formStep === structureFormStep.mailSentInfo) {
          const user = await this.profileService.getProfile();
          if (user.job.hasPersonalOffer) {
          if (user.job && user.job.hasPersonalOffer) {
            this.router.navigateByUrl('form/personaloffer');
          } else {
            this.router.navigateByUrl('/');
Original line number Diff line number Diff line
@@ -23,9 +23,9 @@
<ng-container *ngIf="formType === formTypeEnum.structure && step === structureFormStepEnum.mailSentInfo">
  <div class="information-step-container structure-display">
    <img src="../../assets/form/emailVerification.svg" alt="Image message envoyé" />
    <p>
      Un message a été envoyé aux membres<br />
      de la structure :<br />
    <p *ngIf="isClaimed">Un message a été envoyé aux membres de la structure :</p>
    <p *ngIf="!isClaimed">
      Un message a été envoyé aux administrateurs Rés'IN pour valider l'affectation de votre compte à la structure :
    </p>
    <span>{{ structureName }}</span>
  </div>
@@ -61,11 +61,7 @@
<ng-container *ngIf="formType === formTypeEnum.structure && step === structureFormStepEnum.noStructure">
  <div class="information-step-container profile-updated no-max-width">
    <img src="../../assets/form/profileUpdated.svg" alt="image profil" />
    <h3 class="centered">
      Votre structure ne disposant ni d’accompagnement,&nbsp;ni&nbsp;de formation,&nbsp;elle&nbsp;n’apparaitra pas sur
      Rés’in.
    </h3>
    <p>Votre profil a bien été mis à jour.</p>
    <p class="no-margin-top">Votre profil a bien été mis à jour.</p>
    <div class="btn">
      <app-button
        [style]="buttonTypeEnum.Primary"
@@ -84,8 +80,8 @@
  "
>
  <div class="information-step-container profile-updated no-max-width">
    <h3>Merci, les informations de votre profil ont été mises à jour</h3>
    <img src="../../assets/form/profileUpdated.svg" alt="image profil" />
    <h3>Merci, les informations de votre profil ont été mises à jour</h3>
    <div class="btn">
      <app-button
        [style]="buttonTypeEnum.Primary"
Original line number Diff line number Diff line
@@ -33,14 +33,15 @@
  &.structure-display {
    height: unset;
    max-width: unset;
    gap: 16px;

    p {
      @include lato-regular-18;
      margin: 0;
      margin-bottom: 0;
      margin-top: 1em;
    }
    span {
      @include lato-bold-24;
      margin-top: 16px;
      text-align: center;
    }
    svg {
@@ -86,6 +87,7 @@
  &.profile-updated {
    .centered {
      text-align: center;
      font-weight: normal;
    }
    .btn {
      margin-top: 17px;
@@ -116,3 +118,7 @@
    height: 180px;
  }
}

.no-margin-top {
  margin-top: unset !important;
}
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@
    <app-svg-icon [iconClass]="'icon-26'" [type]="'form'" [icon]="'notValidate'" class="validationIcon"></app-svg-icon>
    <span>Il faut renseigner au moins un champ</span>
  </p>
  <div *ngIf="accessModality" fxLayout="row wrap" fxLayoutGap="16px" fxLayoutAlign="flex-start" class="welcomingTerms">
  <div *ngIf="accessModality" fxLayout="column wrap" fxLayoutAlign="flex-start" class="welcomingTerms">
    <app-checkbox-form
      *ngFor="let module of accessModality.modules"
      [isChecked]="isInArray('accessModality', module.id)"
Original line number Diff line number Diff line
@@ -8,8 +8,7 @@
        ?
      </h3>
    </div>
    <app-checkbox-form [isChecked]="userAcceptSavedDate" [text]="'J\'accepte'" (checkEvent)="acceptDataBeSaved($event)">
    </app-checkbox-form>
    <app-checkbox-form [text]="'J\'accepte'" (checkEvent)="acceptDataBeSaved($event)"> </app-checkbox-form>
  </div>
  <div class="section">
    <div class="title" [ngClass]="{ editTitle: isEditMode }">
@@ -33,6 +32,7 @@
      *ngIf="!isEditMode"
      [text]="'J\'accepte'"
      (checkEvent)="acceptOpenData($event)"
      [isChecked]="false"
    ></app-checkbox-form>
    <div class="dataShareConsent">
      <app-radio-form
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
      [structureName]="structureForm.value.structureName"
      (goNext)="setValidationsForm()"
      [formType]="formTypeEnum.structure"
      [isClaimed]="structure.isClaimed"
    ></app-information-step>
  </ng-container>
  <div *ngIf="currentStep == structureFormStep.structureNameAndAddress">
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@ import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChange
import { AbstractControl, FormArray, FormControl, FormGroup } from '@angular/forms';
import { ActivatedRoute } from '@angular/router';
import { Address } from '../../../models/address.model';
import { Structure } from '../../../models/structure.model';
import { User } from '../../../models/user.model';
import { ProfileService } from '../../../profile/services/profile.service';
import { CategoryEnum } from '../../../shared/enum/category.enum';
@@ -18,6 +19,7 @@ import { structureFormStep } from './structureFormStep.enum';
export class StructureFormComponent implements OnChanges, OnInit {
  @Input() nbSteps: number;
  @Input() currentStep: structureFormStep;
  @Input() structure: Structure;
  @Input() structureForm: FormGroup;
  @Input() hoursForm: FormGroup;
  @Input() isEditMode: boolean;
+18 −0
Original line number Diff line number Diff line
import { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';
import { Injectable } from '@angular/core';
import { AuthService } from '../services/auth.service';
/**
 * Guard to assert that we are logged in. Otherwise redirect to home
 */
@Injectable()
export class LoginGuard implements CanActivate {
  constructor(private authService: AuthService, private router: Router) {}

  canActivate(next: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {
    if (this.authService.isLoggedIn()) {
      return true;
    }
    this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });
    return false;
  }
}
Original line number Diff line number Diff line
export class Owner {
  email: string;
  id: string;
  _id: string;
}
Original line number Diff line number Diff line
@@ -64,6 +64,7 @@ export class Structure {
  public personalOffers: PersonalOffer[] = [];

  public alreadySelected? = false;
  public isClaimed?: boolean = null;

  constructor(obj?: any) {
    Object.assign(this, obj, {
Original line number Diff line number Diff line
@@ -58,10 +58,6 @@ export class StructureService {
    return this.http.get<Structure>(`${this.baseUrl}/${id}`);
  }

  public validateStructureJoin(id: string, userId: string, state: boolean): Observable<Structure> {
    return this.http.post<any>(`${this.baseUrl}/${id}/join/${userId}/${state}`, null);
  }

  public joinStructure(id: string, email: string): Observable<Structure> {
    return this.http.post<any>(`${this.baseUrl}/${id}/join`, { email });
  }
+16 −0
Original line number Diff line number Diff line
import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';
import { User } from '../models/user.model';

@Injectable({
  providedIn: 'root',
})
export class UserService {
  private readonly baseUrl = 'api/users';
  constructor(private http: HttpClient) {}

  public getUser(userId: string): Observable<User> {
    return this.http.get<User>(`${this.baseUrl}/${userId}`);
  }
}
Original line number Diff line number Diff line
@@ -63,6 +63,7 @@ button {
    .text {
      background: $primary-color;
      border: 1px solid $grey-1;
      line-height: 15px;

      color: $white;
      &.withIcon {
@@ -83,6 +84,7 @@ button {
      margin: auto;
      color: $white;
      width: auto;
      line-height: 15px;
      &.withIcon {
        color: $white;
      }
@@ -100,6 +102,7 @@ button {
      margin: auto;
      color: $grey-1;
      width: auto;
      line-height: 15px;
      &.withIcon {
        color: $grey-1;
      }
@@ -117,6 +120,7 @@ button {
      border: 1px solid $grey-1;
      color: $grey-1;
      font-size: 14px;
      line-height: 15px;
      &.withIcon {
        color: $grey-1;
      }
@@ -221,7 +225,6 @@ button {
    top: -1px;
    right: -1px;
    border: 1px solid $grey-1;

    background: $white;
    height: 31px;
    color: $grey-1;
@@ -230,6 +233,7 @@ button {
    vertical-align: middle;
    border-radius: 4px;
    font-size: 14px;
    line-height: 15px;
    &.withIcon {
      color: $black;
      height: 36px;
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
  styleUrls: ['./checkbox-form.component.scss'],
})
export class CheckboxFormComponent implements OnInit {
  @Input() public isChecked: boolean;
  @Input() public isChecked = false;
  @Input() public text: string;
  @Input() public iconSvg: string;
  @Input() public iconType: string;
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@
      <p *ngIf="secondaryContent" class="secondaryContent">{{ secondaryContent }}</p>
      <div class="footerModal" fxLayout="row" fxLayoutAlign="space-around center" fxLayoutGap="8px">
        <app-button
          *ngIf="displayCancelButton"
          (action)="closeModal(false)"
          [text]="'Annuler'"
          [style]="buttonTypeEnum.modalSecondary"
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@ export class ModalJoinConfirmationComponent {
  @Input() public primaryContent: string;
  @Input() public secondaryContent?: string;
  @Input() public customConfirmationText?: string;
  @Input() public displayCancelButton?: boolean = true;
  @Output() closed = new EventEmitter<boolean>();
  public buttonTypeEnum = ButtonType;

Original line number Diff line number Diff line
@@ -83,7 +83,7 @@
      </div>
      <div fxLayout="column" fxLayoutGap="16px" class="ownersBlock">
        <div class="row removeOwner" *ngFor="let owner of structure.owners" fxLayoutGap="16px">
          <button class="btn-primary" (click)="removeOwner(owner.id)">Supprimer</button>
          <button class="btn-primary" (click)="removeOwner(owner._id)">Supprimer</button>
          <span>
            {{ owner.email }}
          </span>