diff --git a/app/Http/Controllers/admin/AdminController.php b/app/Http/Controllers/admin/AdminController.php index 9a96944..52d7a03 100644 --- a/app/Http/Controllers/admin/AdminController.php +++ b/app/Http/Controllers/admin/AdminController.php @@ -1294,4 +1294,36 @@ class AdminController extends Controller 'message' => "successfully updated." )); } + + public function duplicateStore($storeid, $newStore) + { + $AdminModel = new AdminModel; + $newStoreId = $newStore; + $storeProducts = $AdminModel->selectTeamstoreProducts('TeamStoreId', $storeid); + + foreach($storeProducts as $product) { + + $productId = $product->Id; + unset($product->Id); + unset($product->DateCreated); + + $product->ProductURL = str_slug($product->ProductURL . '-copy'); + $product->TeamStoreId = $newStoreId; + + $product = json_decode(json_encode($product), true); + var_dump($product); + + $response = $AdminModel->insertStoreItem($product); + var_dump($response); + + $productThumbnails = $AdminModel->selectProductThumbnail($productId); + foreach($productThumbnails as $productThumbnail) { + unset($productThumbnail->Id); + unset($productThumbnail->DateCreated); + $productThumbnail->ProductId = $response['lastId']; + $AdminModel->insertProductThumbnails(json_decode(json_encode($productThumbnail), true)); + var_dump($productThumbnail); + } + } + } } diff --git a/app/Http/routes.php b/app/Http/routes.php index d7cb0cb..fd73630 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -91,10 +91,14 @@ Route::group(['middleware' => 'auth'], function () { Route::get('tax-settings', 'admin\AdminController@taxIndex'); Route::post('post/update-hibernate', 'admin\AdminController@updateHibernate'); - + + + Route::get('duplicate-store/{id}/{newstore_id}', 'admin\AdminController@duplicateStore' ); }); }); + + Route::auth(); // Route::get('/home', 'HomeController@index'); diff --git a/app/Models/admin/AdminModel.php b/app/Models/admin/AdminModel.php index 1e781c1..9d73786 100644 --- a/app/Models/admin/AdminModel.php +++ b/app/Models/admin/AdminModel.php @@ -496,4 +496,41 @@ class AdminModel extends Model ON t.Id = tx.TeamstoreId"); return $i; } + + function selectTeamstoreProducts($field, $value){ + + $i = DB::table('teamstore_products') + ->where($field, $value) + ->get(); + return $i; + } + + function selectProductThumbnail($id){ + + $i = DB::table('teamstore_product_thumbnails') + ->where('ProductId', $id) + ->get(); + return $i; + } + + function insertStoreItem($data){ + + $i = DB::table('teamstore_products')->insert($data); + var_dump($i); + $id = DB::getPdo()->lastInsertId(); + + return array( + 'i' => $i, + 'lastId' => $id + ); + } + + function insertProductThumbnails($data){ + + $i = DB::table('teamstore_product_thumbnails')->insert($data); + // $id = DB::getPdo()->lastInsertId(); + + return $i; + } + }