diff --git a/lms/lms/doctype/lms_certificate/lms_certificate.json b/lms/lms/doctype/lms_certificate/lms_certificate.json index d1d2a8a2..512287bd 100644 --- a/lms/lms/doctype/lms_certificate/lms_certificate.json +++ b/lms/lms/doctype/lms_certificate/lms_certificate.json @@ -10,7 +10,8 @@ "member_name", "column_break_3", "issue_date", - "expiry_date" + "expiry_date", + "class_name" ], "fields": [ { @@ -52,11 +53,18 @@ "fieldtype": "Data", "label": "Member Name", "read_only": 1 + }, + { + "fieldname": "class_name", + "fieldtype": "Link", + "in_standard_filter": 1, + "label": "Class Name", + "options": "LMS Class" } ], "index_web_pages_for_search": 1, "links": [], - "modified": "2023-04-14 12:33:37.839625", + "modified": "2023-08-23 14:48:49.351394", "modified_by": "Administrator", "module": "LMS", "name": "LMS Certificate", diff --git a/lms/lms/doctype/lms_certificate_evaluation/lms_certificate_evaluation.json b/lms/lms/doctype/lms_certificate_evaluation/lms_certificate_evaluation.json index fbc3af60..40753451 100644 --- a/lms/lms/doctype/lms_certificate_evaluation/lms_certificate_evaluation.json +++ b/lms/lms/doctype/lms_certificate_evaluation/lms_certificate_evaluation.json @@ -8,16 +8,16 @@ "field_order": [ "member", "member_name", - "column_break_5", - "status", "course", - "class", - "section_break_6", + "column_break_5", "date", "start_time", "end_time", - "column_break_10", + "class_name", + "section_break_6", "rating", + "status", + "column_break_10", "summary" ], "fields": [ @@ -89,22 +89,24 @@ }, { "fieldname": "section_break_6", - "fieldtype": "Section Break" + "fieldtype": "Section Break", + "label": "Evaluation Details" }, { "fieldname": "column_break_10", "fieldtype": "Column Break" }, { - "fieldname": "class", + "fieldname": "class_name", "fieldtype": "Link", - "label": "Class", + "in_standard_filter": 1, + "label": "Class Name", "options": "LMS Class" } ], "index_web_pages_for_search": 1, "links": [], - "modified": "2023-07-13 11:30:53.432076", + "modified": "2023-08-23 14:51:21.947160", "modified_by": "Administrator", "module": "LMS", "name": "LMS Certificate Evaluation", diff --git a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.json b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.json index deb300ce..957c9151 100644 --- a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.json +++ b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.json @@ -8,6 +8,7 @@ "field_order": [ "course", "evaluator", + "class_name", "column_break_4", "member", "member_name", @@ -97,11 +98,18 @@ "fieldtype": "Data", "label": "Google Meet Link", "read_only": 1 + }, + { + "fieldname": "class_name", + "fieldtype": "Link", + "in_standard_filter": 1, + "label": "Class Name", + "options": "LMS Class" } ], "index_web_pages_for_search": 1, "links": [], - "modified": "2023-07-21 16:00:11.795521", + "modified": "2023-08-23 14:50:37.618350", "modified_by": "Administrator", "module": "LMS", "name": "LMS Certificate Request", diff --git a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py index f976596c..c9307fec 100644 --- a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py +++ b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py @@ -123,6 +123,7 @@ def create_certificate_request( "day": day, "start_time": start_time, "end_time": end_time, + "class_name": class_name, } ) eval.save(ignore_permissions=True) diff --git a/lms/lms/doctype/lms_class/lms_class.json b/lms/lms/doctype/lms_class/lms_class.json index dd789b13..d1dc5ff7 100644 --- a/lms/lms/doctype/lms_class/lms_class.json +++ b/lms/lms/doctype/lms_class/lms_class.json @@ -162,7 +162,7 @@ ], "index_web_pages_for_search": 1, "links": [], - "modified": "2023-08-10 12:54:44.351907", + "modified": "2023-08-23 14:23:07.706539", "modified_by": "Administrator", "module": "LMS", "name": "LMS Class", @@ -206,6 +206,7 @@ "write": 1 } ], + "show_title_field_in_link": 1, "sort_field": "modified", "sort_order": "DESC", "states": [], diff --git a/lms/lms/utils.py b/lms/lms/utils.py index 3a0ef2d7..1040706d 100644 --- a/lms/lms/utils.py +++ b/lms/lms/utils.py @@ -175,7 +175,7 @@ def get_tags(course): def get_instructors(course): instructor_details = [] instructors = frappe.get_all( - "Course Instructor", {"parent": course}, ["instructor"], order_by="idx" + "Course Instructor", {"parent": course}, order_by="idx", pluck="instructor" ) if not instructors: instructors = frappe.db.get_value("LMS Course", course, "owner").split(" ") @@ -183,7 +183,7 @@ def get_instructors(course): instructor_details.append( frappe.db.get_value( "User", - instructor.instructor, + instructor, ["name", "username", "full_name", "user_image"], as_dict=True, ) diff --git a/lms/lms/web_form/evaluation/evaluation.json b/lms/lms/web_form/evaluation/evaluation.json index 0b84e9d3..c2dd3e12 100644 --- a/lms/lms/web_form/evaluation/evaluation.json +++ b/lms/lms/web_form/evaluation/evaluation.json @@ -8,19 +8,21 @@ "allow_print": 0, "amount": 0.0, "amount_based_on_field": 0, + "anonymous": 0, "apply_document_permissions": 0, "button_label": "Save", "creation": "2022-11-23 11:59:33.533053", "doc_type": "LMS Certificate Evaluation", "docstatus": 0, "doctype": "Web Form", - "idx": 0, + "idx": 1, "introduction_text": "", "is_standard": 1, "list_columns": [], "login_required": 1, "max_attachment_size": 0, - "modified": "2023-02-23 13:04:00.405266", + "meta_image": "/files/og_image_web_form_evaluation_68ddf18e.png", + "modified": "2023-08-23 14:37:03.086303", "modified_by": "Administrator", "module": "LMS", "name": "evaluation", @@ -61,12 +63,13 @@ }, { "allow_read_on_all_link_options": 0, - "fieldname": "summary", - "fieldtype": "Small Text", + "fieldname": "class_name", + "fieldtype": "Link", "hidden": 0, - "label": "Summary", + "label": "Class Name", "max_length": 0, "max_value": 0, + "options": "LMS Class", "read_only": 0, "reqd": 0, "show_in_filter": 0 @@ -120,6 +123,19 @@ "reqd": 0, "show_in_filter": 0 }, + { + "allow_read_on_all_link_options": 0, + "fieldname": "", + "fieldtype": "Section Break", + "hidden": 0, + "label": "Evaluation Details", + "max_length": 0, + "max_value": 0, + "options": "", + "read_only": 0, + "reqd": 0, + "show_in_filter": 0 + }, { "allow_read_on_all_link_options": 0, "fieldname": "rating", @@ -147,14 +163,26 @@ }, { "allow_read_on_all_link_options": 0, - "fieldname": "class", - "fieldtype": "Link", - "hidden": 1, - "label": "Class", + "fieldname": "", + "fieldtype": "Column Break", + "hidden": 0, + "label": "", "max_length": 0, "max_value": 0, - "options": "LMS Class", - "read_only": 1, + "options": "", + "read_only": 0, + "reqd": 0, + "show_in_filter": 0 + }, + { + "allow_read_on_all_link_options": 0, + "fieldname": "summary", + "fieldtype": "Small Text", + "hidden": 0, + "label": "Summary", + "max_length": 0, + "max_value": 0, + "read_only": 0, "reqd": 0, "show_in_filter": 0 } diff --git a/lms/public/css/style.css b/lms/public/css/style.css index 96b6905b..c3f156a3 100644 --- a/lms/public/css/style.css +++ b/lms/public/css/style.css @@ -2337,4 +2337,11 @@ select { .course-list-buttons .btn { margin-left: 0; } +} + +.slots-parent { + display: grid; + grid-template-columns: 1fr 1fr; + grid-gap: 0.5rem; + margin-bottom: 1rem; } \ No newline at end of file diff --git a/lms/www/classes/class.html b/lms/www/classes/class.html index 8726da4b..e49f2005 100644 --- a/lms/www/classes/class.html +++ b/lms/www/classes/class.html @@ -618,7 +618,7 @@ let class_info = {{ class_info | json }}; - {% else %} + {% endif %} - {% endif %} {{ include_script('controls.bundle.js') }} {% endblock %} \ No newline at end of file diff --git a/lms/www/classes/class.js b/lms/www/classes/class.js index 7b43379e..79834566 100644 --- a/lms/www/classes/class.js +++ b/lms/www/classes/class.js @@ -614,21 +614,29 @@ const get_slots = () => { const display_slots = (slots) => { let slot_html = ""; - let day = moment(this.eval_form.get_value("date")).format("dddd"); + let slots_available = false; + if (slots.length) { + slot_html = `