michaelschal
a939b1068d
Update the application's production environment for enhanced performance
...
Refactors the Docker setup, upgrades Node.js and PostgreSQL versions, and improves security.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 4b008663-bd72-492b-b0b6-fa252367e730
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/4b008663-bd72-492b-b0b6-fa252367e730/6nnsA2m
2025-07-19 13:46:47 +00:00
michaelschal
f008f3f905
Resolve issues preventing the application from starting correctly
...
Enable SSL for production database connections and replace CameraModal component.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dba29e89-b855-4de3-a5a0-765e63b7aa34
2025-07-19 13:08:57 +00:00
michaelschal
0821b70b7d
Restored to '3891ae828b859a29b86a84154ffef43740610335'
...
Replit-Restored-To: 3891ae828b
2025-07-19 12:37:14 +00:00
michaelschal
b2ee16b1c3
Enhance backup and restoration with SQL format for improved data integrity
...
Migrates backup/restore from JSON to SQL using pg_dump/psql, updating the admin UI and scheduler.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/e5OOjbh
2025-07-19 12:25:38 +00:00
michaelschal
91f5c13f33
Add photo data to Excel exports and correct database column mappings
...
Adds a "Photos" sheet to Excel exports with links to images and fixes DB column mappings for sales photos.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/z4eyzzt
2025-07-19 11:28:02 +00:00
michaelschal
58a06455f6
Ensure photos are correctly displayed when viewing sales data by store
...
Maps snake_case photo column names to camelCase and adds debug logging to sales retrieval in `server/storage.ts`.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/C4b1w7i
2025-07-19 11:22:13 +00:00
michaelschal
39d409203d
Add extensive logging to sales data to troubleshoot missing images
...
Adds debug logs to getAllSales to track sales, photos, and total counts.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/iRu76HV
2025-07-19 11:20:36 +00:00
michaelschal
ec702af70b
Standardize naming for identity verification photo fields in the database
...
Renames `photo_recto`, `photo_verso`, and `photo_ticket` columns to `photoRecto`, `photoVerso`, and `photoTicket` in the DatabaseStorage class.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/odd0JPx
2025-07-19 11:18:34 +00:00
michaelschal
47c750dc93
Investigate why sale #17 's photos are missing from reports
...
Adds debug logging to investigate missing photos in PDF/Excel exports for sale ID 17.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/JR6WwoN
2025-07-19 11:16:41 +00:00
michaelschal
1c58d8a406
Investigate issue preventing application functionality and fix errors
...
Adds debug logging to sales history and database storage for troubleshooting.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/dVex23s
2025-07-19 11:14:41 +00:00
michaelschal
bdeeced6c6
Include customer photos in exported sales records for better documentation
...
Fix: Corrected property names in DatabaseStorage to include customer photos in exports.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/A6ZFmvr
2025-07-19 11:13:03 +00:00
michaelschal
e3cd2f890c
Show all purchased products in the sales details and fixes missing sales
...
Implements `getAllSales` with grouped products and updates `SaleDetailsModal` to display multiple products.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/MCw6J3V
2025-07-19 10:37:04 +00:00
michaelschal
e91b8f1a8b
Enable support for multiple products within a single sale
...
Implements multi-product sales functionality by adding a `sale_products` table, updating the sales form, and modifying server-side logic.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: e80fed01-7137-4997-b9af-dad57132d430
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e80fed01-7137-4997-b9af-dad57132d430/58t7aEc
2025-07-19 10:10:41 +00:00
michaelschal
04e8eea3bd
Restored to 'afb7a90e0a9fbf19dfd193a47ef6054a853fdd60'
...
Replit-Restored-To: afb7a90e0a
2025-07-13 13:04:02 +00:00
michaelschal
c041256bce
Update the application to use port 3000 across all services
...
Adjusts port configurations from 5000 to 3000 in .replit, Dockerfile, docker-compose.yml, replit.md and server/index.ts for consistent service deployment.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/5d315300-98fa-429a-abb0-4fdce6a2e3c9.jpg
2025-07-13 12:12:20 +00:00
michaelschal
766b451768
Improve the application's containerization and startup process
...
Refactors Dockerfile and entrypoint script for enhanced reliability and Node.js 18 compatibility, including database migration.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/5d315300-98fa-429a-abb0-4fdce6a2e3c9.jpg
2025-07-13 11:34:45 +00:00
michaelschal
9016a564ec
Remove unnecessary deployment guides and scripts from the project
...
This commit removes obsolete deployment documentation, shell scripts, and backup files.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/ce49b69a-6c08-46b0-9012-fdaae8591d14.jpg
2025-07-11 19:05:12 +00:00
michaelschal
9d973c12e4
Ensure photo capture and submission process is fully functional
...
Remove debug logs, update field mapping, and verify photo capture works correctly.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/ce49b69a-6c08-46b0-9012-fdaae8591d14.jpg
2025-07-11 19:03:05 +00:00
michaelschal
58d24e0cfb
Add debugging information to track down missing sales ticket photos
...
Adds console logs to inspect request body and identify missing photoTicket data during sales creation.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/4099a3be-c3a6-4039-915b-a1ce8a3727fa.jpg
2025-07-11 18:58:14 +00:00
michaelschal
08e3258a32
Improve photo handling by ensuring images are correctly saved in the database
...
Removes debug logs and ensures correct mapping of photo data from request body to database columns.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/e6f3a8c1-bdaf-4251-a9d4-9326e97ede4b.jpg
2025-07-11 18:49:16 +00:00
michaelschal
c532a2c946
Ensure receipt photos are properly saved when creating new sales records
...
Fix: Map camelCase photo names to snake_case in routes.ts for correct database storage.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/183bde94-866e-4679-97fd-7df41a964b4d.jpg
2025-07-11 18:39:31 +00:00
michaelschal
181945d6f5
Improve data display and correct date filtering in sales registry
...
Adds photo debug information and fixes date range filtering in the sales query using timestamps in `SaleDetailsModal.tsx` and `server/storage.ts`.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/584bf76b-cd3a-45fb-a667-85c62de7fd5e.jpg
2025-07-11 18:29:34 +00:00
michaelschal
e48337925c
Improve photo handling and fix data transfer issues during sales recording
...
Removes the camera test button and increases the request size limit in Express to address PayloadTooLargeError.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/7df9e24f-d78b-4589-9a08-c70e02d6d7d9.jpg
2025-07-11 18:11:37 +00:00
michaelschal
9cc28ddc93
Prepare the application for deployment to a production environment
...
Adds Docker Compose configuration, Nginx setup, and deployment scripts.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/1668b635-4205-40d7-8634-6b7174d94d7b.jpg
2025-07-11 15:59:15 +00:00
michaelschal
28ca128ab6
Extend user session duration to improve the overall user experience
...
Removes `useSessionTimeout` hook and increases the session `maxAge` to 24 hours in `server/routes.ts`.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/0fcd8a07-209c-4438-b4c7-bd4229e22926.jpg
2025-07-10 09:52:12 +00:00
michaelschal
f828278efa
Implement automatic logout after inactivity and improve authentication
...
Adds session timeout functionality using `useSessionTimeout` hook and updates session maxAge to 15 minutes in server routes.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/56f97713-69fd-41d1-b933-ff4440458da0.jpg
2025-07-10 09:51:34 +00:00
michaelschal
0db1bffa94
Prevent users from creating accounts with a blank email address
...
Handle empty email strings by setting them to null to avoid database constraint errors in `server/storage.ts`.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: dec54137-d5a2-4406-8ad4-5f2f9fb110bf
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/56f97713-69fd-41d1-b933-ff4440458da0.jpg
2025-07-10 09:45:56 +00:00
michaelschal
4dbdda2071
Improve user editing, allowing admins access to all stores without assignment
...
Updates user editing logic to handle admin roles and store access, with schema changes.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/9d9e1107-c416-4124-a939-a91c612c56a1.jpg
2025-07-09 23:23:51 +00:00
michaelschal
bedb7bd4cc
Prevent admin users from accidentally demoting themselves or the last admin
...
Implements server-side validation and updates client error messaging to prevent accidental role changes in `server/routes.ts` and `client/src/components/Administration.tsx`.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/9d9e1107-c416-4124-a939-a91c612c56a1.jpg
2025-07-09 23:22:01 +00:00
michaelschal
f1b0cb07b7
Improve user role management with enhanced restrictions and messaging
...
Implement role update restrictions to prevent demoting self/last admin and add error messages.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/9d9e1107-c416-4124-a939-a91c612c56a1.jpg
2025-07-09 23:14:51 +00:00
michaelschal
1baefe2767
Switch to local PostgreSQL configuration and improve data handling
...
Migrates from Neon serverless to local PostgreSQL, fixes timestamp comparisons, and applies Node.js 18 compatibility fixes.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/142044c4-d937-4abb-ae50-83d9764cfb4d.jpg
2025-07-09 22:31:16 +00:00
michaelschal
07baa59225
Ensure the application runs correctly in the production environment
...
Implements a Node.js 18 compatibility fix by patching `dist/index.js` and creating `server/prod-start.js` to replace `import.meta.dirname` with static paths, resolving a runtime error.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/99451107-d8a0-4f61-81e0-cae481285260.jpg
2025-07-09 22:21:49 +00:00
michaelschal
a2e4588776
Improve database connection reliability and add debugging tools
...
Enhances database connection robustness with retry logic and introduces `debug-docker.sh` for easier debugging.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/6e755801-08e8-4492-805e-ac3610de5a2a.jpg
2025-07-09 20:50:34 +00:00
michaelschal
ec38451a81
Prepare application for deployment using Docker containers
...
Adds Dockerfile, docker-compose.yml, .dockerignore, nginx.conf, init.sql and updates replit.md and server/routes.ts.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/c3a86207-4ee0-47f9-8062-2dbbae696290.jpg
2025-07-09 20:09:39 +00:00
michaelschal
7404dc6443
Add feature to automatically delete old sales data for legal compliance
...
Implements a data purge system, scheduler, and API endpoints for stats and manual execution.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/c3a86207-4ee0-47f9-8062-2dbbae696290.jpg
2025-07-09 20:04:18 +00:00
michaelschal
1d46228fac
Improve login page security by dynamically showing default credentials
...
Adds API endpoint to check default admin password status and hides credentials.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/22c32c18-bf03-4830-a5c9-ef4544d0e27f.jpg
2025-07-09 19:31:54 +00:00
michaelschal
a78d648c01
Enable automatic data backups to secure user information regularly
...
Implements automatic database backups every 12 hours using node-cron, retaining only the 10 most recent backups in server/backup-scheduler.ts.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/674ec742-23a2-4047-910f-36599184f036.jpg
2025-07-09 19:29:09 +00:00
michaelschal
546ba12e89
Enable administrators to back up and restore all application data
...
Adds backup and restore functionality via new /api/admin/backup endpoints, utilizing JSON files.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/1f9cd6a5-22d4-4e38-b272-bbf414b631b8.jpg
2025-07-09 19:24:44 +00:00
michaelschal
4d4ad93e5d
Update sales history to immediately display newly created sales data
...
Modify sales history to automatically refresh after sales creation and fix store ID access control.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/056e12e0-54e7-4791-91f8-f567295f6d37.jpg
2025-07-09 19:10:41 +00:00
michaelschal
b71148da46
Make sales history update reliably after adding or removing sales
...
Invalidate all sales queries instead of exact matches and handle missing store ID.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/aec99dd8-53a6-474d-8bf0-cdc42edf20c7.jpg
2025-07-09 19:06:34 +00:00
michaelschal
4384818f63
Enable store selection for admins and associate sales with specific stores
...
Implements store selection and association functionality using useStoreContext hook and updates sale creation and retrieval APIs.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/d304bad8-e4eb-4558-b9d6-38704ba052e8.jpg
2025-07-09 19:04:37 +00:00
michaelschal
a5336a5919
Enable administrators to manage users and stores more effectively
...
Implements CRUD operations for users and stores with UI updates and server route handling.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/ab880d72-1a34-4d36-b5be-9f44df85ed1a.jpg
2025-07-09 18:59:47 +00:00
michaelschal
5c01234fc4
Implement secure user authentication with role-based access control
...
Integrates user authentication using bcrypt, session management with PostgreSQL, and role-based access control for enhanced security and user management.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/ab880d72-1a34-4d36-b5be-9f44df85ed1a.jpg
2025-07-09 18:44:20 +00:00
michaelschal
4fac1078a1
Create a new sales registry app with identity verification features
...
Initial commit of the React application with UI components, form, camera, and indexedDB integration for sale data management.
Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 91318273-c764-4fd4-be04-bdc12c38af32
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/0715008c-7244-40f4-befc-26c014852236/02867739-9ff7-4441-aca2-12e0153376c5.jpg
2025-07-09 18:05:04 +00:00