2424use Pimcore \Model \Asset ;
2525use Pimcore \Model \DataObject ;
2626use Pimcore \Model \Document ;
27+ use Pimcore \Tool \Session ;
2728use Symfony \Component \EventDispatcher \GenericEvent ;
2829use Symfony \Component \HttpFoundation \Request ;
2930use Symfony \Component \HttpFoundation \Response ;
31+ use Symfony \Component \HttpFoundation \Session \Attribute \AttributeBagInterface ;
3032use Symfony \Component \HttpKernel \Event \FilterControllerEvent ;
3133use Symfony \Component \HttpKernel \Event \FilterResponseEvent ;
3234use Symfony \Component \Routing \Annotation \Route ;
@@ -1347,9 +1349,13 @@ public function bulkImportAction(Request $request)
13471349 $ tmpName = $ _FILES ['Filedata ' ]['tmp_name ' ];
13481350 $ json = file_get_contents ($ tmpName );
13491351
1350- $ tmpName = PIMCORE_SYSTEM_TEMP_DIRECTORY . '/bulk-import.tmp ' ;
1352+ $ tmpName = PIMCORE_SYSTEM_TEMP_DIRECTORY . '/bulk-import- ' . uniqid () . ' .tmp ' ;
13511353 file_put_contents ($ tmpName , $ json );
13521354
1355+ Session::useSession (function (AttributeBagInterface $ session ) use ($ tmpName ) {
1356+ $ session ->set ('class_bulk_import_file ' , $ tmpName );
1357+ }, 'pimcore_objects ' );
1358+
13531359 $ json = json_decode ($ json , true );
13541360
13551361 foreach ($ json as $ groupName => $ group ) {
@@ -1363,7 +1369,7 @@ public function bulkImportAction(Request $request)
13631369 $ className = $ groupItem ['className ' ];
13641370
13651371 $ layoutData = ['className ' => $ className , 'name ' => $ groupItem ['name ' ]];
1366- $ name = serialize ($ layoutData );
1372+ $ name = json_encode ($ layoutData );
13671373 $ displayName = $ className . ' / ' . $ groupItem ['name ' ];
13681374 $ icon = 'database_lightning ' ;
13691375 } else {
@@ -1382,7 +1388,7 @@ public function bulkImportAction(Request $request)
13821388 }
13831389 }
13841390
1385- $ response = $ this ->adminJson (['success ' => true , 'filename ' => $ tmpName , ' data ' => $ result ]);
1391+ $ response = $ this ->adminJson (['success ' => true , 'data ' => $ result ]);
13861392 $ response ->headers ->set ('Content-Type ' , 'text/html ' );
13871393
13881394 return $ response ;
@@ -1404,9 +1410,10 @@ public function bulkImportAction(Request $request)
14041410 */
14051411 public function bulkCommitAction (Request $ request )
14061412 {
1407- $ filename = $ request ->get ('filename ' );
14081413 $ data = json_decode ($ request ->get ('data ' ), true );
14091414
1415+ $ session = Session::get ('pimcore_objects ' );
1416+ $ filename = $ session ->get ('class_bulk_import_file ' );
14101417 $ json = @file_get_contents ($ filename );
14111418 $ json = json_decode ($ json , true );
14121419
@@ -1451,7 +1458,7 @@ public function bulkCommitAction(Request $request)
14511458
14521459 return $ this ->adminJson (['success ' => $ success !== false ]);
14531460 } elseif ($ type == 'customlayout ' ) {
1454- $ layoutData = unserialize ($ data ['name ' ]);
1461+ $ layoutData = json_decode ($ data ['name ' ], true );
14551462 $ className = $ layoutData ['className ' ];
14561463 $ layoutName = $ layoutData ['name ' ];
14571464
0 commit comments