Name fields
This commit is contained in:
+11
-4
@@ -12,12 +12,19 @@ class SignupSerializer(serializers.ModelSerializer):
|
|||||||
|
|
||||||
def add_extra_fields(self, validated_data):
|
def add_extra_fields(self, validated_data):
|
||||||
questions = validated_data["signupForm"].questions
|
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))
|
# Send email to first email field in the form
|
||||||
if (len(email_fields) > 0):
|
if (len(email_ids) > 0):
|
||||||
email_value = validated_data["answer"].get(email_fields[0]["id"], None)
|
id = email_ids[0]["id"]
|
||||||
|
email_value = validated_data["answer"].get(id)
|
||||||
validated_data["email"] = email_value
|
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):
|
def create(self, validated_data):
|
||||||
self.add_extra_fields(validated_data)
|
self.add_extra_fields(validated_data)
|
||||||
|
|||||||
@@ -39,6 +39,7 @@ CBOX_SCHEMA = {
|
|||||||
"minProperties": 1
|
"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):
|
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(
|
return SignupForm.objects.create(
|
||||||
title=name,
|
title=name,
|
||||||
|
|||||||
Reference in New Issue
Block a user