44 lines
2.4 KiB
HTML
44 lines
2.4 KiB
HTML
{% extends "base.html" %}
|
|
{% block title %}{{ user.username }}{% endblock %}
|
|
{% block content %}
|
|
<div class="max-w-4xl mx-auto p-4 sm:p-6">
|
|
<div class="bg-white rounded-lg shadow-md border border-gray-200 p-8 mb-6">
|
|
<div class="flex flex-col sm:flex-row items-center sm:items-start gap-6">
|
|
<div class="flex-shrink-0">
|
|
<div class="w-24 h-24 bg-gradient-to-br from-blue-500 to-indigo-600 rounded-full flex items-center justify-center text-white text-3xl font-bold shadow-lg">
|
|
{{ user.username }}
|
|
</div>
|
|
</div>
|
|
<div class="flex-1 text-center sm:text-left">
|
|
<div class="flex flex-col sm:flex-row sm:items-center gap-2 mb-2">
|
|
<h1 class="text-3xl font-bold text-gray-900">{{ user.full_name.as_deref().unwrap_or(user.username) }}</h1>
|
|
{% if user.is_admin() %}
|
|
<svg class="w-6 h-6 text-blue-600 flex-shrink-0 mx-auto sm:mx-0"
|
|
fill="currentColor"
|
|
viewBox="0 0 24 24">
|
|
<path d="M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm0 10.99h7c-.53 4.12-3.28 7.79-7 8.94V12H5V6.3l7-3.11v8.8z" />
|
|
</svg>
|
|
{% endif %}
|
|
</div>
|
|
<p class="text-gray-500 text-lg mb-3">@{{ user.username }}</p>
|
|
<div class="flex items-center justify-center sm:justify-start text-sm text-gray-500">
|
|
<svg class="w-4 h-4 mr-1.5"
|
|
fill="none"
|
|
viewBox="0 0 24 24"
|
|
stroke="currentColor">
|
|
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" />
|
|
</svg>
|
|
{{ user.formatted_date() }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% if user.bio.is_some() %}
|
|
<div class="mt-6 pt-6 border-t border-gray-200">
|
|
<p class="text-gray-700 whitespace-pre-line">{{ user.bio.as_deref().unwrap() }}</p>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
{% include "activity.html" %}
|
|
</div>
|
|
{% endblock %}
|