CHANGELOG

v2.9.157 2026-03-06

Fixed

  • Mention Logic Overhaul: Centralized all @mention JavaScript logic into a unified library (sj-mentions.js) to prevent duplication and ensure consistent behavior across all TinyMCE and plain-text editors.
  • Duplicate Mentions: Fixed a critical bug where selecting a username via the Enter key would result in duplicate mention entries.
  • Improved Mention Insertion: Mentions are now inserted as atomic badges (contenteditable="false") with a trailing space, resolving issues with cursor placement and the mention dropdown reappearing immediately after selection.
  • Cursor Stability: Enhanced selection range handling in TinyMCE to prevent the cursor from jumping or disappearing during mention insertion.
  • Redundant Style Cleanup: Removed localized mention-related CSS and scripts from multiple public partials in favor of global assets.

Added

  • Infrastructure Search Optimization: Enhanced the Infrastructure Device selection in "Create Ticket" to support deep searching by Device Name, Serial Number, and Deployed Function.
v2.9.142 2026-02-28

Fixed

  • Ticket Task Modal Error: Fixed a critical network error (Status 500) that occurred when opening the task detail modal for tasks originating from generic tickets due to an undefined method and property mismatch in the conversation backend.
v2.9.141 2026-02-28

Added

  • Activity-Based Sorting: Tasks are now sorted by their most recent activity (newest created, newly replied, or status updated) at the top of the Kanban and List views. This ensures active tasks remain highly visible.
v2.9.140 2026-02-28

Added

  • Threaded Conversations: Tasks now support nested replies! Added a "Reply" button to individual comment bubbles, allowing users to reply directly to specific messages. The UI displays an indicator when replying in a thread and visually indents nested comments for better context.
v2.9.139 2026-02-28

Fixed

  • Create Task Modal Width: Increased the width of the Create Task modal to 90% of the screen.
  • Improved Form Spacing: Added internal padding to the Create Task form to eliminate cramped layout and improve focus.
v2.9.138 2026-02-28

Fixed

  • Modal Layout Optimization: Refined the task detail modal to eliminate excessive white space at the bottom. The conversation list now expands to fill the available height, ensuring a more efficient use of screen real estate.
  • Dynamic Editor Height: Balanced the WP Editor height and the conversation list visibility when replying, providing a better context-aware interface.
v2.9.137 2026-02-28

Fixed

  • WP Editor Manual Resize: Implemented a new approach for manual resizing by setting a fixed initial height and removing the wpautoresize plugin. This ensures the resize handle works reliably across all browsers without conflicting with automatic expansion logic.
  • Stabilized editor layout within the task modal.
v2.9.136 2026-02-28

Fixed

  • WP Editor Dual Resize: Refined the editor configuration to support simultaneous auto-resize (growing with content) and manual resize (drag to adjust).
  • Improved the robustness of editor initialization to handle dynamic loading within modals more effectively.
  • Fixed CSS constraints that were limiting the vertical expansion of the editor.
v2.9.135 2026-02-28

Fixed

  • WP Editor Auto-Resize: Fixed the editor to automatically expand as content is typed. This prevents the need for manual scrolling within a small area and provides a more fluid writing experience.
  • Enabled both wpautoresize and manual resize handle for maximum flexibility.
v2.9.134 2026-02-28

Fixed

  • WP Editor Resize Handle: Enabled the manual resize handle for the reply editor. Users can now easily adjust the height of the editor area by dragging the handle in the status bar.
  • Removed auto-resize plugin to allow manual control.
v2.9.133 2026-02-28

Fixed

  • WP Editor Layout: Fixed the issue where an empty space remained below the editor toolbar. The editor now correctly occupies the entire designated area.
  • Removed conflicting inline styles and CSS min-height constraints.
v2.9.132 2026-02-28

Changed

  • WP Editor Interface: Disabled the "Code" (HTML) tab in the reply editor. The editor now only shows the "Visual" mode for a cleaner experience.
v2.9.131 2026-02-28

Fixed

  • WP Editor Dual Visibility: Fixed a bug where both the Visual editor and the Code textarea were visible simultaneously.
  • Improved editor cleanup using wp.editor.remove.
v2.9.130 2026-02-28

Changed

  • Task Detail Modal: Height increased to 90% of screen.
v2.9.129 2026-02-28

Changed

  • Task Detail Modal: Width increased to 80% of screen.
  • Conversation Logic: Added a dedicated "Reply" button. The WP Editor is now hidden by default in the conversation tab.

Fixed

  • Modal responsiveness and editor initialization timings.
v2.9.128 2026-02-28

Fixed

  • Version Display: Fixed the hardcoded version number on the settings page to properly pull from the plugin constant.
  • Unified versioning across file headers and settings UI.
v2.9.127 2026-02-28

Changed

  • Dedicated Resync Button: Moved the "Task Resync & Cleanup" tool to a standalone section in Settings. This allows users to perform data maintenance independently without needing to save general settings first.
  • Added a confirmation dialog and clearer description for the Resync process.
v2.9.126 2026-02-28

Added

  • Automatic Task Deletion: Tasks are now automatically deleted when their associated ticket is removed from the system.
  • Orphan Cleanup Tool: Improved the bulk sync feature in Settings to detect and delete "orphaned" tasks (tasks linked to tickets that no longer exist).

Fixed

  • Improved synchronization and database integrity between tickets and the task management board.
v2.9.125 2026-02-28

Added

  • Optimized Ticket-to-Task Sync: Removed automatic creation of "purely unassigned" tasks. Tasks are now only created when a specific employee or role is assigned to a ticket.
  • Enhanced Role-Based Visibility: confirmed role assignment ensures tasks appear for all members of that role without appearing as "Unassigned".

Fixed

  • Prevents board clutter by excluding tickets without actual assignees.
v2.9.124 2026-02-28

Added

  • New Unassigned option in task management employee filter.
  • Admin setting to manually define the Ticket View Page (fixes 404 links).
  • Admin feature to Resync All Tickets to Tasks for data consistency.

Fixed

  • Improved Employee Filter to correctly include tasks assigned via roles (e.g. NOC, CS) when a specific staff member is selected. This ensures no ticket-sourced tasks are missed when filtering by person.
  • Enhanced robustness of ticket-to-task sync logic.
v2.9.123 2026-02-28

🛠 Fixes

  • Employee Visibility: Fixed a critical bug where employees assigned to tickets were missing from the filter list and assignment dropdowns. This occurred for staff members with restricted roles (e.g., 'subscriber').
  • Notification Consistency: Restored WhatsApp and Push notification tagging for staff members with the 'subscriber' role. All active employees on tickets can now be correctly mentioned and notified across all systems.
  • Inclusive Filtering: Employee filters now use a combined fetching logic that ensures both role-based staff AND specifically assigned staff are always selectable.
v2.9.122 2026-02-28

✨ Features

  • Modernized List View: Completely redesigned the task list view with a premium, card-like table layout. Features include colored status badges with dot indicators, priority pills with icons, source chips, and assignee avatars.
  • Improved Filter Toolbar: Redesigned the filter section into a clean two-row layout. Added a dedicated Reset Filter button next to the Refresh action for quick clearing of all search parameters.
  • Manual Status Updates: Added the ability to change task status via dropdowns directly from Kanban cards and the Task Detail modal for manual tasks, providing a faster alternative to drag-and-drop.
  • Enhanced Role Filtering: Fixed a critical bug in the backend query logic where role-based filtering by managers was being blocked by default employee filters. Managers can now accurately filter tasks assigned to specific roles.

🛠 Fixes

  • Select2 Integration: Restored and styled the Select2 dropdown for the employee filter to match the new modern design system.
  • Status Selection UI: Fixed height and vertical alignment issues for status dropdowns in the task detail modal.
  • JS Stability: Resolved a critical issue where missing wrapper functions caused all frontend filters to stop working.

📦 Release & Database

  • Plugin version bump to 2.9.122 for UI overhaul and fix collection.
  • Database: No new table or column changes in this version; Activator and dbDelta remain synchronized for seamless updates on any WordPress installation.
v2.9.119 2026-02-25

📦 Release & Database

  • Update-safe install: Plugin now runs DB schema and migrations on every load when stored DB version is older than plugin version. Updating by uploading the zip (replace files) will apply schema/migrations without needing to re-activate.
  • Packaging: Release zip sj-ticket-support-2.9.119.zip is intended for install or update on another WordPress site; extract in wp-content/plugins/ or use Plugins → Add New → Upload to update existing install.
  • schema.sql version set to 2.9.119 for reference.
v2.9.118 2026-02-24

✨ Features

  • Task Reply Redesign: Upgraded the task reply editor to match the native WordPress "Kitchen Sink" toolbar layout for a more familiar editing experience.
  • RESTRICTED: Ticket-Task Replies: Discussions for tasks sourced from tickets are now restricted to the original ticket. The Task Reply feature is now exclusive to Manual Tasks to maintain communication integrity.
  • Direct Media Uploads: Added dedicated image and video upload buttons directly within the task reply interface.
  • Enhanced Synchronization: Implemented automatic background board-syncing. The Kanban reply counters now update instantly without requiring a page refresh.
  • Anti-Cache Measures: Integrated millisecond-precise cache-busting and nocache_headers() to ensure real-time data accuracy across all devices.

📦 Release & Database

  • Plugin version bump to 2.9.118 for reply system overhaul and packaging.
  • No database schema changes; schema.sql and Activator remain valid for new installs and updates.
v2.9.117 2026-02-23

Fixed

  • Fixed WhatsApp notification and share links so they always point to the correct ticket page.

📦 Release & Database

  • Plugin version bump to 2.9.117 for WhatsApp link fixes and packaging.
  • No database schema changes; schema.sql and Activator remain valid for new installs and updates.
v2.9.116 2026-02-22

