diff --git a/CTFd/auth.py b/CTFd/auth.py index cac5ef11..44aa40ea 100644 --- a/CTFd/auth.py +++ b/CTFd/auth.py @@ -262,7 +262,10 @@ def register(): if field.required is True and (value is None or value == ""): errors.append("Please provide all required fields") break - entries[field_id] = value + if field.field_type == "boolean": + entries[field_id] = bool(value) + else: + entries[field_id] = value if len(errors) > 0: return render_template( diff --git a/CTFd/models/__init__.py b/CTFd/models/__init__.py index e48d5004..11e03090 100644 --- a/CTFd/models/__init__.py +++ b/CTFd/models/__init__.py @@ -823,7 +823,7 @@ class FieldEntries(db.Model): __tablename__ = "field_entries" id = db.Column(db.Integer, primary_key=True) type = db.Column(db.String(80), default="standard") - value = db.Column(db.Text) + value = db.Column(db.JSON) field_id = db.Column(db.Integer, db.ForeignKey("fields.id", ondelete="CASCADE")) field = db.relationship(