File tree Expand file tree Collapse file tree 1 file changed +7
-12
lines changed
injection/teacher-login-6 Expand file tree Collapse file tree 1 file changed +7
-12
lines changed Original file line number Diff line number Diff line change @@ -29,20 +29,15 @@ def login():
29
29
def add():
30
30
username = flask.request.form.get("user", "")
31
31
32
- try:
33
- tree = ET.parse("users.xml")
34
- root = tree.getroot()
35
- except Exception:
36
- root = ET.Element("users")
37
- tree = ET.ElementTree(root)
32
+ current = open("users.xml").read().strip() or "<users></users>"
38
33
39
- new_user = ET.SubElement(root, "user")
40
- name_el = ET.SubElement(new_user, "username")
41
- name_el.text = username
42
- is_teacher_el = ET.SubElement(new_user, "is_teacher")
43
- is_teacher_el.text = "no"
34
+ if current.endswith("</users>"):
35
+ current_body = current[:-8]
36
+ else:
37
+ current_body = "<users>"
44
38
45
- tree.write("users.xml")
39
+ new_entry = f"""<user><username>{username}</username><is_teacher>no</is_teacher></user>"""
40
+ open("users.xml", "w").write(f"{current_body}{new_entry}</users>")
46
41
return flask.redirect("/")
47
42
48
43
@app.route("/", methods=["GET"])
You can’t perform that action at this time.
0 commit comments