@extends('frontend.layouts.app') @php $__epTitle = $anime->title . ' ' . $seasonModel->season_number . '. Sezon ' . $ep->episode_number . '. Bölüm İzle'; $__epDesc = $anime->title . ' ' . $seasonModel->season_number . '. sezon ' . $ep->episode_number . '. bölümünü Türkçe altyazılı ve dublajlı ücretsiz izle — Animexe.'; $__epImgUrl = $anime->coverUrl ?? url('/logo.jpg'); $__noindexWp = \App\Models\Setting::get('seo_noindex_watch', '0') === '1'; $__domain = rtrim(\App\Models\Setting::get('seo_canonical_domain', config('app.url')), '/'); @endphp @section('title', $__epTitle . ' - Türkçe | Animexe') @section('meta_description', $__epDesc) @section('meta_keywords', $anime->title . ' izle, ' . $anime->title . ' ' . $ep->episode_number . '. bölüm izle, türkçe anime izle, animexe') @section('robots', $__noindexWp ? 'noindex, nofollow' : 'index, follow') @section('og_title', $__epTitle . ' - Türkçe | Animexe') @section('og_description', $__epDesc) @section('og_image', $__epImgUrl) @section('schema') @if(\App\Models\Setting::get('seo_enable_schema','1') === '1') @endif @endsection @push('styles') {{-- CDN preconnect: HLS segment bağlantıları için önceden bağlan --}} @endpush @section('content')
{{-- ── Main ───────────────────────────────────────────────────── --}}
{{-- Ambiyans ışığı canvas — .vw dışında, .pw-main içinde --}}
{{-- IMA Ad Container --}} @if(!empty($adsConfig['enabled']) && !empty($adsConfig['vast_url'])) @endif {{-- Intro overlay --}} @if($introUrl)
@endif {{-- NicoNico yorum katmanı --}}
{{-- İlk kez izleyenler badge --}} {{-- Watch Party butonu --}} @auth @endauth {{-- Ruh Hali Motoru overlay --}}
🎬 Bölüm bitti! Sırada ne izleyelim?
Ruh halini seç, sana özel öneri getirelim.
Önerilen animeler
{{-- Watermark cover --}} @if($wmCoverSeconds > 0)
ANIMEXE
@endif {{-- Buffer spinner (mid-play buffering) --}}
{{-- Loading screen (ilk yükleme + kaynak değişimi) --}}
Yükleniyor
{{-- İntro/Outro atla butonu --}} {{-- Most-skipped segment button --}} {{-- Muted chip (autoplay policy — küçük, video'yu bloklamaz) --}} {{-- Subtitle overlay --}}
{{-- Seek flash --}}
10 saniye
10 saniye
{{-- Controls --}}
{{-- Progress --}}
0:00
{{-- Control bar — süre ortada, sağda ayar / tam ekran aynı hizada --}}
@if($prev) @endif @if($next) @endif
0:00 / 0:00
{{-- Kalite badge: sadece landscape'te görünür --}}
@if(count($videoSourcesData ?? []) > 1)
Çeviri / Kaynak
@foreach($videoSourcesData as $idx => $vs)
@if(!empty($vs['featured'])) ⭐ {{ $vs['label'] }} @else {{ $vs['label'] }} @endif
@endforeach
@endif @if(count($dubSources) > 1)
Dublaj / Ses
@foreach($dubSources as $d)
{{ $d['label'] }}
@endforeach
@endif @if(count($subtitlesData) > 0)
Altyazı
Kapalı
@foreach($subtitlesData as $i => $s)
{{ $s['label'] }}
@endforeach
Altyazı Görünümü
Boyut
Renk
Arka plan
@endif
Video Kalitesi
Otomatik
{{-- HLS levels injected by JS --}}
Oynatma Hızı
@foreach([0.5,0.75,1,1.25,1.5,2] as $spd)
{{ $spd }}x
@endforeach
Video Zoom
Ekranı Doldur
Normal 100%
Görsel
Ambiyans Işığı
{{-- Altyazı: her zaman görünür, ayrı CC butonu --}} @if(count($subtitlesData) > 0)
Altyazı
Kapalı
@foreach($subtitlesData as $i => $s)
{{ $s['label'] }}
@endforeach
@endif {{-- Dub: sadece geniş ekranda ayrı buton --}} @if(count($dubSources) > 1)
Dublaj / Dil
@foreach($dubSources as $d)
{{ $d['label'] }}
@endforeach
@endif
{{-- Next ep --}} @if($next)
Sıradaki Bölüm
{{ $next->episode_number }}. {{ $next->title ?: 'Bölüm' }}
Sonraki Bölüme Geç
@endif
{{-- NicoNico yorum giriş satırı --}} @auth
@endauth {{-- Kaynak Seçici Tab Bar --}} @if(count($videoSourcesData ?? []) > 1)
Çeviri / Kaynak
@foreach($videoSourcesData as $idx => $vs) @endforeach
@endif {{-- Info bar --}}
{{ $anime->title }}  · {{ $seasonModel->season_number }}. Sezon

{{ $ep->episode_number }}. Bölüm{{ $ep->title ? ' — '.$ep->title : '' }}

{{ number_format($ep->view_count) }} @if($ep->duration){{ $ep->duration_formatted }}@endif @if($activeDub){{ ['trdub'=>'TR Dublaj','original'=>'Japonca','endub'=>'EN Dublaj'][$activeDub]??$activeDub }}@endif @if($anime->rating){{ number_format($anime->rating,1) }}@endif
@auth @endauth @if($prev) Önceki @endif @if($next) Sonraki @endif
{{-- ── Tabs + Content ─────────────────────────────────────────── --}}
{{-- Tab nav --}}
@auth @else @endauth
{{-- ── Info Panel ──────────────────────────────────────────── --}}
{{-- Anime posteri --}} @if($anime->coverUrl)
{{ $anime->title }}
@endif
{{ $anime->title }}  ·  {{ $seasonModel->season_number }}. Sezon
{{ $ep->episode_number }}. Bölüm{{ $ep->title ? ' — '.$ep->title : '' }}
{{ number_format($ep->view_count) }} izlenme
@if($ep->duration)
{{ $ep->duration_formatted }}
@endif @if($activeDub)
{{ ['trdub'=>'Türkçe Dublaj','original'=>'Japonca (Orijinal)','endub'=>'İngilizce Dublaj'][$activeDub] ?? $activeDub }}
@endif @if($anime->rating)
{{ number_format($anime->rating,1) }}
@endif
{{-- Like / Dislike --}} @php $epLikes = \App\Models\EpisodeVote::where('episode_id',$ep->id)->where('vote',1)->count(); $epDislikes = \App\Models\EpisodeVote::where('episode_id',$ep->id)->where('vote',-1)->count(); $myVote = auth()->check() ? \App\Models\EpisodeVote::where('user_id',auth()->id())->where('episode_id',$ep->id)->value('vote') : null; @endphp
@auth @else {{ $epLikes }} {{ $epDislikes }} @endauth
@if($ep->description)
Bölüm Hakkında

{{ $ep->description }}

@if(mb_strlen($ep->description) > 220) @endif
@elseif($anime->description)
Anime Hakkında

{{ $anime->description }}

@if(mb_strlen($anime->description) > 220) @endif
@endif {{-- Türler --}} @if($anime->genres && $anime->genres->count())
@foreach($anime->genres->take(6) as $g) {{ $g->name }} @endforeach
@endif
{{-- Anime meta --}}
@if($anime->studio)
Stüdyo {{ $anime->studio }}
@endif @if($anime->release_year)
Yıl {{ $anime->release_year }}
@endif @if($anime->status)
Durum {{ ['ongoing'=>'Devam Ediyor','completed'=>'Tamamlandı','upcoming'=>'Yakında'][$anime->status] ?? $anime->status }}
@endif
Sezon {{ $anime->seasons->count() }} Sezon · {{ $anime->episode_count }} Bölüm
{{-- ── Comments Panel ──────────────────────────────────────── --}}
Yorumlar
@auth
@if(auth()->user()->avatar)@else{{ mb_substr(auth()->user()->name,0,1) }}@endif
@if(auth()->check() && auth()->user()->hasPerk('comment_gif')) @else @endif
@else @endauth
{{-- ── AI Analiz Paneli ──────────────────────────────────────── --}} @auth
{{-- Bölüm AI analizi --}}
Bölüm AI Analizi
Spoilersız bölüm analizi ve öneriler
{{-- Sohbet bölümü (mini) --}}
Bu anime hakkında AI'ya sor
@foreach(['Bu animeyi tamamlamalı mıyım?','Benzer anime önerir misin?','Bu bölümde neler oldu?','Anime ne zaman bitti?'] as $q) @endforeach
{{-- ── Not Paneli ─────────────────────────────────────────────── --}}
Bölüm Notları
Henüz not eklemedin. Sahne kaydet, sonra bul!
@endauth {{-- ── Tahmin Paneli (herkese görünür, giriş gerektirir yazma) ── --}}
Bir Sonraki Bölüm Tahminleri
@auth
@else
Giriş yap veya kayıt ol — tahmin yaz
@endauth
{{-- ── Sidebar ─────────────────────────────────────────────────── --}}
{{-- Sekmeler --}}
{{-- Bölümler sekmesi --}}
@if($anime->seasons->count() > 1)
@foreach($anime->seasons as $s) @endforeach
@endif
@foreach($anime->seasons as $s) @endforeach
{{-- Spoiler Kutusu sekmesi --}}
Yükleniyor...
@auth
@else
Giriş yap — yorum ekle
@endauth
{{-- ── Share Modal ─────────────────────────────────── --}} @auth @endauth {{-- Watch Party Modal --}} @auth
Birlikte İzle — Watch Party

Oda oluştur, kodunu arkadaşlarınla paylaş ve aynı anda izleyin.

veya
@endauth @endsection {{-- Tracking meta tags --}} @push('scripts') @if(!empty($adsConfig['enabled']) && !empty($adsConfig['vast_url'])) @endif @auth @endauth {{-- ═══════════════════════════════════════════════════════════════ SOSYAL ÖZELLİKLER JS: NicoNico + Tahminler + Watch Party + First-Watch ═══════════════════════════════════════════════════════════════ --}} @endpush