PHP 8.2.30
Preview: LanguagesController.php Size: 2.75 KB
/home/byroehnu/easetack.com/app/Http/Controllers/Admin/LanguagesController.php

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;
use App\Http\Requests\Admin\Settings\Languages\LanguageStoreRequest;
use App\Http\Requests\Admin\Settings\Languages\LanguageUpdateRequest;
use App\Models\Language;
use App\Models\Setting;
use App\Repositories\Admin\LanguageRepository;
use App\Repositories\SettingRepository;
use Illuminate\Http\RedirectResponse;
use Inertia\Inertia;
use Inertia\Response;

class LanguagesController extends Controller
{
    public function __construct()
    {
        // for demo mood
        $this->middleware('demo', ['only' => ['destroy', 'store', 'update']]);
    }

    /**
     * Display a listing of the resource.
     */
    public function index(): Response
    {
        $data['languages'] = json_decode(Setting::pull('languages'), true);
        $data['default_lang'] = Setting::pull('default_lang');

        return Inertia::render('Settings/Languages/Index', $data);
    }

    /**
     * Show the form for creating a new resource.
     */
    public function create(): Response
    {
        $data['languages'] = Language::all();

        return Inertia::render('Settings/Languages/Create', $data);
    }

    /**
     * Store a newly created language in storage.
     */
    public function store(LanguageStoreRequest $request, LanguageRepository $repository): RedirectResponse
    {
        $repository->createLang($request);

        return redirect()->route('admin.languages.index')->with('success', 'Language successfully created!');
    }

    /**
     * Edit the specified resource in storage.
     */
    public function edit($language): Response
    {
        $data['languages'] = Language::all();
        $data['edited_lang'] = json_decode(Setting::pull('languages'), true)[$language];

        return Inertia::render('Settings/Languages/Edit', $data);
    }

    /**
     * Update the specified resource.
     */
    public function update(LanguageUpdateRequest $request, $language, LanguageRepository $repository): RedirectResponse
    {
        $repository->update($request, $language);

        return redirect()->route('admin.languages.index')->with('success', 'Language file updated successfully!');
    }

    /**
     * Delete language from storage.
     */
    public function destroy($language, LanguageRepository $repository): RedirectResponse
    {
        $repository->deleteLang($language);

        return back()->with('success', 'Language successfully deleted!');
    }

    /**
     * Make default language.
     */
    public function makeDefault($language, LanguageRepository $repository, SettingRepository $settingRepository): RedirectResponse
    {
        $repository->makeDefault($language, $settingRepository);

        return back()->with('success', 'Language set successfully as default');
    }
}

Directory Contents

Dirs: 0 × Files: 40

Name Size Perms Modified Actions
1.15 KB lrw-rw-rw- 2025-05-04 10:56:26
Edit Download
3.88 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
5.44 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
3.97 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
1.95 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
1.91 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
3.00 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
2.07 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
1.09 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
411 B lrw-rw-rw- 2025-04-08 04:12:56
Edit Download
1.66 KB lrw-rw-rw- 2025-05-05 10:37:43
Edit Download
2.75 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
3.09 KB lrw-rw-rw- 2025-05-15 11:24:11
Edit Download
4.47 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
1.89 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
4.12 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
5.40 KB lrw-rw-rw- 2025-05-17 12:58:43
Edit Download
169 B lrw-rw-rw- 2025-04-19 04:22:19
Edit Download
1.01 KB lrw-rw-rw- 2025-04-19 04:22:19
Edit Download
3.82 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
5.51 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
5.19 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
3.20 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
3.59 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
3.52 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
2.54 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
1.18 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
2.79 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
459 B lrw-rw-rw- 2025-04-19 04:22:18
Edit Download
3.74 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
5.54 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
5.50 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
1.78 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
1.77 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
4.79 KB lrw-rw-rw- 2025-05-08 11:48:26
Edit Download
2.98 KB lrw-rw-rw- 2025-04-19 04:22:19
Edit Download
847 B lrw-rw-rw- 2025-04-08 04:12:56
Edit Download
2.32 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
1.77 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download
2.63 KB lrw-rw-rw- 2025-05-01 09:00:37
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).