From cb272709a372ea9483e7aaa639cd6a122721944a Mon Sep 17 00:00:00 2001 From: Peter Papp Date: Sun, 14 Mar 2021 17:48:26 +0100 Subject: [PATCH] DemoService.php refactoring --- app/Http/Controllers/Admin/PagesController.php | 9 +++++++-- app/Http/Controllers/Admin/PlanController.php | 7 ++++--- app/Http/Controllers/Admin/SettingController.php | 16 ++++++++++++---- .../FileManager/EditItemsController.php | 13 +++++++------ .../FileManager/FavouriteController.php | 14 +++++++++++--- .../Controllers/FileManager/TrashController.php | 14 +++++++++++--- .../Sharing/EditShareItemsController.php | 13 +++++++------ app/Http/Controllers/User/AccountController.php | 14 +++++++++++--- .../User/PaymentMethodsController.php | 11 +++++------ .../Controllers/User/SubscriptionController.php | 15 +++++---------- .../Tools/Demo.php => Services/DemoService.php} | 16 +++++++--------- app/Services/FileManagerService.php | 8 ++------ 12 files changed, 89 insertions(+), 61 deletions(-) rename app/{Http/Tools/Demo.php => Services/DemoService.php} (93%) diff --git a/app/Http/Controllers/Admin/PagesController.php b/app/Http/Controllers/Admin/PagesController.php index c511a40c..545e45b7 100644 --- a/app/Http/Controllers/Admin/PagesController.php +++ b/app/Http/Controllers/Admin/PagesController.php @@ -5,7 +5,7 @@ namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; use App\Http\Resources\PageCollection; use App\Http\Resources\PageResource; -use App\Http\Tools\Demo; +use App\Services\DemoService; use App\Models\Page; use Illuminate\Contracts\Routing\ResponseFactory; use Illuminate\Http\Request; @@ -13,6 +13,11 @@ use Illuminate\Http\Response; class PagesController extends Controller { + public function __construct() + { + $this->demo = resolve(DemoService::class); + } + /** * Get all pages * @@ -47,7 +52,7 @@ class PagesController extends Controller public function update(Request $request, Page $page) { if (env('APP_DEMO')) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } $page->update( diff --git a/app/Http/Controllers/Admin/PlanController.php b/app/Http/Controllers/Admin/PlanController.php index 7b4aabe2..08eaf6c2 100644 --- a/app/Http/Controllers/Admin/PlanController.php +++ b/app/Http/Controllers/Admin/PlanController.php @@ -7,7 +7,7 @@ use App\Http\Resources\PlanCollection; use App\Http\Resources\PlanResource; use App\Http\Resources\UserResource; use App\Http\Resources\UsersCollection; -use App\Http\Tools\Demo; +use App\Services\DemoService; use App\Models\Plan; use App\Services\StripeService; use App\Models\User; @@ -27,6 +27,7 @@ class PlanController extends Controller public function __construct(StripeService $stripe) { $this->stripe = $stripe; + $this->demo = resolve(DemoService::class); } /** @@ -110,7 +111,7 @@ class PlanController extends Controller public function update(Request $request, $id) { if (env('APP_DEMO')) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Update plan @@ -131,7 +132,7 @@ class PlanController extends Controller public function delete($id) { if (env('APP_DEMO')) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Delete plan diff --git a/app/Http/Controllers/Admin/SettingController.php b/app/Http/Controllers/Admin/SettingController.php index f994eddb..44162538 100644 --- a/app/Http/Controllers/Admin/SettingController.php +++ b/app/Http/Controllers/Admin/SettingController.php @@ -3,7 +3,7 @@ namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; -use App\Http\Tools\Demo; +use App\Services\DemoService; use App\Models\Setting; use Artisan; use Stripe; @@ -13,6 +13,14 @@ use Symfony\Component\HttpKernel\Exception\HttpException; class SettingController extends Controller { + /** + * SettingController constructor. + */ + public function __construct() + { + $this->demo = resolve(DemoService::class); + } + /** * Get table content * @@ -42,7 +50,7 @@ class SettingController extends Controller public function update(Request $request) { if (env('APP_DEMO')) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Store image if exist @@ -77,7 +85,7 @@ class SettingController extends Controller { // TODO: pridat validator do requestu if (env('APP_DEMO')) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } if (!app()->runningUnitTests()) { @@ -171,7 +179,7 @@ class SettingController extends Controller public function flush_cache() { if (env('APP_DEMO')) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } if (!app()->runningUnitTests()) { diff --git a/app/Http/Controllers/FileManager/EditItemsController.php b/app/Http/Controllers/FileManager/EditItemsController.php index 369cc836..4d0f6a42 100644 --- a/app/Http/Controllers/FileManager/EditItemsController.php +++ b/app/Http/Controllers/FileManager/EditItemsController.php @@ -7,7 +7,7 @@ use App\Http\Requests\FileFunctions\DeleteItemRequest; use App\Http\Requests\FileFunctions\RenameItemRequest; use App\Http\Requests\FileFunctions\MoveItemRequest; use App\Http\Requests\FileFunctions\UploadRequest; -use App\Http\Tools\Demo; +use App\Services\DemoService; use App\Services\FileManagerService; use App\Services\HelperService; use Illuminate\Contracts\Routing\ResponseFactory; @@ -29,6 +29,7 @@ class EditItemsController extends Controller { $this->filemanager = resolve(FileManagerService::class); $this->helper = resolve(HelperService::class); + $this->demo = resolve(DemoService::class); } /** @@ -42,7 +43,7 @@ class EditItemsController extends Controller { // Demo preview if (is_demo(Auth::id())) { - return Demo::create_folder($request); + return $this->demo->create_folder($request); } // Check permission to create folder for authenticated editor @@ -74,7 +75,7 @@ class EditItemsController extends Controller { // Demo preview if (is_demo(Auth::id())) { - return Demo::rename_item($request, $id); + return $this->demo->rename_item($request, $id); } // Check permission to rename item for authenticated editor @@ -118,7 +119,7 @@ class EditItemsController extends Controller { // Demo preview if (is_demo(Auth::id())) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } foreach ($request->input('items') as $item) { @@ -164,7 +165,7 @@ class EditItemsController extends Controller { // Demo preview if (is_demo(Auth::id())) { - return Demo::upload($request); + return $this->demo->upload($request); } // Check permission to upload for authenticated editor @@ -195,7 +196,7 @@ class EditItemsController extends Controller { // Demo preview if (is_demo(Auth::id())) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } $to_id = $request->input('to_id'); diff --git a/app/Http/Controllers/FileManager/FavouriteController.php b/app/Http/Controllers/FileManager/FavouriteController.php index 8ec9500c..5f4f75ab 100644 --- a/app/Http/Controllers/FileManager/FavouriteController.php +++ b/app/Http/Controllers/FileManager/FavouriteController.php @@ -2,7 +2,7 @@ namespace App\Http\Controllers\FileManager; -use App\Http\Tools\Demo; +use App\Services\DemoService; use App\Models\Folder; use Illuminate\Support\Facades\Validator; use App\Http\Controllers\Controller; @@ -11,6 +11,14 @@ use Illuminate\Http\Request; class FavouriteController extends Controller { + /** + * FavouriteController constructor. + */ + public function __construct() + { + $this->demo = resolve(DemoService::class); + } + /** * Add folder to user favourites * @@ -27,7 +35,7 @@ class FavouriteController extends Controller $user = Auth::user(); if (is_demo($user->id)) { - return Demo::favourites($user); + return $this->demo->favourites($user); } // Add folder to user favourites @@ -52,7 +60,7 @@ class FavouriteController extends Controller $user = Auth::user(); if (is_demo($user->id)) { - return Demo::favourites($user); + return $this->demo->favourites($user); } // Remove folder from user favourites diff --git a/app/Http/Controllers/FileManager/TrashController.php b/app/Http/Controllers/FileManager/TrashController.php index 72053416..a31e9ac9 100644 --- a/app/Http/Controllers/FileManager/TrashController.php +++ b/app/Http/Controllers/FileManager/TrashController.php @@ -2,7 +2,7 @@ namespace App\Http\Controllers\FileManager; -use App\Http\Tools\Demo; +use App\Services\DemoService; use Illuminate\Contracts\Routing\ResponseFactory; use Illuminate\Support\Facades\Validator; use Illuminate\Support\Facades\Storage; @@ -14,6 +14,14 @@ use App\Models\File; class TrashController extends Controller { + /** + * TrashController constructor. + */ + public function __construct() + { + $this->demo = resolve(DemoService::class); + } + /** * Restore item from trash * @@ -36,7 +44,7 @@ class TrashController extends Controller $user_id = Auth::id(); if (is_demo($user_id)) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } foreach ($request->input('items') as $restore) { @@ -89,7 +97,7 @@ class TrashController extends Controller $user_id = Auth::id(); if (is_demo($user_id)) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Get files and folders diff --git a/app/Http/Controllers/Sharing/EditShareItemsController.php b/app/Http/Controllers/Sharing/EditShareItemsController.php index fbf11870..d87b9fe2 100644 --- a/app/Http/Controllers/Sharing/EditShareItemsController.php +++ b/app/Http/Controllers/Sharing/EditShareItemsController.php @@ -8,9 +8,9 @@ use App\Http\Requests\FileFunctions\DeleteItemRequest; use App\Http\Requests\FileFunctions\MoveItemRequest; use App\Http\Requests\FileFunctions\RenameItemRequest; use App\Http\Requests\FileFunctions\UploadRequest; -use App\Http\Tools\Demo; use App\Models\File; use App\Models\Folder; +use App\Services\DemoService; use App\Services\FileManagerService; use App\Services\HelperService; use Illuminate\Contracts\Routing\ResponseFactory; @@ -27,6 +27,7 @@ class EditShareItemsController extends Controller { $this->filemanager = resolve(FileManagerService::class); $this->helper = resolve(HelperService::class); + $this->demo = resolve(DemoService::class); } /** * Create new folder for guest user with edit permission @@ -41,7 +42,7 @@ class EditShareItemsController extends Controller $shared = get_shared($token); if (is_demo($shared->user_id)) { - return Demo::create_folder($request); + return $this->demo->create_folder($request); } // Check shared permission @@ -74,7 +75,7 @@ class EditShareItemsController extends Controller // Demo preview if (is_demo($shared->user_id)) { - return Demo::rename_item($request, $id); + return $this->demo->rename_item($request, $id); } // Check shared permission @@ -124,7 +125,7 @@ class EditShareItemsController extends Controller // Demo preview if (is_demo($shared->user_id)) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Check shared permission @@ -166,7 +167,7 @@ class EditShareItemsController extends Controller // Demo preview if (is_demo($shared->user_id)) { - return Demo::upload($request); + return $this->demo->upload($request); } // Check shared permission @@ -201,7 +202,7 @@ class EditShareItemsController extends Controller // Demo preview if (is_demo(Auth::id())) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Check shared permission diff --git a/app/Http/Controllers/User/AccountController.php b/app/Http/Controllers/User/AccountController.php index 180b9ef6..74baceb8 100644 --- a/app/Http/Controllers/User/AccountController.php +++ b/app/Http/Controllers/User/AccountController.php @@ -8,7 +8,7 @@ use App\Http\Resources\InvoiceCollection; use App\Http\Resources\StorageDetailResource; use App\Http\Resources\UserResource; use App\Http\Resources\UserStorageResource; -use App\Http\Tools\Demo; +use App\Services\DemoService; use Illuminate\Contracts\Routing\ResponseFactory; use Illuminate\Support\Facades\Validator; use App\Http\Controllers\Controller; @@ -20,6 +20,14 @@ use App\Models\User; class AccountController extends Controller { + /** + * AccountController constructor. + */ + public function __construct() + { + $this->demo = resolve(DemoService::class); + } + /** * Get all user data to frontend * @@ -80,7 +88,7 @@ class AccountController extends Controller // Check if is demo if (is_demo($user->id)) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Update avatar @@ -120,7 +128,7 @@ class AccountController extends Controller $user = Auth::user(); if (is_demo($user->id)) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Change and store new password diff --git a/app/Http/Controllers/User/PaymentMethodsController.php b/app/Http/Controllers/User/PaymentMethodsController.php index d73481bd..af621a47 100644 --- a/app/Http/Controllers/User/PaymentMethodsController.php +++ b/app/Http/Controllers/User/PaymentMethodsController.php @@ -7,7 +7,7 @@ use App\Http\Requests\Payments\RegisterNewPaymentMethodRequest; use App\Http\Resources\PaymentCardCollection; use App\Http\Resources\PaymentCardResource; use App\Http\Resources\PaymentDefaultCardResource; -use App\Http\Tools\Demo; +use App\Services\DemoService; use App\Services\StripeService; use Auth; use Illuminate\Http\Request; @@ -16,12 +16,11 @@ use Laravel\Cashier\PaymentMethod; class PaymentMethodsController extends Controller { - /** - * PaymentMethodsController constructor. - */ + public function __construct(StripeService $stripe) { $this->stripe = $stripe; + $this->demo = resolve(DemoService::class); } /** @@ -99,7 +98,7 @@ class PaymentMethodsController extends Controller // Check if is demo if (is_demo($user->id)) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Update DefaultPayment Method @@ -149,7 +148,7 @@ class PaymentMethodsController extends Controller // Check if is demo if (is_demo($user->id)) { - return Demo::response_204(); + return $this->demo->response_with_no_content(); } // Get payment method diff --git a/app/Http/Controllers/User/SubscriptionController.php b/app/Http/Controllers/User/SubscriptionController.php index 2c63c3d2..67e1e3d6 100644 --- a/app/Http/Controllers/User/SubscriptionController.php +++ b/app/Http/Controllers/User/SubscriptionController.php @@ -5,18 +5,12 @@ namespace App\Http\Controllers\User; use App\Http\Controllers\Controller; use App\Http\Requests\Subscription\StoreUpgradeAccountRequest; use App\Http\Resources\UserSubscription; -use App\Http\Tools\Demo; -use App\Invoice; +use App\Services\DemoService; use App\Models\User; use App\Services\StripeService; use Auth; -use Cartalyst\Stripe\Exception\CardErrorException; use Illuminate\Contracts\Routing\ResponseFactory; -use Illuminate\Http\Request; use Illuminate\Support\Facades\Cache; -use Laravel\Cashier\Exceptions\IncompletePayment; -use Laravel\Cashier\Subscription; -use Symfony\Component\HttpKernel\Exception\HttpException; class SubscriptionController extends Controller { @@ -29,6 +23,7 @@ class SubscriptionController extends Controller public function __construct(StripeService $stripe) { $this->stripe = $stripe; + $this->demo = DemoService::class; } /** @@ -83,7 +78,7 @@ class SubscriptionController extends Controller // Check if is demo if (is_demo($user->id)) { - return Demo::response_204(); + return $this->demo->response_204(); } // Forget user subscription @@ -120,7 +115,7 @@ class SubscriptionController extends Controller // Check if is demo if (is_demo($user->id)) { - return Demo::response_204(); + return $this->demo->response_204(); } // Cancel subscription @@ -143,7 +138,7 @@ class SubscriptionController extends Controller // Check if is demo if (is_demo($user->id)) { - return Demo::response_204(); + return $this->demo->response_204(); } // Resume subscription diff --git a/app/Http/Tools/Demo.php b/app/Services/DemoService.php similarity index 93% rename from app/Http/Tools/Demo.php rename to app/Services/DemoService.php index 0f700128..2ee2a28c 100644 --- a/app/Http/Tools/Demo.php +++ b/app/Services/DemoService.php @@ -1,6 +1,6 @@ user() ? $request->user()->token()->scopes[0] : 'editor'; @@ -56,7 +56,7 @@ class Demo * @param $unique_id * @return mixed */ - public static function rename_item($request, $unique_id) + function rename_item($request, $unique_id) { // Get item if ($request->type === 'folder') { @@ -96,7 +96,7 @@ class Demo * @return array * @throws \Exception */ - public static function upload($request) + function upload($request) { // Get user data $user_scope = $request->user() ? $request->user()->token()->scopes[0] : 'editor'; @@ -130,9 +130,8 @@ class Demo * * @return ResponseFactory|\Illuminate\Http\Response */ - public static function response_204() + function response_with_no_content() { - return response('Done!', 204); } @@ -141,9 +140,8 @@ class Demo * * @return ResponseFactory|\Illuminate\Http\Response */ - public static function favourites($user) + function favourites($user) { - return $user->favouriteFolders->makeHidden(['pivot']); } } \ No newline at end of file diff --git a/app/Services/FileManagerService.php b/app/Services/FileManagerService.php index b7889286..df40e88d 100644 --- a/app/Services/FileManagerService.php +++ b/app/Services/FileManagerService.php @@ -173,8 +173,7 @@ class FileManagerService $name = $request->has('name') ? $request->input('name') : 'New Folder'; $user_id = is_null($shared) ? Auth::id() : $shared->user_id; - // Create folder - $folder = Folder::create([ + return Folder::create([ 'parent_id' => $request->parent_id, 'user_scope' => $user_scope, 'user_id' => $user_id, @@ -182,10 +181,7 @@ class FileManagerService 'name' => $name, 'icon_color' => isset($request->icon['color']) ? $request->icon['color'] : null, 'icon_emoji' => isset($request->icon['emoji']) ? $request->icon['emoji'] : null, - ]); - - // Return new folder - return $folder; + ]);; } /**