[hub] test progress trigger
diff --git a/erpnext/hub_node/__init__.py b/erpnext/hub_node/__init__.py
index 6ac0aba..61676ad 100644
--- a/erpnext/hub_node/__init__.py
+++ b/erpnext/hub_node/__init__.py
@@ -73,14 +73,18 @@
if not len(items_to_publish):
return
- for item_code in items_to_publish:
- frappe.db.set_value('Item', item_code, 'publish_in_hub', 1)
+ # TODO: sync
+ # for item_code in items_to_publish:
+ # frappe.db.set_value('Item', item_code, 'publish_in_hub', 1)
+
+ # hub_settings = frappe.get_doc('Hub Settings')
+ # remote_id = item_sync_preprocess()
+ # hub_settings.sync(remote_id)
+
+ # return remote_id
hub_settings = frappe.get_doc('Hub Settings')
- remote_id = item_sync_preprocess()
- hub_settings.sync(remote_id)
-
- return remote_id
+ hub_settings.sync('TEST')
def item_sync_preprocess():
# Call Hub to make a new activity
@@ -108,6 +112,7 @@
if response:
frappe.db.set_value('Hub Settings', 'Hub Settings', 'sync_in_progress', 0)
+ frappe.db.set_value('Hub Settings', 'Hub Settings', 'last_sync_datetime', frappe.utils.now())
else:
frappe.throw('Unable to update remote activity')
diff --git a/erpnext/hub_node/doctype/hub_settings/hub_settings.json b/erpnext/hub_node/doctype/hub_settings/hub_settings.json
index 10bb959..a0d8188 100644
--- a/erpnext/hub_node/doctype/hub_settings/hub_settings.json
+++ b/erpnext/hub_node/doctype/hub_settings/hub_settings.json
@@ -538,7 +538,7 @@
"bold": 0,
"collapsible": 0,
"columns": 0,
- "depends_on": "publish",
+ "depends_on": "",
"fieldname": "last_sync_datetime",
"fieldtype": "Datetime",
"hidden": 0,
@@ -555,7 +555,7 @@
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
- "read_only": 1,
+ "read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
@@ -675,7 +675,7 @@
"issingle": 1,
"istable": 0,
"max_attachments": 0,
- "modified": "2018-07-30 08:01:09.024358",
+ "modified": "2018-07-30 10:43:28.818498",
"modified_by": "Administrator",
"module": "Hub Node",
"name": "Hub Settings",
diff --git a/erpnext/hub_node/doctype/hub_settings/hub_settings.py b/erpnext/hub_node/doctype/hub_settings/hub_settings.py
index 66dd560..727ad62 100644
--- a/erpnext/hub_node/doctype/hub_settings/hub_settings.py
+++ b/erpnext/hub_node/doctype/hub_settings/hub_settings.py
@@ -37,12 +37,31 @@
'doctype': 'Data Migration Run',
'data_migration_plan': 'Hub Sync',
'data_migration_connector': 'Hub Connector',
- 'remote_id': remote_id
+ 'remote_id': remote_id,
+ 'trigger_name': 'items-sync'
}).insert()
- self.sync_in_progress = 1
- # time.sleep(10)
- doc.run()
+ time.sleep(2)
+ frappe.publish_realtime('items-sync', {"progress_percent": 20})
+ print("=======================")
+
+ time.sleep(2)
+ frappe.publish_realtime('items-sync', {"progress_percent": 40})
+ print("=======================")
+
+ time.sleep(1)
+ frappe.publish_realtime('items-sync', {"progress_percent": 80})
+ print("=======================")
+
+ time.sleep(2)
+ frappe.publish_realtime('items-sync', {"progress_percent": 100})
+ print("=======================")
+
+ frappe.db.set_value('Hub Settings', 'Hub Settings', 'last_sync_datetime', frappe.utils.now())
+
+ # TODO: sync
+ # self.sync_in_progress = 1
+ # doc.run()
else:
frappe.throw("No remote ID specified")
diff --git a/erpnext/public/js/hub/marketplace.js b/erpnext/public/js/hub/marketplace.js
index 28309f3..703da1f 100644
--- a/erpnext/public/js/hub/marketplace.js
+++ b/erpnext/public/js/hub/marketplace.js
@@ -828,6 +828,21 @@
this.items_to_publish = [];
this.unpublished_items = [];
this.fetched_items = [];
+
+ frappe.realtime.on("items-sync", (data) => {
+ this.$wrapper.find('.progress-bar').css('width', data.progress_percent+'%');
+
+ if(data.progress_percent === 100) {
+ setTimeout(() => {
+ hub.settings.sync_in_progress = 0;
+ frappe.db.get_doc('Hub Settings')
+ .then(doc => {
+ hub.settings = doc;
+ this.refresh();
+ });
+ }, 500);
+ }
+ });
}
refresh() {
@@ -853,8 +868,8 @@
this.setup_publishing_events();
- if(hub.settings.last_sync) {
- this.show_message(`Last sync was <a href="#marketplace/profile">${hub.settings.last_sync}</a>.
+ if(hub.settings.last_sync_datetime) {
+ this.show_message(`Last sync was <a href="#marketplace/profile">${hub.settings.last_sync_datetime}</a>.
<a href="#marketplace/my-products">See your Published Products</a>.`);
}
@@ -962,7 +977,7 @@
const $publish_progress = $(`<div class="sync-progress">
<p><b>${__(`Syncing ${items_to_publish.length} Products`)}</b></p>
<div class="progress">
- <div class="progress-bar" style="width: 12.875%"></div>
+ <div class="progress-bar" style="width: 1%"></div>
</div>
</div>`);
@@ -1026,16 +1041,17 @@
return frappe.db.set_value("Hub Settings", "Hub Settings", {
custom_data: JSON.stringify(items_to_publish),
+ // TODO: sync
// sync_in_progress: 1
}).then(() => {
hub.settings.sync_in_progress = 1;
})
- // .then(frappe.call(
- // 'erpnext.hub_node.publish_selected_items',
- // {
- // items_to_publish: item_codes_to_publish
- // }
- // ));
+ .then(frappe.call(
+ 'erpnext.hub_node.publish_selected_items',
+ {
+ items_to_publish: item_codes_to_publish
+ }
+ ));
}
}