From 19e95fc7e4dd90903be3ae7f55acef63dfbf0ebd Mon Sep 17 00:00:00 2001 From: raymart Date: Wed, 20 Mar 2024 14:46:03 +0800 Subject: [PATCH] dynamic search bar and filtering min & max --- admin/index.php | 22 +- admin/left-main-sidebar.php | 2 +- admin/vendor-delete-action1.php | 26 + admin/vendor-product-grid.php | 688 ++++---------------- admin/vendor-product-search-action.php | 26 + admin/vendor-product-search.php | 865 +++++++++++++++++++++++++ catalog-single-vendor-action.php | 30 + catalog-single-vendor.php | 201 ++++-- checkouttest.php | 4 +- 9 files changed, 1242 insertions(+), 622 deletions(-) create mode 100644 admin/vendor-delete-action1.php create mode 100644 admin/vendor-product-search-action.php create mode 100644 admin/vendor-product-search.php create mode 100644 catalog-single-vendor-action.php diff --git a/admin/index.php b/admin/index.php index df56492..814484e 100644 --- a/admin/index.php +++ b/admin/index.php @@ -48,13 +48,11 @@ if($_SESSION["user_type"]!="admin"){ - -
- - - - + + + +
@@ -65,13 +63,21 @@ if($_SESSION["user_type"]!="admin"){
-
+
+
+ + +
+
+
    diff --git a/admin/left-main-sidebar.php b/admin/left-main-sidebar.php index 9f13f0b..ecffa77 100644 --- a/admin/left-main-sidebar.php +++ b/admin/left-main-sidebar.php @@ -103,7 +103,7 @@
  • - + Products diff --git a/admin/vendor-delete-action1.php b/admin/vendor-delete-action1.php new file mode 100644 index 0000000..c4ba650 --- /dev/null +++ b/admin/vendor-delete-action1.php @@ -0,0 +1,26 @@ + 'https://api.obanana.shop/api/v1/products/656717579624f6181c49cdda', + CURLOPT_RETURNTRANSFER => true, + CURLOPT_ENCODING => '', + CURLOPT_MAXREDIRS => 10, + CURLOPT_TIMEOUT => 0, + CURLOPT_FOLLOWLOCATION => true, + CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, + CURLOPT_CUSTOMREQUEST => 'DELETE', + CURLOPT_HTTPHEADER => array( + 'X-Api-Key: {{apiKey}}' + ), +)); + +$response = curl_exec($curl); + +curl_close($curl); +header("location: vendor-product-search.php"); +echo $response; +?> diff --git a/admin/vendor-product-grid.php b/admin/vendor-product-grid.php index f8f24c9..42c15a2 100644 --- a/admin/vendor-product-grid.php +++ b/admin/vendor-product-grid.php @@ -39,7 +39,9 @@ if($_SESSION["user_type"]!="admin"){ - + + + @@ -52,560 +54,8 @@ if($_SESSION["user_type"]!="admin"){
    - - + +
    @@ -630,7 +80,12 @@ if($_SESSION["user_type"]!="admin"){
    - +
    + + +
    @@ -655,10 +110,37 @@ if($_SESSION["user_type"]!="admin"){
    -
    + +
    No Product Found.

    '; + // } + + // 03-14-2024 Raymart created Search product end + for ($i = 0; $i <= $totalProducts - 1; $i++) { $product = $products[$i]; ?> @@ -667,13 +149,21 @@ if($_SESSION["user_type"]!="admin"){
    + + edit '; - } else { - echo 'Placeholder Image'; } + } else { ?> + edit +
    @@ -692,6 +182,82 @@ if($_SESSION["user_type"]!="admin"){ } ?>
    + + + + + + + + + + oBanana B2B - Admin Dashboard + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + + + +
    + + + + + + + +
    +
    +
    Vendor Search Results
    +
    + +
    +
    +
    +
    + +
    +
    + "> + + +
    +
    +
    +
    +
    Seller Products
    + +

    +
    +
    +
    +
    +
    Seller since
    +

    +
    +
    +
    + +
    +
    +
    + +
    +
    +
    + + + + +
    +
    +
    + $productListVendor) { + // echo "$product .":" . $productListVendor"; + // $vendorOfProduct = getVendorbyId($product['vendor_api_id']); + + $products = productListVendor($vendorId); + $totalProducts = count($products); + + + for ($i = 0; $i <= $totalProducts - 1; $i++) { + $product = $products[$i]; + ?> +
    +
    +
    +
    +
    + + edit + + edit + +
    +
    +
    +

    +

    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/catalog-single-vendor-action.php b/catalog-single-vendor-action.php new file mode 100644 index 0000000..d9812af --- /dev/null +++ b/catalog-single-vendor-action.php @@ -0,0 +1,30 @@ + "") { } else { $_SESSION["isLoggedIn"] = false; } +$products = productListVendor($_GET["id"]); + +$filteredProducts = []; + +if (!empty($_GET['minPrice']) || !empty($_GET['maxPrice']) || !empty($_GET['category'])) { + $filteredProducts = []; + $minPrice = isset($_GET['minPrice']) && $_GET['minPrice'] !== '' ? floatval($_GET['minPrice']) : null; + $maxPrice = isset($_GET['maxPrice']) && $_GET['maxPrice'] !== '' ? floatval($_GET['maxPrice']) : null; + + // echo "Min Price: " . ($minPrice !== null ? $minPrice : "null") . "
    "; + // echo "Max Price: " . ($maxPrice !== null ? $maxPrice : "null") . "
    "; + + $selectedCategories = isset($_GET['category']) ? $_GET['category'] : []; + + if (!empty($selectedCategories) && (($minPrice == null) && ($maxPrice == null))) { + // var_dump("filtering categories without price"); + foreach ($selectedCategories as $selectedCategory) { + $category = strtolower(trim($selectedCategory)); + foreach ($products as $result) { + $product = $result; + + $productCategory = strtolower(trim($product['product_category'])); + + if ( + $productCategory == $category + ) { + $filteredProducts[] = $result; + } + } + } + } elseif (!empty($selectedCategories) && (!empty($minPrice) || !empty($maxPrice))) { + // var_dump("filtering categories and price"); + if ($minPrice === null) { + $minPrice = 0; + } + if ($maxPrice === null) { + $maxPrice = PHP_FLOAT_MAX; + } + foreach ($selectedCategories as $selectedCategory) { + $category = strtolower(trim($selectedCategory)); + foreach ($products as $result) { + $product = $result; + $productPrice = isset($product['sale_price']) ? $product['sale_price'] : $product['regular_price']; + $productCategory = strtolower(trim($product['product_category'])); + if ( + $productCategory = $category && (($productPrice >= $minPrice) && + ($productPrice <= $maxPrice)) + ) { + $filteredProducts[] = $result; + } + } + } + } + else { + foreach ($products as $result) { + // var_dump("filtering"); + $product = $result; + $productPrice = isset($product['sale_price']) ? $product['sale_price'] : $product['regular_price']; + // var_dump( $minPrice); + // var_dump( $productPrice); + // var_dump( $productPrice >= $minPrice); + + + + if ($minPrice === null) { + $minPrice = 0; + } + + if ($maxPrice === null) { + $maxPrice = PHP_FLOAT_MAX; + } + if (($minPrice === null || $productPrice >= $minPrice) && + ($maxPrice === null || $productPrice <= $maxPrice) + ) { + $filteredProducts[] = $result; + // var_dump("filtering heree"); + + } + } + } +} else { + $filteredProducts = $products; +} ?> @@ -268,7 +351,6 @@ if ($_SESSION["userId"] <> "") {
    Seller Products

    Products

    @@ -334,7 +416,7 @@ if ($_SESSION["userId"] <> "") {
    "") { } } else { ?> - edit + edit @@ -489,64 +571,83 @@ if ($_SESSION["userId"] <> "") {
    -
    -

    Category

    -
    -
    - + + +
    -
    x