Name fields
This commit is contained in:
+11
-4
@@ -12,12 +12,19 @@ class SignupSerializer(serializers.ModelSerializer):
|
||||
|
||||
def add_extra_fields(self, validated_data):
|
||||
questions = validated_data["signupForm"].questions
|
||||
validated_data["list_name"] = validated_data["answer"].get(questions[0]["id"], "")
|
||||
name_ids = list(filter(lambda x: x["type"] == "name", questions))
|
||||
email_ids = list(filter(lambda x: x["type"] == "email", questions))
|
||||
|
||||
email_fields = list(filter(lambda x: x["type"] == "email", questions))
|
||||
if (len(email_fields) > 0):
|
||||
email_value = validated_data["answer"].get(email_fields[0]["id"], None)
|
||||
# Send email to first email field in the form
|
||||
if (len(email_ids) > 0):
|
||||
id = email_ids[0]["id"]
|
||||
email_value = validated_data["answer"].get(id)
|
||||
validated_data["email"] = email_value
|
||||
# Combine all name fields to list_name
|
||||
if (len(name_ids) > 0):
|
||||
# name_value = validated_data["answer"].get(name_fields[0]["id"], None)
|
||||
all_names = map(lambda x: validated_data["answer"].get(x["id"]), name_ids)
|
||||
validated_data["list_name"] = " ".join(all_names)
|
||||
|
||||
def create(self, validated_data):
|
||||
self.add_extra_fields(validated_data)
|
||||
|
||||
@@ -39,6 +39,7 @@ CBOX_SCHEMA = {
|
||||
"minProperties": 1
|
||||
}
|
||||
|
||||
|
||||
def createSignupForm(name="Form1", start_time=timezone.now(), end_time=month_from_now(), questions=ALL_QUESTION_TYPES, schema=ALL_QUESTIONS_SCHEMA, visible=True):
|
||||
return SignupForm.objects.create(
|
||||
title=name,
|
||||
|
||||
Reference in New Issue
Block a user