{% extends "client_portal/base.html" %} {% from "components/ui.html" import page_header %} {% block title %}{{ _('Approval Details') }} - {{ _('Client Portal') }}{% endblock %} {% block content %} {% set breadcrumbs = [ {'text': _('Client Portal'), 'url': url_for('client_portal.dashboard')}, {'text': _('Approvals'), 'url': url_for('client_portal.time_entry_approvals')}, {'text': _('Details')} ] %} {{ page_header( icon_class='fas fa-check-circle', title_text=_('Approval Details'), subtitle_text=_('Time Entry') }} #{{ approval.time_entry_id }}, breadcrumbs=breadcrumbs ) }}
{{ _('Status') }}: {{ approval.status.value|title }}
{{ approval.time_entry.project.name if approval.time_entry.project else _('N/A') }}
{{ approval.time_entry.task.name if approval.time_entry.task else _('No Task') }}
{{ approval.time_entry.start_time|user_date if approval.time_entry.start_time else _('N/A') }}
{{ "%.2f"|format(approval.time_entry.duration_hours) }} {{ _('hours') }}
{{ approval.time_entry.start_time|user_time if approval.time_entry.start_time else _('N/A') }}
{{ approval.time_entry.end_time|user_time if approval.time_entry.end_time else _('N/A') }}
{{ _('Yes') }}
{{ approval.request_comment }}
{{ approval.approval_comment }}
{{ _('Approved on') }} {{ approval.approved_at|user_datetime if approval.approved_at else _('N/A') }}
{{ approval.rejection_reason }}
{{ _('Rejected on') }} {{ approval.rejected_at|user_datetime if approval.rejected_at else _('N/A') }}
{{ _('Requested on') }}: {{ approval.requested_at|user_datetime if approval.requested_at else _('N/A') }}
{% if approval.requester %}{{ _('Requested by') }}: {{ approval.requester.username if approval.requester else _('N/A') }}
{% endif %}