Skip to content

Commit

Permalink
add user quotas param on profiles (#35)
Browse files Browse the repository at this point in the history
Signed-off-by: Abdelsalem <[email protected]>
  • Loading branch information
AbdelHedhili authored Jun 21, 2024
1 parent 664aee0 commit c172234
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import ProfileModificationForm, {
LF_PARAM_ID,
PROFILE_NAME,
USER_QUOTAS,
} from './profile-modification-form';
import yup from 'utils/yup-config';
import { yupResolver } from '@hookform/resolvers/yup';
Expand Down Expand Up @@ -50,6 +51,7 @@ const ProfileModificationDialog: FunctionComponent<
.shape({
[PROFILE_NAME]: yup.string().trim().required('nameEmpty'),
[LF_PARAM_ID]: yup.string().optional(),
[USER_QUOTAS]: yup.number().nullable(),
})
.required();

Expand All @@ -66,6 +68,7 @@ const ProfileModificationDialog: FunctionComponent<
id: profileId,
name: profileFormData[PROFILE_NAME],
loadFlowParameterId: profileFormData[LF_PARAM_ID],
maxAllowedCases: profileFormData[USER_QUOTAS],
};
modifyProfile(profileData)
.catch((error) => {
Expand Down Expand Up @@ -98,6 +101,7 @@ const ProfileModificationDialog: FunctionComponent<
[LF_PARAM_ID]: response.loadFlowParameterId
? response.loadFlowParameterId
: undefined,
[USER_QUOTAS]: response.maxAllowedCases,
});
})
.catch((error) => {
Expand Down
19 changes: 18 additions & 1 deletion src/pages/profiles/modification/profile-modification-form.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,15 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/

import { ElementType, TextInput } from '@gridsuite/commons-ui';
import { ElementType, IntegerInput, TextInput } from '@gridsuite/commons-ui';
import Grid from '@mui/material/Grid';
import ParameterSelection from './parameter-selection';
import { FormattedMessage } from 'react-intl';
import React, { FunctionComponent } from 'react';

export const PROFILE_NAME = 'name';
export const LF_PARAM_ID = 'lfParamId';
export const USER_QUOTAS = 'userQuotas';

const ProfileModificationForm: FunctionComponent = () => {
return (
Expand All @@ -37,6 +38,22 @@ const ProfileModificationForm: FunctionComponent = () => {
parameterFormId={LF_PARAM_ID}
/>
</Grid>
<Grid item xs={12}>
<h3>
<FormattedMessage
id={'profiles.form.modification.userQuotas'}
/>
</h3>
</Grid>
<Grid item xs={12}>
<Grid item xs={5}>
<IntegerInput
name={USER_QUOTAS}
label="profiles.form.modification.numberOfCasesOrStudies"
clearable={true}
/>
</Grid>
</Grid>
</Grid>
);
};
Expand Down
1 change: 1 addition & 0 deletions src/services/user-admin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,7 @@ export type UserProfile = {
name: string;
allParametersLinksValid?: boolean;
loadFlowParameterId?: UUID;
maxAllowedCases?: number;
};

export function fetchProfiles(): Promise<UserProfile[]> {
Expand Down
2 changes: 2 additions & 0 deletions src/translations/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@

"profiles.form.modification.title": "Edit profile",
"profiles.form.modification.defaultParameters": "Default parameters",
"profiles.form.modification.userQuotas": "User quotas",
"profiles.form.modification.numberOfCasesOrStudies": "Number of cases or studies",
"profiles.form.modification.parameter.choose.tooltip": "Choose parameters",
"profiles.form.modification.parameter.reset.tooltip": "Set undefined parameters",
"profiles.form.modification.parameterSelection.dialog.title": "Choose parameters",
Expand Down
2 changes: 2 additions & 0 deletions src/translations/fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,8 @@

"profiles.form.modification.title": "Modifier profil",
"profiles.form.modification.defaultParameters": "Paramètres par défaut",
"profiles.form.modification.userQuotas": "Quotas utilisateur",
"profiles.form.modification.numberOfCasesOrStudies": "Nombre de situations ou d'études",
"profiles.form.modification.parameter.choose.tooltip": "Choisir paramètres",
"profiles.form.modification.parameter.reset.tooltip": "Ne pas définir de paramètres",
"profiles.form.modification.parameterSelection.dialog.title": "Choisir des paramètres",
Expand Down

0 comments on commit c172234

Please sign in to comment.