progresses on #41

This commit is contained in:
Henrique Dias 2016-03-06 13:14:05 +00:00
parent 7e27c40841
commit fb0e4d79b2
3 changed files with 39 additions and 0 deletions

18
git/git.go Normal file
View File

@ -0,0 +1,18 @@
package git
import (
"errors"
"net/http"
"github.com/hacdias/caddy-hugo/config"
)
// ServeHTTP is used to serve the content of GIT API.
func ServeHTTP(w http.ResponseWriter, r *http.Request, c *config.Config) (int, error) {
switch r.Method {
case "POST":
return POST(w, r, c)
default:
return 400, errors.New("Invalid method.")
}
}

15
git/post.go Normal file
View File

@ -0,0 +1,15 @@
package git
import (
"net/http"
"github.com/hacdias/caddy-hugo/config"
)
// POST handles the POST method on GIT page which is only an API.
func POST(w http.ResponseWriter, r *http.Request, c *config.Config) (int, error) {
w.Header().Set("Content-Type", "application/json")
w.Write([]byte("{}"))
return http.StatusOK, nil
}

View File

@ -18,6 +18,7 @@ import (
"github.com/hacdias/caddy-hugo/browse"
"github.com/hacdias/caddy-hugo/config"
"github.com/hacdias/caddy-hugo/editor"
"github.com/hacdias/caddy-hugo/git"
"github.com/hacdias/caddy-hugo/utils"
"github.com/mholt/caddy/caddy/setup"
"github.com/mholt/caddy/middleware"
@ -135,6 +136,11 @@ func (h CaddyHugo) ServeHTTP(w http.ResponseWriter, r *http.Request) (int, error
code, err = editor.ServeHTTP(w, r, h.Config)
}
// Git API
if page == "edit" {
code, err = git.ServeHTTP(w, r, h.Config)
}
// Whenever the header "X-Regenerate" is true, the website should be
// regenerated. Used in edit and settings, for example.
if r.Header.Get("X-Regenerate") == "true" {