-
5fd42177d3
feat: SEO/GEO optimization — meta tags, JSON-LD, FAQ, robots/sitemap
main
root
2026-06-20 06:48:02 +00:00
-
08ec9e5a28
docs: update CLAUDE.md to reflect admin panel, PWA, and Docker setup
houseassassin
2026-05-12 15:24:40 +03:00
-
68e997a64a
fix: enable auto-HTTPS for production domain via Caddy
houseassassin
2026-05-12 15:16:15 +03:00
-
f4c4742a17
fix: Caddyfile — disable auto-HTTPS redirect for HTTP-only deployments
houseassassin
2026-05-12 13:06:52 +03:00
-
78b511e65d
feat: Docker + Caddy production deployment setup
houseassassin
2026-05-12 11:46:42 +03:00
-
bc73888355
feat: archive page for closed orders older than 30 days
houseassassin
2026-05-12 11:37:59 +03:00
-
b2dd497d1f
feat: order comments, duplicate button, improved status timeline
houseassassin
2026-05-12 11:37:45 +03:00
-
12cca64f61
feat: period filter in analytics — month/last month/3 months/all time
houseassassin
2026-05-12 11:36:57 +03:00
-
b69ea40f35
feat: filter bar in kanban — by manager, object type, overdue
houseassassin
2026-05-12 11:36:36 +03:00
-
066007e72d
feat: toast notifications + global search (Cmd+K)
houseassassin
2026-05-12 11:19:45 +03:00
-
5db7f0c428
feat: send-reminders Edge Function — push 1h before scheduled visit
houseassassin
2026-05-12 11:17:18 +03:00
-
1fa97ca010
feat: Telegram message templates in OrderModal
houseassassin
2026-05-12 11:17:09 +03:00
-
4b8028d7ae
feat: highlight overdue orders in kanban and calendar
houseassassin
2026-05-12 11:16:35 +03:00
-
d94cbcc825
feat: CSV export from analytics page
houseassassin
2026-05-12 11:16:33 +03:00
-
9d060a2dc9
feat: calendar — assign existing order to date via picker
houseassassin
2026-05-11 08:54:21 +03:00
-
4d4e84b5ed
feat: calendar — open/edit orders and add new order with pre-filled date
houseassassin
2026-05-11 08:51:06 +03:00
-
bdfc0ebb82
fix: scheduled_at input — store raw datetime-local value, convert on save
houseassassin
2026-05-11 08:48:49 +03:00
-
9b04a4527c
feat: advanced analytics — revenue trends, status breakdown, manager stats
houseassassin
2026-05-10 17:27:44 +03:00
-
3df6029f89
feat: client portal — public order tracking page at /track/:token
houseassassin
2026-05-10 17:27:15 +03:00
-
af9e7ce1af
feat: push notifications, calendar view, photo attachments
houseassassin
2026-05-10 17:25:04 +03:00
-
5a9b6c4c7f
feat: photo attachments for orders via Supabase Storage
houseassassin
2026-05-10 17:23:10 +03:00
-
d3a7e535cb
feat: mobile kanban scroll, OrderModal bottom sheet, table scroll
houseassassin
2026-05-10 17:20:46 +03:00
-
7af24587a0
feat: Telegram admin notification on order status change
houseassassin
2026-05-10 17:20:08 +03:00
-
a5877a4428
feat: PDF invoice generation in OrderModal
houseassassin
2026-05-10 17:19:48 +03:00
-
8b29b68449
feat: mobile responsive sidebar drawer
houseassassin
2026-05-10 17:19:01 +03:00
-
ef472f74d8
fix: remove .env and supabase/.temp from tracking, update .gitignore
houseassassin
2026-05-10 17:13:02 +03:00
-
aac7b7b0af
feat: add PWA support for mobile installation
houseassassin
2026-05-10 17:11:25 +03:00
-
5412a70f83
feat: apply light theme redesign to admin panel
houseassassin
2026-05-10 16:57:13 +03:00
-
8dae7f5d3b
feat: add Clients page with order history
houseassassin
2026-05-10 16:26:50 +03:00
-
643fc62ddc
feat: remove estimated_cost, auto-calculate final_cost in OrderModal
houseassassin
2026-05-10 16:25:20 +03:00
-
05c1459e2f
fix: revert upsert to update in useSettings to satisfy RLS policy
houseassassin
2026-05-10 16:19:35 +03:00
-
73516f69a0
fix: convert empty numeric fields to null before insert/update orders
houseassassin
2026-05-10 16:18:07 +03:00
-
d4030d9c88
fix: integration fixes from final review
houseassassin
2026-05-10 13:14:59 +03:00
-
f6f5253f04
feat: add Users and Settings nav items and routes
houseassassin
2026-05-10 13:13:07 +03:00
-
aae78e95ca
feat: add telegram, max, address fields to OrderModal
houseassassin
2026-05-10 13:12:05 +03:00
-
769836714a
fix: UserManagementPage delete error feedback, input disable, date guard
houseassassin
2026-05-10 13:11:09 +03:00
-
4b244bf0bb
feat: add UserManagementPage component
houseassassin
2026-05-10 13:09:30 +03:00
-
3bbcf7e256
fix: useAdminUsers null guard, unmount cleanup, split test
houseassassin
2026-05-10 13:08:07 +03:00
-
9189cc1b55
feat: add useAdminUsers hook + tests
houseassassin
2026-05-10 13:06:31 +03:00
-
b154996500
fix: forward invite error status and add listUsers pagination
houseassassin
2026-05-10 13:05:26 +03:00
-
9ab728d721
fix: guard against null data.user in invite-admin-user Edge Function
houseassassin
2026-05-10 13:04:41 +03:00
-
1954577d6a
feat: add Edge Functions for admin user management
houseassassin
2026-05-10 13:02:17 +03:00
-
f6a01812cd
feat: add admin SettingsPage for configurable pricing
houseassassin
2026-05-10 13:00:30 +03:00
-
52b5b77bc4
feat: add useSettings hook for admin price management
houseassassin
2026-05-10 12:59:02 +03:00
-
76b9913b09
fix: estimator always shows price (no false loading state)
houseassassin
2026-05-10 12:57:43 +03:00
-
9cfbee74e0
feat: estimator reads prices from DB via usePricing
houseassassin
2026-05-10 12:55:48 +03:00
-
775ad2d935
fix: usePricing handles DB errors and clears loading on failure
houseassassin
2026-05-10 12:54:28 +03:00
-
c0d9732706
feat: add usePricing hook reading prices from settings table
houseassassin
2026-05-10 12:48:11 +03:00
-
d7446c45af
docs: record DB migrations for admin panel v2
houseassassin
2026-05-10 12:47:15 +03:00
-
464cb3cab7
docs: add admin panel v2 implementation plan (10 tasks)
houseassassin
2026-05-10 12:37:27 +03:00
-
2b9903a6bf
docs: add admin panel v2 design spec (user mgmt, pricing, order fields)
houseassassin
2026-05-10 12:26:17 +03:00
-
54b4356b89
fix: move setLoading to effect to satisfy react-hooks lint rule
houseassassin
2026-05-07 20:38:36 +03:00
-
05396b2217
fix: remove unused React imports, fix lint errors in admin panel
houseassassin
2026-05-07 20:36:22 +03:00
-
f78b4dcb82
docs: mark admin panel spec as implemented
houseassassin
2026-05-07 20:35:08 +03:00
-
5f8a71104e
fix: CompletedOrdersTable CSV quoting, error handling, button disabled state
houseassassin
2026-05-07 20:34:16 +03:00
-
28df47ff00
fix: remove windows slider from Estimator (unused in cost formula)
houseassassin
2026-05-07 20:33:10 +03:00
-
72f8a4c126
feat: insert order to Supabase on lead form submit
houseassassin
2026-05-07 20:33:01 +03:00
-
a6038abc1f
fix: useAnalytics sort revenue by month, add error handling and test coverage
houseassassin
2026-05-07 20:32:01 +03:00
-
c34c99d86a
fix: memoize date range in AnalyticsDashboard to prevent infinite refetch
houseassassin
2026-05-07 20:31:49 +03:00
-
5714f99cbe
feat: add CompletedOrdersTable with sorting and CSV export
houseassassin
2026-05-07 20:30:53 +03:00
-
99c6624af7
feat: add AnalyticsDashboard with period selector and KPI cards
houseassassin
2026-05-07 20:30:25 +03:00
-
b19ab501cb
feat: add FunnelChart, RevenueChart, ObjectTypeChart, AvgTimeChart
houseassassin
2026-05-07 20:29:06 +03:00
-
ff84f89f29
fix: optimistic DnD updates, focus trap, film_thickness coercion, closed_at reset
houseassassin
2026-05-07 20:29:05 +03:00
-
fcc86fd7b9
feat: add useAnalytics hook with KPI and chart data aggregation
houseassassin
2026-05-07 20:27:30 +03:00
-
7089737f76
feat: add Kanban board with drag-and-drop, OrderModal create/edit
houseassassin
2026-05-07 20:25:28 +03:00
-
34a2f10b67
fix: useOrders unmount guard, log event errors, complete status coverage in tests
houseassassin
2026-05-07 20:19:45 +03:00
-
72407fa9b8
feat: add useOrders hook with CRUD, status updates, and Realtime
houseassassin
2026-05-07 20:18:15 +03:00
-
bb8d20a853
fix: move refreshBadge into effect, add logout error handling
houseassassin
2026-05-07 20:16:44 +03:00
-
735d0a88cb
feat: add AdminLayout with dark sidebar and sticky header
houseassassin
2026-05-07 20:15:28 +03:00
-
5628f45c71
fix: LoginPage accessibility (labels, alert), open-redirect guard
houseassassin
2026-05-07 20:14:06 +03:00
-
b52e3685ac
feat: add ProtectedRoute and LoginPage
houseassassin
2026-05-07 20:12:55 +03:00
-
713eee7912
fix: also guard onAuthStateChange callback with active flag
houseassassin
2026-05-07 20:11:59 +03:00
-
f6b66efd02
fix: guard useAuth against unmount race, return error from logout
houseassassin
2026-05-07 20:11:23 +03:00
-
418b4b7cac
feat: add useAuth hook with Supabase Auth session management
houseassassin
2026-05-07 20:07:53 +03:00
-
cf6ef372c1
feat: add React Router, lazy-load admin routes
houseassassin
2026-05-07 20:06:20 +03:00
-
fa342235d9
feat: add Supabase, React Router, dnd-kit, recharts, Vitest
houseassassin
2026-05-07 20:04:19 +03:00