Andrew Wallo пре 5 месеци
родитељ
комит
c5cb2fbd2a

+ 2
- 1
app/Filament/Company/Clusters/Settings/Pages/CompanyProfile.php Прегледај датотеку

201
                 Hidden::make('type')
201
                 Hidden::make('type')
202
                     ->default('general'),
202
                     ->default('general'),
203
                 AddressFields::make()
203
                 AddressFields::make()
204
-                    ->softRequired(),
204
+                    ->softRequired()
205
+                    ->disabledCountry(is_demo_environment()),
205
             ])
206
             ])
206
             ->columns(2);
207
             ->columns(2);
207
     }
208
     }

+ 1
- 1
app/Filament/Company/Clusters/Settings/Pages/Localization.php Прегледај датотеку

126
                     ->softRequired()
126
                     ->softRequired()
127
                     ->localizeLabel()
127
                     ->localizeLabel()
128
                     ->options(LocalizationModel::getAllLanguages())
128
                     ->options(LocalizationModel::getAllLanguages())
129
-                    ->disabled(app()->environment('demo'))
129
+                    ->disabled(is_demo_environment())
130
                     ->searchable(),
130
                     ->searchable(),
131
                 Select::make('timezone')
131
                 Select::make('timezone')
132
                     ->softRequired()
132
                     ->softRequired()

+ 1
- 1
app/Filament/Company/Pages/Reports/BaseReportPage.php Прегледај датотеку

227
                     ->action(fn () => $this->exportCSV()),
227
                     ->action(fn () => $this->exportCSV()),
228
                 Action::make('exportPDF')
228
                 Action::make('exportPDF')
229
                     ->label('PDF')
229
                     ->label('PDF')
230
-                    ->hidden(app()->environment('demo'))
230
+                    ->hidden(is_demo_environment())
231
                     ->action(fn () => $this->exportPDF()),
231
                     ->action(fn () => $this->exportPDF()),
232
             ])
232
             ])
233
                 ->label('Export')
233
                 ->label('Export')

+ 2
- 2
app/Filament/Company/Resources/Purchases/VendorResource/Pages/CreateVendor.php Прегледај датотеку

2
 
2
 
3
 namespace App\Filament\Company\Resources\Purchases\VendorResource\Pages;
3
 namespace App\Filament\Company\Resources\Purchases\VendorResource\Pages;
4
 
4
 
5
-use App\Concerns\RedirectToListPage;
5
+use App\Concerns\RedirectToViewPage;
6
 use App\Filament\Company\Resources\Purchases\VendorResource;
6
 use App\Filament\Company\Resources\Purchases\VendorResource;
7
 use Filament\Resources\Pages\CreateRecord;
7
 use Filament\Resources\Pages\CreateRecord;
8
 use Filament\Support\Enums\MaxWidth;
8
 use Filament\Support\Enums\MaxWidth;
9
 
9
 
10
 class CreateVendor extends CreateRecord
10
 class CreateVendor extends CreateRecord
