fix: profile and progress on dashboard

This commit is contained in:
pateljannat
2021-09-01 16:21:55 +05:30
parent cd4ffa2eff
commit 13b968e18c
19 changed files with 126 additions and 49 deletions

View File

@@ -14,7 +14,7 @@
</div>
<div class="cards-parent">
{% for course in courses %}
{{ widgets.CourseCard(course=course) }}
{{ widgets.CourseCard(course=course, show_progress_indicators=True) }}
{% endfor %}
</div>
</div>

View File

@@ -139,19 +139,34 @@
{% endmacro %}
{% macro CoursesEnrolled(member) %}
{% if member.get_course_membership("Student") | length %}
{% set enrolled = member.get_enrolled_courses() %}
{% set show_progress = member.name == frappe.session.user %}
{% if enrolled.in_progress | length %}
<div class="profile-courses">
<div class="course-home-headings">
Courses Enrolled
Courses In Progress
</div>
<div class="cards-parent">
{% for membership in member.get_course_membership("Student") %}
{% set course_details = frappe.get_doc("LMS Course", membership.course) %}
{{ widgets.CourseCard(course=course_details) }}
{% for course in enrolled.in_progress %}
{{ widgets.CourseCard(course=course, show_progress_indicators=show_progress) }}
{% endfor %}
</div>
</div>
{% endif %}
{% if enrolled.completed | length %}
<div class="profile-courses">
<div class="course-home-headings">
Courses Completed
</div>
<div class="cards-parent">
{% for course in enrolled.completed %}
{{ widgets.CourseCard(course=course, show_progress_indicators=show_progress) }}
{% endfor %}
</div>
</div>
{% endif %}
{% endmacro %}
{% macro ProfileTabs(profile_tabs) %}
@@ -166,3 +181,16 @@
{% endfor %}
</div>
{% endmacro %}
{% block script %}
<script>
frappe.ready(() => {
if ("{{ member.name }}" == frappe.session.user) {
setTimeout(() => {
var link_array = $('.nav-link').filter((i, elem) => $(elem).text().trim() === "My Profile");
link_array.length && $(link_array[0]).addClass("active");
}, 0)
}
})
</script>
{% endblock %}

View File

@@ -4,7 +4,14 @@ def get_context(context):
context.no_cache = 1
try:
context.member = frappe.get_doc("User", {"username": frappe.form_dict["username"]})
username = frappe.form_dict["username"]
except KeyError:
username = frappe.db.get_value("User", frappe.session.user, ["username"])
if username:
frappe.local.flags.redirect_location = "/users/" + username
raise frappe.Redirect
try:
context.member = frappe.get_doc("User", {"username": username})
except:
context.template = "www/404.html"
return