enable php extension installation (#68)

This commit is contained in:
Saeed Vaziry
2023-10-15 10:06:50 +02:00
committed by GitHub
parent f51d7900f0
commit 9d13cc0756
6 changed files with 115 additions and 5 deletions

View File

@ -28,9 +28,9 @@
</x-secondary-button>
</x-slot>
<x-slot name="content">
{{--<x-dropdown-link class="cursor-pointer">--}}
{{-- {{ __("Install Extension") }}--}}
{{--</x-dropdown-link>--}}
<x-dropdown-link class="cursor-pointer" x-on:click="$wire.extensionId = {{ $php->id }}; $dispatch('open-modal', 'install-extension')">
{{ __("Install Extension") }}
</x-dropdown-link>
<x-dropdown-link class="cursor-pointer" x-on:click="$dispatch('open-modal', 'update-php-ini')" wire:click="loadIni({{ $php->id }})">
{{ __("Edit php.ini") }}
</x-dropdown-link>
@ -52,6 +52,7 @@
</div>
@include('livewire.php.partials.uninstall-php')
@include('livewire.php.partials.update-php-ini')
@include('livewire.php.partials.install-extension')
@else
<x-simple-card>
<div class="text-center">

View File

@ -0,0 +1,36 @@
<x-modal name="install-extension">
<form wire:submit.prevent="installExtension" class="p-6">
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
{{ __('Install Extension') }}
</h2>
<div class="mt-6">
<x-input-label for="extension" value="Name" />
<x-select-input wire:model.defer="extension" name="extension" class="mt-1 w-full">
<option value="" selected>{{ __("Select") }}</option>
@foreach(config('core.php_extensions') as $extension)
<option value="{{ $extension }}" @if(in_array($extension, $installedExtensions)) disabled @endif>
{{ $extension }} @if(in_array($extension, $installedExtensions)) ({{ __("Installed") }}) @endif
</option>
@endforeach
</x-select-input>
@error('name')
<x-input-error class="mt-2" :messages="$message" />
@enderror
</div>
<div class="mt-6 flex items-center justify-end">
@if (session('status') === 'started-installation')
<p class="mr-2">{{ __('Installation Started!') }}</p>
@endif
<x-secondary-button type="button" x-on:click="$dispatch('close')">
{{ __('Cancel') }}
</x-secondary-button>
<x-primary-button class="ml-3">
{{ __('Install') }}
</x-primary-button>
</div>
</form>
</x-modal>