11
 {
11
 {
12
-    use RedirectToListPage;
12
+    use RedirectToViewPage;
13
 
13
 
14
     protected static string $resource = VendorResource::class;
14
     protected static string $resource = VendorResource::class;
15
 
15
 

+ 2
- 2
app/Filament/Company/Resources/Sales/EstimateResource/Pages/CreateEstimate.php Прегледај датотеку

3
 namespace App\Filament\Company\Resources\Sales\EstimateResource\Pages;
3
 namespace App\Filament\Company\Resources\Sales\EstimateResource\Pages;
4
 
4
 
5
 use App\Concerns\ManagesLineItems;
5
 use App\Concerns\ManagesLineItems;
6
-use App\Concerns\RedirectToListPage;
6
+use App\Concerns\RedirectToViewPage;
7
 use App\Filament\Company\Resources\Sales\EstimateResource;
7
 use App\Filament\Company\Resources\Sales\EstimateResource;
8
 use App\Models\Accounting\Estimate;
8
 use App\Models\Accounting\Estimate;
9
 use App\Models\Common\Client;
9
 use App\Models\Common\Client;
15
 class CreateEstimate extends CreateRecord
15
 class CreateEstimate extends CreateRecord
16
 {
16
 {
17
     use ManagesLineItems;
17
     use ManagesLineItems;
18
-    use RedirectToListPage;
18
+    use RedirectToViewPage;
19
 
19
 
20
     protected static string $resource = EstimateResource::class;
20
     protected static string $resource = EstimateResource::class;
21
 
21
 

+ 16
- 0
app/Filament/Forms/Components/AddressFields.php Прегледај датотеку

2
 
2
 
3
 namespace App\Filament\Forms\Components;
3
 namespace App\Filament\Forms\Components;
4
 
4
 
5
+use Closure;
5
 use Filament\Forms\Components\Field;
6
 use Filament\Forms\Components\Field;
6
 use Filament\Forms\Components\Grid;
7
 use Filament\Forms\Components\Grid;
7
 use Filament\Forms\Components\TextInput;
8
 use Filament\Forms\Components\TextInput;
10
 {
11
 {
11
     protected bool $isSoftRequired = false;
12
     protected bool $isSoftRequired = false;
12
 
13
 
14
+    protected bool | Closure $isCountryDisabled = false;
15
+
13
     protected function setUp(): void
16
     protected function setUp(): void
14
     {
17
     {
15
         parent::setUp();
18
         parent::setUp();
23
                 ->label('Address line 2')
26
                 ->label('Address line 2')
24
                 ->maxLength(255),
27
                 ->maxLength(255),
25
             CountrySelect::make('country_code')
28
             CountrySelect::make('country_code')
29
+                ->disabled(fn () => $this->isCountryDisabled())
26
                 ->clearStateField()
30
                 ->clearStateField()
27
                 ->required(),
31
                 ->required(),
28
             StateSelect::make('state_id'),
32
             StateSelect::make('state_id'),
55
             }
59
             }
56
         }
60
         }
57
     }
61
     }
62
+
63
+    public function disabledCountry(bool | Closure $condition = true): static
64
+    {
65
+        $this->isCountryDisabled = $condition;
66
+
67
+        return $this;
68
+    }
69
+
70
+    public function isCountryDisabled(): bool
71
+    {
72
+        return $this->evaluate($this->isCountryDisabled);
73
+    }
58
 }
74
 }

+ 0
- 1
app/Filament/Forms/Components/CountrySelect.php Прегледај датотеку

17
         $this
17
         $this
18
             ->localizeLabel('Country')
18
             ->localizeLabel('Country')
19
             ->searchable()
19
             ->searchable()
20
-            ->disabled(app()->environment('demo'))
21
             ->options($options = Country::getAvailableCountryOptions())
20
             ->options($options = Country::getAvailableCountryOptions())
22
             ->getSearchResultsUsing(static fn (string $search): array => Country::getSearchResultsUsing($search))
21
             ->getSearchResultsUsing(static fn (string $search): array => Country::getSearchResultsUsing($search))
23
             ->getOptionLabelUsing(static fn (string $value): ?string => $options[$value] ?? $value);
22
             ->getOptionLabelUsing(static fn (string $value): ?string => $options[$value] ?? $value);

+ 1
- 1
app/Filament/Pages/Auth/Login.php Прегледај датотеку

