Overview of Configuration Files¶
web.config (/app/web.config)¶
The primary server-side configuration file. Every environment-specific setting lives here.
<connectionStrings>¶
<add name="MyCompany"
connectionString="Data Source=mart.zadns.co.za;
Initial Catalog=conprosoft_bmhcrp;
Persist Security Info=True;
User ID=conprosoft_dbadmin;
Password=[configured]"
providerName="System.Data.SqlClient"/>
MyCompanyis the connection string name used throughout the entire application — by the framework, all controllers, and all custom business rules.- On deployment to a new environment, update
Data Source,Initial Catalog,User ID, andPassword.
<appSettings> — BLOB Adapter Keys¶
Each key maps a named BLOB adapter to a storage mechanism. In the current deployment all values are empty strings, meaning BLOB data is stored directly in SQL Server (the default behaviour). If Azure Blob Storage or a filesystem path is configured in future, the values here would point to the storage connection.
| Key | Entity | Field |
|---|---|---|
PersonResourceProfilePictureBlobAdapter |
Person |
ProfilePicture |
TrainingCertificateBlobAdapter |
Training |
Certificate |
MedicalScreeningMedicalDocumentBlobAdapter |
MedicalScreening |
MedicalDocument |
GoodsReceiptAttachmentBlobAdapter |
GoodsReceipt |
Attachment |
PaymentsAttachmentBlobAdapter |
Payments |
Attachment |
PurchaseOrdersAttachmentBlobAdapter |
PurchaseOrders |
Attachment |
RequisitionQuotationBlobAdapter |
Requisition |
Quotation |
DeliveryNoteDeliveryNoteBlobAdapter |
DeliveryNote |
DeliveryNote |
ProjectProjectAgreementBlobAdapter |
Project |
ProjectAgreement |
SupportingDocumentDocumentBlobAdapter |
SupportingDocument |
Document |
SubTaskSubTaskAttachmentBlobAdapter |
SubTask |
SubTaskAttachment |
TaskTaskAttachmentBlobAdapter |
Task |
TaskAttachment |
IssueRegisterIssueAttachmentBlobAdapter |
IssueRegister |
IssueAttachment |
DisciplinaryActionDisciplinaryActionAttachmentBlobAdapter |
DisciplinaryAction |
DisciplinaryActionAttachment |
FormalEducationDocumentBlobAdapter |
Education |
Document |
IPACDocumentBlobAdapter / I_P_A_CDocumentBlobAdapter |
IPAC |
Document |
Covid19ScreeningDocumentBlobAdapter |
COVID19_Screening |
Document |
PolicyDocumentsPolicyDocumentBlobAdapter |
PolicyDocuments |
PolicyDocument |
OperatorSetupLogoBlobAdapter |
OperatorSetup |
Logo |
BlobStorageKey |
Global | Azure Blob Storage account key (unused) |
<system.web> — Key Settings¶
| Setting | Current Value | Notes |
|---|---|---|
compilation debug |
true |
Change to false in production for performance. |
targetFramework |
4.8 |
.NET Framework 4.8 — must match the server installation. |
authentication mode |
Forms |
Forms authentication with login URL ~/login, session timeout 725 minutes. |
sessionState mode |
Custom — ApplicationSessionState |
Custom session provider built into the framework. |
globalization culture |
en-ZA |
South Africa locale for dates, currency, and number formatting. |
httpRuntime maxRequestLength |
2097151 KB |
Allows large file uploads. |
httpCookies sameSite |
Strict |
Security hardening on session cookies. |
<system.net><mailSettings>¶
See the Email Configurations page for full details.
touch-settings.json (/app/touch-settings.json)¶
Configures the CONPROSOFT client. Key sections:
| Setting | Current Value | Purpose |
|---|---|---|
defaultUI |
"TouchUI" |
Activates the responsive SPA interface. |
appName |
"ConproSoft (Development)" |
Application name shown in the UI header. Remove (Development) for production. |
server.bootstrap.js |
true |
Improves performance of static bootstrap pages. |
server.rest.enabled |
true |
REST API flag — configured but not operationally active. |
server.rest.authorization.keys |
Static key mapped to admin |
API key for REST access. Rotate before production. |
server.2FA.setup.mode |
null |
Two-factor authentication mode — not enforced by default. |
server.2FA.setup.methods |
app: true, email: true |
Supported 2FA methods if enabled. |
client.enabled |
false |
Progressive Web App (PWA) offline mode — disabled. |
map.apiKey |
null |
Google Maps API key — not configured. |
Web.Sitemap (/app/Web.Sitemap)¶
Defines the full navigation tree of the application. Each <siteMapNode> has:
title— display name in the sidebar menu.url— the page URL (maps to a file in/app/pages/).roles— comma-separated list of roles that can see this item.cssClass— Material icon class for the menu icon (e.g.material-icon-request_quote).
The framework uses ApplicationSiteMapProvider (registered in web.config) to read this file and apply security trimming — users only see menu items for roles they hold.
config/oauth2-schema.yaml¶
Present as part of the standard RAD Framework. Defines the OAuth2 configuration schema. Not active in CONPROSOFT — no third-party identity providers are configured.
web.config¶
The web.config file in /app defines application-wide configuration, including:
- Connection strings (e.g.
MyCompanyfor SQL Server access) - Compilation target and .NET Framework version
- Authentication and membership configuration
- SMTP settings under
<system.net> - BLOB adapter keys in
<appSettings> - HTTP handlers and modules required by Code On Time
Key sections to review and update for each environment:
<connectionStrings>– database server, database name, credentials.<appSettings>– BLOB adapter settings, custom keys, feature toggles.<system.net>– SMTP settings.<system.web>– authentication mode, custom error settings, and session state.
touch-settings.json¶
The touch-settings.json file configures the Code On Time Touch UI:
appName– application name displayed in the UI (set to “CONPROSOFT (PROD)”).defaultUI– usually"TouchUI", indicating the responsive interface.- Theme, icons, and PWA-related manifest entries.
- Start pages and layout behaviours.
This file should be updated when:
- Rebranding or renaming the application.
- Changing the default start view or navigation preferences.
- Updating icons or PWA metadata for mobile devices.
Other Configuration Artifacts¶
config/oauth2-schema.yaml– defines OAuth2 schema for potential authentication integration.Web.Sitemap– optional sitemap definition for navigation (if used).Web.Sitemap.en-ZA.txtandClientLibrary.en-ZA.txt– localisation content.
All configuration changes should be tested in a staging environment before being applied to production.