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
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
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
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
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
Deploy Canina / deploy (push) Successful in 1m34s
2026-07-14 12:19:40 +00:00
devops
10849233de
trigger ci rebuild
Deploy Canina / deploy (push) Successful in 49s
2026-07-14 11:59:00 +00:00
devops
9872a6fb28
test: trigger CI/CD after runner restart
Deploy Canina / deploy (push) Successful in 7s
2026-07-14 03:57:28 +00:00
DevOps
b47f4a74a0
ci: test after docker restart
Deploy Canina / deploy (push) Successful in 7s
2026-07-14 03:53:38 +00:00
DevOps
02d223bbdc
ci: test new task after runner restart
Deploy Canina / deploy (push) Successful in 7s
2026-07-14 03:51:43 +00:00
DevOps
ce12fc1241
ci: test after runner restart
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
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
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)
Deploy Canina / deploy (push) Failing after 1m45s
2026-07-14 03:32:53 +00:00
DevOps
8b5f3004c6
ci: test deploy after DEPLOY_KEY fix
Deploy Canina / deploy (push) Failing after 1s
2026-07-14 03:31:26 +00:00
DevOps
2cddbe44e7
ci: trigger full deploy after all fixes
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
Deploy Canina / deploy (push) Failing after 2s
2026-07-13 13:17:29 +00:00
DevOps
a5b1b31ef8
ci: trigger deploy after SSH config fix
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
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
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
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
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
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
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
Deploy Canina / deploy (push) Failing after 2m3s
2026-07-13 12:30:39 +03:30
parsa aghaei
75f35b8183
chore: update nginx config for deployment
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
Deploy Canina / deploy (push) Failing after 5m2s
2026-07-13 11:32:23 +03:30
parsa aghaei
d953bc4124
chore: prepare for production deployment
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
parsa aghaei
2103b105ac
fix: map imageUrl from backend to frontend image field
2026-07-11 14:02:04 +03:30
parsa aghaei
cd17a532d9
fix: resolve backend TS compilation errors, startup order, and add clipboard paste upload
...
- Fix products.service.ts: ingredients -> ingredientList (Prisma relation name)
- Fix seed-blogs.ts: template literal refactor (array join) to avoid esbuild parse error
- Fix seed-custom.ts: category string -> connectOrCreate relation
- Add start-dev.js: sequential startup (backend first, then frontends)
- Add Ctrl+V paste upload to admin MediaSelector component
- Create missing images/vets/ and images/slider/ directories
2026-07-11 13:51:12 +03:30
parsa aghaei
0ea6c6d271
feat: enrich all site content with Canina pharma research data
...
- Add 20 new products to frontend products.ts (total 29 products)
- Enrich existing 9 product descriptions with biochemical/clinical details
- Add new blog articles with real content from research document
- Update UI texts with Canina brand history (1984 founding, IFS/HACCP)
- Add 9 new scientific terms (Ca:P, D3, BARF, biotin, taurine, etc.)
- Expand INGREDIENTS_WIKI with collagens, biotin, taurine entries
- Add new medical options (heart disease, parasites) to SmartAdvisor
2026-07-11 13:34:22 +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
71f5ac2fa6
fix: resolve unique constraint bug in prisma seeders and run products/home seeders successfully
2026-07-10 18:20:05 +03:30
6db28f6231
feat: add scripts/open-browsers.js to automatically open services on dev startup
2026-07-10 17:40:35 +03:30
1c07efcc91
design: update color palette to match official brand and add gold top banner
2026-07-10 17:30:01 +03:30