Ursprung
Commit
43a64d0dbb
1 geänderte Dateien mit 21 neuen und 13 gelöschten Zeilen
  1. 21
    13
      app/Filament/Resources/EsgResource.php

+ 21
- 13
app/Filament/Resources/EsgResource.php Datei anzeigen

45
                 //
45
                 //
46
                 Tabs::make("")->tabs([
46
                 Tabs::make("")->tabs([
47
                     Tab::make('基本資訊')->schema([
47
                     Tab::make('基本資訊')->schema([
48
-                        TextInput::make('keyword')->label("關聯字詞"),
48
+                        TextInput::make('keyword')->label("關聯字詞")->required(),
49
                         Translate::make()->schema(fn (string $locale) => [
49
                         Translate::make()->schema(fn (string $locale) => [
50
                             TextInput::make('title')
50
                             TextInput::make('title')
51
                             ->label("標題")
51
                             ->label("標題")
52
-                            ->columnSpan(1),
52
+                            ->columnSpan(1)
53
+                            ->required($locale == "zh_TW"),
53
                         ])->locales(["zh_TW", "en"])
54
                         ])->locales(["zh_TW", "en"])
54
                         ->columnSpanFull()->columns(3),
55
                         ->columnSpanFull()->columns(3),
55
                     ]),
56
                     ]),
57
                         FileUpload::make('banner_pc')->label("Banner (PC)")
58
                         FileUpload::make('banner_pc')->label("Banner (PC)")
58
                         ->disk("public")
59
                         ->disk("public")
59
                         // ->helperText('建議寬高限制為:1280*720px,檔案大小限制為1M以下')->maxSize('1024')
60
                         // ->helperText('建議寬高限制為:1280*720px,檔案大小限制為1M以下')->maxSize('1024')
60
-                        ->directory("esg"),
61
+                        ->directory("esg")->required(),
61
                         FileUpload::make('banner_mobile')->label("Banner (Mobile)")
62
                         FileUpload::make('banner_mobile')->label("Banner (Mobile)")
62
                         ->disk("public")
63
                         ->disk("public")
63
                         // ->helperText('建議寬高限制為:600*896px,檔案大小限制為1M以下')->maxSize('1024')
64
                         // ->helperText('建議寬高限制為:600*896px,檔案大小限制為1M以下')->maxSize('1024')
64
-                        ->directory("esg"),
65
+                        ->directory("esg")->required(),
65
                         Translate::make()->schema(fn (string $locale) => [
66
                         Translate::make()->schema(fn (string $locale) => [
66
                             TextInput::make('banner_alt')
67
                             TextInput::make('banner_alt')
67
-                            ->label("Banner 圖片註釋"),
68
+                            ->label("Banner 圖片註釋")
69
+                            ->required($locale == "zh_TW"),
68
                             Textarea::make("description")->rows(5)->columnSpanFull()->label("短文"),
70
                             Textarea::make("description")->rows(5)->columnSpanFull()->label("短文"),
69
                         ])->locales(["zh_TW", "en"])
71
                         ])->locales(["zh_TW", "en"])
70
                         ->columnSpanFull(),
72
                         ->columnSpanFull(),
92
                                     RichEditor::make('content.text_content')
94
                                     RichEditor::make('content.text_content')
93
                                     ->fileAttachmentsDirectory('attachments')
95
                                     ->fileAttachmentsDirectory('attachments')
94
                                     ->fileAttachmentsVisibility('private')
96
                                     ->fileAttachmentsVisibility('private')
95
-                                    ->disableToolbarButtons(['attachFiles']),
97
+                                    ->disableToolbarButtons(['attachFiles'])
98
+                                    ->required($locale == "zh_TW"),
96
                                 ])
99
                                 ])
97
                                 ->locales(["zh_TW", "en"])
100
                                 ->locales(["zh_TW", "en"])
98
                                 ->id(fn ($get) => "para_text_" . $get('item_key')),
101
                                 ->id(fn ($get) => "para_text_" . $get('item_key')),
123
                                             //     ->visible(fn (Get $get) => in_array($get('block_type'), ['title', 'subtitle', 'highlight'])),
126
                                             //     ->visible(fn (Get $get) => in_array($get('block_type'), ['title', 'subtitle', 'highlight'])),
124
                                             RichEditor::make('block_content')
127
                                             RichEditor::make('block_content')
125
                                                 ->disableToolbarButtons(['attachFiles'])
128
                                                 ->disableToolbarButtons(['attachFiles'])
126
-                                                ->required(),
129
+                                                ->required($locale == "zh_TW"),
127
                                         ])
130
                                         ])
128
                                         ->locales(["zh_TW", "en"])
131
                                         ->locales(["zh_TW", "en"])
129
                                         ->id(fn ($get) => "text_block_" . $get('block_item_key')),
132
                                         ->id(fn ($get) => "text_block_" . $get('block_item_key')),
256
                                                         ->default(1),
259
                                                         ->default(1),
257
                                                         RichEditor::make('col1')
