Compare commits

..

No commits in common. "master" and "hooktest1" have entirely different histories.

3 changed files with 23 additions and 9 deletions

View File

@ -60,9 +60,9 @@ type AlpineLinuxPackageUpdate struct {
func (u *AlpineLinuxPackageUpdate) Update() { func (u *AlpineLinuxPackageUpdate) Update() {
u.apkLock.Lock()
log.Println("Updating packages...") log.Println("Updating packages...")
cmd := exec.Command("apk", u.Packages...) cmd := exec.Command("apk", u.Packages...)
u.apkLock.Lock()
stdout, err := cmd.Output() stdout, err := cmd.Output()
u.apkLock.Unlock() u.apkLock.Unlock()
if err != nil { if err != nil {

21
main.go
View File

@ -183,12 +183,21 @@ func handleDownload(w http.ResponseWriter, r *http.Request) {
} }
ctx.DownloadURL = downloadURL ctx.DownloadURL = downloadURL
ctx.DownloadURL = fmt.Sprintf("/download-direct?URL=%s&filename=%s", w.Header().Add(
"Hx-Redirect",
fmt.Sprintf("/download-direct?URL=%s&filename=%s",
url.QueryEscape(ctx.DownloadURL), url.QueryEscape(ctx.DownloadURL),
url.QueryEscape(filename), url.QueryEscape(filename)),
) )
w.Header().Add("Hx-Redirect", ctx.DownloadURL) err = templates.ExecuteTemplate(w,"download-result.html", ctx)
if err != nil {
log.Println(err.Error())
ctx.StatusCode = 500
ctx.Err = &err
err = templates.ExecuteTemplate(w,"download-result.html", ctx)
return
}
} }
func handleDirectDownload(w http.ResponseWriter, r *http.Request) { func handleDirectDownload(w http.ResponseWriter, r *http.Request) {
@ -267,7 +276,7 @@ func handleDirectDownload(w http.ResponseWriter, r *http.Request) {
func handleRoot(w http.ResponseWriter, r *http.Request) { func handleRoot(w http.ResponseWriter, r *http.Request) {
if r.URL.Path != "/" && r.URL.Path != "" { if r.URL.Path != "/" && r.URL.Path != "" {
http.Redirect(w, r, "/", http.StatusPermanentRedirect) w.WriteHeader(http.StatusNotFound)
return return
} }
@ -367,8 +376,8 @@ func main() {
wrappedHandler := NewLogger(handler) wrappedHandler := NewLogger(handler)
srv := http.Server{ srv := http.Server{
ReadTimeout: 1 * time.Minute, ReadTimeout: 60 * time.Second,
WriteTimeout: 1 * time.Minute, WriteTimeout: 60 * time.Second,
Addr: ":" + DEFAULT_HTTP_PORT, Addr: ":" + DEFAULT_HTTP_PORT,
Handler: wrappedHandler, Handler: wrappedHandler,
} }

View File

@ -24,7 +24,7 @@
<form hx-post="/download" hx-target="#get-btn" hx-swap="outerHTML" hx-indicator="#progress"> <form hx-post="/download" hx-target="#get-btn" hx-swap="outerHTML" hx-indicator="#progress">
<div class="grid"> <div class="grid">
<div hx-target="this" hx-swap="outerHTML"> <div hx-target="this" hx-swap="outerHTML">
<label>Link <label data-tooltip="Link can be on any platform!">Link
<input <input
type="url" id="URL" name="URL" type="url" id="URL" name="URL"
hx-post="/valid-link" hx-post="/valid-link"
@ -45,12 +45,17 @@
Convert to MP3 audio Convert to MP3 audio
</label> </label>
</fieldset> </fieldset>
<button class="outline" id="get-btn" role="button">Get <button class=" outline" id="get-btn" role="button">Get
<!-- <a class="htmx-indicator" href="#" aria-busy="true"></a> --> <!-- <a class="htmx-indicator" href="#" aria-busy="true"></a> -->
</button> </button>
</form> </form>
<progress class="htmx-indicator" id="progress"></progress> <progress class="htmx-indicator" id="progress"></progress>
</div> </div>
<div>
<img src="/assets/images/play.png">
</div>
<script data-cfasync="false" type="text/javascript" src="//brightadnetwork.com/a/display.php?r=7440414"></script>
<script data-cfasync="false" type="text/javascript" data-adel="atag" src="//acscdn.com/script/atg.js" czid="gobrl6fkye"></script>
</main> </main>
</html> </html>