Compare commits

...

10 Commits

Author SHA1 Message Date
pateljannat
709f0c2274 fix: profile profession section width 2021-07-26 11:42:30 +05:30
pateljannat
be47700e7c Merge branch 'main' of https://github.com/frappe/community into upcoming-courses 2021-07-26 11:14:38 +05:30
pateljannat
40842830a4 fix: profile page social icons position 2021-07-26 11:14:32 +05:30
pateljannat
11d070fa0d fix: condition for chapter description 2021-07-23 19:16:36 +05:30
pateljannat
dd2f830a33 fix: upcoming course and doctype cleanup 2021-07-23 19:07:26 +05:30
Jannat Patel
324033e9ee Merge pull request #160 from fossunited/only-show-published-courses
fix: minor issues
2021-07-20 17:35:18 +05:30
pateljannat
86596d0cfe fix: minor issues 2021-07-20 17:19:18 +05:30
Jannat Patel
9323cfd748 Merge pull request #159 from rmehta/fix-global-container
fix(style): max-width on container padding
2021-07-20 13:06:36 +05:30
Jannat Patel
d125b02cec fix: added max width to container padding 2021-07-20 13:05:15 +05:30
Rushabh Mehta
276d64a66a fix(style): don't mess with global container styles 2021-07-20 09:30:58 +05:30
8 changed files with 107 additions and 97 deletions

View File

@@ -9,7 +9,6 @@
"course", "course",
"title", "title",
"description", "description",
"locked",
"index_" "index_"
], ],
"fields": [ "fields": [
@@ -24,12 +23,6 @@
"fieldtype": "Markdown Editor", "fieldtype": "Markdown Editor",
"label": "Description" "label": "Description"
}, },
{
"default": "0",
"fieldname": "locked",
"fieldtype": "Check",
"label": "Locked"
},
{ {
"fieldname": "course", "fieldname": "course",
"fieldtype": "Link", "fieldtype": "Link",
@@ -52,7 +45,7 @@
"link_fieldname": "chapter" "link_fieldname": "chapter"
} }
], ],
"modified": "2021-05-13 21:05:20.531890", "modified": "2021-07-23 19:03:57.946831",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "LMS", "module": "LMS",
"name": "Chapter", "name": "Chapter",

View File

@@ -21,14 +21,14 @@
"engine": "InnoDB", "engine": "InnoDB",
"field_order": [ "field_order": [
"title", "title",
"short_code",
"video_link", "video_link",
"column_break_3",
"is_published",
"disable_self_learning",
"image", "image",
"section_break_5", "column_break_3",
"tags", "tags",
"is_published",
"upcoming",
"disable_self_learning",
"section_break_5",
"short_introduction", "short_introduction",
"description" "description"
], ],
@@ -53,11 +53,6 @@
"fieldtype": "Check", "fieldtype": "Check",
"label": "Published" "label": "Published"
}, },
{
"fieldname": "short_code",
"fieldtype": "Data",
"label": "Short Code"
},
{ {
"fieldname": "column_break_3", "fieldname": "column_break_3",
"fieldtype": "Column Break" "fieldtype": "Column Break"
@@ -92,6 +87,12 @@
"fieldname": "tags", "fieldname": "tags",
"fieldtype": "Data", "fieldtype": "Data",
"label": "Tags" "label": "Tags"
},
{
"default": "0",
"fieldname": "upcoming",
"fieldtype": "Check",
"label": "Is an Upcoming Course"
} }
], ],
"index_web_pages_for_search": 1, "index_web_pages_for_search": 1,
@@ -118,7 +119,7 @@
"link_fieldname": "course" "link_fieldname": "course"
} }
], ],
"modified": "2021-07-09 15:05:05.372430", "modified": "2021-07-23 19:01:29.765570",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "LMS", "module": "LMS",
"name": "LMS Course", "name": "LMS Course",
@@ -141,6 +142,5 @@
"sort_field": "creation", "sort_field": "creation",
"sort_order": "DESC", "sort_order": "DESC",
"title_field": "title", "title_field": "title",
"track_changes": 1, "track_changes": 1
"track_views": 1
} }