260
                                                         RichEditor::make('col1')
258
                                                             ->label('第1欄')
261
                                                             ->label('第1欄')
259
-                                                            ->disableToolbarButtons(['attachFiles']),
262
+                                                            ->disableToolbarButtons(['attachFiles'])
263
+                                                            ->required($locale == "zh_TW"),
260
                                                         // TextInput::make('col2')->label('第2欄')->required(),
264
                                                         // TextInput::make('col2')->label('第2欄')->required(),
261
                                                         Radio::make('align2')
265
                                                         Radio::make('align2')
262
                                                             ->label('對齊')
266
                                                             ->label('對齊')
268
                                                             ->default(1),
272
                                                             ->default(1),
269
                                                         RichEditor::make('col2')
273
                                                         RichEditor::make('col2')
270
                                                             ->label('第2欄')
274
                                                             ->label('第2欄')
271
-                                                            ->disableToolbarButtons(['attachFiles']),
275
+                                                            ->disableToolbarButtons(['attachFiles'])
276
+                                                            ->required($locale == "zh_TW"),
272
                                                         Radio::make('align3')
277
                                                         Radio::make('align3')
273
                                                             ->label('對齊')
278
                                                             ->label('對齊')
274
                                                             ->options([
279
                                                             ->options([
281
                                                         RichEditor::make('col3')
286
                                                         RichEditor::make('col3')
282
                                                             ->label('第3欄')
287
                                                             ->label('第3欄')
283
                                                             ->disableToolbarButtons(['attachFiles'])
288
                                                             ->disableToolbarButtons(['attachFiles'])
284
-                                                            ->visible(fn (Get $get) => intval($get('../../../content.column_count')) >= 3),
289
+                                                            ->visible(fn (Get $get) => intval($get('../../../content.column_count')) >= 3)
290
+                                                            ->required($locale == "zh_TW" && fn (Get $get)=> intval($get("../../../content.column_count")) >= 3),
285
                                                             Radio::make('align4')
291
                                                             Radio::make('align4')
286
                                                                 ->label('對齊')
292
                                                                 ->label('對齊')
287
                                                                 ->options([
293
                                                                 ->options([
294
                                                             RichEditor::make('col4')
300
                                                             RichEditor::make('col4')
295
                                                                 ->label('第4欄')
301
                                                                 ->label('第4欄')
296
                                                                 ->disableToolbarButtons(['attachFiles'])
302
                                                                 ->disableToolbarButtons(['attachFiles'])
297
-                                                                ->visible(fn (Get $get) => intval($get('../../../content.column_count')) >= 4),
303
+                                                                ->visible(fn (Get $get) => intval($get('../../../content.column_count')) >= 4)
304
+                                                                ->required($locale == "zh_TW" && fn (Get $get)=> intval($get("../../../content.column_count")) >= 4),
298
                                                     ])
305
                                                     ])
299
                                                     ->reactive()  // 加入響應式
306
                                                     ->reactive()  // 加入響應式
300
                                             ])->locales(["zh_TW", "en"]),
307
                                             ])->locales(["zh_TW", "en"]),
317
                                                 }
324
                                                 }
318
                                             }),
325
                                             }),
319
                                         Translate::make()->schema(fn (string $locale) => [
326
                                         Translate::make()->schema(fn (string $locale) => [
320
-                                            TextInput::make('image_alt')->label("圖片註文"),
327
+                                            TextInput::make('image_alt')->label("圖片註文")
328
+                                            ->required($locale == "zh_TW"),
321
                                         ])->locales(["zh_TW", "en"])
329
                                         ])->locales(["zh_TW", "en"])
322
                                         ->id(fn ($get) => "para_img_mul_" . $get('para_img_item_key')),
330
                                         ->id(fn ($get) => "para_img_mul_" . $get('para_img_item_key')),
323
                                         FileUpload::make('image_url')->label("")->disk("public")
331
                                         FileUpload::make('image_url')->label("")->disk("public")
336
                                     ->disk("public")
344
                                     ->disk("public")
337
                                     ->directory("esg/paragraphVideo")
345
                                     ->directory("esg/paragraphVideo")
338
                                     ->helperText('建議寬高限制為:2000*720px,出血寬度720px,主要圖像範圍為:1280*720px,檔案大小限制為1M以下')->maxSize('1024'),
346
                                     ->helperText('建議寬高限制為:2000*720px,出血寬度720px,主要圖像範圍為:1280*720px,檔案大小限制為1M以下')->maxSize('1024'),
339
-                                    TextInput::make('content.link')->label("網址")->nullable(),
347
+                                    TextInput::make('content.link')->label("網址")->required(),
340
                                     Translate::make()->schema(fn (string $locale) => [
348
                                     Translate::make()->schema(fn (string $locale) => [
341
                                         TextInput::make('content.video_alt')->label("影片註文"),
349
                                         TextInput::make('content.video_alt')->label("影片註文"),
342
                                     ])->locales(["zh_TW", "en"])
350
                                     ])->locales(["zh_TW", "en"])