✨ Features

  • Added reporting shortcodes for open vs resolved recap, status recap, and employee activity recap.
  • Extended shortcode documentation in the admin panel for dashboard and analytics use-cases.

📦 Release & Database

  • Plugin version bump to 2.9.116 for recap and reporting features.
  • No database schema changes; schema.sql and Activator remain valid for new installs and updates.
v2.9.115 2026-02-22

✨ Features

  • Added dual WhatsApp gateway support with GOWA integration alongside WAHA.
  • Implemented Role Chat ID Mapping for GOWA groups, including live group list fetching.
  • Enabled GOWA to send images and videos with proper captions based on ticket/reply content.

📦 Release & Database

  • Plugin version bump to 2.9.115 for release packaging.
  • DB schema: schema.sql and Activator are ready for install or update on any WordPress site (no new tables or columns).
v2.9.114 2026-02-22

Fixed

  • Robust role-based assignment display. Added a direct fallback to fetch role information from tickets if task metadata is incomplete.
  • Improved synchronization logic to prevent duplicate or orphaned "Unassigned" tasks when roles are assigned.
v2.9.113 2026-02-22

Fixed

  • Further improved role-based task visibility and display. Roles assigned to tickets now appear correctly for employees who belong to those roles.
  • Ensured role names are correctly translated and displayed on task cards.
v2.9.112 2026-02-22

Changed

  • Improved Task Management to correctly handle tickets assigned to roles. Tasks now display the role name (e.g., "Technician") instead of "Unassigned" when role-based assignment is used.
  • Added automatic synchronization migration to update existing tasks with correct role metadata.
v2.9.111 2026-02-22

✨ Features

  • Global Body Breakout System: Implemented a core architectural change where tooltips are physically moved to the document body on hover. This ensures tooltips escape any container clipping and remain visible regardless of theme header constraints or restricted overflow.
  • Intelligent Viewport Positioning: Added a reactive positioning engine that calculates available space in real-time. Tooltips now automatically flip downwards or add internal scrollbars if they hit the site header or the bottom of the screen.
  • Multi-layered Z-Index Restoration: Set tooltips to the maximum possible browser z-index (2147483647) and optimized container stacking contexts across all plugin views (Ticket List, Kanban, Activity List).
  • Reduced Latency & Optimized Dimensions: Shortened hover show/hide delays for a snappier feel and increased default widths to 750px (Tickets) and 450px (Replies) to minimize the need for vertical scrolling.
v2.9.110 2026-02-22

✨ Features

  • Wider Interactive Tooltips: Increased tooltip width to 500px for better content visibility and readability.
  • Scrollable Tooltip Content: Added support for internal scrolling within tooltips, allowing users to view long descriptions and reply histories.
  • Improved Hover Stability: Implemented a "bridge" system and extended hide timeouts (1s) to ensure tooltips stay open while the cursor moves to interact with its content.
v2.9.109 2026-02-22

✨ Features

  • Video Upload Support: Added dedicated support for direct video uploads in both the "Create New Activity" form and standard ticket editors. Supported formats include MP4, WebM, OGG, and QuickTime.
  • Enhanced Progress Feedback: Integrated visual progress bars and status indicators for all direct media uploads to provide better real-time feedback.

🛠 Fixes

  • Unified Media Centering: Standardized default centering for both images and videos across all forms using WordPress-compatible alignment classes.
  • Activity Modal Layout: Fixed a broken layout in the Activity Table's "Create New Activity" modal, ensuring a cleaner and more organized interface for media uploads.
  • Video Sanitization: Updated content filters to allow critical video attributes and ensure styling/controls persist through sanitization.
v2.9.108 2026-02-22

🛠 Fixes

  • Definitive Video Alignment: Implemented a core fix for video centering. Videos now use the aligncenter class by default upon upload, and CSS rules have been strengthened to ensure they respect alignment settings across all browsers and devices.
v2.9.107 2026-02-22

🛠 Fixes

  • Improved Video Alignment: Enhanced CSS rules to ensure videos correctly follow centering alignment even when TinyMCE uses inline styles or different container structures in replies.
v2.9.106 2026-02-22

🛠 Fixes

  • Video Alignment: Fixed an issue where centered videos in the editor appeared left-aligned after posting. Added support for standard WordPress alignment classes and whitelisted alignment attributes in content sanitization.
v2.9.105 2026-02-22

🛠 Fixes

  • Video Playback: Fixed an issue where video tags were stripped after saving a ticket or reply. Video tags are now properly whitelisted in the content sanitization process.
v2.9.104 2026-02-22

✨ Features

  • Video Support: Added the ability to upload and embed videos in tickets and replies. Supports common formats like MP4, MOV, and WebM with a 50MB size limit for videos.
v2.9.103 2026-02-22

🛠 Fixes

  • Dashboard UI: Fixed a bug where the "Closed Tickets" infobox appeared blank. Added proper styling and ensured the ticket count is correctly displayed.
v2.9.102 2026-02-22

💄 UI / Design

  • New Infobox: Added "Closed Tickets" infobox to the dashboard for consistent tracking of all ticket states.
  • Refined Lifecycle: Dashboard now accurately shows Open, In Progress, Resolved, and Closed tickets as distinct categories.
v2.9.101 2026-02-22

💄 UI / Design

  • Dashboard Refinement: Removed the "Waiting Reply" infobox and replaced the generic "Active Tickets" with a specific "In Progress" infobox for better tracking of ongoing work.
  • Improved Filtering: Infoboxes now strictly filter by their respective status (Open, In Progress, Resolved).
v2.9.100 2026-02-22

🛠 Fixes

  • Syntax Fix: Resolved a critical PHP error introduced in the previous filter fix.
v2.9.99 2026-02-22

🛠 Fixes

  • Waiting Reply Filter: Fixed the "Waiting Reply" dashboard filter on the ticket list page. The filter now correctly displays tickets where the last response was from a staff member, matching the dashboard statistics count.
v2.9.98 2026-02-22

✨ Features

  • Auto In-Progress on Reply: When an employee replies to a ticket that is still in open status, the ticket status automatically changes to In Progress. Tickets already in progress, closed, or resolved are not affected.
v2.9.97 2026-02-22

🎨 UI / Design

  • Modern Task Card Redesign: Completely redesigned Kanban task cards with a premium look:
  • Colored left accent border based on priority (red → high, amber → medium, green → low).
  • Priority dot indicator next to the task title.
  • Chip badges for source type (Ticket / Manual) and customer type.
  • Dedicated customer row with avatar or initial fallback.
  • Footer row: priority badge on the left, assignee avatar + name + role on the right.
  • Smooth lift-and-shadow hover animation.
  • Bouncy scale effect when dragging.
  • Kanban Column Refresh: Rounded corners, uppercase column headers, semi-transparent header background.
v2.9.96 2026-02-22

✨ Features

  • Improved Task Detection: Fixed customer data fetching for manual tasks that were previously misidentified as ticket tasks.
  • UI Update: Renamed status label "Closed" to "Closed / Resolved" to align with ticket terminology.
v2.9.95 2026-02-22

✨ Features

  • Task Display Limit: In the Task Management page (Kanban & List), tasks with status "Closed" or "Cancel" are now limited to 5 items by default. A "Show More" button has been added to display all tasks in those statuses.
v2.9.94 2026-02-22

🐛 Bug Fixes

  • View Ticket 404 Fix: Resolved the issue where the "View Ticket" button in Task details would lead to a 404 error.
  • Centralized URL Detection: Unified the logic for finding ticket and report view pages across the whole plugin to ensure consistency and more robust detection.
v2.9.93 2026-02-22

🐛 Bug Fixes

  • Mention Cursor Fix: Resolved the issue where the cursor would jump to the beginning of the text after selecting a username from the @mention dropdown in TinyMCE editors.
  • Centralized Mention Logic: Moved all mention-related JavaScript to a centralized sj-mentions.js file for better maintainability and consistency.

✨ Features

  • Expanded Mention Support: Mentions are now fully supported in:
  • Ticket Reply form.
  • Create New Ticket form.
  • Edit Ticket Description modal.

📦 Release & Database

  • Plugin version bump to 2.9.93 for release packaging.
  • DB schema: schema.sql and Activator synchronized for version 2.9.93.
v2.9.92 2026-02-20
v2.9.91 2026-02-20

✨ Features

  • Retail Customer Type: Added complete support for the "Retail" customer type.
  • Included a new color configuration in Admin > Settings.
  • Implemented dual-option radio buttons (Corporate and Retail) for Admin and Frontend customer onboarding forms.
  • Allowed ticket creation to utilize the Retail type, mimicking the corporate dropdown search experience.

📦 Release & Database

  • Plugin version bump to 2.9.91 for release packaging.
  • DB schema: schema.sql and Activator synchronized for version 2.9.91.
v2.9.90 2026-02-20

🐛 Bug Fixes

  • Ticket Creation Form: Restored the missing "Internal / Non-Customer" option. When selected, the form now properly hides the broadband search and corporate customer selection fields.

📦 Release & Database

  • Plugin version bump to 2.9.90 for release packaging.
  • DB schema: schema.sql and Activator synchronized for version 2.9.90.
v2.9.89 2026-02-20

✨ UI Improvements

  • Customer List Table Alignment: Fixed CSS Grid issues for strict alignment. Enforced minmax(0, 1fr) property on table structure to strictly calculate column widths against dynamic row content.
  • Customer List Proportions: Fine-tuned grid-template-column fractions to dedicate more horizontal space for Company Name and Contacts, and slightly reduced Ticket Summary's footprint.
  • Micro-typography Enhancements: Reduced badging and text font-size on Type, Services, PIC Information, and Ticket Summary to improve layout clarity and proportion.

📦 Release & Database

  • Plugin version bump to 2.9.89 for release packaging.
  • DB schema: schema.sql and Activator synchronized for version 2.9.89.
