107 lines
5.4 KiB
PHP
107 lines
5.4 KiB
PHP
{{-- Pterodactyl - Panel --}}
|
|
{{-- Copyright (c) 2015 - 2017 Dane Everitt <dane@daneeveritt.com> --}}
|
|
|
|
{{-- This software is licensed under the terms of the MIT license. --}}
|
|
{{-- https://opensource.org/licenses/MIT --}}
|
|
@extends('layouts.admin')
|
|
|
|
@section('title')
|
|
Service
|
|
@endsection
|
|
|
|
@section('content-header')
|
|
<h1>Service<small>All services currently available on this system.</small></h1>
|
|
<ol class="breadcrumb">
|
|
<li><a href="{{ route('admin.index') }}">Admin</a></li>
|
|
<li class="active">Service</li>
|
|
</ol>
|
|
@endsection
|
|
|
|
@section('content')
|
|
<div class="row">
|
|
<div class="col-xs-12">
|
|
<div class="alert alert-danger">
|
|
Services are a powerful feature of Pterodactyl Panel that allow for extreme flexibility and configuration. Please note that while powerful, modifing a service wrongly can very easily brick your servers and cause more problems. Please avoid editing our default services — those provided by <code>support@pterodactyl.io</code> — unless you are absolutely sure of what you are doing.
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-xs-12">
|
|
<div class="box">
|
|
<div class="box-header with-border">
|
|
<h3 class="box-title">Configured Service</h3>
|
|
<div class="box-tools">
|
|
<a href="#" class="btn btn-sm btn-success" data-toggle="modal" data-target="#importServiceOptionModal" role="button"><i class="fa fa-upload"></i> Import Service Option</a>
|
|
<a href="{{ route('admin.services.new') }}" class="btn btn-primary btn-sm">Create New</a>
|
|
</div>
|
|
</div>
|
|
<div class="box-body table-responsive no-padding">
|
|
<table class="table table-hover">
|
|
<tr>
|
|
<th>Name</th>
|
|
<th>Description</th>
|
|
<th class="text-center">Options</th>
|
|
<th class="text-center">Packs</th>
|
|
<th class="text-center">Servers</th>
|
|
</tr>
|
|
@foreach($services as $service)
|
|
<tr>
|
|
<td class="middle"><a href="{{ route('admin.services.view', $service->id) }}" data-toggle="tooltip" data-placement="right" title="{{ $service->author }}">{{ $service->name }}</a></td>
|
|
<td class="col-xs-6 middle">{{ $service->description }}</td>
|
|
<td class="text-center middle"><code>{{ $service->options_count }}</code></td>
|
|
<td class="text-center middle"><code>{{ $service->packs_count }}</code></td>
|
|
<td class="text-center middle"><code>{{ $service->servers_count }}</code></td>
|
|
</tr>
|
|
@endforeach
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="modal fade" tabindex="-1" role="dialog" id="importServiceOptionModal">
|
|
<div class="modal-dialog" role="document">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
|
|
<h4 class="modal-title">Import a Service Option</h4>
|
|
</div>
|
|
<form action="{{ route('admin.services.option.import') }}" enctype="multipart/form-data" method="POST">
|
|
<div class="modal-body">
|
|
<div class="form-group">
|
|
<label class="control-label" for="pImportFile">Service File <span class="field-required"></span></label>
|
|
<div>
|
|
<input id="pImportFile" type="file" name="import_file" class="form-control" accept="application/json" />
|
|
<p class="small text-muted">Select the <code>.json</code> file for the new service option that you wish to import.</p>
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<label class="control-label" for="pImportToService">Associated Service <span class="field-required"></span></label>
|
|
<div>
|
|
<select id="pImportToService" name="import_to_service">
|
|
@foreach($services as $service)
|
|
<option value="{{ $service->id }}">{{ $service->name }} <{{ $service->author }}></option>
|
|
@endforeach
|
|
</select>
|
|
<p class="small text-muted">Select the service that this option will be associated with from the dropdown. If you wish to associate it with a new service you will need to create that service before continuing.</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
{{ csrf_field() }}
|
|
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
|
|
<button type="submit" class="btn btn-primary">Import</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@endsection
|
|
|
|
@section('footer-scripts')
|
|
@parent
|
|
<script>
|
|
$(document).ready(function() {
|
|
$('#pImportToService').select2();
|
|
});
|
|
</script>
|
|
@endsection
|