Project

General

Profile

Edit Copy Actions

Feature #11643

open

i am working e-commerce product details page.

Added by Karthik Palakonda 10 days ago. Updated 10 days ago.

Status:
Resolved
Priority:
High
Start date:
10/23/2026
Due date:
10/23/2026 (10 days late)
% Done:

100%

Estimated time:
Spent time:

Description

In e-commerce product list or product details page in every product page
Need to apply the Logic as if product weight as less than 50 grams then show price other wise hide price related everything and make a text as something like connect through phone for price details like that will be placed this text verbase can you check once


Files


Add

Subtasks


Add

Related issues

Actions #1

Updated by Karthik Palakonda 10 days ago

  • Status changed from New to In Progress
Actions #2

Updated by Karthik Palakonda 10 days ago

  • Priority changed from Normal to High

Updated by Karthik Palakonda 10 days ago

1. Admin Login 400 (Bad Request) Fix
Problem: Whitespace from browser autofill triggered class-validator @IsEmail() rejection with HTTP 400; hardcoded local URL fallback was present in frontend.
Resolution: Email input is trimmed and lowercased on both frontend and backend DTO. The auth endpoint dynamically respects VITE_API_URL.
Verification: Tested against production endpoint https://admin.noxajewels.com/api/auth/user/login — returns 200 OK with clean credentials.
2. Weight-Based Price Hiding ($\ge 50\text{g}$)
Problem: Products with weight $\ge 50\text{g}$ needed price, discounts, and checkout capabilities hidden in favor of phone inquiry. Promo API was also previously omitting weight from its JSON output.
Resolution: Centralized in

productPricing.ts
. Backend getPromoProducts() and getHomeProducts() now include weight, and frontend fallback ensures weight is always retrieved.
Verification: Tested product "karthik" (weight: 76). It correctly evaluates shouldShowProductPrice === false, hiding the $432 price and showing "Call for Price".
3. Container Alignment with Category Navigation
Problem: Header and Category Nav Bar had px-3 sm:px-6 lg:px-16 xl:px-24, while inner pages had px-4 sm:px-6 lg:px-8, causing visual misalignment where page content sat further left than the navigation bar.
Resolution: Unified all page wrappers and breadcrumbs to use the exact same container mx-auto px-3 sm:px-6 lg:px-16 xl:px-24 layout token.
Deployment Checklist & Order
Backend (Noxa-Jewellery-be):
bash
npm run build
  1. Deploy dist/ to backend server / restart process
    Admin Frontend (Noxa-Jewellery-fe):
    bash
    npm run build
  2. Deploy dist/ to admin hosting (Vercel/S3/Cloudflare/etc.)
    E-Commerce Frontend (Noxa_E_Comm_Fe):
    bash
    npm run build
  3. Deploy Next.js production build

1. "2 times Call for Price" Issue (Fixed)
Root Cause
In

productPricing.ts
, PRICE_ON_REQUEST_LABEL was set to 'Call for Price'. This caused the upper badge to say "CALL FOR PRICE" and the button below to also say "CALL FOR PRICE".


Changes Applied
Changed PRICE_ON_REQUEST_LABEL to "Price on Request" in

productPricing.ts
.
In

HomePromoSection.tsx
:
Removed the duplicate pill badge.
In place of the price, it now displays "Price on Request" in clean luxury typography with the explanation "Please call us to get the price for this product."
The button below remains the single action: [ 📞 Call for Price ].
2. "Weight కూడా చూపించండి" (Weight Display Added)
Added product weight across all product cards:

Homepage Signature Spotlight (

HomePromoSection.tsx
):
Now prominently shows: $$\text{Weight: } \mathbf{76\text{g}} \quad|\quad \text{Metal: } \mathbf{\text{Gold}} \quad|\quad \text{Karat: } \mathbf{18\text{K}}$$
Catalog / Category Listing (

ProductsListing.tsx
):
Each product card now displays the weight (e.g., Silver Jewelry • 76g).
Featured Products Grid (

Products.tsx
):
Each card header displays the category and weight tag.
Product Details Page (

ProductDetails.tsx
):
Displays Weight: 76g in the product specification area and tabs.

Edit Copy Actions

Also available in: Atom PDF