Merge pull request #15910 from netchampfaris/marketplace-fixes-3

Hub fixes
diff --git a/erpnext/hub_node/api.py b/erpnext/hub_node/api.py
index 2356401..c236822 100644
--- a/erpnext/hub_node/api.py
+++ b/erpnext/hub_node/api.py
@@ -10,7 +10,6 @@
 from frappe import _
 from frappe.frappeclient import FrappeClient
 from frappe.desk.form.load import get_attachments
-from frappe.utils.file_manager import get_file_path
 from six import string_types
 
 current_user = frappe.session.user
diff --git a/erpnext/public/js/hub/PageContainer.vue b/erpnext/public/js/hub/PageContainer.vue
index 5ec92d5..a101eaf 100644
--- a/erpnext/public/js/hub/PageContainer.vue
+++ b/erpnext/public/js/hub/PageContainer.vue
@@ -1,6 +1,6 @@
 <template>
 	<div class="hub-page-container">
-		<component :is="current_page"></component>
+		<component :is="current_page.component" :key="current_page.key"></component>
 	</div>
 </template>
 
@@ -100,10 +100,16 @@
 			}
 
 			if (!route) {
-				return NotFound;
+				return {
+					key: 'not-found',
+					component: NotFound
+				};
 			}
 
-			return route_map[route];
+			return {
+				key: curr_route,
+				component: route_map[route]
+			}
 		}
 	}
 }
diff --git a/erpnext/public/js/hub/components/ReviewArea.vue b/erpnext/public/js/hub/components/ReviewArea.vue
index 51b9ab1..5e4e439 100644
--- a/erpnext/public/js/hub/components/ReviewArea.vue
+++ b/erpnext/public/js/hub/components/ReviewArea.vue
@@ -113,6 +113,10 @@
 				content: this.review_content.get_value()
 			});
 
+			if (!hub.is_seller_registered()) {
+				frappe.throw(__('You need to login as a Marketplace User before you can add any reviews.'));
+			}
+
 			hub.call('add_item_review', {
 				hub_item_name: this.hub_item_name,
 				review: JSON.stringify(review)
diff --git a/erpnext/public/js/hub/pages/Item.vue b/erpnext/public/js/hub/pages/Item.vue
index 651533e..7735aa2 100644
--- a/erpnext/public/js/hub/pages/Item.vue
+++ b/erpnext/public/js/hub/pages/Item.vue
@@ -265,6 +265,9 @@
 		},
 
 		report_item() {
+			if (!hub.is_seller_registered()) {
+				frappe.throw(__('Please login as a Marketplace User to report this item.'));
+			}
 			this.report_item_dialog.show();
 		},