Streamline DocManager grid layout - Remove columns: Thumbnail, File Name, Modified By - Remove Visibility header label, constrain to icon width (50px) - Make Description column flexible (flex: 1) to fill available space - Add permanent underline to ID links - Suppress horizontal scrollbar with suppressHorizontalScroll - Use sizeColumnsToFit to prevent overflow
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...
เพิ่มเป็นช่องข้อมูลพระเจ้าไปยังผู้ใช้จาวาสําหรับการอนุญาตของโหมดพระเจ้า
ลบทั้งเธรด ช่องข้อมูล - ระบุว่าผู้ใช้สามารถเข้าถึงโหมดพระเจ้าในการสลับค่าใน UI ได้ ใช้ในระบบความปลอดภัย - ส่วนหนึ่งของโหมดพระเจ้า
ตั้งค่าคุกกี้ (*) เมื่อล็อกอิน * โดเมนสําหรับบล็อคอัตโนมัติ
ปิดการใช้งาน: เปิดใช้งานการล็อกอินอัตโนมัติ เมื่อผู้ใช้มีวาระงานที่ถูกต้อง ก่อน::: *** คุกกี้ถูกสร้างจากภายในเท่านั้น* โดเมนหลังการตรวจสอบ OTK หลังจาก: *** คุก...
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...
Remove remaining KTokenSessionService reference in refresh-token endpoint
- Updated /refresh-token endpoint to use **************** - Removed unused KToken import - Changed endpoint to extend session TTL instead of refreshing KToken o...
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...
Remove problematic timezone endpoint and duplicate getSessionIdFromCookie
- Removed **************** endpoint (no longer needed, timezone is in *** cookie) - Removed duplicate getSessionIdFromCookie method that was causing compilation...
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...
Implement sliding session expiration - CRITICAL SESSION FIX
- Refresh Redis TTL on every session access (sliding expiration) - Sessions now stay alive as long as user is active in ANY Kamo app - Change Redis key prefix f...
เหมือนที่คุณเห็นการขนส่ง?
ทั้งหมดของมันมาถึง ในที่ทํางานของคุณเอง เริ่มที่แผนฟรี และอ่านหน้านี้อีกครั้งในเดือน.