View File

@@ -27,12 +27,13 @@
"fieldname": "lesson", "fieldname": "lesson",
"fieldtype": "Link", "fieldtype": "Link",
"label": "Lesson", "label": "Lesson",
"options": "Lesson" "options": "Lesson",
"read_only": 1
} }
], ],
"index_web_pages_for_search": 1, "index_web_pages_for_search": 1,
"links": [], "links": [],
"modified": "2021-06-23 17:58:57.642873", "modified": "2021-07-23 19:06:12.551633",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "LMS", "module": "LMS",
"name": "LMS Quiz", "name": "LMS Quiz",

View File

@@ -8,9 +8,11 @@
<div class="chapter-content collapse navbar-collapse" id="{{ chapter.get_slugified_chapter_title() }}"> <div class="chapter-content collapse navbar-collapse" id="{{ chapter.get_slugified_chapter_title() }}">
{% if chapter.description %}
<div class="chapter-description muted-text"> <div class="chapter-description muted-text">
{{ chapter.description }} {{ chapter.description }}
</div> </div>
{% endif %}
<div class="lessons"> <div class="lessons">

View File

@@ -53,15 +53,19 @@
{% set query_parameter = "?batch=" + membership.batch if membership and membership.batch else "" %} {% set query_parameter = "?batch=" + membership.batch if membership and membership.batch else "" %}
{% if membership %} {% if course.upcoming %}
<div class="view-course-link is-default">
Upcoming Course <img class="ml-3" src="/assets/community/icons/black-arrow.svg" />
</div>
<a class="stretched-link" href="/courses/{{ course.name }}"></a>
{% elif membership %}
<div class="view-course-link is-primary"> <div class="view-course-link is-primary">
Continue Course <img class="ml-3" src="/assets/community/icons/white-arrow.svg" /> Continue Course <img class="ml-3" src="/assets/community/icons/white-arrow.svg" />
</div> </div>
<a class="stretched-link" href="{{ course.get_learn_url(lesson_index) }}{{ query_parameter }}"></a> <a class="stretched-link" href="{{ course.get_learn_url(lesson_index) }}{{ query_parameter }}"></a>
{% else %} {% else %}
<div class="view-course-link"> <div class="view-course-link">
View Course <img class="ml-3" src="/assets/community/icons/black-arrow.svg" /> View Course <img class="ml-3" src="/assets/community/icons/black-arrow.svg" />
</div> </div>

View File

@@ -10,7 +10,8 @@ class CustomUser(User):
""" """
return frappe.get_all( return frappe.get_all(
'LMS Course', { 'LMS Course', {
'owner': self.name 'owner': self.name,
'is_published': True
}) })
def get_palette(self): def get_palette(self):
@@ -62,9 +63,16 @@ class CustomUser(User):
def get_mentored_courses(self): def get_mentored_courses(self):
""" Returns all courses mentored by this user """ """ Returns all courses mentored by this user """
return frappe.get_all("LMS Course Mentor Mapping", mentored_courses = []
mapping = frappe.get_all("LMS Course Mentor Mapping",
{ {
"mentor": self.name "mentor": self.name,
}, },
["name", "course"] ["name", "course"]
) )
for map in mapping:
if frappe.db.get_value("LMS Course", map.course, "is_published"):
mentored_courses.append(map)
return mentored_courses

View File

