11d05cddcSAtari911# Calendar Plugin Changelog 21d05cddcSAtari911 3*231d0edbSAtari911## Version 4.0.0 (2026-02-06) - MATRIX EDITION RELEASE 4*231d0edbSAtari911 5*231d0edbSAtari911**Major Release**: Complete Matrix-themed calendar plugin with advanced features! 6*231d0edbSAtari911 7*231d0edbSAtari911### Major Features 8*231d0edbSAtari911 9*231d0edbSAtari911#### Sidebar Widget 10*231d0edbSAtari911- **Week Grid**: Interactive 7-day calendar with click-to-view events 11*231d0edbSAtari911- **Live System Monitoring**: CPU load, real-time CPU, memory usage with tooltips 12*231d0edbSAtari911- **Live Clock**: Updates every second with date display 13*231d0edbSAtari911- **Real-time Weather**: Geolocation-based temperature with icon 14*231d0edbSAtari911- **Event Sections**: Today (orange), Tomorrow (green), Important (purple) 15*231d0edbSAtari911- **Add Event Button**: Dark green bar opens full event creation dialog 16*231d0edbSAtari911- **Matrix Theme**: Green glow effects throughout 17*231d0edbSAtari911 18*231d0edbSAtari911#### Event Management 19*231d0edbSAtari911- **Single Color Bars**: Clean 3px bars showing event's assigned color 20*231d0edbSAtari911- **All-Day Events First**: Then sorted chronologically by time 21*231d0edbSAtari911- **Conflict Detection**: Orange ⚠ badge on overlapping events 22*231d0edbSAtari911- **Rich Content**: Full DokuWiki formatting (**bold**, [[links]], //italic//) 23*231d0edbSAtari911- **HTML Rendering**: Pre-rendered for JavaScript display 24*231d0edbSAtari911- **Click-to-View**: Click week grid days to expand event details 25*231d0edbSAtari911 26*231d0edbSAtari911#### Admin Interface 27*231d0edbSAtari911- **Update Plugin Tab** (Default): Version info, changelog, prominent Clear Cache button 28*231d0edbSAtari911- **Outlook Sync Tab**: Microsoft Azure integration, category mapping, sync settings 29*231d0edbSAtari911- **Manage Events Tab**: Browse, edit, delete, move events across namespaces 30*231d0edbSAtari911 31*231d0edbSAtari911#### Outlook Sync 32*231d0edbSAtari911- **Bi-directional Sync**: DokuWiki ↔ Microsoft Outlook 33*231d0edbSAtari911- **Category Mapping**: Map colors to Outlook categories 34*231d0edbSAtari911- **Conflict Resolution**: Time conflict detection 35*231d0edbSAtari911- **Import/Export Config**: Encrypted configuration files 36*231d0edbSAtari911 37*231d0edbSAtari911### Design 38*231d0edbSAtari911- **Matrix Theme**: Authentic green glow aesthetic 39*231d0edbSAtari911- **Dark Backgrounds**: #1a1a1a header, rgba(36, 36, 36) sections 40*231d0edbSAtari911- **Color Scheme**: 41*231d0edbSAtari911 - Today: Orange #ff9800 42*231d0edbSAtari911 - Tomorrow: Green #4caf50 43*231d0edbSAtari911 - Important: Purple #9b59b6 44*231d0edbSAtari911 - Add Event: Dark green #006400 45*231d0edbSAtari911 - System bars: Green/Purple/Orange 46*231d0edbSAtari911 47*231d0edbSAtari911### Technical Highlights 48*231d0edbSAtari911- **Zero-margin Design**: Perfect flush alignment throughout 49*231d0edbSAtari911- **Flexbox Layout**: Modern, responsive structure 50*231d0edbSAtari911- **AJAX Operations**: No page reloads needed 51*231d0edbSAtari911- **Smart Sorting**: All-day events first, then chronological 52*231d0edbSAtari911- **Tooltip System**: Detailed stats on hover (working correctly) 53*231d0edbSAtari911- **Event Dialog**: Full form with drag support 54*231d0edbSAtari911- **Cache Management**: One-click cache clearing 55*231d0edbSAtari911 56*231d0edbSAtari911### Breaking Changes from v3.x 57*231d0edbSAtari911- Removed dual color bars (now single event color bar only) 58*231d0edbSAtari911- Add Event button moved to between header and week grid 59*231d0edbSAtari911- All-day events now appear FIRST (not last) 60*231d0edbSAtari911- Update Plugin tab is now the default admin tab 61*231d0edbSAtari911 62*231d0edbSAtari911### Bug Fixes (v3.10.x → v4.0.0) 63*231d0edbSAtari911- ✅ Fixed color bars not showing (align-self:stretch vs height:100%) 64*231d0edbSAtari911- ✅ Fixed tooltip function naming (sanitized calId for JavaScript) 65*231d0edbSAtari911- ✅ Fixed weather display (added updateWeather function) 66*231d0edbSAtari911- ✅ Fixed HTML rendering in events (title_html/description_html fields) 67*231d0edbSAtari911- ✅ Fixed Add Event dialog (null check for calendar element) 68*231d0edbSAtari911- ✅ Fixed text positioning in Add Event button 69*231d0edbSAtari911- ✅ Fixed spacing throughout sidebar widget 70*231d0edbSAtari911 71*231d0edbSAtari911### Complete Feature List 72*231d0edbSAtari911- Full calendar view (month grid) 73*231d0edbSAtari911- Sidebar widget (week view) 74*231d0edbSAtari911- Event panel (standalone) 75*231d0edbSAtari911- Event list (date ranges) 76*231d0edbSAtari911- Namespace support 77*231d0edbSAtari911- Color coding 78*231d0edbSAtari911- Time conflict detection 79*231d0edbSAtari911- DokuWiki syntax in events 80*231d0edbSAtari911- Outlook synchronization 81*231d0edbSAtari911- System monitoring 82*231d0edbSAtari911- Weather display 83*231d0edbSAtari911- Live clock 84*231d0edbSAtari911- Admin interface 85*231d0edbSAtari911- Cache management 86*231d0edbSAtari911- Draggable dialogs 87*231d0edbSAtari911- AJAX save/edit/delete 88*231d0edbSAtari911- Import/export config 89*231d0edbSAtari911 90*231d0edbSAtari911### Usage 91*231d0edbSAtari911 92*231d0edbSAtari911**Sidebar Widget**: 93*231d0edbSAtari911``` 94*231d0edbSAtari911{{calendar sidebar}} 95*231d0edbSAtari911{{calendar sidebar namespace=team}} 96*231d0edbSAtari911``` 97*231d0edbSAtari911 98*231d0edbSAtari911**Full Calendar**: 99*231d0edbSAtari911``` 100*231d0edbSAtari911{{calendar}} 101*231d0edbSAtari911{{calendar year=2026 month=6 namespace=team}} 102*231d0edbSAtari911``` 103*231d0edbSAtari911 104*231d0edbSAtari911**Event Panel**: 105*231d0edbSAtari911``` 106*231d0edbSAtari911{{eventpanel}} 107*231d0edbSAtari911``` 108*231d0edbSAtari911 109*231d0edbSAtari911**Event List**: 110*231d0edbSAtari911``` 111*231d0edbSAtari911{{eventlist daterange=2026-01-01:2026-01-31}} 112*231d0edbSAtari911``` 113*231d0edbSAtari911 114*231d0edbSAtari911### Stats 115*231d0edbSAtari911- **40+ versions** developed during v3.x iterations 116*231d0edbSAtari911- **3.10.0 → 3.11.4**: Polish and refinement 117*231d0edbSAtari911- **4.0.0**: Production-ready Matrix Edition 118*231d0edbSAtari911 119*231d0edbSAtari911### Credits 120*231d0edbSAtari911Massive iteration and refinement session resulting in a polished, feature-complete calendar plugin with authentic Matrix aesthetics and enterprise-grade Outlook integration. 121*231d0edbSAtari911 122*231d0edbSAtari911--- 123*231d0edbSAtari911 124*231d0edbSAtari911## Previous Versions (v3.11.4 and earlier) 125*231d0edbSAtari911 126*231d0edbSAtari911## Version 3.11.4 (2026-02-06) - RESTORE HEADER BOTTOM SPACING 127*231d0edbSAtari911- **Changed:** Restored 2px bottom padding to header (was 0px, now 2px) 128*231d0edbSAtari911- **Improved:** Small breathing room between system stats bars and Add Event button 129*231d0edbSAtari911- **Visual:** Better spacing for cleaner appearance 130*231d0edbSAtari911 131*231d0edbSAtari911### CSS Change: 132*231d0edbSAtari911**eventlist-today-header**: 133*231d0edbSAtari911- `padding: 6px 10px 0 10px` → `padding: 6px 10px 2px 10px` 134*231d0edbSAtari911 135*231d0edbSAtari911### Visual Result: 136*231d0edbSAtari911``` 137*231d0edbSAtari911│ ▓▓▓░░ ▓▓░░░ ▓▓▓▓░ │ ← Stats bars 138*231d0edbSAtari911│ │ ← 2px space (restored) 139*231d0edbSAtari911├───────────────────────┤ 140*231d0edbSAtari911│ + ADD EVENT │ ← Add Event bar 141*231d0edbSAtari911├───────────────────────┤ 142*231d0edbSAtari911``` 143*231d0edbSAtari911 144*231d0edbSAtari911**Before (v3.11.3)**: No space, bars directly touch Add Event button 145*231d0edbSAtari911**After (v3.11.4)**: 2px breathing room for better visual hierarchy 146*231d0edbSAtari911 147*231d0edbSAtari911## Version 3.11.3 (2026-02-06) - FIX ADD EVENT DIALOG & TEXT POSITION 148*231d0edbSAtari911- **Fixed:** openAddEvent() function now checks if calendar element exists before reading dataset 149*231d0edbSAtari911- **Fixed:** Add Event button no longer throws "Cannot read properties of null" error 150*231d0edbSAtari911- **Changed:** Add Event text moved up 1px (position:relative; top:-1px) 151*231d0edbSAtari911- **Changed:** Line-height reduced from 12px to 10px for better text centering 152*231d0edbSAtari911- **Improved:** openAddEvent() works for both regular calendars and sidebar widgets 153*231d0edbSAtari911 154*231d0edbSAtari911### JavaScript Fix: 155*231d0edbSAtari911**Problem**: Line 1084-1085 in calendar-main.js 156*231d0edbSAtari911```javascript 157*231d0edbSAtari911const calendar = document.getElementById(calId); 158*231d0edbSAtari911const filteredNamespace = calendar.dataset.filteredNamespace; // ← Null error! 159*231d0edbSAtari911``` 160*231d0edbSAtari911 161*231d0edbSAtari911**Solution**: Added null check 162*231d0edbSAtari911```javascript 163*231d0edbSAtari911const calendar = document.getElementById(calId); 164*231d0edbSAtari911const filteredNamespace = calendar ? calendar.dataset.filteredNamespace : null; 165*231d0edbSAtari911``` 166*231d0edbSAtari911 167*231d0edbSAtari911**Why This Happened**: 168*231d0edbSAtari911- Regular calendar has element with id=calId 169*231d0edbSAtari911- Sidebar widget doesn't have this element (different structure) 170*231d0edbSAtari911- Code tried to read .dataset on null, causing error 171*231d0edbSAtari911 172*231d0edbSAtari911### Text Position Fix: 173*231d0edbSAtari911**Before**: 174*231d0edbSAtari911- line-height: 12px 175*231d0edbSAtari911- vertical-align: middle 176*231d0edbSAtari911- Text slightly low 177*231d0edbSAtari911 178*231d0edbSAtari911**After**: 179*231d0edbSAtari911- line-height: 10px 180*231d0edbSAtari911- position: relative; top: -1px 181*231d0edbSAtari911- Text perfectly centered 182*231d0edbSAtari911 183*231d0edbSAtari911### What Works Now: 184*231d0edbSAtari911✅ Click "+ ADD EVENT" in sidebar → Dialog opens 185*231d0edbSAtari911✅ No console errors 186*231d0edbSAtari911✅ Text properly centered vertically 187*231d0edbSAtari911✅ Form pre-filled with today's date 188*231d0edbSAtari911✅ Save works correctly 189*231d0edbSAtari911 190*231d0edbSAtari911## Version 3.11.2 (2026-02-06) - ADD EVENT DIALOG IN SIDEBAR 191*231d0edbSAtari911- **Added:** Event dialog to sidebar widget (same as regular calendar) 192*231d0edbSAtari911- **Changed:** Add Event button now opens proper event form dialog 193*231d0edbSAtari911- **Added:** renderEventDialog() called in renderSidebarWidget() 194*231d0edbSAtari911- **Fixed:** Add Event button calls openAddEvent() with calId, namespace, and today's date 195*231d0edbSAtari911- **Improved:** Can now add events directly from sidebar widget 196*231d0edbSAtari911 197*231d0edbSAtari911### Add Event Button Behavior: 198*231d0edbSAtari911**Before (v3.11.1)**: Showed alert with instructions 199*231d0edbSAtari911**After (v3.11.2)**: Opens full event creation dialog 200*231d0edbSAtari911 201*231d0edbSAtari911**Dialog Features**: 202*231d0edbSAtari911- Date field (defaults to today) 203*231d0edbSAtari911- Title field (required) 204*231d0edbSAtari911- Time field (optional) 205*231d0edbSAtari911- End time field (optional) 206*231d0edbSAtari911- Color picker 207*231d0edbSAtari911- Category field 208*231d0edbSAtari911- Description field 209*231d0edbSAtari911- Save and Cancel buttons 210*231d0edbSAtari911- Draggable dialog 211*231d0edbSAtari911 212*231d0edbSAtari911### Technical Changes: 213*231d0edbSAtari911- Added `$html .= $this->renderEventDialog($calId, $namespace);` at end of renderSidebarWidget() 214*231d0edbSAtari911- Changed Add Event onclick from alert to `openAddEvent('calId', 'namespace', 'YYYY-MM-DD')` 215*231d0edbSAtari911- Dialog uses same structure as regular calendar 216*231d0edbSAtari911- Uses existing openAddEvent() and saveEventCompact() JavaScript functions 217*231d0edbSAtari911 218*231d0edbSAtari911### User Flow: 219*231d0edbSAtari9111. User clicks "+ ADD EVENT" green bar 220*231d0edbSAtari9112. Event dialog opens with today's date pre-filled 221*231d0edbSAtari9113. User fills in event details 222*231d0edbSAtari9114. User clicks Save 223*231d0edbSAtari9115. Event saved via AJAX 224*231d0edbSAtari9116. Dialog closes 225*231d0edbSAtari9117. Sidebar refreshes to show new event 226*231d0edbSAtari911 227*231d0edbSAtari911## Version 3.11.1 (2026-02-06) - FLUSH HEADER & ADD EVENT DIALOG 228*231d0edbSAtari911- **Fixed:** Removed bottom padding from header (was 2px, now 0) 229*231d0edbSAtari911- **Fixed:** Removed margin from stats container (was margin-top:2px, now margin:0) 230*231d0edbSAtari911- **Fixed:** Add Event bar now flush against header with zero gap 231*231d0edbSAtari911- **Changed:** Add Event button now shows helpful alert dialog instead of navigating to admin 232*231d0edbSAtari911- **Improved:** Alert provides clear instructions on how to add events 233*231d0edbSAtari911 234*231d0edbSAtari911### CSS Changes: 235*231d0edbSAtari911**eventlist-today-header**: 236*231d0edbSAtari911- `padding: 6px 10px 2px 10px` → `padding: 6px 10px 0 10px` (removed 2px bottom) 237*231d0edbSAtari911 238*231d0edbSAtari911**eventlist-stats-container**: 239*231d0edbSAtari911- `margin-top: 2px` → `margin: 0` (removed all margins) 240*231d0edbSAtari911 241*231d0edbSAtari911### Add Event Button Behavior: 242*231d0edbSAtari911**Before**: Clicked → Navigated to Admin → Manage Events tab 243*231d0edbSAtari911**After**: Clicked → Shows alert with instructions 244*231d0edbSAtari911 245*231d0edbSAtari911**Alert Message**: 246*231d0edbSAtari911``` 247*231d0edbSAtari911To add an event, go to: 248*231d0edbSAtari911Admin → Calendar Management → Manage Events tab 249*231d0edbSAtari911or use the full calendar view {{calendar}} 250*231d0edbSAtari911``` 251*231d0edbSAtari911 252*231d0edbSAtari911### Visual Result: 253*231d0edbSAtari911``` 254*231d0edbSAtari911│ ▓▓▓░░ ▓▓░░░ ▓▓▓▓░ │ ← Stats (no margin-bottom) 255*231d0edbSAtari911├────────────────────────┤ 256*231d0edbSAtari911│ + ADD EVENT │ ← Perfectly flush! 257*231d0edbSAtari911├────────────────────────┤ 258*231d0edbSAtari911``` 259*231d0edbSAtari911 260*231d0edbSAtari911No gaps, perfectly aligned! 261*231d0edbSAtari911 262*231d0edbSAtari911## Version 3.11.0 (2026-02-06) - ADD EVENT BAR FINAL POSITION & SIZE 263*231d0edbSAtari911- **Moved:** Add Event bar back to original position (between header and week grid) 264*231d0edbSAtari911- **Changed:** Font size reduced from 9px to 8px (prevents text cutoff) 265*231d0edbSAtari911- **Changed:** Letter spacing reduced from 0.5px to 0.4px 266*231d0edbSAtari911- **Fixed:** Text now fully visible without being cut off 267*231d0edbSAtari911- **Final:** Optimal position and size determined 268*231d0edbSAtari911 269*231d0edbSAtari911### Final Layout: 270*231d0edbSAtari911``` 271*231d0edbSAtari911┌─────────────────────────────┐ 272*231d0edbSAtari911│ Clock | Weather | Stats │ ← Header 273*231d0edbSAtari911├─────────────────────────────┤ 274*231d0edbSAtari911│ + ADD EVENT │ ← Bar (back here, smaller text) 275*231d0edbSAtari911├─────────────────────────────┤ 276*231d0edbSAtari911│ M T W T F S S │ ← Week Grid 277*231d0edbSAtari911│ 3 4 5 6 7 8 9 │ 278*231d0edbSAtari911├─────────────────────────────┤ 279*231d0edbSAtari911│ Today │ ← Event sections 280*231d0edbSAtari911└─────────────────────────────┘ 281*231d0edbSAtari911``` 282*231d0edbSAtari911 283*231d0edbSAtari911### Text Size Changes: 284*231d0edbSAtari911**v3.10.9**: 9px font, 0.5px letter-spacing → Text slightly cut off 285*231d0edbSAtari911**v3.11.0**: 8px font, 0.4px letter-spacing → Text fully visible 286*231d0edbSAtari911 287*231d0edbSAtari911### Why This Position: 288*231d0edbSAtari911- Separates header from calendar 289*231d0edbSAtari911- Natural action point after viewing stats 290*231d0edbSAtari911- Users see stats → decide to add event → view calendar 291*231d0edbSAtari911- Consistent with original design intent 292*231d0edbSAtari911 293*231d0edbSAtari911## Version 3.10.9 (2026-02-06) - ADD EVENT BAR MOVED BELOW WEEK GRID 294*231d0edbSAtari911- **Moved:** Add Event bar repositioned from between header/grid to below week grid 295*231d0edbSAtari911- **Improved:** Better visual flow - header → stats → grid → add button → events 296*231d0edbSAtari911- **Changed:** Add Event bar now acts as separator between calendar and event sections 297*231d0edbSAtari911 298*231d0edbSAtari911### New Layout: 299*231d0edbSAtari911``` 300*231d0edbSAtari911┌─────────────────────────────┐ 301*231d0edbSAtari911│ Clock | Weather | Stats │ ← Header 302*231d0edbSAtari911├─────────────────────────────┤ 303*231d0edbSAtari911│ M T W T F S S │ ← Week Grid 304*231d0edbSAtari911│ 3 4 5 6 7 8 9 │ 305*231d0edbSAtari911├─────────────────────────────┤ 306*231d0edbSAtari911│ + ADD EVENT │ ← Add bar (moved here!) 307*231d0edbSAtari911├─────────────────────────────┤ 308*231d0edbSAtari911│ Today │ ← Event sections 309*231d0edbSAtari911│ Tomorrow │ 310*231d0edbSAtari911│ Important Events │ 311*231d0edbSAtari911└─────────────────────────────┘ 312*231d0edbSAtari911``` 313*231d0edbSAtari911 314*231d0edbSAtari911### Visual Flow: 315*231d0edbSAtari911**Before (v3.10.8)**: 316*231d0edbSAtari9111. Header (clock, weather, stats) 317*231d0edbSAtari9112. **+ ADD EVENT** bar 318*231d0edbSAtari9113. Week grid 319*231d0edbSAtari9114. Event sections 320*231d0edbSAtari911 321*231d0edbSAtari911**After (v3.10.9)**: 322*231d0edbSAtari9111. Header (clock, weather, stats) 323*231d0edbSAtari9112. Week grid (calendar days) 324*231d0edbSAtari9113. **+ ADD EVENT** bar 325*231d0edbSAtari9114. Event sections 326*231d0edbSAtari911 327*231d0edbSAtari911### Benefits: 328*231d0edbSAtari911- Natural reading flow: View calendar → Add event → See events 329*231d0edbSAtari911- Add button positioned between calendar and event list 330*231d0edbSAtari911- Acts as visual separator 331*231d0edbSAtari911- More logical action placement 332*231d0edbSAtari911 333*231d0edbSAtari911## Version 3.10.8 (2026-02-06) - SINGLE COLOR BAR & ZERO MARGIN ADD BAR 334*231d0edbSAtari911- **Removed:** Section color bar (blue/orange/green/purple) - now shows ONLY event color 335*231d0edbSAtari911- **Changed:** Events now display with single 3px color bar (event's assigned color only) 336*231d0edbSAtari911- **Fixed:** Add Event bar now has zero margin (margin:0) - touches header perfectly 337*231d0edbSAtari911- **Simplified:** Cleaner visual with one color bar instead of two 338*231d0edbSAtari911- **Improved:** More space for event content without extra bar 339*231d0edbSAtari911 340*231d0edbSAtari911### Visual Changes: 341*231d0edbSAtari911 342*231d0edbSAtari911**Before (v3.10.7)** - Dual color bars: 343*231d0edbSAtari911``` 344*231d0edbSAtari911├─ [Orange][Green] Event Title 345*231d0edbSAtari911├─ [Blue][Purple] Event Title 346*231d0edbSAtari911``` 347*231d0edbSAtari911 348*231d0edbSAtari911**After (v3.10.8)** - Single color bar: 349*231d0edbSAtari911``` 350*231d0edbSAtari911├─ [Green] Event Title ← Only event color! 351*231d0edbSAtari911├─ [Purple] Event Title ← Only event color! 352*231d0edbSAtari911``` 353*231d0edbSAtari911 354*231d0edbSAtari911### Add Bar Changes: 355*231d0edbSAtari911- Added `margin:0` to eliminate gaps 356*231d0edbSAtari911- Now flush against header (no space above) 357*231d0edbSAtari911- Now flush against week grid (no space below) 358*231d0edbSAtari911- Perfect seamless connection 359*231d0edbSAtari911 360*231d0edbSAtari911### Technical Changes: 361*231d0edbSAtari911**renderSidebarEvent()**: 362*231d0edbSAtari911- Removed section color bar (4px) 363*231d0edbSAtari911- Kept only event color bar (3px) 364*231d0edbSAtari911 365*231d0edbSAtari911**showDayEvents() JavaScript**: 366*231d0edbSAtari911- Removed section color bar (4px blue) 367*231d0edbSAtari911- Kept only event color bar (3px) 368*231d0edbSAtari911 369*231d0edbSAtari911**Add Event bar**: 370*231d0edbSAtari911- Added `margin:0` inline style 371*231d0edbSAtari911- Removed all top/bottom margins 372*231d0edbSAtari911 373*231d0edbSAtari911## Version 3.10.7 (2026-02-06) - COLOR BARS FIX FOR SECTIONS & DARK GREEN ADD BAR 374*231d0edbSAtari911- **Fixed:** Color bars now display in Today/Tomorrow/Important sections (was only showing in clicked day) 375*231d0edbSAtari911- **Fixed:** Changed Today/Tomorrow/Important event rendering to use `align-self:stretch` instead of `height:100%` 376*231d0edbSAtari911- **Changed:** Add Event bar color from orange to dark green (#006400) 377*231d0edbSAtari911- **Changed:** Add Event bar height increased from 6px to 12px (text no longer cut off) 378*231d0edbSAtari911- **Changed:** Add Event bar text now bright green (#00ff00) with green glow 379*231d0edbSAtari911- **Changed:** Add Event bar font size increased from 7px to 9px 380*231d0edbSAtari911- **Changed:** Add Event bar letter spacing increased to 0.5px 381*231d0edbSAtari911- **Improved:** Hover effect on Add Event bar now darker green (#004d00) 382*231d0edbSAtari911 383*231d0edbSAtari911### Color Bar Fix Details: 384*231d0edbSAtari911**Problem**: Today/Tomorrow/Important sections still used `height:100%` on color bars 385*231d0edbSAtari911**Solution**: Applied same fix as clicked day events: 386*231d0edbSAtari911- Changed parent div: `align-items:start` → `align-items:stretch` 387*231d0edbSAtari911- Added `min-height:20px` to parent 388*231d0edbSAtari911- Changed bars: `height:100%` → `align-self:stretch` 389*231d0edbSAtari911- Bars now properly fill vertical space in ALL sections 390*231d0edbSAtari911 391*231d0edbSAtari911### Add Event Bar Changes: 392*231d0edbSAtari911**Before**: 393*231d0edbSAtari911- Background: Orange (#ff9800) 394*231d0edbSAtari911- Text: Black (#000) 395*231d0edbSAtari911- Height: 6px (text cut off) 396*231d0edbSAtari911- Font: 7px 397*231d0edbSAtari911 398*231d0edbSAtari911**After**: 399*231d0edbSAtari911- Background: Dark green (#006400) 400*231d0edbSAtari911- Text: Bright green (#00ff00) with green glow 401*231d0edbSAtari911- Height: 12px (text fully visible) 402*231d0edbSAtari911- Font: 9px 403*231d0edbSAtari911- Hover: Darker green (#004d00) 404*231d0edbSAtari911- Matrix-themed green aesthetic 405*231d0edbSAtari911 406*231d0edbSAtari911## Version 3.10.6 (2026-02-06) - COLOR BARS FIX, SORTING REVERSAL, CONFLICT BADGE, README UPDATE 407*231d0edbSAtari911- **Fixed:** Event color bars now display correctly in clicked day events 408*231d0edbSAtari911- **Fixed:** Changed sorting - all-day events now appear FIRST, then timed events 409*231d0edbSAtari911- **Added:** Conflict badge (⚠) appears on right side of conflicting events 410*231d0edbSAtari911- **Updated:** Complete README.md rewrite with full Matrix theme documentation 411*231d0edbSAtari911- **Changed:** Color bars use `align-self:stretch` instead of `height:100%` (fixes rendering) 412*231d0edbSAtari911- **Changed:** Parent div uses `align-items:stretch` and `min-height:20px` 413*231d0edbSAtari911- **Improved:** Content wrapper now uses flexbox for proper conflict badge positioning 414*231d0edbSAtari911 415*231d0edbSAtari911### Color Bar Fix: 416*231d0edbSAtari911**Problem**: Bars had `height:100%` but parent had no explicit height 417*231d0edbSAtari911**Solution**: 418*231d0edbSAtari911- Changed to `align-self:stretch` on bars 419*231d0edbSAtari911- Parent uses `align-items:stretch` 420*231d0edbSAtari911- Added `min-height:20px` to parent 421*231d0edbSAtari911- Bars now properly fill vertical space 422*231d0edbSAtari911 423*231d0edbSAtari911### Sorting Change: 424*231d0edbSAtari911**Before**: Timed events first → All-day events last 425*231d0edbSAtari911**After**: All-day events FIRST → Timed events chronologically 426*231d0edbSAtari911 427*231d0edbSAtari911**Example**: 428*231d0edbSAtari911``` 429*231d0edbSAtari911Monday, Feb 5 430*231d0edbSAtari911├─ All Day - Project Deadline ← All-day first 431*231d0edbSAtari911├─ 8:00 AM - Morning Standup ← Earliest time 432*231d0edbSAtari911├─ 10:30 AM - Coffee with Bob 433*231d0edbSAtari911└─ 2:00 PM - Team Meeting ← Latest time 434*231d0edbSAtari911``` 435*231d0edbSAtari911 436*231d0edbSAtari911### Conflict Badge: 437*231d0edbSAtari911- Orange warning triangle (⚠) on right side 438*231d0edbSAtari911- 10px font size 439*231d0edbSAtari911- Only appears if `event.conflict` is true 440*231d0edbSAtari911- Title attribute shows "Time conflict detected" 441*231d0edbSAtari911- Small and unobtrusive 442*231d0edbSAtari911 443*231d0edbSAtari911### README Update: 444*231d0edbSAtari911- Complete rewrite with Matrix theme focus 445*231d0edbSAtari911- Full usage instructions for all features 446*231d0edbSAtari911- Admin interface documentation 447*231d0edbSAtari911- Outlook sync setup guide 448*231d0edbSAtari911- System monitoring details 449*231d0edbSAtari911- Troubleshooting section 450*231d0edbSAtari911- Color scheme reference 451*231d0edbSAtari911- File structure documentation 452*231d0edbSAtari911- Performance tips 453*231d0edbSAtari911- Security notes 454*231d0edbSAtari911- Quick start examples 455*231d0edbSAtari911 4561d05cddcSAtari911## Version 3.10.5 (2026-02-06) - TIME SORTING & THINNER ADD BAR 4571d05cddcSAtari911- **Added:** Events now sorted by time when clicking week grid days 4581d05cddcSAtari911- **Changed:** Add Event bar now ultra-thin (6px height, down from 12px) 4591d05cddcSAtari911- **Improved:** Events with times appear first, sorted chronologically 4601d05cddcSAtari911- **Improved:** All-day events appear after timed events 4611d05cddcSAtari911- **Changed:** Add Event bar font size reduced to 7px (from 10px) 4621d05cddcSAtari911- **Changed:** Add Event bar now has 0 padding and fixed 6px height 4631d05cddcSAtari911 4641d05cddcSAtari911### Sorting Logic: 4651d05cddcSAtari911- Events with times sorted by time (earliest first) 4661d05cddcSAtari911- All-day events (no time) appear at the end 4671d05cddcSAtari911- Sort algorithm: Convert time to minutes (HH:MM → total minutes) and compare 4681d05cddcSAtari911- Chronological order: 8:00 AM → 10:30 AM → 2:00 PM → All-day event 4691d05cddcSAtari911 4701d05cddcSAtari911### Add Event Bar Changes: 4711d05cddcSAtari911- **Height**: 6px (was ~12px with padding) 4721d05cddcSAtari911- **Padding**: 0 (was 4px top/bottom) 4731d05cddcSAtari911- **Font Size**: 7px (was 10px) 4741d05cddcSAtari911- **Letter Spacing**: 0.3px (was 0.5px) 4751d05cddcSAtari911- **Line Height**: 6px to match height 4761d05cddcSAtari911- **Vertical Align**: Middle for text centering 4771d05cddcSAtari911 4781d05cddcSAtari911## Version 3.10.4 (2026-02-06) - ADD EVENT BAR 4791d05cddcSAtari911- **Added:** Thin orange "Add Event" bar between header and week grid 4801d05cddcSAtari911- **Added:** Quick access to event creation from sidebar widget 4811d05cddcSAtari911- **Styled:** Sleek design with hover effects and glow 4821d05cddcSAtari911- **Interactive:** Clicks navigate to Manage Events tab in admin 4831d05cddcSAtari911- **Improved:** User workflow for adding events from sidebar 4841d05cddcSAtari911 4851d05cddcSAtari911### Visual Design: 4861d05cddcSAtari911- Orange background (#ff9800) matching Today section color 4871d05cddcSAtari911- 4px top/bottom padding for thin, sleek appearance 4881d05cddcSAtari911- Black text with white text-shadow for visibility 4891d05cddcSAtari911- Hover effect: Darkens to #ff7700 with enhanced glow 4901d05cddcSAtari911- Orange glow effect (box-shadow) matching Matrix theme 4911d05cddcSAtari911- Centered "+ ADD EVENT" text (10px, bold, letter-spacing) 4921d05cddcSAtari911 4931d05cddcSAtari911### Technical Changes: 4941d05cddcSAtari911- Added between header close and renderWeekGrid() call 4951d05cddcSAtari911- Inline onclick handler navigates to admin manage tab 4961d05cddcSAtari911- Inline onmouseover/onmouseout for hover effects 4971d05cddcSAtari911- Smooth 0.2s transition on all style changes 4981d05cddcSAtari911 4991d05cddcSAtari911## Version 3.10.3 (2026-02-06) - UI IMPROVEMENTS & CACHE BUTTON RELOCATION 5001d05cddcSAtari911- **Changed:** Update Plugin tab is now the default tab when opening admin 5011d05cddcSAtari911- **Moved:** Clear Cache button relocated from Outlook Sync tab to Update Plugin tab 5021d05cddcSAtari911- **Improved:** Clear Cache button now larger and more prominent with helpful description 5031d05cddcSAtari911- **Improved:** Tab order reorganized: Update Plugin (default) → Outlook Sync → Manage Events 5041d05cddcSAtari911- **Removed:** Debug console.log statements from day event display 5051d05cddcSAtari911- **Fixed:** Cache clear now redirects back to Update Plugin tab instead of Config tab 5061d05cddcSAtari911 5071d05cddcSAtari911### UI Changes: 5081d05cddcSAtari911- Update Plugin tab opens by default (was Config/Outlook Sync tab) 5091d05cddcSAtari911- Clear Cache button prominently displayed at top of Update Plugin tab 5101d05cddcSAtari911- Orange ️ button (10px 20px padding) with confirmation dialog 5111d05cddcSAtari911- Help text: "Clear the DokuWiki cache if changes aren't appearing or after updating the plugin" 5121d05cddcSAtari911- Success/error messages display on Update Plugin tab after cache clear 5131d05cddcSAtari911- Tab navigation reordered to put Update first 5141d05cddcSAtari911 5151d05cddcSAtari911### Technical Changes: 5161d05cddcSAtari911- Default tab changed from 'config' to 'update' in html() method 5171d05cddcSAtari911- Tab navigation HTML reordered to show Update Plugin tab first 5181d05cddcSAtari911- clearCache() method now redirects with 'update' tab parameter 5191d05cddcSAtari911- Removed Clear Cache button from renderConfigTab() 5201d05cddcSAtari911- Added Clear Cache button to renderUpdateTab() with message display 5211d05cddcSAtari911 5221d05cddcSAtari911## Version 3.10.2 (2026-02-06) - EVENT HTML RENDERING FIX 5231d05cddcSAtari911- **Fixed:** Event formatting (bold, links, italic) now displays correctly when clicking week grid days 5241d05cddcSAtari911- **Added:** renderDokuWikiToHtml() helper function to convert DokuWiki syntax to HTML 5251d05cddcSAtari911- **Changed:** Events in weekEvents now pre-rendered with title_html and description_html fields 5261d05cddcSAtari911- **Improved:** DokuWiki syntax (**bold**, [[links]], //italic//, etc.) properly rendered in clicked day events 5271d05cddcSAtari911 5281d05cddcSAtari911### Technical Changes: 5291d05cddcSAtari911- Added renderDokuWikiToHtml() private function using p_get_instructions() and p_render() 5301d05cddcSAtari911- Events added to weekEvents now include pre-rendered HTML versions 5311d05cddcSAtari911- title_html and description_html fields populated before json_encode() 5321d05cddcSAtari911- JavaScript now receives properly formatted HTML content 5331d05cddcSAtari911 5341d05cddcSAtari911## Version 3.10.1 (2026-02-06) - TOOLTIP FIX & WEATHER & CACHE BUTTON 5351d05cddcSAtari911- **Fixed:** System tooltip functions now use sanitized calId (showTooltip_sidebar_abc123 instead of showTooltip_sidebar-abc123) 5361d05cddcSAtari911- **Fixed:** HTML event handlers now call correctly sanitized function names 5371d05cddcSAtari911- **Fixed:** Weather temperature now updates correctly in sidebar widget 5381d05cddcSAtari911- **Added:** Weather update function to sidebar widget JavaScript 5391d05cddcSAtari911- **Added:** "Clear Cache" button in admin panel for easy cache refresh 5401d05cddcSAtari911- **Added:** Default weather location set to Irvine, CA when geolocation unavailable 5411d05cddcSAtari911- **Improved:** All tooltip functions now work correctly on system status bars 5421d05cddcSAtari911 5431d05cddcSAtari911### Technical Changes: 5441d05cddcSAtari911- Changed tooltip function names to use $jsCalId instead of $calId 5451d05cddcSAtari911- Changed HTML onmouseover/onmouseout to use $jsCalId 5461d05cddcSAtari911- Added updateWeather() function to sidebar widget 5471d05cddcSAtari911- Added getWeatherIcon() function to sidebar widget 5481d05cddcSAtari911- Added clearCache() method in admin.php 5491d05cddcSAtari911- Added recursiveDelete() helper method in admin.php 5501d05cddcSAtari911- Admin UI now has ️ Clear Cache button alongside Export/Import 5511d05cddcSAtari911 5521d05cddcSAtari911## Version 3.10.0 (2026-02-06) - JAVASCRIPT FIXES 5531d05cddcSAtari911- **Fixed:** JavaScript syntax error "Missing initializer in const declaration" 5541d05cddcSAtari911- **Fixed:** Event links and formatting not displaying in clicked day events 5551d05cddcSAtari911- **Fixed:** Sanitized calId to jsCalId by replacing dashes with underscores 5561d05cddcSAtari911- **Changed:** Event titles now use `title_html` field to preserve HTML formatting 5571d05cddcSAtari911- **Changed:** Event descriptions now use `description_html` field to preserve links and formatting 5581d05cddcSAtari911- **Improved:** All JavaScript variable names now use valid syntax 5591d05cddcSAtari911- **Improved:** Links, bold, italic, and other HTML formatting preserved in events 5601d05cddcSAtari911 5611d05cddcSAtari911### Technical Changes: 5621d05cddcSAtari911- Added variable sanitization: `$jsCalId = str_replace('-', '_', $calId);` 5631d05cddcSAtari911- JavaScript variables now use underscores instead of dashes 5641d05cddcSAtari911- Event HTML rendering preserves DokuWiki formatting 5651d05cddcSAtari911- Fixed "showTooltip_sidebar is not defined" errors 5661d05cddcSAtari911- Fixed "showDayEvents_cal is not defined" errors 5671d05cddcSAtari911 5681d05cddcSAtari911## Version 3.9.9 (2026-02-06) - JAVASCRIPT LOADING ORDER FIX 5691d05cddcSAtari911- **Fixed:** Critical JavaScript loading order issue causing ReferenceError 5701d05cddcSAtari911- **Fixed:** Functions now defined BEFORE HTML that uses them 5711d05cddcSAtari911- **Changed:** Consolidated all JavaScript into single comprehensive script block 5721d05cddcSAtari911- **Removed:** ~290 lines of duplicate JavaScript code 5731d05cddcSAtari911- **Added:** Shared state management with `sharedState_[calId]` object 5741d05cddcSAtari911- **Improved:** System tooltip functions now work correctly 5751d05cddcSAtari911- **Improved:** Week grid click events now work correctly 5761d05cddcSAtari911 5771d05cddcSAtari911### Technical Changes: 5781d05cddcSAtari911- Moved all JavaScript to beginning of widget (before HTML) 5791d05cddcSAtari911- Removed duplicate script blocks 5801d05cddcSAtari911- Unified tooltip and stats functions 5811d05cddcSAtari911- Shared latestStats and cpuHistory state 5821d05cddcSAtari911- Fixed "Uncaught ReferenceError: showTooltip_sidebar is not defined" 5831d05cddcSAtari911 5841d05cddcSAtari911## Version 3.9.8 (2026-02-05) - DUAL COLOR BARS & CLICK EVENTS 5851d05cddcSAtari911- **Added:** Dual color bars on events (section color + event color) 5861d05cddcSAtari911- **Added:** Click week grid days to view events (replaced hover tooltips) 5871d05cddcSAtari911- **Added:** Expandable section below week grid for selected day events 5881d05cddcSAtari911- **Added:** Blue theme for selected day section 5891d05cddcSAtari911- **Changed:** Week grid days now clickable instead of tooltips 5901d05cddcSAtari911- **Changed:** Section bar: 4px wide (left) 5911d05cddcSAtari911- **Changed:** Event bar: 3px wide (right) 5921d05cddcSAtari911- **Increased:** Gap between color bars from 3px to 6px 5931d05cddcSAtari911- **Improved:** Click is more reliable and mobile-friendly than hover tooltips 5941d05cddcSAtari911 5951d05cddcSAtari911### Visual Changes: 5961d05cddcSAtari911- Each event shows TWO color bars side-by-side 5971d05cddcSAtari911- Left bar (4px): Section context (Today=Orange, Tomorrow=Green, Important=Purple, Selected=Blue) 5981d05cddcSAtari911- Right bar (3px): Individual event's assigned color 5991d05cddcSAtari911- Click any day in week grid to expand event list 6001d05cddcSAtari911- X button to close selected day events 6011d05cddcSAtari911 6021d05cddcSAtari911## Version 3.9.7 (2026-02-05) - EVENT COLOR BAR VISIBILITY 6031d05cddcSAtari911- **Increased:** Event color bar width from 2px to 3px 6041d05cddcSAtari911- **Increased:** Gap between section and event bars from 3px to 6px 6051d05cddcSAtari911- **Improved:** Event color bars now more visible alongside section bars 6061d05cddcSAtari911- **Note:** Dual color bar system already in place from v3.9.6 6071d05cddcSAtari911 6081d05cddcSAtari911## Version 3.9.6 (2026-02-05) - UI REFINEMENTS 6091d05cddcSAtari911- **Changed:** Date in Important Events moved below event name (was above) 6101d05cddcSAtari911- **Changed:** Section headers now 9px font size (was 10px) 6111d05cddcSAtari911- **Changed:** Section headers now normal case (was ALL CAPS) 6121d05cddcSAtari911- **Changed:** Letter spacing reduced from 0.8px to 0.3px 6131d05cddcSAtari911- **Improved:** More natural reading flow with date below event name 6141d05cddcSAtari911- **Improved:** Cleaner, more subtle section headers 6151d05cddcSAtari911 6161d05cddcSAtari911### Header Changes: 6171d05cddcSAtari911- "TODAY" → "Today" 6181d05cddcSAtari911- "TOMORROW" → "Tomorrow" 6191d05cddcSAtari911- "IMPORTANT EVENTS" → "Important Events" 6201d05cddcSAtari911 6211d05cddcSAtari911## Version 3.9.0 (2026-02-05) - SIDEBAR WIDGET REDESIGN 6221d05cddcSAtari911- **Redesigned:** Complete overhaul of `sidebar` parameter 6231d05cddcSAtari911- **Added:** Compact week-at-a-glance itinerary view (200px wide) 6241d05cddcSAtari911- **Added:** Live clock widget at top of sidebar 6251d05cddcSAtari911- **Added:** 7-cell week grid showing event bars 6261d05cddcSAtari911- **Added:** Today section with orange header and left border 6271d05cddcSAtari911- **Added:** Tomorrow section with green header and left border 6281d05cddcSAtari911- **Added:** Important Events section with purple header and left border 6291d05cddcSAtari911- **Added:** Admin setting to configure important namespaces 6301d05cddcSAtari911- **Added:** Time conflict badges in sidebar events 6311d05cddcSAtari911- **Added:** Task checkboxes in sidebar events 6321d05cddcSAtari911- **Changed:** Sidebar now optimized for narrow spaces (200px) 6331d05cddcSAtari911- **Improved:** Perfect for dashboards, page sidebars, and quick glance widgets 6341d05cddcSAtari911 6351d05cddcSAtari911### New Features: 6361d05cddcSAtari911- Clock updates every second showing current time 6371d05cddcSAtari911- Week grid shows Mon-Sun with colored event bars 6381d05cddcSAtari911- Today/Tomorrow sections show full event details 6391d05cddcSAtari911- Important events highlighted in purple (configurable namespaces) 6401d05cddcSAtari911- All badges (conflict, time, etc.) shown in compact format 6411d05cddcSAtari911- Automatic time conflict detection 6421d05cddcSAtari911 6431d05cddcSAtari911## Version 3.8.0 (2026-02-05) - PRODUCTION CLEANUP 6441d05cddcSAtari911- **Removed:** 16 unused/debug/backup files 6451d05cddcSAtari911- **Removed:** 69 console.log() debug statements 6461d05cddcSAtari911- **Removed:** 3 orphaned object literals from console.log removal 6471d05cddcSAtari911- **Removed:** Temporary comments and markers 6481d05cddcSAtari911- **Fixed:** JavaScript syntax errors from cleanup 6491d05cddcSAtari911- **Improved:** Code quality and maintainability 6501d05cddcSAtari911- **Improved:** Reduced plugin size by removing unnecessary files 6511d05cddcSAtari911- **Status:** Production-ready, fully cleaned codebase 6521d05cddcSAtari911 6531d05cddcSAtari911### Files Removed: 6541d05cddcSAtari911- style.css.backup, script.js.backup 6551d05cddcSAtari911- admin_old_backup.php, admin_minimal.php, admin_new.php, admin_clean.php 6561d05cddcSAtari911- debug_events.php, debug_html.php, cleanup_events.php 6571d05cddcSAtari911- fix_corrupted_json.php, fix_wildcard_namespaces.php 6581d05cddcSAtari911- find_outlook_duplicates.php, update_namespace.php 6591d05cddcSAtari911- validate_calendar_json.php, admin.js 6601d05cddcSAtari911- test_date_field.html 6611d05cddcSAtari911 6621d05cddcSAtari911## Version 3.7.5 (2026-02-05) 6631d05cddcSAtari911- **Fixed:** PHP syntax error (duplicate foreach loop removed) 6641d05cddcSAtari911- **Fixed:** Time variable handling in grace period logic 6651d05cddcSAtari911 6661d05cddcSAtari911## Version 3.7.4 (2026-02-05) 6671d05cddcSAtari911- **Added:** 15-minute grace period for timed events 6681d05cddcSAtari911- **Changed:** Events with times now stay visible for 15 minutes after their start time 6691d05cddcSAtari911- **Changed:** Prevents events from immediately disappearing when they start 6701d05cddcSAtari911- **Improved:** Better user experience for ongoing events 6711d05cddcSAtari911- **Fixed:** Events from earlier today now properly handled with grace period 6721d05cddcSAtari911 6731d05cddcSAtari911## Version 3.7.3 (2026-02-05) 6741d05cddcSAtari911- **Changed:** Complete redesign of cleanup section for compact, sleek layout 6751d05cddcSAtari911- **Changed:** Radio buttons now in single row at top 6761d05cddcSAtari911- **Changed:** All options visible with grayed-out inactive states (opacity 0.4) 6771d05cddcSAtari911- **Changed:** Inline controls - no more grid layout or wrapper boxes 6781d05cddcSAtari911- **Changed:** Namespace filter now compact single-line input 6791d05cddcSAtari911- **Changed:** Smaller buttons and tighter spacing throughout 6801d05cddcSAtari911- **Improved:** More professional, space-efficient design 6811d05cddcSAtari911 6821d05cddcSAtari911## Version 3.7.2 (2026-02-04) 6831d05cddcSAtari911- **Fixed:** Strange boxes under cleanup options - now properly hidden 6841d05cddcSAtari911- **Changed:** Unified color scheme across all admin sections 6851d05cddcSAtari911- **Changed:** Green (#00cc07) - Primary actions and main theme 6861d05cddcSAtari911- **Changed:** Orange (#ff9800) - Warnings and cleanup features 6871d05cddcSAtari911- **Changed:** Purple (#7b1fa2) - Secondary actions and accents 6881d05cddcSAtari911- **Improved:** Consistent visual design throughout admin interface 6891d05cddcSAtari911 6901d05cddcSAtari911## Version 3.7.1 (2026-02-04) 6911d05cddcSAtari911- **Fixed:** Cleanup section background changed from orange to white 6921d05cddcSAtari911- **Fixed:** Event cleanup now properly scans all calendar directories 6931d05cddcSAtari911- **Added:** Debug info display when preview finds no events 6941d05cddcSAtari911- **Improved:** Better directory scanning logic matching other features 6951d05cddcSAtari911 6961d05cddcSAtari911## Version 3.7.0 (2026-02-04) 6971d05cddcSAtari911- **Added:** Event cleanup feature in Events Manager 6981d05cddcSAtari911- **Added:** Delete old events by age (months/years old) 6991d05cddcSAtari911- **Added:** Delete events by status (completed tasks, past events) 7001d05cddcSAtari911- **Added:** Delete events by date range 7011d05cddcSAtari911- **Added:** Namespace filter for targeted cleanup 7021d05cddcSAtari911- **Added:** Preview function to see what will be deleted 7031d05cddcSAtari911- **Added:** Automatic backup creation before cleanup 7041d05cddcSAtari911- **Changed:** Reduced changelog viewer height to 100px (was 400px) 7051d05cddcSAtari911 7061d05cddcSAtari911## Version 3.6.3 (2026-02-04) 7071d05cddcSAtari911- **Fixed:** Conflict tooltips now work properly after navigating between months 7081d05cddcSAtari911- **Added:** Changelog display in Update Plugin tab 7091d05cddcSAtari911- **Added:** CHANGELOG.md file with version history 7101d05cddcSAtari911- **Improved:** Changelog shows last 10 versions with color-coded change types 7111d05cddcSAtari911- **Fixed:** Removed debug console.log statements 7121d05cddcSAtari911 7131d05cddcSAtari911## Version 3.6.2 (2026-02-04) 7141d05cddcSAtari911- **Fixed:** Month title now updates correctly when navigating between months 7151d05cddcSAtari911- **Changed:** All eventpanel header elements reduced by 10% for more compact design 7161d05cddcSAtari911- **Changed:** Reduced header height from 78px to 70px 7171d05cddcSAtari911 7181d05cddcSAtari911## Version 3.6.1 (2026-02-04) 7191d05cddcSAtari911- **Changed:** Complete redesign of eventpanel header with practical two-row layout 7201d05cddcSAtari911- **Fixed:** Improved layout for narrow widths (~500px) 7211d05cddcSAtari911- **Changed:** Simplified color scheme (removed purple gradient) 7221d05cddcSAtari911 7231d05cddcSAtari911## Version 3.6.0 (2026-02-04) 7241d05cddcSAtari911- **Changed:** Redesigned eventpanel header with gradient background 7251d05cddcSAtari911- **Changed:** Consolidated multiple header rows into compact single-row design 7261d05cddcSAtari911 7271d05cddcSAtari911## Version 3.5.1 (2026-02-04) 7281d05cddcSAtari911- **Changed:** Moved event search bar into header row next to + Add button 7291d05cddcSAtari911- **Improved:** More compact UI with search integrated into header 7301d05cddcSAtari911 7311d05cddcSAtari911## Version 3.5.0 (2026-02-04) 7321d05cddcSAtari911- **Added:** Event search functionality in sidebar and eventpanel 7331d05cddcSAtari911- **Added:** Real-time filtering as you type 7341d05cddcSAtari911- **Added:** Clear button (✕) appears when searching 7351d05cddcSAtari911- **Added:** "No results" message when search returns nothing 7361d05cddcSAtari911 7371d05cddcSAtari911## Version 3.4.7 (2026-02-04) 7381d05cddcSAtari911- **Changed:** Made conflict badges smaller and more subtle (9px font, less padding) 7391d05cddcSAtari911- **Fixed:** Removed debug logging from console 7401d05cddcSAtari911- **Changed:** Updated export version number to match plugin version 7411d05cddcSAtari911 7421d05cddcSAtari911## Version 3.4.6 (2026-02-04) 7431d05cddcSAtari911- **Added:** Debug logging to diagnose conflict detection issues 7441d05cddcSAtari911- **Development:** Extensive console logging for troubleshooting 7451d05cddcSAtari911 7461d05cddcSAtari911## Version 3.4.5 (2026-02-04) 7471d05cddcSAtari911- **Added:** Debug logging to showDayPopup and conflict detection 7481d05cddcSAtari911- **Development:** Added logging to trace conflict detection flow 7491d05cddcSAtari911 7501d05cddcSAtari911## Version 3.4.4 (2026-02-04) 7511d05cddcSAtari911- **Fixed:** Conflict detection now persists across page refreshes (PHP-based) 7521d05cddcSAtari911- **Fixed:** Conflict tooltips now appear on hover 7531d05cddcSAtari911- **Added:** Dual conflict detection (PHP for initial load, JavaScript for navigation) 7541d05cddcSAtari911- **Added:** Conflict badges in both future and past events sections 7551d05cddcSAtari911 7561d05cddcSAtari911## Version 3.4.3 (2026-02-04) 7571d05cddcSAtari911- **Added:** Custom styled conflict tooltips with hover functionality 7581d05cddcSAtari911- **Changed:** Conflict badge shows count of conflicts (e.g., ⚠️ 2) 7591d05cddcSAtari911- **Improved:** Beautiful tooltip design with orange header and clean formatting 7601d05cddcSAtari911 7611d05cddcSAtari911## Version 3.4.2 (2026-02-04) 7621d05cddcSAtari911- **Fixed:** Attempted to fix tooltip newlines (reverted in 3.4.3) 7631d05cddcSAtari911 7641d05cddcSAtari911## Version 3.4.1 (2026-02-04) 7651d05cddcSAtari911- **Fixed:** End time field now properly saves to database 7661d05cddcSAtari911- **Fixed:** End time dropdown now filters to show only valid times after start time 7671d05cddcSAtari911- **Added:** Smart dropdown behavior - expands on focus, filters invalid options 7681d05cddcSAtari911- **Improved:** End time auto-suggests +1 hour when start time selected 7691d05cddcSAtari911 7701d05cddcSAtari911## Version 3.4.0 (2026-02-04) 7711d05cddcSAtari911- **Added:** End time support for events (start and end times) 7721d05cddcSAtari911- **Added:** Automatic time conflict detection 7731d05cddcSAtari911- **Added:** Conflict warning badges (⚠️) on events with overlapping times 7741d05cddcSAtari911- **Added:** Conflict tooltips showing which events conflict 7751d05cddcSAtari911- **Added:** Visual conflict indicators with pulse animation 7761d05cddcSAtari911- **Changed:** Time display now shows ranges (e.g., "2:00 PM - 4:00 PM") 7771d05cddcSAtari911 7781d05cddcSAtari911## Version 3.3.77 (2026-02-04) 7791d05cddcSAtari911- **Fixed:** Namespace badge onclick handlers restored after clearing filter 7801d05cddcSAtari911- **Fixed:** Namespace filtering works infinitely (filter → clear → filter) 7811d05cddcSAtari911 7821d05cddcSAtari911## Version 3.3.76 (2026-02-04) 7831d05cddcSAtari911- **Fixed:** Namespace badges now clickable after clearing namespace filter 7841d05cddcSAtari911 7851d05cddcSAtari911## Version 3.3.75 (2026-02-04) 7861d05cddcSAtari911- **Fixed:** Form resubmission warnings eliminated 7871d05cddcSAtari911- **Improved:** Implemented proper POST-Redirect-GET pattern with HTTP 303 7881d05cddcSAtari911- **Changed:** All admin redirects now use absolute URLs 7891d05cddcSAtari911 7901d05cddcSAtari911## Version 3.3.74 (2026-02-04) 7911d05cddcSAtari911- **Fixed:** Clearing namespace filter now restores original namespace instead of default 7921d05cddcSAtari911- **Added:** data-original-namespace attribute to preserve initial namespace setting 7931d05cddcSAtari911- **Improved:** Console logging for namespace filter debugging 7941d05cddcSAtari911 7951d05cddcSAtari911## Version 3.3.73 (2026-02-03) 7961d05cddcSAtari911- **Added:** Dynamic namespace filtering banner with clear button 7971d05cddcSAtari911- **Fixed:** JavaScript function accessibility issues 7981d05cddcSAtari911- **Fixed:** Namespace badge click handlers in event lists 7991d05cddcSAtari911- **Improved:** Persistent namespace filtering across views 8001d05cddcSAtari911 8011d05cddcSAtari911## Earlier Versions 8021d05cddcSAtari911See previous transcripts for complete history through v3.3.73, including: 8031d05cddcSAtari911- Recurring events with Outlook sync 8041d05cddcSAtari911- Multi-namespace support 8051d05cddcSAtari911- Event categories and mapping 8061d05cddcSAtari911- Backup/restore functionality 8071d05cddcSAtari911- System statistics bar 8081d05cddcSAtari911- Namespace selector with fuzzy search 8091d05cddcSAtari911- Events Manager with import/export 8101d05cddcSAtari911- And much more... 811