@@ -8,6 +8,9 @@ Client relocation and separate static outputs are complete; the user confirmed b
## Latest implementation checkpoint
- User committed/pushed preceding cleanup. Moved identical registration and device-manager PAS/DFM/HTML into Shared/Web, with direct references from both projects. No wrappers/subfolders or behavior changes. Both TMS builds passed; generated shared templates, JS credential identities and project XML checked. Runtime screen checks pending. CLI temporary output does not contain all GeoJSON assets; existing deployment assets remain untouched.
- Comparison found remaining WC-to-BFD improvements: map/list HTTP-versus-WebSocket refresh buffering, newer error-page layout, and iOS viewport-height handling. Not changed during form relocation. Preserve BFD fire-specific behavior when addressing these. Auth storage keys intentionally differ; web feature parity is not yet complete.
- User-requested cleanup complete: Common.Ini loads WC [Database] or BFD [Oracle] into the same connection properties and applies them through ConfigureConnection. Startup validates client and Oracle settings once; removed Oracle.Connection and throwaway connection validation. All active CAD/auth/device connections use the common method; no designer fallback.
- Standalone BFD server retired as a supported build/fallback; source and nested history retained with RETIRED.md. Its historical project is no longer expected to build against current shared modules. Only emiMobileServer/emiMobileServer.dproj is supported for both clients.
- Removed shared Ws.Service/Ws.ServiceImpl stubs, unused WebSocketServer, unused LoginRequest and project references, ClearVerificationCode contract/implementations/designer queries, both uqUserPref components, commented old login code and unused WC import in Main. DTOGeneratorUtils retained in tools outside runtime project. No web changes or database modifications.
...
...
@@ -120,3 +123,7 @@ Keep changes minimal and consistent with existing Delphi/TMS conventions. Explai
## Registration SMS failure fix
Changed shared BeginRegistration to save verification codes only after Twilio accepts the HTTP send request. HTTP rejection logs details and returns a friendly error without raising an intentional debugger exception. Transport/configuration exceptions retain the existing error response. Both WC and BFD use this code; no schema changes. Shared server build passed; live failure/success tests pending. Twilio acceptance is not proof of delivery; no delivery callback added. Existing codes are not migrated or cleared by this edit and retain their five-minute expiry.
## INI section naming
Renamed the active shared server INI [Database] section to [Postgres], preserving all values. Common.Ini and startup log labels updated. Client=WC reads [Postgres]; Client=BFD uses [Oracle]. Shared build and offline configuration tests passed. Other deployments must rename their old section when adopting this build; the retired standalone configuration was not changed.
@@ -47,3 +47,5 @@ BFD browser registration, verification, and login were tested successfully on th
Simplified the client server units by moving response-building code directly into WC.Api.Database and BFD.Api.Database. Removed both Api.Data wrapper units. API and WebSockets still reuse the same methods, with separate database instances. Both server builds passed.
Cleaned up unused server units, queries, and old commented login code. Both database types now use Common.Ini for connection setup. The standalone BFD server is retired; its files remain as reference. The shared server builds, and offline WC/Oracle configuration checks passed.
Registration and device management now use shared forms under Shared/Web. Both web builds and shared-form resource checks passed. WC-to-BFD refresh buffering and presentation improvements remain for a separate step.
Oracle/ Oracle device storage and connection settings
PostgreSQL/ PostgreSQL device storage
Models/ Request, response, and WebSocket message types
Web/ Shared registration and device-management forms
Clients/
WC/
Server/ Wyoming CAD and authentication modules
...
...
@@ -36,3 +37,5 @@ The main project's former Source, Core, and Database directories have been conso
Each client Server folder now contains Api.Database (designer queries plus response-building methods) and Auth.Database (login/user/agency queries). The separate Api.Data wrapper units have been removed. Shared/Clients/Client.Data remains the common data-module contract used by client selection, API services, and WebSockets.
Connection settings for both clients are loaded and applied by Shared/Server/Common.Ini.pas. The unused DTO generator is retained in tools/ outside the application project.
The shared server INI uses [Postgres] for WC and [Oracle] for BFD. [Database] is no longer read by the shared server; the Database key inside [Postgres] still names the PostgreSQL database.