From c382fa82bf01014898c6d0d098a884927c320060 Mon Sep 17 00:00:00 2001 From: jouls Date: Fri, 31 May 2024 18:39:17 +0800 Subject: [PATCH 1/2] added total payouts per vendor card in admin side --- admin/vendor-card.php | 735 +++++++++++++++++++------------------ shop-list-left-sidebar.php | 218 +++++------ 2 files changed, 466 insertions(+), 487 deletions(-) diff --git a/admin/vendor-card.php b/admin/vendor-card.php index 59bfcde..2712b7e 100644 --- a/admin/vendor-card.php +++ b/admin/vendor-card.php @@ -17,6 +17,11 @@ if ($_SESSION["user_type"] != "admin") { $products = productList(); $vendorSearchResult = $_SESSION["vendorSearchResult"]; + +$payoutResponse = getAllPayout($_SESSION["token"]); + +$payoutData = json_decode($payoutResponse, true); + ?> @@ -103,16 +108,16 @@ $vendorSearchResult = $_SESSION["vendorSearchResult"]; - +
-
-
- - -
-
+
+
+ + +
+
@@ -177,7 +195,7 @@ $vendorSearchResult = $_SESSION["vendorSearchResult"]; @@ -192,7 +210,7 @@ $vendorSearchResult = $_SESSION["vendorSearchResult"];
-
+
Items
-
+
Sell
1908
-
+
Payout
-
$2691
+
@@ -231,11 +249,12 @@ $vendorSearchResult = $_SESSION["vendorSearchResult"]; @@ -858,35 +873,35 @@ function validateEmail(vendorId) {
- +
+
+ + +
+
+
+ edit +
+
+
+
--> +
diff --git a/shop-list-left-sidebar.php b/shop-list-left-sidebar.php index f689f18..e20f580 100644 --- a/shop-list-left-sidebar.php +++ b/shop-list-left-sidebar.php @@ -360,147 +360,111 @@ $filteredProducts = []; } function loadVendors(page, isFilter) { - document.querySelector(".vendor-list").innerHTML = ""; + document.querySelector(".vendor-list").innerHTML = ""; - // Create a new XMLHttpRequest object for fetching vendors - let xhrVendors = new XMLHttpRequest(); + // Create a new XMLHttpRequest object for fetching vendors + let xhrVendors = new XMLHttpRequest(); - // Define the endpoint URL for fetching vendors - let vendorsEndpointURL = - `https:///api/v1/vendors/search?q=`; + // Define the endpoint URL for fetching vendors + let vendorsEndpointURL = `https:///api/v1/vendors/search?q=`; - // Open a GET request to fetch vendors - xhrVendors.open("GET", vendorsEndpointURL, true); + // Open a GET request to fetch vendors + xhrVendors.open("GET", vendorsEndpointURL, true); - // Set up a callback function to handle the vendors response - xhrVendors.onreadystatechange = function() { - if (xhrVendors.readyState === 4 && xhrVendors.status === 200) { - // Parse the response JSON for vendors - let vendorsResponse = JSON.parse(xhrVendors.responseText); + // Set up a callback function to handle the vendors response + xhrVendors.onreadystatechange = function() { + if (xhrVendors.readyState === 4 && xhrVendors.status === 200) { + // Parse the response JSON for vendors + let vendorsResponse = JSON.parse(xhrVendors.responseText); - // Create an array to store vendor IDs - let vendorIds = vendorsResponse.results.map(vendor => vendor._id); + // Create an array to store vendor IDs + let vendorIds = vendorsResponse.results.map(vendor => vendor._id); - // Create a new XMLHttpRequest object for fetching products - let xhrProducts = new XMLHttpRequest(); + // Create a new XMLHttpRequest object for fetching products + let xhrProducts = new XMLHttpRequest(); - // Define the endpoint URL for fetching products - let productsEndpointURL = - `https:///api/v1/products`; + // Define the endpoint URL for fetching products + let productsEndpointURL = `https:///api/v1/products`; - // Open a GET request to fetch products - xhrProducts.open("GET", productsEndpointURL, true); + // Open a GET request to fetch products + xhrProducts.open("GET", productsEndpointURL, true); - // Set up a callback function to handle the products response - xhrProducts.onreadystatechange = function() { - if (xhrProducts.readyState === 4 && xhrProducts.status === 200) { - // Parse the response JSON for products - let productsResponse = JSON.parse(xhrProducts.responseText); - console.log(productsResponse) - // Create an object to store vendor-wise product counts - let vendorProductCounts = {}; + // Set up a callback function to handle the products response + xhrProducts.onreadystatechange = function() { + if (xhrProducts.readyState === 4 && xhrProducts.status === 200) { + // Parse the response JSON for products + let productsResponse = JSON.parse(xhrProducts.responseText); + console.log(productsResponse); - // Iterate through each product and count the products associated with each vendor - productsResponse.forEach(function(product) { - // Increment product count for the vendor - if (!vendorProductCounts[product.vendor_api_id]) { - vendorProductCounts[product.vendor_api_id] = 1; - } else { - vendorProductCounts[product.vendor_api_id]++; - } - }); + // Create an object to store vendor-wise product counts + let vendorProductCounts = {}; - // Now, we have vendor-wise product counts, we can use it to display the counts for each vendor - if (vendorsResponse.results.length > 0) { + // Iterate through each product and count the products associated with each vendor + productsResponse.forEach(function(product) { + // Increment product count for the vendor + if (!vendorProductCounts[product.vendor_api_id]) { + vendorProductCounts[product.vendor_api_id] = 1; + } else { + vendorProductCounts[product.vendor_api_id]++; + } + }); - vendorsResponse.results.slice(0, 6).forEach(function( - vendor) { - let vendorId = vendor._id; - let productCount = vendorProductCounts[ - vendorId] || 0; - let vendorDateRegistered = new Date(vendor - .date_registered); - vendorsResponse.results.slice(0, 6).forEach( - function(vendor) { - let vendorDateRegistered = ""; - let vendorId = vendor._id; - let productCount = - vendorProductCounts[vendorId] || - 0; - if (vendor.date_registered) { - vendorDateRegistered = new Date( - vendor.date_registered); - } else { - vendorDateRegistered = - "Not yet registered"; - } + // Now, we have vendor-wise product counts, we can use it to display the counts for each vendor + if (vendorsResponse.results.length > 0) { + vendorsResponse.results.slice(0, 6).forEach(function(vendor) { + let vendorId = vendor._id; + let productCount = vendorProductCounts[vendorId] || 0; + let vendorDateRegistered = vendor.date_registered ? new Date(vendor.date_registered) : "Not yet registered"; - // Format the date as "Month DD, YYYY" - let options = { - month: 'long', - day: '2-digit', - year: 'numeric' - }; - let formattedDate = ""; - if (vendorDateRegistered !== - "Not yet registered") { - formattedDate = - vendorDateRegistered - .toLocaleDateString('en-US', - options); - } else { - formattedDate = - "Not yet registered"; - } - // Create a product card element - let card = document.createElement( - "div"); - card.classList.add("col-md-12"); - card.innerHTML = ` - `; - // Append the product card to the container - document.querySelector( - ".vendor-list") - .appendChild(card); - }); + // Create a product card element + let card = document.createElement("div"); + card.classList.add("col-md-12"); + card.innerHTML = ` +
+
+
+
+ + ${vendor.user_login} + +
+ +
+
+
Seller Products
+

${productCount}

+
+
+
+
+
Seller since
+

${formattedDate}

+
+
+
+
+
`; + // Append the product card to the container + document.querySelector(".vendor-list").appendChild(card); + }); } else { - document.querySelector(".vendor-list") - .innerHTML = ` -
No vendors available
- - `; - + document.querySelector(".vendor-list").innerHTML = ` +
No vendors available
+ `; } } }; @@ -512,9 +476,9 @@ $filteredProducts = []; // Send the request to fetch vendors xhrVendors.send(); - } + function loadProducts(page, isFilter) { // Make AJAX request to fetch products for given page let xhr = new XMLHttpRequest(); From c0f77b9415b8764d83107dad31099962dcc102a7 Mon Sep 17 00:00:00 2001 From: jouls Date: Wed, 5 Jun 2024 15:43:47 +0800 Subject: [PATCH 2/2] added required fields for vendor first name --- vendor-settings.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/vendor-settings.php b/vendor-settings.php index aefff24..7714a0b 100644 --- a/vendor-settings.php +++ b/vendor-settings.php @@ -438,27 +438,27 @@ if ($_SESSION["isCustomer"] == true) {
- +
- +
- +
- +
- +
-
@@ -476,7 +476,7 @@ if ($_SESSION["isCustomer"] == true) {
- +