Commit Graph

106 Commits

Author SHA1 Message Date
parsa aghaei
78f0727e92 feat(advisor): refactor SmartAdvisor to a 4-step wizard separating symptoms and medical history
- Step 3: Current clinical symptoms (pain/limping, hair loss/itching, diarrhea/digestion, appetite loss, dental tartar, eye discharge, etc.)
- Step 4: Medical & surgical history (joint surgery, pregnancy/lactation, post-illness recovery, heart failure, parasite history)
- Merge symptoms and history into pet profile for hyper-accurate supplement recommendations
2026-07-21 12:39:30 +03:30
parsa aghaei
6d568d56ae feat(symptoms): integrate full symptoms dictionary across SmartAdvisor, PetProfile, and Product Badges
- Expand SmartAdvisor options to include all clinical symptoms (joint pain, limp, diarrhea, hair loss, tartar, eye care, etc.)
- Dynamically match active pet symptoms against product symptoms in PetProfile recommended products engine
- Display specific symptom match badges (e.g. توصیه شده برای درد مفاصل لوسی) directly on product cards
2026-07-21 12:36:23 +03:30
parsa aghaei
ffa6da7978 fix(shop): load all filtered products automatically without manual pagination button
- Remove pagination limit cut-off so all matching products are displayed immediately
- Remove loadMore button for seamless full catalog browsing
2026-07-21 12:32:48 +03:30
parsa aghaei
22dc217534 fix(shop): update symptom filtering to OR logic instead of AND logic
- Allow users to select multiple symptoms and view products matching ANY of the selected symptoms
2026-07-21 12:29:03 +03:30
parsa aghaei
dc8a1bb079 fix(navigation): replace div click handlers with semantic Next.js Link components
- Convert product cards in ArchivePage, IngredientWiki, and SearchResultsPage to Next.js <Link>
- Support right-click / middle-click to open products in new tabs
- Display native target URL preview in browser status bar on hover
2026-07-21 12:27:58 +03:30
parsa aghaei
1b914d25a5 feat(wiki): add 100% complete ingredients coverage for all products
- Add polyglyceryl-4 caprate, carbomer, dextrose, lactose, vitamins A/C/D3/E/B-complex, minerals, excipients, and all plant/animal extracts across all 20+ products to scientificTerms.ts
- Fully support tooltips and wiki links for every ingredient item without exception
2026-07-21 12:23:37 +03:30
parsa aghaei
fcc738f25c feat(wiki): add complete scientific terms dictionary for all product ingredients
- Add colloidal silver, retinol palmitate, grapefruit seed extract, bovine blood/serum, argan/walnut/rosehip oils, etc.
- Map all product ingredients across all categories to Wiki scientific terms
- Update IngredientWiki matching rules for 100% ingredient coverage
2026-07-21 12:19:56 +03:30
parsa aghaei
f762105f09 fix(wiki): enhance wiki ingredient deep-linking and tooltip legibility
- Add term query param handling to IngredientWiki with smooth scroll and target highlight
- Fix Tooltip dark box contrast and click event propagation for study full article button
- Improve ingredient fuzzy matching in ProductPage for complete wiki term linking
2026-07-21 12:09:31 +03:30
parsa aghaei
717a61a225 fix(database): fix baseSlug format in products seed to populate product symptoms successfully + format cleanup in ArchivePage 2026-07-15 17:46:27 +03:30
parsa aghaei
6dafe86344 feat: full symptoms filtering system — backend API, megamenu pills, sidebar server-side filter, PDP tags 2026-07-15 15:03:09 +03:30
parsa aghaei
4676f3a592 feat: phase2 - split product names (nameFa/nameEn) across frontend cards, admin panel, search, and cart 2026-07-15 14:33:31 +03:30
parsa aghaei
1d9b699d61 feat: implement dynamic category solutions in MegaMenu navigation and convert static footer buttons to Next.js links 2026-07-15 13:53:23 +03:30
parsa aghaei
0ccf37f922 feat: implement fully dynamic filter sidebar in backend getActiveFilters and frontend ArchivePage mapping with URL sync 2026-07-15 13:49:13 +03:30
parsa aghaei
2745125c5b fix: add comfortable right padding pr-4 to search input 2026-07-15 13:39:56 +03:30
parsa aghaei
40c9618ddf fix: fine-tune search capsule border alignment and fix RTL placeholder text using unicode ellipsis 2026-07-15 13:36:52 +03:30
parsa aghaei
24bf530e50 fix: redesign header search bar input, button borders, logo alignment, and copywriting details 2026-07-15 13:35:10 +03:30
parsa aghaei
7d93a8d7c2 fix: replace desktop and mobile onClick navigation handlers with standard next/link components in Header.tsx 2026-07-15 13:30:27 +03:30
parsa aghaei
565ef70840 fix: replace onClick router.push navigation with standard next/link components for SEO accessibility 2026-07-15 12:43:20 +03:30
parsa aghaei
7bc4ca137e fix: refine FeaturedProducts layout, remove shield icon, position tag independently, enlarge product image, and display full first sentence in description 2026-07-15 12:11:16 +03:30
parsa aghaei
8d3a0bfafb fix: resolve title overlap and expand short description display in FeaturedProducts cards 2026-07-15 12:05:05 +03:30
parsa aghaei
a92b1a61ff fix: resolve footer email typo, unify assistant naming, add German scientific team context, add tooltips definitions, and optimize homepage featured products category diversity 2026-07-15 11:58:47 +03:30
parsa aghaei
67d6f71d7a fix: resolve product images falling back to logo by mapping real URLs in database seed, correct 2x price discrepancy to match PDF catalog exactly, and set local cover for third video 2026-07-15 11:51:10 +03:30
parsa aghaei
cf705ea121 style: improve health advisor UX, fix broken thumbnails, add Persian equivalents to product names for SEO, and refine card title alignments 2026-07-15 11:40:39 +03:30
parsa aghaei
711fb414ab footer style updated
All checks were successful
Deploy Canina / deploy (push) Successful in 1m26s
2026-07-14 20:46:41 +03:30
parsa aghaei
2b36173e32 design: bold address labels and submenus in footer, change authenticity badge to Lalezar font and increase size 2026-07-14 20:44:31 +03:30
parsa aghaei
36aebb13d6 design: update footer font classes to use Lalezar for titles and Shabnam for all other texts 2026-07-14 20:40:56 +03:30
parsa aghaei
f65b95bd5c design: explicitly inject font-vazir to the bottom copyright and link containers inside Footer.tsx to force correct font family rendering 2026-07-14 20:37:05 +03:30
parsa aghaei
b42e8ce97d design: fix contrast accessibility for footer captions, copyright text, bottom menus, and vertical alignment of authenticity seal badge 2026-07-14 20:34:55 +03:30
parsa aghaei
2402efac15 design: redesign dual landing cards with rich thematic background gradients and fix footer contrast accessibility issues 2026-07-14 20:31:33 +03:30
parsa aghaei
452e3d49ee feat: complete homepage UI/UX redesign including Hero buttons, stats icons, SmartAdvisor selectors, balanced dual cards, and VetGallery duplicate thumbnails fix 2026-07-14 20:25:40 +03:30
parsa aghaei
1b0d6f5e06 style: move full product description below the fold and increase sticky sidebar top offset to prevent header overlap 2026-07-14 20:09:12 +03:30
parsa aghaei
f2f507723c style: optimize PDP sticky buy box layout, unify card paddings, center product image and add isMounted to fix hydration warning 2026-07-14 20:04:57 +03:30
parsa aghaei
4d14885feb feat: complete currency, font, new pages, footer logo, dynamic PDP layout and custom dosage titles 2026-07-14 20:03:25 +03:30
devops
2c47e35153 fix: IngredientWiki fallback to scientificTerms from API with keywords as benefits
All checks were successful
Deploy Canina / deploy (push) Successful in 1m8s
2026-07-14 12:27:43 +00:00
parsa aghaei
a22afb11d5 fix: hero text priorities; prefer uiText over HeroBanner DB
Some checks failed
Deploy Canina / deploy (push) Failing after 2m3s
2026-07-13 12:30:39 +03:30
parsa aghaei
508356b8d3 feat: add Persian fonts, fix UI bugs, improve frontend quality
- Add local Persian fonts: Vazirmatn, Sahel, Shabnam, Lalezar, IranNastaliq
- Configure @font-face in globals.css with all font weights
- Set Vazirmatn as primary font, Lalezar for headings, Sahel for alt text
- Fix Hero image loading with crossOrigin and error fallback
- Fix SmartAdvisor disabled button contrast (WCAG compliance)
- Add visible labels for form inputs in SmartAdvisor step 1
- Fix UserDashboard null safety for walletBalance
- Fix announcement bar hydration mismatch (loading state guard)
- Fix UserDashboard null checks for profile fields
- Improve overall frontend robustness and data-loading guards
2026-07-11 19:48:43 +03:30
parsa aghaei
40d750ad4b fix: hero image configurable via uiText + seed no longer overwrites admin values
- Hero.tsx reads hero_image_url from uiText store first, falls back to banners then default
- Seed script now only creates keys that don't exist (no overwrite)
- Added hero_image_url key to seed + admin panel UI texts groups
- Reverted DEFAULT_TEXTS initialization (caused hydration mismatch)
- settingsStore back to empty init, fetchSettings populates from API
2026-07-11 18:25:59 +03:30
parsa aghaei
1a0c98a34e feat: dynamic UI texts system + admin panel editor + Vazirmatn local font + bug fixes
- Add getText() system for all homepage sections (Header, Hero, FeaturedProducts, SmartAdvisor, VetGallery, Footer)
- Add UITexts admin page in frontend/admin-panel with search, group collapse, per-key save
- Add seed-ui-texts.ts with 102 texts in 9 groups
- Add local VazirmatnVariable.woff2 font, remove CDN + Inter references
- Fix hero image path, productService return type { data, meta }
- Fix ArchivePage pagination + CATEGORIES list + breadcrumbs
- Fix BlogPage/Wiki page links + brightness-0 invert removal
- Fix IngredientWiki search + product links + placeholder
- Fix all getProducts() callers for { data } destructuring
- Fix sitemap.ts, CartDrawer, B2BPortal, CheckoutPage type issues
- Add .gitignore for /fonts/ and /backend/uploads/
2026-07-11 17:19:55 +03:30
parsa aghaei
7615aa0e51 fix: resolve seed encoding, search param, and wiki data source issues
- Fix seed-products.ts TS error (implicit any) and BOM handling
- Re-run full seed to restore correct Persian encoding in DB
- Fix productService query→search param mismatch
- Fix IngredientWiki hardcoded port 4000→use settingsStore
- Restore seed-products-data.json from git after accidental corruption
2026-07-11 15:40:49 +03:30
parsa aghaei
140872c888 fix: resolve Hero image CORS, button contrast, floating labels, footer border + refactor product seeder with full catalog data from JSON + add barcode/buyPrice/productGroup fields to Product model 2026-07-11 13:21:30 +03:30
parsa aghaei
3dedc89ee1 تغییرات کلی در backend و frontend 2026-07-11 12:30:17 +03:30
a74f4bda48 design: implement heuristic UX, WCAG accessibility, touch targets, and cognitive load enhancements 2026-07-10 18:42:11 +03:30
756cb749b2 design: implement landing page UI/UX improvements based on Senior UI/UX audit 2026-07-10 18:31:23 +03:30
1c07efcc91 design: update color palette to match official brand and add gold top banner 2026-07-10 17:30:01 +03:30
f69537a688 feat: rename brand from canina to canino across codebase 2026-07-10 16:32:31 +03:30
dcfc4acae4 fix: restore wiki to dictionary, create dynamic blog pages and backend wiki CRUD 2026-06-12 23:14:21 +03:30
945c007a79 feat: complete app democking, fix types, add blogs api 2026-06-12 22:53:57 +03:30
6027e635db feat: implement backend auth and fix pet profile payload 2026-06-12 22:37:35 +03:30
82ab454647 Fix Admin panel categories modal, add error handling, enforce cursor-pointer globally 2026-06-12 21:57:09 +03:30
a7ebb8d792 feat: complete admin panel major functionalities including responsive layout, recharts, custom modals, inline editing, and loading states 2026-06-12 16:19:57 +03:30
95760d78b5 fix: remove invalid lucide-react imports 2026-06-12 01:33:39 +03:30
c4966136d7 fix: update import paths for lib folders in components 2026-06-12 01:32:10 +03:30
ee0b8a5ff8 feat: auxiliary pages migrated to Next.js (Blog, Videos, Track, Success) 2026-06-12 01:17:03 +03:30
976dfcd610 feat: interactive pages migrated to Next.js (Dashboard, Checkout, Profile, Wiki) 2026-06-12 01:10:52 +03:30
3de0408e6f feat: core pages and components migrated to Next.js (Home, Shop, Product) 2026-06-12 01:08:04 +03:30
72d2a5600a feat: layout and overlays migrated to Next.js 2026-06-12 01:04:03 +03:30