Commit Graph

158 Commits

Author SHA1 Message Date
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
8d6d7d6a53 fix: remove all localhost:4001 refs, use apicanina.parsaaghayi.ir as fallback
All checks were successful
Deploy Canina / deploy (push) Successful in 1m8s
2026-07-14 12:52:59 +00:00
devops
fa714c2889 fix: api.ts fallback URL for build-time axios
All checks were successful
Deploy Canina / deploy (push) Successful in 1m6s
2026-07-14 12:34:51 +00:00
devops
b260d5f6d3 fix: productService image URL and api.ts fallback
All checks were successful
Deploy Canina / deploy (push) Successful in 1m7s
2026-07-14 12:33:14 +00:00
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
devops
f71b22a664 fix: wiki sortBy, wiki detail page endpoint, blog SSR URL, and upload volume
All checks were successful
Deploy Canina / deploy (push) Successful in 1m34s
2026-07-14 12:19:40 +00:00
devops
10849233de trigger ci rebuild
All checks were successful
Deploy Canina / deploy (push) Successful in 49s
2026-07-14 11:59:00 +00:00
devops
9872a6fb28 test: trigger CI/CD after runner restart
All checks were successful
Deploy Canina / deploy (push) Successful in 7s
2026-07-14 03:57:28 +00:00
DevOps
b47f4a74a0 ci: test after docker restart
All checks were successful
Deploy Canina / deploy (push) Successful in 7s
2026-07-14 03:53:38 +00:00
DevOps
02d223bbdc ci: test new task after runner restart
All checks were successful
Deploy Canina / deploy (push) Successful in 7s
2026-07-14 03:51:43 +00:00
DevOps
ce12fc1241 ci: test after runner restart
All checks were successful
Deploy Canina / deploy (push) Successful in 6s
2026-07-14 03:47:10 +00:00
DevOps
b4dc21954d ci: fix sudo, VPN reuse, and ownership for reliable CI/CD
All checks were successful
Deploy Canina / deploy (push) Successful in 7s
2026-07-14 03:42:59 +00:00
DevOps
fa081ea512 ci: increase VPN session cleanup wait to 120s
Some checks failed
Deploy Canina / deploy (push) Failing after 2m35s
2026-07-14 03:36:27 +00:00
DevOps
3c8f7729c2 ci: use sh shell instead of bash for ci-runner (Alpine based)
Some checks failed
Deploy Canina / deploy (push) Failing after 1m45s
2026-07-14 03:32:53 +00:00
DevOps
8b5f3004c6 ci: test deploy after DEPLOY_KEY fix
Some checks failed
Deploy Canina / deploy (push) Failing after 1s
2026-07-14 03:31:26 +00:00
DevOps
2cddbe44e7 ci: trigger full deploy after all fixes
Some checks failed
Deploy Canina / deploy (push) Failing after 2s
2026-07-13 14:03:24 +00:00
DevOps
783a60890d ci: add DEPLOY_KEY secret for canina repo
Some checks failed
Deploy Canina / deploy (push) Failing after 2s
2026-07-13 13:17:29 +00:00
DevOps
a5b1b31ef8 ci: trigger deploy after SSH config fix
Some checks failed
Deploy Canina / deploy (push) Failing after 1s
2026-07-13 13:13:52 +00:00
DevOps
f4dea1f1b0 fix: use canina runner with pre-installed SSH
Some checks failed
Deploy Canina / deploy (push) Failing after 2s
2026-07-13 13:03:47 +00:00
DevOps
d8806542c2 fix: use HTTP Alpine repos for SSH install in CI
Some checks failed
Deploy Canina / deploy (push) Failing after 8m3s
2026-07-13 12:02:10 +00:00
DevOps
1396ad3bd8 fix: use dynamic host IP for SSH in CI
Some checks failed
Deploy Canina / deploy (push) Failing after 3s
2026-07-13 11:50:28 +00:00
DevOps
24000f60dd ci: use canina runner label with pre-installed SSH
Some checks failed
Deploy Canina / deploy (push) Failing after 3s
2026-07-13 11:46:12 +00:00
DevOps
8cda55a36b fix: production URLs, seed __dirname, CI/CD runner with pre-installed SSH
Some checks failed
Deploy Canina / deploy (push) Failing after 3s
2026-07-13 11:38:22 +00:00
DevOps
1b2040c880 fix: production URLs for admin panel, seed __dirname, nginx.conf
Some checks failed
Deploy Canina / deploy (push) Failing after 8m3s
2026-07-13 11:20: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
75f35b8183 chore: update nginx config for deployment
Some checks failed
Deploy Canina / deploy (push) Failing after 8m3s
2026-07-13 11:38:07 +03:30
parsa aghaei
5fe1b8f285 fix: move @import tailwindcss to top of index.css to restore styles on Vite 8
Some checks failed
Deploy Canina / deploy (push) Failing after 5m2s
2026-07-13 11:32:23 +03:30
parsa aghaei
d953bc4124 chore: prepare for production deployment
Some checks failed
Deploy Canina / deploy (push) Failing after 1m53s
2026-07-12 15:16:34 +03:30
parsa aghaei
60939f14ea chore: remove committed build artifacts (node_modules, dist, .next)
- Remove node_modules, dist, .next from git tracking
- Add .next and *.tsbuildinfo to .gitignore
- Remove Iranian mirrors from Dockerfiles (arvancloud.ir)
- Add npm ci step for dependency installation
- Ready for VPN-based internet access workflow
2026-07-12 13:24:33 +03:30
parsa aghaei
ccbf606d71 nodemodules added to repo 2026-07-11 21:01:03 +03:30
parsa aghaei
e236190aaa nodemodules added to repo 2026-07-11 20:56:16 +03:30
parsa aghaei
b0d639996b dockerfile changes 2026-07-11 20:15:19 +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
53301705da feat: add Media Manager page to admin panel
- Standalone gallery page at /media with grid view
- Upload via button, drag & drop, or Ctrl+V paste
- Delete and copy URL per image
- Full-size image preview modal
- File info (name, size, date)
- Search/filter by filename
2026-07-11 17:24:25 +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
ab7ed279c8 fix: await params Promise in blog and wiki [slug] pages for Next.js 16
- blog/[slug]/page.tsx: fix params type to Promise and await it
- wiki/[slug]/page.tsx: fix params type to Promise and await it + Fix API port from 4000 to 4001
- blog/page.tsx: fix fallback API URL from port 4000 to 4001
2026-07-11 15:51:29 +03:30
parsa aghaei
3aebb9e176 fix(admin): show original filename and selected state in image gallery
- Add filename label and upload date under each thumbnail in MediaSelector
- Highlight currently selected image with purple border and badge
- Add selectedUrl prop to MediaSelector for visual indication
- Show image filename in product form Media tab
- Add helper text for clipboard paste and gallery selection
2026-07-11 15:45:17 +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
804a596711 fix: map category from backend relation/name to frontend display 2026-07-11 14:06:29 +03:30