Show packet contents for nodes
This commit is contained in:
parent
a3302b4012
commit
a8f76aec31
@ -31,6 +31,34 @@ class HomeController extends Controller
|
||||
->with('o',$o);
|
||||
}
|
||||
|
||||
public function packet_contents(string $packet)
|
||||
{
|
||||
$nm = Netmail::select('netmails.*')
|
||||
->distinct()
|
||||
->leftJoin('netmail_path',['netmail_path.netmail_id'=>'netmails.id'])
|
||||
->where(function($query) use ($packet) {
|
||||
return $query
|
||||
->where('sent_pkt',$packet)
|
||||
->orWhere('netmail_path.recv_pkt',$packet);
|
||||
})
|
||||
->get();
|
||||
|
||||
$em = Echomail::select('echomails.*')
|
||||
->distinct()
|
||||
->leftJoin('echomail_seenby',['echomail_seenby.echomail_id'=>'echomails.id'])
|
||||
->leftJoin('echomail_path',['echomail_path.echomail_id'=>'echomails.id'])
|
||||
->where(function($query) use ($packet) {
|
||||
return $query
|
||||
->where('sent_pkt',$packet)
|
||||
->orWhere('recv_pkt',$packet);
|
||||
})
|
||||
->get();
|
||||
|
||||
return view('packet')
|
||||
->with('nm',$nm)
|
||||
->with('em',$em);
|
||||
}
|
||||
|
||||
/**
|
||||
* Render a view that summarises the users permissions
|
||||
*/
|
||||
|
51
resources/views/packet.blade.php
Normal file
51
resources/views/packet.blade.php
Normal file
@ -0,0 +1,51 @@
|
||||
@if($nm->count())
|
||||
<table class="table monotable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="4">Netmails</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>From</th>
|
||||
<th>To</th>
|
||||
<th>MSGID</th>
|
||||
<th>Date</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
@foreach ($nm as $oo)
|
||||
<tr>
|
||||
<td>{{ $oo->fftn->ftn }}</td>
|
||||
<td>{{ $oo->tftn->ftn }}</td>
|
||||
<td>{{ $oo->msgid }}</td>
|
||||
<td>{{ $oo->datetime }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
@endif
|
||||
|
||||
@if($em->count())
|
||||
<table class="table monotable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="4">Echomails</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>From</th>
|
||||
<th>MSGID</th>
|
||||
<th>Date</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
@foreach ($em as $oo)
|
||||
<tr>
|
||||
<td>{{ $oo->fftn->ftn }}</td>
|
||||
<td>{{ $oo->msgid }}</td>
|
||||
<td>{{ $oo->datetime }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
@endif
|
@ -435,7 +435,7 @@
|
||||
<tbody>
|
||||
@foreach ($x->groupBy('sent_pkt') as $oo)
|
||||
<tr>
|
||||
<td>{{ $oo->first()->sent_pkt }}</td>
|
||||
<td class="packet">{{ $oo->first()->sent_pkt }}</td>
|
||||
<td>{{ $oo->count() }}</td>
|
||||
<td>{{ $oo->first()->sent_at }}</td>
|
||||
</tr>
|
||||
@ -470,7 +470,7 @@
|
||||
<tbody>
|
||||
@foreach ($x->groupBy('sent_pkt') as $oo)
|
||||
<tr>
|
||||
<td>{{ $oo->first()->sent_pkt }}</td>
|
||||
<td class="packet">{{ $oo->first()->sent_pkt }}</td>
|
||||
<td>{{ $oo->count() }}</td>
|
||||
<td>{{ $oo->first()->sent_at }}</td>
|
||||
</tr>
|
||||
@ -505,7 +505,7 @@
|
||||
<tbody>
|
||||
@foreach ($x->groupBy('recv_pkt') as $oo)
|
||||
<tr>
|
||||
<td>{{ $oo->first()->recv_pkt }}</td>
|
||||
<td class="packet">{{ $oo->first()->recv_pkt }}</td>
|
||||
<td>{{ $oo->count() }}</td>
|
||||
<td>{{ $oo->first()->created_at }}</td>
|
||||
</tr>
|
||||
@ -540,7 +540,7 @@
|
||||
<tbody>
|
||||
@foreach ($x->groupBy('recv_pkt') as $oo)
|
||||
<tr>
|
||||
<td>{{ $oo->first()->recv_pkt }}</td>
|
||||
<td class="packet">{{ $oo->first()->recv_pkt }}</td>
|
||||
<td>{{ $oo->count() }}</td>
|
||||
<td>{{ $oo->first()->created_at }}</td>
|
||||
</tr>
|
||||
@ -561,6 +561,7 @@
|
||||
@endif
|
||||
</div>
|
||||
|
||||
@include('widgets.modal_packet')
|
||||
@include('widgets.modal_purge')
|
||||
@endsection
|
||||
|
||||
|
56
resources/views/widgets/modal_packet.blade.php
Normal file
56
resources/views/widgets/modal_packet.blade.php
Normal file
@ -0,0 +1,56 @@
|
||||
<div class="modal fade" id="packet-contents" tabindex="-1">
|
||||
<div class="modal-dialog modal-lg modal-dialog-scrollable">
|
||||
<div class="modal-content bg-dark">
|
||||
<div class="modal-header bg-success">
|
||||
<h5 class="modal-title text-light">Summary Packet Contents for <span id="packet"></span></h5>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<i id="spinner" class="spinner-grow spinner-grow-sm d-none"></i>
|
||||
<div id="modal-content"></div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@section('page-scripts')
|
||||
<script>
|
||||
var packet = new bootstrap.Modal(document.getElementById('packet-contents'), {});
|
||||
|
||||
$(document).ready(function() {
|
||||
$('.packet').click(function(e) {
|
||||
var item = this;
|
||||
var icon = $('#spinner');
|
||||
|
||||
$('span#packet').html(e.target.innerText);
|
||||
|
||||
packet.show();
|
||||
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
data: {packet: e.target.innerText,_token: '{{csrf_token()}}'},
|
||||
beforeSend: function() {
|
||||
icon.toggleClass('d-none');
|
||||
},
|
||||
success: function(data) {
|
||||
icon.toggleClass('d-none');
|
||||
|
||||
$('div#modal-content').html(data);
|
||||
},
|
||||
error: function(e) {
|
||||
icon.toggleClass('d-none');
|
||||
|
||||
alert('That didnt work? Please try again....');
|
||||
},
|
||||
url: '{{ url('packet/contents') }}/'+e.target.innerText,
|
||||
cache: false
|
||||
})
|
||||
|
||||
return false;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
@append
|
@ -106,6 +106,8 @@ Route::middleware(['auth','verified','activeuser'])->group(function () {
|
||||
Route::get('hubs/{o}/{host}',[DomainController::class,'api_hubs'])
|
||||
->where('o','[0-9]+');
|
||||
Route::match(['get','post'],'link',[UserController::class,'link']);
|
||||
Route::post('packet/contents/{o}',[HomeController::class,'packet_contents'])
|
||||
->where('o','[0-9a-f]+');
|
||||
Route::get('permissions',[HomeController::class,'permissions']);
|
||||
Route::get('regions/{o}',[DomainController::class,'api_regions'])
|
||||
->where('o','[0-9]+');
|
||||
|
Loading…
Reference in New Issue
Block a user