diff --git a/erpnext/hub_node/doctype/marketplace_settings/marketplace_settings.json b/erpnext/hub_node/doctype/marketplace_settings/marketplace_settings.json index 12837111a7..4b49f1978a 100644 --- a/erpnext/hub_node/doctype/marketplace_settings/marketplace_settings.json +++ b/erpnext/hub_node/doctype/marketplace_settings/marketplace_settings.json @@ -1,5 +1,6 @@ { "allow_copy": 0, + "allow_events_in_timeline": 0, "allow_guest_to_view": 0, "allow_import": 0, "allow_rename": 0, @@ -351,8 +352,8 @@ "issingle": 1, "istable": 0, "max_attachments": 0, - "modified": "2018-09-01 17:05:59.600583", - "modified_by": "cave@aperture.com", + "modified": "2019-02-01 14:21:16.729848", + "modified_by": "Administrator", "module": "Hub Node", "name": "Marketplace Settings", "name_case": "", diff --git a/erpnext/public/js/hub/PageContainer.vue b/erpnext/public/js/hub/PageContainer.vue index a101eaf4d3..f151add8d5 100644 --- a/erpnext/public/js/hub/PageContainer.vue +++ b/erpnext/public/js/hub/PageContainer.vue @@ -10,14 +10,15 @@ import Home from './pages/Home.vue'; import Search from './pages/Search.vue'; import Category from './pages/Category.vue'; import SavedItems from './pages/SavedItems.vue'; +import FeaturedItems from './pages/FeaturedItems.vue'; import PublishedItems from './pages/PublishedItems.vue'; import Item from './pages/Item.vue'; import Seller from './pages/Seller.vue'; +import SellerItems from './pages/SellerItems.vue'; import Publish from './pages/Publish.vue'; import Buying from './pages/Buying.vue'; import Selling from './pages/Selling.vue'; import Messages from './pages/Messages.vue'; -import Profile from './pages/Profile.vue'; import NotFound from './pages/NotFound.vue'; function get_route_map() { @@ -27,11 +28,13 @@ function get_route_map() { 'marketplace/category/:category': Category, 'marketplace/item/:item': Item, 'marketplace/seller/:seller': Seller, + 'marketplace/seller/:seller/items': SellerItems, 'marketplace/not-found': NotFound, } const registered_routes = { - 'marketplace/profile': Profile, + 'marketplace/profile': Seller, 'marketplace/saved-items': SavedItems, + 'marketplace/featured-items': FeaturedItems, 'marketplace/publish': Publish, 'marketplace/published-items': PublishedItems, 'marketplace/buying': Buying, diff --git a/erpnext/public/js/hub/Sidebar.vue b/erpnext/public/js/hub/Sidebar.vue index ef3510d79a..66c291ec52 100644 --- a/erpnext/public/js/hub/Sidebar.vue +++ b/erpnext/public/js/hub/Sidebar.vue @@ -30,6 +30,11 @@ export default { route: 'marketplace/saved-items', condition: () => this.hub_registered }, + { + label: __('Your Featured Items'), + route: 'marketplace/featured-items', + condition: () => this.hub_registered + }, { label: __('Your Profile'), route: 'marketplace/profile', diff --git a/erpnext/public/js/hub/components/DetailHeaderItem.vue b/erpnext/public/js/hub/components/DetailHeaderItem.vue index 8ca4379701..a6c5f066f2 100644 --- a/erpnext/public/js/hub/components/DetailHeaderItem.vue +++ b/erpnext/public/js/hub/components/DetailHeaderItem.vue @@ -1,5 +1,12 @@ + + diff --git a/erpnext/public/js/hub/pages/Item.vue b/erpnext/public/js/hub/pages/Item.vue index 8dbd397a8e..841d0046db 100644 --- a/erpnext/public/js/hub/pages/Item.vue +++ b/erpnext/public/js/hub/pages/Item.vue @@ -72,6 +72,11 @@ export default { condition: hub.is_user_registered() && !this.is_own_item, action: this.add_to_saved_items }, + { + label: __('Add to Featured Item'), + condition: hub.is_user_registered() && this.is_own_item, + action: this.add_to_featured_items + }, { label: __('Report this Item'), condition: !this.is_own_item, @@ -103,7 +108,7 @@ export default { subtitle_items.push(rating + ``) } - subtitle_items.push(this.item.company); + subtitle_items.push({value:this.item.company,on_click:this.go_to_seller_profile_page}); return subtitle_items; }, @@ -169,7 +174,9 @@ export default { this.make_dialogs(); }); }, - + go_to_seller_profile_page(seller_name) { + frappe.set_route(`marketplace/seller/${seller_name}`); + }, build_data() { this.title = this.item.item_name || this.item.name; this.image = this.item.image; @@ -210,6 +217,21 @@ export default { }); }, + add_to_featured_items() { + hub.call('add_item_to_seller_featured_items', { + hub_item_name: this.hub_item_name, + hub_user: frappe.session.user + },) + .then(() => { + const featured_items_link = `${__('Added to Featured Items')}` + frappe.show_alert(featured_items_link); + erpnext.hub.trigger('action:item_feature'); + }) + .catch(e => { + console.error(e); + }); + }, + make_contact_seller_dialog() { this.contact_seller_dialog = new frappe.ui.Dialog({ title: __('Send a message'), diff --git a/erpnext/public/js/hub/pages/Profile.vue b/erpnext/public/js/hub/pages/Profile.vue deleted file mode 100644 index 91ed946761..0000000000 --- a/erpnext/public/js/hub/pages/Profile.vue +++ /dev/null @@ -1,81 +0,0 @@ - - - - - diff --git a/erpnext/public/js/hub/pages/Seller.vue b/erpnext/public/js/hub/pages/Seller.vue index c80865bfbd..e339eaa3e5 100644 --- a/erpnext/public/js/hub/pages/Seller.vue +++ b/erpnext/public/js/hub/pages/Seller.vue @@ -22,30 +22,77 @@ -
{{ item_container_heading }}
- - +
+
+ {{ item_container_heading }} + + Customize your Featured Items + +
+ + + Show all items +
+ +
+
Customer Reviews
+
+
+ + + + + {{ review.subject }} + +
+ by {{ review.username }} + + + + +
+
+
+ +
+
Stats
+
+
+ + + + +