@@ -96,7 +96,7 @@
{{ card(topic) }}
{% endfor %}
{% if topics %}
- {% for n in range(((topics|length)%3)) %}
+ {% for n in range( (3 - (topics|length)) %3) %}
{{ null_card() }}
{% endfor %}
{% endif %}
diff --git a/erpnext/www/lms/course.py b/erpnext/www/lms/course.py
index e7ed2e3ed6f..c18d64e5074 100644
--- a/erpnext/www/lms/course.py
+++ b/erpnext/www/lms/course.py
@@ -5,9 +5,16 @@ import frappe
no_cache = 1
def get_context(context):
+ try:
+ program = frappe.form_dict['program']
+ course_name = frappe.form_dict['name']
+ except KeyError:
+ frappe.local.flags.redirect_location = '/lms'
+ raise frappe.Redirect
+
context.education_settings = frappe.get_single("Education Settings")
- course = frappe.get_doc('Course', frappe.form_dict['name'])
- context.program = frappe.form_dict['program']
+ course = frappe.get_doc('Course', course_name)
+ context.program = program
context.course = course
context.topics = course.get_topics()
diff --git a/erpnext/www/lms/index.html b/erpnext/www/lms/index.html
index 01142353703..ffb4419f367 100644
--- a/erpnext/www/lms/index.html
+++ b/erpnext/www/lms/index.html
@@ -55,7 +55,7 @@
{{ program_card(program.program, program.has_access) }}
{% endfor %}
{% if featured_programs %}
- {% for n in range((featured_programs|length)%3) %}
+ {% for n in range( (3 - (featured_programs|length)) %3) %}
{{ null_card() }}
{% endfor %}
{% endif %}
diff --git a/erpnext/www/lms/program.html b/erpnext/www/lms/program.html
index 6c144d46418..271b7813bb4 100644
--- a/erpnext/www/lms/program.html
+++ b/erpnext/www/lms/program.html
@@ -77,7 +77,7 @@
{{ card(course) }}
{% endfor %}
{% if courses %}
- {% for n in range((courses|length)%3) %}
+ {% for n in range( (3 - (courses|length)) %3) %}
{{ null_card() }}
{% endfor %}
{% endif %}
diff --git a/erpnext/www/lms/program.py b/erpnext/www/lms/program.py
index 1fcb3d30289..7badedcc856 100644
--- a/erpnext/www/lms/program.py
+++ b/erpnext/www/lms/program.py
@@ -6,10 +6,16 @@ from frappe import _
no_cache = 1
def get_context(context):
+ try:
+ program = frappe.form_dict['program']
+ except KeyError:
+ frappe.local.flags.redirect_location = '/lms'
+ raise frappe.Redirect
+
context.education_settings = frappe.get_single("Education Settings")
- context.program = get_program(frappe.form_dict['program'])
+ context.program = get_program(program)
context.courses = [frappe.get_doc("Course", course.course) for course in context.program.courses]
- context.has_access = utils.allowed_program_access(frappe.form_dict['program'])
+ context.has_access = utils.allowed_program_access(program)
context.progress = get_course_progress(context.courses, context.program)
def get_program(program_name):
diff --git a/erpnext/www/lms/topic.html b/erpnext/www/lms/topic.html
index 3e439fca234..1f0d1876646 100644
--- a/erpnext/www/lms/topic.html
+++ b/erpnext/www/lms/topic.html
@@ -48,7 +48,7 @@
{{ card(content, loop.index, topic.contents|length) }}
{% endfor %}
{% if contents %}
- {% for n in range((contents|length)%3) %}
+ {% for n in range( (3 - (contents|length)) %3) %}
{{ null_card() }}
{% endfor %}
{% endif %}
diff --git a/erpnext/www/lms/topic.py b/erpnext/www/lms/topic.py
index 0af07783122..f75ae8e9b66 100644
--- a/erpnext/www/lms/topic.py
+++ b/erpnext/www/lms/topic.py
@@ -5,9 +5,13 @@ import frappe
no_cache = 1
def get_context(context):
- course = frappe.form_dict['course']
- program = frappe.form_dict['program']
- topic = frappe.form_dict['topic']
+ try:
+ course = frappe.form_dict['course']
+ program = frappe.form_dict['program']
+ topic = frappe.form_dict['topic']
+ except KeyError:
+ frappe.local.flags.redirect_location = '/lms'
+ raise frappe.Redirect
context.program = program
context.course = course