diff --git a/controllers/addTemp.go b/controllers/addTemp.go index c1a3f01..4ecc0bb 100644 --- a/controllers/addTemp.go +++ b/controllers/addTemp.go @@ -27,7 +27,10 @@ func (c *AddTempController) Prepare() { func (c *AddTempController) Get() { mac := c.Ctx.Input.Param(":sensor") - val, _ := strconv.Atoi(c.Ctx.Input.Param(":val")) + valStr := c.Ctx.Input.Param(":val") + val, _ := strconv.Atoi(valStr) + + // log.Info("Add Temperature (%s) : %s", mac, valStr) s := sensor.GetSensorByMac(mac) if s == nil || s.Id == 0 { @@ -60,7 +63,10 @@ func addToTempBdd(snsor *sensor.SensorTable, val int) { func saveInBDD(snsor *sensor.SensorTable, val int) { nowUTC := time.Now() lastTempRecord := temperature.GetLastTempForSensor(snsor.Id) + // intervalTmp := nowUTC.Unix() - lastTempRecord.HorodateGMT.Unix() intervalTmp := nowUTC.Unix() - lastTempRecord.HorodateGMT.Unix() - int64(timezoneOffset) + log.Debug("Senor Interval: %d", snsor.Interval) + log.Debug("Current interval: %d", intervalTmp) if intervalTmp >= snsor.Interval { temperature.AddData(snsor.Id, int64(val)) } diff --git a/controllers/default.go b/controllers/default.go index b15231d..f10d9b7 100644 --- a/controllers/default.go +++ b/controllers/default.go @@ -2,6 +2,7 @@ package controllers import ( "github.com/astaxie/beego" + "github.com/astaxie/beego/logs" "git.kingpenguin.tk/chteufleur/datahouse.git/models/sensor" temperatureTmp "git.kingpenguin.tk/chteufleur/datahouse.git/models/temperature/temp" @@ -13,8 +14,13 @@ import ( var ( _, timezoneOffset = time.Now().Zone() + log = logs.NewLogger(10000) ) +func init() { + log.SetLogger("console", "") +} + type SensorPrint struct { Name string Mac string diff --git a/controllers/relay.go b/controllers/relay.go index 6277233..a90f294 100644 --- a/controllers/relay.go +++ b/controllers/relay.go @@ -54,11 +54,13 @@ func (c *ViewRelayController) Post() { ret := "" if r.Id != 0 { ret += r.Mac + "/" + // ligth stats (on/off) if r.IpAddress != "" { getRep, err := httplib.Get("http://"+r.IpAddress+"/status").SetTimeout(3*time.Second, 3*time.Second).String() if err == nil { ret += getRep } else { + ret += "/" relay.UpdateSensorIpAddress(r.Mac, "") } } diff --git a/controllers/sensors.go b/controllers/sensors.go index d2841ac..bbf3cab 100644 --- a/controllers/sensors.go +++ b/controllers/sensors.go @@ -8,7 +8,6 @@ import ( "git.kingpenguin.tk/chteufleur/datahouse.git/models/temperature" "git.kingpenguin.tk/chteufleur/datahouse.git/models/variables" - "fmt" "strconv" ) @@ -55,9 +54,7 @@ func (c *SensorsController) PostTempSensors() { interval, err := strconv.ParseInt(intervalStr, 10, 0) isDelete := c.Input().Get("delete") - fmt.Println("Del: ", isDelete) isSave := c.Input().Get("save") - fmt.Println("Save: ", isSave) if isSave != "" && err == nil { sensor.UpdateSensor(mac, description, interval) c.Redirect("/sensors", 302) @@ -76,9 +73,7 @@ func (c *SensorsController) PostRelay() { mac := c.Input().Get("mac") isDelete := c.Input().Get("delete") - fmt.Println("Del: ", isDelete) isSave := c.Input().Get("save") - fmt.Println("Save: ", isSave) if isSave != "" { relay.UpdateSensorDescription(mac, description) c.Redirect("/sensors", 302) diff --git a/models/temperature/temp/temp.go b/models/temperature/temp/temp.go index 9976854..5e9c7dc 100644 --- a/models/temperature/temp/temp.go +++ b/models/temperature/temp/temp.go @@ -1,6 +1,7 @@ package temp import ( + "github.com/astaxie/beego/logs" "github.com/astaxie/beego/orm" "git.kingpenguin.tk/chteufleur/datahouse.git/models/database" @@ -19,7 +20,12 @@ type TempTableTmp struct { Value int64 } +var ( + log = logs.NewLogger(10000) +) + func init() { + log.SetLogger("console", "") orm.RegisterModel(new(TempTableTmp)) } @@ -27,6 +33,7 @@ func init() { * Add the value into the database. */ func AddData(sensor, value int64) { + log.Info("Add tmp temperature {sensor: %s, value: %d}", sensor, value) o := orm.NewOrm() o.Using(database.Alias) @@ -55,6 +62,7 @@ func GetTemp(sensorId int64) *TempTableTmp { } func UpdateTemp(sensorId, val int64, date time.Time) { + log.Info("Update tmp temperature {sensorId: %d, value: %d}", sensorId, val) o := orm.NewOrm() o.Using(database.Alias) diff --git a/models/temperature/temperature.go b/models/temperature/temperature.go index d654839..a556457 100644 --- a/models/temperature/temperature.go +++ b/models/temperature/temperature.go @@ -1,6 +1,7 @@ package temperature import ( + "github.com/astaxie/beego/logs" "github.com/astaxie/beego/orm" "git.kingpenguin.tk/chteufleur/datahouse.git/models/database" @@ -16,7 +17,13 @@ type TempTable struct { Value int64 } +var ( + _, timezoneOffset = time.Now().Zone() + log = logs.NewLogger(10000) +) + func init() { + log.SetLogger("console", "") orm.RegisterModel(new(TempTable)) } @@ -24,6 +31,7 @@ func init() { * Add the value into the database. */ func AddData(sensor, value int64) { + log.Info("Add Temperature {sensor: %s, value: %d}", sensor, value) o := orm.NewOrm() o.Using(database.Alias) @@ -73,6 +81,7 @@ func GetLastTempForSensor(sensorId int64) *TempTable { } func DeleteTemperatureBySenor(sensorId int64) { + log.Info("Delete temperatures for sensor id : %d", sensorId) o := orm.NewOrm() o.Using(database.Alias) diff --git a/models/variables/variables.go b/models/variables/variables.go index 2358bba..5edd2b0 100644 --- a/models/variables/variables.go +++ b/models/variables/variables.go @@ -1,7 +1,7 @@ package variables const ( - Version = "0.0.4.1" + Version = "0.0.4.3" SessionName = "Session_Data_House" diff --git a/views/relay.tpl b/views/relay.tpl index b47178c..609338d 100644 --- a/views/relay.tpl +++ b/views/relay.tpl @@ -65,11 +65,12 @@ var forEachRelay = function() { method: "POST", success: function(result){ var res = result.split("/"); - if (res.length < 2) { + if (res.length < 3) { return; } var mac = res[0]; var status = res[1]; + var relayStats = res[2]; // Update img of the left list var links = $(".relayLink") @@ -95,6 +96,18 @@ var forEachRelay = function() { $(".jumbotron img").attr("src", "/static/img/bulbNone.png") } } + + // update button color of the selected relay + if ($(".jumbotron img").attr("id") == mac) { + $("#toggleButton").removeClass("btn-primary"); + $("#toggleButton").removeClass("btn-danger"); + + if (relayStats == "down") { + $("#toggleButton").addClass("btn-primary"); + } else { + $("#toggleButton").addClass("btn-danger"); + } + } } }); });