mirror of
				https://github.com/crater-invoice/crater.git
				synced 2025-10-30 21:21:09 -04:00 
			
		
		
		
	Compare commits
	
		
			166 Commits
		
	
	
		
			4.0.1
			...
			csfixer-te
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 90bb90cd99 | |||
| ebad76c8d7 | |||
| c35b00493c | |||
| e5ae937a88 | |||
| 736df5fcae | |||
| 89c264c6a9 | |||
| 1837bf3f3e | |||
| 83234cfac3 | |||
| 5ccc9eba4c | |||
| 3f0008ec95 | |||
| 9e98a96d61 | |||
| 27bc89bf76 | |||
| e4c2b44da5 | |||
| 633cad9b89 | |||
| f5bbe68a4b | |||
| 1fac9c9dde | |||
| 1208d3a924 | |||
| 3257b18d58 | |||
| 16a941f787 | |||
| 4f5cd9fba1 | |||
| 80e6a3c757 | |||
| d4e7420640 | |||
| ac30ba599b | |||
| 6dd0ccce8b | |||
| 2f32ff4d5b | |||
| 54a5ca83f8 | |||
| eede2fc17f | |||
| e586adde26 | |||
| 1ffb1b2eec | |||
| 55d838371a | |||
| cdaa1ff103 | |||
| 63f7cdec82 | |||
| fadba7fa3a | |||
| d0f6e207ee | |||
| 845f01f170 | |||
| 7f9938c80d | |||
| 16e4212300 | |||
| 109de237b1 | |||
| 82cf63f200 | |||
| 03fc0fd659 | |||
| c3d3e5e35f | |||
| 909e4f93e4 | |||
| bfd9850bf6 | |||
| 3f7db2793f | |||
| 8693672b09 | |||
| a9b0d62cd6 | |||
| 9f57a4200f | |||
| 9e130b3db8 | |||
| 7c9a846090 | |||
| b2e08dda7f | |||
| a2026fbc8b | |||
| db1b0db461 | |||
| 17c00c322d | |||
| 331b8ea44e | |||
| 428be640c3 | |||
| 51f79433b9 | |||
| 8008ed0527 | |||
| 57b302666a | |||
| ee1d1ccff4 | |||
| 81e7109ad1 | |||
| 784bf39df5 | |||
| f66755c4aa | |||
| b4e1e99d37 | |||
| d8aa3dc8a6 | |||
| 9af51660cb | |||
| 38d0da9618 | |||
| 761c0143ec | |||
| fdc4de5093 | |||
| f8591f96a9 | |||
| e47cb01ce2 | |||
| 454ad3091a | |||
| cc73a8a842 | |||
| cea8405ace | |||
| 49a6e03e9d | |||
| f9d6e8b0cc | |||
| 2b78aacc83 | |||
| 1932c5a75e | |||
| 449968ae88 | |||
| 02a2db4417 | |||
| a53582f916 | |||
| 340bf3be06 | |||
| 7f0da9dc36 | |||
| c4ace76275 | |||
| 553bcc053b | |||
| 375a59a504 | |||
| cfc0a1ef75 | |||
| 392f6f469b | |||
| 6cb8d30915 | |||
| 9b55e84724 | |||
| cf5da7684b | |||
| f47029ca78 | |||
| 761df2ffac | |||
| 8fbc257b23 | |||
| baebfedf37 | |||
| 9321eb9d86 | |||
| 70bed01e7b | |||
| 739efcce79 | |||
| 3695e7d075 | |||
| 8f2033f621 | |||
| 7b95ccb5fc | |||
| b7370ed85c | |||
| 818f2fbaf7 | |||
| 91a1dbf91c | |||
| a4d556f41e | |||
| 83de1c47ee | |||
| 678ace744a | |||
| 9e26fee1b0 | |||
| e455c3de50 | |||
| c4db50d3f0 | |||
| 411ee57946 | |||
| 9c5e9e56f5 | |||
| 8eeafd3fed | |||
| ed978d0174 | |||
| 607b1795bb | |||
| a6c3c815b5 | |||
| ead0ebb012 | |||
| d4550e62f8 | |||
| ff3846137e | |||
| b55f8e5391 | |||
| 0f1d7627ea | |||
| 1be462ef82 | |||
| 8b04e94446 | |||
| fa512629d9 | |||
| 0f99be6cf1 | |||
| fae3af2592 | |||
| d1e70c8989 | |||
| 63094e8112 | |||
| 1b46bddf56 | |||
| 422bf74600 | |||
| d003e61d41 | |||
| 09f74eb37c | |||
| 9227973a7a | |||
| 5011543198 | |||
| d07b63c365 | |||
| c12e27dbfe | |||
| 4ea32b94ed | |||
| fe93d5236c | |||
| 5992394bca | |||
| 6c9f5800e5 | |||
| 227cebcb0b | |||
| 6fd4cc6b3f | |||
| 594c8965c1 | |||
| 2241145a17 | |||
| 34f252b1c9 | |||
| 89e1d7bc84 | |||
| f0368deda2 | |||
| 4028551fd8 | |||
| 06f385a28e | |||
| 44aeff425b | |||
| 35a38d719c | |||
| f6ba81e8b7 | |||
| 64cb55fd5d | |||
| 13fe38517c | |||
| 3bdb501d1d | |||
| b8adbf4b07 | |||
| aa85a9950c | |||
| 8e63efee1b | |||
| ea98f03aeb | |||
| 90cd6226be | |||
| 9d2df64b2e | |||
| bade86a24f | |||
| c3b57b4888 | |||
| fcfedc5414 | |||
| 8dee0da434 | |||
| e4ab024422 | |||
| 2bd01c4014 | 
| @ -34,3 +34,5 @@ PUSHER_SECRET= | ||||
|  | ||||
| SANCTUM_STATEFUL_DOMAINS=crater.test | ||||
| SESSION_DOMAIN=crater.test | ||||
|  | ||||
| TRUSTED_PROXIES="*" | ||||
|  | ||||
							
								
								
									
										21
									
								
								.eslintrc
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								.eslintrc
									
									
									
									
									
								
							| @ -1,21 +0,0 @@ | ||||
| { | ||||
|   "root": true, | ||||
|   "extends": [ | ||||
|     "plugin:vue/recommended", | ||||
|     "eslint:recommended", | ||||
|     "prettier/vue", | ||||
|     "plugin:prettier/recommended" | ||||
|   ], | ||||
|   "rules": { | ||||
|     "vue/max-attributes-per-line": [ | ||||
|       "error", | ||||
|       { | ||||
|         "singleline": 20, | ||||
|         "multiline": { | ||||
|           "max": 1, | ||||
|           "allowFirstLine": false | ||||
|         } | ||||
|       } | ||||
|     ] | ||||
|   } | ||||
| } | ||||
							
								
								
									
										20
									
								
								.eslintrc.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								.eslintrc.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,20 @@ | ||||
| module.exports = { | ||||
|   root: true, | ||||
|   env: { | ||||
|     node: true, | ||||
|   }, | ||||
|   extends: [ | ||||
|     'plugin:vue/recommended', | ||||
|     'eslint:recommended', | ||||
|     'prettier/vue', | ||||
|     'plugin:prettier/recommended', | ||||
|   ], | ||||
|   parserOptions: { | ||||
|     parser: 'babel-eslint', | ||||
|   }, | ||||
|   plugins: ['prettier'], | ||||
|   rules: { | ||||
|     'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off', | ||||
|     'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off', | ||||
|   }, | ||||
| } | ||||
							
								
								
									
										37
									
								
								.github/workflows/ci.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								.github/workflows/ci.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,37 @@ | ||||
