All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Follow Up and Alerts modules have been migrated into the main package and integrated via Quartz Scheduler – which is already ebing used to manage the Blackboard Sync Job
- Added 2 new Vault Parameters (
alertEnable
,followupEnable
) which enable/disable the Alerts and FollowUp jobs respectively. They are each booleans and should be set totrue
in a production environment (if both jobs should be run in production). - Added Scheduler CRON Settings to Vault via
alert_schedule
andfollowup_schedule
respectively. These are not required if their respective jobs are enabled, but allow for the schedule to be set via the Vault. If the Vault values are modified, the container will need to be re-initialized for the changes to be applied.
- Removed FollowUp and Alerts Modules. Be sure to remove them from your CI/CD configurations and remove the old JARS and their respective CRON Schedules.
- The Users Table in the DB can now be synced with Blackboard to ensure an accurate dataset is available at all times. This replaces the update script that relied on a CSV file containing all of the user's information.
- Added
bb-api-user-sync
secret and addedbb-API-secret
,bb-url
,syncEnable
, andsyncFrequency
fields to main app secret. - Changed "Web Conferencing" button title in "Meet With ID" Group to "Zoom" to reflect new departmental changes.
- DB Schema has been adapted to accommodate Bb Sync
CREATE TABLE dsk (
`PK` INT AUTO_INCREMENT PRIMARY KEY,
`name` TEXT
);
INSERT INTO dsk (`name`) VALUES ('EXTERNAL');
CREATE TABLE department (
`PK` INT AUTO_INCREMENT PRIMARY KEY,
`name` TEXT
);
ALTER TABLE users
ADD COLUMN `dsk` INT,
ADD FOREIGN KEY (`dsk`) REFERENCES dsk (`PK`),
ADD COLUMN `department` INT,
ADD FOREIGN KEY (`department`) REFERENCES department (`PK`),
ADD COLUMN `updated` TIMESTAMP;
UPDATE users
SET dsk = (SELECT PK
FROM dsk
WHERE name = 'EXTERNAL');
ALTER TABLE events
ADD FOREIGN KEY (`redid`) REFERENCES users (`id`);
- Issue FW-7 SSE Broadcasts were failing sometimes if the client closed the connection, but the server has not yet de-registered the client.
- Switched the Live Dashboard from frequent polling to Server Sent Events (SSE). This reduced both server and DB load, as well as reduces network traffic.
- Optimized Vault Token renewal. The token expiry time is tracked and the token is only renwed before it expires. This significantly improves load times.
- UI improvements to Live dashboard.
- Issue FW-6 Fixed Live Page styling
which was broken when various CSS elements were moved to a commons file,
common.css
.
- Different Kiosks can different displays via Locales. The locale is set via a
URL param of the format
?locale=LOCALE
, and is saved in a cookie to ensure consistency after refreshes. Different App Logos, Titles, and Sitemaps can be defined for each locale. - Added option to filter locales when exporting events.
- Migrated JS Cookies Lib from a home-built version, to js.cookie.
- The DB schema for the events table has been changed to accommodate for Kiosk's Locale. Run the following SQL command in your DB to add the table, and set the locale for past events.
ALTER TABLE events ADD COLUMN (locale TEXT);
UPDATE events SET locale = '<LOCALE>';
- Issue FW-5 - Escaped Appointment Name in Appointment Found View.
- Issue #33 - Improved Logging for Errors in regard to the Database Connections.
- Added Vault Driver to manage sensitive keys, like passwords, database credentials, etc. With this, new Environment Variables are needed. For information on how to configure Vault and AppRoles, take a look at our Online Documentation: https://sdsu-its.gitbooks.io/vault/content/
- New Environment Variables:
VAULT_ADDR
- Vault Address (Ex.https://127.0.0.1:8200
)VAULT_ROLE
- Vault AppRole IDVAULT_SECRET
- Vault AppRole Secret ID corresponding to the provided Role ID.
- All Params are now pulled from the Vault, not KeyServer. Tests and Accessors have been changed to reflect this.
- Because of the change to Vault, the KeyServer Environment Variables (
KSPATH
andKSKEY
) are no needed for the operation of FIT Welcome. However, they still may be used for other older applications. See Added for the new Environment Variables.
- Issue #32 - Staff Logins take priority over appointments. Issue was preventing staff from clocking in, if an appointment had a fuzzy match.
- On Init Class to create a new Admin User and Dr-register the DB Driver on Shutdown
- Appointment Matching based on University ID via custom appointment form in each appointment.
- Appointment Map to add a button for "Blackboard Help" since it is an option that is frequently used and looked for by clients.