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