blob: 250c39d498f5c32d5648888c2354b64f11878a90 [file] [log] [blame]
{% extends "templates/base.html" %}
{% block title %}{{ course.course_name }}{% endblock %}
{% from "www/lms/macros/hero.html" import hero %}
{% from "www/lms/macros/card.html" import null_card %}
{% block head_include %}
<style>
div.card-hero-img {
height: 220px;
background-size: cover;
background-repeat: no-repeat;
background-position: center;
background-color: rgb(250, 251, 252);
}
.card-image-wrapper {
display: flex;
overflow: hidden;
height: 220px;
background-color: rgb(250, 251, 252);
justify-content: center;
}
.image-body {
align-self: center;
color: #d1d8dd;
font-size: 24px;
font-weight: 600;
line-height: 1;
padding: 20px;
}
section {
padding: 5rem 0 5rem 0;
}
</style>
{% endblock %}
{% macro card(topic) %}
<div class="col-sm-4 mb-4 text-left">
<div class="card h-100">
{% if has_access %}
<a href="/lms/topic?program={{ program }}&course={{ course.name }}&topic={{ topic.name }}" class="no-decoration no-underline">
{% else %}
<div onclick="show_singup()">
{% endif %}
{% if topic.hero_image %}
<div class="card-hero-img" style="background-image: url('{{ topic.hero_image }})'"></div>
{% else %}
<div class="card-image-wrapper text-center">
<div class="image-body"><i class="fa fa-picture-o" aria-hidden="true"></i></div>
</div>
{% endif %}
<div class='card-body'>
<h5 class='card-title'>{{ topic.topic_name }}</h5>
<div>
<ol class="list-unstyled">
{% for content in topic.topic_content %}
<li>
{% if has_access %}
<a class="text-muted" href="/lms/content?program={{ program }}&course={{ course.name }}&topic={{ topic.name }}&type={{ content.content_type }}&content={{ content.content }}">
{{ content.content }}
</a>
{% else %}
<span class="text-muted">{{ content.content }}</span>
{% endif %}
</li>
{% endfor %}
</ol>
</div>
</div>
{% if has_access %}
<div class='card-footer'>
{% if progress[topic.name].completed %}
<span class="indicator green">Completed</span>
{% elif progress[topic.name].started %}
<span class="indicator orange">In Progress</span>
{% else %}
<span class="indicator blue">Start</span>
{% endif %}
</div>
</a>
{% else %}
</div>
{% endif %}
</div>
</div>
{% endmacro %}
{% block content %}
<section class="section">
{{ hero(course.course_name, course.description, has_access, {'name': 'Program', 'url': '/lms/program?program=' + program }) }}
<div class='container'>
<div class="row mt-5">
{% for topic in topics %}
{{ card(topic) }}
{% endfor %}
{% if topics %}
{% for n in range(((topics|length)%3)) %}
{{ null_card() }}
{% endfor %}
{% endif %}
</div>
</div>
</section>
{% endblock %}
{% block script %}
<script>
function show_singup() {
if (frappe.session.user == "Guest") {
let signup_dialog = new frappe.ui.Dialog({
title: __('Sign Up'),
primary_action: function() {
window.location.href = '/login#signup'
},
primary_action_label: 'Sign Up'
})
signup_dialog.set_message('You have to sign up to access the course');
signup_dialog.$message.show()
signup_dialog.show();
}
}
</script>
{% endblock %}