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 ...
Add verification logging to confirm Redis session is deleted during logout
الكوكيز الموجود *** قبل وضع واحد جديد خلال الشعار
- إزالة جميع أنواع الكوكيز الممكنة (مجال القاعدة، اسم المضيف، لا مجال) - منع إعادة استخدام بسكويت الدورة القديمة من قطع الأشجار السابقة - التأكد من أن الدخول ال...
نقطة انطلاق ثابتة: دعوة نقطة انطلاق شرطة الأمن إلى جلسة إبطال كاملة
- استدعاء الأمن سيرفيت/الطفل/الأمن/اللوحة لإبطال الدورة على نحو سليم في جافا - وهذا يكفل حذف الجلسات، وإلغاء القيود المفروضة على الموظفين، وتنظيف الدورة بالكامل...
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...
تدفّق قطع الغيار: بسكويت واضح ولكن لا يزال يحاول الشعار الآلي
- إزالة منطق تخطى أوتوغين (ينبغي أن يعمل التسجيل دائما) - أضف مبتدئين مبتدئين - صفحة لوجين تُوضّحُ البسكويتَ عندما يُوضّحُ المُبتدئونَ تَعْبرُ الحقيقةَ، ثمّ يُح...
مسألة قطع الأشجار: منع الشعار الآلي بعد قطع الأشجار
- إضافة البارامترات الخاصة بالاستفراج عن طريق إعادة توجيه - التحقق من الشعار الآلي عندما يكون تخطى أوتو لوجين - تحسين مقاصة الكوكيز على قطع الأشجار (مزيجات متعد...
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...
يضاف حقل أفاتار تيب إلى كيان أفاتار للفحص البسيط
أضف عمود (تايبي) لتخزين (فوتو) أو (أفاتار كرايتر) - إزالة البنايات المزدوجة التي تتعارض مع لومبوك @NoArgsConstructor - وضع الأفاتار تايب عند إنشاء الأفاتار في ا...
استخدام حقل الأفاتار تايب بدلاً من الكشف المعقد
- تفقد حقل الأفاتار تيب مباشرة من النوع البسيط - وضع الأفاتار تايب عند إنشاء أفاتار جديدة - نهج أبسط وأكثر أداء
يضاف حقل أفاتار تيب إلى كيان أفاتار للفحص البسيط
أضف عمود (تايبي) لتخزين (فوتو) أو (أفاتار كرايتر) - وضع في البنايات تلقائيا - تجنب الحاجة إلى مثل الشيكات وقضايا الوكيل
إستخدم تصفية بسيطة للتحقق إذا كان (أفاتار) صورة أو (أفاتار)
- إزالة منطق الاكتشاف العميل المعقد -ببساطة يعثر (بايل) على نتيجة لتفقد إذا كان (أفاتار فوتو) -إن لم تكن صوراً، قُدّم إلى (أفاتار) - نهج أبسط بكثير
Fix TypeScript errors: Replace 'any' types with proper interface in MemberListProvider
يضاف قطع الأشجار إلى الموفِّر العضوي لمسح أفاتار URL مسائل في قائمة الأعضاء
أضف قطع الأشجار المفصّل للحصول على (ThemeDomain) والحصول على (PublicBucketUrl) لمعالجة قضايا توليد الآفاتار
يضاف قطع الأشجار المفصّل إلى جيل الأفاتار من طراز URL لتدميره
- لوغ عندما تولد الأفاتار أورل، ما يُنشأ - لوج عندما يختفي الأفاتار أو يُبطل هذا سيساعد على تحديد لماذا لا يظهر الأفاتار في الثرثرة/الصناديق/قائمة الأعضاء
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...
Improve error handling for set-active avatar endpoint
- Forward actual backend error messages instead of generic message - Better error parsing in frontend (handle both JSON and text responses) - Enhanced logging t...
Use static imports instead of dynamic imports for avatarUtils
- Replace dynamic imports with static imports at top of file - Avoids module resolution issues with TypeScript moduleResolution node16 - Functions are always ne...
Revert to relative paths for dynamic imports - Next.js may not resolve path aliases in dynamic imports at build time
Fix path alias - use @/lib/avatarUtils instead of @/app/lib/avatarUtils
- @/ maps to project root, so @/lib/avatarUtils is correct path - @/app/lib/avatarUtils was incorrect (would look for app/app/lib/avatarUtils)
Fix dynamic imports - use path alias @/app/lib/avatarUtils for Next.js webpack resolution
- Change relative paths to path alias @/app/lib/avatarUtils - Next.js webpack can't resolve .js extensions for .ts files in dynamic imports - Path aliases work ...
Fix TypeScript ESM dynamic imports - add .js extension required for node16/nodenext module resolution
- TypeScript with moduleResolution node16/nodenext requires explicit .js extensions in dynamic imports - TypeScript will resolve .js imports to .ts files at bui...
Fix TypeScript module resolution - remove .js extension from dynamic imports
- Change dynamic imports from avatarUtils.js to avatarUtils (no extension) - Fixes build error: Module not found: Can't resolve '../../lib/avatarUtils.js' - Typ...
Add avatar URLs to members by-department endpoint with override mechanism
- Include avatar URL in each member response from **************** - Respect override mechanism: member avatar (if exists) → user avatar (default) - Frontend ...
Fix avatar display with override mechanism support
- ProfileTab: Always show USER avatar (no override mechanism) - MembershipPermissionsTab: Always show MEMBER avatar (no override mechanism) - Site-wide displays...
Add detailed logging to track avatar state during save
- Log current state (useDefaultUserAvatar, activeAvatar, avatarIdToSend) before save - Log API response after save (memberAvatar, avatar) - Log refreshed profil...
مضافا إليه قطع الأشجار الشامل من أجل البحث في مجال توفير الأمن
- صفائف شبكات القروض وجميع بطاقات الهوية الخاصة بالمنظمة - إجراء مقارنة مفصّلة بين بطاقات هوية org وأجهزة الأمن - استخراج الأراضي وخطوات التشييد في إطار عملية إ...
Add ThemeBackgroundController with hash-based storage and public bucket support
يضاف الكيان الموجود على سطح الأرض والمستودع مع علاقات المستخدمين/الاجتماع
Implement ThemeBackground system: entity, repository, controller, and enhanced BackgroundManager with slideshow support
Fix lint error: change let to const for filtered variable and remove unused imports
Enhance Select Avatar tab: add search, sort by newest, date/time display, edit avatars, and photo cropping with draggable mask
Fix Grid layout: replace Grid container/item with Box using CSS Grid to match FormPersonalInfo.tsx exact layout
Fix TypeScript errors: add eslint-disable for EyeDropper any type, remove unused imports
Replace CREATE AVATAR tab with exact layout from FormPersonalInfo.tsx - matching kamo-register avatar creator interface
Fix Swiper CSS imports: move to top-level side-effect imports instead of dynamic imports
واردات شركة " Swiper " : استخدام الواردات الدينامية من أجل حل قضية وحدة الخدمات المشتركة/إدارة الشؤون الاقتصادية والاجتماعية
Fix TypeScript error: replace 'any' with 'unknown' in error handling
مثل ما ترى الشحن؟
كل هذا يأتي في مساحة عملك من تلقاء نفسه. ابدأ بالخطة المجانية وقرأ هذه الصفحة مرة أخرى في غضون شهر.
