def _try_to_close_milestone_when_delete_task(instance): from taiga.projects.milestones import services with suppress(ObjectDoesNotExist): if instance.milestone_id and services.calculate_milestone_is_closed( instance.milestone): services.close_milestone(instance.milestone)
def _try_to_close_milestone_when_delete_us(instance): if instance._importing: return from taiga.projects.milestones import services as milestone_service with suppress(ObjectDoesNotExist): if instance.milestone_id and milestone_service.calculate_milestone_is_closed(instance.milestone): milestone_service.close_milestone(instance.milestone)
def _recalculate_is_closed_for_milestone(milestone): """ Check and update the open or closed condition for the milestone. NOTE: [1] This method is useful if the userstory update operation has been done without using the ORM (pre_save/post_save model signals). """ from taiga.projects.milestones import services as milestone_service # Update is_close attr for the milestone if milestone_service.calculate_milestone_is_closed(milestone): milestone_service.close_milestone(milestone) else: milestone_service.open_milestone(milestone)
def _try_to_close_or_open_milestone_when_create_or_edit_task(instance): from taiga.projects.milestones import services as milestone_service if instance.milestone_id: if milestone_service.calculate_milestone_is_closed(instance.milestone): milestone_service.close_milestone(instance.milestone) else: milestone_service.open_milestone(instance.milestone) if instance.prev and instance.prev.milestone_id and instance.prev.milestone_id != instance.milestone_id: if milestone_service.calculate_milestone_is_closed(instance.prev.milestone): milestone_service.close_milestone(instance.prev.milestone) else: milestone_service.open_milestone(instance.prev.milestone)
def _try_to_close_or_open_milestone_when_create_or_edit_task(instance): from taiga.projects.milestones import services as milestone_service if instance.milestone_id: if milestone_service.calculate_milestone_is_closed(instance.milestone): milestone_service.close_milestone(instance.milestone) else: milestone_service.open_milestone(instance.milestone) if instance.prev and instance.prev.milestone_id and instance.prev.milestone_id != instance.milestone_id: if milestone_service.calculate_milestone_is_closed(instance.prev.milestone): milestone_service.close_milestone(instance.prev.milestone) else: milestone_service.open_milestone(instance.prev.milestone)
def _update_open_or_close_conditions_if_status_has_been_changed(userstory): """ Check and update the open or closed condition for the userstory and its milestone. NOTE: [1] This method is useful if the userstory update operation has been done without using the ORM (pre_save/post_save model signals). [2] Do not use it if the milestone has been previously updated. """ has_changed = False if calculate_userstory_is_closed(userstory): has_changed = close_userstory(userstory) else: has_changed = open_userstory(userstory) if has_changed and userstory.milestone_id: from taiga.projects.milestones import services as milestone_service if milestone_service.calculate_milestone_is_closed( userstory.milestone): milestone_service.close_milestone(userstory.milestone) else: milestone_service.open_milestone(userstory.milestone)
def _try_to_close_milestone_when_delete_task(instance): from taiga.projects.milestones import services with suppress(ObjectDoesNotExist): if instance.milestone_id and services.calculate_milestone_is_closed(instance.milestone): services.close_milestone(instance.milestone)
def _try_to_close_milestone_when_delete_us(instance): from taiga.projects.milestones import services as milestone_service if instance.milestone_id and milestone_service.calculate_milestone_is_closed(instance.milestone): milestone_service.close_milestone(instance.milestone)