Skip to content

Commit

Permalink
feat(core): validate field milestone for all ticket types
Browse files Browse the repository at this point in the history
ref: #285 #292
  • Loading branch information
jon-nfc committed Sep 16, 2024
1 parent 3bac0c1 commit 95f9d90
Showing 1 changed file with 39 additions and 2 deletions.
41 changes: 39 additions & 2 deletions app/core/forms/validate_ticket.py
Original file line number Diff line number Diff line change
Expand Up @@ -364,8 +364,35 @@ def field_edited(self, field:str) -> bool:

def validate_field_milestone(self):

is_valid: bool = True
is_valid: bool = False

if self.instance is not None:

if self.instance.milestone is None:

return True

else:

if self.instance.project is None:

self.combined_validation_error(
f'Milestones require a project',
code=f'milestone_requires_project',
)

return False

if self.instance.project.id == self.instance.milestone.project.id:

return True

else:

self.combined_validation_error(
f'Milestone must be from the same project',
code=f'milestone_same_project',
)

return is_valid

Expand Down Expand Up @@ -513,13 +540,23 @@ def validate_ticket(self):

validate_field_organization = True

validate_field_milestone: bool = False
if self.validate_field_milestone():

validate_field_milestone: bool = True


validate_field_status = False
if self.validate_field_status():

validate_field_status = True

if validate_field_permission and validate_field_status and validate_field_organization:
if (
validate_field_permission
and validate_field_status
and validate_field_milestone
and validate_field_organization
):
is_valid = True

return is_valid
Expand Down

0 comments on commit 95f9d90

Please sign in to comment.