xref: /plugin/calendar/CHANGELOG.md (revision 1d05cddc261a22328c4671319b0963b94fa1a7e9)
1*1d05cddcSAtari911# Calendar Plugin Changelog
2*1d05cddcSAtari911
3*1d05cddcSAtari911## Version 3.10.5 (2026-02-06) - TIME SORTING & THINNER ADD BAR
4*1d05cddcSAtari911- **Added:** Events now sorted by time when clicking week grid days
5*1d05cddcSAtari911- **Changed:** Add Event bar now ultra-thin (6px height, down from 12px)
6*1d05cddcSAtari911- **Improved:** Events with times appear first, sorted chronologically
7*1d05cddcSAtari911- **Improved:** All-day events appear after timed events
8*1d05cddcSAtari911- **Changed:** Add Event bar font size reduced to 7px (from 10px)
9*1d05cddcSAtari911- **Changed:** Add Event bar now has 0 padding and fixed 6px height
10*1d05cddcSAtari911
11*1d05cddcSAtari911### Sorting Logic:
12*1d05cddcSAtari911- Events with times sorted by time (earliest first)
13*1d05cddcSAtari911- All-day events (no time) appear at the end
14*1d05cddcSAtari911- Sort algorithm: Convert time to minutes (HH:MM → total minutes) and compare
15*1d05cddcSAtari911- Chronological order: 8:00 AM → 10:30 AM → 2:00 PM → All-day event
16*1d05cddcSAtari911
17*1d05cddcSAtari911### Add Event Bar Changes:
18*1d05cddcSAtari911- **Height**: 6px (was ~12px with padding)
19*1d05cddcSAtari911- **Padding**: 0 (was 4px top/bottom)
20*1d05cddcSAtari911- **Font Size**: 7px (was 10px)
21*1d05cddcSAtari911- **Letter Spacing**: 0.3px (was 0.5px)
22*1d05cddcSAtari911- **Line Height**: 6px to match height
23*1d05cddcSAtari911- **Vertical Align**: Middle for text centering
24*1d05cddcSAtari911
25*1d05cddcSAtari911## Version 3.10.4 (2026-02-06) - ADD EVENT BAR
26*1d05cddcSAtari911- **Added:** Thin orange "Add Event" bar between header and week grid
27*1d05cddcSAtari911- **Added:** Quick access to event creation from sidebar widget
28*1d05cddcSAtari911- **Styled:** Sleek design with hover effects and glow
29*1d05cddcSAtari911- **Interactive:** Clicks navigate to Manage Events tab in admin
30*1d05cddcSAtari911- **Improved:** User workflow for adding events from sidebar
31*1d05cddcSAtari911
32*1d05cddcSAtari911### Visual Design:
33*1d05cddcSAtari911- Orange background (#ff9800) matching Today section color
34*1d05cddcSAtari911- 4px top/bottom padding for thin, sleek appearance
35*1d05cddcSAtari911- Black text with white text-shadow for visibility
36*1d05cddcSAtari911- Hover effect: Darkens to #ff7700 with enhanced glow
37*1d05cddcSAtari911- Orange glow effect (box-shadow) matching Matrix theme
38*1d05cddcSAtari911- Centered "+ ADD EVENT" text (10px, bold, letter-spacing)
39*1d05cddcSAtari911
40*1d05cddcSAtari911### Technical Changes:
41*1d05cddcSAtari911- Added between header close and renderWeekGrid() call
42*1d05cddcSAtari911- Inline onclick handler navigates to admin manage tab
43*1d05cddcSAtari911- Inline onmouseover/onmouseout for hover effects
44*1d05cddcSAtari911- Smooth 0.2s transition on all style changes
45*1d05cddcSAtari911
46*1d05cddcSAtari911## Version 3.10.3 (2026-02-06) - UI IMPROVEMENTS & CACHE BUTTON RELOCATION
47*1d05cddcSAtari911- **Changed:** Update Plugin tab is now the default tab when opening admin
48*1d05cddcSAtari911- **Moved:** Clear Cache button relocated from Outlook Sync tab to Update Plugin tab
49*1d05cddcSAtari911- **Improved:** Clear Cache button now larger and more prominent with helpful description
50*1d05cddcSAtari911- **Improved:** Tab order reorganized: Update Plugin (default) → Outlook Sync → Manage Events
51*1d05cddcSAtari911- **Removed:** Debug console.log statements from day event display
52*1d05cddcSAtari911- **Fixed:** Cache clear now redirects back to Update Plugin tab instead of Config tab
53*1d05cddcSAtari911
54*1d05cddcSAtari911### UI Changes:
55*1d05cddcSAtari911- Update Plugin tab opens by default (was Config/Outlook Sync tab)
56*1d05cddcSAtari911- Clear Cache button prominently displayed at top of Update Plugin tab
57*1d05cddcSAtari911- Orange ��️ button (10px 20px padding) with confirmation dialog
58*1d05cddcSAtari911- Help text: "Clear the DokuWiki cache if changes aren't appearing or after updating the plugin"
59*1d05cddcSAtari911- Success/error messages display on Update Plugin tab after cache clear
60*1d05cddcSAtari911- Tab navigation reordered to put Update first
61*1d05cddcSAtari911
62*1d05cddcSAtari911### Technical Changes:
63*1d05cddcSAtari911- Default tab changed from 'config' to 'update' in html() method
64*1d05cddcSAtari911- Tab navigation HTML reordered to show Update Plugin tab first
65*1d05cddcSAtari911- clearCache() method now redirects with 'update' tab parameter
66*1d05cddcSAtari911- Removed Clear Cache button from renderConfigTab()
67*1d05cddcSAtari911- Added Clear Cache button to renderUpdateTab() with message display
68*1d05cddcSAtari911
69*1d05cddcSAtari911## Version 3.10.2 (2026-02-06) - EVENT HTML RENDERING FIX
70*1d05cddcSAtari911- **Fixed:** Event formatting (bold, links, italic) now displays correctly when clicking week grid days
71*1d05cddcSAtari911- **Added:** renderDokuWikiToHtml() helper function to convert DokuWiki syntax to HTML
72*1d05cddcSAtari911- **Changed:** Events in weekEvents now pre-rendered with title_html and description_html fields
73*1d05cddcSAtari911- **Improved:** DokuWiki syntax (**bold**, [[links]], //italic//, etc.) properly rendered in clicked day events
74*1d05cddcSAtari911
75*1d05cddcSAtari911### Technical Changes:
76*1d05cddcSAtari911- Added renderDokuWikiToHtml() private function using p_get_instructions() and p_render()
77*1d05cddcSAtari911- Events added to weekEvents now include pre-rendered HTML versions
78*1d05cddcSAtari911- title_html and description_html fields populated before json_encode()
79*1d05cddcSAtari911- JavaScript now receives properly formatted HTML content
80*1d05cddcSAtari911
81*1d05cddcSAtari911## Version 3.10.1 (2026-02-06) - TOOLTIP FIX & WEATHER & CACHE BUTTON
82*1d05cddcSAtari911- **Fixed:** System tooltip functions now use sanitized calId (showTooltip_sidebar_abc123 instead of showTooltip_sidebar-abc123)
83*1d05cddcSAtari911- **Fixed:** HTML event handlers now call correctly sanitized function names
84*1d05cddcSAtari911- **Fixed:** Weather temperature now updates correctly in sidebar widget
85*1d05cddcSAtari911- **Added:** Weather update function to sidebar widget JavaScript
86*1d05cddcSAtari911- **Added:** "Clear Cache" button in admin panel for easy cache refresh
87*1d05cddcSAtari911- **Added:** Default weather location set to Irvine, CA when geolocation unavailable
88*1d05cddcSAtari911- **Improved:** All tooltip functions now work correctly on system status bars
89*1d05cddcSAtari911
90*1d05cddcSAtari911### Technical Changes:
91*1d05cddcSAtari911- Changed tooltip function names to use $jsCalId instead of $calId
92*1d05cddcSAtari911- Changed HTML onmouseover/onmouseout to use $jsCalId
93*1d05cddcSAtari911- Added updateWeather() function to sidebar widget
94*1d05cddcSAtari911- Added getWeatherIcon() function to sidebar widget
95*1d05cddcSAtari911- Added clearCache() method in admin.php
96*1d05cddcSAtari911- Added recursiveDelete() helper method in admin.php
97*1d05cddcSAtari911- Admin UI now has ��️ Clear Cache button alongside Export/Import
98*1d05cddcSAtari911
99*1d05cddcSAtari911## Version 3.10.0 (2026-02-06) - JAVASCRIPT FIXES
100*1d05cddcSAtari911- **Fixed:** JavaScript syntax error "Missing initializer in const declaration"
101*1d05cddcSAtari911- **Fixed:** Event links and formatting not displaying in clicked day events
102*1d05cddcSAtari911- **Fixed:** Sanitized calId to jsCalId by replacing dashes with underscores
103*1d05cddcSAtari911- **Changed:** Event titles now use `title_html` field to preserve HTML formatting
104*1d05cddcSAtari911- **Changed:** Event descriptions now use `description_html` field to preserve links and formatting
105*1d05cddcSAtari911- **Improved:** All JavaScript variable names now use valid syntax
106*1d05cddcSAtari911- **Improved:** Links, bold, italic, and other HTML formatting preserved in events
107*1d05cddcSAtari911
108*1d05cddcSAtari911### Technical Changes:
109*1d05cddcSAtari911- Added variable sanitization: `$jsCalId = str_replace('-', '_', $calId);`
110*1d05cddcSAtari911- JavaScript variables now use underscores instead of dashes
111*1d05cddcSAtari911- Event HTML rendering preserves DokuWiki formatting
112*1d05cddcSAtari911- Fixed "showTooltip_sidebar is not defined" errors
113*1d05cddcSAtari911- Fixed "showDayEvents_cal is not defined" errors
114*1d05cddcSAtari911
115*1d05cddcSAtari911## Version 3.9.9 (2026-02-06) - JAVASCRIPT LOADING ORDER FIX
116*1d05cddcSAtari911- **Fixed:** Critical JavaScript loading order issue causing ReferenceError
117*1d05cddcSAtari911- **Fixed:** Functions now defined BEFORE HTML that uses them
118*1d05cddcSAtari911- **Changed:** Consolidated all JavaScript into single comprehensive script block
119*1d05cddcSAtari911- **Removed:** ~290 lines of duplicate JavaScript code
120*1d05cddcSAtari911- **Added:** Shared state management with `sharedState_[calId]` object
121*1d05cddcSAtari911- **Improved:** System tooltip functions now work correctly
122*1d05cddcSAtari911- **Improved:** Week grid click events now work correctly
123*1d05cddcSAtari911
124*1d05cddcSAtari911### Technical Changes:
125*1d05cddcSAtari911- Moved all JavaScript to beginning of widget (before HTML)
126*1d05cddcSAtari911- Removed duplicate script blocks
127*1d05cddcSAtari911- Unified tooltip and stats functions
128*1d05cddcSAtari911- Shared latestStats and cpuHistory state
129*1d05cddcSAtari911- Fixed "Uncaught ReferenceError: showTooltip_sidebar is not defined"
130*1d05cddcSAtari911
131*1d05cddcSAtari911## Version 3.9.8 (2026-02-05) - DUAL COLOR BARS & CLICK EVENTS
132*1d05cddcSAtari911- **Added:** Dual color bars on events (section color + event color)
133*1d05cddcSAtari911- **Added:** Click week grid days to view events (replaced hover tooltips)
134*1d05cddcSAtari911- **Added:** Expandable section below week grid for selected day events
135*1d05cddcSAtari911- **Added:** Blue theme for selected day section
136*1d05cddcSAtari911- **Changed:** Week grid days now clickable instead of tooltips
137*1d05cddcSAtari911- **Changed:** Section bar: 4px wide (left)
138*1d05cddcSAtari911- **Changed:** Event bar: 3px wide (right)
139*1d05cddcSAtari911- **Increased:** Gap between color bars from 3px to 6px
140*1d05cddcSAtari911- **Improved:** Click is more reliable and mobile-friendly than hover tooltips
141*1d05cddcSAtari911
142*1d05cddcSAtari911### Visual Changes:
143*1d05cddcSAtari911- Each event shows TWO color bars side-by-side
144*1d05cddcSAtari911- Left bar (4px): Section context (Today=Orange, Tomorrow=Green, Important=Purple, Selected=Blue)
145*1d05cddcSAtari911- Right bar (3px): Individual event's assigned color
146*1d05cddcSAtari911- Click any day in week grid to expand event list
147*1d05cddcSAtari911- X button to close selected day events
148*1d05cddcSAtari911
149*1d05cddcSAtari911## Version 3.9.7 (2026-02-05) - EVENT COLOR BAR VISIBILITY
150*1d05cddcSAtari911- **Increased:** Event color bar width from 2px to 3px
151*1d05cddcSAtari911- **Increased:** Gap between section and event bars from 3px to 6px
152*1d05cddcSAtari911- **Improved:** Event color bars now more visible alongside section bars
153*1d05cddcSAtari911- **Note:** Dual color bar system already in place from v3.9.6
154*1d05cddcSAtari911
155*1d05cddcSAtari911## Version 3.9.6 (2026-02-05) - UI REFINEMENTS
156*1d05cddcSAtari911- **Changed:** Date in Important Events moved below event name (was above)
157*1d05cddcSAtari911- **Changed:** Section headers now 9px font size (was 10px)
158*1d05cddcSAtari911- **Changed:** Section headers now normal case (was ALL CAPS)
159*1d05cddcSAtari911- **Changed:** Letter spacing reduced from 0.8px to 0.3px
160*1d05cddcSAtari911- **Improved:** More natural reading flow with date below event name
161*1d05cddcSAtari911- **Improved:** Cleaner, more subtle section headers
162*1d05cddcSAtari911
163*1d05cddcSAtari911### Header Changes:
164*1d05cddcSAtari911- "TODAY" → "Today"
165*1d05cddcSAtari911- "TOMORROW" → "Tomorrow"
166*1d05cddcSAtari911- "IMPORTANT EVENTS" → "Important Events"
167*1d05cddcSAtari911
168*1d05cddcSAtari911## Version 3.9.0 (2026-02-05) - SIDEBAR WIDGET REDESIGN
169*1d05cddcSAtari911- **Redesigned:** Complete overhaul of `sidebar` parameter
170*1d05cddcSAtari911- **Added:** Compact week-at-a-glance itinerary view (200px wide)
171*1d05cddcSAtari911- **Added:** Live clock widget at top of sidebar
172*1d05cddcSAtari911- **Added:** 7-cell week grid showing event bars
173*1d05cddcSAtari911- **Added:** Today section with orange header and left border
174*1d05cddcSAtari911- **Added:** Tomorrow section with green header and left border
175*1d05cddcSAtari911- **Added:** Important Events section with purple header and left border
176*1d05cddcSAtari911- **Added:** Admin setting to configure important namespaces
177*1d05cddcSAtari911- **Added:** Time conflict badges in sidebar events
178*1d05cddcSAtari911- **Added:** Task checkboxes in sidebar events
179*1d05cddcSAtari911- **Changed:** Sidebar now optimized for narrow spaces (200px)
180*1d05cddcSAtari911- **Improved:** Perfect for dashboards, page sidebars, and quick glance widgets
181*1d05cddcSAtari911
182*1d05cddcSAtari911### New Features:
183*1d05cddcSAtari911- Clock updates every second showing current time
184*1d05cddcSAtari911- Week grid shows Mon-Sun with colored event bars
185*1d05cddcSAtari911- Today/Tomorrow sections show full event details
186*1d05cddcSAtari911- Important events highlighted in purple (configurable namespaces)
187*1d05cddcSAtari911- All badges (conflict, time, etc.) shown in compact format
188*1d05cddcSAtari911- Automatic time conflict detection
189*1d05cddcSAtari911
190*1d05cddcSAtari911## Version 3.8.0 (2026-02-05) - PRODUCTION CLEANUP
191*1d05cddcSAtari911- **Removed:** 16 unused/debug/backup files
192*1d05cddcSAtari911- **Removed:** 69 console.log() debug statements
193*1d05cddcSAtari911- **Removed:** 3 orphaned object literals from console.log removal
194*1d05cddcSAtari911- **Removed:** Temporary comments and markers
195*1d05cddcSAtari911- **Fixed:** JavaScript syntax errors from cleanup
196*1d05cddcSAtari911- **Improved:** Code quality and maintainability
197*1d05cddcSAtari911- **Improved:** Reduced plugin size by removing unnecessary files
198*1d05cddcSAtari911- **Status:** Production-ready, fully cleaned codebase
199*1d05cddcSAtari911
200*1d05cddcSAtari911### Files Removed:
201*1d05cddcSAtari911- style.css.backup, script.js.backup
202*1d05cddcSAtari911- admin_old_backup.php, admin_minimal.php, admin_new.php, admin_clean.php
203*1d05cddcSAtari911- debug_events.php, debug_html.php, cleanup_events.php
204*1d05cddcSAtari911- fix_corrupted_json.php, fix_wildcard_namespaces.php
205*1d05cddcSAtari911- find_outlook_duplicates.php, update_namespace.php
206*1d05cddcSAtari911- validate_calendar_json.php, admin.js
207*1d05cddcSAtari911- test_date_field.html
208*1d05cddcSAtari911
209*1d05cddcSAtari911## Version 3.7.5 (2026-02-05)
210*1d05cddcSAtari911- **Fixed:** PHP syntax error (duplicate foreach loop removed)
211*1d05cddcSAtari911- **Fixed:** Time variable handling in grace period logic
212*1d05cddcSAtari911
213*1d05cddcSAtari911## Version 3.7.4 (2026-02-05)
214*1d05cddcSAtari911- **Added:** 15-minute grace period for timed events
215*1d05cddcSAtari911- **Changed:** Events with times now stay visible for 15 minutes after their start time
216*1d05cddcSAtari911- **Changed:** Prevents events from immediately disappearing when they start
217*1d05cddcSAtari911- **Improved:** Better user experience for ongoing events
218*1d05cddcSAtari911- **Fixed:** Events from earlier today now properly handled with grace period
219*1d05cddcSAtari911
220*1d05cddcSAtari911## Version 3.7.3 (2026-02-05)
221*1d05cddcSAtari911- **Changed:** Complete redesign of cleanup section for compact, sleek layout
222*1d05cddcSAtari911- **Changed:** Radio buttons now in single row at top
223*1d05cddcSAtari911- **Changed:** All options visible with grayed-out inactive states (opacity 0.4)
224*1d05cddcSAtari911- **Changed:** Inline controls - no more grid layout or wrapper boxes
225*1d05cddcSAtari911- **Changed:** Namespace filter now compact single-line input
226*1d05cddcSAtari911- **Changed:** Smaller buttons and tighter spacing throughout
227*1d05cddcSAtari911- **Improved:** More professional, space-efficient design
228*1d05cddcSAtari911
229*1d05cddcSAtari911## Version 3.7.2 (2026-02-04)
230*1d05cddcSAtari911- **Fixed:** Strange boxes under cleanup options - now properly hidden
231*1d05cddcSAtari911- **Changed:** Unified color scheme across all admin sections
232*1d05cddcSAtari911- **Changed:** Green (#00cc07) - Primary actions and main theme
233*1d05cddcSAtari911- **Changed:** Orange (#ff9800) - Warnings and cleanup features
234*1d05cddcSAtari911- **Changed:** Purple (#7b1fa2) - Secondary actions and accents
235*1d05cddcSAtari911- **Improved:** Consistent visual design throughout admin interface
236*1d05cddcSAtari911
237*1d05cddcSAtari911## Version 3.7.1 (2026-02-04)
238*1d05cddcSAtari911- **Fixed:** Cleanup section background changed from orange to white
239*1d05cddcSAtari911- **Fixed:** Event cleanup now properly scans all calendar directories
240*1d05cddcSAtari911- **Added:** Debug info display when preview finds no events
241*1d05cddcSAtari911- **Improved:** Better directory scanning logic matching other features
242*1d05cddcSAtari911
243*1d05cddcSAtari911## Version 3.7.0 (2026-02-04)
244*1d05cddcSAtari911- **Added:** Event cleanup feature in Events Manager
245*1d05cddcSAtari911- **Added:** Delete old events by age (months/years old)
246*1d05cddcSAtari911- **Added:** Delete events by status (completed tasks, past events)
247*1d05cddcSAtari911- **Added:** Delete events by date range
248*1d05cddcSAtari911- **Added:** Namespace filter for targeted cleanup
249*1d05cddcSAtari911- **Added:** Preview function to see what will be deleted
250*1d05cddcSAtari911- **Added:** Automatic backup creation before cleanup
251*1d05cddcSAtari911- **Changed:** Reduced changelog viewer height to 100px (was 400px)
252*1d05cddcSAtari911
253*1d05cddcSAtari911## Version 3.6.3 (2026-02-04)
254*1d05cddcSAtari911- **Fixed:** Conflict tooltips now work properly after navigating between months
255*1d05cddcSAtari911- **Added:** Changelog display in Update Plugin tab
256*1d05cddcSAtari911- **Added:** CHANGELOG.md file with version history
257*1d05cddcSAtari911- **Improved:** Changelog shows last 10 versions with color-coded change types
258*1d05cddcSAtari911- **Fixed:** Removed debug console.log statements
259*1d05cddcSAtari911
260*1d05cddcSAtari911## Version 3.6.2 (2026-02-04)
261*1d05cddcSAtari911- **Fixed:** Month title now updates correctly when navigating between months
262*1d05cddcSAtari911- **Changed:** All eventpanel header elements reduced by 10% for more compact design
263*1d05cddcSAtari911- **Changed:** Reduced header height from 78px to 70px
264*1d05cddcSAtari911
265*1d05cddcSAtari911## Version 3.6.1 (2026-02-04)
266*1d05cddcSAtari911- **Changed:** Complete redesign of eventpanel header with practical two-row layout
267*1d05cddcSAtari911- **Fixed:** Improved layout for narrow widths (~500px)
268*1d05cddcSAtari911- **Changed:** Simplified color scheme (removed purple gradient)
269*1d05cddcSAtari911
270*1d05cddcSAtari911## Version 3.6.0 (2026-02-04)
271*1d05cddcSAtari911- **Changed:** Redesigned eventpanel header with gradient background
272*1d05cddcSAtari911- **Changed:** Consolidated multiple header rows into compact single-row design
273*1d05cddcSAtari911
274*1d05cddcSAtari911## Version 3.5.1 (2026-02-04)
275*1d05cddcSAtari911- **Changed:** Moved event search bar into header row next to + Add button
276*1d05cddcSAtari911- **Improved:** More compact UI with search integrated into header
277*1d05cddcSAtari911
278*1d05cddcSAtari911## Version 3.5.0 (2026-02-04)
279*1d05cddcSAtari911- **Added:** Event search functionality in sidebar and eventpanel
280*1d05cddcSAtari911- **Added:** Real-time filtering as you type
281*1d05cddcSAtari911- **Added:** Clear button (✕) appears when searching
282*1d05cddcSAtari911- **Added:** "No results" message when search returns nothing
283*1d05cddcSAtari911
284*1d05cddcSAtari911## Version 3.4.7 (2026-02-04)
285*1d05cddcSAtari911- **Changed:** Made conflict badges smaller and more subtle (9px font, less padding)
286*1d05cddcSAtari911- **Fixed:** Removed debug logging from console
287*1d05cddcSAtari911- **Changed:** Updated export version number to match plugin version
288*1d05cddcSAtari911
289*1d05cddcSAtari911## Version 3.4.6 (2026-02-04)
290*1d05cddcSAtari911- **Added:** Debug logging to diagnose conflict detection issues
291*1d05cddcSAtari911- **Development:** Extensive console logging for troubleshooting
292*1d05cddcSAtari911
293*1d05cddcSAtari911## Version 3.4.5 (2026-02-04)
294*1d05cddcSAtari911- **Added:** Debug logging to showDayPopup and conflict detection
295*1d05cddcSAtari911- **Development:** Added logging to trace conflict detection flow
296*1d05cddcSAtari911
297*1d05cddcSAtari911## Version 3.4.4 (2026-02-04)
298*1d05cddcSAtari911- **Fixed:** Conflict detection now persists across page refreshes (PHP-based)
299*1d05cddcSAtari911- **Fixed:** Conflict tooltips now appear on hover
300*1d05cddcSAtari911- **Added:** Dual conflict detection (PHP for initial load, JavaScript for navigation)
301*1d05cddcSAtari911- **Added:** Conflict badges in both future and past events sections
302*1d05cddcSAtari911
303*1d05cddcSAtari911## Version 3.4.3 (2026-02-04)
304*1d05cddcSAtari911- **Added:** Custom styled conflict tooltips with hover functionality
305*1d05cddcSAtari911- **Changed:** Conflict badge shows count of conflicts (e.g., ⚠️ 2)
306*1d05cddcSAtari911- **Improved:** Beautiful tooltip design with orange header and clean formatting
307*1d05cddcSAtari911
308*1d05cddcSAtari911## Version 3.4.2 (2026-02-04)
309*1d05cddcSAtari911- **Fixed:** Attempted to fix tooltip newlines (reverted in 3.4.3)
310*1d05cddcSAtari911
311*1d05cddcSAtari911## Version 3.4.1 (2026-02-04)
312*1d05cddcSAtari911- **Fixed:** End time field now properly saves to database
313*1d05cddcSAtari911- **Fixed:** End time dropdown now filters to show only valid times after start time
314*1d05cddcSAtari911- **Added:** Smart dropdown behavior - expands on focus, filters invalid options
315*1d05cddcSAtari911- **Improved:** End time auto-suggests +1 hour when start time selected
316*1d05cddcSAtari911
317*1d05cddcSAtari911## Version 3.4.0 (2026-02-04)
318*1d05cddcSAtari911- **Added:** End time support for events (start and end times)
319*1d05cddcSAtari911- **Added:** Automatic time conflict detection
320*1d05cddcSAtari911- **Added:** Conflict warning badges (⚠️) on events with overlapping times
321*1d05cddcSAtari911- **Added:** Conflict tooltips showing which events conflict
322*1d05cddcSAtari911- **Added:** Visual conflict indicators with pulse animation
323*1d05cddcSAtari911- **Changed:** Time display now shows ranges (e.g., "2:00 PM - 4:00 PM")
324*1d05cddcSAtari911
325*1d05cddcSAtari911## Version 3.3.77 (2026-02-04)
326*1d05cddcSAtari911- **Fixed:** Namespace badge onclick handlers restored after clearing filter
327*1d05cddcSAtari911- **Fixed:** Namespace filtering works infinitely (filter → clear → filter)
328*1d05cddcSAtari911
329*1d05cddcSAtari911## Version 3.3.76 (2026-02-04)
330*1d05cddcSAtari911- **Fixed:** Namespace badges now clickable after clearing namespace filter
331*1d05cddcSAtari911
332*1d05cddcSAtari911## Version 3.3.75 (2026-02-04)
333*1d05cddcSAtari911- **Fixed:** Form resubmission warnings eliminated
334*1d05cddcSAtari911- **Improved:** Implemented proper POST-Redirect-GET pattern with HTTP 303
335*1d05cddcSAtari911- **Changed:** All admin redirects now use absolute URLs
336*1d05cddcSAtari911
337*1d05cddcSAtari911## Version 3.3.74 (2026-02-04)
338*1d05cddcSAtari911- **Fixed:** Clearing namespace filter now restores original namespace instead of default
339*1d05cddcSAtari911- **Added:** data-original-namespace attribute to preserve initial namespace setting
340*1d05cddcSAtari911- **Improved:** Console logging for namespace filter debugging
341*1d05cddcSAtari911
342*1d05cddcSAtari911## Version 3.3.73 (2026-02-03)
343*1d05cddcSAtari911- **Added:** Dynamic namespace filtering banner with clear button
344*1d05cddcSAtari911- **Fixed:** JavaScript function accessibility issues
345*1d05cddcSAtari911- **Fixed:** Namespace badge click handlers in event lists
346*1d05cddcSAtari911- **Improved:** Persistent namespace filtering across views
347*1d05cddcSAtari911
348*1d05cddcSAtari911## Earlier Versions
349*1d05cddcSAtari911See previous transcripts for complete history through v3.3.73, including:
350*1d05cddcSAtari911- Recurring events with Outlook sync
351*1d05cddcSAtari911- Multi-namespace support
352*1d05cddcSAtari911- Event categories and mapping
353*1d05cddcSAtari911- Backup/restore functionality
354*1d05cddcSAtari911- System statistics bar
355*1d05cddcSAtari911- Namespace selector with fuzzy search
356*1d05cddcSAtari911- Events Manager with import/export
357*1d05cddcSAtari911- And much more...
358