mirror of
https://github.com/donl/gPanel.git
synced 2026-05-26 22:06:36 -06:00
39 lines
826 B
Go
39 lines
826 B
Go
// Package gpserver handles the logic of the gPanel server
|
|
package gpserver
|
|
|
|
import (
|
|
"log"
|
|
"os"
|
|
|
|
"github.com/kentonh/gPanel/pkg/gpaccount"
|
|
)
|
|
|
|
type Controller struct {
|
|
Directory string
|
|
DocumentRoot string
|
|
Bundles map[string]*gpaccount.Controller
|
|
ServerLogger *log.Logger
|
|
APILogger *log.Logger
|
|
}
|
|
|
|
func New() (*Controller, error) {
|
|
var err error = nil
|
|
|
|
f, err := os.OpenFile("server/logs/server_errors.log", os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666)
|
|
if err != nil {
|
|
log.Fatalf("error whilst trying to start server logging instance:%v", err.Error())
|
|
}
|
|
|
|
c := Controller{
|
|
Directory: "server/",
|
|
DocumentRoot: "document_root/",
|
|
Bundles: nil,
|
|
ServerLogger: log.New(f, "SERVER :: ", 3),
|
|
APILogger: log.New(f, "API :: ", 3),
|
|
}
|
|
|
|
err = c.detectBundles()
|
|
c.setDefaults()
|
|
|
|
return &c, err
|
|
}
|