blue-twilight/resources/views/themes/base/admin/create_storage.blade.php

101 lines
4.7 KiB
PHP

@extends(Theme::viewName('layout'))
@section('title', trans('admin.create_storage'))
@section('breadcrumb')
<li class="breadcrumb-item"><a href="{{ route('home') }}"><i class="fa fa-fw fa-home"></i></a></li>
<li class="breadcrumb-item"><a href="{{ route('admin') }}">@lang('navigation.breadcrumb.admin')</a></li>
<li class="breadcrumb-item"><a href="{{ route('storage.index') }}">@lang('navigation.breadcrumb.storage')</a></li>
<li class="breadcrumb-item active">@lang('navigation.breadcrumb.create_storage')</li>
@endsection
@section('content')
<div class="container">
<div class="row">
<div class="col">
<h1>@lang('admin.create_storage')</h1>
<p>@lang('admin.create_storage_intro')</p>
<hr/>
<form action="{{ route('storage.store') }}" method="post" id="storage-options">
{{ csrf_field() }}
<div class="form-group">
<label class="form-control-label" for="storage-name">@lang('forms.name_label')</label>
<input type="text" class="form-control{{ $errors->has('name') ? ' is-invalid' : '' }}" id="storage-name" name="name" value="{{ old('name', $storage->name) }}">
@if ($errors->has('name'))
<div class="invalid-feedback">
<strong>{{ $errors->first('name') }}</strong>
</div>
@endif
</div>
<div class="form-group">
<div class="form-group">
<label class="form-control-label" for="storage-source">@lang('forms.storage_driver_label')</label>
<select id="storage-source" name="source" class="form-control{{ $errors->has('source') ? ' is-invalid' : '' }}" v-model="storage_driver">
@foreach ($album_sources as $key => $value)
<option value="{{ $key }}"{{ old('source') == $key ? ' selected="selected"' : '' }}>{{ $value }}</option>
@endforeach
</select>
@if ($errors->has('source'))
<div class="invalid-feedback">
<strong>{{ $errors->first('source') }}</strong>
</div>
@endif
</div>
</div>
<div v-if="storage_driver == 'LocalFilesystemSource'">
@include(Theme::viewName('partials.admin_storages_filesystem_options'))
</div>
<div v-if="storage_driver == 'OpenStackSource'">
@include(Theme::viewName('partials.admin_storages_openstack_options'))
</div>
<div v-if="storage_driver == 'AmazonS3Source'">
@include(Theme::viewName('partials.admin_storages_amazon_s3_options'))
</div>
<div v-if="storage_driver == 'RackspaceSource'">
@include(Theme::viewName('partials.admin_storages_rackspace_options'))
</div>
<div v-if="storage_driver == 'BackblazeB2Source'">
@include(Theme::viewName('partials.admin_storages_backblaze_b2_options'))
</div>
<div v-if="storage_driver == 'DropboxSource'">
@include(Theme::viewName('partials.admin_storages_dropbox_options'))
</div>
<div class="form-check">
<input type="checkbox" class="form-check-input" id="is-default" name="is_default"@if (old('is_default', $storage->is_default)) checked="checked"@endif>
<label class="form-check-label" for="is-default">@lang('forms.default_storage_label')</label>
</div>
<div class="text-right">
<a href="{{ route('storage.index') }}" class="btn btn-link">@lang('forms.cancel_action')</a>
<button type="submit" class="btn btn-success"><i class="fa fa-fw fa-check"></i> @lang('forms.create_action')</button>
</div>
</form>
</div>
</div>
</div>
@endsection
@push('scripts')
<script type="text/javascript">
$(document).ready(function()
{
var viewModel = new StorageLocationViewModel();
var app = new Vue(viewModel);
@if (strlen(old('source')) > 0)
app.storage_driver = '{{ old('source') }}';
@endif
});
</script>
@endpush