mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-06 02:33:48 +00:00
controller refactoring part 14
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
use Domain\Admin\Controllers\UserController;
|
||||
use Domain\Localization\Controllers\UpdateLanguageStringController;
|
||||
use Domain\Plans\Controllers\PlansController;
|
||||
use Domain\Admin\Controllers\InvoiceController;
|
||||
use Domain\Admin\Controllers\DashboardController;
|
||||
@@ -60,11 +61,5 @@ Route::group(['prefix' => 'settings'], function () {
|
||||
});
|
||||
|
||||
// Language
|
||||
Route::group(['prefix' => 'languages'], function () {
|
||||
Route::get('/{language}', [LanguageController::class, 'get_language']);
|
||||
Route::patch('/{language}/strings', [LanguageController::class, 'update_string']);
|
||||
Route::delete('/{language}', [LanguageController::class, 'delete_language']);
|
||||
Route::patch('/{language}', [LanguageController::class, 'update_language']);
|
||||
Route::post('/', [LanguageController::class, 'create_language']);
|
||||
Route::get('/', [LanguageController::class, 'get_languages']);
|
||||
});
|
||||
Route::patch('/languages/{language}/strings', UpdateLanguageStringController::class);
|
||||
Route::apiResource('/languages', LanguageController::class);
|
||||
|
||||
@@ -62,10 +62,8 @@ Route::group(['middleware' => ['auth:sanctum']], function () {
|
||||
});
|
||||
|
||||
// Share
|
||||
Route::group(['prefix' => 'share'], function () {
|
||||
Route::post('/{token}/email', ShareViaEmailController::class);
|
||||
Route::apiResource('/', ShareController::class);
|
||||
});
|
||||
Route::post('/share/{token}/email', ShareViaEmailController::class);
|
||||
Route::apiResource('/share', ShareController::class);
|
||||
|
||||
// Favourites
|
||||
Route::apiResource('/folders/favourites', FavouriteController::class);
|
||||
|
||||
@@ -17,37 +17,30 @@ class LanguageController extends Controller
|
||||
{
|
||||
/**
|
||||
* Get all languages for admin translate
|
||||
*
|
||||
* @return array|Application|ResponseFactory|Response
|
||||
*/
|
||||
public function get_languages()
|
||||
public function index(): Response
|
||||
{
|
||||
return response(
|
||||
new LanguageCollection(Language::sortable(['created_at', 'DESC'])->get()),
|
||||
200
|
||||
new LanguageCollection(
|
||||
Language::sortable(['created_at', 'DESC'])->get()
|
||||
), 200
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all language strings for admin translate
|
||||
*
|
||||
* @param Language $language
|
||||
*/
|
||||
public function get_language(Language $language)
|
||||
public function show(Language $language): Response
|
||||
{
|
||||
return response(
|
||||
new LanguageResource($language),
|
||||
200
|
||||
new LanguageResource($language), 200
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Create new language
|
||||
*
|
||||
* @param CreateLanguageRequest $request
|
||||
* @return string
|
||||
*/
|
||||
public function create_language(CreateLanguageRequest $request)
|
||||
public function store(CreateLanguageRequest $request): Response
|
||||
{
|
||||
// Abort in demo mode
|
||||
abort_if(is_demo(), 204, 'Done.');
|
||||
@@ -65,16 +58,16 @@ class LanguageController extends Controller
|
||||
|
||||
/**
|
||||
* Update language
|
||||
*
|
||||
* @param UpdateLanguageRequest $request
|
||||
* @param Language $language
|
||||
*/
|
||||
public function update_language(UpdateLanguageRequest $request, Language $language)
|
||||
{
|
||||
public function update(
|
||||
UpdateLanguageRequest $request, Language $language
|
||||
): Response {
|
||||
// Abort in demo mode
|
||||
abort_if(is_demo(), 204, 'Done.');
|
||||
|
||||
$language->update(make_single_input($request));
|
||||
$language->update(
|
||||
make_single_input($request)
|
||||
);
|
||||
|
||||
return response(
|
||||
new LanguageResource($language),
|
||||
@@ -82,39 +75,10 @@ class LanguageController extends Controller
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Update string for language
|
||||
*
|
||||
* @param UpdateStringRequest $request
|
||||
* @param Language $language
|
||||
* @return Application|ResponseFactory|Response
|
||||
*/
|
||||
public function update_string(UpdateStringRequest $request, Language $language)
|
||||
{
|
||||
// Abort in demo mode
|
||||
abort_if(is_demo(), 204, 'Done.');
|
||||
|
||||
$language
|
||||
->languageTranslations()
|
||||
->where('key', $request->name)
|
||||
->update([
|
||||
'value' => $request->value,
|
||||
]);
|
||||
|
||||
cache()->forget("language-translations-{$language->locale}");
|
||||
|
||||
return response(
|
||||
'Done',
|
||||
204
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Delete the language with all children strings
|
||||
* @param Language $language
|
||||
* @return Response
|
||||
*/
|
||||
public function delete_language(Language $language): Response
|
||||
public function destroy(Language $language): Response
|
||||
{
|
||||
// Abort in demo mode
|
||||
abort_if(is_demo(), 204, 'Done.');
|
||||
@@ -133,8 +97,7 @@ class LanguageController extends Controller
|
||||
$language->delete();
|
||||
|
||||
return response(
|
||||
'Done',
|
||||
204
|
||||
'Done', 204
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
|
||||
namespace Domain\Localization\Controllers;
|
||||
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Domain\Localization\Models\Language;
|
||||
use Domain\Localization\Requests\UpdateStringRequest;
|
||||
use Illuminate\Http\Response;
|
||||
|
||||
class UpdateLanguageStringController extends Controller
|
||||
{
|
||||
/**
|
||||
* Update language string
|
||||
*/
|
||||
public function __invoke(
|
||||
UpdateStringRequest $request,
|
||||
Language $language,
|
||||
): Response {
|
||||
|
||||
// Abort in demo mode
|
||||
abort_if(is_demo(), 204, 'Done.');
|
||||
|
||||
$language
|
||||
->languageTranslations()
|
||||
->where('key', $request->input('name'))
|
||||
->update([
|
||||
'value' => $request->input('value'),
|
||||
]);
|
||||
|
||||
cache()->forget("language-translations-{$language->locale}");
|
||||
|
||||
return response(
|
||||
'Done', 204
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -50,8 +50,6 @@ class SetupService
|
||||
|
||||
/**
|
||||
* Store default VueFileManager settings into database
|
||||
*
|
||||
* @param $license
|
||||
*/
|
||||
public function seed_default_language()
|
||||
{
|
||||
|
||||
@@ -4,8 +4,10 @@ namespace Tests\Domain\Languages;
|
||||
use App\Users\Models\User;
|
||||
use Domain\Settings\Models\Setting;
|
||||
use Domain\Localization\Models\Language;
|
||||
use Domain\SetupWizard\Services\SetupService;
|
||||
use Tests\TestCase;
|
||||
|
||||
class AdminLanguageTranslatorTest
|
||||
class AdminLanguageTranslatorTest extends TestCase
|
||||
{
|
||||
/**
|
||||
* @test
|
||||
@@ -49,7 +51,7 @@ class AdminLanguageTranslatorTest
|
||||
*/
|
||||
public function it_update_language()
|
||||
{
|
||||
$this->setup->seed_default_language();
|
||||
resolve(SetupService::class)->seed_default_language();
|
||||
|
||||
$admin = User::factory(User::class)
|
||||
->create(['role' => 'admin']);
|
||||
@@ -108,7 +110,7 @@ class AdminLanguageTranslatorTest
|
||||
*/
|
||||
public function it_try_to_delete_default_language()
|
||||
{
|
||||
$this->setup->seed_default_language();
|
||||
resolve(SetupService::class)->seed_default_language();
|
||||
|
||||
$admin = User::factory(User::class)
|
||||
->create(['role' => 'admin']);
|
||||
@@ -126,7 +128,7 @@ class AdminLanguageTranslatorTest
|
||||
*/
|
||||
public function it_get_all_languages()
|
||||
{
|
||||
$this->setup->seed_default_language();
|
||||
resolve(SetupService::class)->seed_default_language();
|
||||
|
||||
$admin = User::factory(User::class)
|
||||
->create(['role' => 'admin']);
|
||||
@@ -146,7 +148,7 @@ class AdminLanguageTranslatorTest
|
||||
*/
|
||||
public function it_update_language_string()
|
||||
{
|
||||
$this->setup->seed_default_language();
|
||||
resolve(SetupService::class)->seed_default_language();
|
||||
|
||||
$admin = User::factory(User::class)
|
||||
->create(['role' => 'admin']);
|
||||
@@ -172,7 +174,7 @@ class AdminLanguageTranslatorTest
|
||||
*/
|
||||
public function it_get_language_with_strings_by_selected_language_id()
|
||||
{
|
||||
$this->setup->seed_default_language();
|
||||
resolve(SetupService::class)->seed_default_language();
|
||||
|
||||
$admin = User::factory(User::class)
|
||||
->create(['role' => 'admin']);
|
||||
|
||||
@@ -222,7 +222,7 @@ class UserShareTest extends TestCase
|
||||
'id' => $folder->id,
|
||||
])->assertStatus(201);
|
||||
|
||||
$this->delete('/api/share', [
|
||||
$this->deleteJson('/api/share', [
|
||||
'tokens' => [
|
||||
$folder->shared->token,
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user