@foreach($sales as $sale)
@php
$user = auth()->user();
$course = \App\Models\Webinar::where('id', $sale->webinar_id)
->with([
'quizzes' => function ($query) {
$query->where('status', 'active')
->with(['quizResults', 'quizQuestions']);
},
'tags',
'prerequisites' => function ($query) {
$query->with(['prerequisiteWebinar' => function ($query) {
$query->with(['teacher' => function ($qu) {
$qu->select('id', 'full_name', 'avatar');
}]);
}]);
$query->orderBy('order', 'asc');
},
'faqs' => function ($query) {
$query->orderBy('order', 'asc');
},
'webinarExtraDescription' => function ($query) {
$query->orderBy('order', 'asc');
},
'chapters' => function ($query) use ($user) {
$query->where('status', \App\Models\WebinarChapter::$chapterActive);
$query->orderBy('order', 'asc');
if($user->role_id == 1){
$query->with([
'chapterItems' => function ($query) {
$query
->where('student_permission', 1)
->orderBy('order', 'asc');
}
]);
}else{
$query->with([
'chapterItems' => function ($query) {
$query->orderBy('order', 'asc');
}
]);
}
},
'files' => function ($query) use ($user) {
$query->join('webinar_chapters', 'webinar_chapters.id', '=', 'files.chapter_id')
->select('files.*', DB::raw('webinar_chapters.order as chapterOrder'))
->where('files.status', \App\Models\WebinarChapter::$chapterActive)
->where('files.student_permission', 1)
->orderBy('chapterOrder', 'asc')
->orderBy('files.order', 'asc')
->with([
'learningStatus' => function ($query) use ($user) {
$query->where('user_id', !empty($user) ? $user->id : null);
}
]);
},
'textLessons' => function ($query) use ($user) {
$query->where('status', \App\Models\WebinarChapter::$chapterActive)
->withCount(['attachments'])
->orderBy('order', 'asc')
->with([
'learningStatus' => function ($query) use ($user) {
$query->where('user_id', !empty($user) ? $user->id : null);
}
]);
},
'sessions' => function ($query) use ($user) {
$query->where('status', \App\Models\WebinarChapter::$chapterActive)
->orderBy('order', 'asc')
->with([
'learningStatus' => function ($query) use ($user) {
$query->where('user_id', !empty($user) ? $user->id : null);
}
]);
},
'assignments' => function ($query) {
$query->where('status', App\Models\WebinarChapter::$chapterActive);
},
'tickets' => function ($query) {
$query->orderBy('order', 'asc');
},
'filterOptions',
'category',
'teacher',
'reviews' => function ($query) {
$query->where('status', 'active');
$query->with([
'comments' => function ($query) {
$query->where('status', 'active');
},
'creator' => function ($qu) {
$qu->select('id', 'full_name', 'avatar');
}
]);
},
'comments' => function ($query) {
$query->where('status', 'active');
$query->whereNull('reply_id');
$query->with([
'user' => function ($query) {
$query->select('id', 'full_name', 'role_name', 'role_id', 'avatar');
},
'replies' => function ($query) {
$query->where('status', 'active');
$query->with([
'user' => function ($query) {
$query->select('id', 'full_name', 'role_name', 'role_id', 'avatar');
}
]);
}
]);
$query->orderBy('created_at', 'desc');
},
])
->withCount([
'sales' => function ($query) {
$query->whereNull('refund_at');
},
'noticeboards'
])
->where('status', 'active')
->first();
$hasBought = $course->checkUserHasBought($user);
@endphp
{{ $sale->webinar->code }}-{{ $sale->webinar->title }}
@foreach($course->chapters as $chapter)
@if((!empty($chapter->chapterItems) and count($chapter->chapterItems)) or (!empty($chapter->quizzes) and count($chapter->quizzes)))
{{ $chapter->code }}-{{ $chapter->title }}
@php
$chapterItems = collect($chapter->chapterItems);
// Count items where the type is "assignment"
$assignmentItemsCount = $chapterItems->filter(function ($item) {
return $item->type === 'assignment';
})->count();
@endphp
Total {{ $assignmentItemsCount }} Assignment
@if(!empty($chapter->chapterItems) and count($chapter->chapterItems))
@php
//$col = collect($chapter->chapterItems);
//dd($col->sortByDesc('type'));
$hasFile = false;
$hasAssignment = false;
@endphp
@foreach(collect($chapter->chapterItems)->sortByDesc('type') as $chapterItem)
@if($chapterItem->type == \App\Models\WebinarChapterItem::$chapterAssignment and !empty($chapterItem->assignment) and $chapterItem->assignment->status == 'active')
@if(!$hasAssignment)
Assignment
@php $hasAssignment = true; @endphp
@endif
@include('web.default.course.tabs.contents.assignment' ,['assignment' => $chapterItem->assignment, 'accordionParent' => 'chaptersAccordion'])
@endif
@endforeach
@endif
@endif
@endforeach
@endforeach