From 7702cf8f6bf68e6f6bc5eae7a1f2adc14b8b875d Mon Sep 17 00:00:00 2001 From: A R R R Associates Date: Wed, 2 Sep 2026 15:05:37 +0530 Subject: [PATCH] Fix credential vault template inheritance paths --- .../templates/credential_vault/dashboard.html | 2 +- .../templates/credential_vault/detail.html | 2 +- .../credential_vault/templates/credential_vault/form.html | 7 +++---- .../templates/credential_vault/reveal.html | 2 +- 4 files changed, 6 insertions(+), 7 deletions(-) diff --git a/app/modules/credential_vault/templates/credential_vault/dashboard.html b/app/modules/credential_vault/templates/credential_vault/dashboard.html index 15c2376..61a318a 100644 --- a/app/modules/credential_vault/templates/credential_vault/dashboard.html +++ b/app/modules/credential_vault/templates/credential_vault/dashboard.html @@ -1,4 +1,4 @@ -{% extends "base/layout.html" %}{% block content %} +{% extends "ui/templates/base/layout.html" %}{% block content %}

Secure Credential Vault

Encrypted client and portal credentials. Secret values are never displayed on this page.

{% if can_manage %}Add credential{% endif %}
Visible credentials
{{ counts.total }}
Rotation due soon
{{ counts.due_soon }}
Overdue
{{ counts.overdue }}
diff --git a/app/modules/credential_vault/templates/credential_vault/detail.html b/app/modules/credential_vault/templates/credential_vault/detail.html index f69490f..d45ae73 100644 --- a/app/modules/credential_vault/templates/credential_vault/detail.html +++ b/app/modules/credential_vault/templates/credential_vault/detail.html @@ -1 +1 @@ -{% extends "base/layout.html" %}{% block content %}

{{ entry.title }}

{{ client.client_name if client else 'Firm-level credential' }} · {{ entry.category|replace('_',' ')|title }}

Back

Metadata

Portal
{% if entry.portal_url %}Open portal{% else %}-{% endif %}
Reference
{{ entry.reference_number or '-' }}
Sensitivity
{{ entry.sensitivity|title }}
Rotation due
{{ entry.rotation_due_on or '-' }}
Expiry
{{ entry.expires_on or '-' }}
Status
{{ entry.status|title }}

Reveal protected values

Re-authentication and a business reason are mandatory. The reveal is audit logged.

{% if can_manage %}

Rotate credential

{% endif %}

Access audit

{% for log,user_row in logs %}{% else %}{% endfor %}
WhenUserActionReasonResult
{{ log.created_at_utc }}{{ user_row.full_name or user_row.email if user_row else '-' }}{{ log.action|title }}{{ log.reason or '-' }}{{ 'Success' if log.success else 'Denied' }}
No access events.
{% endblock %} +{% extends "ui/templates/base/layout.html" %}{% block content %}

{{ entry.title }}

{{ client.client_name if client else 'Firm-level credential' }} · {{ entry.category|replace('_',' ')|title }}

Back

Metadata

Portal
{% if entry.portal_url %}Open portal{% else %}-{% endif %}
Reference
{{ entry.reference_number or '-' }}
Sensitivity
{{ entry.sensitivity|title }}
Rotation due
{{ entry.rotation_due_on or '-' }}
Expiry
{{ entry.expires_on or '-' }}
Status
{{ entry.status|title }}

Reveal protected values

Re-authentication and a business reason are mandatory. The reveal is audit logged.

{% if can_manage %}

Rotate credential

{% endif %}

Access audit

{% for log,user_row in logs %}{% else %}{% endfor %}
WhenUserActionReasonResult
{{ log.created_at_utc }}{{ user_row.full_name or user_row.email if user_row else '-' }}{{ log.action|title }}{{ log.reason or '-' }}{{ 'Success' if log.success else 'Denied' }}
No access events.
{% endblock %} diff --git a/app/modules/credential_vault/templates/credential_vault/form.html b/app/modules/credential_vault/templates/credential_vault/form.html index fa78c29..018a56d 100644 --- a/app/modules/credential_vault/templates/credential_vault/form.html +++ b/app/modules/credential_vault/templates/credential_vault/form.html @@ -1,16 +1,16 @@ -{% extends "base/layout.html" %} +{% extends "ui/templates/base/layout.html" %} {% block content %}

Add encrypted credential

{% if selected_registration %} -

Linked to registration {{ selected_registration.registration_number }}. You can save multiple independent portal credentials for the same registration (for example Income Tax Portal and TRACES for one TAN). Secrets remain encrypted and reveal access is audited.

+

Linked to registration {{ selected_registration.registration_number }}. Secrets remain encrypted and reveal access is audited.

{% endif %}
-