mirror of
https://github.com/hrfee/jfa-go.git
synced 2024-12-28 03:50:10 +00:00
Compare commits
2 Commits
a4d436b16b
...
6b576f2ffe
Author | SHA1 | Date | |
---|---|---|---|
6b576f2ffe | |||
7c989fda08 |
10
api-users.go
10
api-users.go
@ -2,6 +2,7 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"net/url"
|
||||||
"os"
|
"os"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
@ -927,12 +928,17 @@ func (app *appContext) GetAnnounceTemplates(gc *gin.Context) {
|
|||||||
// @Produce json
|
// @Produce json
|
||||||
// @Success 200 {object} announcementTemplate
|
// @Success 200 {object} announcementTemplate
|
||||||
// @Failure 400 {object} boolResponse
|
// @Failure 400 {object} boolResponse
|
||||||
// @Param name path string true "name of template"
|
// @Param name path string true "name of template (url encoded if necessary)"
|
||||||
// @Router /users/announce/template/{name} [get]
|
// @Router /users/announce/template/{name} [get]
|
||||||
// @Security Bearer
|
// @Security Bearer
|
||||||
// @tags Users
|
// @tags Users
|
||||||
func (app *appContext) GetAnnounceTemplate(gc *gin.Context) {
|
func (app *appContext) GetAnnounceTemplate(gc *gin.Context) {
|
||||||
name := gc.Param("name")
|
escapedName := gc.Param("name")
|
||||||
|
name, err := url.QueryUnescape(escapedName)
|
||||||
|
if err != nil {
|
||||||
|
respondBool(400, false, gc)
|
||||||
|
return
|
||||||
|
}
|
||||||
if announcement, ok := app.storage.GetAnnouncementsKey(name); ok {
|
if announcement, ok := app.storage.GetAnnouncementsKey(name); ok {
|
||||||
gc.JSON(200, announcement)
|
gc.JSON(200, announcement)
|
||||||
return
|
return
|
||||||
|
12
main.go
12
main.go
@ -566,11 +566,19 @@ func start(asDaemon, firstCall bool) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
app.err.Fatalf("Failure serving with SSL/TLS: %s", err)
|
if err == http.ErrServerClosed {
|
||||||
|
app.err.Printf("Failure serving with SSL/TLS: %s", err)
|
||||||
|
} else {
|
||||||
|
app.err.Fatalf("Failure serving with SSL/TLS: %s", err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if err := SRV.ListenAndServe(); err != nil {
|
if err := SRV.ListenAndServe(); err != nil {
|
||||||
app.err.Printf("Failure serving: %s", err)
|
if err == http.ErrServerClosed {
|
||||||
|
app.err.Printf("Failure serving: %s", err)
|
||||||
|
} else {
|
||||||
|
app.err.Fatalf("Failure serving: %s", err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
1
package-lock.json
generated
1
package-lock.json
generated
@ -15,7 +15,6 @@
|
|||||||
"any-date-parser": "^1.5.4",
|
"any-date-parser": "^1.5.4",
|
||||||
"browserslist": "^4.21.7",
|
"browserslist": "^4.21.7",
|
||||||
"cheerio": "^1.0.0-rc.12",
|
"cheerio": "^1.0.0-rc.12",
|
||||||
"esbuild": "^0.18.20",
|
|
||||||
"fs-cheerio": "^3.0.0",
|
"fs-cheerio": "^3.0.0",
|
||||||
"inline-source": "^8.0.2",
|
"inline-source": "^8.0.2",
|
||||||
"jsdom": "^22.1.0",
|
"jsdom": "^22.1.0",
|
||||||
|
@ -1275,8 +1275,9 @@ export class accountsList {
|
|||||||
el.innerHTML = `
|
el.innerHTML = `
|
||||||
<span class="button ~neutral sm full-width accounts-announce-template-button">${name}</span><span class="button ~critical fr ml-4 accounts-announce-template-delete">×</span>
|
<span class="button ~neutral sm full-width accounts-announce-template-button">${name}</span><span class="button ~critical fr ml-4 accounts-announce-template-delete">×</span>
|
||||||
`;
|
`;
|
||||||
|
let urlSafeName = encodeURIComponent(encodeURIComponent(name));
|
||||||
(el.querySelector("span.accounts-announce-template-button") as HTMLSpanElement).onclick = () => {
|
(el.querySelector("span.accounts-announce-template-button") as HTMLSpanElement).onclick = () => {
|
||||||
_get("/users/announce/" + name, null, (req: XMLHttpRequest) => {
|
_get("/users/announce/" + urlSafeName, null, (req: XMLHttpRequest) => {
|
||||||
if (req.readyState == 4) {
|
if (req.readyState == 4) {
|
||||||
let template: announcementTemplate;
|
let template: announcementTemplate;
|
||||||
if (req.status != 200) {
|
if (req.status != 200) {
|
||||||
@ -1289,7 +1290,7 @@ export class accountsList {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
(el.querySelector("span.accounts-announce-template-delete") as HTMLSpanElement).onclick = () => {
|
(el.querySelector("span.accounts-announce-template-delete") as HTMLSpanElement).onclick = () => {
|
||||||
_delete("/users/announce/" + name, null, (req: XMLHttpRequest) => {
|
_delete("/users/announce/" + urlSafeName, null, (req: XMLHttpRequest) => {
|
||||||
if (req.readyState == 4) {
|
if (req.readyState == 4) {
|
||||||
if (req.status != 200) {
|
if (req.status != 200) {
|
||||||
window.notifications.customError("deleteTemplateError", window.lang.notif("errorFailureCheckLogs"));
|
window.notifications.customError("deleteTemplateError", window.lang.notif("errorFailureCheckLogs"));
|
||||||
|
Loading…
Reference in New Issue
Block a user