Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 1 | {% extends "templates/base.html" %} |
| 2 | {% block title %}{{ course.course_name }}{% endblock %} |
Shivam Mishra | 87a7438 | 2019-05-21 12:05:19 +0530 | [diff] [blame] | 3 | {% from "www/lms/macros/hero.html" import hero %} |
Shivam Mishra | 2a0483d | 2019-06-06 16:02:38 +0530 | [diff] [blame] | 4 | {% from "www/lms/macros/card.html" import null_card %} |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 5 | |
| 6 | {% block head_include %} |
| 7 | <style> |
| 8 | div.card-hero-img { |
| 9 | height: 220px; |
| 10 | background-size: cover; |
| 11 | background-repeat: no-repeat; |
| 12 | background-position: center; |
| 13 | background-color: rgb(250, 251, 252); |
| 14 | } |
| 15 | |
| 16 | .card-image-wrapper { |
| 17 | display: flex; |
| 18 | overflow: hidden; |
| 19 | height: 220px; |
| 20 | background-color: rgb(250, 251, 252); |
| 21 | justify-content: center; |
| 22 | } |
| 23 | |
| 24 | .image-body { |
| 25 | align-self: center; |
| 26 | color: #d1d8dd; |
| 27 | font-size: 24px; |
| 28 | font-weight: 600; |
| 29 | line-height: 1; |
| 30 | padding: 20px; |
| 31 | } |
Shivam Mishra | b312765 | 2019-06-06 14:03:01 +0530 | [diff] [blame] | 32 | section { |
| 33 | padding: 5rem 0 5rem 0; |
| 34 | } |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 35 | </style> |
| 36 | {% endblock %} |
| 37 | |
| 38 | |
Shivam Mishra | 2a0483d | 2019-06-06 16:02:38 +0530 | [diff] [blame] | 39 | {% macro card(topic) %} |
| 40 | <div class="col-sm-4 mb-4 text-left"> |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 41 | <div class="card h-100"> |
Shivam Mishra | 24bd07d | 2019-05-30 16:36:58 +0530 | [diff] [blame] | 42 | {% if has_access %} |
Shivam Mishra | d69892a | 2019-06-05 19:42:30 +0530 | [diff] [blame] | 43 | <a href="/lms/topic?program={{ program }}&course={{ course.name }}&topic={{ topic.name }}" class="no-decoration no-underline"> |
Shivam Mishra | ae2871f | 2019-05-29 13:11:34 +0530 | [diff] [blame] | 44 | {% else %} |
Shivam Mishra | 24bd07d | 2019-05-30 16:36:58 +0530 | [diff] [blame] | 45 | <div> |
Shivam Mishra | ae2871f | 2019-05-29 13:11:34 +0530 | [diff] [blame] | 46 | {% endif %} |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 47 | {% if topic.hero_image %} |
| 48 | <div class="card-hero-img" style="background-image: url({{ topic.hero_image }})"></div> |
| 49 | {% else %} |
| 50 | <div class="card-image-wrapper text-center"> |
Shivam Mishra | 24bd07d | 2019-05-30 16:36:58 +0530 | [diff] [blame] | 51 | <div class="image-body"><i class="fa fa-picture-o" aria-hidden="true"></i></div> |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 52 | </div> |
| 53 | {% endif %} |
| 54 | <div class='card-body'> |
| 55 | <h5 class='card-title'>{{ topic.topic_name }}</h5> |
| 56 | <div> |
| 57 | <ol class="list-unstyled"> |
| 58 | {% for content in topic.topic_content %} |
Shivam Mishra | ae2871f | 2019-05-29 13:11:34 +0530 | [diff] [blame] | 59 | <li> |
Shivam Mishra | 24bd07d | 2019-05-30 16:36:58 +0530 | [diff] [blame] | 60 | {% if has_access %} |
| 61 | <a class="text-muted" href="/lms/content?program={{ program }}&course={{ course.name }}&topic={{ topic.name }}&type={{ content.content_type }}&content={{ content.content }}"> |
Shivam Mishra | ae2871f | 2019-05-29 13:11:34 +0530 | [diff] [blame] | 62 | {{ content.content }} |
| 63 | </a> |
Shivam Mishra | 24bd07d | 2019-05-30 16:36:58 +0530 | [diff] [blame] | 64 | {% else %} |
| 65 | <span class="text-muted">{{ content.content }}</span> |
Shivam Mishra | ae2871f | 2019-05-29 13:11:34 +0530 | [diff] [blame] | 66 | {% endif %} |
| 67 | </li> |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 68 | {% endfor %} |
| 69 | </ol> |
| 70 | </div> |
| 71 | </div> |
Shivam Mishra | 24bd07d | 2019-05-30 16:36:58 +0530 | [diff] [blame] | 72 | {% if has_access %} |
Shivam Mishra | 87a7438 | 2019-05-21 12:05:19 +0530 | [diff] [blame] | 73 | <div class='card-footer'> |
Shivam Mishra | 570161b | 2019-06-05 13:08:53 +0530 | [diff] [blame] | 74 | {% if progress[topic.name].completed %} |
| 75 | <span class="indicator green">Completed</span> |
| 76 | {% elif progress[topic.name].started %} |
| 77 | <span class="indicator orange">In Progress</span> |
| 78 | {% else %} |
Shivam Mishra | d69892a | 2019-06-05 19:42:30 +0530 | [diff] [blame] | 79 | <span class="indicator blue">Start</span> |
Shivam Mishra | 570161b | 2019-06-05 13:08:53 +0530 | [diff] [blame] | 80 | {% endif %} |
Shivam Mishra | 87a7438 | 2019-05-21 12:05:19 +0530 | [diff] [blame] | 81 | </div> |
Shivam Mishra | ae2871f | 2019-05-29 13:11:34 +0530 | [diff] [blame] | 82 | </a> |
Shivam Mishra | 24bd07d | 2019-05-30 16:36:58 +0530 | [diff] [blame] | 83 | {% else %} |
| 84 | </div> |
Shivam Mishra | ae2871f | 2019-05-29 13:11:34 +0530 | [diff] [blame] | 85 | {% endif %} |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 86 | </div> |
| 87 | </div> |
| 88 | {% endmacro %} |
| 89 | |
| 90 | {% block content %} |
Shivam Mishra | b312765 | 2019-06-06 14:03:01 +0530 | [diff] [blame] | 91 | <section class="section"> |
Shivam Mishra | d69892a | 2019-06-05 19:42:30 +0530 | [diff] [blame] | 92 | {{ hero(course.course_name, course.description, has_access, {'name': 'Program', 'url': '/lms/program?program=' + program }) }} |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 93 | <div class='container'> |
| 94 | <div class="row mt-5"> |
| 95 | {% for topic in topics %} |
Shivam Mishra | 2a0483d | 2019-06-06 16:02:38 +0530 | [diff] [blame] | 96 | {{ card(topic) }} |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 97 | {% endfor %} |
Shivam Mishra | 2a0483d | 2019-06-06 16:02:38 +0530 | [diff] [blame] | 98 | {% if topics %} |
| 99 | {% for n in range(3 - ((topics|length)%3)) %} |
| 100 | {{ null_card() }} |
| 101 | {% endfor %} |
| 102 | {% endif %} |
Shivam Mishra | d7e8298 | 2019-05-20 11:55:17 +0530 | [diff] [blame] | 103 | </div> |
| 104 | </div> |
| 105 | </section> |
| 106 | {% endblock %} |