mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-05 18:23:48 +00:00
69 lines
1.7 KiB
PHP
69 lines
1.7 KiB
PHP
<?php
|
|
namespace App\Services;
|
|
|
|
use App\Models\Page;
|
|
use App\Models\Setting;
|
|
use App\Models\Language;
|
|
use Illuminate\Support\Facades\Storage;
|
|
|
|
class SetupService
|
|
{
|
|
/**
|
|
* Create default folders which application to process files.
|
|
*/
|
|
public function create_directories()
|
|
{
|
|
collect(['avatars', 'chunks', 'system', 'files', 'temp', 'zip'])
|
|
->each(function ($directory) {
|
|
// Create directory for local driver
|
|
Storage::disk('local')
|
|
->makeDirectory($directory);
|
|
|
|
// Create directory for external driver
|
|
Storage::makeDirectory($directory);
|
|
});
|
|
}
|
|
|
|
/**
|
|
* Store default pages content like Terms of Service, Privacy Policy and Cookie Policy into database
|
|
*/
|
|
public function seed_default_pages()
|
|
{
|
|
collect(config('content.pages'))
|
|
->each(function ($page) {
|
|
Page::updateOrCreate($page);
|
|
});
|
|
}
|
|
|
|
/**
|
|
* Store default VueFileManager settings into database
|
|
*
|
|
* @param $license
|
|
*/
|
|
public function seed_default_settings($license)
|
|
{
|
|
collect(config('content.content.' . strtolower($license)))
|
|
->each(function ($content) {
|
|
Setting::forceCreate($content);
|
|
});
|
|
}
|
|
|
|
/**
|
|
* Store default VueFileManager settings into database
|
|
*
|
|
* @param $license
|
|
*/
|
|
public function seed_default_language()
|
|
{
|
|
Language::create([
|
|
'name' => 'English',
|
|
'locale' => 'en',
|
|
]);
|
|
|
|
Setting::create([
|
|
'name' => 'language',
|
|
'value' => 'en',
|
|
]);
|
|
}
|
|
}
|