2020-06-05 18:35:51 -05:00
|
|
|
@extends('layouts.install')
|
|
|
|
|
2020-06-07 00:03:57 -05:00
|
|
|
@section('title', trans('install.database.title'))
|
|
|
|
|
2020-06-05 18:35:51 -05:00
|
|
|
@section('content')
|
|
|
|
<div class="row">
|
2020-06-07 10:36:45 -05:00
|
|
|
<div class="col-12">
|
2020-06-07 00:03:57 -05:00
|
|
|
<form id="database-form" class="form-horizontal" role="form" method="post" action="{{ route('install.acton.test-database') }}">
|
2020-06-05 18:35:51 -05:00
|
|
|
@csrf
|
2020-06-07 10:36:45 -05:00
|
|
|
<div class="form-row pb-3">
|
|
|
|
<label for="host" class="col-4 col-form-label text-right">@lang('install.database.host')</label>
|
|
|
|
<div class="col-6">
|
2020-06-05 18:35:51 -05:00
|
|
|
<input type="text" class="form-control" name="host" id="host" value="{{ $host ?? 'localhost' }}" placeholder="@lang('install.database.socket_empty')">
|
|
|
|
</div>
|
|
|
|
</div>
|
2020-06-07 10:36:45 -05:00
|
|
|
<div class="form-row pb-3">
|
|
|
|
<label for="port" class="col-4 col-form-label text-right">@lang('install.database.port')</label>
|
|
|
|
<div class="col-6">
|
2020-06-05 18:35:51 -05:00
|
|
|
<input type="text" class="form-control" name="port" id="port" value="{{ $port ?? 3306 }}" placeholder="@lang('install.database.socket_empty')">
|
|
|
|
</div>
|
|
|
|
</div>
|
2020-06-07 10:36:45 -05:00
|
|
|
<div class="form-row pb-3">
|
|
|
|
<label for="unix_socket" class="col-4 col-form-label text-right">@lang('install.database.socket')</label>
|
|
|
|
<div class="col-6">
|
2020-06-05 20:07:24 -05:00
|
|
|
<input type="text" class="form-control" name="unix_socket" id="unix_socket" value="{{ $unix_socket ?? '' }}" placeholder="@lang('install.database.ip_empty')">
|
2020-06-05 18:35:51 -05:00
|
|
|
</div>
|
|
|
|
</div>
|
2020-06-07 10:36:45 -05:00
|
|
|
<div class="form-row pb-3">
|
|
|
|
<label for="username" class="col-4 col-form-label text-right">@lang('install.database.username')</label>
|
|
|
|
<div class="col-6">
|
2020-06-05 18:35:51 -05:00
|
|
|
<input type="text" class="form-control" name="username" id="username" value="{{ $username ?? 'librenms' }}">
|
|
|
|
</div>
|
|
|
|
</div>
|
2020-06-07 10:36:45 -05:00
|
|
|
<div class="form-row pb-3">
|
|
|
|
<label for="password" class="col-4 col-form-label text-right">@lang('install.database.password')</label>
|
|
|
|
<div class="col-6">
|
2020-06-05 20:07:24 -05:00
|
|
|
<input type="password" class="form-control" name="password" id="password" value="{{ $password ?? '' }}">
|
2020-06-05 18:35:51 -05:00
|
|
|
</div>
|
|
|
|
</div>
|
2020-06-07 10:36:45 -05:00
|
|
|
<div class="form-row pb-3">
|
|
|
|
<label for="database" class="col-4 col-form-label text-right">@lang('install.database.name')</label>
|
|
|
|
<div class="col-6">
|
2020-06-05 18:35:51 -05:00
|
|
|
<input type="text" class="form-control" name="database" id="database" value="{{ $database ?? 'librenms' }}">
|
|
|
|
</div>
|
|
|
|
</div>
|
2020-06-06 17:03:32 -05:00
|
|
|
<div class="row">
|
2020-06-07 10:36:45 -05:00
|
|
|
<div class="col-4 offset-1">
|
2020-06-06 17:03:32 -05:00
|
|
|
<strong>@lang('install.database.status'):</strong>
|
|
|
|
<span id="database-status" style="vertical-align: middle">
|
|
|
|
@if($status === null)
|
|
|
|
<i class="fa fa-2x fa-question-circle text-muted"></i>
|
|
|
|
@elseif($status)
|
|
|
|
<i class="fa fa-2x fa-check-circle text-success"></i>
|
|
|
|
@else
|
|
|
|
<i class="fa fa-2x fa-times-circle text-danger"></i>
|
|
|
|
@endif
|
|
|
|
</span>
|
|
|
|
</div>
|
2020-06-07 10:36:45 -05:00
|
|
|
<div class="col-7">
|
|
|
|
<button type="submit" class="btn btn-success float-right">@lang('install.database.test')</button>
|
2020-06-06 17:03:32 -05:00
|
|
|
</div>
|
2020-06-05 20:07:24 -05:00
|
|
|
</div>
|
2020-06-05 18:35:51 -05:00
|
|
|
</form>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
@endsection
|
|
|
|
|
|
|
|
@section('scripts')
|
|
|
|
<script>
|
|
|
|
$('#database-form').submit(function (event) {
|
|
|
|
event.preventDefault();
|
2020-06-06 17:03:32 -05:00
|
|
|
$('#database-status>i').attr('class', 'fa fa-2x fa-spinner fa-spin');
|
|
|
|
$('.db-error').remove();
|
|
|
|
|
2020-06-05 18:35:51 -05:00
|
|
|
$.ajax({
|
|
|
|
type: 'POST',
|
2020-06-05 20:07:24 -05:00
|
|
|
dataType: "json",
|
2020-06-05 18:35:51 -05:00
|
|
|
url: $('#database-form').attr('action'),
|
|
|
|
data: $('#database-form').serialize(),
|
|
|
|
success: function (response) {
|
2020-06-06 17:03:32 -05:00
|
|
|
if (response.result === 'ok') {
|
|
|
|
$('#database-status>i').attr('class', 'fa fa-2x fa-check-circle text-success')
|
2020-06-05 20:07:24 -05:00
|
|
|
} else {
|
2020-06-06 17:03:32 -05:00
|
|
|
$('#database-status>i').attr('class', 'fa fa-2x fa-times-circle text-danger')
|
|
|
|
if (response.message) {
|
|
|
|
$('#error-box').append($('<div class="db-error alert alert-danger">' + response.message + '</div>'))
|
|
|
|
}
|
2020-06-05 20:07:24 -05:00
|
|
|
}
|
2020-06-05 18:35:51 -05:00
|
|
|
},
|
|
|
|
});
|
|
|
|
});
|
|
|
|
</script>
|
|
|
|
@endsection
|