Konfi-Castle-Kasino/add.go

66 lines
1.3 KiB
Go
Raw Normal View History

2017-06-17 16:20:03 +00:00
package main
import (
"github.com/labstack/echo"
"net/http"
"strconv"
2017-06-17 16:20:03 +00:00
)
func addKonfi(c echo.Context) error {
2017-08-31 16:37:43 +00:00
//Config
SiteConf := initConfig()
2017-06-17 16:20:03 +00:00
//Datenbankverbindung aufbauen
db := DBinit()
rw := c.Response()
r := c.Request()
//Session init
sess := GlobalSessions.SessionStart(rw, r)
logged := sess.Get("login")
2017-08-30 20:23:35 +00:00
//Wenn eingeloggt
if logged != nil {
2017-08-31 16:37:43 +00:00
// Mode nach Kofis
if SiteConf.Mode == 0 {
kofi := new(Kofi)
kofi.Name = c.FormValue("name")
kofi.Gemeinde = c.FormValue("gemeinde")
// Einfügen
_, err := db.Insert(kofi)
if err == nil {
return c.JSON(http.StatusOK, Message{"success"})
}
return c.JSON(http.StatusInternalServerError, Message{"Error."})
} else if SiteConf.Mode == 1 { // Mode nach Gemeinden
var err error
2017-08-31 16:37:43 +00:00
gemeinde := new(Gemeinde)
gemeinde.Name = c.FormValue("name")
gemeinde.KonfiCount, err = strconv.Atoi(c.FormValue("konfis"))
2017-08-31 16:37:43 +00:00
if err != nil {
return c.JSON(http.StatusInternalServerError, Message{"error. (konfiCount not int)"})
}
_, err = db.Insert(gemeinde)
2017-08-31 16:37:43 +00:00
if err == nil {
return c.JSON(http.StatusOK, Message{"success"})
}
return c.JSON(http.StatusInternalServerError, Message{"Error."})
2017-06-17 16:20:03 +00:00
}
2017-08-31 16:37:43 +00:00
return c.JSON(http.StatusInternalServerError, Message{"Wrong Mode."})
2017-06-17 16:20:03 +00:00
} else {
return c.JSON(http.StatusOK, Message{"Login first."})
}
}