|
|
|
@ -77,8 +77,12 @@ class ImportQduojHandler extends Handler {
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
if (+pdoc.display_id) pdoc.display_id = `P${pdoc.display_id}`;
|
|
|
|
|
const n = await ProblemModel.get(domainId, pdoc.display_id);
|
|
|
|
|
if (n) pdoc.display_id = null;
|
|
|
|
|
const isValidPid = async (id: string) => {
|
|
|
|
|
if (!(/^[A-Za-z]+[0-9A-Za-z]*$/.test(id))) return false;
|
|
|
|
|
if (await ProblemModel.get(domainId, id)) return false;
|
|
|
|
|
return true;
|
|
|
|
|
};
|
|
|
|
|
if (!await isValidPid(pdoc.display_id)) pdoc.display_id = null;
|
|
|
|
|
const pid = await ProblemModel.add(
|
|
|
|
|
domainId, pdoc.display_id, pdoc.title, buildContent(content, 'html'),
|
|
|
|
|
this.user._id, pdoc.tags || [],
|
|
|
|
|