Skip to the content.

Home · Documentation

Setup and Configuration

Application configuration is done by an application administrator. Settings are located in two main places.

config.js

The config.js file contains server details, authentication details, database details, and some application customizations. It is recommended to use data/configSample.js as a starting point, or better yet, data/configSample.ts for TypeScript assistance.

config.application = {};

Property Description Default
httpPort The port the server will run on. 58009
applicationName The name of the application. "Corporate Records Manager"
userDomain The Active Directory domain for user authentication. ""

config.reverseProxy = {};

The settings below help when running the application behind a reverse proxy like IIS.

Property Description Default
disableCompression   false
disableEtag   false
blockViaXForwardedFor   false
urlPrefix Prefixes all application URLs to make them appear inside a folder. ""

config.session = {};

Property Description Default
cookieName   "corporate-records-manager-user-sid"
secret   "cityssm/corporate-records-manager"
maxAgeMillis How long sessions last in milliseconds. 14400000 (4 hours)
doKeepAlive Whether or not clients periodically ping the web server to keep their sessions active. false

config.mssqlConfig = {};

See the configuration options for the node-mssql package.

config.authentication = {};

config.integrations.docuShare = {};

DocuShare integrations are powered by the node-docushare project.

Property Description Example
isEnabled Disabled by default. true
rootURL   "http://xerox.local/docushare"
collectionHandles An array of handles, their common names, and the recordTypeKeys they are contain documents for. [{title: "2000 - 2010 By-Laws", handle: "Collection-101", recordTypeKey: ["bylaw"]}, ..., {}]
server Server configuration for node-docushare. {serverName: "192.168.1.2"}
session User configuration for node-docushare. {userName: "apiUser", password: "p@ssw0rd"}

Database Tables

To update the configuration tables graphically, see the Administrator Views documentation.

Alternatively, you can manually update the configuration tables. using a tool like SQL Server Management Studio.

CR.Users

Authenication is done by Active Directory. No passwords are stored in the database.

In order for a user to have access to the application, they must have their user name in the CR.Users table, and be marked as active.

Field Name Data Type Description Example
userName varchar(30) primary key The user name (without domain). "j.doe"
fullName nvarchar(200) The user’s full name. "Jane Doe"
isActive bit Whether or not the user has permission to log in. 1
canViewAll bit Whether or not the user can see records they are not explicitly associated with. 1
canUpdate bit Whether or not the user can update records. 1
isAdmin bit Whether or not the user can maintain configuration tables. 0

CR.RecordTypes

Field Name Data Type Description Example
recordTypeKey varchar(20) primary key The behind-the-scenes key. "bylaw"
recordType varchar(100) The human readable record type. "By-Law"
minlength tinyint The minimum length of record numbers. 6
maxlength tinyint The maximum length of record numbers. 8
pattern varchar(50) The regular expression to validate record numbers. "^(\d\d){1,2}-\d\d\d$"
patternHelp varchar(100) The human readable version of the pattern to assist users. "Year, dash, three-digit index."
isActive bit Whether the record type is available for new records or not. 1

CR.RecordUserTypes

Field Name Data Type Description Example
recordUserTypeKey varchar(30) primary key The behind-the-scenes key. authority-delegated
recordUserType varchar(100) The human readable record user type. Delegated Authority
isActive bit Whether the record user type is available for new records or not. 1

CR.StatusTypes

Note that only those record types with corresponding status types will have status options available.

Field Name Data Type Description Example
statusTypeKey varchar(30) primary key The behind-the-scenes key. "bylaw-repealed"
recordTypeKey varchar(20) The record type the status corresponds to. "bylaw"
statusType varchar(100) The human readable status. "Repealed"
orderNumber tinyint Used to sort status types within lists, followed by the statusType. 1
isActive bit Whether the status type is available for new records or not. 1