@extends('layouts.app')
@section('htmlheader_title')
	Systems
@endsection

@section('content')
	<div class="row">
		<div class="col-12">
			<h2>BBS Systems</h2>
			<p>BBS Systems Send and Receive Echomail and Files.</p>
		</div>
	</div>

	<div class="row">
		<div class="col-12">
			<p>This system is aware of the following systems:</p>

			@if (\App\Models\System::count() == 0)
				@can('admin',(new \App\Models\System))
					<p>There are no systems setup, to <a href="{{ url('ftn/system/addedit') }}">set up your first</a>.</p>
				@else
					<p class="pad">There are no systems - you need to ask an admin to create one for you.</p>
				@endcan
			@else
				@can('admin',(new \App\Models\System))
					<p>You can <a href="{{ url('ftn/system/addedit') }}">Add New System</a>.</p>
				@endcan

				<table class="table monotable" id="systems">
					<thead>
					<tr>
						<th>ID</th>
						<th>System</th>
						<th>Sysop</th>
						<th>Location</th>
						<th>Connect</th>
						<th>Address</th>
						<th>ZeroTier ID</th>
					</tr>
					</thead>

					<tbody>
					@foreach (\App\Models\System::active()->orderBy('name')->with(['addresses.zone.domain'])->get() as $oo)
						<tr>
							<td><a href="{{ url('ftn/system/addedit',[$oo->id]) }}">{{ $oo->id }}</a></td>
							<td>{{ $oo->name }}</td>
							<td>{{ $oo->sysop }}</td>
							<td>{{ $oo->location }}</td>
							<td>
								@switch($oo->method)
									@case(23)<a href="telnet://{{ $oo->address }}:{{ $oo->port }}">Telnet</a>@break
									@case(22)<a href="ssh://{{ $oo->address }}:{{ $oo->port }}">SSH</a>@break
									@case(519)<a href="rlogin://{{ $oo->address }}:{{ $oo->port }}">SSH</a>@break
									@default No details
								@endswitch
							</td>
							<td>{{ join(',',$oo->addresses->pluck('ftn')->toArray()) }}</td>
							<td>{{ $oo->zt_id }}</td>
						</tr>
					@endforeach
					</tbody>
				</table>
			@endif
		</div>
	</div>
@endsection

@section('page-scripts')
	<link type="text/css" rel="stylesheet" href="https://cdn.datatables.net/1.10.25/css/dataTables.bootstrap5.min.css" media="screen" >
	<link type="text/css" rel="stylesheet" href="{{ asset('plugin/dataTables/dataTables.bootstrap5.css') }}" media="screen">

	<script type="text/javascript" src="https://cdn.datatables.net/1.10.25/js/jquery.dataTables.min.js"></script>
	<script type="text/javascript" src="https://cdn.datatables.net/rowgroup/1.1.2/js/dataTables.rowGroup.min.js"></script>
	<script type="text/javascript" src="https://cdn.datatables.net/1.10.25/js/dataTables.bootstrap5.min.js"></script>

	<script type="text/javascript">
		$('table tr').click(function() {
			var href = $(this).find('a').attr('href');

			if (href)
				window.location = href;
		});

		$('#systems').DataTable({
			paging: true,
			pageLength: 25,
			searching: true,
			autoWidth: false,
			columnDefs: [
				{
					targets: [5,6],
					visible: false,
				}
			],
		});
	</script>
@append