first try
This commit is contained in:
17
controllers/authController.go
Normal file
17
controllers/authController.go
Normal file
@@ -0,0 +1,17 @@
|
||||
package controllers
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"gitea.tbdevent.eu/TBD/reforger_crawler_main/initializers"
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
func CheckAllowed(c *gin.Context) {
|
||||
secret := c.GetHeader("X-SECRET-KEY")
|
||||
if secret != initializers.SECRET {
|
||||
c.JSON(http.StatusForbidden, gin.H{"error": "Forbidden"})
|
||||
c.Abort()
|
||||
return
|
||||
}
|
||||
}
|
||||
43
controllers/scraperController.go
Normal file
43
controllers/scraperController.go
Normal file
@@ -0,0 +1,43 @@
|
||||
package controllers
|
||||
|
||||
import (
|
||||
"gitea.tbdevent.eu/TBD/reforger_crawler_main/initializers"
|
||||
"gitea.tbdevent.eu/TBD/reforger_crawler_main/models"
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
func CreateAddon(c *gin.Context) {
|
||||
var addonR models.Addon
|
||||
err := c.ShouldBindJSON(&addonR)
|
||||
if err != nil {
|
||||
c.JSON(400, gin.H{"error": "Invalid JSON"})
|
||||
return
|
||||
}
|
||||
|
||||
addon := models.Addon{
|
||||
ID: addonR.ID,
|
||||
}
|
||||
|
||||
result := initializers.DB.Where(&addon).First(&addon)
|
||||
if result.Error != nil {
|
||||
// addon does not exist, create it
|
||||
initializers.DB.Create(&addonR)
|
||||
} else {
|
||||
// addon exists, check version, update it and queue for reindexing if needed
|
||||
if addon.CurrentVersionNumber != addonR.CurrentVersionNumber {
|
||||
addon.CurrentVersionNumber = addonR.CurrentVersionNumber
|
||||
addon.CurrentVersionID = addonR.CurrentVersionID
|
||||
addon.CurrentVersionSize = addonR.CurrentVersionSize
|
||||
addon.ToBeIndexed = true
|
||||
initializers.DB.Save(&addon)
|
||||
}
|
||||
}
|
||||
c.JSON(200, gin.H{"status": "success"})
|
||||
}
|
||||
|
||||
func GetCurrentState(c *gin.Context) {
|
||||
var addons []models.Addon
|
||||
initializers.DB.Find(&addons)
|
||||
|
||||
c.JSON(200, addons)
|
||||
}
|
||||
Reference in New Issue
Block a user