49 lines
1.2 KiB
Go
49 lines
1.2 KiB
Go
package main
|
|
|
|
import (
|
|
"git.stuve.uni-ulm.de/stuve-it/stuve-it-backend/ldapApi"
|
|
"git.stuve.uni-ulm.de/stuve-it/stuve-it-backend/ldapSync"
|
|
"git.stuve.uni-ulm.de/stuve-it/stuve-it-backend/logger"
|
|
"git.stuve.uni-ulm.de/stuve-it/stuve-it-backend/messages"
|
|
"git.stuve.uni-ulm.de/stuve-it/stuve-it-backend/qrApi"
|
|
"github.com/joho/godotenv"
|
|
"github.com/pocketbase/pocketbase"
|
|
"github.com/pocketbase/pocketbase/core"
|
|
"log"
|
|
)
|
|
|
|
func main() {
|
|
|
|
// load env
|
|
err := godotenv.Load(".env.local", ".env")
|
|
if err != nil {
|
|
logger.LogInfoF("The file '.env.local' / '.env' could not be loaded.")
|
|
}
|
|
|
|
// create app
|
|
app := pocketbase.New()
|
|
|
|
// setup ldap sync
|
|
app.OnBeforeServe().Add(func(e *core.ServeEvent) error {
|
|
return ldapSync.InitLdapSync(app)
|
|
})
|
|
|
|
// setup ldap login
|
|
app.OnBeforeServe().Add(func(e *core.ServeEvent) error {
|
|
return ldapApi.InitLdapApi(app, e)
|
|
})
|
|
|
|
// setup qr api
|
|
app.OnBeforeServe().Add(func(e *core.ServeEvent) error {
|
|
return qrApi.InitQRApi(app, e)
|
|
})
|
|
|
|
// setup messages email notifications
|
|
app.OnBeforeServe().Add(func(e *core.ServeEvent) error { return messages.InitMessages(app, e) })
|
|
|
|
// start app
|
|
if err := app.Start(); err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
}
|