index.blade.php
8.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
@extends('layout.admin', ['title' => 'Админка - Сообщения адмистратора'])
@section('script')
<script>
$(document).ready(function() {
$(document).on('change', '.checkread', function () {
var this_ = $(this);
var value = this_.val();
var ajax_block = $('#ajax_block');
var bool = 0;
if(this.checked){
bool = 1;
} else {
bool = 0;
}
$.ajax({
type: "GET",
url: "{{ url()->full()}}",
data: "id=" + value + "&flag_new=" + bool,
success: function (data) {
console.log('Обновление таблицы сообщений администратора ');
//data = JSON.parse(data);
//console.log(data);
ajax_block.html(data);
},
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
error: function (data) {
console.log('Error: ' + data);
}
});
});
});
</script>
@endsection
@section('search')
@include('admin.find_message')
@endsection
@section('content')
<div class="w-full overflow-hidden rounded-lg shadow-xs" id="ajax_block">
<div class="w-full overflow-x-auto">
<table class="w-full whitespace-no-wrap">
<thead>
<tr
class="text-xs font-semibold tracking-wide text-left text-gray-500 uppercase border-b dark:border-gray-700 bg-gray-50 dark:text-gray-400 dark:bg-gray-800"
>
<th class="px-4 py-3">№</th>
<th class="px-4 py-3">От юзера</th>
<th class="px-4 py-3">К юзеру</th>
<th class="px-4 py-3">Текст</th>
<th class="px-4 py-3">Дата</th>
<th class="px-4 py-3">Прочтено</th>
</tr>
</thead>
<tbody class="bg-white divide-y dark:divide-gray-700 dark:bg-gray-800">
@foreach($Msgs as $msg)
<tr class="text-gray-700 dark:text-gray-400"
@if (isset($msg->user_to->id))
@if (($msg->user_to->id == $id_admin) && ($msg->flag_new == 1))
style="background-color: #403998;"
@endif
@endif>
<td class="px-4 py-3">
{{$msg->id}}
</td>
<td class="px-4 py-3">
@if (isset($msg->user_from->name))
{{$msg->user_from->name}} ({{$msg->user_from->id}})
@else
Пользователь удален
@endif
</td>
<td class="px-4 py-3">
@if (isset($msg->user_to->name))
{{$msg->user_to->name}} ({{$msg->user_to->id}})
@else
Пользователь удален
@endif
</td>
<td class="px-4 py-3">
{{$msg->title}}
<div class="flex items-center text-sm">
<textarea cols="7" style="width:250px;">{{ $msg->text }}</textarea>
</div>
</td>
<td class="px-4 py-3 text-sm">
{{ $msg->created_at }}
</td>
<td class="px-4 py-3 text-sm">
@if (isset($msg->user_to->id))
@if (($msg->user_to->id == $id_admin) && ($msg->flag_new == 1))
<input type="checkbox" class="checkread" value="{{$msg->id}}" name="read_{{$msg->id}}"/>
@endif
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
<div class="grid px-4 py-3 text-xs font-semibold tracking-wide text-gray-500 uppercase border-t dark:border-gray-700 bg-gray-50 sm:grid-cols-9 dark:text-gray-400 dark:bg-gray-800">
<?=$Msgs->appends($_GET)->links('admin.pagginate'); ?>
</div>
</div><br>
<div class="w-full overflow-hidden rounded-lg shadow-xs" id="ajax_block2">
<form method="POST" action="{{ route('admin.admin-messages-post') }}" enctype="multipart/form-data">
@csrf
<div class="px-4 py-3 mb-8 bg-white rounded-lg shadow-md dark:bg-gray-800">
<h3 class="text-gray-700 dark:text-gray-400">Отправка сообщения</h3>
<hr>
<label for="ad_employer_id" class="block text-sm">
<input type="hidden" name="user_id" id="user_id" value="{{ $id_admin }}"/>
<span class="text-gray-700 dark:text-gray-400">Кому:</span>
<select name="to_user_id" id="to_user_id" class="block change_js mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-select focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray">
@foreach($users as $user)
<option value="{{ $user->id }}">{{ $user->name }} ({{ $user->id }})</option>
@endforeach
</select>
</label><br>
<label class="block text-sm">
<span class="text-gray-700 dark:text-gray-400">Заголовок</span>
<input name="title" id="title"
class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
placeholder="Заголовок" value="{{ old('title') ?? '' }}"
/>
@error('title')
<span class="text-xs text-red-600 dark:text-red-400">
{{ $message }}
</span>
@enderror
</label><br>
<label class="block text-sm">
<span class="text-gray-700 dark:text-gray-400">Текст</span>
<textarea class="block w-full mt-1 text-sm dark:text-gray-300 dark:border-gray-600 dark:bg-gray-700 form-textarea focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:focus:shadow-outline-gray" name="text" placeholder="Текст" required
rows="4">{{ old('text') ?? '' }}</textarea>
@error('text')
<span class="text-xs text-red-600 dark:text-red-400">
{{ $message }}
</span>
@enderror
</label><br>
<label class="block text-sm">
<span class="text-gray-700 dark:text-gray-400">Файл</span>
<input type="file" class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700
focus:border-purple-400 focus:outline-none focus:shadow-outline-purple
dark:text-gray-300 dark:focus:shadow-outline-gray form-input"
id="file" name="file">
@error('file')
<span class="text-xs text-red-600 dark:text-red-400">
{{ $message }}
</span>
@enderror
</label><br>
<div class="flex flex-col flex-wrap mb-4 space-y-4 md:flex-row md:items-end md:space-x-4">
<div>
<button type="submit" class="px-3 py-1 text-sm font-medium leading-5 text-white transition-colors duration-150 bg-purple-600 border border-transparent rounded-md active:bg-purple-600 hover:bg-purple-700 focus:outline-none focus:shadow-outline-purple">
Отправить
</button>
</div>
</div>
</div>
</form>
</div>
@endsection