@@ -390,7 +390,7 @@ input[type=checkbox] {
letter-spacing: -0.0175em letter-spacing: -0.0175em
} }
@media (min-width: 576px) { @media (min-width: 576px) and (max-width: 992px) {
.container { .container {
padding-left: 1rem; padding-left: 1rem;
padding-right: 1rem; padding-right: 1rem;
@@ -653,9 +653,14 @@ div.custom-checkbox>label>input:checked+img {
color: #FFFFFF; color: #FFFFFF;
} }
.is-default {
background-color: white;
border: 1px solid #C8CFD5;
box-sizing: border-box;
}
.course-home-outline { .course-home-outline {
margin-top: 3rem; margin-top: 3rem;
flex: 1;
} }
.small-title { .small-title {
@@ -673,6 +678,7 @@ div.custom-checkbox>label>input:checked+img {
.chapter-description { .chapter-description {
height: fit-content; height: fit-content;
padding-left: 1rem; padding-left: 1rem;
padding-right: 1rem;
} }
.chapter-icon { .chapter-icon {
@@ -680,26 +686,39 @@ div.custom-checkbox>label>input:checked+img {
} }
.course-outline-instructor-parent { .course-outline-instructor-parent {
display: flex; display: grid;
justify-content: space-between; grid-gap: 2rem;
grid-template-columns: 4fr 1fr;
}
@media (max-width: 768px) {
.course-outline-instructor-parent {
grid-gap: 1rem;
}
} }
@media (max-width: 600px) { @media (max-width: 600px) {
.course-outline-instructor-parent { .course-outline-instructor-parent {
flex-direction: column;
padding: 0px 24px 0px; padding: 0px 24px 0px;
grid-template-columns: none;
} }
} }
.profile-parent-section { .profile-parent-section {
display: flex; display: grid;
justify-content: space-between; grid-gap: 2rem;
grid-template-columns: 4fr 1fr;
}
@media (max-width: 768px) {
.profile-parent-section {
grid-gap: 1rem;
}
} }
@media (max-width: 600px) { @media (max-width: 600px) {
.profile-parent-section { .profile-parent-section {
flex-direction: column; grid-template-columns: none;
} }
} }
@@ -731,18 +750,6 @@ div.custom-checkbox>label>input:checked+img {
margin-top: 3rem; margin-top: 3rem;
} }
@media (min-width: 1024px) {
.course-overview-section {
margin-left: 2rem;
}
}
@media (min-width: 600px) {
.course-overview-section {
margin-left: 1rem;
}
}
.lesson-info { .lesson-info {
font-size: 16px; font-size: 16px;
line-height: 250%; line-height: 250%;
@@ -900,14 +907,18 @@ div.custom-checkbox>label>input:checked+img {
} }
.description-card { .description-card {
padding: 24px; padding: 1.5rem;
flex-direction: column; flex-direction: column;
} }
.overview-card { .overview-card {
padding: 24px 26px 24px; padding: 1.5rem;
width: 256px; width: 256px;
flex-direction: column; flex-direction: column;
display: grid;
-moz-column-gap: 1rem;
column-gap: 1rem;
row-gap: 1rem;
} }
@media (max-width: 768px) { @media (max-width: 768px) {
@@ -940,10 +951,6 @@ div.custom-checkbox>label>input:checked+img {
} }
} }
.overtime-item {
margin: 16px 0px 16px;
}
.view-all-mentors { .view-all-mentors {
width: 100%; width: 100%;
display: flex; display: flex;
@@ -1012,8 +1019,7 @@ div.custom-checkbox>label>input:checked+img {
} }
.course-details-outline { .course-details-outline {
margin-top: 16px; margin-top: 1rem;
flex: 1;
} }
.lesson-content-card { .lesson-content-card {
@@ -1022,14 +1028,15 @@ div.custom-checkbox>label>input:checked+img {
} }
.course-content-parent { .course-content-parent {
display: flex; display: grid;
justify-content: space-between; grid-gap: 2rem;
grid-template-columns: 2fr minmax(600px, 5fr);
} }
@media (max-width: 768px) { @media (max-width: 1024px) {
.course-content-parent { .course-content-parent {
display: flex;
flex-direction: column-reverse; flex-direction: column-reverse;
justify-content: center;
} }
} }
@@ -1044,8 +1051,7 @@ div.custom-checkbox>label>input:checked+img {
} }
.lesson-pagination-parent { .lesson-pagination-parent {
margin: 1rem 0px 0px 2rem; margin-top: 1rem;
flex: 3;
} }
@media (max-width: 768px) { @media (max-width: 768px) {
@@ -1129,7 +1135,7 @@ div.custom-checkbox>label>input:checked+img {
line-height: 156%; line-height: 156%;
letter-spacing: -0.0175em; letter-spacing: -0.0175em;
text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.64); text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.64);
padding: 20px; padding: 1.5rem;
} }
@media (max-width: 375px) { @media (max-width: 375px) {
@@ -1153,7 +1159,7 @@ div.custom-checkbox>label>input:checked+img {
height: fit-content; height: fit-content;
box-shadow: 0px 1px 1px rgb(0 0 0 / 16%); box-shadow: 0px 1px 1px rgb(0 0 0 / 16%);
border-radius: 4px; border-radius: 4px;
margin-top: 25px; margin-top: 2rem;
} }
@media (max-width: 375px) { @media (max-width: 375px) {
@@ -1169,6 +1175,7 @@ div.custom-checkbox>label>input:checked+img {
left: 174px; left: 174px;
font-size: 12px; font-size: 12px;
line-height: 165%; line-height: 165%;
width: fit-content;
} }
@media (max-width: 500px) { @media (max-width: 500px) {
@@ -1186,7 +1193,6 @@ div.custom-checkbox>label>input:checked+img {
} }
.social-icons { .social-icons {
float: right;
margin: 16px; margin: 16px;
} }
@@ -1216,12 +1222,6 @@ div.custom-checkbox>label>input:checked+img {
flex-direction: column; flex-direction: column;
} }
@media (min-width: 600px) {
.course-creator-progress-parent {
margin-left: 2rem;
}
}
.course-creator-section { .course-creator-section {
margin-top: 3rem; margin-top: 3rem;
} }

View File

@@ -20,34 +20,36 @@
{% macro ProfileBanner(member) %} {% macro ProfileBanner(member) %}
<div class=""> <div class="">
<div class="profile-banner" style="background-image: url(/assets/community/images/profile-banner.png)"> <div class="profile-banner" style="background-image: url(/assets/community/images/profile-banner.png)">
<div class="profile-avatar"> <div class="profile-avatar">
{{ widgets.Avatar(member=member, avatar_class="avatar-xl") }} {{ widgets.Avatar(member=member, avatar_class="avatar-xl") }}
<div class="profile-name"> {{ member.full_name }} </div> <div class="profile-name"> {{ member.full_name }} </div>
{% if member.get_authored_courses() | length %} {% if member.get_authored_courses() | length %}
<div class="creator-badge"> Creator </div> <div class="creator-badge"> Creator </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="profile-info"> <div class="profile-info">
{% if member.profession %} <div class="profile-profession">
<span class="profile-profession"> {{ member.profession }} </span> {% if member.profession %}
{% endif %} <span class=""> {{ member.profession }} </span>
<div class="social-icons">
{% if member.linkedin %}
<a class="linkedin" href="{{ member.linkedin }}">
<img src="/assets/community/images/linkedin.png">
</a>
{% endif %}
{% if member.medium %}
<a class="medium" href="{{ member.medium}}">
<img src="/assets/community/icons/medium.svg">
</a>
{% endif %}
{% if member.github %}
<a class="github" href="{{ member.github }}">
<img src="/assets/community/icons/github.svg">
</a>
{% endif %} {% endif %}
<span class="social-icons">
{% if member.linkedin %}
<a class="linkedin" href="{{ member.linkedin }}">
<img src="/assets/community/images/linkedin.png">
</a>
{% endif %}
{% if member.medium %}
<a class="medium" href="{{ member.medium}}">
<img src="/assets/community/icons/medium.svg">
</a>
{% endif %}
{% if member.github %}
<a class="github" href="{{ member.github }}">
<img src="/assets/community/icons/github.svg">
</a>
{% endif %}
</span>
</div> </div>
</div> </div>
</div> </div>