Client side improvements
diff --git a/erpnext/public/js/education/lms/components/CourseCard.vue b/erpnext/public/js/education/lms/components/CourseCard.vue
index 7839aa6..4718347 100644
--- a/erpnext/public/js/education/lms/components/CourseCard.vue
+++ b/erpnext/public/js/education/lms/components/CourseCard.vue
@@ -42,7 +42,7 @@
         }
     },
     mounted() {
-        this.getCourseMeta().then(data => this.courseMeta = data)
+        if(lms.store.checkLogin()) this.getCourseMeta().then(data => this.courseMeta = data)
     },
     components: {
         AButton
diff --git a/erpnext/public/js/education/lms/lms.js b/erpnext/public/js/education/lms/lms.js
index 3d2bd50..a98b862 100644
--- a/erpnext/public/js/education/lms/lms.js
+++ b/erpnext/public/js/education/lms/lms.js
@@ -70,6 +70,5 @@
 			if(lms.store.isLogin) lms.store.updateState()
 		}
 	});
-
 	lms.debug = true
 })
\ No newline at end of file
diff --git a/erpnext/public/js/education/lms/lmsRoot.vue b/erpnext/public/js/education/lms/lmsRoot.vue
index 2af74ab..3a6cb80 100644
--- a/erpnext/public/js/education/lms/lmsRoot.vue
+++ b/erpnext/public/js/education/lms/lmsRoot.vue
@@ -6,8 +6,5 @@
 <script>
 export default {
 	name: "lmsRoot",
-	mounted() {
-		$(document).scrollTop(0)
-	}
 };
 </script>
\ No newline at end of file
diff --git a/erpnext/public/js/education/lms/routes.js b/erpnext/public/js/education/lms/routes.js
index 5ebb1e6..020c597 100644
--- a/erpnext/public/js/education/lms/routes.js
+++ b/erpnext/public/js/education/lms/routes.js
@@ -40,7 +40,15 @@
 		name: 'profile',
 		path: '/Profile',
 		component: ProfilePage,
-		props: true
+		props: true,
+		beforeEnter: (to, from, next) => {
+			if(!lms.store.checkLogin()){
+				next({name: 'home'})
+			}
+			else {
+				next()
+			}
+		}
 	}
 ];