@extends('layouts.app') @section('css') @endsection @section('js') @endsection @push('pageTitle') {{ __('labels.discussion_forum') }} @endpush @section('content') @include('components.common.page-header', [ 'pageTitle' => __('labels.discussion_forum'), 'actionButton' => [ 'url' => route('discussion-threads.index'), 'text' => __('labels.back_to_list'), 'icon' => 'fa-arrow-left', ], ])
{{-- Add border color based on thread status --}} @php $borderClass = ''; if ($discussionThread->is_locked) { $borderClass = 'border-left-danger border-start border-4 border-danger'; } elseif (!$discussionThread->is_approved) { $borderClass = 'border-left-warning border-start border-4 border-warning'; } elseif ($discussionThread->is_solved) { $borderClass = 'border-left-success border-start border-4 border-success'; } @endphp
{{-- Status Alert Banner at the top --}} @if ($discussionThread->is_locked || !$discussionThread->is_approved || $discussionThread->is_solved) @endif
{{-- Title with status icon prefix --}}

@if ($discussionThread->is_locked) @elseif(!$discussionThread->is_approved) @endif {{ $discussionThread->title }}

{{-- Status badges under title --}}
@if ($discussionThread->is_locked) {{ __('labels.locked') }} @endif @if (!$discussionThread->is_approved) {{ __('labels.pending_approval') }} @endif @if ($discussionThread->trashed()) {{ __('labels.deleted') }} @endif
{{-- Quick Actions --}}
@can('update', $discussionThread) @endcan @can('delete', $discussionThread) @endcan {{-- Admin action buttons (with text labels) --}} @if (Gate::allows('admin-action')) @endif
{{-- Type and Category Badges --}}
@if ($discussionThread->category) {{ $discussionThread->category?->title }} @endif
{{-- Stats --}}
{{ $discussionThread->view_count ?? 0 }}
{{ __('labels.views') }}
{{ __('labels.likes') }}
{{ $discussionThread->comments_count ?? 0 }}
{{ __('labels.comments') }}
{{-- METADATA CARDS --}}
{{-- Category Card --}} @if ($discussionThread->category)
{{ __('labels.category') }}
{{ $discussionThread->category?->title }}
@endif {{-- Status Card --}}
{{ __('labels.status') }}
@if ($discussionThread->is_locked) {{ __('labels.locked') }} @elseif(!$discussionThread->is_approved) {{ __('labels.pending_approval') }} @elseif($discussionThread->is_solved) {{ __('labels.is_solved') }} @else {{ $discussionThread->is_published ? __('labels.published') : __('labels.draft') }} @endif
@if ( $discussionThread->is_published && $discussionThread->published_at && !$discussionThread->is_locked && $discussionThread->is_approved) {{ __('labels.since') }} {{ date('d.m.Y H:i', strtotime($discussionThread->published_at)) }} @endif
{{-- Voting and Actions --}}
@if (!$discussionThread->is_locked && !$discussionThread->trashed() && $discussionThread->is_approved) {{-- @include('components.common.saveable', [ 'saveableType' => 'discussionThread', 'saveableId' => $discussionThread->id, 'isSaved' => auth()->check() ? $discussionThread->isSavedByUser(auth()->id()) : false, 'saveCounts' => $discussionThread->saves_count ?? $discussionThread->saves()->count(), ]) @include('components.common.favorable', [ 'favorableType' => 'discussionThread', 'favorableId' => $discussionThread->id, 'isFavorited' => auth()->check() ? $discussionThread->isFavoritedByUser(auth()->id()) : false, 'favoriteCounts' => $discussionThread->favorites_count ?? $discussionThread->favorites()->count(), ]) --}} @else @if ($discussionThread->is_locked) {{ __('labels.voting_disabled_locked') }} @elseif(!$discussionThread->is_approved) {{ __('labels.voting_disabled_pending') }} @endif @endif @include('components.common.saveable', [ 'saveableType' => 'discussion-thread', 'saveableId' => $discussionThread->id, 'isSaved' => auth()->check() ? $discussionThread->isSavedByUser(auth()->id()) : false, 'saveCounts' => $discussionThread->saves_count ?? $discussionThread->saves()->count(), ]) @include('components.common.favorable', [ 'favorableType' => 'discussion-thread', 'favorableId' => $discussionThread->id, 'isFavorited' => auth()->check() ? $discussionThread->isFavoritedByUser(auth()->id()) : false, 'favoriteCounts' => $discussionThread->favorites_count ?? $discussionThread->favorites()->count(), ])
@can('update', $discussionThread) @if (!$discussionThread->trashed()) {{ __('labels.edit') }} @endif @endcan @if (!$discussionThread->is_locked && !$discussionThread->trashed() && $discussionThread->is_approved) {{ __('labels.reply') }} @else @endif
@if ($discussionThread->description)
{{ __('labels.description') }}
{!! $discussionThread->description !!} {{-- {!! nl2br(e($discussionThread->description)) !!} --}}
@endif @if (isset($discussionThread)) @include('components.comments.index', [ 'commentsCount' => $discussionThread->comments()->approved()->count(), 'comments' => $discussionThread->comments ?? null, 'commentableId' => $discussionThread->id ?? null, 'commentableType' => "App\Models\DiscussionThread", 'loadCommentsUrl' => route('comments.index', ['commentableType' => 'discussion_threads', 'commentableId' => $discussionThread->id]), 'isDisabled' => $discussionThread->is_locked || $discussionThread->trashed() || !$discussionThread->is_approved, 'disabledMessage' => $discussionThread->is_locked ? __('labels.thread_locked') : (!$discussionThread->is_approved ? __('labels.unapprove_thread') : ''), ]) @endif
@include('components.meta.stats',[ 'created_at' => $discussionThread->created_at ?? null, 'updated_at' => $discussionThread->updated_at ?? null, 'creater' => $discussionThread->author?->name ?? null, ]) @endsection