Commit Graph

247 Commits

Author SHA1 Message Date
6ed2fd2062 feat: increase default per_page products 2025-12-08 02:34:48 +03:00
a35ec664a1 reformat: codestyle 2025-12-08 00:29:33 +03:00
8da91229fb reformat: codestyle 2025-12-08 00:29:33 +03:00
e73042bd2b reformat: codestyle 2025-12-08 00:29:33 +03:00
82ab8134e1 fix: order creation 2025-12-08 00:29:33 +03:00
4a3dcc11d1 feat(pulse): implement reliable event tracking and delivery system
Implement comprehensive event tracking system for TeleCart Pulse that ensures
all user interactions and order events are reliably captured and delivered to
the analytics platform, even in case of network failures or service outages.

Business Value:
- Guaranteed event delivery: All events are stored in database before sending,
  ensuring no data loss even if SaaS service is temporarily unavailable
- Automatic retry mechanism: Failed events are automatically retried with
  configurable attempts, reducing manual intervention
- Real-time monitoring: Admin dashboard displays event statistics (pending,
  sent, failed) to track system health and delivery status
- Data integrity: Idempotency keys prevent duplicate events, ensuring accurate
  analytics and metrics
- Performance optimization: Statistics are cached for 1 hour to reduce database
  load while maintaining visibility

Key Features:
- Event queue system: Events are queued in database with status tracking
  (pending/sent/failed)
- Asynchronous processing: Events are sent via background tasks, not blocking
  user interactions
- Error tracking: Failed events include detailed error reasons for debugging
- Campaign tracking: Only events with valid campaign_id and tracking_id are
  stored, ensuring data quality
- Admin visibility: Statistics dashboard shows delivery status at a glance

