clrghouz/resources/views/domain/home.blade.php

100 lines
2.5 KiB
PHP

@use(App\Models\Domain)
@extends('layouts.app')
@section('htmlheader_title')
FTN Domains
@endsection
@section('content')
<div class="row">
<div class="col-12">
<h2>About FTN Domains</h2>
<p>In FTN network addresses, a domain is the 5th dimension and used when a system supports 5D addressing, ie: zone:net/node.point@<strong class="highlight">domain</strong>.</p>
<p>Domains are used with zones to uniquely identify a FTN network.</p>
<p><small>Some legacy Fidonet software is not 5D aware and may behave unexpectedly when a domain is used</small></p>
<p>This system is aware of the following domains @can('admin',(new Domain))(you can <a href="{{ url('domain/addedit') }}">add</a> more)@endcan:</p>
</div>
</div>
<div class="row">
<div class="col-9">
@if (Domain::count() === 0)
@can('admin',(new Domain))
<p>There are no domains setup, to <a href="{{ url('domain/addedit') }}">set up your first</a>.</p>
@else
<p class="pad">There are no domains - you need to ask an admin to create one for you.</p>
@endcan
@else
<table class="table monotable" id="domain">
<thead>
<tr>
<th>ID</th>
<th>Domain</th>
<th>Active</th>
<th>DNS domain</th>
<th>Zones</th>
</tr>
</thead>
<tbody>
@foreach (Domain::orderBy('name')->with(['zones'])->get() as $oo)
<tr>
<td><a href="{{ url('domain/addedit',[$oo->id]) }}">{{ $oo->id }}</a></td>
<td>{{ $oo->name }}</td>
<td>{{ $oo->active ? 'YES' : 'NO' }}</td>
<td>{{ $oo->dnsdomain }}</td>
<td>{{ $oo->zones->pluck('zone_id')->sort()->join(', ') }}</td>
</tr>
@endforeach
</tbody>
</table>
@endif
</div>
</div>
@endsection
@section('page-css')
@css('datatables')
@append
@section('page-scripts')
@js('datatables')
<script type="text/javascript">
$(document).ready(function() {
$('table tr').click(function() {
var href = $(this).find('a').attr('href');
if (href)
window.location = href;
});
$('#domain').DataTable({
paging: true,
pageLength: 25,
searching: true,
order: [],
conditionalPaging: {
style: 'fade',
speed: 500
},
columnDefs: [
{
targets: 4,
type: 'num-fmt',
render: {
'sort': function (data,type,row,meta) {
return data ? parseFloat(data) : 0;
},
}
}
],
language: {
paginate: {
previous: '&lt;&lt;',
next: '&gt;&gt;'
}
}
});
});
</script>
@append