General [New] Audit tables support. It is now possible to create auditing logs for any table in database. All changes are logged with time of change, db user, Hotsec user and source of connection. Each changed column is stored with old value and new value. Reports can be created to query audit logs. [New] Core server can now send plugin updates to clients when placed into server install\plugins folder. Client has option to accept or decline update. [Improvement] Services now show service name in console window title when in debug mode [Improvement] Services now set USER_ID in db context variable while modifying data (for audit triggers) Installers [Improvement] Client installer now removes cached drawings and other data from ProgramData folder when uninstalling. Database [New] Added procedure PR_USER_GROUP_ADD2 for user-friendlier wrapper over PR_USER_GROUP_ADD for third party integrations. [New] Logs pruning now also prunes by event storing time. [Fix] Workaround for Firebird 3 bug where exceptions fail to display when message text contains non-ascii characters. [Fix] Bundle Firebird 3.0.10 because 3.0.9 had a bug in optimizer resulting in bad plan Core service [Improvement] Initial client event log size doubled to 4000 events [Improvement/Fix] Prevent Hikvision IVMS-4200 from interfering with license dongle connection [Fix] Infinite loop in SQL script parser when encountering // [Fix] Login compatibility with older clients [Fix] Folder monitor could sometimes miss some changes (affected maintenance mode, client and plugin updates) [Fix] When license dongle was unplugged, client showed "Connection Closed Gracefully" instead of license missing message Client [Improvement] Blob files uploading now optional in SQL script (BLOB files may already be in server) [Improvement] SQL script can now upload all blobfiles (only the first was uploaded in prior versions) [Improvement] Skip duplicate lines in event details viewing dialog [Improvement] Changed bar text and number editor values no longer require pressing return to save changed values [Improvement] Now can abort login by pressing Exit button on main toolbar while drawing is loading [Improvement] Reports: Added keyboard shortcut CTRL+C to report preview to quickly export in CSV format to clipboard [Improvement] Drawing: added CTRL modifier key to eyedropper to copy whole design (pen, fill and tranparency) from object [Improvement] Drawing: Grouped undo/redo for changes to all selected drawing objects [Improvement] Drawing: Layers list width is now resizable [Improvement] New touch mode and object highlight animations [Fix] Long wait after login, client showing hang message when users table is sorted by department (issue #444) [Fix] Some plugins were not unloaded after client disconnected and caused AV on closing client [Fix] Stack Overflow on destroying treelist with focused node [Fix] AV on closing client (at 50399B77, read of 00000218) after another error (issue #484) [Fix] Reports: AV in report preview when closing preview immediately after starting report with ESC key [Fix] Reports: rare AV when exporting report to E-mail (issue #479) [Fix] Drawing: resource leak leading to eventual AV when using eyedropper drawing tool [Fix] Drawing: RowIndex out of range in drawing mode (issue #457) Paradox [New] User access level and schedule names [New] Added Evo 192 7.70 and Evo HD+ 1.03 to known firmwares [New] Plugin: partition will display in red when WasInAlarm bit is set even when disarmed (previously displayed blue) [New] Plugin: partition will blink while AlarmBell bit is set, then will stay red until disarmed [New] Plugin: panels and doors with known incompatible firmware version are highligted in bold red text in network tree [Improvement] Panel command timeouts are now logged as technical alarm events (were regular text events) [Improvement] Faster Evo panel login negotiation speed [Improvement] Made panel/worker ratio configurable via hidden option in db [Improvement] Plugin: make map commands show up but disabled while object is in state where it can not be controlled (door or panel offline etc) [Improvement] Plugin: copy all state colors and borders from partition when copying design [Improvement] Plugin: card search now truncates entered number to 24bits by default, hold shift key to search as-is [Improvement] Plugin: card search not found message now includes the actual number that was queried [Improvement] Plugin: User account status now turns to active automatically after entering pin or card number [Fix] Door timezones did not get restored after overriding schedule elapsed [Fix] Panel clock adjustment failures logged (but clock was actually correctly changed) [Fix] Potential fix for service not stopping with logging [Fix] More than one warning was logged about pin length mismatch on panel connect [Fix] Panel state was showing "Connecting" while actually in delay between connects [Fix] Exessive CPU use while connecting channel and logging in to panel [Fix] Plugin: not storing pen width 0 for not ready state of partition drawing object [Fix] Plugin: undo/redo for partition object design changes [Fix] Plugin: panel editor not accepting 4 digits panel password when user code length was set to 6 digits [Fix] Plugin: erroneously disallowing change of account status from suspended to disabled while pin and card number were empty [Fix] Plugin: when creating new panel and leaving serial port mode then zones polling was disabled and com timeout was set to 0 seconds Soyal [New] Clear holiday bit in auto-open timezone for 725E reader [New] Plugin: convert card format between WG and ABA using CTRL+Left and CTRL+Right keys [Improvement] Plugin: make map commands show up but disabled while object is in state where it can not be controlled (door or panel offline etc) [Improvement] Plugin: card number search not found message now showing actual card number that was searched for [Fix] Door timezones did not get restored after overriding schedule elapsed [Fix] Plugin: can not delete card record with null card number due to variant conversion error (issue #480) Sync [Improvement] Plugin: Allow up to 1440 minutes interval. [New] ISIC: put users in students group when card starts with A; [Fix] ISIC: Sync stopped when encountering unknown card prefix; Browser button plugin [New] Now using WebView2 (Chromium Edge) when available (because W10+ removed IE) Tibbo [New] Firmware v.22.11.25 - 115k port speed for Paradox EVOHD+ panel.