v2.9.88 2026-02-19

✨ Improvements

  • Customer List Mobile UI: Completely overhauled the customer directory responsive view.
  • Each row is now a modern card layout on screens up to 1024px.
  • Implemented a clean, invisible 2-column list-detail style (labels on left, content on right).
  • Uses Flexbox with fixed-width labels for 100% consistent alignment across different browsers.
  • Customer List Functionality: Added customer deletion and multi-select mass deletion features.

📦 Release & Database

  • Plugin version bump to 2.9.88 for release packaging.
  • DB schema: schema.sql and Activator synchronized for version 2.9.88.
v2.9.87 2026-02-19

✨ Improvements

  • UI Spacing: Added spacing between WhatsApp Share button and badge elements in ticket rows for better visual separation.
  • DB Schema: Enhanced database schema compatibility for updates and new installations across different WordPress sites.

📦 Release & Database

  • Plugin version bump to 2.9.87 for release packaging.
  • DB schema: schema.sql and Activator synchronized for version 2.9.87.
v2.9.86 2026-02-18

✨ Features

  • Deep Search: Search functionality now traverses ticket replies/discussions.
  • UI Cleanup: Unified search bar in the filter section and removed secondary live search container.

📦 Release & Database

  • Plugin version bump to 2.9.86 for release packaging
  • DB schema: schema.sql updated to 2.9.86
v2.9.85 2026-02-18

✨ Improvements

  • Safeguarded Migration: Re-implemented the database migration for last_activity to prevent mass-updates to "current time" during plugin activation.
  • Data Recovery: Added a self-healing check to restore botched "last activity" dates from updated_at if a previous update caused them all to reset to the same time.

📦 Release & Database

  • Plugin version bump to 2.9.85 for release packaging
  • DB schema: schema.sql updated to 2.9.85
v2.9.84 2026-02-18

✨ Features

  • Ticket Activity Sorting: Tickets are now sorted by the most recent activity (replies, status changes, comments) by default.
  • Activity Timestamps: Frontend views updated to show "Last Activity" time instead of creation/update time.

🐛 Bug Fixes

  • Permissions Fix: Corrected query parameter ordering in get_tickets and get_tickets_count that caused empty lists for non-admin users.
  • Database Migration: Robustified the last_activity column migration to ensure it's created and indexed correctly on all environments.

📦 Release & Database

  • Plugin version bump to 2.9.84 for release packaging
  • DB schema: schema.sql updated to 2.9.84; ready for install or update on any WordPress site
v2.9.46 2026-02-11

📦 Release & Database

  • Plugin version bump to 2.9.46 for release packaging
  • DB schema: schema.sql updated to 2.9.46; ready for install or update on any WordPress site
  • Migration 2.9.46: Ensures schema sync when upgrading from 2.9.45 (or earlier)

🔐 Permissions

  • Manage Customers permission: Role with "Manage Customers" can access customer list/detail (frontend shortcodes) and admin menu Customers / Add Customer
  • Admin menu: Parent menu uses sj_ticket_support_menu; Customers submenus use sj_manage_customers so permission-based roles see the correct items
  • has_permission: Administrator fallback now uses manage_options capability for consistent behavior
v2.9.45 2026-02-10

📦 Release & Database

  • Plugin version bump to 2.9.45 for release packaging
  • DB schema and migrations: Schema and activator are aligned for install or update on any WordPress site
  • Update check on load: On plugin load, if DB version is older than plugin version, migrations run and tables are synced via dbDelta
  • Migration 2.9.45: Ensures schema sync when upgrading from 2.9.44 (or earlier) to 2.9.45
  • schema.sql: Updated to version 2.9.45; use {prefix} as placeholder for WordPress table prefix when using for reference or manual install

✨ Features (from recent work)

  • @Mention in activity/reply: WhatsApp notification to mentioned users (reply tiket, activity report, activity comment)
  • Mention in Create Activity form: @ mention dropdown in activity description editor (report detail & report list modals)
  • Create Ticket from search: Button in customer detail popup redirects to standalone Create Ticket page with customer name and Requested By pre-filled
  • Broadband search: Enter key in broadband customer search triggers search
v2.9.44 2026-02-10

🔑 Bearer Token API Integration & Raw Data Enhancement

  • NEW: Raw Data Tab for Bearer Token API
  • Dedicated tab to display raw JSON response from Legacy API (Bearer Token)
  • Separate from Current API Raw Data tab for clarity
  • Shows complete infrastructure data from Legacy API
  • Includes helpful information about API configuration
  • NEW: Sync with Bearer Token Button
  • Dedicated button to sync data using Bearer Token API only
  • Focuses on infrastructure data (IP, OLT, ODC, ODP, Router Model/SN)
  • Preserves existing Current API data while updating infrastructure fields
  • Available in both Raw Data tabs for easy access
  • ENHANCED: Legacy API Base URL Configuration
  • Improved base URL handling to remove /api suffix automatically
  • Better endpoint construction for Legacy API calls
  • Updated admin settings description with clear instructions
  • Support for base URL: https://eyzet-prod.app.indonesiaconnect.id
  • ENHANCED: Field Mapping for Infrastructure Data
  • Expanded field mapping for Router Model, SN, IP address
  • Comprehensive field variations for ONU/ONT Customer SN
  • Better extraction of infrastructure data from Legacy API
  • Critical fields prioritized from Legacy API response
  • IMPROVED: API Collaboration
  • Enhanced merging logic to prioritize Legacy API for infrastructure fields
  • Better handling of nested API structures (Strapi populate format)
  • Improved MongoDB ID extraction for Legacy API calls
  • More robust error handling for API failures
  • REMOVED: Categorized Data Table
  • Removed categorized table view from Raw Data tab
  • Simplified Raw Data display to show only JSON formatted data
  • Cleaner interface focusing on raw API responses

🔧 Technical Improvements

  • Database Migration
  • Added migration for version 2.9.44
  • Ensures all tables are up to date on plugin update
  • Safe database schema updates
  • Code Quality
  • Improved error handling for Bearer Token API calls
  • Better separation of concerns between Current and Legacy API
  • Enhanced logging for debugging API issues

📦 Installation & Update

  • Plugin Package
  • Ready-to-install ZIP file: sj-ticket-support-2.9.44.zip
  • All files included and optimized
  • Ready for distribution
v2.9.43 2026-02-10

🎯 Eyzet API Integration & Billing History

  • NEW: Billing History Display
  • Complete billing history integration with Eyzet API
  • Year tabs for navigating billing history across multiple years
  • Customer information display (name, email, phone, service plan, status)
  • Financial summary (Total Paid, Total Unpaid, Paid Percentage, Outstanding, etc.)
  • Invoice table with detailed invoice information (ID, Date, Due Date, Amount, Status)
  • Year selector dropdown/tabs for easy navigation between years
  • Automatic data fetching using customer username from Eyzet API
  • NEW: Customer Status Display
  • Customer status badge in profile sidebar (replaces ONLINE UPTIME)
  • Color-coded status indicators (Green for Active, Red for Unsubscribe/Inactive, Yellow for Unknown)
  • Status extracted from Eyzet API response
  • Dynamic icons based on status type
  • ENHANCED: Raw Data Tab
  • Tab navigation now wraps to 2 rows for better visibility
  • All tabs including Raw Data are now visible without horizontal scrolling
  • Improved tab layout with flex-wrap support
  • Better spacing and alignment for multiple tabs
  • ENHANCED: Database Migration System
  • New migration class (class-sj-ticket-migration.php) for version-based database updates
  • Automatic migration on plugin activation and update
  • Safe database schema updates without data loss
  • Version tracking for seamless updates across WordPress installations
  • IMPROVED: Eyzet API Integration
  • Better username extraction from API responses
  • Improved error handling for API calls
  • Enhanced data parsing for billing history
  • Support for multiple field name variations

🔧 Technical Improvements

  • Database Schema
  • Updated schema.sql to version 2.9.43
  • Migration support for adding status column to broadband_customers table
  • Automatic table creation/update on activation
  • Cross-site installation support
  • Code Quality
  • Improved error handling
  • Better code organization
  • Enhanced logging for debugging

📦 Installation & Update

  • NEW: Installation Guide
  • Created INSTALLATION.md with detailed setup instructions
  • Update procedures documented
  • Troubleshooting guide included
  • Database schema documentation
  • NEW: Plugin Package
  • Ready-to-install ZIP file: sj-ticket-support-2.9.43.zip
  • All files included and optimized
  • Ready for distribution
v2.9.37 2026-02-07

🗑️ Enhanced Reply Deletion UX

  • Custom Confirmation Popup: Replaced the native browser alert with a custom, styled modal for deleting replies.
  • Consistent Design: The delete confirmation now matches the plugin's notification system design (Red/White theme).
  • Smoother Interaction: Added dimming overlay and animations for a more professional feel.
v2.9.36 2026-02-06

📈 Activity Report Badges

  • Visual Intelligence: Added premium "Activity Report" badges to ticket replies and activity entries to distinguish synchronized report data.
  • Premium Styling: Implemented vibrant green gradients and chart icons for high visual impact.
  • Cross-View Consistency: Badges are visible in Ticket view, Activity Stream, and Daily Report detail views.
  • AJAX Support: Enhanced reply tooltips to show the report status in real-time.
v2.9.35 2026-02-06

📊 Employee Notification Monitoring

  • New Shortcode: Added [sj_employee_notif_status] to monitor unread notifications across all staff.
  • Real-time Detail Popup: Clicking an employee row opens a premium modal showing exactly which tickets or replies they haven't read yet.
  • Top-Level Visibility: Implemented high z-index and body-level modal injection to ensure it stays above all other UI elements.
  • Staff Summary: Added global unread counters and employee status badges (Pending Read vs All Read).
