-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfix_create.cjs
More file actions
23 lines (19 loc) · 1.21 KB
/
Copy pathfix_create.cjs
File metadata and controls
23 lines (19 loc) · 1.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
const fs = require("fs");
let c = fs.readFileSync("src/pages/CreateTest.jsx", "utf8");
c = c.replace(/const \[file\, setFile\] = useState\(null\);/, `const [file, setFile] = useState(null);\n const [allowedEmails, setAllowedEmails] = useState('');`);
c = c.replace(/createdAt: serverTimestamp\(\),/, `createdAt: serverTimestamp(),\n allowedEmails: allowedEmails.split(',').map(e => e.trim()).filter(e => e),`);
c = c.replace(/<div className="space-y-6">/, `<div className="space-y-6">
<div>
<label className="block text-sm font-medium text-gray-700 dark:text-gray-300 mb-2">
Allowed Students (Emails) - Optional
</label>
<textarea
value={allowedEmails}
onChange={(e) => setAllowedEmails(e.target.value)}
placeholder="student1@example.com, student2@example.com (Leave blank to allow anyone)"
className="w-full px-4 py-2 border border-gray-300 dark:border-gray-600 rounded-lg bg-white dark:bg-gray-700 text-gray-900 dark:text-white"
rows="2"
></textarea>
</div>`);
fs.writeFileSync("src/pages/CreateTest.jsx", c);
console.log("Fixed CreateTest");