Sayfa #46 - Albüm Detay
Albüm Detay Sayfası
Bir albüme tıkladığınızda açılan zengin detay sayfası oluşturduk.
Kapak görseli, sanatçı bilgisi, şarkı listesi, toplam süre ve beğeni sayısı
tek bakışta görülebilir.
Görsel Zenginlik
- Yüksek çözünürlük kapak görseli
- Otomatik renk paleti çıkarma
- Blur arka plan efekti
- Responsive tasarım
Şarkı Listesi
- Sıra numarası ve süre
- Tek tıkla çalma başlatma
- Favori ekleme butonu
- İndirme seçeneği (aboneler için)
1
URL'den Albüm ID Alınır
muzibu.com/album/karma-123 gibi URL'den "123" ID çekilir
2
Veritabanı Sorgusu
albums tablosundan albüm + songs tablosundan şarkılar çekilir
3
İlişkili Veriler Yüklenir
Sanatçı bilgisi, tür, yayın yılı, toplam dinlenme sayısı
4
Görünüm Sayısı Arttırılır
view_count alanı +1 yapılır (istatistik için)
Admin Panelden Ne Görebilirsiniz?
3.2 dk
Ortalama Kalma Süresi
Hangi albümler en çok görüntüleniyor? Hangi saatler popüler? Tüm analizler admin panelde.
Arkaplanda Neler Çalışıyor?
Bir albümün detay sayfası görüntülendiğinde, sistem şu işlemleri saniyeler içinde tamamlar:
Slug'dan Albüm Tanımlama
URL'deki /album/karma-tarkan-123 yapısı çözümlenir. Album::where('slug', $slug)->firstOrFail() ile albüm veritabanından bulunur. Slug benzersiz olduğu için doğru albüm garantili şekilde getirilir.
Şarkı Listesi Eager Loading
$album->load(['songs' => fn($q) => $q->orderBy('track_number'), 'artist']) sorgusu çalışır. Şarkılar parça numarasına göre sıralı getirilir. N+1 sorgu problemi bu şekilde önlenir.
Toplam Süre Hesaplama
$album->songs->sum('duration') ile tüm şarkıların saniye cinsinden süreleri toplanır. CarbonInterval::seconds($total)->cascade()->forHumans() ile "48 dakika 32 saniye" formatına çevrilir.
Dinamik Renk Paleti Çıkarma
Albüm kapağından ColorThief kütüphanesi ile dominant renkler çıkarılır. Bu renkler sayfa arka planı için blur gradient oluşturmak ve UI elementlerini renklendirmek için kullanılır.
İstatistik Güncelleme
$album->increment('view_count') ile görüntülenme sayacı artar. Ayrıca activity_log tablosuna "album_viewed" eventi kaydedilir. Admin panelden en çok görüntülenen albümler takip edilebilir.
İndirme Yetki Kontrolü
Kullanıcının subscription durumu kontrol edilir. Premium üye ise şarkılarda indirme butonu görünür. Gate::allows('download', $song) ile yetki doğrulanır.
Bu Sayfanın Anahtar Terimleri
Album Model
Albüm bilgilerini tutan veritabanı yapısı
Eager Loading
İlişkili verilerin tek sorguda yüklenmesi (hız için)
Slug
URL'de kullanılan okunabilir metin (karma-tarkan)
View Count
Sayfa görüntüleme sayacı