summaryrefslogtreecommitdiffstats
path: root/src/web/gui/v2/registry-hello.html
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-11-25 17:33:56 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-11-25 17:34:10 +0000
commit83ba6762cc43d9db581b979bb5e3445669e46cc2 (patch)
tree2e69833b43f791ed253a7a20318b767ebe56cdb8 /src/web/gui/v2/registry-hello.html
parentReleasing debian version 1.47.5-1. (diff)
downloadnetdata-83ba6762cc43d9db581b979bb5e3445669e46cc2.tar.xz
netdata-83ba6762cc43d9db581b979bb5e3445669e46cc2.zip
Merging upstream version 2.0.3+dfsg (Closes: #923993, #1042533, #1045145).
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/web/gui/v2/registry-hello.html')
-rw-r--r--src/web/gui/v2/registry-hello.html94
1 files changed, 0 insertions, 94 deletions
diff --git a/src/web/gui/v2/registry-hello.html b/src/web/gui/v2/registry-hello.html
deleted file mode 100644
index 7fba5662c..000000000
--- a/src/web/gui/v2/registry-hello.html
+++ /dev/null
@@ -1,94 +0,0 @@
-<!doctype html><html><head><title>Netdata Registry</title><meta name="application-name" content="netdata"/><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><meta charset="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/><meta name="viewport" content="width=device-width,height=device-height,initial-scale=1,minimum-scale=1"/><meta name="apple-mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/></head><body><script>var getBasename = function() {
- var pathRegex = /\/(v2\/)?registry-hello.html?.*/
- return window.location.origin + window.location.pathname.replace(pathRegex, "")
- }
-
- function doRegistryAccess(parentHelloData, originUrl) {
- const helloPromise = !parentHelloData
- ? fetch(originUrl + "/api/v1/registry?action=hello", { cache: "no-cache", credentials: "include" })
- .then(function(response) { return response.json() })
- : Promise.resolve(parentHelloData)
-
- helloPromise.then(function(data) {
- var retries = 3
- var nodes = data.nodes || []
-
- var doAccess = function(mg, nm, token) {
- fetch(data.registry + '/api/v1/registry?action=access&machine=' + (mg || data.machine_guid) + '&name=' + encodeURIComponent(nm || data.hostname) + '&url=' + encodeURIComponent(originUrl) + '&agent=' + (data.agent ? data.agent.machine_guid : ""), { cache: "no-cache", credentials: "include", headers: { ["X-Netdata-Auth"]: 'Bearer ' + (token || localStorage.getItem("registry-netdata-token")) } })
- .then(function(response) { return response.json() })
- .then(function(data) {
- var token = data.person_guid
-
- if (data.status === "redirect" && retries > 0) {
- retries = retries - 1
- doAccess(data.machine_guid, data.hostname, token)
- }
-
- if (data.status === "ok") {
- localStorage.setItem("registry-netdata-token", token)
-
- let node = nodes.pop()
-
- if (!!node) {
- setTimeout(function () {
- doAccess(node.machine_guid, node.hostname, token)
- }, 1000)
- }
- }
- window.parent.postMessage(data, "*");
- })
- }
- doAccess(data.machine_guid, data.hostname)
- }).catch(() => {})
- }
-
- try {
- var searchParams = new URLSearchParams(location.search)
- var url = searchParams.get("url")
- var mg = searchParams.get("agent_machine_guid")
- var tr_i = searchParams.get("transition_id")
-
- fetch(url + "/api/v1/registry?action=hello", { cache: "no-cache", credentials: "include" })
- .then(function(response) { return response.json() })
- .then(function(helloData) {
- window.parent.postMessage({
- mg: mg,
- tr_i: tr_i,
- hostname: helloData.hostname,
- url: url,
- isSame: mg === (helloData.agent ? helloData.agent.machine_guid : helloData.machine_guid)
- }, "*");
- }).catch(() => {
- window.parent.postMessage({
- mg: mg,
- tr_i: tr_i,
- url: url,
- isSame: false,
- hasError: true
- }, "*");
- })
- doRegistryAccess(parentHelloData, searchParams.get("originUrl"))
- } catch(e) {
- // do nothing
- }
-
- function isValidHttpUrl(string) {
- var url;
-
- try {
- return true
- } catch (_) {
- return false;
- }
- }
-
- window.addEventListener('message', function(event) {
- var isNetdataMessage = Array.isArray(event.data) ? event.data.length === 3 ? event.data[0] === "netdata-registry" : isValidHttpUrl(event.data[0]) : true
-
- if (!isNetdataMessage) return
-
- var originUrl = Array.isArray(event.data) ? event.data.length === 3 ? event.data[1] : event.data[0] : event.data
- var parentHelloData = Array.isArray(event.data) ? event.data.length === 3 ? event.data[2] : event.data[1] : null
-
- doRegistryAccess(parentHelloData, originUrl)
- });</script></body></html> \ No newline at end of file