Tasks Timeline
{% if plan.tasks %}
{# Use timeline_start/end passed from backend if available, else default #}
{% set start_date = timeline_start or plan.start_date %}
{% set end_date = timeline_end or plan.end_date %}
{% if start_date and end_date %}
{% set max_days = end_date|date_diff(start_date) %}
{% for t in plan.tasks %}
{% set t_start = t.start_date[:10] if t.start_date else (t.created_at[:10] if t.created_at else
start_date) %}
{% set t_end = t.due_date if t.due_date else end_date %}
{% set start_offset = t_start|date_diff(start_date) %}
{% set duration = t_end|date_diff(t_start) %}
{% set left_pct = (start_offset / max_days) * 100 %}
{% set width_pct = (duration / max_days) * 100 %}
{% if (left_pct + width_pct) > 0 and left_pct < 100 %}
{% if left_pct < 0 %} {% set width_pct=width_pct + left_pct %} {% set left_pct=0 %} {% endif %} {%
if (left_pct + width_pct)> 100 %}
{% set width_pct = 100 - left_pct %}
{% endif %}
{{ t.task_name }}
{% endif %}
{% endfor %}
{% endif %}
{% else %}
No tasks added yet.
{% endif %}