| name: CI | ||||
|  | ||||
| on: [push, pull_request] | ||||
|  | ||||
| jobs: | ||||
|   build-test: | ||||
|     runs-on: ubuntu-latest | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|         php: ['7.4', '8.0'] | ||||
|  | ||||
|     name: PHP ${{ matrix.php }} | ||||
|  | ||||
|     steps: | ||||
|     - name: Checkout | ||||
|       uses: actions/checkout@v2 | ||||
|  | ||||
|     - name: Install dependencies | ||||
|       uses: shivammathur/setup-php@v2 | ||||
|       with: | ||||
|         php-version: ${{ matrix.php }} | ||||
|         extensions: exif | ||||
|  | ||||
|     - name: Install PHP 7 dependencies | ||||
|       run: composer update --no-interaction --no-progress | ||||
|       if: "matrix.php < 8" | ||||
|  | ||||
|     - name: Install PHP 8 dependencies | ||||
|       run: composer update --ignore-platform-req=php --no-interaction --no-progress | ||||
|       if: "matrix.php >= 8" | ||||
|  | ||||
|     - name: Check coding style | ||||
|       run: ./vendor/bin/php-cs-fixer fix -v --dry-run --using-cache=no --config=.php-cs-fixer.dist.php | ||||
|  | ||||
|     - name: Unit Tests | ||||
|       run: php ./vendor/bin/pest | ||||
							
								
								
									
										42
									
								
								.php-cs-fixer.dist.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								.php-cs-fixer.dist.php
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,42 @@ | ||||
| <?php | ||||
|  | ||||
| $finder = PhpCsFixer\Finder::create() | ||||
|     ->in(__DIR__) | ||||
|     ->exclude(['bootstrap', 'storage', 'vendor']) | ||||
|     ->name('*.php') | ||||
|     ->name('_ide_helper') | ||||
|     ->notName('*.blade.php') | ||||
|     ->ignoreDotFiles(true) | ||||
|     ->ignoreVCS(true); | ||||
|  | ||||
| $rules = [ | ||||
|     '@PSR12' => true, | ||||
|     'array_syntax' => ['syntax' => 'short'], | ||||
|     'ordered_imports' => ['sort_algorithm' => 'alpha'], | ||||
|     'concat_space' => true, | ||||
|     'no_unused_imports' => true, | ||||
|     'not_operator_with_successor_space' => true, | ||||
|     'phpdoc_scalar' => true, | ||||
|     'unary_operator_spaces' => true, | ||||
|     'binary_operator_spaces' => true, | ||||
|     'blank_line_before_statement' => [ | ||||
|         'statements' => ['break', 'continue', 'declare', 'return', 'throw', 'try'], | ||||
|     ], | ||||
|     'phpdoc_single_line_var_spacing' => true, | ||||
|     'phpdoc_var_without_name' => true, | ||||
|     'class_attributes_separation' => [ | ||||
|         'elements' => [ | ||||
|             'method' => 'one', | ||||
|             'property' => 'one', | ||||
|         ], | ||||
|     ], | ||||
|     'method_argument_space' => [ | ||||
|         'on_multiline' => 'ensure_fully_multiline', | ||||
|         'keep_multiple_spaces_after_comma' => true, | ||||
|     ], | ||||
| ]; | ||||
|  | ||||
| return (new PhpCsFixer\Config()) | ||||
|     ->setUsingCache(true) | ||||
|     ->setRules($rules) | ||||
|     ->setFinder($finder); | ||||
							
								
								
									
										3274
									
								
								_ide_helper.php
									
									
									
									
									
								
							
							
						
						
									
										3274
									
								
								_ide_helper.php
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @ -1,9 +1,10 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Console\Commands; | ||||
|  | ||||
| use Illuminate\Console\Command; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Models\Estimate; | ||||
| use Illuminate\Console\Command; | ||||
|  | ||||
| class CheckEstimateStatus extends Command | ||||
| { | ||||
| @ -39,7 +40,7 @@ class CheckEstimateStatus extends Command | ||||
|     public function handle() | ||||
|     { | ||||
|         $date = Carbon::now(); | ||||
|         $status = array(Estimate::STATUS_ACCEPTED, Estimate::STATUS_REJECTED, Estimate::STATUS_EXPIRED); | ||||
|         $status = [Estimate::STATUS_ACCEPTED, Estimate::STATUS_REJECTED, Estimate::STATUS_EXPIRED]; | ||||
|         $estimates = Estimate::whereNotIn('status', $status)->whereDate('expiry_date', '<', $date)->get(); | ||||
|  | ||||
|         foreach ($estimates as $estimate) { | ||||
|  | ||||
| @ -1,9 +1,10 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Console\Commands; | ||||
|  | ||||
| use Illuminate\Console\Command; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Models\Invoice; | ||||
| use Illuminate\Console\Command; | ||||
|  | ||||
| class CheckInvoiceStatus extends Command | ||||
| { | ||||
|  | ||||
| @ -3,17 +3,19 @@ | ||||
| namespace Crater\Console\Commands; | ||||
|  | ||||
| use Illuminate\Console\Command; | ||||
| use Illuminate\Console\ConfirmableTrait; | ||||
| use Illuminate\Support\Facades\Artisan; | ||||
| use Illuminate\Filesystem\Filesystem; | ||||
|  | ||||
| class ResetApp extends Command | ||||
| { | ||||
|     use ConfirmableTrait; | ||||
|  | ||||
|     /** | ||||
|      * The name and signature of the console command. | ||||
|      * | ||||
|      * @var string | ||||
|      */ | ||||
|     protected $signature = 'reset:app'; | ||||
|     protected $signature = 'reset:app {--force}'; | ||||
|  | ||||
|     /** | ||||
|      * The console command description. | ||||
| @ -39,13 +41,28 @@ class ResetApp extends Command | ||||
|      */ | ||||
|     public function handle() | ||||
|     { | ||||
|         if ($this->confirm('Do you wish to continue? This will delete your tables')) { | ||||
|             Artisan::call('migrate:reset --force'); | ||||
|         if (! $this->confirmToProceed()) { | ||||
|             return; | ||||
|         } | ||||
|  | ||||
|             \Storage::disk('local')->delete('database_created'); | ||||
|         $this->info('Running migrate:fresh'); | ||||
|  | ||||
|             // $file = new Filesystem; | ||||
|             // $file->cleanDirectory('public/storage'); | ||||
|         } | ||||
|         Artisan::call('migrate:fresh --seed --force'); | ||||
|  | ||||
|         $this->info('Seeding database'); | ||||
|  | ||||
|         Artisan::call('db:seed', ['--class' => 'DemoSeeder', '--force' => true]); | ||||
|  | ||||
|         $path = base_path('.env'); | ||||
|  | ||||
|         if (file_exists($path)) { | ||||
|             file_put_contents($path, str_replace( | ||||
|                 'APP_DEBUG=true', | ||||
|                 'APP_DEBUG=false', | ||||
|                 file_get_contents($path) | ||||
|             )); | ||||
|         } | ||||
|  | ||||
|         $this->info('App has been reset successfully'); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,9 +2,9 @@ | ||||
|  | ||||
| namespace Crater\Console\Commands; | ||||
|  | ||||
| use Illuminate\Console\Command; | ||||
| use Crater\Space\Updater; | ||||
| use Crater\Models\Setting; | ||||
| use Crater\Space\Updater; | ||||
| use Illuminate\Console\Command; | ||||
|  | ||||
| // Implementation taken from Akaunting - https://github.com/akaunting/akaunting | ||||
| class UpdateCommand extends Command | ||||
| @ -59,6 +59,7 @@ class UpdateCommand extends Command | ||||
|  | ||||
|         if (! $this->version) { | ||||
|             $this->info('No Update Available! You are already on the latest version.'); | ||||
|  | ||||
|             return; | ||||
|         } | ||||
|  | ||||
| @ -110,13 +111,11 @@ class UpdateCommand extends Command | ||||
|             $response = Updater::checkForUpdate($this->installed); | ||||
|  | ||||
|             if ($response->success) { | ||||
|  | ||||
|                 $extensions = $response->version->extensions; | ||||
|  | ||||
|                 $is_required = false; | ||||
|  | ||||
|                 foreach ($extensions as $key => $extension) { | ||||
|  | ||||
|                     if (! $extension) { | ||||
|                         $is_required = true; | ||||
|                         $this->info('❌ '.$key); | ||||
| @ -148,6 +147,7 @@ class UpdateCommand extends Command | ||||
|             $path = Updater::download($this->version, 1); | ||||
|             if (! is_string($path)) { | ||||
|                 $this->error('Download exception'); | ||||
|  | ||||
|                 return false; | ||||
|             } | ||||
|         } catch (\Exception $e) { | ||||
| @ -167,6 +167,7 @@ class UpdateCommand extends Command | ||||
|             $path = Updater::unzip($path); | ||||
|             if (! is_string($path)) { | ||||
|                 $this->error('Unzipping exception'); | ||||
|  | ||||
|                 return false; | ||||
|             } | ||||
|         } catch (\Exception $e) { | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Console; | ||||
|  | ||||
| use Illuminate\Console\Scheduling\Schedule; | ||||
| @ -13,7 +14,7 @@ class Kernel extends ConsoleKernel | ||||
|      */ | ||||
|     protected $commands = [ | ||||
|         Commands\ResetApp::class, | ||||
|         Commands\UpdateCommand::class | ||||
|         Commands\UpdateCommand::class, | ||||
|     ]; | ||||
|  | ||||
|     /** | ||||
|  | ||||
| @ -1,8 +1,9 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Exceptions; | ||||
|  | ||||
| use Throwable; | ||||
| use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler; | ||||
| use Throwable; | ||||
|  | ||||
| class Handler extends ExceptionHandler | ||||
| { | ||||
|  | ||||
| @ -1,9 +1,7 @@ | ||||
| <?php | ||||
|  | ||||
|  | ||||
| namespace Crater\Generators; | ||||
|  | ||||
|  | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\Payment; | ||||
| @ -12,7 +10,6 @@ use Spatie\MediaLibrary\Support\PathGenerator\PathGenerator; | ||||
|  | ||||
| class CustomPathGenerator implements PathGenerator | ||||
| { | ||||
|  | ||||
|     public function getPath(Media $media): string | ||||
|     { | ||||
|         return $this->getBasePath($media).'/'; | ||||
|  | ||||
| @ -1,12 +1,15 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Controllers; | ||||
|  | ||||
| use Illuminate\Foundation\Bus\DispatchesJobs; | ||||
| use Illuminate\Routing\Controller as BaseController; | ||||
| use Illuminate\Foundation\Validation\ValidatesRequests; | ||||
| use Illuminate\Foundation\Auth\Access\AuthorizesRequests; | ||||
| use Illuminate\Foundation\Bus\DispatchesJobs; | ||||
| use Illuminate\Foundation\Validation\ValidatesRequests; | ||||
| use Illuminate\Routing\Controller as BaseController; | ||||
|  | ||||
| class Controller extends BaseController | ||||
| { | ||||
|     use AuthorizesRequests, DispatchesJobs, ValidatesRequests; | ||||
|     use AuthorizesRequests; | ||||
|     use DispatchesJobs; | ||||
|     use ValidatesRequests; | ||||
| } | ||||
|  | ||||
| @ -3,10 +3,9 @@ | ||||
| namespace Crater\Http\Controllers\V1\Auth; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Providers\RouteServiceProvider; | ||||
| use Crater\Models\User; | ||||
| use Crater\Providers\RouteServiceProvider; | ||||
| use Illuminate\Foundation\Auth\RegistersUsers; | ||||
| use Illuminate\Support\Facades\Hash; | ||||
| use Illuminate\Support\Facades\Validator; | ||||
|  | ||||
| class RegisterController extends Controller | ||||
| @ -67,7 +66,7 @@ class RegisterController extends Controller | ||||
|         return User::create([ | ||||
|             'name' => $data['name'], | ||||
|             'email' => $data['email'], | ||||
|             'password' => $data['password'] | ||||
|             'password' => $data['password'], | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -4,10 +4,10 @@ namespace Crater\Http\Controllers\V1\Auth; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Providers\RouteServiceProvider; | ||||
| use Illuminate\Support\Str; | ||||
| use Illuminate\Auth\Events\PasswordReset; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Foundation\Auth\ResetsPasswords; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Str; | ||||
|  | ||||
| class ResetPasswordController extends Controller | ||||
| { | ||||
| @ -31,7 +31,6 @@ class ResetPasswordController extends Controller | ||||
|      */ | ||||
|     protected $redirectTo = RouteServiceProvider::HOME; | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * Get the response for a successful password reset. | ||||
|      * | ||||
| @ -42,7 +41,7 @@ class ResetPasswordController extends Controller | ||||
|     protected function sendResetResponse(Request $request, $response) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'message' => 'Password reset successfully.' | ||||
|             'message' => 'Password reset successfully.', | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| <?php | ||||
|  | ||||
| // Implementation taken from nova-backup-tool - https://github.com/spatie/nova-backup-tool/ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Backup; | ||||
| @ -12,12 +13,10 @@ class ApiController extends Controller | ||||
|      * | ||||
|      * @return JsonResponse | ||||
|      */ | ||||
|  | ||||
|     public function respondSuccess(): JsonResponse | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| } | ||||
|  | ||||
| @ -1,17 +1,17 @@ | ||||
| <?php | ||||
|  | ||||
| // Implementation taken from nova-backup-tool - https://github.com/spatie/nova-backup-tool/ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Backup; | ||||
|  | ||||
| use Crater\Jobs\CreateBackupJob; | ||||
| use Crater\Rules\Backup\PathToZip; | ||||
| use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Cache; | ||||
| use Spatie\Backup\BackupDestination\Backup; | ||||
| use Spatie\Backup\BackupDestination\BackupDestination; | ||||
| use Spatie\Backup\Helpers\Format; | ||||
| use Crater\Jobs\CreateBackupJob; | ||||
| use Crater\Rules\Backup\BackupDisk; | ||||
| use Crater\Rules\Backup\PathToZip; | ||||
| use Illuminate\Http\JsonResponse; | ||||
|  | ||||
| class BackupsController extends ApiController | ||||
| { | ||||
| @ -42,14 +42,14 @@ class BackupsController extends ApiController | ||||
|  | ||||
|             return response()->json([ | ||||
|                 'backups' => $backups, | ||||
|                 'disks' => $configuredBackupDisks | ||||
|                 'disks' => $configuredBackupDisks, | ||||
|             ]); | ||||
|         } catch (\Exception $e) { | ||||
|             return response()->json([ | ||||
|                 'backups' => [], | ||||
|                 'error' => 'invalid_disk_credentials', | ||||
|                 'error_message' => $e->getMessage(), | ||||
|                 'disks' => $configuredBackupDisks | ||||
|                 'disks' => $configuredBackupDisks, | ||||
|             ]); | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @ -1,14 +1,13 @@ | ||||
| <?php | ||||
|  | ||||
| // Implementation taken from nova-backup-tool - https://github.com/spatie/nova-backup-tool/ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Backup; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Rules\Backup\PathToZip; | ||||
| use Illuminate\Http\Request; | ||||
| use Spatie\Backup\BackupDestination\Backup; | ||||
| use Spatie\Backup\BackupDestination\BackupDestination; | ||||
| use Crater\Rules\Backup\BackupDisk; | ||||
| use Crater\Rules\Backup\PathToZip; | ||||
| use Symfony\Component\HttpFoundation\Response; | ||||
| use Symfony\Component\HttpFoundation\StreamedResponse; | ||||
|  | ||||
|  | ||||
| @ -2,9 +2,9 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\CustomField; | ||||
|  | ||||
| use Crater\Models\CustomField; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\CustomFieldRequest; | ||||
| use Crater\Models\CustomField; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class CustomFieldsController extends Controller | ||||
| @ -21,14 +21,14 @@ class CustomFieldsController extends Controller | ||||
|         $customFields = CustomField::whereCompany($request->header('company')) | ||||
|             ->applyFilters($request->only([ | ||||
|                 'type', | ||||
|                 'search' | ||||
|                 'search', | ||||
|             ])) | ||||
|             ->latest() | ||||
|             ->paginateData($limit); | ||||
|  | ||||
|  | ||||
|         return response()->json([ | ||||
|             'customFields' => $customFields | ||||
|             'customFields' => $customFields, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -44,7 +44,7 @@ class CustomFieldsController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'customField' => $customField, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -58,7 +58,7 @@ class CustomFieldsController extends Controller | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'customField' => $customField, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -75,7 +75,7 @@ class CustomFieldsController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'customField' => $customField, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -89,14 +89,14 @@ class CustomFieldsController extends Controller | ||||
|     { | ||||
|         if ($customField->customFieldValue()->exists()) { | ||||
|             return response()->json([ | ||||
|                 'error' => 'values_attached' | ||||
|                 'error' => 'values_attached', | ||||
|             ]); | ||||
|         } | ||||
|  | ||||
|         $customField->delete(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,13 +2,13 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Customer; | ||||
|  | ||||
| use Carbon\Carbon; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\Payment; | ||||
| use Crater\Models\User; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Carbon\Carbon; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class CustomerStatsController extends Controller | ||||
| @ -126,7 +126,7 @@ class CustomerStatsController extends Controller | ||||
|             'netProfits' => $netProfits, | ||||
|             'salesTotal' => $salesTotal, | ||||
|             'totalReceipts' => $totalReceipts, | ||||
|             'totalExpenses' => $totalExpenses | ||||
|             'totalExpenses' => $totalExpenses, | ||||
|         ]; | ||||
|  | ||||
|         $customer = User::with([ | ||||
| @ -135,7 +135,7 @@ class CustomerStatsController extends Controller | ||||
|             'billingAddress.country', | ||||
|             'shippingAddress.country', | ||||
|             'currency', | ||||
|             'fields.customField' | ||||
|             'fields.customField', | ||||
|         ])->find($customer->id); | ||||
|  | ||||
|         return response()->json([ | ||||
|  | ||||
| @ -2,13 +2,12 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Customer; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests; | ||||
| use Crater\Models\User; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\DB; | ||||
|  | ||||
|  | ||||
| class CustomersController extends Controller | ||||
| { | ||||
|     /** | ||||
| @ -29,7 +28,7 @@ class CustomersController extends Controller | ||||
|                 'phone', | ||||
|                 'customer_id', | ||||
|                 'orderByField', | ||||
|                 'orderBy' | ||||
|                 'orderBy', | ||||
|             ])) | ||||
|             ->whereCompany($request->header('company')) | ||||
|             ->select( | ||||
| @ -42,7 +41,7 @@ class CustomersController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'customers' => $customers, | ||||
|             'customerTotalCount' => User::whereRole('customer')->count() | ||||
|             'customerTotalCount' => User::whereRole('customer')->count(), | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -58,7 +57,7 @@ class CustomersController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'customer' => $customer, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -74,7 +73,7 @@ class CustomersController extends Controller | ||||
|             'billingAddress.country', | ||||
|             'shippingAddress.country', | ||||
|             'fields.customField', | ||||
|             'creator' | ||||
|             'creator', | ||||
|         ]); | ||||
|  | ||||
|         $currency = $customer->currency; | ||||
| @ -85,7 +84,6 @@ class CustomersController extends Controller | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
|  | ||||
|     /** | ||||
|      * Update the specified resource in storage. | ||||
|      * | ||||
| @ -101,7 +99,7 @@ class CustomersController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'customer' => $customer, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -116,7 +114,7 @@ class CustomersController extends Controller | ||||
|         User::deleteCustomers($request->ids); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Dashboard; | ||||
|  | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Expense; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class DashboardChartController extends Controller | ||||
|  | ||||
| @ -1,15 +1,16 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Dashboard; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Models\Payment; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Models\User; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\Payment; | ||||
| use Crater\Models\User; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class DashboardController extends Controller | ||||
| { | ||||
| @ -117,7 +118,7 @@ class DashboardController extends Controller | ||||
|             'invoiceTotals' => $invoiceTotals, | ||||
|             'expenseTotals' => $expenseTotals, | ||||
|             'receiptTotals' => $receiptTotals, | ||||
|             'netProfits'    => $netProfits | ||||
|             'netProfits' => $netProfits, | ||||
|         ]; | ||||
|  | ||||
|         $customersCount = User::customer()->whereCompany($request->header('company'))->get()->count(); | ||||
| @ -138,7 +139,7 @@ class DashboardController extends Controller | ||||
|             'salesTotal' => $salesTotal, | ||||
|             'totalReceipts' => $totalReceipts, | ||||
|             'totalExpenses' => $totalExpenses, | ||||
|             'netProfit' => $netProfit | ||||
|             'netProfit' => $netProfit, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,9 +2,9 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Estimate; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Estimate; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class ChangeEstimateStatusController extends Controller | ||||
| { | ||||
| @ -20,7 +20,7 @@ class ChangeEstimateStatusController extends Controller | ||||
|         $estimate->update($request->only('status')); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,12 +2,12 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Estimate; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Models\Invoice; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Auth; | ||||
|  | ||||
| class ConvertEstimateController extends Controller | ||||
| @ -52,7 +52,7 @@ class ConvertEstimateController extends Controller | ||||
|             'discount_per_item' => $estimate->discount_per_item, | ||||
|             'tax' => $estimate->tax, | ||||
|             'notes' => $estimate->notes, | ||||
|             'unique_hash' => str_random(60) | ||||
|             'unique_hash' => str_random(60), | ||||
|         ]); | ||||
|  | ||||
|         $invoiceItems = $estimate->items->toArray(); | ||||
| @ -85,11 +85,11 @@ class ConvertEstimateController extends Controller | ||||
|             'items', | ||||
|             'user', | ||||
|             'invoiceTemplate', | ||||
|             'taxes' | ||||
|             'taxes', | ||||
|         ])->find($invoice->id); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'invoice' => $invoice | ||||
|             'invoice' => $invoice, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Estimate; | ||||
|  | ||||
| use Crater\Models\Estimate;  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Estimate; | ||||
|  | ||||
| class EstimatePdfController extends Controller | ||||
| { | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Estimate; | ||||
|  | ||||
| use Crater\Models\EstimateTemplate; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\EstimateTemplate; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class EstimateTemplatesController extends Controller | ||||
| @ -17,7 +17,7 @@ class EstimateTemplatesController extends Controller | ||||
|     public function __invoke(Request $request) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'templates' => EstimateTemplate::all() | ||||
|             'templates' => EstimateTemplate::all(), | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,12 +2,12 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Estimate; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Http\Requests\EstimatesRequest; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\DeleteEstimatesRequest; | ||||
| use Crater\Http\Requests\EstimatesRequest; | ||||
| use Crater\Jobs\GenerateEstimatePdfJob; | ||||
| use Crater\Models\Estimate; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class EstimatesController extends Controller | ||||
| { | ||||
| @ -20,7 +20,7 @@ class EstimatesController extends Controller | ||||
|                 'user', | ||||
|                 'estimateTemplate', | ||||
|                 'taxes', | ||||
|                 'creator' | ||||
|                 'creator', | ||||
|             ]) | ||||
|             ->join('users', 'users.id', '=', 'estimates.user_id') | ||||
|             ->applyFilters($request->only([ | ||||
| @ -32,7 +32,7 @@ class EstimatesController extends Controller | ||||
|                 'to_date', | ||||
|                 'search', | ||||
|                 'orderByField', | ||||
|                 'orderBy' | ||||
|                 'orderBy', | ||||
|             ])) | ||||
|             ->whereCompany($request->header('company')) | ||||
|             ->select('estimates.*', 'users.name') | ||||
| @ -41,7 +41,7 @@ class EstimatesController extends Controller | ||||
|  | ||||
|         $siteData = [ | ||||
|             'estimates' => $estimates, | ||||
|             'estimateTotalCount' => Estimate::count() | ||||
|             'estimateTotalCount' => Estimate::count(), | ||||
|         ]; | ||||
|  | ||||
|         return response()->json($siteData); | ||||
| @ -58,7 +58,7 @@ class EstimatesController extends Controller | ||||
|         GenerateEstimatePdfJob::dispatch($estimate); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'estimate' => $estimate | ||||
|             'estimate' => $estimate, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -72,7 +72,7 @@ class EstimatesController extends Controller | ||||
|             'creator', | ||||
|             'taxes', | ||||
|             'taxes.taxType', | ||||
|             'fields.customField' | ||||
|             'fields.customField', | ||||
|         ]); | ||||
|  | ||||
|         return response()->json([ | ||||
| @ -89,7 +89,7 @@ class EstimatesController extends Controller | ||||
|         GenerateEstimatePdfJob::dispatch($estimate, true); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'estimate' => $estimate | ||||
|             'estimate' => $estimate, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -98,7 +98,7 @@ class EstimatesController extends Controller | ||||
|         Estimate::destroy($request->ids); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -3,8 +3,8 @@ | ||||
| namespace Crater\Http\Controllers\V1\Estimate; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Http\Requests\SendEstimatesRequest; | ||||
| use Crater\Models\Estimate; | ||||
|  | ||||
| class SendEstimateController extends Controller | ||||
| { | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Expense; | ||||
|  | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Expense; | ||||
|  | ||||
| class DownloadReceiptController extends Controller | ||||
| { | ||||
| @ -23,12 +23,13 @@ class DownloadReceiptController extends Controller | ||||
|                 $imagePath = $media->getPath(); | ||||
|                 $response = \Response::download($imagePath, $media->file_name); | ||||
|                 ob_end_clean(); | ||||
|  | ||||
|                 return $response; | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         return response()->json([ | ||||
|             'error' => 'receipt_not_found' | ||||
|             'error' => 'receipt_not_found', | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -1,10 +1,11 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Expense; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\ExpenseCategoryRequest; | ||||
| use Crater\Models\ExpenseCategory; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Requests\ExpenseCategoryRequest; | ||||
| use Crater\Http\Controllers\Controller; | ||||
|  | ||||
| class ExpenseCategoriesController extends Controller | ||||
| { | ||||
| @ -20,13 +21,13 @@ class ExpenseCategoriesController extends Controller | ||||
|         $categories = ExpenseCategory::whereCompany($request->header('company')) | ||||
|             ->applyFilters($request->only([ | ||||
|                 'category_id', | ||||
|                 'search' | ||||
|                 'search', | ||||
|             ])) | ||||
|             ->latest() | ||||
|             ->paginateData($limit); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'categories' => $categories | ||||
|             'categories' => $categories, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -44,7 +45,7 @@ class ExpenseCategoriesController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'category' => $category, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -57,7 +58,7 @@ class ExpenseCategoriesController extends Controller | ||||
|     public function show(ExpenseCategory $category) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'category' => $category | ||||
|             'category' => $category, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -74,7 +75,7 @@ class ExpenseCategoriesController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'category' => $category, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -88,14 +89,14 @@ class ExpenseCategoriesController extends Controller | ||||
|     { | ||||
|         if ($category->expenses() && $category->expenses()->count() > 0) { | ||||
|             return response()->json([ | ||||
|                 'success' => false | ||||
|                 'success' => false, | ||||
|             ]); | ||||
|         } | ||||
|  | ||||
|         $category->delete(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,11 +2,11 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Expense; | ||||
|  | ||||
| use Crater\Models\Expense; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Requests\ExpenseRequest; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\DeleteExpensesRequest; | ||||
| use Crater\Http\Requests\ExpenseRequest; | ||||
| use Crater\Models\Expense; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class ExpensesController extends Controller | ||||
| { | ||||
| @ -30,7 +30,7 @@ class ExpensesController extends Controller | ||||
|                 'from_date', | ||||
|                 'to_date', | ||||
|                 'orderByField', | ||||
|                 'orderBy' | ||||
|                 'orderBy', | ||||
|             ])) | ||||
|             ->whereCompany($request->header('company')) | ||||
|             ->select('expenses.*', 'expense_categories.name', 'users.name as user_name') | ||||
| @ -38,7 +38,7 @@ class ExpensesController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'expenses' => $expenses, | ||||
|             'expenseTotalCount' => Expense::count() | ||||
|             'expenseTotalCount' => Expense::count(), | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -54,7 +54,7 @@ class ExpensesController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'expense' => $expense, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -69,7 +69,7 @@ class ExpensesController extends Controller | ||||
|         $expense->load('creator', 'fields.customField'); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'expense' => $expense | ||||
|             'expense' => $expense, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -86,7 +86,7 @@ class ExpensesController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'expense' => $expense, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -95,7 +95,7 @@ class ExpensesController extends Controller | ||||
|         Expense::destroy($request->ids); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Expense; | ||||
|  | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Expense; | ||||
|  | ||||
| class ShowReceiptController extends Controller | ||||
| { | ||||
| @ -23,7 +23,7 @@ class ShowReceiptController extends Controller | ||||
|                 $imagePath = $media->getPath(); | ||||
|             } else { | ||||
|                 return response()->json([ | ||||
|                     'error' => 'receipt_does_not_exist' | ||||
|                     'error' => 'receipt_does_not_exist', | ||||
|                 ]); | ||||
|             } | ||||
|         } | ||||
| @ -34,7 +34,7 @@ class ShowReceiptController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'image' => $image, | ||||
|             'type' => $type | ||||
|             'type' => $type, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Expense; | ||||
|  | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Expense; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class UploadReceiptController extends Controller | ||||
| @ -30,7 +30,7 @@ class UploadReceiptController extends Controller | ||||
|         } | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => 'Expense receipts uploaded successfully' | ||||
|             'success' => 'Expense receipts uploaded successfully', | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,13 +2,12 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\General; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Currency; | ||||
| use Crater\Models\Country; | ||||
| use Auth; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\CustomField; | ||||
| use Crater\Models\Country; | ||||
| use Crater\Models\Currency; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class BootstrapController extends Controller | ||||
| { | ||||
| @ -29,7 +28,7 @@ class BootstrapController extends Controller | ||||
|             'carbon_date_format', | ||||
|             'fiscal_year', | ||||
|             'time_zone', | ||||
|             'currency' | ||||
|             'currency', | ||||
|         ]; | ||||
|  | ||||
|         $settings = CompanySetting::getSettings($settings, $user->company_id); | ||||
| @ -46,7 +45,7 @@ class BootstrapController extends Controller | ||||
|             'moment_date_format' => $settings['moment_date_format'], | ||||
|             'carbon_date_format' => $settings['carbon_date_format'], | ||||
|             'fiscal_year' => $settings['fiscal_year'], | ||||
|             'time_zone' => $settings['time_zone'] | ||||
|             'time_zone' => $settings['time_zone'], | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\General; | ||||
|  | ||||
| use Crater\Models\Country; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Country; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class CountriesController extends Controller | ||||
| @ -17,7 +17,7 @@ class CountriesController extends Controller | ||||
|     public function __invoke(Request $request) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'countries' => Country::all() | ||||
|             'countries' => Country::all(), | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\General; | ||||
|  | ||||
| use Crater\Models\Currency; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Currency; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class CurrenciesController extends Controller | ||||
| @ -19,7 +19,7 @@ class CurrenciesController extends Controller | ||||
|         $currencies = Currency::latest()->get(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'currencies' => $currencies | ||||
|             'currencies' => $currencies, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -17,7 +17,7 @@ class DateFormatsController extends Controller | ||||
|     public function __invoke(Request $request) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'date_formats' => DateFormatter::get_list() | ||||
|             'date_formats' => DateFormatter::get_list(), | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -16,7 +16,7 @@ class FiscalYearsController extends Controller | ||||
|     public function __invoke(Request $request) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'fiscal_years' => config('crater.fiscal_years') | ||||
|             'fiscal_years' => config('crater.fiscal_years'), | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -16,7 +16,7 @@ class LanguagesController extends Controller | ||||
|     public function __invoke(Request $request) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'languages' => config('crater.languages') | ||||
|             'languages' => config('crater.languages'), | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,11 +2,11 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\General; | ||||
|  | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Models\Payment; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\Payment; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class NextNumberController extends Controller | ||||
| @ -33,14 +33,17 @@ class NextNumberController extends Controller | ||||
|         switch ($key) { | ||||
|             case 'invoice': | ||||
|                 $nextNumber = Invoice::getNextInvoiceNumber($prefix); | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             case 'estimate': | ||||
|                 $nextNumber = Estimate::getNextEstimateNumber($prefix); | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             case 'payment': | ||||
|                 $nextNumber = Payment::getNextPaymentNumber($prefix); | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             default: | ||||
| @ -49,7 +52,7 @@ class NextNumberController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'nextNumber' => $nextNumber, | ||||
|             'prefix' => $prefix | ||||
|             'prefix' => $prefix, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -23,7 +23,7 @@ class NotesController extends Controller | ||||
|             ->paginate($limit); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'notes' => $notes | ||||
|             'notes' => $notes, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -38,7 +38,7 @@ class NotesController extends Controller | ||||
|         $note = Note::create($request->validated()); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'note' => $note | ||||
|             'note' => $note, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -51,7 +51,7 @@ class NotesController extends Controller | ||||
|     public function show(Note $note) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'note' => $note | ||||
|             'note' => $note, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -67,7 +67,7 @@ class NotesController extends Controller | ||||
|         $note->update($request->validated()); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'note' => $note | ||||
|             'note' => $note, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -82,7 +82,7 @@ class NotesController extends Controller | ||||
|         $note->delete(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -31,7 +31,7 @@ class SearchController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'customers' => $customers, | ||||
|             'users' => $users ?? [] | ||||
|             'users' => $users ?? [], | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -17,7 +17,7 @@ class TimezonesController extends Controller | ||||
|     public function __invoke(Request $request) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'time_zones' => TimeZones::get_list() | ||||
|             'time_zones' => TimeZones::get_list(), | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,9 +2,9 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Invoice; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Invoice; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class ChangeInvoiceStatusController extends Controller | ||||
| { | ||||
| @ -28,7 +28,7 @@ class ChangeInvoiceStatusController extends Controller | ||||
|         } | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,11 +2,11 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Invoice; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Invoice; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Invoice; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class CloneInvoiceController extends Controller | ||||
| { | ||||
| @ -32,7 +32,7 @@ class CloneInvoiceController extends Controller | ||||
|             'reference_number' => $invoice->reference_number, | ||||
|             'user_id' => $invoice->user_id, | ||||
|             'company_id' => $request->header('company'), | ||||
|             'invoice_template_id' => 1, | ||||
|             'invoice_template_id' => $invoice->invoice_template_id, | ||||
|             'status' => Invoice::STATUS_DRAFT, | ||||
|             'paid_status' => Invoice::STATUS_UNPAID, | ||||
|             'sub_total' => $invoice->sub_total, | ||||
| @ -45,7 +45,7 @@ class CloneInvoiceController extends Controller | ||||
|             'discount_per_item' => $invoice->discount_per_item, | ||||
|             'tax' => $invoice->tax, | ||||
|             'notes' => $invoice->notes, | ||||
|             'unique_hash' => str_random(60) | ||||
|             'unique_hash' => str_random(60), | ||||
|         ]); | ||||
|  | ||||
|         $invoice->load('items.taxes'); | ||||
| @ -79,13 +79,13 @@ class CloneInvoiceController extends Controller | ||||
|                 'items', | ||||
|                 'user', | ||||
|                 'invoiceTemplate', | ||||
|                 'taxes' | ||||
|                 'taxes', | ||||
|             ]) | ||||
|             ->find($newInvoice->id); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'invoice' => $newInvoice, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -19,7 +19,7 @@ class InvoiceTemplatesController extends Controller | ||||
|         $invoiceTemplates = InvoiceTemplate::all(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'invoiceTemplates' => $invoiceTemplates | ||||
|             'invoiceTemplates' => $invoiceTemplates, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,12 +2,12 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Invoice; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Requests; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests; | ||||
| use Crater\Http\Requests\DeleteInvoiceRequest; | ||||
| use Crater\Jobs\GenerateInvoicePdfJob; | ||||
| use Crater\Models\Invoice; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class InvoicesController extends Controller | ||||
| { | ||||
| @ -41,7 +41,7 @@ class InvoicesController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'invoices' => $invoices, | ||||
|             'invoiceTotalCount' => Invoice::count() | ||||
|             'invoiceTotalCount' => Invoice::count(), | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -62,7 +62,7 @@ class InvoicesController extends Controller | ||||
|         GenerateInvoicePdfJob::dispatch($invoice); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'invoice' => $invoice | ||||
|             'invoice' => $invoice, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -80,7 +80,7 @@ class InvoicesController extends Controller | ||||
|             'user', | ||||
|             'invoiceTemplate', | ||||
|             'taxes.taxType', | ||||
|             'fields.customField' | ||||
|             'fields.customField', | ||||
|         ]); | ||||
|  | ||||
|         $siteData = [ | ||||
| @ -107,7 +107,7 @@ class InvoicesController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'invoice' => $invoice, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -122,7 +122,7 @@ class InvoicesController extends Controller | ||||
|         Invoice::destroy($request->ids); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -3,8 +3,8 @@ | ||||
| namespace Crater\Http\Controllers\V1\Invoice; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Http\Requests\SendInvoiceRequest; | ||||
| use Crater\Models\Invoice; | ||||
|  | ||||
| class SendInvoiceController extends Controller | ||||
| { | ||||
| @ -19,7 +19,7 @@ class SendInvoiceController extends Controller | ||||
|         $invoice->send($request->all()); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -3,11 +3,11 @@ | ||||
| namespace Crater\Http\Controllers\V1\Item; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Requests; | ||||
| use Crater\Http\Requests\DeleteItemsRequest; | ||||
| use Crater\Models\Item; | ||||
| use Crater\Models\TaxType; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class ItemsController extends Controller | ||||
| { | ||||
| @ -29,7 +29,7 @@ class ItemsController extends Controller | ||||
|                 'unit_id', | ||||
|                 'item_id', | ||||
|                 'orderByField', | ||||
|                 'orderBy' | ||||
|                 'orderBy', | ||||
|             ])) | ||||
|             ->whereCompany($request->header('company')) | ||||
|             ->select('items.*', 'units.name as unit_name') | ||||
| @ -39,7 +39,7 @@ class ItemsController extends Controller | ||||
|         return response()->json([ | ||||
|             'items' => $items, | ||||
|             'taxTypes' => TaxType::latest()->get(), | ||||
|             'itemTotalCount' => Item::count() | ||||
|             'itemTotalCount' => Item::count(), | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -54,7 +54,7 @@ class ItemsController extends Controller | ||||
|         $item = Item::createItem($request); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'item' => $item | ||||
|             'item' => $item, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -69,7 +69,7 @@ class ItemsController extends Controller | ||||
|         $item->load('taxes'); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'item' => $item | ||||
|             'item' => $item, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -85,7 +85,7 @@ class ItemsController extends Controller | ||||
|         $item = $item->updateItem($request); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'item' => $item | ||||
|             'item' => $item, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -100,7 +100,7 @@ class ItemsController extends Controller | ||||
|         Item::destroy($request->ids); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,10 +2,10 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Item; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\UnitRequest; | ||||
| use Crater\Models\Unit; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Requests\UnitRequest; | ||||
| use Crater\Http\Controllers\Controller; | ||||
|  | ||||
| class UnitsController extends Controller | ||||
| { | ||||
| @ -20,13 +20,13 @@ class UnitsController extends Controller | ||||
|  | ||||
|         $units = Unit::whereCompany($request->header('company')) | ||||
|             ->applyFilters($request->only([ | ||||
|                 'unit_id' | ||||
|                 'unit_id', | ||||
|             ])) | ||||
|             ->latest() | ||||
|             ->paginateData($limit); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'units' => $units | ||||
|             'units' => $units, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -53,7 +53,7 @@ class UnitsController extends Controller | ||||
|         $unit = Unit::create($data); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'unit' => $unit | ||||
|             'unit' => $unit, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -66,7 +66,7 @@ class UnitsController extends Controller | ||||
|     public function show(Unit $unit) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'unit' => $unit | ||||
|             'unit' => $unit, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -82,7 +82,7 @@ class UnitsController extends Controller | ||||
|         $unit->update($request->validated()); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'unit' => $unit | ||||
|             'unit' => $unit, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -96,14 +96,14 @@ class UnitsController extends Controller | ||||
|     { | ||||
|         if ($unit->items()->exists()) { | ||||
|             return response()->json([ | ||||
|                 'error' => 'items_attached' | ||||
|                 'error' => 'items_attached', | ||||
|             ]); | ||||
|         } | ||||
|  | ||||
|         $unit->delete(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => 'Unit deleted successfully' | ||||
|             'success' => 'Unit deleted successfully', | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -28,7 +28,7 @@ class AuthController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'type' => 'Bearer', | ||||
|             'token' => $user->createToken($request->device_name)->plainTextToken | ||||
|             'token' => $user->createToken($request->device_name)->plainTextToken, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -37,7 +37,7 @@ class AuthController extends Controller | ||||
|         $request->user()->currentAccessToken()->delete(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,13 +2,10 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Mobile\Customer; | ||||
|  | ||||
| use Barryvdh\DomPDF\PDF; | ||||
| use Crater\Models\Company; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Models\EstimateTemplate; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Mail\EstimateViewedMail; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Estimate; | ||||
| use Crater\Models\User; | ||||
|  | ||||
| class EstimatePdfController extends Controller | ||||
|  | ||||
| @ -2,13 +2,10 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Mobile\Customer; | ||||
|  | ||||
| use Barryvdh\DomPDF\PDF; | ||||
| use Crater\Models\Company; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\InvoiceTemplate; | ||||
| use Crater\Mail\InvoiceViewedMail; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\User; | ||||
|  | ||||
| class InvoicePdfController extends Controller | ||||
|  | ||||
| @ -3,10 +3,10 @@ | ||||
| namespace Crater\Http\Controllers\V1\Onboarding; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Space\EnvironmentManager; | ||||
| use Crater\Http\Requests\DatabaseEnvironmentRequest; | ||||
| use Illuminate\Support\Facades\Artisan; | ||||
| use Crater\Space\EnvironmentManager; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Artisan; | ||||
|  | ||||
| class DatabaseConfigurationController extends Controller | ||||
| { | ||||
| @ -55,6 +55,7 @@ class DatabaseConfigurationController extends Controller | ||||
|                     'database_connection' => 'sqlite', | ||||
|                     'database_name' => database_path('database.sqlite'), | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             case 'pgsql': | ||||
| @ -63,6 +64,7 @@ class DatabaseConfigurationController extends Controller | ||||
|                     'database_host' => '127.0.0.1', | ||||
|                     'database_port' => 5432, | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             case 'mysql': | ||||
| @ -71,6 +73,7 @@ class DatabaseConfigurationController extends Controller | ||||
|                     'database_host' => '127.0.0.1', | ||||
|                     'database_port' => 3306, | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             case 'sqlsrv': | ||||
| @ -79,13 +82,14 @@ class DatabaseConfigurationController extends Controller | ||||
|                     'host' => '127.0.0.1', | ||||
|                     'port' => 1433, | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|         } | ||||
|  | ||||
|  | ||||
|         return response()->json([ | ||||
|             'config' => $databaseData, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -17,14 +17,13 @@ class OnboardingWizardController extends Controller | ||||
|     public function getStep(Request $request) | ||||
|     { | ||||
|         if (! \Storage::disk('local')->has('database_created')) { | ||||
|  | ||||
|             return response()->json([ | ||||
|                 'profile_complete' => 0 | ||||
|                 'profile_complete' => 0, | ||||
|             ]); | ||||
|         } | ||||
|  | ||||
|         return response()->json([ | ||||
|             'profile_complete' => Setting::getSetting('profile_complete') | ||||
|             'profile_complete' => Setting::getSetting('profile_complete'), | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -34,14 +33,14 @@ class OnboardingWizardController extends Controller | ||||
|  | ||||
|         if ($setting === 'COMPLETED') { | ||||
|             return response()->json([ | ||||
|                 'profile_complete' => $setting | ||||
|                 'profile_complete' => $setting, | ||||
|             ]); | ||||
|         } | ||||
|  | ||||
|         Setting::setSetting('profile_complete', $request->profile_complete); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'profile_complete' => Setting::getSetting('profile_complete') | ||||
|             'profile_complete' => Setting::getSetting('profile_complete'), | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,9 +2,9 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Onboarding; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Space\PermissionsChecker; | ||||
| use Illuminate\Http\JsonResponse; | ||||
| use Crater\Http\Controllers\Controller; | ||||
|  | ||||
| class PermissionsController extends Controller | ||||
| { | ||||
| @ -33,7 +33,7 @@ class PermissionsController extends Controller | ||||
|         ); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'permissions' => $permissions | ||||
|             'permissions' => $permissions, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,9 +2,9 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Onboarding; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Space\RequirementsChecker; | ||||
| use Illuminate\Http\JsonResponse; | ||||
| use Crater\Http\Controllers\Controller; | ||||
|  | ||||
| class RequirementsController extends Controller | ||||
| { | ||||
| @ -37,7 +37,7 @@ class RequirementsController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'phpSupportInfo' => $phpSupportInfo, | ||||
|             'requirements' => $requirements | ||||
|             'requirements' => $requirements, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,10 +2,10 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Payment; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\PaymentMethodRequest; | ||||
| use Crater\Models\PaymentMethod; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Requests\PaymentMethodRequest; | ||||
| use Crater\Http\Controllers\Controller; | ||||
|  | ||||
| class PaymentMethodsController extends Controller | ||||
| { | ||||
| @ -21,13 +21,13 @@ class PaymentMethodsController extends Controller | ||||
|         $paymentMethods = PaymentMethod::whereCompany($request->header('company')) | ||||
|             ->applyFilters($request->only([ | ||||
|                 'method_id', | ||||
|                 'search' | ||||
|                 'search', | ||||
|             ])) | ||||
|             ->latest() | ||||
|             ->paginateData($limit); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'paymentMethods' => $paymentMethods | ||||
|             'paymentMethods' => $paymentMethods, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -42,7 +42,7 @@ class PaymentMethodsController extends Controller | ||||
|         $paymentMethod = PaymentMethod::createPaymentMethod($request); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'paymentMethod' => $paymentMethod | ||||
|             'paymentMethod' => $paymentMethod, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -55,7 +55,7 @@ class PaymentMethodsController extends Controller | ||||
|     public function show(PaymentMethod $paymentMethod) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'paymentMethod' => $paymentMethod | ||||
|             'paymentMethod' => $paymentMethod, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -71,7 +71,7 @@ class PaymentMethodsController extends Controller | ||||
|         $paymentMethod->update($request->validated()); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'paymentMethod' => $paymentMethod | ||||
|             'paymentMethod' => $paymentMethod, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -87,14 +87,14 @@ class PaymentMethodsController extends Controller | ||||
|  | ||||
|         if ($payments->count() > 0) { | ||||
|             return response()->json([ | ||||
|                 'error' => 'payments_attached' | ||||
|                 'error' => 'payments_attached', | ||||
|             ]); | ||||
|         } | ||||
|  | ||||
|         $paymentMethod->delete(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => 'Payment method deleted successfully' | ||||
|             'success' => 'Payment method deleted successfully', | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,11 +2,11 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Payment; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Payment; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\DeletePaymentsRequest; | ||||
| use Crater\Http\Requests\PaymentRequest; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Payment; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class PaymentsController extends Controller | ||||
| { | ||||
| @ -30,7 +30,7 @@ class PaymentsController extends Controller | ||||
|                 'payment_method_id', | ||||
|                 'customer_id', | ||||
|                 'orderByField', | ||||
|                 'orderBy' | ||||
|                 'orderBy', | ||||
|             ])) | ||||
|             ->whereCompany($request->header('company')) | ||||
|             ->select('payments.*', 'users.name', 'invoices.invoice_number', 'payment_methods.name as payment_mode') | ||||
| @ -39,7 +39,7 @@ class PaymentsController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'payments' => $payments, | ||||
|             'paymentTotalCount' => Payment::count() | ||||
|             'paymentTotalCount' => Payment::count(), | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -55,7 +55,7 @@ class PaymentsController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'payment' => $payment, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -65,7 +65,7 @@ class PaymentsController extends Controller | ||||
|             'user', | ||||
|             'invoice', | ||||
|             'paymentMethod', | ||||
|             'fields.customField' | ||||
|             'fields.customField', | ||||
|         ]); | ||||
|  | ||||
|         return response()->json([ | ||||
| @ -81,7 +81,7 @@ class PaymentsController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'payment' => $payment, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -90,7 +90,7 @@ class PaymentsController extends Controller | ||||
|         Payment::deletePayments($request->ids); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -3,8 +3,8 @@ | ||||
| namespace Crater\Http\Controllers\V1\Payment; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Payment; | ||||
| use Crater\Http\Requests\SendPaymentRequest; | ||||
| use Crater\Models\Payment; | ||||
|  | ||||
| class SendPaymentController extends Controller | ||||
| { | ||||
|  | ||||
| @ -2,14 +2,14 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Report; | ||||
|  | ||||
| use Illuminate\Support\Facades\App; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Company; | ||||
| use PDF; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Models\User; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Company; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\User; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\App; | ||||
| use PDF; | ||||
|  | ||||
| class CustomerSalesReportController extends Controller | ||||
| { | ||||
| @ -65,7 +65,7 @@ class CustomerSalesReportController extends Controller | ||||
|             'footer_text_color', | ||||
|             'footer_total_color', | ||||
|             'footer_bg_color', | ||||
|             'date_text_color' | ||||
|             'date_text_color', | ||||
|         ]; | ||||
|  | ||||
|         $colorSettings = CompanySetting::whereIn('option', $colors) | ||||
| @ -78,7 +78,7 @@ class CustomerSalesReportController extends Controller | ||||
|             'colorSettings' => $colorSettings, | ||||
|             'company' => $company, | ||||
|             'from_date' => $from_date, | ||||
|             'to_date' => $to_date | ||||
|             'to_date' => $to_date, | ||||
|         ]); | ||||
|  | ||||
|         $pdf = PDF::loadView('app.pdf.reports.sales-customers'); | ||||
|  | ||||
| @ -2,14 +2,14 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Report; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Company; | ||||
| use PDF; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Company; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Expense; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\App; | ||||
| use PDF; | ||||
|  | ||||
| class ExpensesReportController extends Controller | ||||
| { | ||||
| @ -52,7 +52,7 @@ class ExpensesReportController extends Controller | ||||
|             'footer_text_color', | ||||
|             'footer_total_color', | ||||
|             'footer_bg_color', | ||||
|             'date_text_color' | ||||
|             'date_text_color', | ||||
|         ]; | ||||
|         $colorSettings = CompanySetting::whereIn('option', $colors) | ||||
|             ->whereCompany($company->id) | ||||
| @ -64,7 +64,7 @@ class ExpensesReportController extends Controller | ||||
|             'totalExpense' => $totalAmount, | ||||
|             'company' => $company, | ||||
|             'from_date' => $from_date, | ||||
|             'to_date' => $to_date | ||||
|             'to_date' => $to_date, | ||||
|         ]); | ||||
|         $pdf = PDF::loadView('app.pdf.reports.expenses'); | ||||
|  | ||||
|  | ||||
| @ -2,14 +2,14 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Report; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Company; | ||||
| use PDF; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Models\InvoiceItem; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Company; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\InvoiceItem; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\App; | ||||
| use PDF; | ||||
|  | ||||
| class ItemSalesReportController extends Controller | ||||
| { | ||||
| @ -51,7 +51,7 @@ class ItemSalesReportController extends Controller | ||||
|             'footer_text_color', | ||||
|             'footer_total_color', | ||||
|             'footer_bg_color', | ||||
|             'date_text_color' | ||||
|             'date_text_color', | ||||
|         ]; | ||||
|         $colorSettings = CompanySetting::whereIn('option', $colors) | ||||
|             ->whereCompany($company->id) | ||||
| @ -63,7 +63,7 @@ class ItemSalesReportController extends Controller | ||||
|             'totalAmount' => $totalAmount, | ||||
|             'company' => $company, | ||||
|             'from_date' => $from_date, | ||||
|             'to_date' => $to_date | ||||
|             'to_date' => $to_date, | ||||
|         ]); | ||||
|         $pdf = PDF::loadView('app.pdf.reports.sales-items'); | ||||
|  | ||||
|  | ||||
| @ -2,15 +2,15 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Report; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Company; | ||||
| use PDF; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Company; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Expense; | ||||
| use Crater\Models\Invoice; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\App; | ||||
| use PDF; | ||||
|  | ||||
| class ProfitLossReportController extends Controller | ||||
| { | ||||
| @ -58,7 +58,7 @@ class ProfitLossReportController extends Controller | ||||
|             'footer_text_color', | ||||
|             'footer_total_color', | ||||
|             'footer_bg_color', | ||||
|             'date_text_color' | ||||
|             'date_text_color', | ||||
|         ]; | ||||
|         $colorSettings = CompanySetting::whereIn('option', $colors) | ||||
|             ->whereCompany($company->id) | ||||
| @ -72,7 +72,7 @@ class ProfitLossReportController extends Controller | ||||
|             'colorSettings' => $colorSettings, | ||||
|             'company' => $company, | ||||
|             'from_date' => $from_date, | ||||
|             'to_date' => $to_date | ||||
|             'to_date' => $to_date, | ||||
|         ]); | ||||
|         $pdf = PDF::loadView('app.pdf.reports.profit-loss'); | ||||
|  | ||||
|  | ||||
| @ -2,14 +2,14 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Report; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Company; | ||||
| use PDF; | ||||
| use Carbon\Carbon; | ||||
| use Crater\Models\Tax; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Company; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\Tax; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\App; | ||||
| use PDF; | ||||
|  | ||||
| class TaxSummaryReportController extends Controller | ||||
| { | ||||
| @ -52,7 +52,7 @@ class TaxSummaryReportController extends Controller | ||||
|             'footer_text_color', | ||||
|             'footer_total_color', | ||||
|             'footer_bg_color', | ||||
|             'date_text_color' | ||||
|             'date_text_color', | ||||
|         ]; | ||||
|  | ||||
|         $colorSettings = CompanySetting::whereIn('option', $colors) | ||||
| @ -65,7 +65,7 @@ class TaxSummaryReportController extends Controller | ||||
|             'colorSettings' => $colorSettings, | ||||
|             'company' => $company, | ||||
|             'from_date' => $from_date, | ||||
|             'to_date' => $to_date | ||||
|             'to_date' => $to_date, | ||||
|         ]); | ||||
|  | ||||
|         $pdf = PDF::loadView('app.pdf.reports.tax-summary'); | ||||
|  | ||||
| @ -2,11 +2,11 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Settings; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\Company; | ||||
| use Crater\Http\Requests\ProfileRequest; | ||||
| use Crater\Http\Requests\CompanyRequest; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\CompanyRequest; | ||||
| use Crater\Http\Requests\ProfileRequest; | ||||
| use Crater\Models\Company; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Auth; | ||||
|  | ||||
| class CompanyController extends Controller | ||||
| @ -24,11 +24,11 @@ class CompanyController extends Controller | ||||
|             'addresses.country', | ||||
|             'company', | ||||
|             'company.address', | ||||
|             'company.address.country' | ||||
|             'company.address.country', | ||||
|         ]); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'user' => $user | ||||
|             'user' => $user, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -47,7 +47,7 @@ class CompanyController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'user' => $user, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -66,7 +66,7 @@ class CompanyController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'company' => $company, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -93,7 +93,7 @@ class CompanyController extends Controller | ||||
|         } | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -121,7 +121,7 @@ class CompanyController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'user' => $user, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -3,10 +3,10 @@ | ||||
| namespace Crater\Http\Controllers\V1\Settings; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Models\FileDisk; | ||||
| use Crater\Http\Requests\DiskEnvironmentRequest; | ||||
| use Crater\Models\FileDisk; | ||||
| use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class DiskController extends Controller | ||||
| { | ||||
| @ -36,7 +36,7 @@ class DiskController extends Controller | ||||
|         if (! FileDisk::validateCredentials($request->credentials, $request->driver)) { | ||||
|             return response()->json([ | ||||
|                 'success' => false, | ||||
|                 'error' => 'invalid_credentials' | ||||
|                 'error' => 'invalid_credentials', | ||||
|             ]); | ||||
|         } | ||||
|  | ||||
| @ -44,7 +44,7 @@ class DiskController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true, | ||||
|             'disk' => $disk | ||||
|             'disk' => $disk, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -63,7 +63,7 @@ class DiskController extends Controller | ||||
|             if (! FileDisk::validateCredentials($credentials, $driver)) { | ||||
|                 return response()->json([ | ||||
|                     'success' => false, | ||||
|                     'error' => 'invalid_credentials' | ||||
|                     'error' => 'invalid_credentials', | ||||
|                 ]); | ||||
|             } | ||||
|  | ||||
| @ -74,7 +74,7 @@ class DiskController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true, | ||||
|             'disk' => $disk | ||||
|             'disk' => $disk, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -90,6 +90,7 @@ class DiskController extends Controller | ||||
|                 $diskData = [ | ||||
|                     'root' => config('filesystems.disks.local.root'), | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|  | ||||
| @ -101,6 +102,7 @@ class DiskController extends Controller | ||||
|                     'bucket' => '', | ||||
|                     'root' => '', | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             case 'doSpaces': | ||||
| @ -112,6 +114,7 @@ class DiskController extends Controller | ||||
|                     'endpoint' => '', | ||||
|                     'root' => '', | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             case 'dropbox': | ||||
| @ -122,6 +125,7 @@ class DiskController extends Controller | ||||
|                     'app' => '', | ||||
|                     'root' => '', | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|         } | ||||
|  | ||||
| @ -140,14 +144,14 @@ class DiskController extends Controller | ||||
|     { | ||||
|         if ($disk->setAsDefault() && $disk->type === 'SYSTEM') { | ||||
|             return response()->json([ | ||||
|                 'success' => false | ||||
|                 'success' => false, | ||||
|             ]); | ||||
|         } | ||||
|  | ||||
|         $disk->delete(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -160,19 +164,19 @@ class DiskController extends Controller | ||||
|         $drivers = [ | ||||
|             [ | ||||
|                 'name' => 'Local', | ||||
|                 'value' => 'local' | ||||
|                 'value' => 'local', | ||||
|             ], | ||||
|             [ | ||||
|                 'name' => 'Amazon S3', | ||||
|                 'value' => 's3' | ||||
|                 'value' => 's3', | ||||
|             ], | ||||
|             [ | ||||
|                 'name' => 'Digital Ocean Spaces', | ||||
|                 'value' => 'doSpaces' | ||||
|                 'value' => 'doSpaces', | ||||
|             ], | ||||
|             [ | ||||
|                 'name' => 'Dropbox', | ||||
|                 'value' => 'dropbox' | ||||
|                 'value' => 'dropbox', | ||||
|             ], | ||||
|         ]; | ||||
|  | ||||
| @ -180,7 +184,7 @@ class DiskController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'drivers' => $drivers, | ||||
|             'default' => $default | ||||
|             'default' => $default, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,9 +2,9 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Settings; | ||||
|  | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\GetSettingsRequest; | ||||
| use Crater\Models\CompanySetting; | ||||
|  | ||||
| class GetCompanySettingsController extends Controller | ||||
| { | ||||
|  | ||||
| @ -2,13 +2,13 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Settings; | ||||
|  | ||||
| use Crater\Models\Setting; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Space\EnvironmentManager; | ||||
| use Crater\Http\Requests\MailEnvironmentRequest; | ||||
| use Illuminate\Http\JsonResponse; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\MailEnvironmentRequest; | ||||
| use Crater\Mail\TestMail; | ||||
| use Crater\Models\Setting; | ||||
| use Crater\Space\EnvironmentManager; | ||||
| use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | ||||
| use Mail; | ||||
|  | ||||
| class MailConfigurationController extends Controller | ||||
| @ -36,8 +36,7 @@ class MailConfigurationController extends Controller | ||||
|         $setting = Setting::getSetting('profile_complete'); | ||||
|         $results = $this->environmentManager->saveMailVariables($request); | ||||
|  | ||||
|         if ($setting !== 'COMPLETED') | ||||
|         { | ||||
|         if ($setting !== 'COMPLETED') { | ||||
|             Setting::setSetting('profile_complete', 4); | ||||
|         } | ||||
|  | ||||
| @ -77,7 +76,7 @@ class MailConfigurationController extends Controller | ||||
|             'mail', | ||||
|             'sendmail', | ||||
|             'mailgun', | ||||
|             'ses' | ||||
|             'ses', | ||||
|         ]; | ||||
|  | ||||
|         return response()->json($drivers); | ||||
| @ -88,13 +87,13 @@ class MailConfigurationController extends Controller | ||||
|         $this->validate($request, [ | ||||
|             'to' => 'required|email', | ||||
|             'subject' => 'required', | ||||
|             'message' => 'required' | ||||
|             'message' => 'required', | ||||
|         ]); | ||||
|  | ||||
|         Mail::to($request->to)->send(new TestMail($request->subject, $request->message)); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,10 +2,10 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Settings; | ||||
|  | ||||
| use Crater\Models\TaxType; | ||||
| use Crater\Http\Requests\TaxTypeRequest; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\TaxTypeRequest; | ||||
| use Crater\Models\TaxType; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class TaxTypesController extends Controller | ||||
| { | ||||
| @ -23,13 +23,13 @@ class TaxTypesController extends Controller | ||||
|                 'tax_type_id', | ||||
|                 'search', | ||||
|                 'orderByField', | ||||
|                 'orderBy' | ||||
|                 'orderBy', | ||||
|             ])) | ||||
|             ->latest() | ||||
|             ->paginateData($limit); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'taxTypes' => $taxTypes | ||||
|             'taxTypes' => $taxTypes, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -61,7 +61,7 @@ class TaxTypesController extends Controller | ||||
|     public function show(TaxType $taxType) | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'taxType' => $taxType | ||||
|             'taxType' => $taxType, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -91,13 +91,13 @@ class TaxTypesController extends Controller | ||||
|     { | ||||
|         if ($taxType->taxes() && $taxType->taxes()->count() > 0) { | ||||
|             return response()->json([ | ||||
|                 'success' => false | ||||
|                 'success' => false, | ||||
|             ]); | ||||
|         } | ||||
|         $taxType->delete(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,9 +2,9 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Settings; | ||||
|  | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\UpdateSettingsRequest; | ||||
| use Crater\Models\CompanySetting; | ||||
|  | ||||
| class UpdateCompanySettingsController extends Controller | ||||
| { | ||||
| @ -19,7 +19,7 @@ class UpdateCompanySettingsController extends Controller | ||||
|         CompanySetting::setSettings($request->settings, $request->header('company')); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -21,7 +21,7 @@ class UpdateUserSettingsController extends Controller | ||||
|         $user->setSettings($request->settings); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -24,7 +24,7 @@ class CopyFilesController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true, | ||||
|             'path' => $path | ||||
|             'path' => $path, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -3,8 +3,8 @@ | ||||
| namespace Crater\Http\Controllers\V1\Update; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Space\Updater; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class DeleteFilesController extends Controller | ||||
| { | ||||
| @ -16,7 +16,6 @@ class DeleteFilesController extends Controller | ||||
|      */ | ||||
|     public function __invoke(Request $request) | ||||
|     { | ||||
|  | ||||
|         if (isset($request->deleted_files) && ! empty($request->deleted_files)) { | ||||
|             Updater::deleteFiles($request->deleted_files); | ||||
|         } | ||||
|  | ||||
| @ -24,7 +24,7 @@ class DownloadUpdateController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true, | ||||
|             'path' => $path | ||||
|             'path' => $path, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -19,7 +19,7 @@ class MigrateUpdateController extends Controller | ||||
|         Updater::migrateUpdate(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -25,13 +25,12 @@ class UnzipUpdateController extends Controller | ||||
|  | ||||
|             return response()->json([ | ||||
|                 'success' => true, | ||||
|                 'path' => $path | ||||
|                 'path' => $path, | ||||
|             ]); | ||||
|  | ||||
|         } catch (\Exception $e) { | ||||
|             return response()->json([ | ||||
|                 'success' => false, | ||||
|                 'error' => $e->getMessage() | ||||
|                 'error' => $e->getMessage(), | ||||
|             ], 500); | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @ -2,12 +2,10 @@ | ||||
|  | ||||
| namespace Crater\Http\Controllers\V1\Update; | ||||
|  | ||||
| use Crater\Models\Setting; | ||||
| use Illuminate\Http\Request; | ||||
| use Crater\Space\Updater; | ||||
| use Crater\Space\SiteApi; | ||||
| use Illuminate\Support\Facades\Artisan; | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Models\Setting; | ||||
| use Crater\Space\Updater; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class UpdateController extends Controller | ||||
| { | ||||
| @ -21,7 +19,7 @@ class UpdateController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true, | ||||
|             'path' => $path | ||||
|             'path' => $path, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -36,13 +34,12 @@ class UpdateController extends Controller | ||||
|  | ||||
|             return response()->json([ | ||||
|                 'success' => true, | ||||
|                 'path' => $path | ||||
|                 'path' => $path, | ||||
|             ]); | ||||
|  | ||||
|         } catch (\Exception $e) { | ||||
|             return response()->json([ | ||||
|                 'success' => false, | ||||
|                 'error' => $e->getMessage() | ||||
|                 'error' => $e->getMessage(), | ||||
|             ], 500); | ||||
|         } | ||||
|     } | ||||
| @ -57,7 +54,7 @@ class UpdateController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true, | ||||
|             'path' => $path | ||||
|             'path' => $path, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -66,7 +63,7 @@ class UpdateController extends Controller | ||||
|         Updater::migrateUpdate(); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
|  | ||||
| @ -4,8 +4,8 @@ namespace Crater\Http\Controllers\V1\Users; | ||||
|  | ||||
| use Crater\Http\Controllers\Controller; | ||||
| use Crater\Http\Requests\UserRequest; | ||||
| use Crater\Models\User; | ||||
| use Crater\Models\CompanySetting; | ||||
| use Crater\Models\User; | ||||
| use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Auth; | ||||
|  | ||||
| @ -28,14 +28,14 @@ class UsersController extends Controller | ||||
|                     'email', | ||||
|                     'display_name', | ||||
|                     'orderByField', | ||||
|                     'orderBy' | ||||
|                     'orderBy', | ||||
|                 ]) | ||||
|             ) | ||||
|             ->latest() | ||||
|             ->paginate($limit); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'users' => $users | ||||
|             'users' => $users, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -54,12 +54,12 @@ class UsersController extends Controller | ||||
|         $user = User::create($data); | ||||
|  | ||||
|         $user->setSettings([ | ||||
|             'language' => CompanySetting::getSetting('language', $user->company_id) | ||||
|             'language' => CompanySetting::getSetting('language', $user->company_id), | ||||
|         ]); | ||||
|  | ||||
|         return response()->json([ | ||||
|             'user' => $user, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -73,7 +73,7 @@ class UsersController extends Controller | ||||
|     { | ||||
|         return response()->json([ | ||||
|             'user' => $user, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -90,7 +90,7 @@ class UsersController extends Controller | ||||
|  | ||||
|         return response()->json([ | ||||
|             'user' => $user, | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @ -107,7 +107,7 @@ class UsersController extends Controller | ||||
|         } | ||||
|  | ||||
|         return response()->json([ | ||||
|             'success' => true | ||||
|             'success' => true, | ||||
|         ]); | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http; | ||||
|  | ||||
| use Illuminate\Foundation\Http\Kernel as HttpKernel; | ||||
| use Crater\Http\Middleware\AdminMiddleware; | ||||
| use Illuminate\Foundation\Http\Kernel as HttpKernel; | ||||
| use Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful; | ||||
|  | ||||
| class Kernel extends HttpKernel | ||||
| @ -22,7 +22,7 @@ class Kernel extends HttpKernel | ||||
|         \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class, | ||||
|         \Crater\Http\Middleware\TrustProxies::class, | ||||
|         \Crater\Http\Middleware\ConfigMiddleware::class, | ||||
|         \Fruitcake\Cors\HandleCors::class | ||||
|         \Fruitcake\Cors\HandleCors::class, | ||||
|     ]; | ||||
|  | ||||
|     /** | ||||
| @ -68,6 +68,7 @@ class Kernel extends HttpKernel | ||||
|         'redirect-if-installed' => \Crater\Http\Middleware\RedirectIfInstalled::class, | ||||
|         'redirect-if-unauthenticated' => \Crater\Http\Middleware\RedirectIfUnauthorized::class, | ||||
|     ]; | ||||
|  | ||||
|     /** | ||||
|      * The priority-sorted list of middleware. | ||||
|      * | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Middleware; | ||||
|  | ||||
| use Illuminate\Auth\Middleware\Authenticate as Middleware; | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Middleware; | ||||
|  | ||||
| use Closure; | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Middleware; | ||||
|  | ||||
| use Illuminate\Cookie\Middleware\EncryptCookies as Middleware; | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Middleware; | ||||
|  | ||||
| use Crater\Providers\RouteServiceProvider; | ||||
| use Closure; | ||||
| use Crater\Providers\RouteServiceProvider; | ||||
| use Illuminate\Support\Facades\Auth; | ||||
|  | ||||
| class RedirectIfAuthenticated | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Middleware; | ||||
|  | ||||
| use Illuminate\Foundation\Http\Middleware\TrimStrings as Middleware; | ||||
|  | ||||
| @ -1,8 +1,9 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Middleware; | ||||
|  | ||||
| use Illuminate\Http\Request; | ||||
| use Fideloper\Proxy\TrustProxies as Middleware; | ||||
| use Illuminate\Http\Request; | ||||
|  | ||||
| class TrustProxies extends Middleware | ||||
| { | ||||
| @ -12,6 +13,7 @@ class TrustProxies extends Middleware | ||||
|      * @var array | ||||
|      */ | ||||
|     protected $proxies; | ||||
|  | ||||
|     /** | ||||
|      * The current proxy header mappings. | ||||
|      * | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Middleware; | ||||
|  | ||||
| use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware; | ||||
| @ -18,6 +19,6 @@ class VerifyCsrfToken extends Middleware | ||||
|      * @var array | ||||
|      */ | ||||
|     protected $except = [ | ||||
|         'login' | ||||
|         'login', | ||||
|     ]; | ||||
| } | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Requests; | ||||
|  | ||||
| use Illuminate\Foundation\Http\FormRequest; | ||||
| @ -24,11 +25,11 @@ class CompanyRequest extends FormRequest | ||||
|     { | ||||
|         return [ | ||||
|             'name' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'country_id' => [ | ||||
|                 'required' | ||||
|             ] | ||||
|                 'required', | ||||
|             ], | ||||
|         ]; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| <?php | ||||
|  | ||||
| namespace Crater\Http\Requests; | ||||
|  | ||||
| use Illuminate\Foundation\Http\FormRequest; | ||||
| @ -24,23 +25,23 @@ class CompanySettingRequest extends FormRequest | ||||
|     { | ||||
|         return [ | ||||
|             'currency' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'time_zone' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'language' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'fiscal_year' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'moment_date_format' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'carbon_date_format' => [ | ||||
|                 'required' | ||||
|             ] | ||||
|                 'required', | ||||
|             ], | ||||
|         ]; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -26,19 +26,19 @@ class CustomerRequest extends FormRequest | ||||
|     { | ||||
|         $rules = [ | ||||
|             'name' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'addresses.*.address_street_1' => [ | ||||
|                 'max:255' | ||||
|                 'max:255', | ||||
|             ], | ||||
|             'addresses.*.address_street_2' => [ | ||||
|                 'max:255' | ||||
|                 'max:255', | ||||
|             ], | ||||
|             'email' => [ | ||||
|                 'email', | ||||
|                 'nullable', | ||||
|                 'unique:users,email', | ||||
|             ] | ||||
|             ], | ||||
|         ]; | ||||
|  | ||||
|         if ($this->isMethod('PUT') && $this->email != null) { | ||||
| @ -46,8 +46,8 @@ class CustomerRequest extends FormRequest | ||||
|                 'email' => [ | ||||
|                     'email', | ||||
|                     'nullable', | ||||
|                     Rule::unique('users')->ignore($this->route('customer')->id) | ||||
|                 ] | ||||
|                     Rule::unique('users')->ignore($this->route('customer')->id), | ||||
|                 ], | ||||
|             ]; | ||||
|         }; | ||||
|  | ||||
|  | ||||
| @ -28,51 +28,53 @@ class DatabaseEnvironmentRequest extends FormRequest | ||||
|                 return  [ | ||||
|                     'app_url' => [ | ||||
|                         'required', | ||||
|                         'url' | ||||
|                         'url', | ||||
|                     ], | ||||
|                     'app_domain' => [ | ||||
|                         'required', | ||||
|                     ], | ||||
|                     'database_connection' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'database_name' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|             default: | ||||
|                 return  [ | ||||
|                     'app_url' => [ | ||||
|                         'required', | ||||
|                         'url' | ||||
|                         'url', | ||||
|                     ], | ||||
|                     'app_domain' => [ | ||||
|                         'required', | ||||
|                     ], | ||||
|                     'database_connection' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'database_hostname' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'database_port' => [ | ||||
|                         'required', | ||||
|                         'numeric' | ||||
|                         'numeric', | ||||
|                     ], | ||||
|                     'database_name' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'database_username' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                 ]; | ||||
|  | ||||
|             break; | ||||
|  | ||||
|         } | ||||
|  | ||||
| @ -2,8 +2,8 @@ | ||||
|  | ||||
| namespace Crater\Http\Requests; | ||||
|  | ||||
| use Illuminate\Validation\Rule; | ||||
| use Illuminate\Foundation\Http\FormRequest; | ||||
| use Illuminate\Validation\Rule; | ||||
|  | ||||
| class DeleteCustomersRequest extends FormRequest | ||||
| { | ||||
| @ -26,12 +26,12 @@ class DeleteCustomersRequest extends FormRequest | ||||
|     { | ||||
|         return [ | ||||
|             'ids' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'ids.*' => [ | ||||
|                 'required', | ||||
|                 Rule::exists('users', 'id') | ||||
|             ] | ||||
|                 Rule::exists('users', 'id'), | ||||
|             ], | ||||
|         ]; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -26,12 +26,12 @@ class DeleteEstimatesRequest extends FormRequest | ||||
|     { | ||||
|         return [ | ||||
|             'ids' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'ids.*' => [ | ||||
|                 'required', | ||||
|                 Rule::exists('estimates', 'id') | ||||
|             ] | ||||
|                 Rule::exists('estimates', 'id'), | ||||
|             ], | ||||
|         ]; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -26,12 +26,12 @@ class DeleteExpensesRequest extends FormRequest | ||||
|     { | ||||
|         return [ | ||||
|             'ids' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'ids.*' => [ | ||||
|                 'required', | ||||
|                 Rule::exists('expenses', 'id') | ||||
|             ] | ||||
|                 Rule::exists('expenses', 'id'), | ||||
|             ], | ||||
|         ]; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -4,8 +4,8 @@ namespace Crater\Http\Requests; | ||||
|  | ||||
| use Crater\Models\Invoice; | ||||
| use Crater\Rules\RelationNotExist; | ||||
| use Illuminate\Validation\Rule; | ||||
| use Illuminate\Foundation\Http\FormRequest; | ||||
| use Illuminate\Validation\Rule; | ||||
|  | ||||
| class DeleteInvoiceRequest extends FormRequest | ||||
| { | ||||
| @ -28,13 +28,13 @@ class DeleteInvoiceRequest extends FormRequest | ||||
|     { | ||||
|         return [ | ||||
|             'ids' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'ids.*' => [ | ||||
|                 'required', | ||||
|                 Rule::exists('invoices', 'id'), | ||||
|                 new RelationNotExist(Invoice::class, 'payments') | ||||
|             ] | ||||
|                 new RelationNotExist(Invoice::class, 'payments'), | ||||
|             ], | ||||
|         ]; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -28,15 +28,15 @@ class DeleteItemsRequest extends FormRequest | ||||
|     { | ||||
|         return [ | ||||
|             'ids' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'ids.*' => [ | ||||
|                 'required', | ||||
|                 Rule::exists('items', 'id'), | ||||
|                 new RelationNotExist(Item::class, 'invoiceItems'), | ||||
|                 new RelationNotExist(Item::class, 'estimateItems'), | ||||
|                 new RelationNotExist(Item::class, 'taxes') | ||||
|             ] | ||||
|                 new RelationNotExist(Item::class, 'taxes'), | ||||
|             ], | ||||
|         ]; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -26,12 +26,12 @@ class DeletePaymentsRequest extends FormRequest | ||||
|     { | ||||
|         return [ | ||||
|             'ids' => [ | ||||
|                 'required' | ||||
|                 'required', | ||||
|             ], | ||||
|             'ids.*' => [ | ||||
|                 'required', | ||||
|                 Rule::exists('payments', 'id') | ||||
|             ] | ||||
|                 Rule::exists('payments', 'id'), | ||||
|             ], | ||||
|         ]; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -29,79 +29,82 @@ class DiskEnvironmentRequest extends FormRequest | ||||
|                 $rules = [ | ||||
|                     'credentials.key' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.secret' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.region' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.bucket' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.root' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             case 'doSpaces': | ||||
|                 $rules = [ | ||||
|                     'credentials.key' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.secret' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.region' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.bucket' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.endpoint' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.root' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|  | ||||
|             case 'dropbox': | ||||
|                 $rules = [ | ||||
|                     'credentials.token' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.key' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.secret' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.app' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                     'credentials.root' => [ | ||||
|                         'required', | ||||
|                         'string' | ||||
|                         'string', | ||||
|                     ], | ||||
|                 ]; | ||||
|  | ||||
|                 break; | ||||
|         } | ||||
|  | ||||
| @ -111,7 +114,7 @@ class DiskEnvironmentRequest extends FormRequest | ||||
|             ], | ||||
|             'driver' => [ | ||||
|                 'required', | ||||
|             ] | ||||
|             ], | ||||
|         ]; | ||||
|  | ||||
|         return array_merge($rules, $defaultRules); | ||||
|  | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user
	