Add infinite scroll pagination to classic email view
Classic mode only loaded the first 50 messages with no way to see older ones. Wire up the existing VirtualMessageList onLoadMore/hasMore/loadingMore props so pa...
Add settings pages for HRS, Docs, Support, KB, Notes, and Chat
Create ComingSoonTab shared component and 6 new feature settings pages with coming soon placeholders, feature flag guards, and help tips. Links from FeaturesMan...
Auto-refresh UI after feature toggle and role changes
FeaturesManager and SecurityRoleManager now call router.refresh() after mutations to re-fetch org context and user session data, reflecting permission and app c...
Auto-refresh Redis session rights after feature/role changes
FeatureController and SecurityRoleController now rebuild the caller's session rights in Redis after enable/disable, role create/update/delete, and recalculate-r...
Implement app management UI with backend integration and dynamic permissions
Rewrite FeaturesManager to use backend API for app enable/disable with root-org gating for in-dev apps. Update NavPri to gate all nav items by org feature flags...
Add FeatureController for org app enable/disable management
REST endpoints for managing organization app features: GET features list, POST enable/disable with CONFIGURE_SYSTEM permission check, root-org-only gating for i...
يضاف نظام إدارة التطبيقات مع أنواع الخدمات والحقوق ومراقبة السمات
Restructure ServiceType enum: add core/deprecated flags, rename DOC MANAGER,DOCS و AI CHAT→AI SUPPORT, add SUPPORT/NOTES/POS types, deprecate STORAGE/DOC CLASSI...
إضافة أسماء البريد الإلكتروني ودعم صندوق البريد المشترك
مركب "From: " هبوط للتبديل بين الاسم الأول، الاسم المستعار و صندوق البريد المشترك عناوين كتاب "مالكبوكس" الجديد السادس في البريد الإلكتروني من أجل إدارة org من ...
Add email aliases and shared mailbox support
New MailboxManager provider capability interface for alias and shared mailbox CRUD. KamoMailMailboxManager implementation manages dovecot/postfix virtual_users ...
إضافة أسماء البريد الإلكتروني والكيانات المشتركة لصناديق البريد والمستودعات
New JPA entities for email provider schema: EmailAliasEntity (send-as aliases per member), SharedMailboxEntity (org-wide shared mailboxes with encrypted IMAP ac...
مضافا إليه:
- استمارة التذاكر: زران - "ستارت تشات" مطلوب، مجرد موضوع، و "خط التذاكر" "إتجهوا إلى التذاكر" "عندما يكون الوضع "بري تيكيت يفتح لهجة تتطلب عنواناً، ويتصل بـ (PU...
Add PRE_TICKET creation and convert-to-ticket endpoint
- createTicket: when preTicket=true, sets status to PRE_TICKET, skips assignment (no title required) - PUT /tickets/{id}/convert: converts PRE_TICKET to NEW, ...
مضافاً إليه حالة التذكرة وعلم ما قبل التذاكر عند الطلب
المركز الجديد PRE TICKET(14) للدورات الحادية التي يبدأ فيها المستخدم دردشة بدون تقديم تذكرة رسمية يمكن تحويلها إلى تذكرة كاملة فيما بعد عن طريق تحديد العنوان وت...
Add POST **************** endpoint
Triggers org-wide member_rights_applied recalculation. Needed after schema migrations or manual DB changes to permissions.
Use targeted role-scoped rights recalculation
SecurityRoleController now uses updateRoleMemberRightsApplied() to only recalculate members who have the modified role, instead of recalculating all members in ...
إعادة حساب الحقوق المستهدفة للبت، ولقب العمل، وتغيير الأدوار
- إدارة شؤون الموظفين: لا يعاد الحساب إلا لأعضاء في الإدارة المتضررة بعد الإنشاء/التحديث/الحذف - العمل: لا يعاد تشكيل إلا الأعضاء الذين لهم الحق في العمل المتأث...
Recalculate member rights applied after new member creation
يدعو إلى تحديث المعلومات المتعلقة بالعضو الجديد بعد الاثنين (أ) إنشاء منظمة (Member) وإنشاء (OrganizationTeamMember) The everybody role rights are immediately a...
Editing, label swapping, and Team Members support
- أضف الـ (أوليو ديت تيتل) و (أوليو ديتسي) - السماح بتحرير الأطر الأمنية على أدوار الأعضاء/الأعضاء في فريق العمل (مغلقة تماماً سابقاً) - "أغنية "الطوارئ و "الأع...
Migrate Everyone role to Members and create Team Members role
- Rename ROLE_EVERYONE_ID column to ROLE_MEMBER_ID - Rename existing "Everyone (Applies To All)" roles to "Members" - Set **************** flags on existing sys...
Enforce role protection flags and add parent label support to session
- Enforce isAllowEditSecurity in SecurityRoleController update endpoint - Add parentMemberTitlePlural and parentTeamMemberTitlePlural to *** session - Resolve p...
إضافة أعلام عن حماية الدور الجمركي ودور نظام أعضاء الفريق
- أضف أعلام (أوليو ديت تيتل) و (أوليو دييتسي) - Rename role EveryoneID to roleMemberID on Organization, add role TeamMemberID - Rename "Everyone (Applies to All...
Add Support section to settings page
Adds Topics, Notifications, and Status & Response Times cards that link to /support?tab=settings.
Add manual job trigger controller with duplicate execution guard
POST /api/daemon/trigger/{jobName} triggers any Quartz job immediately. Returns 409 if the job is already executing. GET /api/daemon/trigger/status returns runn...
Remove old help system, add support nav items
Delete app/help/ and app/components/help/ directories. Add SupportButton to NavTop toolbar and Support menu item to NavPri sidebar navigation.
Add frontend types and API proxy routes
TypeScript interfaces for all support DTOs and 13 API proxy routes forwarding to MediaService for topics, tickets, and reporting endpoints.
Add support ticket services, REST controllers, and STOMP relay
Implements the MediaService backend for the support ticket system: - SupportTopicService: CRUD for org-scoped support topics - SupportAssignmentService: round-r...
Add deep-linking support to notes page via query param
Support /notes?id={noteId} URL pattern so AI chat source links can navigate directly to a specific note. Opens the note in edit view when the page loads with an...
Include clickable source links in RAG context for AI chat
Update RagClient to embed markdown links in the context sent to the AI model. KB articles link to /kb/{guid}, notes link to /notes?id={noteId}. Instructs the mo...
Add AI processing toggle to notes UI
Add aiProcessingEnabled field to Note types and toggle button in NoteEditor toolbar. Members can enable/disable AI processing per note, which controls whether n...
Route /api/notes to KBService instead of SecurityService
Notes management has been moved from SecurityService to KBService.
Pass memberId to RAG for note-aware AI chat
Add extractMemberId to SessionHelper. Update RagClient to send memberId in search requests so RAG returns both org KB articles and the member's own AI-enabled n...
Add note embedding support to RAG pipeline
Add NoteEventConsumer for NOTE_EVENTS NATS stream and NoteEmbeddingPipelineService for processing notes. Update Qdrant to store sourceType, memberId, noteId. Se...
Add notes management with RAG integration
Move notes CRUD from SecurityService to KBService. Add note encryption, NATS event publishing for RAG pipeline, and AI processing toggle support. Notes with AI ...
Add AI processing column and note embedding records table
Add AI_PROCESSING_ENABLED column to notes table and create NOTE_EMBEDDING_RECORDS table for tracking note RAG vectorization.
مضافاً إليه الدعم المقدم في مجال تجهيز الملاحظات
(أ) يضاف حقل مجهز بالشروط إلى الكيان الملاحظ، وأجهزة منع الجريمة، والطلبات. إنشاء هيئة تسجيل ومستودع للتتبع ملاحظة في خط أنابيب RAG.
Use sized avatar variants — medium for profiles/emails, small for nav/lists
Add size parameter to fetchMemberAvatar (defaults to 'sm'). Email signatures, email sending, profile headers, posts, comments, and hex heads now request the med...
Support multi-size photo avatar uploads and crop endpoint
Update uploadPhotoAvatar to accept optional sized variants (fileSm, fileMd, fileLg) stored with suffix naming ({hash}_sm.png, etc). Add PUT /{id}/crop endpoint ...
Add photo crop tool with react-easy-crop and multi-size avatar storage
Replace the old PhotoCropDialog with an interactive crop tool using react-easy-crop. When uploading or editing a photo, users now select a square crop area (wit...
Load countries from CountryType enum, add flag icons to geo-blocking
Countries route now proxies to /api/security/countries (CountryType enum) instead of **************** (empty GeoLite table). Adds react-world-flags for country ...
Rewrite Access Blocks help tips for clarity
Explains all four sections (whitelist, blacklist, temp blocks, geo-blocking) in plain language. Adds a CIDR range guide with examples showing /32, /24, /16, /8 ...
Add RoleRightsSyncRunner to backfill missing role rights
When new RoleRightType entries are added to the enum, existing roles don't have OrgRoleRight entries for them. This runner checks all roles on startup and adds ...
Add access security system frontend
13 API proxy routes, access check module with CIDR matching, proxy.ts enforcement integration. Reworks AccessBlockManager (real API + geo-blocking), creates Sys...
مثل ما ترى الشحن؟
كل هذا يأتي في مساحة عملك من تلقاء نفسه. ابدأ بالخطة المجانية وقرأ هذه الصفحة مرة أخرى في غضون شهر.
