Skip to content

Commit ddffc12

Browse files
Merge pull request #106 from OpenSIST/dev
fix bug that when adding or modifying programs of TU/e, the redirecting will crush
2 parents bcc40c9 + d1503ca commit ddffc12

2 files changed

Lines changed: 7 additions & 6 deletions

File tree

src/Components/Favorites/ProgramCard.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ const ProgramCard = ({ program }) => {
6262
}}
6363
onClick={() =>
6464
navigate(
65-
`/favorites/${program.ProgramID}${window.location.search}`
65+
`/favorites/${encodeURIComponent(program.ProgramID)}${window.location.search}`
6666
)
6767
}
6868
>

src/Components/Modify/Program/AddModifyProgram.jsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ export async function action({request}) {
4747
}
4848
};
4949
await addModifyProgram(requestBody);
50-
return redirect(`/programs/${ProgramID}`)
50+
return redirect(`/programs/${encodeURIComponent(ProgramID)}`)
5151
}
5252

5353
export default function AddModifyProgram({type}) {
@@ -60,7 +60,7 @@ export default function AddModifyProgram({type}) {
6060
const [univ, setUniv] = useState(univOptions.find((univ) => univ.value === programContent?.University) ?? null);
6161
const [major, setMajor] = useState(majorOptions.filter((m) => programContent?.TargetApplicantMajor.includes(m.value)) ?? []);
6262
const [programName, setProgramName] = useState(programContent?.Program ?? '');
63-
const programNameInvalid = ['@', '|', '/', '$', '\\', '?', '!'].some(char => programName.includes(char));
63+
// const programNameInvalid = ['@', '|', '/', '$', '\\', '?', '!'].some(char => programName.includes(char));
6464
return (
6565
<Form method="post"
6666
style={{display: 'flex', flexDirection: 'column', height: "100%"}}
@@ -105,8 +105,8 @@ export default function AddModifyProgram({type}) {
105105
label={"项目名称" + (AddMode ? "" : " (不可修改)")}
106106
value={programName}
107107
onChange={(event) => setProgramName(event.target.value)}
108-
error={programNameInvalid}
109-
helperText={programNameInvalid ? "项目名称中不可包含@, |, /, \\, ?, !, $,如果必须要使用'/'字符,请用'&'代替" : ""}
108+
// error={programNameInvalid}
109+
// helperText={programNameInvalid ? "项目名称中不可包含@, |, /, \\, ?, !, $,如果必须要使用'/'字符,请用'&'代替" : ""}
110110
placeholder="硕士写简称 (e.g. MSCS),博士要加院系 (e.g. EECS PhD)"
111111
sx={AddMode ? {} : {color: 'gray', cursor: 'not-allowed', pointerEvents: 'none'}}
112112
fullWidth
@@ -194,7 +194,8 @@ export default function AddModifyProgram({type}) {
194194
<MarkDownEditor Description={Description} setDescription={setDescription}/>
195195
<textarea id='Description' name='Description' hidden={true} value={Description} readOnly/>
196196
<ButtonGroup sx={{mt: '1vh'}}>
197-
<Button type="submit" disabled={programNameInvalid}> 提交 </Button>
197+
{/*<Button type="submit" disabled={programNameInvalid}> 提交 </Button>*/}
198+
<Button type="submit"> 提交 </Button>
198199
<Button onClick={() => navigate("..")}> 取消 </Button>
199200
</ButtonGroup>
200201
</Form>

0 commit comments

Comments
 (0)