CrestRoad/laravel/resources/views/lms/lesson.blade.php

215 lines
9.9 KiB
PHP

@extends('layouts.lms', ["page_title"=> "Social Feed"])
@section('content')
<!-- Start Content-->
<div class="container-fluid">
<!-- end page title -->
@if (session()->has('message'))
<div class="alert alert-success mt-3">
{{ session()->get('message') }}
</div>
@endif
<div class="row">
<div class="col-6 mt-2">
<h4 class="page-title font-16">Course: {{$course->title}}</h4>
</div>
<div class="col-6 mt-2 mb-2 d-sm-none">
<button type="button" class="btn btn-outline-dark rounded-pill float-end" id="showhide-menu" style="padding:2px 15px"><i class="mdi mdi-menu mdi-24px"></i></button>
</div>
<div class="col-md-9">
<iframe id="article-frame" src="" style="width:100%; height:calc(100vh - 130px); border:none;"></iframe>
</div>
<div class="col-md-3 d-sm-none d-none" id="mobile-menu-wrapper">
<div id="accordion">
@php
$lessonCount = 1;
if(!is_array($completed_articles)) {
$completed_articles = [];
}
@endphp
@foreach($lessons as $lesson)
<div class="card mb-1">
<div class="card-header" id="headingOne">
<h5 class="m-0">
<a class="text-dark" data-bs-toggle="collapse" href="#lesson-{{$lesson->id}}" aria-expanded="true">
<i class="mdi mdi-code-greater-than me-1 text-success"></i>
Lesson {{$lessonCount}}: {{$lesson->title}}<br />
<small class="ms-3">{{count($lesson->articles)}} Articles</small>
</a>
</h5>
</div>
<div id="lesson-{{$lesson->id}}" class="collapse" aria-labelledby="headingOne" data-bs-parent="#accordion">
<div class="card-body">
<ul class="list-group list-group-flush">
@foreach($lesson->articles as $article)
<li class="list-group-item" style="cursor: pointer;" article="{{$article->info->id}}" type="{{$article->type}}"><i class="{{in_array($article->info->id, $completed_articles)?'fe-check-square text-success completed':'fe-square text-warning'}}"></i>{{$article->info->title}}</li>
@endforeach
</ul>
</div>
</div>
</div>
@php
$lessonCount++;
@endphp
@endforeach
<!-- <div class="card mb-1">
<div class="card-header" id="headingOne">
<h5 class="m-0">
<a class="text-dark" data-bs-toggle="collapse" href="#lesson-download-cert" aria-expanded="true">
<i class="mdi mdi-code-greater-than me-1 text-success"></i>
Download Certificate
</a>
</h5>
</div>
</div> -->
</div> <!-- end #accordions-->
<!-- Story Box-->
</div>
<div class="col-md-3 d-none d-sm-block">
<div id="accordion-desktop">
@php
$lessonCount = 1;
if(!is_array($completed_articles)) {
$completed_articles = [];
}
@endphp
@foreach($lessons as $lesson)
<div class="card mb-1">
<div class="card-header" id="headingOne">
<h5 class="m-0">
<a class="text-dark" data-bs-toggle="collapse" href="#lesson-{{$lesson->id}}" aria-expanded="true">
<i class="mdi mdi-code-greater-than me-1 text-success"></i>
Lesson {{$lessonCount}}: {{$lesson->title}}<br />
<small class="ms-3">{{count($lesson->articles)}} Articles</small>
</a>
</h5>
</div>
<div id="lesson-{{$lesson->id}}" class="collapse" aria-labelledby="headingOne" data-bs-parent="#accordion-desktop">
<div class="card-body">
<ul class="list-group list-group-flush">
@foreach($lesson->articles as $article)
<li class="list-group-item" style="cursor: pointer;" article="{{$article->info->id}}" type="{{$article->type}}"><i class="{{in_array($article->info->id, $completed_articles)?'fe-check-square text-success completed':'fe-square text-warning'}}"></i>{{$article->info->title}}</li>
@endforeach
</ul>
</div>
</div>
</div>
@php
$lessonCount++;
@endphp
@endforeach
<!-- <div class="card mb-1">
<div class="card-header" id="headingOne">
<h5 class="m-0">
<a class="text-dark" data-bs-toggle="collapse" href="#lesson-download-cert" aria-expanded="true">
<i class="mdi mdi-code-greater-than me-1 text-success"></i>
Download Certificate
</a>
</h5>
</div>
</div> -->
</div> <!-- end #accordions-->
<!-- Story Box-->
</div>
</div>
</div> <!-- container -->
<style type="text/css">
#accordion i {
font-weight: bold; font-size: 18px; margin-left: -24px; margin-right:5px;
}
#mobile-menu-wrapper {
position: absolute;
margin-top: 65px;
background-color: #fff;
}
</style>
@endsection
@section('script')
<script type="text/javascript">
$(document).ready(function($) {
$('.list-group-flush li').click(function(){
$('#mobile-menu-wrapper').removeClass('d-block')
$('#mobile-menu-wrapper').addClass('d-none')
@if($course->is_sequential)
if($('i', this).hasClass('fe-check-square') ) {
$('#article-frame').attr('src', '/lmsarticle?type='+$(this).attr('type')+'&id='+$(this).attr('article'))
} else {
alert('You need to complete earlier chapters to view this chapter!!!')
}
@else
$('#article-frame').attr('src', '/lmsarticle?type='+$(this).attr('type')+'&id='+$(this).attr('article'))
@endif
})
let hasfound = false
$("#accordion li").each(function( index ) {
if(!hasfound && $('i', this).hasClass('fe-square') ) {
$('#article-frame').attr('src', '/lmsarticle?type='+ $(this).attr('type')+'&id='+ $(this).attr('article'))
hasfound = true
}
});
$("#accordion-desktop li").each(function( index ) {
if(!hasfound && $('i', this).hasClass('fe-square') ) {
$('#article-frame').attr('src', '/lmsarticle?type='+ $(this).attr('type')+'&id='+ $(this).attr('article'))
hasfound = true
}
});
console.log()
if(!hasfound) {
$('#article-frame').attr('src', '/lmsgeneratecertificate')
}
//$('#mobile-menu-wrapper').hide()
$('#showhide-menu').click(function(){
if($('#mobile-menu-wrapper').hasClass('d-block')) {
$('#mobile-menu-wrapper').removeClass('d-block')
$('#mobile-menu-wrapper').addClass('d-none')
}
else {
$('#mobile-menu-wrapper').removeClass('d-none')
$('#mobile-menu-wrapper').addClass('d-block')
}
})
// let element = $('#accordion li').first()
// $('#article-frame').attr('src', '/lmsarticle?type='+element.attr('type')+'&id='+element.attr('article'))
});
function invokenext(article) {
console.log(article)
let found = false
let allfound = false
if($(window).width() > 730) {
$("#accordion-desktop .list-group-flush li").each(function( index ) {
if(found) {
$('#article-frame').attr('src', '/lmsarticle?type='+$(this).attr('type')+'&id='+$(this).attr('article'))
found = false
allfound = true
} else if(!found && $(this).attr('article') == article ) {
$(this).find('i').addClass('fe-check-square').addClass('text-success').removeClass('fe-square').removeClass('text-warning')
found = true;
}
});
} else {
$("#mobile-menu-wrapper .list-group-flush li").each(function( index ) {
if(found) {
$('#article-frame').attr('src', '/lmsarticle?type='+$(this).attr('type')+'&id='+$(this).attr('article'))
found = false
allfound = true
} else if(!found && $(this).attr('article') == article ) {
$(this).find('i').addClass('fe-check-square').addClass('text-success').removeClass('fe-square').removeClass('text-warning')
found = true;
}
});
}
if(!allfound) {
$('#article-frame').attr('src', '/lmsgeneratecertificate')
}
}
</script>
@endsection