diff --git a/atst/forms/ko_review.py b/atst/forms/ko_review.py index 51ff7fba..4081b5a3 100644 --- a/atst/forms/ko_review.py +++ b/atst/forms/ko_review.py @@ -1,15 +1,36 @@ +import pendulum from flask_wtf.file import FileAllowed +from wtforms.fields.html5 import DateField from wtforms.fields import StringField, TextAreaField, FileField from wtforms.validators import Optional, Length, InputRequired from .forms import CacheableForm -from .validators import IsNumber +from .validators import IsNumber, DateRange from atst.utils.localization import translate class KOReviewForm(CacheableForm): + start_date = DateField( + translate("forms.ko_review.start_date_label"), + validators=[ + DateRange( + lower_bound=pendulum.duration(days=0), + message=translate("forms.ko_review.invalid_date"), + ) + ], + ) + end_date = DateField( + translate("forms.ko_review.end_date_label"), + validators=[ + DateRange( + lower_bound=pendulum.duration(days=0), + message=translate("forms.ko_review.invalid_date"), + ) + ], + format="%m/%d/%Y", + ) pdf = FileField( translate("forms.ko_review.pdf_label"), description=translate("forms.ko_review.pdf_description"), @@ -17,7 +38,6 @@ class KOReviewForm(CacheableForm): FileAllowed( ["pdf", "png"], translate("forms.task_order.file_format_not_allowed") ), - InputRequired(), ], render_kw={"required": False, "accept": ".pdf,.png,application/pdf,image/png"}, ) diff --git a/atst/routes/portfolios/task_orders.py b/atst/routes/portfolios/task_orders.py index e7c50fac..7d01f190 100644 --- a/atst/routes/portfolios/task_orders.py +++ b/atst/routes/portfolios/task_orders.py @@ -90,14 +90,10 @@ def submit_ko_review(portfolio_id, task_order_id, form=None): task_order = TaskOrders.get(g.current_user, task_order_id) form = KOReviewForm(http_request.form) portfolio = Portfolios.get(g.current_user, portfolio_id) - # import ipdb - - # ipdb.set_trace() if form.validate(): form_data = {**http_request.form, **http_request.files} - # add form data to TO data - import ipdb; ipdb.set_trace() + TaskOrders.update(user=g.current_user, task_order=task_order, **form_data) return redirect( url_for( "portfolios.view_task_order", @@ -107,7 +103,6 @@ def submit_ko_review(portfolio_id, task_order_id, form=None): ) ) else: - # stay on the page and fix the fields that didnt validate return render_template( "/portfolios/task_orders/review.html", portfolio=portfolio, diff --git a/templates/portfolios/task_orders/review.html b/templates/portfolios/task_orders/review.html index e399df65..97b8d00d 100644 --- a/templates/portfolios/task_orders/review.html +++ b/templates/portfolios/task_orders/review.html @@ -31,8 +31,6 @@
{{ field | findFilter(filter) }}
- {% else %} - {{ RequiredLabel() }} {% endif %} {% if caller %} {{ caller() }} @@ -47,8 +45,6 @@ {{ email }}{{ RequiredLabel() }}
{% endif %}{{ RequiredLabel() }}
{% endif %}