remove setup
This commit is contained in:
@@ -1,71 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace Lucent\Http\Controller;
|
|
||||||
|
|
||||||
use Illuminate\Contracts\View\View;
|
|
||||||
use Illuminate\Http\RedirectResponse;
|
|
||||||
use Illuminate\Http\Request;
|
|
||||||
use Lucent\Account\AccountService;
|
|
||||||
use Lucent\Channel\ChannelService;
|
|
||||||
use Lucent\Setup\Data\SetupStep;
|
|
||||||
use Lucent\Setup\Data\SetupStepStatus;
|
|
||||||
use Lucent\Setup\Step\ComposerStep;
|
|
||||||
use Lucent\Setup\Step\DatabaseSetupStep;
|
|
||||||
use Lucent\Setup\Step\IStep;
|
|
||||||
use Lucent\Setup\Step\LaravelEnvStep;
|
|
||||||
use Lucent\Setup\Step\LucentConfigStep;
|
|
||||||
use Lucent\Setup\Step\StorageLinkSetupStep;
|
|
||||||
use Lucent\Setup\Step\StorageSetupStep;
|
|
||||||
use Lucent\Svelte\Svelte;
|
|
||||||
|
|
||||||
class SetupController
|
|
||||||
{
|
|
||||||
public function __construct(
|
|
||||||
private readonly AccountService $accountService,
|
|
||||||
private readonly ChannelService $channelService,
|
|
||||||
private readonly Svelte $svelte,
|
|
||||||
) {}
|
|
||||||
|
|
||||||
public function setup(Request $request): View|RedirectResponse
|
|
||||||
{
|
|
||||||
$steps = array_reduce(
|
|
||||||
[
|
|
||||||
new ComposerStep(),
|
|
||||||
new LucentConfigStep(),
|
|
||||||
new LaravelEnvStep(),
|
|
||||||
new StorageSetupStep(),
|
|
||||||
new StorageLinkSetupStep(),
|
|
||||||
new DatabaseSetupStep(),
|
|
||||||
],
|
|
||||||
fn(array $carry, IStep $setupStep) => array_merge($carry, [
|
|
||||||
$setupStep(),
|
|
||||||
]),
|
|
||||||
[],
|
|
||||||
);
|
|
||||||
$allSuccess = array_reduce(
|
|
||||||
$steps,
|
|
||||||
fn(bool $carry, SetupStep $step) => !$carry
|
|
||||||
? false
|
|
||||||
: $step->status === SetupStepStatus::SUCCESS,
|
|
||||||
true,
|
|
||||||
);
|
|
||||||
|
|
||||||
if ($allSuccess) {
|
|
||||||
if ($this->accountService->countUsers() > 0) {
|
|
||||||
return redirect(
|
|
||||||
$this->channelService->channel->lucentUrl . "/login",
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return $this->svelte->render(
|
|
||||||
layout: "account",
|
|
||||||
view: "setup",
|
|
||||||
title: "Setup Lucent",
|
|
||||||
data: [
|
|
||||||
"steps" => $steps,
|
|
||||||
"allSuccess" => $allSuccess,
|
|
||||||
],
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user