10
     {
10
     {
11
         parent::mount();
11
         parent::mount();
12
 
12
 
13
-        if (app()->environment('demo')) {
13
+        if (is_demo_environment()) {
14
             $this->form->fill([
14
             $this->form->fill([
15
                 'email' => 'admin@erpsaas.com',
15
                 'email' => 'admin@erpsaas.com',
16
                 'password' => 'password',
16
                 'password' => 'password',

+ 1
- 1
app/Filament/User/Clusters/Account.php Прегледај датотеку

20
 
20
 
21
     public static function canAccess(): bool
21
     public static function canAccess(): bool
22
     {
22
     {
23
-        return ! app()->environment('demo');
23
+        return ! is_demo_environment();
24
     }
24
     }
25
 
25
 
26
     /**
26
     /**

app/Helpers/format.php → app/Helpers/helpers.php Прегледај датотеку

122
         return null;
122
         return null;
123
     }
123
     }
124
 }
124
 }
125
+
126
+if (! function_exists('is_demo_environment')) {
127
+    function is_demo_environment(): bool
128
+    {
129
+        return app()->environment('demo');
130
+    }
131
+}

+ 1
- 1
app/Models/User.php Прегледај датотеку

71
 
71
 
72
     public function canAccessPanel(Panel $panel): bool
72
     public function canAccessPanel(Panel $panel): bool
73
     {
73
     {
74
-        if ($panel->getId() === 'user' && app()->environment('demo')) {
74
+        if ($panel->getId() === 'user' && is_demo_environment()) {
75
             return false;
75
             return false;
76
         }
76
         }
77
 
77
 

+ 6
- 6
app/Policies/CompanyPolicy.php Прегледај датотеку

31
      */
31
      */
32
     public function create(User $user): bool
32
     public function create(User $user): bool
33
     {
33
     {
34
-        if (app()->environment('demo')) {
34
+        if (is_demo_environment()) {
35
             return false;
35
             return false;
36
         }
36
         }
37
 
37
 
43
      */
43
      */
44
     public function update(User $user, Company $company): bool
44
     public function update(User $user, Company $company): bool
45
     {
45
     {
46
-        if (app()->environment('demo')) {
46
+        if (is_demo_environment()) {
47
             return false;
47
             return false;
48
         }
48
         }
49
 
49
 
55
      */
55
      */
56
     public function addCompanyEmployee(User $user, Company $company): bool
56
     public function addCompanyEmployee(User $user, Company $company): bool
57
     {
57
     {
58
-        if (app()->environment('demo')) {
58
+        if (is_demo_environment()) {
59
             return false;
59
             return false;
60
         }
60
         }
61
 
61
 
67
      */
67
      */
68
     public function updateCompanyEmployee(User $user, Company $company): bool
68
     public function updateCompanyEmployee(User $user, Company $company): bool
69
     {
69
     {
70
-        if (app()->environment('demo')) {
70
+        if (is_demo_environment()) {
71
             return false;
71
             return false;
72
         }
72
         }
73
 
73
 
79
      */
79
      */
80
     public function removeCompanyEmployee(User $user, Company $company): bool
80
     public function removeCompanyEmployee(User $user, Company $company): bool
81
     {
81
     {
82
-        if (app()->environment('demo')) {
82
+        if (is_demo_environment()) {
83
             return false;
83
             return false;
84
         }
84
         }
85
 
85
 
91
      */
91
      */
92
     public function delete(User $user, Company $company): bool
92
     public function delete(User $user, Company $company): bool
93
     {
93
     {
94
-        if (app()->environment('demo')) {
94
+        if (is_demo_environment()) {
95
             return false;
95
             return false;
96
         }
96
         }
97
 
97
 

+ 1
- 1
app/Providers/Filament/CompanyPanelProvider.php Прегледај датотеку

79
      */
79
      */
80
     public function panel(Panel $panel): Panel
80
     public function panel(Panel $panel): Panel
81
     {
81
     {
82
-        $isDemoEnvironment = app()->environment('demo');
82
+        $isDemoEnvironment = is_demo_environment();
83
 
83
 
84
         return $panel
84
         return $panel
85
             ->default()
85
             ->default()

+ 1
- 1
app/Services/CurrencyService.php Прегледај датотеку

21
      */
21
      */
22
     public function isEnabled(): bool
22
     public function isEnabled(): bool
23
     {
23
     {
24
-        if (app()->environment('demo')) {
24
+        if (is_demo_environment()) {
25
             return false;
25
             return false;
26
         }
26
         }
27
 
27
 

+ 1
- 1
app/Services/PlaidService.php Прегледај датотеку

63
      */
63
      */
64
     public function isEnabled(): bool
64
     public function isEnabled(): bool
65
     {
65
     {
66
-        if (app()->environment('demo') || empty($this->clientId) || empty($this->clientSecret)) {
66
+        if (is_demo_environment() || empty($this->clientId) || empty($this->clientSecret)) {
67
             return false;
67
             return false;
68
         }
68
         }
69
 
69
 

+ 1
- 1
composer.json Прегледај датотеку

48
             "Database\\Seeders\\": "database/seeders/"
48
             "Database\\Seeders\\": "database/seeders/"
49
         },
49
         },
50
         "files": [
50
         "files": [
51
-            "app/Helpers/format.php"
51
+            "app/Helpers/helpers.php"
52
         ]
52
         ]
53
     },
53
     },
54
     "autoload-dev": {
54
     "autoload-dev": {

Loading…
Откажи
Сачувај