Gunakan nama ruas acak untuk mencegah pengenalan otomatis peramban
- Hasilkan akhiran acak untuk nama ruas nama pengguna pada setiap halaman beban - Prevents browser dari mengenali field sebagai sama satu di halaman beban - Dig...
Mencegah pengisi otomatis peramban dari memulihkan nama pengguna lama setelah log keluar
- Ubah lengkap otomatis dari 'username' ke 'off' pada ruas nama pengguna - Ubah bentuk secara otomatis dari 'on' ke 'off' - Hapus nama pengguna dan keadaan sand...
Hapus ALL cookies tanpa diskriminasi selama log keluar
- Hapus semua cookies pada log masuk kamo- halaman log keluar (sisi client-) - Hapus semua cookie pada log masuk kamo- API (sisi server-) - Bersihkan LocalStora...
Delete ALL cookies indiscriminately during logout
- Delete all cookies on kamo-internal logout page (client-side) - Delete all cookies on kamo-internal logout API (server-side) - Clear localStorage and sessionS...
Invalidate existing session before validating OTK
- Check for existing *** cookie in validate request - Clear and delete any existing session before validating OTK - Verify session data is not empty JSON (clear...
Invalidate existing session before creating new one during login
- Check for existing *** cookie in login request - Delete/invalidate existing session before creating new one - Prevents reusing old session cookies when loggin...
Disable activity tracking and session extension during logout
- Add disableClientActivityTracker() function to stop activity tracking - Stop session monitor when logout is initiated - Prevent screen movement/activity from ...
Bersihkan data sesi sebelum menghapus kunci dalam titik akhir log keluar
- Set data sesi ke JSON kosong sebelum menghapus kunci - Pastikan sesi tidak dapat digunakan bahkan jika penghapusan gagal atau ada lag replikasi - Tambahkan ke...
Clear session data before deleting key in logout endpoint
- Set session data to empty JSON before deleting the key - Ensures session is unusable even if deletion fails or there's replication lag - Add error handling wi...
Clear session data before deleting key to ensure session is unusable
- Set session data to empty JSON ({}) before deleting the key - Ensures session is unusable even if deletion fails or there's replication lag - Add error handli...
Improve logout cookie clearing - clear cookies across all domain/path combinations
- Clear cookies with base domain (e.g., .kamocrm.com) to cover all subdomains - Clear cookies for current hostname without domain attribute - Clear cookies unre...
Fix Redis import in logout route - use static import for getRedisReadClient
Clear existing *** cookies before setting new one during validate
- Clear all possible *** cookie variations before setting new cookie - Prevents reusing old session cookies from previous logins - Ensures validate always uses ...
Tambahkan log verifikasi untuk mengkonfirmasi sesi Redis dihapus selama log keluar
Add verification logging to confirm Redis session is deleted during logout
Bersihkan cookie * * * yang ada sebelum menata yang baru selama log masuk
- Hapus semua kemungkinan * * * variasi cookie (domain dasar, hostname, tanpa domain) - Prevents menggunakan ulang kue sesi lama dari log masuk sebelumnya - Pas...
Perbaiki log keluar: panggil Layanan SecurityService log out titik akhir ke sesi sepenuhnya invalidate
- Call SecurityService / api / security / logout untuk benar invalidate sesi di backend Java - Ini menjamin sesi dihapus, token CSRF dihapus, dan sesi sepenuhny...
Fix logout: call SecurityService logout endpoint to fully invalidate session
- Call SecurityService /api/security/logout to properly invalidate session on Java backend - This ensures session is deleted, CSRF tokens are removed, and sessi...
Perbaiki aliran log keluar: bersihkan cookies tetapi masih mencoba auto-login
- Hapus logika skipAutoLogin (auto- login harus selalu bekerja) - Tambahkan param clearkies ke logout redirect - Halaman log masuk membersihkan cookies ketika c...
Perbaiki masalah logout: mencegah login otomatis setelah log keluar
- Tambahkan parameter permintaan skipAutoLogin untuk logout redirect - Lewati pemeriksaan auto-login ketika skipAutoLogin = true ada - Enhanced cookie cleaning ...
Replace PersonIcon with user avatar in NavTop My Account link
- Fetch member avatar using fetchMemberAvatar utility - Display Avatar component with user's image or initials fallback - Matches design pattern used in other c...
Picu pipeline setelah kamo- shared- pustaka avatarType daerah update
Tambahkan avatarType ke Entitas Avatar untuk pemeriksaan tipe sederhana
- Tambahkan kolom TIPE untuk menyimpan 'foto' atau 'Avatar Creator' - Hapus konstruktor duplikat yang bertentangan dengan Lombok @ NoArgsConstructor - Set avata...
Gunakan ruas avatarType daripada deteksi proksi kompleks
- Periksa daerah avatarType langsung untuk pemeriksaan tipe sederhana - Set avatarType ketika membuat avatar baru - Jauh lebih sederhana dan pendekatan lebih pe...
Tambahkan avatarType ke Entitas Avatar untuk pemeriksaan tipe sederhana
- Tambahkan kolom TIPE untuk menyimpan 'foto' atau 'Avatar Creator' - Set dalam konstruktor otomatis - Avoid perlu untuk instanceof pemeriksaan dan masalah prox...
Query semua avatar pengguna untuk mendapatkan entitas nyata bukan proxy
- Dapatkan userId dari avatar, kemudian query findByUserId (kembali entitas nyata) - Cari avatar yang cocok dari daftar dan periksa instanceof - Ini menghindari...
Gunakan filter sederhana untuk memeriksa apakah avatar adalah foto atau Pembuat Avatar
- Hapus logika deteksi proksi kompleks - Penyaring sederhana hasil findById untuk memeriksa apakah itu GrafarPhoto - Jika bukan foto, baku untuk Avatar Maker - ...
Gunakan Hibernate LaszyInisializer untuk mendapatkan kelas entitas aktual dari proxy
- Akses HibernateProxy 's LazyInitializer untuk mendapatkan kelas gigih - Periksa apakah kelas persisten adalah Photo atau Pembuat Avatar - Kekuatan inisialisas...
Tekan peringatan variabel tidak digunakan dalam deteksi tipe avatar
Gunakan cast langsung untuk menentukan jenis avatar daripada refleksi
- Coba casting ke Photo untuk memaksa inisialisasi proxy - Akses getFileExtension () langsung setelah cast - Kembali ke Pemain Pembuat Avatar jika foto gagal - ...
Improve deteksi tipe proksi dengan menangkap InvocationTargetException
- Handle ClassCastException ketika memanggil metode pada proxy untuk menentukan tipe sebenarnya - Coba getFileExtension pertama (foto), lalu getStyle (Avatar Cr...
Atur penanganan proksi Hibernate untuk deteksi tipe avatar
- Cari hirarki dan antarmuka kelas untuk metode getFileExtension - Gunakan refleksi untuk mendeteksi Photo vs Avatar Pencipta ketika instanceof gagal - Tambahka...
Merge branch 'analitik' of * * * * * * * * * * * * * * * * * * ke dev
Fix TypeScript errors: Replace 'any' types with proper interface in MemberListProvider
tambahkan case- insensitivitas terhadap perbandingan mata uang
Tambahkan logging ke MenmberLimstProvider ke debug avatar URL tampilkan isu dalam daftar anggota
Muat ulang avatar dari repositori ke masalah proksi Hibernate
- Entitas Avatar dimuat dari hubungan Mungkin proksi Hibernasi yang gagal instanceof cek - Muat ulang avatar dari repositori untuk memperoleh tipe entitas aktua...
Pastikan inisial SVG selalu dibuat ketika avatar hilang dalam HexHeadGroup
- Tambahkan kesalahan penanganan fallback untuk membuat inisial SVG jika avatar pengambilan gagal - Konsolidasikan inisial logika penciptaan SVG - Pastikan avat...
Tambahkan logging rinci ke getThemeDomain dan getPubliccCompecurl ke masalah pembuatan URL debug
Tambahkan logging rinci ke pembuatan URL avatar untuk debug
- Log ketika URL avatar dihasilkan, URL apa yang dibuat - Log ketika avatar hilang atau URL kosong - Ini akan membantu mengidentifikasi mengapa avatar tidak men...
Tambahkan logging rinci ke avatarUtils untuk isu tampilan avatar debug
Segarkan daftar avatar setelah menset avatar sebagai aktif
- Setelah mengatur avatar sebagai aktif, segarkan daftar avatar penuh untuk mendapatkan bendera isaktif yang dimutakhirkan - Cari dan set avatar aktif dari daft...
Determine active avatar by checking user.getAvatar() instead of RecordState
- Backend now correctly marks which avatar is active by comparing to user.getAvatar() - This ensures the isActive flag in the API response reflects the actual a...
Perbaiki kesalahan TypeScript - tambahkan tipe eksplisit anotasi untuk menemukan callback
Muat avatar aktif dari daftar avatar pada halaman Profil
- Ambil daftar avatar dan temukan yang ditandai sebagai aktif - Set activeAvatar dari objek lengkap avatar dalam daftar (memiliki semua rincian dan URL) - Hapus...
Fix avatar not displaying on Profile page after refresh
- Ensure avatar URL from member profile is preserved when setting activeAvatar - Update profileData with avatar URL when avatar is loaded - Preserve URL in sync...
Add detailed logging for avatar selection debugging
- Log full avatar object when handleSelectAvatar is called - Add validation for avatar.id before processing - Log API URL being called - Better error messages f...
Fix TypeScript type error - handle null body in apiProxy
- Convert null to undefined for BodyInit type compatibility - Fixes: Type 'null' is not assignable to type 'BodyInit | undefined'
Fix PUT request body handling for set-active endpoint
- Explicitly set body to undefined for PUT requests without body - Improve body handling in apiProxy to gracefully handle empty requests - Prevents body consump...
Seperti apa yang Anda lihat pengiriman?
Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.