Enhancements to accordion displays, mainly to show chevrons indicating open status

This commit is contained in:
Deon George 2023-12-04 09:03:54 +11:00
parent 1890b66dc7
commit ee15274478
5 changed files with 183 additions and 120 deletions

17
public/css/fixes.css vendored
View File

@ -83,4 +83,21 @@ ol {
padding: 5px 5px 5px 5px; padding: 5px 5px 5px 5px;
margin: 0; margin: 0;
font-size: 85%; font-size: 85%;
}
/* fix chevrons to our accordion displays */
.accordion-button:not(.collapsed)::after {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23dc3545'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
.accordion-button:not(.collapsed) {
color: inherit;
background-color: inherit;
}
.accordion-button::after {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23dc3545'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
.accordion-button {
padding: 0;
color: inherit;
background-color: inherit;
} }

View File

@ -7,12 +7,12 @@
@section('content') @section('content')
<h1>{{ $o->name }} <small class="float-end pt-4">Last Update: {{ $o->updated_at->format('Y-m-d H:i') }}</small></h1> <h1>{{ $o->name }} <small class="float-end pt-4">Last Update: {{ $o->updated_at->format('Y-m-d H:i') }}</small></h1>
<p class="float-end"><small>Expand each heading for information about this FTN network</small></p>
<div class="accordion" id="accordion_homepage"> <div class="accordion" id="accordion_homepage">
<!-- About --> <!-- About -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="about" data-bs-toggle="collapse" data-bs-target="#collapse_about" aria-expanded="true" aria-controls="collapse_about">About</h3> <h3 class="accordion-header">
<span class="accordion-button" id="about" data-bs-toggle="collapse" data-bs-target="#collapse_about" aria-expanded="true" aria-controls="collapse_about">About</span>
</h3>
<div id="collapse_about" class="accordion-collapse collapse show" aria-labelledby="about" data-bs-parent="#accordion_homepage"> <div id="collapse_about" class="accordion-collapse collapse show" aria-labelledby="about" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
@ -24,7 +24,9 @@
<!-- Echomail --> <!-- Echomail -->
<div class="accordion-item open"> <div class="accordion-item open">
<h3 class="accordion-header" id="echoareas" data-bs-toggle="collapse" data-bs-target="#collapse_echoareas" aria-expanded="false" aria-controls="collapse_echoareas">Echo Areas</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="echoareas" data-bs-toggle="collapse" data-bs-target="#collapse_echoareas" aria-expanded="false" aria-controls="collapse_echoareas">Echo Areas</span>
</h3>
<div id="collapse_echoareas" class="accordion-collapse collapse" aria-labelledby="echoareas" data-bs-parent="#accordion_homepage"> <div id="collapse_echoareas" class="accordion-collapse collapse" aria-labelledby="echoareas" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
@ -72,7 +74,9 @@
<!-- File areas --> <!-- File areas -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="fileareas" data-bs-toggle="collapse" data-bs-target="#collapse_fileareas" aria-expanded="false" aria-controls="collapse_fileareas">File Areas</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="fileareas" data-bs-toggle="collapse" data-bs-target="#collapse_fileareas" aria-expanded="false" aria-controls="collapse_fileareas">File Areas</span>
</h3>
<div id="collapse_fileareas" class="accordion-collapse collapse" aria-labelledby="fileareas" data-bs-parent="#accordion_homepage"> <div id="collapse_fileareas" class="accordion-collapse collapse" aria-labelledby="fileareas" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
@ -106,7 +110,9 @@
<!-- Systems --> <!-- Systems -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="systems" data-bs-toggle="collapse" data-bs-target="#collapse_systems" aria-expanded="false" aria-controls="collapse_systems">Systems</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="systems" data-bs-toggle="collapse" data-bs-target="#collapse_systems" aria-expanded="false" aria-controls="collapse_systems">Systems</span>
</h3>
<div id="collapse_systems" class="accordion-collapse collapse" aria-labelledby="systems" data-bs-parent="#accordion_homepage"> <div id="collapse_systems" class="accordion-collapse collapse" aria-labelledby="systems" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
@ -149,7 +155,9 @@
<!-- Sign up --> <!-- Sign up -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="signup" data-bs-toggle="collapse" data-bs-target="#collapse_signup" aria-expanded="false" aria-controls="collapse_signup">Join Network</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="signup" data-bs-toggle="collapse" data-bs-target="#collapse_signup" aria-expanded="false" aria-controls="collapse_signup">Join Network</span>
</h3>
<div id="collapse_signup" class="accordion-collapse collapse" aria-labelledby="signup" data-bs-parent="#accordion_homepage"> <div id="collapse_signup" class="accordion-collapse collapse" aria-labelledby="signup" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">

View File

@ -56,126 +56,142 @@
@if($results->count()) @if($results->count())
<h2>Archive Results: <strong class="highlight">{{ $filename }}</strong></h2> <h2>Archive Results: <strong class="highlight">{{ $filename }}</strong></h2>
<div class="accordion accordion-flush" id="accordion_packet"> <div class="accordion" id="accordion_packet">
@foreach($results as $item) @foreach($results as $item)
@foreach ($item as $file => $result) @foreach ($item as $file => $result)
<h3 class="accordion-header" data-bs-toggle="collapse" data-bs-target="#collapse_item_{{ $loop->parent->index }}_{{ $loop->index }}" aria-expanded="false">Packet Results <strong class="highlight">{{ $file }}</strong></h3> <div class="accordion-item">
<div id="collapse_item_{{ $loop->parent->index }}_{{ $loop->index }}" class="accordion-collapse collapse @if($loop->parent->first)show @endif" aria-labelledby="packetdebug" data-bs-parent="#accordion_packet"> <h3 class="accordion-header">
<div class="accordion-body"> <span class="accordion-button" id="packet" data-bs-toggle="collapse" data-bs-target="#collapse_item_{{ $loop->parent->index }}_{{ $loop->index }}" aria-expanded="false">Packet Results&nbsp;<strong class="highlight">{{ $file }}</strong></span>
<p>Packet <strong class="highlight">{{ $file }}</strong> (type <strong class="highlight">{{ $result->type }}</strong>) is from <strong class="highlight">{{ $result->fftn }}</strong> to <strong class="highlight">{{ $result->tftn }}</strong>, dated <strong class="highlight">{{ $result->date }}</strong>.</p> </h3>
<p>This packet has <strong class="highlight">{{ $result->messages->count() }}</strong> messages and <strong class="highlight">{{ $result->password ? 'DOES' : 'does NOT' }}</strong> have a password.</p>
<p>Tosser: <strong class="highlight">{{ $result->software->code }}</strong> (<strong class="highlight">{{ $result->software->name }}</strong>), version <strong class="highlight">{{ $result->software_ver }}</strong>. Capabilities: <strong class="highlight">{{ $result->capability }}</strong>.</p>
@if ($result->messages->count() > 1)
<p><small>You can expand each one</small></p>
@endif
<hr>
<div class="accordion accordion-flush" id="accordion_file_{{ $loop->parent->index }}">
@foreach ($result as $msg)
<div class="row">
<div class="col-12">
<h4 class="accordion-header" id="packetdebug" data-bs-toggle="collapse" data-bs-target="#collapse_msg_{{ $loop->parent->index }}_{{ $loop->index }}" aria-expanded="false">
@if($msg->isNetmail()) Netmail @else Echomail <strong>{{ $msg->echoarea }}</strong> @endif : {{ $msg->msgid }}
</h4>
<div id="collapse_msg_{{ $loop->parent->index }}_{{ $loop->index }}" class="accordion-collapse collapse @if($result->messages->count() === 1 && $loop->parent->first)show @endif" aria-labelledby="packetdebug" data-bs-parent="#accordion_file_{{ $loop->parent->parent->index }}"> <div id="collapse_item_{{ $loop->parent->index }}_{{ $loop->index }}" class="accordion-collapse collapse @if($loop->parent->first)show @endif" aria-labelledby="packet" data-bs-parent="#accordion_packet">
<div class="accordion-body"> <div class="accordion-body">
@if ($msg->errors) <p>Packet <strong class="highlight">{{ $file }}</strong> (type <strong class="highlight">{{ $result->type }}</strong>) is from <strong class="highlight">{{ $result->fftn }}</strong> to <strong class="highlight">{{ $result->tftn }}</strong>, dated <strong class="highlight">{{ $result->date }}</strong>.</p>
@foreach ($msg->errors->messages()->all() as $error) <p>This packet has <strong class="highlight">{{ $result->messages->count() }}</strong> messages and <strong class="highlight">{{ $result->password ? 'DOES' : 'does NOT' }}</strong> have a password.</p>
<div class="alert alert-danger"> <p>Tosser: <strong class="highlight">{{ $result->software->code }}</strong> (<strong class="highlight">{{ $result->software->name }}</strong>), version <strong class="highlight">{{ $result->software_ver }}</strong>. Capabilities: <strong class="highlight">{{ $result->capability }}</strong>.</p>
{{ $error }} @if ($result->messages->count() > 1)
</div> <p><small>You can expand each one</small></p>
@endforeach @endif
@endif
<div class="row pb-2"> <hr>
<div class="col-4">
DATE: <strong class="highlight">{{ $msg->date }}</strong>
</div>
<div class="col-4">
FLAGS: <strong class="highlight">{{ $msg->flags()->filter()->keys()->join(', ') }}</strong>
</div>
</div>
<div class="row pb-2"> <div class="accordion" id="accordion_file_{{ $loop->parent->index }}">
<div class="col-4"> <!-- MSG DUMP -->
FROM: <strong class="highlight">{!! \App\Classes\FTN\Message::tr($msg->user_from) !!}</strong> (<strong class="highlight">{{ $msg->fftn }}</strong>) @foreach ($result as $msg)
</div> <div class="row">
<div class="col-4"> <div class="col-12">
TO: <strong class="highlight">{!! \App\Classes\FTN\Message::tr($msg->user_to) !!}</strong>@if($msg->isNetmail()) (<strong class="highlight">{{ $msg->tftn }}</strong>) @endif <h4 class="accordion-header">
</div> <span class="accordion-button" id="pktmsg" data-bs-toggle="collapse" data-bs-target="#collapse_msg_{{ $loop->parent->parent->index }}_{{ $loop->index }}" aria-expanded="false">
</div> @if($msg->isNetmail()) Netmail @else Echomail&nbsp;<strong>{{ $msg->echoarea }}</strong> @endif : {{ $msg->msgid }}
</span>
</h4>
<div class="row pb-2"> <div id="collapse_msg_{{ $loop->parent->parent->index }}_{{ $loop->index }}" class="accordion-collapse collapse @if($result->messages->count() === 1 && $loop->parent->first)show @endif" aria-labelledby="pktmsg" data-bs-parent="#accordion_file_{{ $loop->parent->parent->index }}">
<div class="col-8"> <div class="accordion-body">
SUBJECT: <strong class="highlight">{!! \App\Classes\FTN\Message::tr($msg->subject) !!}</strong> @if ($msg->errors)
</div> @foreach ($msg->errors->messages()->all() as $error)
</div> <div class="alert alert-danger">
{{ $error }}
<div class="row pb-2"> </div>
<div class="col-8">
<div class="pad pb-0">
<pre class="highlight">{!! \App\Classes\FTN\Message::tr($msg->message).sprintf("\r * Origin: %s",$msg->origin) !!}</pre>
</div>
</div>
</div>
@if($msg->tagline)
<div class="row pb-2">
<div class="col-8">
TAGLINE: <br><strong class="highlight">{{ $msg->tagline }}</strong>
</div>
</div>
@endif
@if($msg->isNetmail())
<div class="row pb-2">
<div class="col-8">
VIA: <br><strong class="highlight">{!! $msg->via->join('</strong><br><strong class="highlight">') !!}</strong>
</div>
</div>
@else
<div class="row pb-2">
<div class="col-8">
SEENBY: <br><strong class="highlight">{!! $msg->seenby->join('</strong><br><strong class="highlight">') !!}</strong>
</div>
</div>
<div class="row pb-2">
<div class="col-8">
PATH: <br><strong class="highlight">{!! $msg->path->join('</strong><br><strong class="highlight">') !!}</strong>
</div>
</div>
@endif
<div class="row pb-2">
<div class="col-8">
<strong>KLUDGES:</strong> <br>
@foreach ($msg->kludge->sort(function($v,$k) { return $k; })->reverse() as $k => $v)
<strong class="highlight">{{ $k }}</strong> {{ $v }}<br>
@endforeach @endforeach
@endif
<div class="row pb-2">
<div class="col-4">
DATE: <strong class="highlight">{{ $msg->date }}</strong>
</div>
<div class="col-4">
FLAGS: <strong class="highlight">{{ $msg->flags()->filter()->keys()->join(', ') }}</strong>
</div>
</div>
<div class="row pb-2">
<div class="col-4">
FROM: <strong class="highlight">{!! \App\Classes\FTN\Message::tr($msg->user_from) !!}</strong> (<strong class="highlight">{{ $msg->fftn }}</strong>)
</div>
<div class="col-4">
TO: <strong class="highlight">{!! \App\Classes\FTN\Message::tr($msg->user_to) !!}</strong>@if($msg->isNetmail()) (<strong class="highlight">{{ $msg->tftn }}</strong>) @endif
</div>
</div>
<div class="row pb-2">
<div class="col-8">
SUBJECT: <strong class="highlight">{!! \App\Classes\FTN\Message::tr($msg->subject) !!}</strong>
</div>
</div>
<div class="row pb-2">
<div class="col-8">
<div class="pad pb-0">
<pre class="highlight">{!! \App\Classes\FTN\Message::tr($msg->message).sprintf("\r * Origin: %s",$msg->origin) !!}</pre>
</div>
</div>
</div>
@if($msg->tagline)
<div class="row pb-2">
<div class="col-8">
TAGLINE: <br><strong class="highlight">{{ $msg->tagline }}</strong>
</div>
</div>
@endif
@if($msg->isNetmail())
<div class="row pb-2">
<div class="col-8">
VIA: <br><strong class="highlight">{!! $msg->via->join('</strong><br><strong class="highlight">') !!}</strong>
</div>
</div>
@else
<div class="row pb-2">
<div class="col-8">
SEENBY: <br><strong class="highlight">{!! $msg->seenby->join('</strong><br><strong class="highlight">') !!}</strong>
</div>
</div>
<div class="row pb-2">
<div class="col-8">
PATH: <br><strong class="highlight">{!! $msg->path->join('</strong><br><strong class="highlight">') !!}</strong>
</div>
</div>
@endif
<div class="row pb-2">
<div class="col-8">
<strong>KLUDGES:</strong> <br>
@foreach ($msg->kludge->sort(function($v,$k) { return $k; })->reverse() as $k => $v)
<strong class="highlight">{{ $k }}</strong> {{ $v }}<br>
@endforeach
</div>
</div> </div>
</div> </div>
</div> </div>
</div>
</div>
</div> </div>
</div> @endforeach
@endforeach
<!-- PKT DUMP -->
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<div class="accordion-item">
<h4 class="accordion-header">
<span class="accordion-button collapsed" id="pktdump" data-bs-toggle="collapse" data-bs-target="#collapse_hex_{{ $loop->parent->index }}" aria-expanded="false">
Packet Dump
</span>
</h4>
<h4 class="accordion-header" id="packetdebug}" data-bs-toggle="collapse" data-bs-target="#collapse_hex" aria-expanded="false"> <div id="collapse_hex_{{ $loop->parent->index }}" class="accordion-collapse collapse" aria-labelledby="pktdump" data-bs-parent="#accordion_file_{{ $loop->parent->index }}">
Packet Dump <div class="accordion-body">
</h4>
<div id="collapse_hex" class="accordion-collapse collapse" aria-labelledby="packetdebug" data-bs-parent="#accordion_file">
<div class="accordion-body">
<pre> <pre>
{{ $hexdump }} {{ $hexdump }}
</pre> </pre>
</div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div>
</div> </div>
</div> </div>
</div> </div>

View File

@ -10,10 +10,12 @@
</div> </div>
</div> </div>
<div class="accordion accordion-flush" id="accordion_status"> <div class="accordion" id="accordion_status">
<!-- Totals --> <!-- Totals -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="totals" data-bs-toggle="collapse" data-bs-target="#collapse_totals" aria-expanded="false" aria-controls="collapse_totals">Totals</h3> <h3 class="accordion-header">
<span class="accordion-button" id="totals" data-bs-toggle="collapse" data-bs-target="#collapse_totals" aria-expanded="false" aria-controls="collapse_totals">Totals</span>
</h3>
<div id="collapse_totals" class="accordion-collapse collapse {{ (! $flash=session()->pull('accordion')) ? 'show' : '' }}" aria-labelledby="totals" data-bs-parent="#accordion_status"> <div id="collapse_totals" class="accordion-collapse collapse {{ (! $flash=session()->pull('accordion')) ? 'show' : '' }}" aria-labelledby="totals" data-bs-parent="#accordion_status">
<div class="accordion-body"> <div class="accordion-body">
@ -146,7 +148,9 @@
<!-- Uncollected Mail --> <!-- Uncollected Mail -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="uncollected" data-bs-toggle="collapse" data-bs-target="#collapse_uncollected" aria-expanded="true" aria-controls="collapse_uncollected">Uncollected Mail</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="uncollected" data-bs-toggle="collapse" data-bs-target="#collapse_uncollected" aria-expanded="true" aria-controls="collapse_uncollected">Uncollected Mail</span>
</h3>
<div id="collapse_uncollected" class="accordion-collapse collapse {{ ($flash==='uncollected') ? 'show' : '' }}" aria-labelledby="uncollected" data-bs-parent="#accordion_status"> <div id="collapse_uncollected" class="accordion-collapse collapse {{ ($flash==='uncollected') ? 'show' : '' }}" aria-labelledby="uncollected" data-bs-parent="#accordion_status">
<div class="accordion-body"> <div class="accordion-body">

View File

@ -15,11 +15,13 @@
<p>This system is the ZC for the following zones: <strong class="highlight">{!! $o->zcs->sortBy('zone_id')->map(function($item) { return sprintf('%d@%s',$item->zone_id,$item->domain->name); })->join('</strong>, <strong class="highlight">') !!} </strong></p> <p>This system is the ZC for the following zones: <strong class="highlight">{!! $o->zcs->sortBy('zone_id')->map(function($item) { return sprintf('%d@%s',$item->zone_id,$item->domain->name); })->join('</strong>, <strong class="highlight">') !!} </strong></p>
@endif @endif
<div class="accordion accordion-flush" id="accordion_homepage"> <div class="accordion" id="accordion_homepage">
@if ($o->exists) @if ($o->exists)
<!-- System --> <!-- System -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="system" data-bs-toggle="collapse" data-bs-target="#collapse_system" aria-expanded="true" aria-controls="collapse_system">System</h3> <h3 class="accordion-header">
<span class="accordion-button" id="system" data-bs-toggle="collapse" data-bs-target="#collapse_system" aria-expanded="true" aria-controls="collapse_system">System</span>
</h3>
<div id="collapse_system" class="accordion-collapse collapse {{ (! $flash=session()->pull('accordion')) ? 'show' : '' }}" aria-labelledby="system" data-bs-parent="#accordion_homepage"> <div id="collapse_system" class="accordion-collapse collapse {{ (! $flash=session()->pull('accordion')) ? 'show' : '' }}" aria-labelledby="system" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
@ -30,14 +32,18 @@
<!-- Addresses --> <!-- Addresses -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="addresses" data-bs-toggle="collapse" data-bs-target="#collapse_addresses" aria-expanded="false" aria-controls="collapse_addresses">System AKAs</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="addresses" data-bs-toggle="collapse" data-bs-target="#collapse_addresses" aria-expanded="false" aria-controls="collapse_addresses">System AKAs</span>
</h3>
<div id="collapse_addresses" class="accordion-collapse collapse {{ ($flash=='address') ? 'show' : '' }}" aria-labelledby="addresses" data-bs-parent="#accordion_homepage"> <div id="collapse_addresses" class="accordion-collapse collapse {{ ($flash=='address') ? 'show' : '' }}" aria-labelledby="addresses" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
<p>FidoNet addresses are constructed in the format <strong class="highlight">zone</strong>:<strong class="highlight">net</strong>/<strong class="highlight">node</strong>.<strong class="highlight">point</strong><span>@</span><strong class="highlight">domain</strong>.</p> <p>FidoNet addresses are constructed in the format <strong class="highlight">zone</strong>:<strong class="highlight">net</strong>/<strong class="highlight">node</strong>.<strong class="highlight">point</strong><span>@</span><strong class="highlight">domain</strong>.</p>
<div class="accordion accordion-flush" id="accordion_ftnaddress"> <div class="accordion accordion-flush" id="accordion_ftnaddress">
<h4 class="accordion-header" id="ftnaddress" data-bs-toggle="collapse" data-bs-target="#collapse_ftnaddresses" aria-expanded="false" aria-controls="collapse_addresses">Fidonet Addressing</h4> <h4 class="accordion-header">
<span class="accordion-button collapsed" id="ftnaddress" data-bs-toggle="collapse" data-bs-target="#collapse_ftnaddresses" aria-expanded="false" aria-controls="collapse_addresses">Fidonet Addressing</span>
</h4>
<div id="collapse_ftnaddresses" class="accordion-collapse collapse" aria-labelledby="ftnaddress" data-bs-parent="#accordion_ftnaddress"> <div id="collapse_ftnaddresses" class="accordion-collapse collapse" aria-labelledby="ftnaddress" data-bs-parent="#accordion_ftnaddress">
<div class="accordion-body"> <div class="accordion-body">
@ -171,7 +177,9 @@
@if(! $o->setup) @if(! $o->setup)
<!-- Authentication --> <!-- Authentication -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="authentication" data-bs-toggle="collapse" data-bs-target="#collapse_auth" aria-expanded="false" aria-controls="collapse_auth">System Authentication</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="authentication" data-bs-toggle="collapse" data-bs-target="#collapse_auth" aria-expanded="false" aria-controls="collapse_auth">System Authentication</span>
</h3>
<div id="collapse_auth" class="accordion-collapse collapse {{ ($flash=='session') ? 'show' : '' }}" aria-labelledby="authentication" data-bs-parent="#accordion_homepage"> <div id="collapse_auth" class="accordion-collapse collapse {{ ($flash=='session') ? 'show' : '' }}" aria-labelledby="authentication" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
@ -231,7 +239,9 @@
<!-- Echoareas --> <!-- Echoareas -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="echoarea" data-bs-toggle="collapse" data-bs-target="#collapse_echoarea" aria-expanded="false" aria-controls="collapse_echoarea">Echo Area Subscription</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="echoarea" data-bs-toggle="collapse" data-bs-target="#collapse_echoarea" aria-expanded="false" aria-controls="collapse_echoarea">Echo Area Subscription</span>
</h3>
<div id="collapse_echoarea" class="accordion-collapse collapse {{ ($flash=='echoarea') ? 'show' : '' }}" aria-labelledby="echoarea" data-bs-parent="#accordion_homepage"> <div id="collapse_echoarea" class="accordion-collapse collapse {{ ($flash=='echoarea') ? 'show' : '' }}" aria-labelledby="echoarea" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
@ -243,7 +253,9 @@
<!-- Fileareas --> <!-- Fileareas -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="filearea" data-bs-toggle="collapse" data-bs-target="#collapse_filearea" aria-expanded="false" aria-controls="collapse_filearea">File Area Subscription</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="filearea" data-bs-toggle="collapse" data-bs-target="#collapse_filearea" aria-expanded="false" aria-controls="collapse_filearea">File Area Subscription</span>
</h3>
<div id="collapse_filearea" class="accordion-collapse collapse {{ ($flash=='filearea') ? 'show' : '' }}" aria-labelledby="filearea" data-bs-parent="#accordion_homepage"> <div id="collapse_filearea" class="accordion-collapse collapse {{ ($flash=='filearea') ? 'show' : '' }}" aria-labelledby="filearea" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
@ -255,7 +267,9 @@
<!-- Routing --> <!-- Routing -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="routing" data-bs-toggle="collapse" data-bs-target="#collapse_routing" aria-expanded="false" aria-controls="collapse_routing">Mail Routing</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="routing" data-bs-toggle="collapse" data-bs-target="#collapse_routing" aria-expanded="false" aria-controls="collapse_routing">Mail Routing</span>
</h3>
<div id="collapse_routing" class="accordion-collapse collapse {{ ($flash=='routing') ? 'show' : '' }}" aria-labelledby="routing" data-bs-parent="#accordion_homepage"> <div id="collapse_routing" class="accordion-collapse collapse {{ ($flash=='routing') ? 'show' : '' }}" aria-labelledby="routing" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
@ -331,9 +345,11 @@
<!-- Items Waiting --> <!-- Items Waiting -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="mail" data-bs-toggle="collapse" data-bs-target="#collapse_mail" aria-expanded="false" aria-controls="collapse_mail">Items Waiting</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="waiting" data-bs-toggle="collapse" data-bs-target="#collapse_mail" aria-expanded="false" aria-controls="collapse_mail">Items Waiting</span>
</h3>
<div id="collapse_mail" class="accordion-collapse collapse {{ ($flash=='mail') ? 'show' : '' }}" aria-labelledby="mail" data-bs-parent="#accordion_homepage"> <div id="collapse_mail" class="accordion-collapse collapse {{ ($flash=='mail') ? 'show' : '' }}" aria-labelledby="waiting" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
<div class="row"> <div class="row">
<!-- Netmail --> <!-- Netmail -->
@ -408,9 +424,11 @@
<!-- Last Packets and Files --> <!-- Last Packets and Files -->
<div class="accordion-item"> <div class="accordion-item">
<h3 class="accordion-header" id="mail" data-bs-toggle="collapse" data-bs-target="#collapse_transfers" aria-expanded="false" aria-controls="collapse_mail">Packets and Files Sent</h3> <h3 class="accordion-header">
<span class="accordion-button collapsed" id="last" data-bs-toggle="collapse" data-bs-target="#collapse_transfers" aria-expanded="false" aria-controls="collapse_mail">Packets and Files Sent</span>
</h3>
<div id="collapse_transfers" class="accordion-collapse collapse {{ ($flash=='transfers') ? 'show' : '' }}" aria-labelledby="mail" data-bs-parent="#accordion_homepage"> <div id="collapse_transfers" class="accordion-collapse collapse {{ ($flash=='transfers') ? 'show' : '' }}" aria-labelledby="last" data-bs-parent="#accordion_homepage">
<div class="accordion-body"> <div class="accordion-body">
<div class="row"> <div class="row">
<div class="col-4"> <div class="col-4">