Merge branch 'dev' into staging

This commit is contained in:
Maxime Lalo 2024-04-26 11:46:51 +02:00
commit b31bffc922
2 changed files with 8 additions and 6 deletions

View File

@ -17,7 +17,7 @@ export default function LoginHome() {
<div className={classes["content"]}> <div className={classes["content"]}>
<div className={classes["section"]}> <div className={classes["section"]}>
<Typography typo={ITypo.P_18} color={ITypoColor.BLACK}> <Typography typo={ITypo.P_18} color={ITypoColor.BLACK}>
Je suis un notaire Je suis un notaire / collaborateur
</Typography> </Typography>
<Link href={Module.getInstance().get().modules.pages.Login.props.path}> <Link href={Module.getInstance().get().modules.pages.Login.props.path}>
<Button>Se connecter</Button> <Button>Se connecter</Button>

View File

@ -6,7 +6,7 @@ import CheckBox from "@Front/Components/DesignSystem/CheckBox";
import Button, { EButtonVariant } from "@Front/Components/DesignSystem/Button"; import Button, { EButtonVariant } from "@Front/Components/DesignSystem/Button";
import React, { useCallback, useEffect, useState } from "react"; import React, { useCallback, useEffect, useState } from "react";
import User, { Subscription } from "le-coffre-resources/dist/Admin"; import User, { Subscription } from "le-coffre-resources/dist/Admin";
import JwtService from "@Front/Services/JwtService/JwtService"; import JwtService, { IUserJwtPayload } from "@Front/Services/JwtService/JwtService";
import Subscriptions from "@Front/Api/LeCoffreApi/Admin/Subscriptions/Subscriptions"; import Subscriptions from "@Front/Api/LeCoffreApi/Admin/Subscriptions/Subscriptions";
import Users from "@Front/Api/LeCoffreApi/Admin/Users/Users"; import Users from "@Front/Api/LeCoffreApi/Admin/Users/Users";
import { useRouter } from "next/router"; import { useRouter } from "next/router";
@ -17,9 +17,10 @@ export default function SubscriptionManageCollaborators() {
const [subscription, setSubscription] = useState<Subscription | null>(null); const [subscription, setSubscription] = useState<Subscription | null>(null);
const [availableCollaborators, _setAvailableCollaborators] = useState<User[]>([]); const [availableCollaborators, _setAvailableCollaborators] = useState<User[]>([]);
const [selectedCollaborators, setSelectedCollaborators] = useState<string[]>([]); const [selectedCollaborators, setSelectedCollaborators] = useState<string[]>([]);
const [jwt, setJwt] = useState<IUserJwtPayload | undefined>(undefined);
const loadSubscription = useCallback(async () => { const loadSubscription = useCallback(async () => {
const jwt = JwtService.getInstance().decodeJwt(); const jwt = JwtService.getInstance().decodeJwt();
setJwt(jwt);
const subscription = await Subscriptions.getInstance().get({ const subscription = await Subscriptions.getInstance().get({
where: { office: { uid: jwt?.office_Id } }, where: { office: { uid: jwt?.office_Id } },
include: { seats: { include: { user: true } } }, include: { seats: { include: { user: true } } },
@ -80,7 +81,7 @@ export default function SubscriptionManageCollaborators() {
return ( return (
<DefaultTemplate title="Nouvelle souscription" hasBackArrow> <DefaultTemplate title="Nouvelle souscription" hasBackArrow>
{subscription && ( {subscription && jwt && (
<div className={classes["root"]}> <div className={classes["root"]}>
<Typography typo={ITypo.H2} color={ITypoColor.BLACK}> <Typography typo={ITypo.H2} color={ITypoColor.BLACK}>
Choisissez les collaborateurs pour votre abonnement Choisissez les collaborateurs pour votre abonnement
@ -100,8 +101,9 @@ export default function SubscriptionManageCollaborators() {
checked={selectedCollaborators.includes(collaborator.uid!)} checked={selectedCollaborators.includes(collaborator.uid!)}
onChange={handleChange} onChange={handleChange}
disabled={ disabled={
selectedCollaborators.length >= subscription.nb_seats! && (selectedCollaborators.length >= subscription.nb_seats! &&
!selectedCollaborators.includes(collaborator.uid!) !selectedCollaborators.includes(collaborator.uid!)) ||
jwt.userId === collaborator.uid
} }
name="collaborators" name="collaborators"
/> />