mirror of
				https://github.com/yggdrasil-network/yggdrasil-go.git
				synced 2025-11-04 03:05:07 +03:00 
			
		
		
		
	added peer save in backend
This commit is contained in:
		
							parent
							
								
									b1098ad1ee
								
							
						
					
					
						commit
						9dc7b7adbf
					
				
					 2 changed files with 36 additions and 16 deletions
				
			
		| 
						 | 
				
			
			@ -109,6 +109,16 @@
 | 
			
		|||
            message.value = "";
 | 
			
		||||
            info.className = "notification is-primary is-hidden";
 | 
			
		||||
            //todo save peers
 | 
			
		||||
            var peers = document.querySelectorAll('*[id^="peer-"]');
 | 
			
		||||
            var peer_list = [];
 | 
			
		||||
            for (i = 0; i < peers.length; ++i) {
 | 
			
		||||
              var p = peers[i];
 | 
			
		||||
              if (p.checked) {
 | 
			
		||||
            		var peerURL = p.parentElement.parentElement.firstChild.innerText;
 | 
			
		||||
            		peer_list.push(peerURL);
 | 
			
		||||
              }
 | 
			
		||||
            }
 | 
			
		||||
            savePeers(JSON.stringify(peer_list));
 | 
			
		||||
        };
 | 
			
		||||
    };
 | 
			
		||||
    
 | 
			
		||||
| 
						 | 
				
			
			@ -129,11 +139,13 @@ function add_table(peerList) {
 | 
			
		|||
 | 
			
		||||
  // creates a <table> element and a <tbody> element
 | 
			
		||||
  var tbl = document.createElement("table");
 | 
			
		||||
  tbl.setAttribute('id', "peer_list");
 | 
			
		||||
  //tbl.setAttribute('cellpadding', '10');
 | 
			
		||||
  var tblBody = document.createElement("tbody");
 | 
			
		||||
 | 
			
		||||
  // creating all cells
 | 
			
		||||
  for (var c in peerList) {
 | 
			
		||||
    let counter = 1;
 | 
			
		||||
    for (peer in peerList[c]){
 | 
			
		||||
    // creates a table row
 | 
			
		||||
    var row = document.createElement("tr");
 | 
			
		||||
| 
						 | 
				
			
			@ -143,6 +155,7 @@ function add_table(peerList) {
 | 
			
		|||
    var peerSelect = document.createElement("td");
 | 
			
		||||
    var chk = document.createElement('input');
 | 
			
		||||
    chk.setAttribute('type', 'checkbox');
 | 
			
		||||
    chk.setAttribute('id', "peer-"+counter);
 | 
			
		||||
    peerSelect.appendChild(chk);
 | 
			
		||||
    row.appendChild(peerAddress);
 | 
			
		||||
    row.appendChild(peerSelect);
 | 
			
		||||
| 
						 | 
				
			
			@ -222,7 +235,6 @@ function add_table(peerList) {
 | 
			
		|||
<body onload="onLoad();">
 | 
			
		||||
   <div style="padding:3px; max-height: 250px;">
 | 
			
		||||
   <div class="box">
 | 
			
		||||
 | 
			
		||||
        <div style="z-index: 9;" class="box stack-top notification is-primary is-hidden" id="notification_window">
 | 
			
		||||
              <button class="delete" id="info_close"></button>
 | 
			
		||||
              <p style="padding:3px; max-height: 250px; overflow-y: auto;" id="info_window"></p>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,35 +2,42 @@ package main
 | 
			
		|||
 | 
			
		||||
import (
 | 
			
		||||
	"github.com/webview/webview"
 | 
			
		||||
	"encoding/json"
 | 
			
		||||
	"path/filepath"
 | 
			
		||||
	"io/ioutil"
 | 
			
		||||
	"os/exec"
 | 
			
		||||
	"net/url"
 | 
			
		||||
	"runtime"
 | 
			
		||||
	"strings"
 | 
			
		||||
	"os/exec"
 | 
			
		||||
	"log"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"os"	
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func main() {
 | 
			
		||||
	debug := true
 | 
			
		||||
	w := webview.New(debug)
 | 
			
		||||
	defer w.Destroy()
 | 
			
		||||
	w.SetTitle("RiV-mesh")
 | 
			
		||||
	w.SetSize(470, 415, webview.HintNone)
 | 
			
		||||
	path, err := filepath.Abs(filepath.Dir(os.Args[0]))
 | 
			
		||||
    debug := true
 | 
			
		||||
    w := webview.New(debug)
 | 
			
		||||
    defer w.Destroy()
 | 
			
		||||
    w.SetTitle("RiV-mesh")
 | 
			
		||||
    w.SetSize(470, 415, webview.HintNone)
 | 
			
		||||
    path, err := filepath.Abs(filepath.Dir(os.Args[0]))
 | 
			
		||||
    if err != nil {
 | 
			
		||||
            log.Fatal(err)
 | 
			
		||||
    }
 | 
			
		||||
    log.Println(path)
 | 
			
		||||
	w.Bind("onLoad", func() {
 | 
			
		||||
			log.Println("page loaded")
 | 
			
		||||
			go run(w)
 | 
			
		||||
	})
 | 
			
		||||
	dat, err := ioutil.ReadFile(path+"/index.html")
 | 
			
		||||
	w.Navigate("data:text/html,"+url.QueryEscape(string(dat)))
 | 
			
		||||
	w.Run()
 | 
			
		||||
    w.Bind("onLoad", func() {
 | 
			
		||||
	log.Println("page loaded")
 | 
			
		||||
	go run(w)
 | 
			
		||||
    })
 | 
			
		||||
    w.Bind("savePeers", func(peer_list string) {
 | 
			
		||||
	//log.Println("peers saved ", peer_list)
 | 
			
		||||
	var peers []string
 | 
			
		||||
	_ = json.Unmarshal([]byte(peer_list), &peers)
 | 
			
		||||
	log.Printf("Unmarshaled: %v", peers)
 | 
			
		||||
    })
 | 
			
		||||
    dat, err := ioutil.ReadFile(path+"/index.html")
 | 
			
		||||
    w.Navigate("data:text/html,"+url.QueryEscape(string(dat)))
 | 
			
		||||
    w.Run()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func run(w webview.WebView){
 | 
			
		||||
| 
						 | 
				
			
			@ -107,7 +114,8 @@ func get_peers(w webview.WebView, riv_ctrl_path string){
 | 
			
		|||
			m=append(m, r)
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	for k := range m {         // Loop
 | 
			
		||||
	for k := range m {         
 | 
			
		||||
	    // Loop
 | 
			
		||||
	    fmt.Println(k)
 | 
			
		||||
	}
 | 
			
		||||
	inner_html := strings.Join(m[:], "<br>")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue