Minor UI Changes and Fixes

This commit is contained in:
scmmishra 2018-11-07 22:12:55 +05:30 committed by Aditya Hase
parent 850dfd0358
commit b409f7a388
5 changed files with 45 additions and 26 deletions

View File

@ -16,7 +16,7 @@ const routes = [
];
var store = {
debug: false,
debug: true,
isLogin: false,
completedCourses: new Set(),
enrolledPrograms: new Set(),

View File

@ -12,7 +12,7 @@
</span>
</div>
<div v-if="$root.$data.isLogin" class='course-buttons text-center col-xs-4 col-sm-3 col-md-2'>
<AcademyCourseCardButton :course="course.name" :nextContent="nextContent" :nextContentType="nextContentType"/>
<AcademyCourseCardButton v-if="this.$root.$data.checkProgramEnrollment(this.$route.params.code)" :course="course.name" :nextContent="nextContent" :nextContentType="nextContentType"/>
</div>
</div>
</div>

View File

@ -1,5 +1,5 @@
<template>
<button v-if="isLoggedIn" class='btn btn-primary btn-lg' @click="$router.push(getUrl())">{{ buttonName }}</button>
<button v-if="isLoggedIn" class='btn btn-primary btn-lg' @click="primaryAction()">{{ buttonName }}</button>
<a v-else class='btn btn-primary btn-lg' href="/login#signup">{{ buttonName }}</a>
</template>
<script>
@ -17,40 +17,54 @@ export default {
},
mounted() {
if(this.isLoggedIn && this.$route.name == 'program'){
frappe.call({
method: "erpnext.www.academy.get_continue_data",
args: {
program_name: this.$route.params.code
}
}).then( r => {
this.nextContent = r.message.content,
this.nextContentType = r.message.content_type,
this.nextCourse = r.message.course
})
frappe.call({
method: "erpnext.www.academy.get_continue_data",
args: {
program_name: this.$route.params.code
}
}).then( r => {
this.nextContent = r.message.content,
this.nextContentType = r.message.content_type,
this.nextCourse = r.message.course
})
}
if(this.isLoggedIn){
if(this.$route.name == 'home'){
this.buttonName = 'Explore Courses'
}
else if(this.$route.name == 'program'){
this.buttonName = 'Start Course'
if(this.$root.$data.checkProgramEnrollment(this.$route.params.code)){
if(this.$route.name == 'home'){
this.buttonName = 'Explore Courses'
}
else if(this.$route.name == 'program'){
this.buttonName = 'Start Course'
}
}
else {
this.buttonName = 'Enroll Now'
}
}
else{
this.buttonName = 'Sign Up'
}
}
},
methods: {
getUrl() {
primaryAction() {
if(this.$route.name == 'home'){
return ''
return
}
else if(this.$route.name == 'program'){
this.link = this.$route.params.code + '/' + this.nextCourse + '/' + this.nextContentType + '/' + this.nextContent
return this.link
else if(this.$route.name == 'program' && this.$root.$data.checkProgramEnrollment(this.$route.params.code)){
this.$router.push({ name: 'content', params: { code: this.$route.params.code, course: this.nextCourse, type: this.nextContentType, content: this.nextContent}})
}
}
else {
frappe.call({
method: "erpnext.www.academy.enroll_in_program",
args:{
program_name: this.$route.params.code,
student_email_id: frappe.session.user
}
})
this.$root.$data.updateEnrolledPrograms()
}
},
}
};
</script>

View File

@ -30,7 +30,6 @@ export default {
}
},
beforeMount(){
console.log("Before Mount")
if(this.$root.$data.isLogin) this.$root.$data.updateCompletedCourses()
},
mounted() {

View File

@ -110,6 +110,8 @@ def evaluate_quiz(enrollment, quiz_response, quiz_name):
@frappe.whitelist()
def get_completed_courses(email=frappe.session.user):
if get_student_id(email) == None:
return None
try:
student = frappe.get_doc("Student", get_student_id(email))
return student.get_completed_courses()
@ -161,6 +163,8 @@ def get_student_id(email=None):
@frappe.whitelist()
def get_program_enrollments(email=frappe.session.user):
if get_student_id(email) == None:
return None
try:
student = frappe.get_doc("Student", get_student_id(email))
return student.get_program_enrollments()
@ -169,6 +173,8 @@ def get_program_enrollments(email=frappe.session.user):
@frappe.whitelist()
def get_course_enrollments(email=frappe.session.user):
if get_student_id(email) == None:
return None
try:
student = frappe.get_doc("Student", get_student_id(email))
return student.get_course_enrollments()