{{-- 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