mirror of
https://github.com/mgerb/mywebsite
synced 2026-01-10 09:52:51 +00:00
convert server to use relative imports
This commit is contained in:
@@ -9,8 +9,8 @@ import (
|
||||
"strconv"
|
||||
"time"
|
||||
|
||||
"mywebsite/server/model/daily_sensor"
|
||||
"mywebsite/server/model/raw_sensor"
|
||||
"../../model/daily_sensor"
|
||||
"../../model/raw_sensor"
|
||||
)
|
||||
|
||||
// handle http request from sensors
|
||||
@@ -175,13 +175,13 @@ func HandleSensorByLocationMonth(w http.ResponseWriter, r *http.Request, ps http
|
||||
}
|
||||
|
||||
func HandleUniqueDates(w http.ResponseWriter, r *http.Request, ps httprouter.Params) {
|
||||
|
||||
|
||||
location := ps.ByName("location")
|
||||
|
||||
|
||||
w.Header().Set("Content-Type", "application/json")
|
||||
|
||||
|
||||
s, err := daily_sensor.GetUniqueSensorDates(location)
|
||||
|
||||
|
||||
var response string
|
||||
|
||||
if err != nil {
|
||||
@@ -201,7 +201,7 @@ func HandleUniqueDates(w http.ResponseWriter, r *http.Request, ps httprouter.Par
|
||||
fmt.Fprint(w, response)
|
||||
}
|
||||
|
||||
func createResponse(s []daily_sensor.Data, err error) string{
|
||||
func createResponse(s []daily_sensor.Data, err error) string {
|
||||
var response string
|
||||
|
||||
if err != nil {
|
||||
@@ -217,6 +217,6 @@ func createResponse(s []daily_sensor.Data, err error) string{
|
||||
response = string(js)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return response
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ import (
|
||||
"log"
|
||||
"time"
|
||||
|
||||
"mywebsite/server/db"
|
||||
"../../db"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -23,7 +23,7 @@ type Data struct {
|
||||
MonthName string `json:"monthname,omitempty" bson:"monthname"`
|
||||
Day int `json:"day,omitempty" bson:"day"`
|
||||
Year int `json:"year,omitempty" bson:"year"`
|
||||
Updated time.Time `json:"updated,omitempty" bson:"updated"`
|
||||
Updated time.Time `json:"updated,omitempty" bson:"updated"`
|
||||
}
|
||||
|
||||
//convert struct to json string
|
||||
@@ -211,35 +211,34 @@ type UniqueDates struct{
|
||||
*/
|
||||
|
||||
type Years struct {
|
||||
Year int `json:"year", bson:"year"`
|
||||
Months []Month `json:"months", bson:"months"`
|
||||
Year int `json:"year", bson:"year"`
|
||||
Months []Month `json:"months", bson:"months"`
|
||||
}
|
||||
|
||||
type Month struct {
|
||||
Month int `json:"month", bson:"month"`
|
||||
MonthName string `json:"monthname", bson:"monthname"`
|
||||
Month int `json:"month", bson:"month"`
|
||||
MonthName string `json:"monthname", bson:"monthname"`
|
||||
}
|
||||
|
||||
func GetUniqueSensorDates(sensor_location string) ([]Years, error){
|
||||
func GetUniqueSensorDates(sensor_location string) ([]Years, error) {
|
||||
d := []Years{}
|
||||
|
||||
|
||||
if db.Mongo.Connected() == true {
|
||||
|
||||
session := db.Mongo.Session.Copy()
|
||||
defer session.Close()
|
||||
|
||||
c := session.DB(db.Mongo.Info.Database).C(collection)
|
||||
|
||||
|
||||
err := c.Pipe([]bson.M{bson.M{"$match": bson.M{"location": sensor_location}},
|
||||
bson.M{"$group": bson.M{"_id": "$year", "months": bson.M{"$addToSet": bson.M{"month": "$month", "monthname": "$monthname"}}}},
|
||||
bson.M{"$project": bson.M{"year": "$_id", "months": "$months"}},
|
||||
bson.M{"$unwind": "$months"},
|
||||
bson.M{"$sort": bson.M{"months.month": -1}},
|
||||
bson.M{"$group": bson.M{"_id": "$year", "months": bson.M{"$push": "$months"}}},
|
||||
bson.M{"$project": bson.M{"year": "$_id", "months": "$months"}},
|
||||
|
||||
bson.M{"$group": bson.M{"_id": "$year", "months": bson.M{"$addToSet": bson.M{"month": "$month", "monthname": "$monthname"}}}},
|
||||
bson.M{"$project": bson.M{"year": "$_id", "months": "$months"}},
|
||||
bson.M{"$unwind": "$months"},
|
||||
bson.M{"$sort": bson.M{"months.month": -1}},
|
||||
bson.M{"$group": bson.M{"_id": "$year", "months": bson.M{"$push": "$months"}}},
|
||||
bson.M{"$project": bson.M{"year": "$_id", "months": "$months"}},
|
||||
}).All(&d)
|
||||
|
||||
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
return d, nil
|
||||
@@ -250,4 +249,4 @@ func GetUniqueSensorDates(sensor_location string) ([]Years, error){
|
||||
} else {
|
||||
return d, errors.New("Query failed")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ import (
|
||||
"log"
|
||||
"time"
|
||||
|
||||
"mywebsite/server/db"
|
||||
"../../db"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -60,8 +60,8 @@ func (s *Data) StoreData() error {
|
||||
//handle queries for all sensors page
|
||||
type DataStore_AllSensors struct {
|
||||
ID bson.ObjectId `bson:"_id,omitempty"`
|
||||
Location string `json:"location", bson:"location"`
|
||||
Temperature float64 `json:"temperature" bson:"temperature"`
|
||||
Location string `json:"location", bson:"location"`
|
||||
Temperature float64 `json:"temperature" bson:"temperature"`
|
||||
Updated time.Time `json:"updated" bson:"updated"`
|
||||
}
|
||||
|
||||
@@ -92,4 +92,4 @@ func GetAllSensors() ([]DataStore_AllSensors, error) {
|
||||
} else {
|
||||
return s, errors.New("Query failed")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,10 +6,10 @@ import (
|
||||
"net/http"
|
||||
"strconv"
|
||||
|
||||
"mywebsite/server/controller/api"
|
||||
"mywebsite/server/db"
|
||||
"mywebsite/server/route"
|
||||
"mywebsite/server/utils"
|
||||
"./controller/api"
|
||||
"./db"
|
||||
"./route"
|
||||
"./utils"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
@@ -5,8 +5,8 @@ import (
|
||||
"log"
|
||||
"net/http"
|
||||
|
||||
"mywebsite/server/controller"
|
||||
"mywebsite/server/controller/api"
|
||||
"../controller"
|
||||
"../controller/api"
|
||||
)
|
||||
|
||||
func Routes() *httprouter.Router {
|
||||
@@ -21,7 +21,7 @@ func Routes() *httprouter.Router {
|
||||
r.GET("/api/sensor/:location/:year", api.HandleSensorByLocationYear)
|
||||
r.GET("/api/sensor/:location/:year/:monthname", api.HandleSensorByLocationMonth)
|
||||
r.GET("/api/uniquedates/:location", api.HandleUniqueDates)
|
||||
|
||||
|
||||
r.GET("/discord", controller.DiscordRedirect)
|
||||
r.GET("/vpn", controller.VPNRedirect)
|
||||
r.GET("/camera", controller.CameraRedirect)
|
||||
|
||||
@@ -6,18 +6,18 @@ import (
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"mywebsite/server/controller/api"
|
||||
"mywebsite/server/db"
|
||||
"../controller/api"
|
||||
"../db"
|
||||
)
|
||||
|
||||
//structure for application configurations
|
||||
type Config struct {
|
||||
Database db.DatabaseInfo `json:"Database"`
|
||||
Api api.ApiInfo `json:"Api"`
|
||||
Port int `json:"Port"`
|
||||
TLSPort int `json:"TLSPort"`
|
||||
TLSCertFile string `json:"TLSCertFile"`
|
||||
TLSKeyFile string `json:"TLSKeyFile"`
|
||||
Database db.DatabaseInfo `json:"Database"`
|
||||
Api api.ApiInfo `json:"Api"`
|
||||
Port int `json:"Port"`
|
||||
TLSPort int `json:"TLSPort"`
|
||||
TLSCertFile string `json:"TLSCertFile"`
|
||||
TLSKeyFile string `json:"TLSKeyFile"`
|
||||
}
|
||||
|
||||
//read the config file and return JsonObject struct
|
||||
|
||||
Reference in New Issue
Block a user