You've already forked Epicnabbo-Catalogus-Updated-Daily
🆙 Final fix delete storage link to fix news_images and logs 🆙
This commit is contained in:
@@ -1,27 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Miscellaneous;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Articles\WebsiteArticle;
|
||||
use App\Models\Miscellaneous\CameraWeb;
|
||||
use Illuminate\View\View;
|
||||
|
||||
class HomeController extends Controller
|
||||
{
|
||||
public function __invoke(): View
|
||||
{
|
||||
return view('index', [
|
||||
'articles' => WebsiteArticle::latest('id')
|
||||
->take(4)
|
||||
->has('user')
|
||||
->with('user:id,username,look')
|
||||
->get(),
|
||||
'photos' => CameraWeb::latest('id')
|
||||
->take(4)
|
||||
->where('visible', true)
|
||||
->with('user:id,username,look')
|
||||
->get(),
|
||||
]);
|
||||
}
|
||||
}
|
||||
@@ -1,119 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Miscellaneous;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Miscellaneous\WebsiteInstallation;
|
||||
use App\Models\Miscellaneous\WebsiteSetting;
|
||||
use App\Rules\ValidateInstallationKeyRule;
|
||||
use Exception;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Cache;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
class InstallationController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
return view('installation.index');
|
||||
}
|
||||
|
||||
public function storeInstallationKey(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'installation_key' => ['required', 'string', 'max:255', new ValidateInstallationKeyRule],
|
||||
]);
|
||||
|
||||
WebsiteInstallation::first()->update([
|
||||
'step' => 1,
|
||||
'user_ip' => $request->ip(),
|
||||
]);
|
||||
|
||||
return to_route('installation.show-step', 1);
|
||||
}
|
||||
|
||||
public function showStep($currentStep)
|
||||
{
|
||||
$settings = $this->getSettingsForStep((int) $currentStep);
|
||||
|
||||
return view('installation.step-' . $currentStep, [
|
||||
'settings' => $settings,
|
||||
]);
|
||||
}
|
||||
|
||||
public function saveStepSettings(Request $request)
|
||||
{
|
||||
$this->updateSettings($request);
|
||||
|
||||
WebsiteInstallation::increment('step');
|
||||
|
||||
return to_route('installation.show-step', WebsiteInstallation::first()->step);
|
||||
}
|
||||
|
||||
public function previousStep()
|
||||
{
|
||||
WebsiteInstallation::decrement('step');
|
||||
|
||||
return to_route('installation.show-step', WebsiteInstallation::first()->step);
|
||||
}
|
||||
|
||||
public function restartInstallation()
|
||||
{
|
||||
WebsiteInstallation::first()->update([
|
||||
'step' => 0,
|
||||
'installation_key' => Str::uuid(),
|
||||
'user_ip' => null,
|
||||
]);
|
||||
|
||||
WebsiteSetting::where('key', 'theme')->update([
|
||||
'value' => 'atom',
|
||||
]);
|
||||
|
||||
return to_route('installation.index');
|
||||
}
|
||||
|
||||
public function completeInstallation()
|
||||
{
|
||||
WebsiteInstallation::latest()->first()->update([
|
||||
'completed' => true,
|
||||
]);
|
||||
|
||||
if (Cache::has('website_permissions')) {
|
||||
Cache::forget('website_permissions');
|
||||
}
|
||||
|
||||
if (Cache::has('website_settings')) {
|
||||
Cache::forget('website_settings');
|
||||
}
|
||||
|
||||
return to_route('welcome');
|
||||
}
|
||||
|
||||
private function updateSettings(Request $request)
|
||||
{
|
||||
foreach ($request->except('_token') as $key => $value) {
|
||||
WebsiteSetting::where('key', '=', $key)->update([
|
||||
'value' => $value ?? '',
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
private function getSettingsForStep(int $step)
|
||||
{
|
||||
$settingsData = array_chunk(WebsiteSetting::all()->pluck('key')->toArray(), ceil(WebsiteSetting::count() / 4));
|
||||
|
||||
$settings = match ($step) {
|
||||
1 => $settingsData[0] ?? [],
|
||||
2 => $settingsData[1] ?? [],
|
||||
3 => $settingsData[2] ?? [],
|
||||
4 => $settingsData[3] ?? [],
|
||||
5 => [], // Completion step has no settings
|
||||
default => throw new Exception('Step does not exist'),
|
||||
};
|
||||
|
||||
return WebsiteSetting::query()
|
||||
->whereIn('key', $settings)
|
||||
->select(['key', 'value', 'comment'])
|
||||
->get();
|
||||
}
|
||||
}
|
||||
@@ -1,24 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Miscellaneous;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Miscellaneous\WebsiteLanguage;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Support\Facades\App;
|
||||
use Illuminate\Support\Facades\Session;
|
||||
|
||||
class LocaleController extends Controller
|
||||
{
|
||||
public function __invoke(string $locale): RedirectResponse
|
||||
{
|
||||
if (! WebsiteLanguage::where('country_code', $locale)->exists()) {
|
||||
return back()->withErrors(['message' => __('The language selected is not supported')]);
|
||||
}
|
||||
|
||||
App::setLocale($locale);
|
||||
Session::put('locale', $locale);
|
||||
|
||||
return back();
|
||||
}
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Miscellaneous;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Miscellaneous\WebsiteSetting;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class LogoGeneratorController extends Controller
|
||||
{
|
||||
public function index()
|
||||
{
|
||||
if (hasPermission('generate_logo') === '' || hasPermission('generate_logo') === '0') {
|
||||
return to_route('me.show')->with([
|
||||
'message' => __('You do not have permission to do this.'),
|
||||
]);
|
||||
}
|
||||
|
||||
return view('logo-generator');
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$request->validate(['logo' => ['required', 'image']]);
|
||||
$file = $request->file('logo');
|
||||
$filename = $file->getClientOriginalName();
|
||||
$path = '/assets/images/generated-logos';
|
||||
|
||||
$file->move(public_path($path), $filename);
|
||||
|
||||
$setting = WebsiteSetting::where('key', 'cms_logo')->first();
|
||||
|
||||
$setting->update([
|
||||
'value' => sprintf('%s/%s', $path, $filename),
|
||||
]);
|
||||
|
||||
return response()->json(['success' => true, 'message' => 'Logo updated!']);
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,17 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Miscellaneous;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\Miscellaneous\WebsiteMaintenanceTask;
|
||||
use Illuminate\View\View;
|
||||
|
||||
class MaintenanceController extends Controller
|
||||
{
|
||||
public function __invoke(): View
|
||||
{
|
||||
return view('maintenance', [
|
||||
'tasks' => WebsiteMaintenanceTask::with('user:id,username,look')->simplePaginate(5),
|
||||
]);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user