noah33565 commited on
Commit
f5fc610
Β·
verified Β·
1 Parent(s): 0d4b90b

Update app.js

Browse files
Files changed (1) hide show
  1. app.js +27 -0
app.js CHANGED
@@ -532,6 +532,33 @@ function buildChannelList() {
532
  list.appendChild(div);
533
  }
534
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
535
  // Voice Channels
536
  const vcCat=document.createElement('div');
537
  vcCat.className='channel-category';
 
532
  list.appendChild(div);
533
  }
534
  }
535
+ // ─── Ticket-Button in Sidebar ───
536
+ const ticketCat = document.createElement('div');
537
+ ticketCat.className = 'channel-category';
538
+ ticketCat.textContent = 'β€” Support';
539
+ list.appendChild(ticketCat);
540
+
541
+ const myOpenTickets = Object.values(DB.tickets||{}).filter(t=>
542
+ (t.author===currentUser.username || hasRole('mod')) && t.status==='open'
543
+ ).length;
544
+
545
+ const ticketBtn = document.createElement('div');
546
+ ticketBtn.className = 'channel-item ticket-sidebar-btn';
547
+ ticketBtn.innerHTML = `
548
+ <span class="channel-icon">🎫</span>
549
+ <span class="channel-name">tickets</span>
550
+ ${myOpenTickets>0 ? `<span class="unread-badge" style="background:var(--purple)">${myOpenTickets}</span>` : ''}
551
+ `;
552
+ ticketBtn.onclick = () => openTicketMenu();
553
+ list.appendChild(ticketBtn);
554
+
555
+ const newTicketBtn = document.createElement('div');
556
+ newTicketBtn.className = 'channel-item';
557
+ newTicketBtn.style.cssText = 'opacity:.75';
558
+ newTicketBtn.innerHTML = `<span class="channel-icon">βž•</span><span class="channel-name">neues ticket</span>`;
559
+ newTicketBtn.onclick = () => openCreateTicket();
560
+ list.appendChild(newTicketBtn);
561
+
562
  // Voice Channels
563
  const vcCat=document.createElement('div');
564
  vcCat.className='channel-category';