person-detail.html 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. {% extends "base.html" %}
  2. {% block title %}{{ person.name }} - astro-mcp{% endblock %}
  3. {% block content %}
  4. <h1>{{ person.name }}</h1>
  5. <div class="toolbar">
  6. <a href="/dashboard/persons" class="btn btn-ghost">← Back</a>
  7. <a href="/dashboard/persons/{{ person.id }}/edit" class="btn btn-primary">Edit</a>
  8. <form method="post" action="/dashboard/persons/{{ person.id }}/delete" style="display:inline">
  9. <button type="submit" class="btn btn-danger" data-confirm="Delete {{ person.name }}?">Delete</button>
  10. </form>
  11. </div>
  12. <div class="card">
  13. <h2>Basic Info</h2>
  14. <div class="detail-grid">
  15. <span class="detail-label">Full name</span>
  16. <span class="detail-value">{{ person.name }}</span>
  17. <span class="detail-label">Nickname</span>
  18. <span class="detail-value">{{ person.nickname or '—' }}</span>
  19. <span class="detail-label">Description</span>
  20. <span class="detail-value">{{ person.description or '—' }}</span>
  21. <span class="detail-label">Gender</span>
  22. <span class="detail-value">
  23. {% if person.gender %}<span class="badge badge-blue">{{ person.gender }}</span>{% else %}—{% endif %}
  24. </span>
  25. <span class="detail-label">Status</span>
  26. <span class="detail-value">
  27. {% if person.alive %}
  28. <span class="badge badge-green">alive</span>
  29. {% else %}
  30. <span class="badge badge-red">deceased</span>
  31. {% endif %}
  32. {% if person.private %}<span class="badge badge-gray">private</span>{% endif %}
  33. </span>
  34. </div>
  35. </div>
  36. <div class="card">
  37. <h2>Birth Data</h2>
  38. <div class="detail-grid">
  39. <span class="detail-label">Birth datetime</span>
  40. <span class="detail-value">{{ person.birth_datetime or '—' }}</span>
  41. <span class="detail-label">Birthplace</span>
  42. <span class="detail-value">{{ person.birthplace or '—' }}</span>
  43. <span class="detail-label">Latitude</span>
  44. <span class="detail-value">{{ person.latitude }}</span>
  45. <span class="detail-label">Longitude</span>
  46. <span class="detail-value">{{ person.longitude }}</span>
  47. <span class="detail-label">Elevation</span>
  48. <span class="detail-value">{{ person.elevation }} m</span>
  49. <span class="detail-label">Timezone</span>
  50. <span class="detail-value">{{ person.timezone or '—' }}</span>
  51. <span class="detail-label">Time known</span>
  52. <span class="detail-value">
  53. {% if person.birth_time_known %}
  54. <span class="badge badge-green">yes</span>
  55. {% else %}
  56. <span class="badge badge-gray">unknown / approximate</span>
  57. {% endif %}
  58. </span>
  59. </div>
  60. </div>
  61. {% if person.notes %}
  62. <div class="card">
  63. <h2>Notes</h2>
  64. <p style="white-space:pre-wrap">{{ person.notes }}</p>
  65. </div>
  66. {% endif %}
  67. <div class="card" style="color:#6e7681;font-size:0.8rem">
  68. <div class="detail-grid">
  69. <span class="detail-label">ID</span>
  70. <span class="detail-value"><code>{{ person.id }}</code></span>
  71. <span class="detail-label">Created</span>
  72. <span class="detail-value">{{ person.created_at or '—' }}</span>
  73. <span class="detail-label">Updated</span>
  74. <span class="detail-value">{{ person.updated_at or '—' }}</span>
  75. </div>
  76. </div>
  77. {% endblock %}