aboutsummaryrefslogtreecommitdiff
path: root/javascript/extraNetworks.js
diff options
context:
space:
mode:
authorAUTOMATIC <16777216c@gmail.com>2023-03-25 10:11:04 +0300
committerAUTOMATIC <16777216c@gmail.com>2023-03-25 10:11:04 +0300
commit9ed04e759d8b4a84db1f0e37abee59178fe1f586 (patch)
tree427eac9d2e0c3c1d42ef8c2ab2caf562fe78afba /javascript/extraNetworks.js
parent724a63714d513b79d8ee13adb0300d0fda99f966 (diff)
use HTTP request to fetch metadata for Lora cards instead of including it into the main page
Diffstat (limited to 'javascript/extraNetworks.js')
-rw-r--r--javascript/extraNetworks.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/javascript/extraNetworks.js b/javascript/extraNetworks.js
index 2fb87cd5..40818bb4 100644
--- a/javascript/extraNetworks.js
+++ b/javascript/extraNetworks.js
@@ -139,3 +139,39 @@ function extraNetworksShowMetadata(text){
popup(elem);
}
+
+function requestGet(url, data, handler, errorHandler){
+ var xhr = new XMLHttpRequest();
+ var args = Object.keys(data).map(function(k){ return encodeURIComponent(k) + '=' + encodeURIComponent(data[k]) }).join('&')
+ xhr.open("GET", url + "?" + args, true);
+
+ xhr.onreadystatechange = function () {
+ if (xhr.readyState === 4) {
+ if (xhr.status === 200) {
+ try {
+ var js = JSON.parse(xhr.responseText);
+ handler(js)
+ } catch (error) {
+ console.error(error);
+ errorHandler()
+ }
+ } else{
+ errorHandler()
+ }
+ }
+ };
+ var js = JSON.stringify(data);
+ xhr.send(js);
+}
+
+function extraNetworksRequestMetadata(extraPage, cardName){
+ showError = function(){ extraNetworksShowMetadata("there was an error getting metadata"); }
+
+ requestGet("./sd_extra_networks/metadata", {"page": extraPage, "item": cardName}, function(data){
+ if(data && data.metadata){
+ extraNetworksShowMetadata(data.metadata)
+ } else{
+ showError()
+ }
+ }, showError)
+}