68 lines
2.3 KiB
PHP
68 lines
2.3 KiB
PHP
<?php
|
|
|
|
namespace App\Admin\Controllers;
|
|
|
|
use Slowlyo\OwlAdmin\Admin;
|
|
use Illuminate\Http\JsonResponse;
|
|
use Illuminate\Http\Resources\Json\JsonResource;
|
|
use Illuminate\Support\Facades\Storage;
|
|
use Slowlyo\OwlAdmin\Controllers\AdminController;
|
|
|
|
class HomeController extends AdminController
|
|
{
|
|
public function index(): JsonResponse|JsonResource
|
|
{
|
|
$page = $this->basePage()->body($this->frameworkInfo());
|
|
|
|
return $this->response()->success($page);
|
|
}
|
|
|
|
protected function upload($type = 'file')
|
|
{
|
|
$file = request()->file('file');
|
|
|
|
if (! $file) {
|
|
return $this->response()->fail(__('admin.upload_file_error'));
|
|
}
|
|
|
|
$disk = request()->input('disk', Admin::config('admin.upload.disk'));
|
|
|
|
$path = $file->store(Admin::config('admin.upload.directory.'.$type), $disk);
|
|
|
|
return $this->response()->success(['value' => Storage::disk($disk)->url($path), 'path' => $path]);
|
|
}
|
|
|
|
public function frameworkInfo()
|
|
{
|
|
$link = function ($label, $link) {
|
|
return amis()->Action()
|
|
->level('link')
|
|
->className('text-lg font-semibold')
|
|
->label($label)
|
|
->blank(true)
|
|
->actionType('url')
|
|
->link($link);
|
|
};
|
|
|
|
return amis()->Card()->className('h-96')->body(
|
|
amis()->Wrapper()->className('h-full')->body([
|
|
amis()->Flex()
|
|
->className('h-full')
|
|
->direction('column')
|
|
->justify('center')
|
|
->alignItems('center')
|
|
->items([
|
|
amis()->Image()->src(url(Admin::config('admin.logo'))),
|
|
amis()->Wrapper()->className('text-3xl mt-9 font-bold')->body(Admin::config('admin.name')),
|
|
amis()->Flex()->className('w-full mt-5')->justify('center')->items([
|
|
$link('GitHub', 'https://github.com/slowlyo/owl-admin'),
|
|
$link('Official website', 'https://owladmin.com'),
|
|
$link('Documentation', 'https://doc.owladmin.com'),
|
|
$link('Demo', 'http://demo.owladmin.com'),
|
|
]),
|
|
]),
|
|
])
|
|
);
|
|
}
|
|
}
|