This system ensures reliable data collection for campaign analytics, A/B testing,
and performance metrics, providing accurate insights for business decisions.
2025-12-08 00:29:33 +03:00
1f5ef4353d build: fix cache hash for admin 2025-12-08 00:29:33 +03:00
16a258ab68 feat: add cron service to run telecart schedule tasks 2025-12-07 19:55:05 +03:00
10c1dfa5a3 Add comprehensive unit tests for scheduler components 2025-12-07 19:55:05 +03:00
64f2fc5364 reformat: fix codestyle 2025-12-07 19:55:05 +03:00
7372b9c330 feat: add UI for CRON Scheduler 2025-12-07 19:55:05 +03:00
65973d2d79 feat: add scheduler module 2025-12-07 19:55:05 +03:00
389b4ab186 wip 2025-12-07 19:55:05 +03:00
216ed7e522 build: fix cache hash for admin 2025-12-07 19:55:04 +03:00
9901d9e146 reformat: fix codestyle 2025-12-06 18:23:13 +03:00
615e8c54a6 feat: add aspect ratio selector for products_carousel 2025-12-06 18:18:34 +03:00
1fbbb7b6db feat(texts): add options to redefine text for zero product prices 2025-12-06 17:33:28 +03:00
f539bbfbbf feat: move getImage response to admin 2025-12-06 17:33:28 +03:00
e6a9e6797f feat: update styles for swipe to back 2025-12-06 16:09:50 +03:00
cd060610fe feat(products-feed): replace fixed image dimensions with aspect ratio selection
- Added image aspect ratio selection (1:1, 4:5, 3:4, 2:3) to ProductsFeed block configuration in Admin panel
- Removed manual width/height input fields
- Updated ProductsFeed block in SPA to send aspect ratio parameter instead of dimensions
- Implemented backend logic to calculate image height based on selected aspect ratio and base width (300px)
- Updated default configuration for products_feed block
- Added descriptive help text for each aspect ratio option in the dropdown
2025-12-06 15:52:30 +03:00
13e5bce8a5 feat: better algorythm for image resize 2025-12-06 15:52:30 +03:00
f34c12e043 tests: tests for image tool 2025-12-06 13:07:19 +03:00
38668fb4a7 feat: image processing improve 2025-12-06 12:59:55 +03:00
4e416ead49 refactor: use Symfony Foundation to handle HTTP requests and responses 2025-12-05 15:36:19 +03:00
95dd545dc5 fix: pulse ingest 2025-12-05 02:38:46 +03:00
116821a209 feat: show module version in admin 2025-12-04 22:16:23 +03:00
bc50cf0648 fix: handle missing tags in workflow 2025-12-04 22:09:23 +03:00
f1a39eeb00 feat: expose module version 2025-12-04 22:07:41 +03:00
44d2af3b30 fix: settings numeric error 2025-12-04 14:46:30 +03:00
ad54b14c68 fix: admin mainpage builder drawer doesnot show 2025-12-04 14:08:55 +03:00
3423dd1727 fix(spa): remove html in price for some opencart custom themes 2025-12-04 14:01:16 +03:00
d6a43605ac fix(spa): remove html in price for some opencart custom themes 2025-12-04 13:00:56 +03:00
17865d8af4 feat(admin): add more details for admin errors 2025-12-04 11:25:02 +03:00
8f6af04e73 fix(admin): fix error when chat_id is string 2025-12-04 11:23:00 +03:00
418a2fc5bb chore: update module version 2025-12-03 23:12:47 +03:00
b60c77e453 feat: Add TeleCart Pulse heartbeat telemetry 2025-12-03 23:11:58 +03:00
772efce242 Fix frontend tests and linting errors 2025-12-03 01:34:12 +03:00
50bdb8601c feat: visualize swipe back 2025-12-03 01:30:21 +03:00
0ab09aad10 fix: switch between code and visual for custom forms 2025-12-02 20:03:43 +03:00
dd12cb8c34 feat: separated coupon and voucher errors 2025-12-02 18:26:59 +03:00
fdcfce0a79 feat: add reactivity to formkit 2025-12-02 18:22:27 +03:00
b1d072b35a docs: update .cursor 2025-12-02 00:33:24 +03:00
17972993ca feat: добавлен жест swipe back для навигации назад
- Добавлен композабл useSwipeBack для обработки жеста свайпа от левого края
- Жест активируется при движении от левого края экрана (в пределах 20px)
- Навигация назад выполняется при достижении порога 40px
- Добавлена тактильная обратная связь при достижении порога
- Работает только не на главной странице, как и кнопка назад
- Игнорирует интерактивные элементы (input, button, swiper и т.д.)
2025-12-01 22:55:29 +03:00
db8d1360fc feat(search): add keyboard hide button and auto-hide Dock
- Add floating keyboard hide button that appears on search input focus
- Create KeyboardStore to manage keyboard state globally
- Auto-hide Dock component when keyboard is open on search page
- Position keyboard hide button at bottom when Dock is hidden
- Update keyboard state on focus, blur, and hide actions
2025-12-01 22:37:30 +03:00
17ff888c05 feat: add hide keyboard button on search page 2025-12-01 22:20:10 +03:00
64ead29583 feat(search): improve search UI with sticky bar and keyboard handling
- Add fixed search bar with glassmorphism effect (backdrop blur, semi-transparent)
- Implement clear search button in DaisyUI style
- Auto-hide keyboard on Enter key press and scroll events
- Remove search page title for cleaner UI
- Use DaisyUI theme-aware background colors instead of fixed white
- Add fixed padding offset for content below search bar
2025-12-01 21:55:16 +03:00
cedc49f0d5 feat: Use yaMetrika number in settings 2025-12-01 19:44:14 +03:00
c670e38392 reformat: fix codestyle 2025-12-01 18:18:29 +03:00
f02ef42cb7 refactor: use phpstan stubs instead of opencart sources 2025-12-01 18:17:32 +03:00
5fe4aac7eb refactor: correct static analyze errors 2025-12-01 18:04:54 +03:00