@@ -80,7 +80,10 @@ public function update(Request $request, $id)
8080 public function store (Request $ request )
8181 {
8282 try {
83- $ category = new Category ;
83+ $ gender_name = "" ;
84+
85+ if ($ request ->parent_id == null ){
86+ $ category = new Category ;
8487 $ category ->category_name = $ request ->category_name ;
8588 $ category ->category_url = \Illuminate \Support \Str::slug ($ request ->category_name );
8689
@@ -89,23 +92,62 @@ public function store(Request $request)
8992 $ category ->category_profile = $ file ->store ('categories/profile ' , 'public ' );
9093 }
9194
92- if ( $ request -> parent_id ){
95+
9396 $ category ->parent_id = $ request ->parent_id ;
94- }
97+
9598
9699 $ category ->save ();
97100
98101 // Attacher les genres si fournis
99102 if ($ request ->gender_id ){
100103 $ category ->genders ()->attach ($ request ->gender_id );
101104 }
105+ }else {
106+ foreach ($ request ->gender_id as $ gender ){
107+ $ category = new Category ;
108+ $ category_name =$ request ->category_name ;
109+ if ($ request ->parent_id ){
110+ $ category_name = $ request ->category_name . " " . $ gender_name ;
111+ $ category ->parent_id = $ request ->parent_id ;
112+ }
113+ if ($ gender == "1 " ){
114+ $ gender_name ="homme " ;
115+ }else if ($ gender == "2 " ){
116+ $ gender_name = "femme " ;
117+ }else {
118+ $ gender_name = "enfant " ;
119+ }
120+
121+
122+ $ category ->category_name = $ request ->category_name . " " . $ gender_name ;
123+ $ category ->category_url = \Illuminate \Support \Str::slug ($ request ->category_name . " " . $ gender_name );
124+
125+ if ($ request ->category_profile ){
126+ $ file =$ request ->file ('category_profile ' );
127+ $ category ->category_profile = $ file ->store ('categories/profile ' , 'public ' );
128+ }
129+
130+
131+
132+ $ category ->save ();
133+
134+
135+ $ category ->genders ()->attach ($ gender );
136+
137+ }
138+ }
139+
140+
102141
103142 return response ()->json ([
104143 'success ' => true ,
105144 'message ' => "Category created successfully " ,
106145 'data ' => $ category ->load ('genders ' )
107146 ], 200 );
108147
148+ // Attacher les genres si fournis
149+
150+
109151 } catch (\Exception $ e ){
110152 return response ()->json ([
111153 'success ' => false ,
0 commit comments