Skip to content

Commit

Permalink
Merge pull request #29 from VelaSam/feat-option-enseignant
Browse files Browse the repository at this point in the history
Feat Option pour voir enseignant du cours et le charge du laboratoire
  • Loading branch information
imrashb authored Feb 19, 2025
2 parents a8a0bc1 + 3318b02 commit af8102e
Show file tree
Hide file tree
Showing 8 changed files with 32 additions and 25 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
## HorairÉTS

HorairÉTS est un générateur de combinaisons d'horaire pour les étudiants de [l'École de technologie supérieure](https://www.etsmtl.ca/). L'application officiel est hébergé sur [https://horairets.emmanuelcoulombe.dev/](https://horairets.emmanuelcoulombe.dev/). Cette application est séparée en deux projets différents, soit l'interface utilisateur et le backend. Pour en savoir plus sur le backend de HorairÉTS, vous pouvez le retrouver [ici](https://github.com/imrashb/horaire-ets).
HorairÉTS est un générateur de combinaisons d'horaire pour les étudiants de [l'École de technologie supérieure](https://www.etsmtl.ca/). L'application officielle est hébergée sur [https://horairets.emmanuelcoulombe.dev/](https://horairets.emmanuelcoulombe.dev/). Cette application est séparée en deux projets différents, soit l'interface utilisateur et le backend. Pour en savoir plus sur le backend de HorairÉTS, vous pouvez le retrouver [ici](https://github.com/imrashb/horaire-ets).

![horairets](public/logo.png)

Expand Down
1 change: 1 addition & 0 deletions public/locales/fr/common.json
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,7 @@
"afficherChargeCours": "Afficher les chargés de cours",
"afficherModeEnseignement": "Afficher le mode d'enseignement",
"modesEnseignements": "Présentiel, Distance, Hybride, Comodal",
"afficherEnseignant": "Afficher le chargé de l'activité de cours",
"PRESENTIEL": "Présentiel",
"DISTANCE": "Distance",
"HYBRIDE": "Hybride",
Expand Down
35 changes: 12 additions & 23 deletions src/components/CombinaisonHoraire/Activite/Activite.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,38 +12,25 @@ function Activite({
disableNomActivite,
disableLocaux,
disableModeEnseignement,
disableEnseignant,
}) {
const { t } = useTranslation('common');
return (
<ActiviteWrapper flex={flex} borderColor={borderColor} color={color}>
<div className="wrapper">
{!disableNomCours && (
<span>
<strong>
{activite?.sigle}
-
{activite?.numeroGroupe}
</strong>
</span>
)}
{
!disableModeEnseignement
&& (
<span>
{t(activite?.modeEnseignement)}
<strong>
{activite?.sigle}
-
{activite?.numeroGroupe}
</strong>
</span>
)
}
{!disableNomActivite && (
<span>
{activite?.nom}
</span>
)}
{!disableLocaux && (
<span>
{activite?.locaux?.join(',')}
</span>
)}
{!disableModeEnseignement && <span>{t(activite?.modeEnseignement)}</span>}
{!disableEnseignant && <span>{t(activite?.charges?.join(','))}</span>}
{!disableNomActivite && <span>{activite?.nom}</span>}
{!disableLocaux && <span>{activite?.locaux?.join(',')}</span>}
</div>
</ActiviteWrapper>
);
Expand All @@ -59,13 +46,15 @@ Activite.propTypes = {
disableNomActivite: PropTypes.bool,
disableLocaux: PropTypes.bool,
disableModeEnseignement: PropTypes.bool,
disableEnseignant: PropTypes.bool,
};

Activite.defaultProps = {
disableNomCours: false,
disableNomActivite: false,
disableLocaux: false,
disableModeEnseignement: true,
disableEnseignant: true,
};

export default Activite;
2 changes: 2 additions & 0 deletions src/components/CombinaisonHoraire/CombinaisonHoraire.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ function CombinaisonHoraire({
disableNomActivite,
disableLocaux,
disableModeEnseignement,
disableEnseignant,
combinaison,
forceLegacyColors,
}) {
Expand Down Expand Up @@ -43,6 +44,7 @@ function CombinaisonHoraire({
disableNomCours={disableNomCours}
disableLocaux={disableLocaux}
disableModeEnseignement={disableModeEnseignement}
disableEnseignant={disableEnseignant}
forceLegacyColors={forceLegacyColors}
/>
</Grid>
Expand Down
4 changes: 4 additions & 0 deletions src/components/CombinaisonHoraire/Jour.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ function Jour({
disableNomActivite,
disableLocaux,
disableModeEnseignement,
disableEnseignant,
forceLegacyColors,
}) {
const { t } = useTranslation('common');
Expand Down Expand Up @@ -80,6 +81,7 @@ function Jour({
disableNomCours={disableNomCours}
disableLocaux={disableLocaux}
disableModeEnseignement={disableModeEnseignement}
disableEnseignant={disableEnseignant}
/>
);
};
Expand Down Expand Up @@ -134,6 +136,7 @@ Jour.propTypes = {
disableNomActivite: PropTypes.bool,
disableLocaux: PropTypes.bool,
disableModeEnseignement: PropTypes.bool,
disableEnseignant: PropTypes.bool,
forceLegacyColors: PropTypes.bool,
};

Expand All @@ -143,6 +146,7 @@ Jour.defaultProps = {
disableNomActivite: false,
disableLocaux: false,
disableModeEnseignement: true,
disableEnseignant: true,
forceLegacyColors: false,
};

Expand Down
4 changes: 4 additions & 0 deletions src/features/affichage/affichage.slice.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ const initialState = {
showLocaux: true,
showUniqueCoursColors: true,
showModeEnseignement: false,
showEnseignant: false,
};

const AFFICHAGE_SLICE = 'affichage';
Expand All @@ -22,6 +23,7 @@ const affichageSlice = createSlice({
state.showNomActivite = action.payload.showNomActivite;
state.showUniqueCoursColors = action.payload.showUniqueCoursColors;
state.showModeEnseignement = action.payload.showModeEnseignement;
state.showEnseignant = action.payload.showEnseignant;
},
},
});
Expand All @@ -42,4 +44,6 @@ export const selectShowUniqueCoursColors = (state) => state.affichage.showUnique

export const selectShowModeEnseignement = (state) => state.affichage.showModeEnseignement;

export const selectShowEnseignant = (state) => state.affichage.showEnseignant;

export default affichageSlice;
4 changes: 3 additions & 1 deletion src/pages/GenerateurHoraire/Combinaisons/Combinaisons.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import { selectRawCombinaisons, selectView } from '../../../features/generateur/
import CombinaisonsWrapper from './Combinaisons.styles';
import FavoriteButton from './FavoriteButton';
import {
selectShowEnseignant,
selectShowLocaux,
selectShowModeEnseignement,
selectShowNomActivite,
Expand All @@ -35,6 +36,7 @@ function Combinaisons({ combinaisons }) {
const showNomActivite = useSelector(selectShowNomActivite);
const showLocaux = useSelector(selectShowLocaux);
const showModeEnseignement = useSelector(selectShowModeEnseignement);
const showEnseignant = useSelector(selectShowEnseignant);

const isGrid = view === GENERATEUR_GRID_VIEW;

Expand Down Expand Up @@ -123,7 +125,7 @@ function Combinaisons({ combinaisons }) {
disableNomActivite={!showNomActivite}
disableNomCours={!showNomCoursGroupe}
disableModeEnseignement={!showModeEnseignement}
disble
disableEnseignant={!showEnseignant}
/>
</Grid>
),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import { useTranslation } from 'react-i18next';
import { useDispatch, useSelector } from 'react-redux';
import ButtonDialog from '../../../../components/ButtonDialog/ButtonDialog';
import {
selectShowEnseignant,
selectShowLocaux,
selectShowModeEnseignement,
selectShowNomActivite,
Expand Down Expand Up @@ -48,12 +49,14 @@ function AffichageCombinaisons() {
const showNomActiviteGlobal = useSelector(selectShowNomActivite);
const showUniqueCoursColorsGlobal = useSelector(selectShowUniqueCoursColors);
const showModeEnseignementGlobal = useSelector(selectShowModeEnseignement);
const showEnseignantGlobal = useSelector(selectShowEnseignant);

const [showNomCoursGroupe, setShowNomCoursGroupe] = useState(showNomCoursGroupeGlobal);
const [showLocaux, setShowLocaux] = useState(showLocauxGlobal);
const [showNomActivite, setShowNomActivite] = useState(showNomActiviteGlobal);
const [showUniqueCoursColors, setShowUniqueCoursColors] = useState(showUniqueCoursColorsGlobal);
const [showModeEnseignement, setShowModeEnseignement] = useState(showModeEnseignementGlobal);
const [showEnseignant, setShowEnseignant] = useState(showEnseignantGlobal);

const onClose = () => {
dispatch(setAffichageCombinaisons({
Expand All @@ -62,6 +65,7 @@ function AffichageCombinaisons() {
showNomActivite,
showUniqueCoursColors,
showModeEnseignement,
showEnseignant,
}));
};

Expand All @@ -74,6 +78,7 @@ function AffichageCombinaisons() {
{getCheckbox(t('afficherLocaux'), showLocaux, setShowLocaux)}
{getCheckbox(t('afficherTypeActivite'), showNomActivite, setShowNomActivite, t('typesActivites'))}
{getCheckbox(t('afficherModeEnseignement'), showModeEnseignement, setShowModeEnseignement, t('modesEnseignements'))}
{getCheckbox(t('afficherEnseignant'), showEnseignant, setShowEnseignant)}
{getCheckbox(t('afficherCouleursCoursUniques'), showUniqueCoursColors, setShowUniqueCoursColors)}
<Divider />
</ButtonDialog>
Expand Down

0 comments on commit af8102e

Please sign in to comment.