Rename field names

This commit is contained in:
Kevin Chung
2020-08-15 14:09:55 -04:00
parent b0f85aef26
commit 682caba26f
5 changed files with 11 additions and 11 deletions

View File

@@ -307,10 +307,9 @@ class UserPrivate(Resource):
from CTFd.models import FieldEntries
fields = data.get("fields")
for k, v in fields.items():
field_id = int(k.split('-')[1])
e = FieldEntries.query.filter_by(field_id=field_id, user_id=session["id"]).first()
e.value = v
for field_id, value in fields.items():
e = FieldEntries.query.filter_by(field_id=field_id, user_id=user.id).first()
e.value = value
db.session.commit()

View File

@@ -260,7 +260,7 @@ def register():
entries = {}
for field_id, field in fields.items():
value = request.form.get(f"field-{field_id}", "").strip()
value = request.form.get(f"fields[{field_id}]", "").strip()
if field.required is True and (value is None or value == ""):
errors.append("Please enter in all required fields")
entries[field_id] = value

View File

@@ -19,13 +19,13 @@ def RegistrationForm(*args, **kwargs):
fields = []
new_fields = Fields.query.all()
for field in new_fields:
entry = (field.name, getattr(self, f"field-{field.id}"))
entry = (field.name, getattr(self, f"fields[{field.id}]"))
fields.append(entry)
return fields
new_fields = Fields.query.all()
for field in new_fields:
setattr(_RegistrationForm, f"field-{field.id}", StringField(field.name))
setattr(_RegistrationForm, f"fields[{field.id}]", StringField(field.name))
return _RegistrationForm(*args, **kwargs)

View File

@@ -29,7 +29,7 @@ def SettingsForm(*args, **kwargs):
user_fields[f.field_id] = f.value
for field in new_fields:
form_field = getattr(self, f"field-{field.id}")
form_field = getattr(self, f"fields[{field.id}]")
form_field.data = user_fields.get(field.id, "")
entry = (field.name, form_field)
fields.append(entry)
@@ -37,7 +37,7 @@ def SettingsForm(*args, **kwargs):
new_fields = Fields.query.all()
for field in new_fields:
setattr(_SettingsForm, f"field-{field.id}", StringField(field.name))
setattr(_SettingsForm, f"fields[{field.id}]", StringField(field.name))
return _SettingsForm(*args, **kwargs)

View File

@@ -27,8 +27,9 @@ function profileUpdate(event) {
params.fields = {}
for (const property in params) {
if (property.startsWith("field-")) {
params.fields[property] = params[property];
if( property.match(/fields\[\d+\]/)) {
let id = property.slice(7, -1);
params.fields[id] = params[property];
delete params[property];
}
}