v2.9.34 2026-02-06

🖼️ WhatsApp Media & Formatting

  • Automatic Image Detection: System now automatically extracts tags from ticket replies and sends them as actual WhatsApp images (using WAHA sendImage API).
  • Rich Text Conversion: Improved HTML-to-WhatsApp conversion. Lists (
      ,
    • ), Bold (, ), and Italics (, ) are now converted to native WhatsApp markdown.
    • Smart Cleanup: Strips remaining HTML tags and cleans up extra whitespace for a professional look on mobile devices.
    • Refactored WAHA Integration: Centralized API command execution for better error handling and logging.
v2.9.33 2026-02-06

✨ WhatsApp Log Improvements

  • Premium Modal UI: Redesigned the WhatsApp log detail popup with Indigo gradient, backdrop blur, and Inter font for a professional look.
  • Enhanced Data Display: Implemented structural display for system responses (pretty JSON) and full message content.
  • Top-Level Visibility: Forced the modal to the highest z-index and moved it to the body to prevent theme interference.
  • Responsive Layout: Set modal width to 90% for better readability on all devices.
v2.9.32 2026-02-06

🐛 Fix WhatsApp Log Popup

  • Fixed JavaScript syntax error in shortcode template.
  • Improved modal layering and visibility by moving it outside the main container.
  • Switched to jQuery animations for smoother modal transitions.
  • Ensured click handlers are correctly registered in the global scope.
v2.9.31 2026-02-06

🎯 WhatsApp Log Detail Modal

  • Clickable Log Rows: Log rows are now clickable to view full details in a modal popup.
  • Complete Information: Modal displays full message content, complete system response, context, timestamp, recipient, and status.
  • Beautiful Design: Gradient header, organized sections, and smooth slide-in animation.
  • Keyboard Support: Press Escape key to close the modal.
  • Click Outside to Close: Click on the backdrop to dismiss the modal.
v2.9.30 2026-02-06

🎨 WhatsApp Log UI Refinements

  • Centered Column Headers: All table headers are now center-aligned for better visual consistency.
  • Live Search: Added real-time client-side search functionality to filter logs without page reloads.
  • Redesigned Clear Button: Updated the "Clear All Logs" button to match the plugin's design system with gradient styling.
  • Improved Table Layout: Optimized spacing, alignment, and responsiveness across all columns.
  • Enhanced UX: Added search icon, focus states, and hover effects for better interactivity.
v2.9.29 2026-02-06

🟢 WhatsApp Log Enhancements

  • Premium UI Redesign: Completely redesigned the WhatsApp Log page with a modern, high-contrast card-based layout.
  • Log Management: Added "Clear All Logs" functionality for administrators with a secure confirmation workflow.
  • Improved Readability: Optimized table spacing, typography, and status indicators (Success/Failed) for better scannability.
  • AJAX Integration: Seamless log clearing without page refreshes.
v2.9.28 2026-02-06

🟢 Unified Notification Format

  • Standardized Templates: All WhatsApp notifications (Ticket Creation, Assignment, Status Updates, and Replies) now follow a consistent, high-detail format.
  • Rich Context Data: Each notification now includes:
  • Subject, Creator, and Customer Details (Type & PIC).
  • Current Ticket Status.
  • Comprehensive Assignee List.
  • Contextual Content (Description or Reply text).
  • Format Consistency: Implementation of a central formatting engine to ensure visual uniformity across all event types.
v2.9.27 2026-02-06

🟢 Logging Optimization

  • FIX: Excessive System Logs: Removed the "Notification System Initialized" log entry that was being generated on every page load. The WhatsApp logs will now only show actual message activity.
v2.9.26 2026-02-06

🟢 Role-Wide Notifications

  • NEW: Individual Role Notifications: When a ticket is assigned to a role, every member of that role now receives an individual WhatsApp notification on their registered phone number.
  • Smart Filtering: The notification system automatically excludes the user who performed the action (e.g., the assignee or replier) from receiving their own notification.
v2.9.25 2026-02-06

🟢 Rich Context Notifications

  • NEW: Detailed Customer Information: WhatsApp notifications now include the Customer Name, Customer Type (Corporate/Broadband), and PIC name (for Corporate customers).
  • NEW: Full Assignee List: Notifications now show a complete list of all employees and roles assigned to the ticket.
v2.9.24 2026-02-06

🟢 Enhanced Assignment Notifications

  • NEW: Ticket Content Preview: WhatsApp notifications for new assignments and ticket creations now include a preview of the ticket's original description/message.
  • NEW: Creator Attribution: Notifications now explicitly show the name of the employee who created the ticket.
v2.9.23 2026-02-06

🟢 WAHA Integration Flexibility

  • NEW: Configurable Session Name: Added a "WAHA Session Name" setting in the admin area, allowing users to specify which session to use for messaging and group discovery (defaults to default).
v2.9.22 2026-02-06

🟢 WhatsApp API Alignment

  • FIXED: Groups Endpoint: Corrected the WhatsApp Groups discovery endpoint to include the session name (/api/default/groups), ensuring compatibility with the WAHA API.
v2.9.21 2026-02-06

🟢 WhatsApp Admin Fix

  • FIXED: Refresh Groups Redirect: Fixed a "Headers already sent" / blank page issue when clicking the Refresh Groups button by moving the redirect logic to the early admin_init hook.
v2.9.20 2026-02-06

🟢 WhatsApp Admin UX Improvements

  • NEW: Group Selection Dropdown: The Role Chat ID mapping now uses a searchable dropdown (Select2) that automatically fetches available groups from your WAHA API.
  • NEW: Group List Caching: Fetched groups are cached for 1 hour to ensure fast page loads.
  • NEW: Refresh Groups Feature: Added a "Refresh Groups List" button in the admin settings to manually trigger a re-fetch from the WAHA API.
v2.9.19 2026-02-06

🟢 Enhanced Notification Transparency

  • NEW: Action Attribution: WhatsApp notifications for ticket assignments and status updates now include the name of the employee who performed the action ("Update by: [Name]").
v2.9.18 2026-02-06

🟢 WhatsApp Notification Enhancements

  • ENHANCED: Reply Notifications: Added current ticket status to the WhatsApp update whenever a reply is posted.
v2.9.17 2026-02-06

🟢 Reply Notification Alignment

  • NEW: Master Group for Replies: Added missing notification trigger so the Master Notification Group now also receives alerts for all ticket replies.
  • ENHANCED: Troubleshooting Logs: Added detailed debug logging to the reply handler to trace assignee detection and notification skipped reasons.
v2.9.16 2026-02-06

🟢 Enhanced Phone Sanitization

  • FIXED: Duplicate Chat ID: Resolved issue where phone numbers were duplicated in the WhatsApp payload (e.g., 62...08...). This was caused by BuddyBoss fields returning HTML links.
  • NEW: Tag Stripping: Added mandatory strip_tags() to all phone number resolutions to ensure only raw content is processed.
  • NEW: Heuristic Digit Extraction: Implemented a smart regex to extract only the first valid phone number if multiple/duplicated sequences are detected in the profile data.
v2.9.15 2026-02-06

🟢 BuddyBoss & Phone Detection

  • NEW: BuddyBoss XProfile Support: The system now correctly detects phone numbers stored in BuddyBoss/BuddyPress extended profile fields (e.g., "WhatsApp").
  • ENHANCED: Case-Insensitive Matching: Added fallback to try lowercase meta keys if the configured profile field name doesn't match exactly.
  • IMPROVED: Notification Reliability: Fixed issue where employee notifications were skipped due to phone number detection failure.
v2.9.14 2026-02-06

🟢 Frontend Integration

  • FIXED: Ticket Links: WhatsApp links now correctly point to the frontend ticket view page instead of the WordPress admin background.
  • NEW: Automatic Page Detection: The system automatically detects which frontend page contains the [sj_view_ticket] shortcode to generate perfect links.
v2.9.13 2026-02-06

🟢 WhatsApp Notification Enhancements

  • NEW: Status Change Notifications: Automated WhatsApp alerts whenever a ticket status is updated.
  • NEW: Ticket Creation Hook: Reliable notification triggering upon new ticket creation.
  • NEW: Master Notification Group: Added setting for a global group ID to receive all ticket alerts.
  • NEW: Header Authentication: Fixed API authentication by standardizing on X-Api-Key header.
  • FIXED: Assignee Mapping: Standardized employee vs user type mapping for notifications.
  • ENHANCED: Debug Logging: Comprehensive database logging for all notification attempts and failures.
v2.9.8 2026-02-05

🔔 Notification System Overhaul

  • NEW: Advanced Notification Popup
  • Completely redesigned the notification popup with a focused, white-themed card layout.
  • Content Previews: Notifications now verify and display a smart excerpt (snippet) of the content (ticket description, reply text, or comment).
  • Media Fallback: Automatically detects image-only replies and displays "Attachment / Image only" text.
  • Smart Linking: Notification titles are now direct, persistent links to the specific ticket or activity.
  • NEW: Interactive Alert Effects
  • Looping Sound Alert: Implemented a distinctive "Tung... Tung... Tung..." sound loop using native Web Audio API (no external files). Sound stops automatically when popup is closed/dismissed.
  • Visual Pulse Animation: Added a "Red Glow" pulse animation (box-shadow) to the popup container that beats every 2 seconds, mimicking a heartbeat/alert signal.
  • NEW: Admin Configuration
  • Added Notification Polling settings in the Admin Dashboard.
  • Admins can now configure the AJAX polling interval (default 60s) to balance server load and real-time responsiveness.
  • ENHANCED: Technical Reliability
  • Robust Asset Loading: Implemented strict versioning (v2.9.8) for CSS/JS assets to force cache clearing on updates.
  • Dark Mode Disabled: Enforced Light Mode styles for notifications to ensure readability regardless of OS preferences.
