updated dip structure

This commit is contained in:
Paul 2020-01-26 18:12:50 +01:00
parent cb908eb194
commit a507ba6b68
5 changed files with 26 additions and 31 deletions

View File

@ -3,9 +3,12 @@ package main
import ( import (
"flag" "flag"
"fmt" "fmt"
"os"
"git.paulbsd.com/paulbsd/dip/packrd" //packrd "git.paulbsd.com/paulbsd/dip/packrd"
"git.paulbsd.com/paulbsd/dip/src" "git.paulbsd.com/paulbsd/dip/src/ip"
"git.paulbsd.com/paulbsd/dip/src/static"
"git.paulbsd.com/paulbsd/dip/src/templates"
"github.com/gobuffalo/packr/v2" "github.com/gobuffalo/packr/v2"
"github.com/labstack/echo/v4" "github.com/labstack/echo/v4"
) )
@ -16,7 +19,7 @@ func main() {
var host, port string var host, port string
flag.Usage = dip.Usage flag.Usage = Usage
flag.StringVar(&host, "host", "[::]", "Listen host") flag.StringVar(&host, "host", "[::]", "Listen host")
flag.StringVar(&port, "port", "8080", "Listen port") flag.StringVar(&port, "port", "8080", "Listen port")
flag.Parse() flag.Parse()
@ -27,10 +30,16 @@ func main() {
builtTemplates, _ := templates.BuildTemplates(templatesbox) builtTemplates, _ := templates.BuildTemplates(templatesbox)
e.Renderer = builtTemplates e.Renderer = builtTemplates
e.GET("/", dip.Dip) e.GET("/", ip.Dip)
e.GET("/static/*", func(c echo.Context) error { e.GET("/static/*", func(c echo.Context) error {
return static.Static(staticbox, c) return static.Static(staticbox, c)
}) })
e.Logger.Fatal(e.Start(fmt.Sprintf("%s:%s", host, port))) e.Logger.Fatal(e.Start(fmt.Sprintf("%s:%s", host, port)))
} }
// Usage displays possible arguments
func Usage() {
flag.PrintDefaults()
os.Exit(1)
}

View File

@ -1,21 +0,0 @@
package dip
import (
"git.paulbsd.com/paulbsd/dip/src"
"github.com/labstack/echo/v4"
"net/http"
"strings"
)
// Dip returns webpage
func Dip(c echo.Context) (err error) {
var ip IP
ip.GetIPInfo(c)
if strings.Contains(c.Request().Header.Get(echo.HeaderAccept), echo.MIMETextHTML) {
return c.Render(http.StatusOK, "index.html", ip)
} else {
return c.JSON(http.StatusOK, ip)
}
}

View File

@ -1,11 +1,11 @@
package ip package ip
import ( import (
"flag"
"fmt" "fmt"
"log" "log"
"net" "net"
"os" "net/http"
"strings"
"github.com/labstack/echo/v4" "github.com/labstack/echo/v4"
"github.com/likexian/whois-go" "github.com/likexian/whois-go"
@ -65,10 +65,17 @@ func (ip *IP) GetWhois() (err error) {
return return
} }
// Usage displays possible arguments // Dip returns webpage
func Usage() { func Dip(c echo.Context) (err error) {
flag.PrintDefaults() var ip IP
os.Exit(1)
ip.GetIPInfo(c)
if strings.Contains(c.Request().Header.Get(echo.HeaderAccept), echo.MIMETextHTML) {
return c.Render(http.StatusOK, "index.html", ip)
} else {
return c.JSON(http.StatusOK, ip)
}
} }
// IP defines dip main struct // IP defines dip main struct