gowebd/indexHtml.go

303 lines
12 KiB
Go

package main
import (
"fmt"
"strings"
"net/http"
"go.wit.com/log"
)
/*
func indexHtml(w http.ResponseWriter) {
realurl = "https://" + realurl
log.Info("go repo =", gourl, "real url =", realurl)
fmt.Fprintln(w, "<!DOCTYPE html>")
fmt.Fprintln(w, "<html>")
fmt.Fprintln(w, "<head>")
// fmt.Fprintln(w,
fmt.Fprintln(w, "<meta name=\"go-import\" content=\"", gourl, "git", realurl + "\">")
fmt.Fprintln(w, "<meta name=\"go-source\" content=\"", gourl, realurl, realurl + "/tree/master{/dir}", realurl + "tree/master{/dir}/{file}#L{line}", "\"", ">")
fmt.Fprintln(w, "<meta http-equiv=\"refresh\" content=\"0; url=" + realurl + "\">")
fmt.Fprintln(w, "</head>")
fmt.Fprintln(w, "<body>")
fmt.Fprintln(w, "Nothing to see here. Please <a href=\"" + realurl + "\">move along</a>.\"")
fmt.Fprintln(w, "</body>")
fmt.Fprintln(w, "</html>")
}
*/
/*
indexHeader(w)
indexBodyStart(w)
indexBodyEnd(w)
*/
func indexHeader(w http.ResponseWriter) {
fmt.Fprintln(w, "<!DOCTYPE html>")
fmt.Fprintln(w, "<html>")
fmt.Fprintln(w, " <head>")
// fmt.Fprintln(w, " <link rel=\"stylesheet\" href=\"skeleton.v2.css\" />")
fmt.Fprintln(w, " <style>")
fmt.Fprintln(w, " #footer {")
fmt.Fprintln(w, " position: fixed;")
fmt.Fprintln(w, " padding: 1% 0% 1% 0%; /* top left bottom right */")
fmt.Fprintln(w, " bottom: 0;")
fmt.Fprintln(w, " width: 100%;")
fmt.Fprintln(w, " /* Height of the footer*/")
fmt.Fprintln(w, " height: 40px;")
fmt.Fprintln(w, " background: lightgrey;")
fmt.Fprintln(w, " }")
fmt.Fprintln(w, " </style>")
fmt.Fprintln(w, " </head>")
fmt.Fprintln(w, "</html>")
}
func indexBodyStart(w http.ResponseWriter) {
// fmt.Fprintln(w, "
fmt.Fprintln(w, "<body>")
fmt.Fprintln(w, " <div class=\"container\">")
fmt.Fprintln(w, " <div class=\"row\">")
fmt.Fprintln(w, " <table class=\"u-full-width\">")
// fmt.Fprintln(w, " <thead>")
fmt.Fprintln(w, " <tr>")
fmt.Fprintln(w, " <th>Package</th>")
fmt.Fprintln(w, " <th>go get</th>")
fmt.Fprintln(w, " <th>Authoritative sources (IPv6 only)</th>")
fmt.Fprintln(w, " <th>github mirror</th>")
fmt.Fprintln(w, " <th>Documentation</th>")
fmt.Fprintln(w, " </tr>")
// fmt.Fprintln(w, " </thead>")
fmt.Fprintln(w, " <tbody>")
fmt.Fprintln(w, "")
}
func insertHTMLnote(w http.ResponseWriter, i int, parts []string) {
log.Info("comment # line:", i, strings.Join(parts, " "))
fmt.Fprintln(w, " <tr> <td><h3>", strings.Join(parts, " "), "</h3></td> <td></td> <td></td> <td></td> <td></td> </tr>")
}
func indexBodyScanConfig(w http.ResponseWriter) {
log.Info("indexBodyScanConfig() START")
for i, line := range configfile {
// log.Info("config file line:", i, line)
fields := strings.Fields(line)
if (len(fields) == 0) {
continue
}
if (fields[0] == "#") {
insertHTMLnote(w, i, fields[0:])
// log.Info("comment # line:", i, line)
continue
}
if (len(fields) == 2) {
log.Info("short file line:", i, line)
gourl := fields[0]
giturl := fields[1]
indexBodyRepo(w, gourl, giturl, "")
continue
}
log.Info("config file line:", i, line)
}
log.Info("indexBodyScanConfig() END")
}
func indexBodyRepo(w http.ResponseWriter, gourl string, giturl string, github string) {
// fmt.Fprintln(w, " <tr> <td><h5>log/ (needed for the gui)</h5></td> <td></td> <td></td> <td></td> <td></td> </tr>")
fmt.Fprintln(w, " <tr>")
fmt.Fprintln(w, " <td>" + gourl + "</td>")
fmt.Fprintln(w, " <td> <a href=\"//" + gourl + "\">" + gourl + "</a></td>")
fmt.Fprintln(w, " <td> <a href=\"//" + gourl + "\">" + giturl + "</a></td>")
if github == "" {
fmt.Fprintln(w, " <td></td>")
} else {
fmt.Fprintln(w, " <td> <a href=\"//github.com/wit-go/log\">github.com/wit-go/log</a></td>")
}
fmt.Fprintln(w, " <td> <a href=\"//pkg.go.dev/" + gourl + "\"> <img src=\"goReference.svg\" alt=\"pkg.go.dev docs\" /> </a> </td>")
fmt.Fprintln(w, " </tr>")
fmt.Fprintln(w, "")
}
func indexBodyEnd(w http.ResponseWriter) {
// fmt.Fprintln(w, "
fmt.Fprintln(w, " </tbody>")
fmt.Fprintln(w, " </table>")
fmt.Fprintln(w, " </div>")
fmt.Fprintln(w, " </div>")
fmt.Fprintln(w, " </body>")
fmt.Fprintln(w, " </html>")
}
/*
<tr> <td><h5>log/ (needed for the gui)</h5></td> <td></td> <td></td> <td></td> <td></td> </tr>
<tr>
<td>log</td>
<td> <a href="//go.wit.com/log">go.wit.com/log</a></td>
<td> <a href="//git.wit.org/wit/log">git.wit.org/wit/log</a></td>
<td> <a href="//github.com/wit-go/log">github.com/wit-go/log</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/log"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr> <td></td> <td></td> <td></td> <td></td> <td></td> </tr>
<tr> <td><h5>gui/ packages</h5></td> <td></td> <td></td> <td></td> <td></td> </tr>
<tr>
<td>gui/gui</td>
<td> <a href="//go.wit.com/gui/gui">go.wit.com/gui/gui</a></td>
<td> <a href="//git.wit.org/gui/gui">git.wit.org/gui/gui</a></td>
<td> <a href="//github.com/wit-go/gui">github.com/wit-go/gui</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/gui/gui"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>gui/widget</td>
<td> <a href="//go.wit.com/gui/widget">go.wit.com/gui/widget</a></td>
<td> <a href="//git.wit.org/gui/widget">git.wit.org/gui/widget</a></td>
<td> <a href="//github.com/wit-go/widget">github.com/wit-go/widget</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/gui/widget"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>gui/gadgets</td>
<td> <a href="//go.wit.com/gui/gadgets">go.wit.com/gui/gadgets</a></td>
<td> <a href="//git.wit.org/gui/gadgets">git.wit.org/gui/gadgets</a></td>
<td> <a href="//github.com/wit-go/gadgets">github.com/wit-go/gadgets</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/gui/gadgets"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>gui/toolkits</td>
<td> <a href="//go.wit.com/gui/toolkits">go.wit.com/gui/toolkits</a></td>
<td> <a href="//git.wit.org/gui/toolkits">git.wit.org/gui/toolkits</a></td>
<td> <a href="//github.com/wit-go/toolkits">github.com/wit-go/toolkits</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/gui/toolkits"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>gui/debugger</td>
<td> <a href="//go.wit.com/gui/debugger">go.wit.com/gui/debugger</a></td>
<td> <a href="//git.wit.org/gui/debugger">git.wit.org/gui/debugger</a></td>
<td> <a href="//github.com/wit-go/debugger">github.com/wit-go/debugger</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/gui/debugger"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>gui/examples</td>
<td> <a href="//go.wit.com/gui/examples">go.wit.com/gui/examples</a></td>
<td> <a href="//git.wit.org/gui/examples">git.wit.org/gui/examples</a></td>
<td> <a href="//github.com/wit-go/examples">github.com/wit-go/examples</a></td>
<td> </td>
</tr>
<tr>
<td>gui/digitalocean</td>
<td> <a href="//go.wit.com/gui/digitalocean">go.wit.com/gui/digitalocean</a></td>
<td> <a href="//git.wit.org/gui/digitalocean">git.wit.org/gui/digitalocean</a></td>
<td> </td>
<td> <a href="//pkg.go.dev/go.wit.com/gui/digitalocean"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>gui/cloudflare</td>
<td> <a href="//go.wit.com/gui/cloudflare">go.wit.com/gui/cloudflare</a></td>
<td> <a href="//git.wit.org/gui/cloudflare">git.wit.org/gui/cloudflare</a></td>
<td> </td>
<td> <a href="//pkg.go.dev/go.wit.com/gui/cloudflare"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr> <td></td> <td></td> <td></td> <td></td> <td></td> </tr>
<tr> <td><h5>Applications</h5></td> <td></td> <td></td> <td></td> <td></td> </tr>
<tr>
<td>control-panel-dns</td>
<td> <a href="//go.wit.com/apps/control-panel-dns">go.wit.com/apps/control-panel-dns</a></td>
<td> <a href="//git.wit.org/jcarr/control-panel-dns">git.wit.org/jcarr/control-panel-dns</a></td>
<td></td>
<td> <a href="//pkg.go.dev/go.wit.com/apps/control-panels-dns"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>control-panel-digitalocean</td>
<td> <a href="//go.wit.com/apps/control-panel-digitalocean">go.wit.com/apps/control-panel-digitalocean</a></td>
<td> <a href="//git.wit.org/wit/control-panel-digitalocean">git.wit.org/wit/control-panel-digitalocean</a></td>
<td></td>
<td> <a href="//pkg.go.dev/go.wit.com/apps/control-panel-digitalocean"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>control-panel-cloudflare</td>
<td> <a href="//go.wit.com/apps/control-panel-cloudflare">go.wit.com/apps/control-panel-cloudflare</a></td>
<td> <a href="//git.wit.org/wit/control-panel-cloudflare">git.wit.org/wit/control-panel-cloudflare</a></td>
<td></td>
<td> <a href="//pkg.go.dev/go.wit.com/control-panels/cloudflare"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<!--
<tr>
<td>control-panel-cloudflare</td>
<td> <a href="//go.wit.com/control-panel-cloudflare">go.wit.com/control-panel-cloudflare</a></td>
<td> <a href="//git.wit.org/wit/control-panel-cloudflare">git.wit.org/wit/control-panel-cloudflare</a></td>
<td> <a href="//github.com/wit-go/control-panel-cloudflare">github.com/wit-go/control-panel-cloudflare</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/control-panel-cloudflare"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
-->
<tr> <td></td> <td></td> <td></td> <td></td> <td></td> </tr>
<tr> <td><h5>Support packages</h5></td> <td></td> <td></td> <td></td> <td></td> </tr>
<!--
<tr>
<td>go-arg</td>
<td> <a href="//go.wit.com/arg">go.wit.com/arg</a></td>
<td> <a href="//git.wit.org/gui/arg">git.wit.org/gui/arg</a></td>
<td> <a href="//github.com/wit-go/shell">github.com/alexflint/go-arg</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/shell"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
-->
<tr>
<td>arg</td>
<td> <a href="//go.wit.com/arg">go.wit.com/arg</a></td>
<td> <a href="//git.wit.org/wit/arg">git.wit.org/wit/arg</a></td>
<td> <a href="//github.com/wit-go/go-arg">github.com/wit-go/go-arg</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/arg"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>spew</td>
<td> <a href="//go.wit.com/spew">go.wit.com/spew</a></td>
<td> <a href="//git.wit.org/wit/spew">git.wit.org/wit/spew</a></td>
<td> <a href="//github.com/wit-go/spew">github.com/wit-go/spew</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/spew"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>dnssec</td>
<td> <a href="//go.wit.com/dnssec">go.wit.com/dnssec</a></td>
<td> <a href="//git.wit.org/wit/dnssec">git.wit.org/wit/dnssec</a></td>
<td> <a href="//github.com/wit-go/dnssec">github.com/wit-go/dnssec</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/dnssec"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<tr>
<td>shell</td>
<td> <a href="//go.wit.com/shell">go.wit.com/shell</a></td>
<td> <a href="//git.wit.org/wit/shell">git.wit.org/wit/shell</a></td>
<td> <a href="//github.com/wit-go/shell">github.com/wit-go/shell</a></td>
<td> <a href="//pkg.go.dev/go.wit.com/shell"> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
<!--
<tr>
<td></td>
<td> <a href=""></a> </td>
<td> <a href=""> <img src="goReference.svg" alt="Go Reference" /> </a> </td>
</tr>
-->
</tbody>
</table>
</div>
</div>
<!--
<center>
<div id="footer">
simple go git repo list like <a href=http://go.uber.org/>go.uber.org</a><p>
</div>
</center>
-->
</body>
</html>
*/