v2.8.4 2026-02-05

🛠️ Admin Customer Management Fixes

  • FIX: Service & Sub-Service Data Persistence
  • Resolved an issue where subscribed services were not being correctly reloaded in the edit form.
  • Implemented automatic cleanup of sub-services when a parent service is deselected.
  • NEW: Missing Fields in Admin Form
  • Added Customer Type toggle (Corporate/Broadband) to the admin interface.
  • Added Location Coordinates (Latitude/Longitude) fields for mapping support.
  • Integrated Company Note rich text editor into the admin customer profile.
  • ENHANCED: Premium Service Selection UI
  • Upgraded the admin services selector to a modern, responsive grid of interactive cards.
  • Added real-time visual feedback for selected services in the WordPress dashboard.
  • STABILITY: Error Reporting
  • Improved form submission feedback with detailed error messages from the database.
v2.8.3 2026-02-05

🆕 Advanced Customer UID Management

  • NEW: Multi-Prefix Support
  • Admins can now define multiple UID prefixes (one per line) in the settings.
  • Added a dropdown selector for prefixes in all "Add Customer" forms (Admin & Public).
  • NEW: Manual UID Entry Toggle
  • Added a global setting to switch between Automatic and Manual UID number generation.
  • Automatic mode uses the next sequence number and locks the field.
  • Manual mode allows entering a custom number with real-time validation.
  • ENHANCED: Unified UI Design
  • Synchronized the "Add Customer" modal design in [sj_customer_list] with the standalone registration page.
  • Updated the Admin backend "Add Customer" form to support the same prefix/manual logic for a consistent data entry experience.
  • Improved form feedback with "AUTO" vs "MANUAL" badges in the UID field.
v2.7.5 2026-02-04

🚀 Major UI & Experience Refinement

  • ENHANCED: Modal Stacking & Visibility Logic
  • Implemented dynamic DOM reparenting for all modals (appendTo('body')) to bypass parent stacking context restrictions.
  • Set modal z-index to maximum integer value (2147483647) ensuring they always appear above theme headers and footers.
  • Standardized ticket detail modals to 80% viewport width for a more immersive reading experience.
  • Implemented scrollbar-gutter: stable to prevent the "page shaking" layout shift when modals open.
  • ENHANCED: Ticket Interaction Design
  • Removed hover-only requirement for Row Action Buttons. "Share WhatsApp" and "View" buttons are now always visible for faster access.
  • Fixed ticket detail redirection logic. "View" buttons now dynamically resolve the correct destination page using a global URL transient.
  • Optimized modal transition animations (Fade + Slide) for a premium feel.

📋 Documentation & Inventory

  • NEW: Admin Documentation Hub
  • Completely redesigned the admin documentation page with categorized inventories.
  • Documented all 13 core shortcodes including new additions: [sj_activity_table], [sj_dashboard], and [own_company_profile].
  • Added dedicated permission guides and quick setup tips in the admin backend.

🔧 Technical Stability

  • IMPROVED: Database Schema & Activator
  • Synchronized schema.sql with current production features including manual activities and broadband sync.
  • Optimized activator class with better dbDelta handling for cross-site portability.
v2.7.2 2026-02-05

🐛 Bug Fixes

  • FIXED: Ticket Status Update Permission Bug
  • Fixed issue where roles with close_tickets permission checked in admin settings could not update ticket status.
  • Updated permission checks in both admin and public views to use plugin's permission system instead of WordPress default roles.
  • Permission check now properly validates close_tickets permission for all status changes (not just 'closed' status).
  • Form display now respects permission settings from admin panel.
  • Users can now update their own tickets even without explicit permission.

🎨 UI/UX Improvements

  • ENHANCED: Customer Logo Display in Mobile View
  • Customer logo/avatar now prominently displayed in mobile cardview for ticket list.
  • Increased logo size to 48px x 48px for better visibility.
  • Added border and shadow styling for better visual distinction.
  • Logo positioned in header row with proper spacing and alignment.

🔧 Technical Improvements

  • ENHANCED: Database Schema Updates
  • Updated schema version to 2.7.2 for proper migration tracking.
  • Ensured compatibility with existing installations and new installations.
v2.7.1 2026-02-05

🎨 UI/UX Improvements

  • ENHANCED: Mobile View Card Layout for Ticket List
  • Transformed ticket list mobile view to use card-based layout matching Activity Stream.
  • Implemented gradient background, rounded corners, and proper spacing.
  • Added corner accent decoration matching Activity Stream design.
  • Improved card structure with header, body, and footer sections.
  • ENHANCED: Mobile View Optimizations
  • Removed checkbox from mobile view for cleaner interface.
  • Increased card width to 95% of viewport for better space utilization.
  • All ticket information (type, assignee, update time) displayed as badges.
  • Badge type customer positioned after tags and before priority badges.
  • Consistent badge styling across all ticket information.
  • ENHANCED: Badge Information Display
  • Type customer badge with dynamic colors (Corporate, Broadband, Internal).
  • Assignee badge with avatar and name.
  • Update time badge with date and time display.
  • All badges properly ordered and styled for mobile view.

🔧 Technical Improvements

  • ENHANCED: Database Schema Updates
  • Updated schema version to 2.7.1 for proper migration tracking.
  • Ensured compatibility with existing installations and new installations.
v2.7.0 2026-02-05

🔒 Security & Permissions

  • NEW: Role Visibility Settings for Activity Reports
  • Added granular control over which roles can view activities from other roles.
  • New admin interface in Permissions page with role visibility matrix.
  • Allows restricting specific roles from viewing activities of other roles (e.g., NOC cannot view Subscriber activities).
  • Settings stored in WordPress options for easy management.
  • Only applies to users without "View Activity of Any Role" permission.

🎨 UI/UX Improvements

  • ENHANCED: Default Ticket List Filter Behavior
  • Changed default behavior to exclude closed and resolved tickets by default.
  • Converted "Hide Closed Tickets" checkbox to "View Closed Tickets" with inverted logic.
  • Improved user experience by showing only active tickets by default.
  • Users can check "View Closed Tickets" to see all tickets including closed/resolved ones.
  • ENHANCED: Mobile View Tooltip Disabling
  • Disabled all tooltips on mobile view for Activity Log Table, Activity Stream, and Ticket List pages.
  • Improved mobile user experience by removing hover-dependent tooltips.
  • Added CSS and JavaScript checks to prevent tooltip display on mobile devices.
  • Better touch interaction without accidental tooltip triggers.

🔧 Technical Improvements

  • ENHANCED: Database Schema Updates
  • Updated schema version to 2.7.0 for proper migration tracking.
  • Ensured compatibility with existing installations and new installations.
v2.6.9 2026-02-05

🎨 UI/UX Improvements

  • ENHANCED: Mobile View Consistency
  • Made mobile view of Activity Log Table identical to Activity Stream mobile view.
  • Unified card layout, badges, and footer structure across both views.
  • Improved mobile responsiveness with consistent spacing and styling.

🔧 Technical Improvements

  • ENHANCED: WhatsApp Share Feature
  • Added WhatsApp share button to activity detail popup in Activity Log Table.
  • Added WhatsApp share button to activity detail popup in Activity Stream.
  • Removed duplicate WhatsApp share buttons from popup modals.
  • Maintained WhatsApp share buttons in card/row views for quick access.
  • Standardized WhatsApp share format across all views.
v2.6.6 2026-02-05

🐛 Bug Fixes

  • FIXED: WhatsApp Share Multi-line Spacing
  • Explicitly enforced double newlines (\n\n) for perfect blank line spacing in WhatsApp messages.
  • Fixed HTML tag processing order to preserve bold/italic markers from Rich Text content before stripping tags.
  • Ensured consistent space between bold labels and their values across all fields.
v2.6.5 2026-02-05

🐛 Bug Fixes

  • FIXED: WhatsApp Share Message Formatting
  • Refined message structure to match premium display standards.
  • Standardized bold labels with colons inside the markers (e.g., Selengkapnya:).
  • Unified authorship label to Oleh: across all activity types.
  • Ensured perfect synchronization between Activity Table and Activity Stream share formats.
v2.6.4 2026-02-05

🐛 Bug Fixes

  • FIXED: WhatsApp Share Format
  • Fixed WhatsApp share URL encoding to use correct format with proper line breaks.
  • Changed URL endpoint from wa.me to api.whatsapp.com/send/ for better compatibility.
  • Fixed message format to match WhatsApp's expected encoding (removed emoji, adjusted label formatting).
  • Ensured proper blank line spacing (%0A%0A) between message sections.
  • Simplified encoding process using rawurlencode() for automatic newline conversion.

🔧 Technical Improvements

  • ENHANCEMENT: WhatsApp Share Message Format
  • Improved WhatsApp share message structure for better readability.
  • Standardized message format across all activity types (tickets, replies, manual activities).
  • Enhanced URL encoding to ensure proper display in WhatsApp.
v2.6.3 2026-02-05

🐛 Bug Fixes

  • FIXED: Search Functionality in Activity Log Table
  • Replaced live search (AJAX) with standard form-based search for better reliability.
  • Search now works via GET parameters and page reload, ensuring it searches across ALL data in database.
  • Fixed search to properly query entire database instead of just displayed table rows.
  • Improved search stability and accuracy for large datasets.
  • FIXED: Pagination Navigation
  • Completely rebuilt pagination to use standard GET links instead of AJAX.
  • Fixed pagination numbers not working - all page numbers are now clickable and functional.
  • Added Prev/Next buttons for better navigation.
  • Implemented smart pagination display with ellipsis for many pages.
  • All filters (search, user, type, dates, etc.) are preserved when navigating pages.
  • Added smooth scroll to table after pagination/search.

