show.blade.php 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. @extends('layouts.app')
  2. @section('title', 'Просмотр данных формы')
  3. @section('content')
  4. <div>
  5. <div>
  6. <div>
  7. <div>
  8. <h4>Данные формы #{{ $formData->id }}</h4>
  9. <p>UUID: {{ $formData->uuid }}</p>
  10. </div>
  11. <div>
  12. <a href="{{ route('form-data.edit', $formData->id) }}">Редактировать</a>
  13. <form action="{{ route('form-data.destroy', $formData->id) }}" method="POST">
  14. @csrf
  15. @method('DELETE')
  16. <button type="submit" onclick="return confirm('Удалить эту запись?')">Удалить</button>
  17. </form>
  18. <a href="{{ route('data.show') }}">Назад к списку</a>
  19. </div>
  20. </div>
  21. <div>
  22. <div>
  23. <div>
  24. <h5>Персональные данные</h5>
  25. <div>
  26. <div>
  27. <span>Имя:</span>
  28. <p>{{ $formData->name }}</p>
  29. </div>
  30. <div>
  31. <span>Email:</span>
  32. <p>{{ $formData->email }}</p>
  33. </div>
  34. <div>
  35. <span>Телефон:</span>
  36. <p>{{ $formData->phone }}</p>
  37. </div>
  38. <div>
  39. <span>Пол:</span>
  40. <p>{{ $formData->gender ? 'Мужской' : 'Женский' }}</p>
  41. </div>
  42. </div>
  43. </div>
  44. <div>
  45. <h5>Дополнительная информация</h5>
  46. <div>
  47. <div>
  48. <span>Категория:</span>
  49. <p>
  50. {{ $formData->category ? $formData->category->name : 'Не указана' }}
  51. </p>
  52. </div>
  53. <div>
  54. <span>Дата отправки:</span>
  55. <p>
  56. {{ $formData->submitted_at->format('d.m.Y H:i') }}
  57. </p>
  58. </div>
  59. <div>
  60. <span>Создано:</span>
  61. <p>
  62. {{ $formData->created_at->format('d.m.Y H:i') }}
  63. </p>
  64. </div>
  65. <div>
  66. <span>Обновлено:</span>
  67. <p>
  68. {{ $formData->updated_at->format('d.m.Y H:i') }}
  69. </p>
  70. </div>
  71. </div>
  72. </div>
  73. </div>
  74. <div>
  75. <h5>Сообщение</h5>
  76. <div>
  77. <p>{{ $formData->message }}</p>
  78. </div>
  79. </div>
  80. </div>
  81. <div>
  82. <div>
  83. <h5>Комментарии ({{ $formData->comments->count() }})</h5>
  84. <button onclick="toggleCommentForm()">Добавить комментарий</button>
  85. </div>
  86. <div id="commentForm" style="display: none;">
  87. <form action="/form-data/{{ $formData->id }}/comment" method="POST">
  88. @csrf
  89. <div>
  90. <textarea name="content"
  91. rows="3"
  92. required
  93. placeholder="Введите ваш комментарий"></textarea>
  94. </div>
  95. <div>
  96. <button type="button" onclick="toggleCommentForm()">Отмена</button>
  97. <button type="submit">Отправить</button>
  98. </div>
  99. </form>
  100. </div>
  101. @if($formData->comments->count() > 0)
  102. <div>
  103. @foreach($formData->comments as $comment)
  104. <div>
  105. <div>
  106. <div>
  107. <p>
  108. {{ $comment->user ? $comment->user->name : 'Аноним' }}
  109. </p>
  110. <p>
  111. {{ $comment->created_at->format('d.m.Y H:i') }}
  112. </p>
  113. </div>
  114. @if($comment->is_banned)
  115. <span>Одобрено</span>
  116. @endif
  117. </div>
  118. <p>{{ $comment->content }}</p>
  119. </div>
  120. @endforeach
  121. </div>
  122. @else
  123. <p>Комментариев пока нет</p>
  124. @endif
  125. </div>
  126. </div>
  127. </div>
  128. <script>
  129. function toggleCommentForm() {
  130. const form = document.getElementById('commentForm');
  131. form.style.display = form.style.display === 'none' ? 'block' : 'none';
  132. }
  133. </script>
  134. @endsection