WIP - cleanup / local discovery
This commit is contained in:
@@ -54,11 +54,18 @@ func (a *App) _adminSignOutSubmit(s *api.Session, w http.ResponseWriter, r *http
|
||||
}
|
||||
|
||||
func (a *App) _adminConfig(s *api.Session, w http.ResponseWriter, r *http.Request) error {
|
||||
peers, err := a.api.Peer_List()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return a.render("/admin-config.html", w, struct {
|
||||
Session *api.Session
|
||||
Peers []*api.Peer
|
||||
Config *api.Config
|
||||
}{
|
||||
s,
|
||||
peers,
|
||||
a.api.Config_Get(),
|
||||
})
|
||||
}
|
||||
@@ -142,21 +149,6 @@ func (a *App) _adminPasswordSubmit(s *api.Session, w http.ResponseWriter, r *htt
|
||||
return a.redirect(w, r, "/admin/config/")
|
||||
}
|
||||
|
||||
func (a *App) _adminPeerList(s *api.Session, w http.ResponseWriter, r *http.Request) error {
|
||||
peers, err := a.api.Peer_List()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return a.render("/admin-peer-list.html", w, struct {
|
||||
Session *api.Session
|
||||
Peers []*api.Peer
|
||||
}{
|
||||
s,
|
||||
peers,
|
||||
})
|
||||
}
|
||||
|
||||
func (a *App) _adminHosts(s *api.Session, w http.ResponseWriter, r *http.Request) error {
|
||||
conf := a.api.Config_Get()
|
||||
|
||||
@@ -187,25 +179,45 @@ func (a *App) _adminPeerCreate(s *api.Session, w http.ResponseWriter, r *http.Re
|
||||
func (a *App) _adminPeerCreateSubmit(s *api.Session, w http.ResponseWriter, r *http.Request) error {
|
||||
var ipStr string
|
||||
|
||||
args := api.PeerCreateArgs{}
|
||||
p := &api.Peer{}
|
||||
err := webutil.NewFormScanner(r.Form).
|
||||
Scan("Name", &args.Name).
|
||||
Scan("IP", &p.PeerIP).
|
||||
Scan("Name", &p.Name).
|
||||
Scan("PublicIP", &ipStr).
|
||||
Scan("Port", &args.Port).
|
||||
Scan("Relay", &args.Relay).
|
||||
Scan("Port", &p.Port).
|
||||
Scan("Relay", &p.Relay).
|
||||
Error()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if args.PublicIP, err = stringToIP(ipStr); err != nil {
|
||||
if p.PublicIP, err = stringToIP(ipStr); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
code := a.api.Peer_CreateIntent(args)
|
||||
return a.redirect(w, r, "/admin/peer/intent-created/?Code=%s", code)
|
||||
if err := a.api.Peer_CreateNew(p); err != nil {
|
||||
return err
|
||||
}
|
||||
return a.redirect(w, r, "/admin/peer/view/?PeerIP=%d", p.PeerIP)
|
||||
}
|
||||
|
||||
func (a *App) _adminPeerInit(s *api.Session, w http.ResponseWriter, r *http.Request) error {
|
||||
var peerIP byte
|
||||
err := webutil.NewFormScanner(r.Form).Scan("PeerIP", &peerIP).Error()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
code := a.api.Peer_CreateInitIntent(peerIP)
|
||||
log.Printf("Got code: %v / %v", peerIP, cod)
|
||||
|
||||
return a.render("/admin-peer-init.html", w, struct {
|
||||
Session *api.Session
|
||||
HubAddress string
|
||||
Code string
|
||||
}{s, a.api.Config_Get().HubAddress, code})
|
||||
}
|
||||
|
||||
// TODO: Remove
|
||||
func (a *App) _adminPeerIntentCreated(s *api.Session, w http.ResponseWriter, r *http.Request) error {
|
||||
code := r.FormValue("Code")
|
||||
if code == "" {
|
||||
@@ -323,6 +335,17 @@ func (a *App) _adminPeerDeleteSubmit(s *api.Session, w http.ResponseWriter, r *h
|
||||
return a.redirect(w, r, "/admin/peer/list/")
|
||||
}
|
||||
|
||||
func (a *App) _peerInit(w http.ResponseWriter, r *http.Request) error {
|
||||
code := r.FormValue("Code")
|
||||
conf, err := a.api.Peer_Init(code)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return a.sendJSON(w, conf)
|
||||
}
|
||||
|
||||
// TODO: Remove
|
||||
func (a *App) _peerCreate(w http.ResponseWriter, r *http.Request) error {
|
||||
code := r.FormValue("Code")
|
||||
conf, err := a.api.Peer_Create(code)
|
||||
@@ -360,14 +383,16 @@ func (a *App) _peerFetchState(w http.ResponseWriter, r *http.Request) error {
|
||||
}
|
||||
|
||||
for _, p := range peers {
|
||||
state.Peers[p.PeerIP] = &m.Peer{
|
||||
PeerIP: p.PeerIP,
|
||||
Version: p.Version,
|
||||
Name: p.Name,
|
||||
PublicIP: p.PublicIP,
|
||||
Port: p.Port,
|
||||
Relay: p.Relay,
|
||||
PubKey: p.PubKey,
|
||||
if len(p.PubKey) != 0 {
|
||||
state.Peers[p.PeerIP] = &m.Peer{
|
||||
PeerIP: p.PeerIP,
|
||||
Version: p.Version,
|
||||
Name: p.Name,
|
||||
PublicIP: p.PublicIP,
|
||||
Port: p.Port,
|
||||
Relay: p.Relay,
|
||||
PubKey: p.PubKey,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user