🔧 Technical Improvements

  • ENHANCEMENT: Removed AJAX Dependencies for Search
  • Replaced complex AJAX search system with simple form submission.
  • More reliable and works consistently across all browsers.
  • Better compatibility with server-side filtering and pagination.
  • ENHANCEMENT: Improved Pagination System
  • Pagination now uses standard WordPress query parameters.
  • Better URL structure for bookmarking and sharing filtered views.
  • Enhanced user experience with clear page indicators.
v2.6.2 2026-02-05

🐛 Bug Fixes

  • FIXED: Live Search in Activity Log Table
  • Fixed server-side search functionality to search across all data in database, not just displayed table rows.
  • Search now properly queries up to 50,000 matching results from each source (tickets, replies, manual activities) before pagination.
  • Improved search performance and accuracy for large datasets.
  • FIXED: Pagination Navigation Issue
  • Fixed pagination buttons redirecting to top of page instead of loading selected page.
  • Improved event handler to properly handle both initial and AJAX-generated pagination links.
  • Added proper scroll behavior to table container instead of page top.
  • Enhanced pagination consistency with data-page attributes.

🔧 Technical Improvements

  • ENHANCEMENT: Database Schema Update Support
  • Enhanced activator class with better table creation verification.
  • Improved database update mechanism for cross-site installations.
  • Added error logging for failed table creation attempts.
v2.6.1 2026-02-04

🐛 Bug Fixes

  • FIXED: Mobile Responsiveness for "Create Activity" Modal
  • Standardized modal row stacking on mobile devices.
  • Improved layout for Date, Time, and Topic fields to prevent cut-off.
  • Unified button styling and vertical stacking in modal footers for better tap targets.
  • FIXED: Assigned To Display Name
  • Now correctly displays localized role names (e.g., "Subscriber") instead of raw slugs (e.g., "subscriber").
  • Implemented sj_get_role_display_name helper across Ticket Detail and List views.

🎨 UI/UX Improvements

  • ENHANCEMENT: Standardized modal headers and interactive elements across all frontend popups.
  • ENHANCEMENT: Improved visual consistency for "Cancel" and "Submit" buttons in activity forms.
v2.6.0 2026-02-03

🆕 New Features

  • NEW: "Create Activity" Modal in Activity Log Table ([sj_activity_table])
  • Modern modal interface for creating manual activities directly from the table view.
  • Interactive Date & Time fields with automatic current timestamp pre-filling.
  • Dynamic Topic selection from existing report topics.
  • Premium TinyMCE rich text editor integration for activity descriptions.
  • WordPress Media Library Integration: Seamless image upload and insertion into activity content.
  • Subtopics Support: The "Create Activity" and "Create Ticket" forms now display subcategories grouped by their main topics using optgroup for better organization.
  • Smooth animations and refined UI with interactive hover effects.

🎨 UI/UX Improvements

  • ENHANCEMENT: Redesigned Header Layout for Activity Table
  • Increased title size and improved typography.
  • Integrated "Create Activity" button with gradient background and micro-animations.
  • Better vertical spacing and visual separation between header, filters, and table.
  • Optimized modal width (80% viewport) and form field heights (50px standardized).

🔧 Technical Improvements

  • ENHANCEMENT: Standardized database schema and activation logic for multi-site deployment.
  • ENHANCEMENT: Optimized TinyMCE initialization logic for reliable modal performance.
  • ENHANCEMENT: Improved AJAX form submission with secure nonce verification.
v2.5.0 2026-02-03

🆕 New Features

  • NEW: Comprehensive Dashboard Shortcode [sj_dashboard] with multiple visualization components:
  • Line Chart: Activity trend visualization (daily/weekly/monthly) with date range filters
  • Pie Chart - Employee: Interactive pie chart showing activity distribution per employee with drill-down capability
  • Pie Chart - Role: Activity aggregation by employee role/position
  • Topic Activity Recap Table: Data table with sorting, searching, and pagination showing topic activity summary
  • Activity & Topic Matrix: Heat map table cross-tabulating activity count per topic
  • Topic-Employee Matrix: Comprehensive matrix table matching topic completion by employee
  • Shows total activities per topic-employee combination
  • Breakdown display (Tickets, Replies, Manual activities)
  • Heat map visualization with color coding
  • Sticky header and first column for easy navigation
  • Search/filter functionality for topics and employees
  • Export to PDF and Excel
  • Responsive design with horizontal scroll for many columns
  • NEW: Database functions for dashboard data:
  • get_activity_trend_data() - Activity trend over time
  • get_activity_by_employee() - Activity counts by employee
  • get_activity_by_role() - Activity counts by role
  • get_topic_activity_recap() - Topic activity summary with pagination
  • get_activity_topic_matrix() - Activity-topic cross-tabulation
  • get_topic_employee_matrix() - Topic-employee completion matrix

🎨 UI/UX Improvements

  • ENHANCEMENT: Dashboard components with consistent styling and color scheme
  • ENHANCEMENT: Loading states and error handling for all dashboard components
  • ENHANCEMENT: Interactive tooltips and hover effects on matrix tables
  • ENHANCEMENT: Responsive design for mobile, tablet, and desktop views

🔧 Technical Improvements

  • ENHANCEMENT: AJAX-powered data fetching for dashboard components
  • ENHANCEMENT: Optimized database queries with proper date filtering
  • ENHANCEMENT: Chart.js integration for visualizations
  • ENHANCEMENT: jsPDF and SheetJS integration for export functionality
v2.4.8 2026-02-03

🆕 New Features

  • NEW: Added "Hide Closed Tickets" checkbox filter on [sj_ticket_list] shortcode
  • Checkbox in filter bar to hide tickets with status: resolved, closed, cancelled
  • Filter works with database statuses that have is_closed = 1
  • Preferensi tersimpan di URL untuk bookmarking/sharing
  • Tidak konflik dengan filter status lainnya

🐛 Bug Fixes

  • FIXED: Tooltip for conversation participant avatar badge
  • Tooltip sekarang muncul langsung saat hover (tanpa delay)
  • Menggunakan position: fixed dengan z-index tertinggi (2147483647)
  • Tooltip tidak terpotong oleh section tabel atau komponen lain
  • Posisi dihitung secara dinamis berdasarkan viewport
  • Menambahkan JavaScript untuk update posisi saat scroll/resize
  • FIXED: Service Plan Name extraction pada customer detail page
  • Sekarang menampilkan Service Plan Name yang benar (e.g., "30Mbps-PBR-PROMO")
  • Tidak lagi menampilkan Profile ID sebagai fallback
  • Mencari key serviceplan (lowercase) terlebih dahulu sesuai format API
  • Mencari di multiple data sources: $data, $raw_data, $raw_payload
  • Validasi untuk mencegah menampilkan MongoDB ObjectId sebagai plan name

🎨 UI/UX Improvements

  • ENHANCEMENT: Improved tooltip styling
  • Lebar minimum 140px dan maksimum 250px
  • Background tooltip lebih proporsional
  • Styling konsisten dengan design system
v2.4.7 2026-02-03

🎨 Layout Standardization

  • ENHANCEMENT: Standardized wrapper width across all shortcodes to 90vw for consistent layout
  • ENHANCEMENT: Applied uniform width styling (90vw with centering) to all frontend shortcodes:
  • sj_activity_table - Updated from 100% to 90vw with proper centering
  • sj_activity_list - Updated from 900px max-width to 90vw with proper centering
  • sj_add_customer (onboarding wrapper) - Updated from 100% to 90vw with proper centering
  • own_company_profile - Added 90vw width styling with proper centering
  • ENHANCEMENT: All shortcodes now use consistent centering with margin-left: calc(50% - 45vw) !important
  • ENHANCEMENT: Unified styling properties across all wrappers:
  • font-family: 'Inter', sans-serif
  • background-color: var(--sj-bg, #f8fafc)
  • border-radius: 12px
  • padding: 30px
  • overflow-x: auto
  • position: relative
  • box-sizing: border-box
  • ENHANCEMENT: Responsive design maintained with proper width adjustments in media queries

📋 Previously Standardized Shortcodes

  • sj_ticket_list (sj-dashboard-wrapper)
  • sj_create_ticket (sj-create-wrapper)
  • sj_customer_list (sj-list-wrapper)
  • sj_ticket_view (sj-detail-wrapper)
  • sj_customer_detail (sj-detail-wrapper)
  • sj_report_list (sj-report-wrapper)
  • sj_report_detail (sj-report-wrapper)
v2.4.6 2026-02-03

🎨 Layout & Display Enhancements

  • ENHANCEMENT: Activity Table wrapper width set to 100% to match theme body width, eliminating empty side spaces
  • ENHANCEMENT: Date format changed from "d M Y" (14 Jan 2026) to "d/m/Y" (14/01/2026) for more compact display
  • ENHANCEMENT: Further optimized Date & Time column width from 75px to 65px with reduced padding (3px → 2px)
  • ENHANCEMENT: Increased Summary & Content column width from auto to 40% for better content visibility
  • NEW: Added status badge display for Ticket and Reply activities in Type column
  • Status badge shows ticket status (Open, In Progress, Resolved, Closed, etc.)
  • Badge colors follow ticket status configuration from database
  • Compact design with smaller font (8px) and padding
  • NEW: Added "Internal" option to Customer Type filter dropdown
  • Always available in filter dropdown even if not in database
  • Properly filters internal tickets and manual activities
  • ENHANCEMENT: Improved badge styling in Type column
  • Changed "NEW TICKET" to "Ticket" (removed uppercase transformation)
  • Changed "REPLY" to "Reply" and "MANUAL" to "Manual" for consistency
  • Reduced font size from 10px to 9px
  • Reduced padding and gap for more compact display
  • ENHANCEMENT: Table layout optimization
  • Using table-layout: fixed to prevent horizontal scrolling
  • Removed min-width constraints that caused overflow
  • Better overflow handling with text-overflow: ellipsis on all columns
  • Optimized column width distribution
v2.4.5 2026-02-03

🐛 Bug Fixes & UI Optimizations

  • FIXED: Query count bug in Activity Table - fixed missing $table_customers variable definition in get_activities_count() function
  • FIXED: Query count accuracy - changed from COUNT(*) to COUNT(DISTINCT) to prevent duplicate counts from JOIN operations
  • ENHANCEMENT: Optimized Activity Table layout for better space utilization
  • Reduced Date & Time column width from 12% to 8% with reduced padding (20px → 10px)
  • Reduced date/time font sizes (13px → 12px for date, 11px → 10px for time)
  • Reduced shift badge font size from 11px to 9px with smaller padding and icon
  • Reduced shift column width from 15% to 12%
  • Increased Summary & Content column width from 30% to 32%
  • ENHANCEMENT: Reduced checkbox sizes throughout Activity Table
  • Control panel checkbox: 20px × 20px → 16px × 16px
  • Table header checkbox: 18px × 18px → 14px × 14px
  • Row checkboxes: 18px × 18px → 14px × 14px
  • Checkbox column width: 40px → 35px
  • Reduced padding for checkbox columns
  • ENHANCEMENT: Improved table display to prevent horizontal scrolling while maintaining readability
v2.4.4 2026-02-03

🐛 Bug Fixes & New Features

  • FIXED: Critical error on [sj_activity_list] shortcode - resolved $this->db scope issue by properly passing database instance from shortcode handler
  • FIXED: Syntax error in activity list partial file - corrected if-elseif structure for customer logo display
  • NEW: Mass delete functionality in Activity Table ([sj_activity_table] shortcode)
  • Select individual activities or use "Select All" checkbox
  • Delete multiple activities at once with confirmation dialog
  • Visual feedback with fade animations and status messages
  • Admin-only feature with proper security checks
  • ENHANCEMENT: Improved checkbox handling to prevent modal popup when selecting activities
  • ENHANCEMENT: Better visual feedback for mass delete operations
  • ENHANCEMENT: Synchronized select all checkboxes between header and control panel
v2.4.3 2026-02-03

🎯 Modal Enhancement & UI Improvements

  • NEW: Added "View Ticket" button in activity modal popup when activity originates from a ticket
  • ENHANCEMENT: Modal popup width changed from 90%/800px to 80% for better screen utilization
  • ENHANCEMENT: Improved modal footer button layout with proper spacing and ticket navigation
  • ENHANCEMENT: Better URL handling for ticket links in modal popups (handles existing query strings)
  • ENHANCEMENT: Consistent "View Ticket" button styling across Activity Table and Activity List modals
v2.4.2 2026-02-03

🖼️ Internal Ticket Logo Display Fix

  • FIXED: Internal ticket logo now always displays company logo from settings (sj_company_logo)
  • ENHANCEMENT: Company logo is prioritized for internal tickets in Activity Table and Activity Stream
  • ENHANCEMENT: Fallback to company logo if profile_pic is empty for internal tickets
  • ENHANCEMENT: Improved logo display logic in both Activity Table and Activity List views
v2.4.1 2026-02-03

🔧 Internal Ticket Display Fix

  • FIXED: Internal tickets now correctly display as "INTERNAL" customer type in Activity Table and Activity Stream
  • FIXED: Internal ticket customer name and type properly set to "INTERNAL" in database queries
  • ENHANCEMENT: Internal ticket logo display improved in Activity List
  • ENHANCEMENT: Database queries updated to use CASE statements for proper internal ticket handling
v2.4.0 2026-02-03

🎨 Responsive Design & Filter Enhancement Update

  • NEW: Filter by Shift - Added shift filter dropdown in Activity Table
  • NEW: Filter by Customer Type - Added customer type filter (Corporate, Broadband, Internal)
  • ENHANCEMENT: Responsive Create Ticket Form - Fully responsive design for mobile devices
  • ENHANCEMENT: Activity Table Employee Column - Fixed content cut-off issues, improved wrapping
  • ENHANCEMENT: Role Badge Styling - Removed icons, smaller font size (9px) for cleaner look
  • ENHANCEMENT: Filter Layout - Centered all filters in box section, optimized sizing
  • ENHANCEMENT: Query Count Display - Removed "TOTAL" text label for cleaner UI
  • FIXED: Mobile responsive issues on create ticket page
  • FIXED: Employee column content overflow in activity table
  • FIXED: Filter elements alignment and spacing
v2.3.0 2026-02-03

📏 Operational UI Excellence

  • Shift Badge Visibility: Increased Shift column width to 15% and removed overflow constraints to prevent badge clipping.
  • Layout Recalibration: Optimized column widths for Date, Employee, and Customer to provide a more balanced and high-density information display.
  • Geometry Standardization: Fully unified circular avatar logic across all core portal components.
v2.2.9 2026-02-03

🎨 Visual Geometry Refinement

  • Circle Avatar Fix: Enforced a strict 1:1 circular aspect ratio for employee avatars using min-width/height and flex-shrink constraints.
  • Improved Scaling: Recalibrated employee avatar size for better proportion with customer logos and text meta.
  • Render Optimization: Ensured high-definition rendering with better overflow handling for circular images.
v2.2.8 2026-02-03

📏 Layout Optimization

  • Table Width Recalibration: Increased Type column width to prevent badge clipping.
  • Smart Sizing: Optimized Shift column width for tighter, more efficient spacing.
  • UX Refinement: Removed restrictive overflow on type badges for better visibility.
v2.2.7 2026-02-03

🎨 Cross-Plugin Styling & UI Refinement

  • Dynamic Shift Colors: Shift badges now synchronize automatically with colors (Background & Text) configured in the Employee Schedule plugin.
  • Circular Avatars: Standardized employee avatars with a high-definition circular frame and consistent border styling across all activity views.
  • Activity List Enhancement: Integrated shift tracking badges into the Activity List stream.
  • Modal Consistency: Updated activity detail modals to display operational shift context with visual parity.
v2.2.6 2026-02-03

📊 Shift Tracking & Operational Context

  • New Shift Column: Integrated a dedicated "Shift" column into the Activity Table.
  • Data Layer Integration: Updated backend queries to dynamically fetch shift information for tickets, replies, and manual logs.
  • Mobile Support: Added premium shift badges to the mobile card metadata layout.
  • UI Recalibration: Optimized column widths for enhanced readability and information density.
v2.2.5 2026-02-03

🎨 UI Synchronization & Visual Parity

  • Activity Table Revamp: Achieved 100% visual parity between the Activity Table and the Premium Activity Stream.
  • Mobile Card Layout: Re-engineered mobile cards to mirror the Activity Stream exactly, including employee/time headers, metadata grouping, and decorative corner gradients.
  • Enhanced Modal Popup: Fully synchronized the Activity Table detail modal with the Activity Stream popup, featuring modern headers, user badges, and improved vertical flow.
  • Dynamic Activity Counter: Implemented a real-time "Total Activities" badge that dynamically synchronizes with filters and live searches.
  • Image Optimization: Added premium high-end responsive styling for images and screenshots inside the detail modal.
  • Dashboard Refinement: Relocated and integrated activity statistics directly into the action bar for better focus and spatial efficiency.
  • Data Accuracy: Corrected column mapping (Time/Employee) in the activity table for professional clarity.
v2.2.4 2026-02-02
v2.2.3 2026-02-02

🔄 Integration & Reliability

  • Unified Activity Tracking
  • Refactored activity count logic to provide a single source of truth for employee productivity.
  • Enhanced integration with Employee Schedule plugin to display accurate activity counts (tickets, replies, and manual entries) on calendars and shift boards.
  • Improved SJ_Ticket_DB::get_reports_by_date_with_counts for better performance and data consistency across native and imported reports.
  • Schema & Installation
  • Standardized schema.sql to match the current production database structure perfectly.
  • Improved SJ_Ticket_Activator to ensure seamless installation and updates on new WordPress environments.
  • Fixed minor column definition mismatches in sj_ticket_daily_reports and sj_ticket_broadband_customers.
v2.2.2 2026-02-02

🌐 Broadband & Customer Intelligence

  • "Type" Column in Customer List
  • New dedicated column in the public customer directory table to display customer categorization (Corporate, Broadband, Dedicated, etc.).
  • Color-coded badges for quick type identification.
  • Adjusted table grid layout for optimal column spacing on all screens.
  • Broadband Cleanup Tool
  • Admin-only feature to bulk delete broadband customers who have zero associated tickets.
  • Helps keep the database clean from orphan synchronized records.
  • Includes confirmation dialog and real-time deletion feedback.
  • Smart Services Logic
  • Broadband customers now automatically display a "BROADBAND" service tag, even if no manual services are assigned.
  • Simplifies the list view for high-volume consumer accounts.
  • Ticket Creation Filtering
  • When selecting "Corporate" ticket type, Broadband-type customers are now automatically filtered out of the selection dropdown.
  • Reduces clutter and potential selection errors in the support workflow.
  • Activity Timeline Context
  • Customer logos and names now consistently appear even on "Reply" activity cards.
  • Improved data fetching logic for activities to ensure customer context is never lost.
  • PIC Duplication
  • Fixed issue where PIC names could appear twice or incorrectly in the ticket requester dropdown.
  • CSS Column Alignment
  • Corrected grid template definitions for the customer list to accommodate the new Type column without horizontal overflow.
  • Reply Activity Subject
  • Ensured that reply activities correctly show the parent ticket's subject as their title in global activity feeds.
v2.2.1 2026-02-02

🐛 Bug Fixes

Fixed

  • Invalid Report Filtering
  • Fixed issue where reports with invalid titles (e.g., "KONEKSI OFF") were being displayed in the daily reports list
  • Added filter to exclude reports containing "KONEKSI OFF", "CONNECTION OFF", or "KONEKSI MATI" in their titles
  • Applied filter to both native reports and imported tickets (is_report = 1)
  • Ensures only valid daily activity reports are displayed
v2.2.0 2026-02-02

📱 Mobile Responsive & UI Refinements

Added

  • Comprehensive Mobile Responsive Design
  • Full responsive support for all pages (Report List, Report Detail, Activity List, Customer Detail)
  • Aggressive CSS overrides for inline styles on mobile
  • JavaScript-based dynamic layout adjustments
  • Media queries for tablet (768px), mobile (480px), and very small screens (360px)
  • Overflow prevention for all elements
  • Word wrapping for all text content
  • Enhanced Comment System
  • Smaller comment badge with icon and border design
  • Reply count badge positioned on top-right of icon
  • Improved tooltip positioning (centered below icon)
  • Better hover effects and visual feedback
  • Improved Form Elements
  • Consistent field heights (44px) across all forms
  • Topic dropdown with proper styling and custom arrow
  • Enhanced "Send" button with text label
  • Better form field alignment and spacing

Improved

  • Mobile Layout
  • All grid layouts convert to single column on mobile
  • All fixed widths become responsive (100%)
  • Tables become block layout with stacked rows
  • Images automatically resize to fit container
  • Buttons become full-width for easier tapping
  • Comment UI
  • Time ago and Reply button moved next to avatar
  • Smaller font sizes for better mobile display
  • Improved spacing and alignment
  • Better visual hierarchy
  • Filter Fields
  • Dropdown fields aligned with search bar
  • Consistent heights and styling
  • Custom dropdown arrows
  • Better focus states

Fixed

  • Responsive Issues
  • Fixed elements overflowing on smartphone screens
  • Fixed horizontal scroll issues
  • Fixed grid layouts not adapting to mobile
  • Fixed tables breaking layout on small screens
  • Fixed inline styles not being overridden
  • UI Consistency
  • Fixed field heights inconsistency
  • Fixed button alignment issues
  • Fixed spacing problems on mobile
  • Fixed text truncation issues

Technical Details

  • CSS Enhancements
  • Aggressive media queries with !important flags
  • Attribute selectors for inline style overrides
  • Comprehensive overflow prevention
  • Word wrapping and text breaking
  • JavaScript Enhancements
  • Dynamic layout adjustment on load and resize
  • Orientation change handling
  • Inline style override functions
  • Database Schema
  • All tables properly defined in activator
  • Automatic schema update on plugin activation
  • Version tracking for seamless updates
v2.1.0 2026-02-02

🎨 UI/UX Enhancements & Image Upload

Added

  • Direct Image Upload System
  • Custom "Upload Image" button with gradient styling
  • Direct file upload (no media library selection)
  • Real-time progress bar with percentage indicator
  • Upload status messages (success/error)
  • Loading spinner during upload
  • Automatic image insertion into TinyMCE editor
  • AJAX-based upload with proper error handling
  • Report Detail Page Improvements
  • Removed report summary section for cleaner layout
  • Resized and centered infoboxes with modern colors
  • Sequential number badges for activities
  • Image lightbox with next/previous navigation
  • Keyboard support (ESC, Arrow keys) for lightbox
  • Enhanced activity timeline display
  • Activity Creation Form Enhancements
  • Topic dropdown (replacing activity title input)
  • Enhanced WP_Editor with alignment and image toolbar
  • Direct upload button on both list and detail pages
  • Consistent styling across all forms
  • Report List Page Features
  • Total reports count button in header
  • Consistent button heights and styling
  • Enhanced search bar with white background on focus
  • Improved filter field heights (44px consistent)
  • Centered report cards layout

Improved

  • Image Upload Experience
  • Native file picker (no WordPress media library)
  • Progress visualization during upload
  • Better error messages
  • File type and size validation (10MB max)
  • Automatic WordPress attachment creation
  • Modal & Lightbox
  • Maximum z-index (2147483647) for all modals
  • Click-outside-to-close functionality
  • ESC key support for closing
  • Proper backdrop handling
  • Lightbox navigation for multiple images
  • Form Styling
  • Gradient buttons matching theme colors
  • Consistent padding and border-radius
  • Enhanced hover effects
  • Better visual hierarchy

Fixed

  • Upload Functionality
  • Fixed "Upload failed: No file selected" error
  • Resolved media button not appearing
  • Fixed TinyMCE editor not accepting images
  • Proper nonce verification for uploads
  • Modal Issues
  • Fixed modals being covered by theme header
  • Resolved TinyMCE editor not clickable
  • Fixed click-outside-to-close not working
  • Improved toolbar display in TinyMCE
  • Lightbox
  • Fixed lightbox not closing on X button click
  • Fixed lightbox not closing on outside click
  • Fixed lightbox not closing on ESC key
  • Proper z-index management
  • UI Consistency
  • Fixed button height inconsistencies
  • Aligned all filter fields to 44px height
  • Centered report cards properly
  • Fixed search bar text visibility on focus

Technical Details

  • Database Schema
  • All tables properly defined in activator
  • Automatic schema update on plugin activation
  • Version tracking via sj_ticket_support_db_version option
  • JavaScript Enhancements
  • Direct upload handlers with progress simulation
  • Lightbox navigation system
  • Enhanced modal management
  • Better event handling and cleanup
  • CSS Improvements
  • Gradient buttons with hover effects
  • Progress bar animations
  • Lightbox styling with navigation
  • Consistent spacing and alignment
v2.0.0 2026-02-02

🎉 Major Update - Activity Tracking & Advanced Comments

Added

  • Daily Activity Report System
  • Report card display with employee statistics
  • Activity and reply count per report
  • Filter by employee, shift, and date
  • Pagination support for large datasets
  • Manual report creation functionality
  • Quick "Create Activity" button for existing reports
  • Advanced Comment System
  • Interactive comment bubbles showing total count
  • Hover tooltips with comment preview (15 most recent)
  • Support for nested replies (comments on comments)
  • Visual hierarchy with indentation and color coding
  • AJAX-powered tooltip loading (300ms hover delay)
  • Avatar display with role-specific border colors
  • User context (name, avatar, timestamp) for each comment
  • Activity Stream ([sj_activity_list])
  • Real-time activity feed across all tickets and reports
  • Comment bubble integration
  • Smart filtering by user and activity type
  • Type badges (Ticket, Reply, Manual) with gradient styling
  • Origin labels (Via Report, Via Ticket)
  • Mass delete functionality for administrators
  • Modal popup for full activity details
  • Quick navigation to source ticket/report
  • Report Management
  • [sj_daily_reports] shortcode for report cards
  • [sj_view_report] shortcode for report details
  • Timeline view of activities
  • Activity addition to existing reports
  • Shift information display
  • Role badges below employee names

Improved

  • User Interface
  • Modern card-based design with gradients
  • Consistent 44px height for all filter fields
  • Enhanced typography with Inter font family
  • Color-coded activity types with shadows
  • Smooth animations and transitions
  • Responsive layouts for mobile devices
  • Decorative corner accents on cards
  • Database Queries
  • Optimized reply count calculation
  • Efficient JOIN operations for user data
  • Proper indexing for ticket_id relationships
  • Separate queries for native and imported reports
  • Performance
  • AJAX tooltip loading to reduce initial page load
  • Lazy loading of comment data
  • Debounced hover events (300ms delay)
  • Efficient reply count subqueries
  • Limited tooltip display (15 comments max)
  • Z-index Management
  • Maximum z-index (999999) for tooltips
  • Proper stacking context hierarchy
  • Overflow handling for card elements
  • Modal overlay improvements

Fixed

  • Report Date Grouping
  • Fixed activities appearing under wrong dates
  • Implemented 3-level priority: title date → report date → created date
  • Regex-based date extraction from activity titles
  • Tooltip Display
  • Fixed tooltip being cut off by card overflow
  • Resolved z-index conflicts with theme headers
  • Proper positioning with arrow indicators
  • Click-outside-to-close functionality
  • Modal Issues
  • TinyMCE editor not clickable in modals
  • Modal covered by theme header
  • Re-initialization of TinyMCE on modal open
  • Pointer events management
  • Separate backdrop for click handling
  • Form Submissions
  • "Create Activity" not saving to database
  • Converted to AJAX submission
  • Added proper nonce verification
  • Success/error message display
  • Form validation improvements
  • Reply Count Accuracy
  • Fixed count calculation for nested replies
  • Proper parent_id handling
  • Accurate count display in comment bubbles

Technical Details

  • Database Schema
  • Added support for parent_id in replies table
  • Reply count calculation via subqueries
  • Proper foreign key relationships
  • JavaScript Enhancements
  • AJAX handlers for tooltip loading
  • Debounced hover events
  • Modal management functions
  • Form submission via fetch API
  • CSS Improvements
  • Flexbox layouts for centering
  • CSS gradients for modern look
  • Custom scrollbar styling
  • Animation keyframes
  • Media queries for responsiveness
  • Security
  • Nonce verification for all AJAX calls
  • Input sanitization
  • Output escaping
  • Permission checks
v1.2.6 Previous Version

Initial Features

  • Basic ticket management system
  • Customer relationship management
  • Ticket status customization
  • User permissions
  • Email notifications
  • Import/Export functionality
  • 2.0.0 - Major update with activity tracking and comments
  • 1.2.6 - Initial stable release

From 1.x to 2.0.0

Database Changes in 2.0.0

  • Reply count fields added to queries
  • Parent_id support for nested replies
  • No new tables (schema compatible)
  • Automatic migration on activation
  • Email: support@superjagad.com
  • Documentation: /wp-admin/ → SJ Ticket Support → Documentation
  • Lead Developer: SuperJagad Team
  • Version 2.0.0: Major refactor and feature additions
  • WordPress community for best practices
  • Users for feedback and feature requests