HH/templates/complaints/investigation_respond.html

132 lines
7.2 KiB
HTML

{% load i18n %}
{% load static %}
<!DOCTYPE html>
<html lang="{{ LANGUAGE_CODE|default:'en' }}" dir="{% if LANGUAGE_CODE == 'ar' %}rtl{% else %}ltr{% endif %}">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ complaint.reference_number }} - {% trans "Feedback" %}</title>
<link rel="stylesheet" href="{% static 'dist/css/tailwind.css' %}">
<link rel="stylesheet" href="{% static 'vendor/fonts/noto-kufi-arabic/arabic.css' %}">
<style>
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
body { font-family: 'Inter', 'Noto Kufi Arabic', sans-serif; }
[dir="rtl"] body, [dir="rtl"] input, [dir="rtl"] textarea, [dir="rtl"] select, [dir="rtl"] button {
font-family: 'Noto Kufi Arabic', sans-serif;
}
</style>
</head>
<body class="bg-slate-50 min-h-screen py-8 px-4">
<div class="w-full max-w-3xl mx-auto">
<!-- Logo -->
<div class="text-center mb-6">
<img src="{% static 'img/hh-logo.png' %}" alt="Al Hammadi Hospital" class="h-16 w-auto mx-auto inline-block">
</div>
<!-- Complaint Card -->
<div class="bg-white rounded-2xl shadow-sm border border-slate-200 p-6 mb-6">
<!-- Header -->
<p class="text-xs font-bold text-slate/60 uppercase tracking-wide mb-2">{% trans "Complaint" %}</p>
<!-- Reference -->
<div class="flex items-center gap-2 mb-3">
<span class="text-xs font-bold text-slate/60 uppercase">{% trans "Reference" %}</span>
<span class="text-sm font-bold text-navy">{{ complaint.reference_number }}</span>
</div>
<!-- Title -->
<div class="flex items-start gap-2 mb-4">
<span class="text-xs font-bold text-slate/60 uppercase pt-0.5 shrink-0">{% trans "Title" %}</span>
<span class="text-sm font-semibold text-navy">{{ complaint.title }}</span>
</div>
<!-- Description -->
<div class="border-t border-slate-100 pt-4">
<p class="text-xs font-bold text-slate/60 uppercase mb-2">{% trans "Description" %}</p>
<p class="text-base leading-relaxed text-slate">{{ complaint.description }}</p>
</div>
<!-- Incident date -->
{% if complaint.incident_date %}
<div class="flex items-center gap-2 mt-3 pt-3 border-t border-slate-100">
<span class="text-xs font-bold text-slate/60 uppercase">{% trans "Incident Date" %}</span>
<span class="text-sm text-slate">{{ complaint.incident_date|date:"d M Y" }}</span>
</div>
{% endif %}
</div>
<!-- Questions -->
<div class="bg-white rounded-2xl shadow-sm border border-slate-200 p-6 mb-6">
{% if error %}
<div class="bg-red-50 border border-red-200 rounded-xl p-4 mb-4">
<p class="text-sm text-red-700 font-medium">{{ error }}</p>
</div>
{% endif %}
<p class="text-sm font-semibold text-navy mb-4">{% trans "Please answer the following questions" %}</p>
<form method="post" enctype="multipart/form-data" class="space-y-4">
{% csrf_token %}
{% for pair in question_answer_pairs %}
<div class="p-4 bg-slate-50 rounded-xl border border-slate-100">
<div class="flex items-start gap-3 mb-3">
<span class="flex-shrink-0 w-7 h-7 flex items-center justify-center rounded-full bg-navy text-white text-xs font-bold">{{ forloop.counter }}</span>
<p class="text-sm font-semibold text-slate pt-0.5">{{ pair.question.question_text }}</p>
</div>
<div class="pl-10">
{% if pair.question.question_type == 'yes_no' %}
<div class="flex items-center gap-4">
<label class="flex items-center gap-2 cursor-pointer">
<input type="radio" name="question_{{ pair.question.id }}" value="yes" required
class="w-5 h-5 accent-green-600"
{% if pair.existing_answer == 'yes' %}checked{% endif %}>
<span class="text-sm font-semibold text-green-700">{% trans "Yes" %}</span>
</label>
<label class="flex items-center gap-2 cursor-pointer">
<input type="radio" name="question_{{ pair.question.id }}" value="no"
class="w-5 h-5 accent-red-600"
{% if pair.existing_answer == 'no' %}checked{% endif %}>
<span class="text-sm font-semibold text-red-700">{% trans "No" %}</span>
</label>
</div>
{% else %}
<textarea name="question_{{ pair.question.id }}" rows="4"
class="w-full px-4 py-3 border-2 border-slate-200 rounded-xl text-sm text-slate focus:outline-none focus:border-navy resize-none"
placeholder="{% trans 'Type your answer here...' %}"
required>{{ pair.existing_answer }}</textarea>
{% endif %}
</div>
</div>
{% endfor %}
<!-- Attachments -->
<div>
<label class="block text-sm font-semibold text-navy mb-2">{% trans "Attachments (Optional)" %}</label>
<input type="file" name="attachments" multiple
class="block w-full text-sm text-slate file:mr-4 file:py-2 file:px-4 file:rounded-xl file:border-0 file:text-sm file:font-semibold file:bg-slate-100 file:text-navy hover:file:bg-slate-200 file:transition cursor-pointer border-2 border-slate-200 rounded-xl">
</div>
<p class="text-xs text-slate/60">{% trans "This link can only be used once." %}</p>
<!-- Consent -->
<div class="bg-amber-50 border border-amber-200 rounded-xl p-4">
<label class="flex items-start gap-3 cursor-pointer">
<input type="checkbox" name="consent" class="mt-0.5 w-5 h-5 accent-navy shrink-0" required>
<span class="text-sm text-slate-700 leading-relaxed">
{% trans "I confirm that the information I have provided above is true and accurate to the best of my knowledge. I understand that these responses will be reviewed as part of an official complaint investigation, and I accept responsibility for the accuracy of my statements." %}
</span>
</label>
</div>
<button type="submit" class="w-full flex items-center justify-center gap-2 px-4 py-3 bg-navy text-white rounded-xl font-bold text-sm hover:bg-blue transition">
{% trans "Submit Responses" %}
</button>
</form>
</div>
</div>
</body>
</html>