Do not require portfolio name and defense component when building a new TO from a portfolio
This commit is contained in:
parent
3c21857c97
commit
85fcee005e
@ -27,26 +27,11 @@ from .data import (
|
|||||||
from atst.utils.localization import translate
|
from atst.utils.localization import translate
|
||||||
|
|
||||||
|
|
||||||
class AppInfoForm(BaseForm):
|
class AppInfoWithExistingPortfolioForm(BaseForm):
|
||||||
portfolio_name = StringField(
|
|
||||||
translate("forms.task_order.portfolio_name_label"),
|
|
||||||
description=translate("forms.task_order.portfolio_name_description"),
|
|
||||||
validators=[
|
|
||||||
Required(),
|
|
||||||
Length(
|
|
||||||
min=4,
|
|
||||||
max=100,
|
|
||||||
message=translate("forms.portfolio.name_length_validation_message"),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
)
|
|
||||||
scope = TextAreaField(
|
scope = TextAreaField(
|
||||||
translate("forms.task_order.scope_label"),
|
translate("forms.task_order.scope_label"),
|
||||||
description=translate("forms.task_order.scope_description"),
|
description=translate("forms.task_order.scope_description"),
|
||||||
)
|
)
|
||||||
defense_component = SelectField(
|
|
||||||
translate("forms.task_order.defense_component_label"), choices=SERVICE_BRANCHES
|
|
||||||
)
|
|
||||||
app_migration = RadioField(
|
app_migration = RadioField(
|
||||||
translate("forms.task_order.app_migration.label"),
|
translate("forms.task_order.app_migration.label"),
|
||||||
description=translate("forms.task_order.app_migration.description"),
|
description=translate("forms.task_order.app_migration.description"),
|
||||||
@ -88,6 +73,24 @@ class AppInfoForm(BaseForm):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
class AppInfoForm(AppInfoWithExistingPortfolioForm):
|
||||||
|
portfolio_name = StringField(
|
||||||
|
translate("forms.task_order.portfolio_name_label"),
|
||||||
|
description=translate("forms.task_order.portfolio_name_description"),
|
||||||
|
validators=[
|
||||||
|
Required(),
|
||||||
|
Length(
|
||||||
|
min=4,
|
||||||
|
max=100,
|
||||||
|
message=translate("forms.portfolio.name_length_validation_message"),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
defense_component = SelectField(
|
||||||
|
translate("forms.task_order.defense_component_label"), choices=SERVICE_BRANCHES
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
class FundingForm(BaseForm):
|
class FundingForm(BaseForm):
|
||||||
performance_length = SelectField(
|
performance_length = SelectField(
|
||||||
translate("forms.task_order.performance_length.label"),
|
translate("forms.task_order.performance_length.label"),
|
||||||
|
@ -92,6 +92,10 @@ class ShowTaskOrderWorkflow:
|
|||||||
|
|
||||||
return self._form
|
return self._form
|
||||||
|
|
||||||
|
@form.setter
|
||||||
|
def form(self, value):
|
||||||
|
self._form = value
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def template(self):
|
def template(self):
|
||||||
return self._section["template"]
|
return self._section["template"]
|
||||||
@ -137,6 +141,8 @@ class UpdateTaskOrderWorkflow(ShowTaskOrderWorkflow):
|
|||||||
|
|
||||||
@property
|
@property
|
||||||
def form(self):
|
def form(self):
|
||||||
|
if self.screen == 1 and self.portfolio_id:
|
||||||
|
return task_order_form.AppInfoWithExistingPortfolioForm()
|
||||||
return self._form
|
return self._form
|
||||||
|
|
||||||
@property
|
@property
|
||||||
@ -222,6 +228,8 @@ def new(screen, task_order_id=None, portfolio_id=None):
|
|||||||
|
|
||||||
if portfolio_id:
|
if portfolio_id:
|
||||||
template_args["portfolio"] = Portfolios.get(g.current_user, portfolio_id)
|
template_args["portfolio"] = Portfolios.get(g.current_user, portfolio_id)
|
||||||
|
if screen == 1:
|
||||||
|
workflow.form = task_order_form.AppInfoWithExistingPortfolioForm()
|
||||||
|
|
||||||
url_args = {"screen": screen}
|
url_args = {"screen": screen}
|
||||||
if task_order_id:
|
if task_order_id:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user