Kapsamlı Düzenleme Planı
25 Aralık 2025
3 ana değişiklik yapılacak:
Şarkılar artık sadece row/list formatında
components/muzibu/song-card.blade.php
Grid görünümlü şarkı kartı artık kullanılmayacak
song-row.blade.php - Tablo satırısong-list-item.blade.php - Kompakt listeKontrol: Song-card kullanılan tüm sayfalar tespit edilip row/list'e çevrilecek
Hızlı, kolay, SPA uyumlu
Şu an sadece song için çalışıyor, album için de çalışmalı
Playliste eklerken spinner göster
Ekleme sonrası kısa success feedback
Kendi Alpine store'u olmalı (playlistModal store)
// Yeni Alpine Store: playlistModal Alpine.store('playlistModal', { open: false, contentType: 'song', // 'song' | 'album' contentId: null, contentData: {}, // title, cover, artist userPlaylists: [], existsInPlaylists: [], // Bu içerik hangi playlist'lerde var selectedPlaylists: [], loading: false, searchQuery: '', // Modal aç (herhangi bir yerden çağrılabilir) async show(type, id, data) { this.contentType = type; this.contentId = id; this.contentData = data; this.loading = true; this.open = true; await this.fetchPlaylists(); await this.checkExisting(); this.loading = false; }, // Çoklu playliste ekle async addToSelected() { ... } });
Menü yapısı düzenlemesi
| Menü | Kaldırılan | Eklenen |
|---|---|---|
| Song | "Sanatçıya Git" | - |
| Album | "Sanatçıya Git" | "Playliste Ekle" |
| Radio | "Sıraya Ekle" | - |
Song
Album
Radio
*Sıraya Ekle yok - direkt çalar
| Dosya | İşlem | Değişiklik |
|---|---|---|
| JavaScript Dosyaları | ||
menu-builder.js |
GÜNCELLE | goToArtist kaldır, album'e addToPlaylist ekle, radio'dan queue kaldır |
song-actions.js |
GÜNCELLE | goToArtist() kaldır |
album-actions.js |
GÜNCELLE | goToArtist() kaldır, addToPlaylist() ekle |
radio-actions.js |
GÜNCELLE | addToQueue() kaldır |
action-executor.js |
GÜNCELLE | goToArtist case kaldır |
content-actions.js |
GÜNCELLE | goToArtist() kaldır |
muzibu-store.js |
EKLE | playlistModal store ekle (contextMenu'dan ayır) |
| Blade Componentleri | ||
song-card.blade.php |
KALDIR | Artık kullanılmayacak |
song-row.blade.php |
GÜNCELLE | artist_id/slug kaldır |
song-list-item.blade.php |
GÜNCELLE | artist_id/slug kaldır |
album-card.blade.php |
GÜNCELLE | Responsive click kontrol, artist verisi kaldır |
playlist-select-modal.blade.php |
GÜNCELLE | playlistModal store'a geçiş, album desteği, loading |
radio-card.blade.php |
- | Değişiklik yok (özel davranış) |
playlistModal store oluştur
muzibu-store.js'e yeni store ekle
playlist-select-modal.blade.php güncelle
Yeni store kullan, album desteği ekle
menu-builder.js güncelle
Menü yapılarını düzenle
Action dosyalarını güncelle
song-actions, album-actions, radio-actions, action-executor, content-actions
Blade componentleri güncelle
artist_id/slug kaldır, responsive click kontrol
song-card.blade.php kullanımlarını bul ve değiştir
Tüm sayfalarda song-row veya song-list-item kullan
Test & Cache temizle
php artisan view:clear && npm run prod
Bu sayfalar kontrol edilip song-row/list-item'a çevrilecek:
Dosya kaldırılacak
song-card.blade.php
Dosya güncellenecek
JS + Blade
Store eklenecek
playlistModal
Desktop (≥1024px)
Mobile/Tablet (<1024px)
Desktop: Preview | Mobile: Detay sayfası
Tüm openContextMenu() çağrılarından artist verilerini kaldır: