Refine DocManager grid columns and layout - Replace thumbnail/visibility chips with simple text icons - Add clickable ID links with download tooltip - Add last modified tooltip to Uploaded By column - Move Description column before File Name - Remove Status, Downloads, Last Modified, and Last Download columns - Add column header labels to previously unlabeled columns
Enhance DocManager tabs and selection layout - Add icons to all tabs (Documents, Prepare, Uploads, E-Signatures, History) - Add Hidden Docs tab (left of Trash) - Trash tab remains right-aligned - Change Download to Prepare & Download - Center selection count text absolutely (exact center of row) - Reorganize selection: Download/Share (left), count (center), Delete (right)
Change tab label from Preview Selected to Prepare Selected
Position count labels on same row as pagination - Count labels now at bottom left - Pagination controls at bottom right - Labels overlay on AG Grid pagination bar
Simplify DocManager to match actual Kamo imaging system structure - Based Document interface on Img and ImgDat entities - Reduced columns to essential fields only - Added relevant status indicators (Synced, Failed, Thumbnail) - Focused on practical file management features
Add CellStyle type assertions to fix AG Grid type compatibility
Remove type annotations causing cellStyle inference issues
Fix cellStyle TypeScript errors - convert fontWeight to string
Update package-lock.json to sync with AG Grid dependencies
Implement comprehensive AG Grid document imaging system with 50+ fields, advanced filtering, sorting, grouping, export, custom renderers, and interactive features
Enable scroll bar in document manager by constraining page height with flexbox layout
Add 'use client' directive to doc/manager page to fix Server Components render error
Change god mode color from purple to baby blue in top navigation
God mode global state + session expiration at zero verification
1. God Mode State (useUserInfo hook): - Move isGodMode to GLOBAL state in hook (not local to NavTop) - Export isGodMode, setIsGodMode for all components ...
Move god mode state to global useUserInfo hook
BREAKING FIX: Properly separates isGod and isGodMode Architecture (as intended): - isGod: Permission from session (GD field) - Can user access god mode? - isGo...
Add explicit handlers and keys to switches
- Add handleAcceptingLeadsToggle and handleGodModeToggle handlers - Add unique keys and names to both switches - Add aria-labels for accessibility - Helps React...
God mode toggle state and add fire icon
Bug fix: - God Mode switch was using isGodModeActive() from hook for 'checked' prop - But onChange was calling setGodModeActive (local state) - This created a d...
Add multi-layer god mode validation
Security enhancements to prevent localStorage manipulation: 1. useUserInfo hook: - Add isGodModeActive() method with dual validation - Check 1: User has ...
Implement god mode toggle in NavTop
Backend changes (app/api/user-info/route.ts): - Read GD field from Redis session data - Map to isGod in API response Frontend changes (app/hooks/useUserInfo.ts...
Implement god mode permission in sessions
Changes to SecurityController: - Query is_god field from users table during login - Pass isGod to kSessionService.createSession Changes to KSessionService: - A...
添加为 God 字段到 User. java 以获取 God 模式权限
- 添加有数据库默认错误的行为: - 字段表示用户能否访问UI中的神模式切换 - 用于创建安全服务会话,以填充GD参数 - 神模式部分特性执行
在登录上设定 *** cookie. * 域名用于自动登录
BREAKING: 当用户有有效的会话时启用自动登录 之前 : *** cookie 仅在 OTK 验证后在内部. * 域上创建 。 后 : *** cookie 创建于两个登录. * 和内部. * 域 变化 : - app/api/login/route.ts:从OTK查询*** 身份证明 - app/api/l...
Ensure all session expirations go through /logout endpoint
BREAKING: Fixes improper session expiration flow Before: Various components redirected directly to login site when sessions expired After: All redirects go thr...
Add titleShort to organization API response
- Added titleShort field to /org/domain/{domain} endpoint response - Enables frontend to display organization's short name in UI - Used in session expiration wa...
Dynamically show org short name in session warning
- Added titleShort property to Organization class - Updated SessionExpirationWarning to use organization's short name - Changed text from 'Kamo applications' to...
删除在刷新端点中的 KTokenSession 服务引用
- 更新/更新端点以使用QQ - 删除未使用的 KToken 导入 - 更改了终点以扩展会话 TTL 而不是刷新 KToken 对象 - 修复编译错误: 找不到符号 kTokenSessionService
Consolidate session management into KSessionService
- Deleted duplicate KTokenSessionService - Enhanced KSessionService with: * getSessionTTL() - get Redis key TTL * getSessionInfo() - get session data + TTL ...
Add missing properties to SessionInfo interface
- Added userId, orgId, memberId, tokenExpiration to SessionInfo - These fields are returned by backend getSessionInfo() method - Fixes TypeScript build error in...
删除有问题的时区终点并重复获取会话 爱奇艺
- 删除了QQ终点(不再需要,时区在*** cookie) - 删除的重复得到会议 造成编译错误的 IdFromCookie 方法 - 现有的会议 第555行的 IdFromCookie 正确 - 直接返回 *** cookie 值
Double-check Redis before showing session warning
- Always verify Redis TTL right before showing expiration warning - Prevents false warnings if another Kamo app extended the session - Ensures warning popup onl...
执行滑动会话到期 - 届会
- 刷新 Redis TTL 对每次会话的访问(滑行到期) - 只要用户在任何 Kamo app 中活动,会话就保持活性 - 将 Redis 密钥前缀从会话更改为 ***( matches cookie name) - Redis 对象 TTL 是会话到期的唯一真理来源 - Cookie过期现在没有意义了 - Redi...
