TAMAMLANDI

Muzibu Context Menu Overhaul

25 Aralık 2025 - Sağ Tık Menü Sistemi Yenilendi

Basit Anlatım (Herkes İçin)

Ne değişti? Müzik platformundaki sağ tık menüleri yenilendi ve daha mantıklı hale getirildi.

  • Sanatçıya Git kaldırıldı: Artık gereksiz menü seçeneği yok. Şarkılarda zaten sanatçı bilgisi gösteriliyor.
  • Albümler playlist'e eklenebilir: Artık albüme sağ tıklayıp tüm şarkılarını playlist'e ekleyebilirsiniz.
  • Radyolar sadece çalar: Radyolarda "Sıraya Ekle" kaldırıldı çünkü radyo zaten canlı yayın, sıraya eklenemez.
  • Kartlara tıklama: Masaüstünde sağ panelde önizleme açılır, mobilde detay sayfasına gider.

Teknik Detaylar (Geliştiriciler İçin)

Phase 1: playlistModal Alpine Store

Global, SPA-safe playlist modal store oluşturuldu.

public/themes/muzibu/js/muzibu-store.js
  • $store.playlistModal.showForSong(songId, data)
  • $store.playlistModal.showForAlbum(albumId, data)
  • • Çoklu playlist seçimi (checkbox)
  • • Loading/adding state yönetimi

Phase 2: Playlist Modal Component

Modal tamamen yeniden yazıldı.

resources/views/themes/muzibu/components/playlist-select-modal.blade.php
  • • x-teleport ile SPA-safe
  • • Album desteği eklendi ("Tüm şarkılar eklenecek" uyarısı)
  • • Checkbox multi-select

Phase 3: Menu Builder

Menü öğeleri güncellendi.

public/themes/muzibu/js/context-menus/menu-builder.js
  • • Song: goToArtist kaldırıldı
  • • Album: goToArtist kaldırıldı, addToPlaylist eklendi
  • • Radio: addToQueue kaldırıldı (sadece play + favorite)

Phase 4: Action Dosyaları

Tüm action handler'lar güncellendi.

song-actions.js - goToArtist kaldırıldı
album-actions.js - goToArtist kaldırıldı, addToPlaylist eklendi
radio-actions.js - addToQueue kaldırıldı
content-actions.js - goToArtist kaldırıldı

Phase 5: Card Components (Preview/Mobile)

Kartlara preview davranışı eklendi.

album-card.blade.php
playlist-card.blade.php
sector-card.blade.php
genre-card.blade.php

window.innerWidth >= 1024 → Sidebar preview
window.innerWidth < 1024 → Detay sayfası

Phase 6: Context Menu Data Temizliği

Gereksiz data alanları kaldırıldı.

  • artist_id ve artist_slug kaldırıldı
  • cover_url eklendi (playlist modal için)
  • • song-row.blade.php, song-list-item.blade.php güncellendi

Phase 7: song-card Kaldırıldı

Kullanılmayan component silindi.

resources/views/components/muzibu/song-card.blade.php

Şarkılar her zaman satır/liste formatında gösterilir.

Phase 8: Build & Test

Caches temizlendi, production build yapıldı.

  • php artisan view:clear
  • php artisan responsecache:clear
  • npm run prod - 25.51s

Yapılan Değişiklikler

Değişiklik Durum
playlistModal Alpine store oluşturuldu Tamamlandı
Playlist modal yeniden yazıldı (album desteği) Tamamlandı
goToArtist tüm menülerden kaldırıldı Tamamlandı
Album menüsüne addToPlaylist eklendi Tamamlandı
Radio menüsünden addToQueue kaldırıldı Tamamlandı
Card preview/mobile davranışı eklendi Tamamlandı
Context menu data temizlendi (artist_id/slug) Tamamlandı
song-card.blade.php silindi Tamamlandı
Production build yapıldı Tamamlandı

Test Edilecekler