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...
Use correct Redis key format ***{sessionId} instead of SESSION{sessionId}
Correct *** cookie parsing to use pipe delimiter instead of URLSearchParams
Auto-fetch session info on session-debug page load to enable test button
Add delay to session monitor initial check and improve error handling to prevent false-positive logouts
Resolve TypeScript and ESLint errors in session monitoring components
Add session info and extend endpoints for cross-app session management
Add session expiration warning system with Redis-based monitoring and animated popup
Update KTokenSessionService to accept timezone parameter for *** cookie
เพิ่มเขตเวลา (TZ) ช่องข้อมูลไปยัง KToken สําหรับรองรับเขตเวลาที่ผู้ใช้กําหนดใน *** คุกกี้
Implement timezone service with IANA zone ID support to fix 'Invalid time zone' error
Add effective timezone endpoint with Member->User->Organization cascade
Include organization features in API response for kamo-internal nav
ปรับปรุงตัวจัดการเส้นทางสําหรับต่อไป.js 15 Async params และข้ามการตรวจสอบเวลาสร้าง
ติดตั้งการขึ้นต่อกันทั้งหมดในขั้นตอนการสร้างและลบตัวเลือก swcminized
Offinize Docerfile สําหรับการผลิตที่มีการปรับปรุงหลายด้าน ปรับแต่งโหมดยืนแบบเดียว
ช่องข้อมูลชื่อเล่นที่ใช้งานได้อัตโนมัติเมื่อคลิกบนเงื่อนไขการปิดการใช้งาน
ย้ายกล่องกาเลือกภายในช่องชื่อเล่น ขณะที่เหลือเครื่องประดับและเพิ่มความกว้างของช่องข้อมูล
เหมือนที่คุณเห็นการขนส่ง?
ทุก คน ที่ ได้ รับ การ ปรับ ปรุง เหล่า นี้ จะ ลง ไป ใน ที่ ทํา งาน ของ คุณ โดย อัตโนมัติ. เริ่มให้อิสระและดูมันเติบโตสัปดาห์แล้วสัปดาห์เล่า.