bernhard@553: {#- using project keys as zeiterfassung's workpackages bernhard@553: -#} bernhard@553: {%- for day, day_entries bernhard@553: in entries|sort(attribute='startisoday')|groupby('startisoday') -%} bernhard@553: {%- for project in projects -%} bernhard@553: {%- for project_id, project_day_entries bernhard@553: in day_entries|sort(attribute='project_id')|groupby('project_id') %} bernhard@553: bernhard@553: {%- if project_id == project.id -%} bernhard@553: {{ project_day_entries[0].start|date_format }} {{ (project_day_entries|duration|human_time).rjust(5) bernhard@553: }}h a {{ user.ljust(3) }} [{{ project.key }}] bernhard@553: {%- for entry in project_day_entries -%} bernhard@553: {%- if loop.index == 1 -%}{{ ' ' }} bernhard@553: {%- else -%}{{ ';\n ' }} bernhard@553: {%- endif -%} bernhard@553: {{ entry.get_comment() }} bernhard@553: {%- endfor %}{{'\n'}} bernhard@553: {%- endif -%} bernhard@553: {%- endfor -%} bernhard@553: {%- endfor -%} bernhard@553: {% endfor -%}