mirror of https://github.com/Hoffelhas/autodoist
Additional testing of labelling logic
parent
e9b2dd6f21
commit
aa274d5132
48
autodoist.py
48
autodoist.py
|
@ -817,6 +817,19 @@ def find_and_clean_all_children(task_ids, task, section_tasks):
|
||||||
|
|
||||||
return task_ids
|
return task_ids
|
||||||
|
|
||||||
|
# Logic to pass label data
|
||||||
|
|
||||||
|
def label_according_to_type(hierarchy_type, first_found, connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels):
|
||||||
|
|
||||||
|
if hierarchy_type == 'sequential' or hierarchy_type == 's-p':
|
||||||
|
if not first_found:
|
||||||
|
add_label(
|
||||||
|
connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
||||||
|
first_found = True
|
||||||
|
elif hierarchy_type == 'parallel' or hierarchy_type == 'p-s':
|
||||||
|
add_label(
|
||||||
|
connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
||||||
|
|
||||||
|
|
||||||
# Contains all main autodoist functionalities
|
# Contains all main autodoist functionalities
|
||||||
|
|
||||||
|
@ -931,10 +944,16 @@ def autodoist_magic(args, api, connection):
|
||||||
|
|
||||||
# For all tasks in this section
|
# For all tasks in this section
|
||||||
for task in section_tasks:
|
for task in section_tasks:
|
||||||
dominant_type = None # Reset
|
|
||||||
|
# Reset
|
||||||
|
dominant_type = None
|
||||||
|
|
||||||
|
# Check db existance
|
||||||
db_check_existance(connection, task)
|
db_check_existance(connection, task)
|
||||||
|
|
||||||
|
# To determine if a sequential task was found
|
||||||
|
first_found_tasks = False
|
||||||
|
|
||||||
# Determine which child_tasks exist, both all and the ones that have not been checked yet
|
# Determine which child_tasks exist, both all and the ones that have not been checked yet
|
||||||
non_completed_tasks = list(
|
non_completed_tasks = list(
|
||||||
filter(lambda x: not x.is_completed, section_tasks))
|
filter(lambda x: not x.is_completed, section_tasks))
|
||||||
|
@ -1005,40 +1024,25 @@ def autodoist_magic(args, api, connection):
|
||||||
if hierarchy_boolean[0]:
|
if hierarchy_boolean[0]:
|
||||||
# Inherit task type
|
# Inherit task type
|
||||||
dominant_type = task_type
|
dominant_type = task_type
|
||||||
add_label(
|
label_according_to_type(task_type , first_found_tasks, connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
||||||
connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
|
||||||
|
|
||||||
elif hierarchy_boolean[1]:
|
elif hierarchy_boolean[1]:
|
||||||
# Inherit section type
|
# Inherit section type
|
||||||
dominant_type = section_type
|
dominant_type = section_type
|
||||||
|
label_according_to_type(section_type, first_found_section, connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
||||||
if section_type == 'sequential' or section_type == 's-p':
|
|
||||||
if not first_found_section:
|
|
||||||
add_label(
|
|
||||||
connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
|
||||||
first_found_section = True
|
|
||||||
elif section_type == 'parallel' or section_type == 'p-s':
|
|
||||||
add_label(
|
|
||||||
connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
|
||||||
|
|
||||||
elif hierarchy_boolean[2]:
|
elif hierarchy_boolean[2]:
|
||||||
# Inherit project type
|
# Inherit project type
|
||||||
dominant_type = project_type
|
dominant_type = project_type
|
||||||
|
label_according_to_type(project_type, first_found_project, connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
||||||
if project_type == 'sequential' or project_type == 's-p':
|
|
||||||
if not first_found_project:
|
|
||||||
add_label(
|
|
||||||
connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
|
||||||
first_found_project = True
|
|
||||||
|
|
||||||
elif project_type == 'parallel' or project_type == 'p-s':
|
|
||||||
add_label(
|
|
||||||
connection, task, dominant_type, next_action_label, overview_task_ids, overview_task_labels)
|
|
||||||
else:
|
else:
|
||||||
# Parentless task has no type, so skip any children.
|
# Parentless task has no type, so skip any children.
|
||||||
continue
|
continue
|
||||||
|
|
||||||
# Mark other conditions too
|
# Mark other conditions too
|
||||||
|
if first_found_tasks == False and hierarchy_boolean[0]:
|
||||||
|
first_found_tasks = True
|
||||||
if first_found_section == False and hierarchy_boolean[1]:
|
if first_found_section == False and hierarchy_boolean[1]:
|
||||||
first_found_section = True
|
first_found_section = True
|
||||||
if first_found_project is False and hierarchy_boolean[2]:
|
if first_found_project is False and hierarchy_boolean[2]:
|
||||||
|
|
Loading…
Reference in New Issue