template.go 664 B

1234567891011121314151617181920212223242526272829303132333435
  1. package api
  2. import (
  3. "github.com/0xJacky/Nginx-UI/server/settings"
  4. "github.com/0xJacky/Nginx-UI/server/template"
  5. "github.com/gin-gonic/gin"
  6. "net/http"
  7. "os"
  8. "strings"
  9. )
  10. func GetTemplate(c *gin.Context) {
  11. name := c.Param("name")
  12. content, err := template.DistFS.ReadFile(name)
  13. _content := string(content)
  14. _content = strings.ReplaceAll(_content, "{{ HTTP01PORT }}",
  15. settings.ServerSettings.HTTPChallengePort)
  16. if err != nil {
  17. if os.IsNotExist(err) {
  18. c.JSON(http.StatusNotFound, gin.H{
  19. "message": err.Error(),
  20. })
  21. return
  22. }
  23. ErrHandler(c, err)
  24. return
  25. }
  26. c.JSON(http.StatusOK, gin.H{
  27. "message": "ok",
  28. "template": _content,
  29. })
  30. }