Files
WooNooW/includes/Api
dwindown 4d185f0c24 fix: Product list display, redirect after create, and edit form data loading
Fixed 3 critical issues:

1.  Price and Type Column Display
   Problem: Columns showing empty even though data exists
   Root Cause: price_html returns empty string for products without prices
   Solution:
   - Added fallback chain in index.tsx:
     1. Try price_html (formatted HTML)
     2. Fallback to regular_price (plain number)
     3. Fallback to "—" (dash)
   - Added fallback for type: {product.type || '—'}

   Now displays:
   - Formatted price if available
   - Plain price if no HTML
   - Dash if no price at all

2.  Redirect After Create Product
   Problem: Stays on form after creating product
   Expected: Return to products index
   Solution:
   - Changed New.tsx redirect from:
     navigate(`/products/${response.id}`) → navigate('/products')
   - Removed conditional logic
   - Always redirect to index after successful create

   User flow now:
   Create product → Success toast → Back to products list 

3.  Edit Form Not Loading Data
   Problem: Edit form shows empty fields instead of product data
   Root Cause: Missing fields in API response (virtual, downloadable, featured)
   Solution:
   - Added to format_product_full() in ProductsController.php:
     * $data['virtual'] = $product->is_virtual();
     * $data['downloadable'] = $product->is_downloadable();
     * $data['featured'] = $product->is_featured();

   Now edit form receives complete data:
   - Basic info (name, type, status, descriptions)
   - Pricing (SKU, regular_price, sale_price)
   - Inventory (manage_stock, stock_quantity, stock_status)
   - Categories & tags
   - Virtual, downloadable, featured flags
   - Attributes & variations (for variable products)

Result:
 Products list shows prices and types correctly
 Creating product redirects to index
 Editing product loads all data properly
2025-11-19 23:13:52 +07:00
..