Optional radio fields

This commit is contained in:
George Drummond 2019-02-01 10:37:40 -05:00
parent 4c0092a7c7
commit 305a36eef2
No known key found for this signature in database
GPG Key ID: 296DD6077123BF17
4 changed files with 13 additions and 3 deletions

View File

@ -16,6 +16,7 @@ class TaskOrderError(Exception):
class TaskOrders(object):
SECTIONS = {
"app_info": [
"portfolio_name",
"scope",
"defense_component",
"app_migration",

View File

@ -51,6 +51,7 @@ class AppInfoForm(CacheableForm):
translate("forms.task_order.native_apps.label"),
description=translate("forms.task_order.native_apps.description"),
choices=[("yes", "Yes"), ("no", "No"), ("not_sure", "Not Sure")],
default="",
validators=[Optional()],
)
complexity = SelectMultipleField(

View File

@ -67,8 +67,13 @@
<h3 class="subheading">{{ "task_orders.new.review.reporting"| translate }} {{ TOEditLink(screen=1, anchor="reporting") }}</h3>
<div class="row">
{{ ReviewField(("forms.task_order.app_migration.label" | translate), ("forms.task_order.app_migration.{}".format(task_order.app_migration) | translate), filter="removeHtml") }}
{{ ReviewField(("forms.task_order.native_apps.label" | translate), ("forms.task_order.native_apps.{}".format(task_order.native_apps))| translate) }}
{% if task_order.app_migration %}
{{ ReviewField(("forms.task_order.app_migration.label" | translate), ("forms.task_order.app_migration.{}".format(task_order.app_migration) | translate), filter="removeHtml") }}
{% endif %}
{% if task_order.native_apps %}
{{ ReviewField(("forms.task_order.native_apps.label" | translate), ("forms.task_order.native_apps.{}".format(task_order.native_apps))| translate) }}
{% endif %}
</div>
<h4 class='task-order-form__heading'>{{ "task_orders.new.review.complexity"| translate }}</h4>
@ -104,7 +109,9 @@
{% endif %}
</div>
{{ ReviewField(("forms.task_order.team_experience.label" |translate), ("forms.task_order.team_experience.{}".format(task_order.team_experience)) | translate) }}
{% if task_order.team_experience %}
{{ ReviewField(("forms.task_order.team_experience.label" |translate), ("forms.task_order.team_experience.{}".format(task_order.team_experience)) | translate) }}
{% endif %}
</div>
<hr>

View File

@ -16,6 +16,7 @@ def test_section_completion_status():
dict_keys = [k for k in TaskOrders.SECTIONS.keys()]
section = dict_keys[0]
attrs = TaskOrders.SECTIONS[section].copy()
attrs.remove("portfolio_name")
task_order = TaskOrderFactory.create(**{k: None for k in attrs})
leftover = attrs.pop()