added logging

main
alex 2023-06-27 12:05:41 +02:00
parent 2187f2951e
commit ee62fe7c00
11 changed files with 568 additions and 30 deletions

View File

@ -21,7 +21,7 @@ func init() {
config.LoadConfig() config.LoadConfig()
logger.InitLogger() logger.InitLogger()
utils.ValidatorInit() utils.ValidatorInit()
logger.ReadLanguageLogMessages() logger.InitLanguageLogMessages()
systempermissions.InitSystemPermissions() systempermissions.InitSystemPermissions()
grouptasks.LoadGroups("") grouptasks.LoadGroups("")
database.InitDatabase() database.InitDatabase()

View File

@ -7,6 +7,7 @@ import (
"io/ioutil" "io/ioutil"
"janex/admin-dashboard-backend/modules/config" "janex/admin-dashboard-backend/modules/config"
"janex/admin-dashboard-backend/modules/structs" "janex/admin-dashboard-backend/modules/structs"
"janex/admin-dashboard-backend/modules/utils"
"os" "os"
"sort" "sort"
"strconv" "strconv"
@ -179,9 +180,14 @@ func GetAllLogMessagesDates(systemLogs bool) []string {
return sortedDates return sortedDates
} }
func ReadLanguageLogMessages() { func InitLanguageLogMessages() {
readLanguageLogMessages(true) readLanguageLogMessages(true)
readLanguageLogMessages(false) readLanguageLogMessages(false)
AddSystemLog(structs.LogMessage{
Id: 8,
Type: utils.LogTypeInfo,
})
} }
func readLanguageLogMessages(systemLogs bool) { func readLanguageLogMessages(systemLogs bool) {
@ -209,3 +215,14 @@ func readLanguageLogMessages(systemLogs bool) {
grouptasksLanguageLogMessages = langLogMessages grouptasksLanguageLogMessages = langLogMessages
} }
} }
func FormatMapInterface(data map[string]interface{}) string {
jsonData, err := json.Marshal(data)
if err != nil {
log.Error().Msgf("Failed to marshal map interface: %s", err.Error())
return ""
}
return string(jsonData)
}

View File

@ -2,6 +2,7 @@ package jxscanner
import ( import (
"janex/admin-dashboard-backend/modules/database" "janex/admin-dashboard-backend/modules/database"
"janex/admin-dashboard-backend/modules/logger"
"janex/admin-dashboard-backend/modules/structs" "janex/admin-dashboard-backend/modules/structs"
"janex/admin-dashboard-backend/modules/utils" "janex/admin-dashboard-backend/modules/utils"
"janex/admin-dashboard-backend/routers/router/api/v1/user" "janex/admin-dashboard-backend/routers/router/api/v1/user"
@ -52,6 +53,21 @@ func AddScanner(c *fiber.Ctx) error {
Body: scanner, Body: scanner,
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 14,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "scannerId",
Value: scanner.Id,
},
{
Type: "scannerName",
Value: scanner.Name,
},
},
})
return c.JSON(structs.ScannerResponse{Id: id, Session: session}) return c.JSON(structs.ScannerResponse{Id: id, Session: session})
} }
@ -88,6 +104,21 @@ func ScanResult(c *fiber.Ctx) error {
Body: body.ScanResult, Body: body.ScanResult,
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 15,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "scannerId",
Value: scannerId,
},
{
Type: "scanResult",
Value: body.ScanResult,
},
},
})
return c.SendStatus(fiber.StatusOK) return c.SendStatus(fiber.StatusOK)
} }
@ -109,5 +140,16 @@ func DeleteScanner(c *fiber.Ctx) error {
}, },
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 16,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "scannerId",
Value: scanner.Id,
},
},
})
return c.SendStatus(fiber.StatusOK) return c.SendStatus(fiber.StatusOK)
} }

View File

@ -21,6 +21,31 @@ func GetSystemLog(c *fiber.Ctx) error {
return c.SendStatus(fiber.StatusUnauthorized) return c.SendStatus(fiber.StatusUnauthorized)
} }
logType := "GroupTasks"
if t == "s" {
logType = "System"
}
logger.AddSystemLog(structs.LogMessage{
Id: 17,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: c.Locals("userId").(string),
},
{
Type: "logType",
Value: logType,
},
{
Type: "logDate",
Value: date,
},
},
})
if t == "g" { // grouptasks logs if t == "g" { // grouptasks logs
return c.JSON(struct { return c.JSON(struct {
Logs []structs.LogMessageResponse Logs []structs.LogMessageResponse

View File

@ -4,6 +4,7 @@ import (
"crypto/rand" "crypto/rand"
"encoding/base64" "encoding/base64"
"janex/admin-dashboard-backend/modules/database" "janex/admin-dashboard-backend/modules/database"
"janex/admin-dashboard-backend/modules/logger"
"janex/admin-dashboard-backend/modules/structs" "janex/admin-dashboard-backend/modules/structs"
"janex/admin-dashboard-backend/modules/utils" "janex/admin-dashboard-backend/modules/utils"
"janex/admin-dashboard-backend/socketclients" "janex/admin-dashboard-backend/socketclients"
@ -70,6 +71,17 @@ func UserLogin(c *fiber.Ctx) error {
UserAgent: string(c.Context().UserAgent()), UserAgent: string(c.Context().UserAgent()),
ExpiresAt: utils.GetSessionExpiresAtTime()}) ExpiresAt: utils.GetSessionExpiresAtTime()})
logger.AddSystemLog(structs.LogMessage{
Id: 19,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: user.Id,
},
},
})
return c.JSON(structs.UserLoginResponse{Session: session}) return c.JSON(structs.UserLoginResponse{Session: session})
} }
@ -80,6 +92,17 @@ func UserLogout(c *fiber.Ctx) error {
socketclients.CloseAllUserSessionConnections(session) socketclients.CloseAllUserSessionConnections(session)
logger.AddSystemLog(structs.LogMessage{
Id: 20,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: c.Locals("userId").(string),
},
},
})
return c.SendStatus(fiber.StatusCreated) return c.SendStatus(fiber.StatusCreated)
} }

View File

@ -3,6 +3,7 @@ package user
import ( import (
"fmt" "fmt"
"janex/admin-dashboard-backend/modules/database" "janex/admin-dashboard-backend/modules/database"
"janex/admin-dashboard-backend/modules/logger"
"janex/admin-dashboard-backend/modules/structs" "janex/admin-dashboard-backend/modules/structs"
"janex/admin-dashboard-backend/modules/utils" "janex/admin-dashboard-backend/modules/utils"
"janex/admin-dashboard-backend/socketclients" "janex/admin-dashboard-backend/socketclients"
@ -50,5 +51,16 @@ func UpdateAvatar(c *fiber.Ctx) error {
}, },
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 21,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: user.Id,
},
},
})
return c.SaveFile(fileHeader, fmt.Sprintf("./public/avatars/%s", fileName)) return c.SaveFile(fileHeader, fmt.Sprintf("./public/avatars/%s", fileName))
} }

View File

@ -2,7 +2,9 @@ package user
import ( import (
"janex/admin-dashboard-backend/modules/database" "janex/admin-dashboard-backend/modules/database"
"janex/admin-dashboard-backend/modules/logger"
"janex/admin-dashboard-backend/modules/structs" "janex/admin-dashboard-backend/modules/structs"
"janex/admin-dashboard-backend/modules/utils"
"janex/admin-dashboard-backend/socketclients" "janex/admin-dashboard-backend/socketclients"
"github.com/gofiber/fiber/v2" "github.com/gofiber/fiber/v2"
@ -27,6 +29,17 @@ func SignOutSession(c *fiber.Ctx) error {
socketclients.CloseAllUserSessionConnections(userSession.Id) socketclients.CloseAllUserSessionConnections(userSession.Id)
socketclients.UpdateUserSessionsForUser(userSession.UserId, userSession.Id) socketclients.UpdateUserSessionsForUser(userSession.UserId, userSession.Id)
logger.AddSystemLog(structs.LogMessage{
Id: 22,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: c.Locals("userId").(string),
},
},
})
} }
return c.SendStatus(fiber.StatusOK) return c.SendStatus(fiber.StatusOK)

View File

@ -16,7 +16,7 @@ func SetupRoutes(app *fiber.App) {
u := v1.Group("/user") u := v1.Group("/user")
u.Post("/auth/login", user.UserLogin) u.Post("/auth/login", user.UserLogin)
u.Delete("/auth/logout", user.UserLogout) u.Delete("/auth/logout", userSessionValidation, user.UserLogout)
u.Delete("/session/:idForDeletion", userSessionValidation, user.SignOutSession) u.Delete("/session/:idForDeletion", userSessionValidation, user.SignOutSession)
u.Post("/avatar", userSessionValidation, user.UpdateAvatar) u.Post("/avatar", userSessionValidation, user.UpdateAvatar)

View File

@ -4,10 +4,12 @@ import (
"encoding/base64" "encoding/base64"
"janex/admin-dashboard-backend/modules/cache" "janex/admin-dashboard-backend/modules/cache"
"janex/admin-dashboard-backend/modules/database" "janex/admin-dashboard-backend/modules/database"
"janex/admin-dashboard-backend/modules/logger"
"janex/admin-dashboard-backend/modules/structs" "janex/admin-dashboard-backend/modules/structs"
"janex/admin-dashboard-backend/modules/systempermissions" "janex/admin-dashboard-backend/modules/systempermissions"
"janex/admin-dashboard-backend/modules/utils" "janex/admin-dashboard-backend/modules/utils"
"os" "os"
"strconv"
"time" "time"
"github.com/gofiber/websocket/v2" "github.com/gofiber/websocket/v2"
@ -318,8 +320,6 @@ func UpdateUserProfile(conn *websocket.Conn, changes map[string]interface{}) {
} }
} }
log.Debug().Msgf("changes %v %v", len(changes), changes)
if len(changes) > 0 { if len(changes) > 0 {
user.UpdatedAt = time.Now() user.UpdatedAt = time.Now()
@ -329,19 +329,31 @@ func UpdateUserProfile(conn *websocket.Conn, changes map[string]interface{}) {
if changes["oldPassword"] != nil && changes["newPassword"] != nil { if changes["oldPassword"] != nil && changes["newPassword"] != nil {
// user has changed password - logout all his sessions // user has changed password - logout all his sessions
CloseAndDeleteAllUserConnections(userId) CloseAndDeleteAllUserConnections(userId)
} else {
SendMessageOnlyToSessionId(sessionId, structs.SendSocketMessage{ logger.AddSystemLog(structs.LogMessage{
Cmd: utils.SentCmdUserProfileUpdated, Id: 12,
Body: struct { Type: utils.LogTypeInfo,
UserId string Messages: []structs.LogData{
Changes map[string]interface{} {
}{ Type: "userId",
UserId: userId, Value: userId,
Changes: updates, },
}, },
}) })
return
} }
SendMessageOnlyToSessionId(sessionId, structs.SendSocketMessage{
Cmd: utils.SentCmdUserProfileUpdated,
Body: struct {
UserId string
Changes map[string]interface{}
}{
UserId: userId,
Changes: updates,
},
})
BroadcastMessageExceptUserSessionId(sessionId, structs.SendSocketMessage{ BroadcastMessageExceptUserSessionId(sessionId, structs.SendSocketMessage{
Cmd: utils.SentCmdUserProfileUpdated, Cmd: utils.SentCmdUserProfileUpdated,
Body: struct { Body: struct {
@ -352,6 +364,21 @@ func UpdateUserProfile(conn *websocket.Conn, changes map[string]interface{}) {
Changes: updates, Changes: updates,
}, },
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 13,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: userId,
},
{
Type: "changes",
Value: logger.FormatMapInterface(updates),
},
},
})
} }
} }
} }
@ -418,7 +445,7 @@ func isRoleDisplayNameAvailable(roleDisplayName string) bool {
return role.DisplayName == "" return role.DisplayName == ""
} }
func AdminAreaUpdateRole(sessionId string, body map[string]interface{}) { func AdminAreaUpdateRole(conn *websocket.Conn, body map[string]interface{}) {
if body["RoleId"] == nil { if body["RoleId"] == nil {
log.Error().Msgf("No role id specified in update role %v", body) log.Error().Msgf("No role id specified in update role %v", body)
return return
@ -486,6 +513,8 @@ func AdminAreaUpdateRole(sessionId string, body map[string]interface{}) {
database.DB.Model(&structs.Role{}).Where("id = ?", roleId).Updates(&updatedRole) database.DB.Model(&structs.Role{}).Where("id = ?", roleId).Updates(&updatedRole)
sessionId := conn.Locals("sessionId").(string)
SendMessageOnlyToSessionId(sessionId, structs.SendSocketMessage{ SendMessageOnlyToSessionId(sessionId, structs.SendSocketMessage{
Cmd: utils.SentCmdAdminAreaRoleUpdated, Cmd: utils.SentCmdAdminAreaRoleUpdated,
Body: struct { Body: struct {
@ -514,9 +543,28 @@ func AdminAreaUpdateRole(sessionId string, body map[string]interface{}) {
Cmd: utils.SentCmdRolePermissionsUpdated, Cmd: utils.SentCmdRolePermissionsUpdated,
Body: changes, Body: changes,
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 2,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: conn.Locals("userId").(string),
},
{
Type: "roleId",
Value: roleId,
},
{
Type: "changes",
Value: logger.FormatMapInterface(updates),
},
},
})
} }
func AdminAreaMoveRoleToSortingOrder(body map[string]interface{}) { func AdminAreaMoveRoleToSortingOrder(conn *websocket.Conn, body map[string]interface{}) {
roleId := body["RoleId"].(string) roleId := body["RoleId"].(string)
direction := int(body["Direction"].(float64)) direction := int(body["Direction"].(float64))
@ -533,8 +581,6 @@ func AdminAreaMoveRoleToSortingOrder(body map[string]interface{}) {
if direction == 1 { if direction == 1 {
newSortingOrder = currentSortingOrder + 1 newSortingOrder = currentSortingOrder + 1
log.Debug().Msgf("up %v %v", newSortingOrder, currentSortingOrder)
if newSortingOrder > database.GetRoleSortingOrder()-1 { if newSortingOrder > database.GetRoleSortingOrder()-1 {
return return
} }
@ -572,9 +618,28 @@ func AdminAreaMoveRoleToSortingOrder(body map[string]interface{}) {
Cmd: utils.SentCmdAdminAreaUpdateRoleSortingOrder, Cmd: utils.SentCmdAdminAreaUpdateRoleSortingOrder,
Body: body, Body: body,
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 3,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: conn.Locals("userId").(string),
},
{
Type: "roleId",
Value: role.Id,
},
{
Type: "sortingOrder",
Value: strconv.Itoa(newSortingOrder),
},
},
})
} }
func AdminAreaDeleteRole(body map[string]interface{}) { func AdminAreaDeleteRole(conn *websocket.Conn, body map[string]interface{}) {
roleId := body["RoleId"].(string) roleId := body["RoleId"].(string)
var role structs.Role var role structs.Role
@ -593,9 +658,24 @@ func AdminAreaDeleteRole(body map[string]interface{}) {
Cmd: utils.SentCmdAdminAreaRoleDeleted, Cmd: utils.SentCmdAdminAreaRoleDeleted,
Body: body, Body: body,
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 4,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: conn.Locals("userId").(string),
},
{
Type: "roleId",
Value: role.Id,
},
},
})
} }
func UpdateUserRole(userId string, roleId string) { func UpdateUserRole(conn *websocket.Conn, userId string, roleId string) {
database.DB.Model(&structs.User{}).Where("id = ?", userId).Updates(structs.User{ database.DB.Model(&structs.User{}).Where("id = ?", userId).Updates(structs.User{
RoleId: roleId, RoleId: roleId,
}) })
@ -623,6 +703,25 @@ func UpdateUserRole(userId string, roleId string) {
RoleId: roleId, RoleId: roleId,
}, },
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 5,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: conn.Locals("userId").(string),
},
{
Type: "roleId",
Value: roleId,
},
{
Type: "targetUserId",
Value: userId,
},
},
})
} }
func HasPermission(userId string, permission string) bool { func HasPermission(userId string, permission string) bool {
@ -647,7 +746,7 @@ func SendErrorMessageNoPermissions(sessionId string) {
}) })
} }
func AllUsersCreateNewUser(sessionId string, body map[string]interface{}) { func AllUsersCreateNewUser(conn *websocket.Conn, body map[string]interface{}) {
if body["Username"] == nil || if body["Username"] == nil ||
body["Email"] == nil || body["Email"] == nil ||
body["Password"] == nil || body["Password"] == nil ||
@ -666,6 +765,8 @@ func AllUsersCreateNewUser(sessionId string, body map[string]interface{}) {
return return
} }
sessionId := conn.Locals("sessionId").(string)
if !isUsernameAvailable(username) { if !isUsernameAvailable(username) {
SendMessageOnlyToSessionId(sessionId, structs.SendSocketMessage{ SendMessageOnlyToSessionId(sessionId, structs.SendSocketMessage{
Cmd: utils.SentCmdAllUsersNewUserCreated, Cmd: utils.SentCmdAllUsersNewUserCreated,
@ -731,9 +832,28 @@ func AllUsersCreateNewUser(sessionId string, body map[string]interface{}) {
Deactivated: false, Deactivated: false,
}, },
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 6,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: conn.Locals("userId").(string),
},
{
Type: "targetUserId",
Value: newUser.Id,
},
{
Type: "roleId",
Value: roleId,
},
},
})
} }
func AllUsersDeleteUser(userId string) { func AllUsersDeleteUser(conn *websocket.Conn, userId string) {
var user structs.User var user structs.User
database.DB.Select("avatar").Where("id = ?", userId).Find(&user) database.DB.Select("avatar").Where("id = ?", userId).Find(&user)
@ -767,9 +887,24 @@ func AllUsersDeleteUser(userId string) {
ScannerId: scannerInUsage.Id, ScannerId: scannerInUsage.Id,
}, },
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 7,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: conn.Locals("userId").(string),
},
{
Type: "targetUserId",
Value: userId,
},
},
})
} }
func AllUsersUserDeactivation(userId string, deactivate bool) { func AllUsersUserDeactivation(conn *websocket.Conn, userId string, deactivate bool) {
database.DB.Model(&structs.User{}).Select("deactivated").Where("id = ?", userId).Updates(structs.User{ database.DB.Model(&structs.User{}).Select("deactivated").Where("id = ?", userId).Updates(structs.User{
Deactivated: deactivate, Deactivated: deactivate,
}) })
@ -788,6 +923,25 @@ func AllUsersUserDeactivation(userId string, deactivate bool) {
Deactivated: deactivate, Deactivated: deactivate,
}, },
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 9,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: conn.Locals("userId").(string),
},
{
Type: "targetUserId",
Value: userId,
},
{
Type: "deactivated",
Value: strconv.FormatBool(deactivate),
},
},
})
} }
func ScannersUpdateScannerUsedByUserId(userId string, scannerId string) { func ScannersUpdateScannerUsedByUserId(userId string, scannerId string) {
@ -803,4 +957,32 @@ func ScannersUpdateScannerUsedByUserId(userId string, scannerId string) {
UsedByUserId: userId, UsedByUserId: userId,
}, },
}) })
if userId != "" {
logger.AddSystemLog(structs.LogMessage{
Id: 10,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "scannerId",
Value: scannerId,
},
{
Type: "userId",
Value: userId,
},
},
})
} else {
logger.AddSystemLog(structs.LogMessage{
Id: 11,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "scannerId",
Value: scannerId,
},
},
})
}
} }

View File

@ -268,6 +268,21 @@ func RunHub() {
Cmd: utils.SentCmdAdminAreaNewRoleCreated, Cmd: utils.SentCmdAdminAreaNewRoleCreated,
Body: role, Body: role,
}) })
logger.AddSystemLog(structs.LogMessage{
Id: 1,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: data.Conn.Locals("userId").(string),
},
{
Type: "roleId",
Value: role.Id,
},
},
})
break break
case utils.ReceivedCmdAdminAreaUpdateRole: case utils.ReceivedCmdAdminAreaUpdateRole:
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAdminAreaUpdateRole) { if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAdminAreaUpdateRole) {
@ -275,7 +290,7 @@ func RunHub() {
break break
} }
socketclients.AdminAreaUpdateRole(data.Conn.Locals("sessionId").(string), receivedMessage.Body) socketclients.AdminAreaUpdateRole(data.Conn, receivedMessage.Body)
break break
case utils.ReceivedCmdAdminAreaUpdateRoleSortingOrder: case utils.ReceivedCmdAdminAreaUpdateRoleSortingOrder:
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAdminAreaMoveRoleUpDown) { if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAdminAreaMoveRoleUpDown) {
@ -283,7 +298,7 @@ func RunHub() {
break break
} }
socketclients.AdminAreaMoveRoleToSortingOrder(receivedMessage.Body) socketclients.AdminAreaMoveRoleToSortingOrder(data.Conn, receivedMessage.Body)
break break
case utils.ReceivedCmdAdminAreaDeleteRole: case utils.ReceivedCmdAdminAreaDeleteRole:
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAdminAreaDeleteRole) { if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAdminAreaDeleteRole) {
@ -291,7 +306,7 @@ func RunHub() {
break break
} }
socketclients.AdminAreaDeleteRole(receivedMessage.Body) socketclients.AdminAreaDeleteRole(data.Conn, receivedMessage.Body)
break break
case utils.ReceivedCmdAllUsersUpdateUserRole: case utils.ReceivedCmdAllUsersUpdateUserRole:
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAllUsersActionChangeRole) { if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAllUsersActionChangeRole) {
@ -299,7 +314,7 @@ func RunHub() {
break break
} }
socketclients.UpdateUserRole(receivedMessage.Body["UserId"].(string), receivedMessage.Body["RoleId"].(string)) socketclients.UpdateUserRole(data.Conn, receivedMessage.Body["UserId"].(string), receivedMessage.Body["RoleId"].(string))
break break
case utils.ReceivedCmdAllUsersCreateNewUser: case utils.ReceivedCmdAllUsersCreateNewUser:
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAllUsersCreateNewUser) { if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAllUsersCreateNewUser) {
@ -307,7 +322,7 @@ func RunHub() {
break break
} }
socketclients.AllUsersCreateNewUser(data.Conn.Locals("sessionId").(string), receivedMessage.Body) socketclients.AllUsersCreateNewUser(data.Conn, receivedMessage.Body)
break break
case utils.ReceivedCmdAllUsersDeleteUser: case utils.ReceivedCmdAllUsersDeleteUser:
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAllUsersActionDeleteUser) { if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAllUsersActionDeleteUser) {
@ -315,7 +330,7 @@ func RunHub() {
break break
} }
socketclients.AllUsersDeleteUser(receivedMessage.Body["UserId"].(string)) socketclients.AllUsersDeleteUser(data.Conn, receivedMessage.Body["UserId"].(string))
break break
case utils.ReceivedCmdAllUsersUserDeactivation: case utils.ReceivedCmdAllUsersUserDeactivation:
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAllUsersActionUserDeactivation) { if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionAllUsersActionUserDeactivation) {
@ -323,7 +338,7 @@ func RunHub() {
break break
} }
socketclients.AllUsersUserDeactivation(receivedMessage.Body["UserId"].(string), receivedMessage.Body["Deactivation"].(bool)) socketclients.AllUsersUserDeactivation(data.Conn, receivedMessage.Body["UserId"].(string), receivedMessage.Body["Deactivation"].(bool))
break break
case utils.ReceivedCmdScannersUseScanners: case utils.ReceivedCmdScannersUseScanners:
if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionScannerUseScanners) { if !socketclients.HasPermission(data.Conn.Locals("userId").(string), utils.PermissionScannerUseScanners) {
@ -360,6 +375,17 @@ func RunHub() {
socketclients.UpdateUserSessionsForUser(userId, sessionId) socketclients.UpdateUserSessionsForUser(userId, sessionId)
socketclients.UpdateConnectedUsers(userId) socketclients.UpdateConnectedUsers(userId)
logger.AddSystemLog(structs.LogMessage{
Id: 18,
Type: utils.LogTypeInfo,
Messages: []structs.LogData{
{
Type: "userId",
Value: userId,
},
},
})
} }
} }
} }

View File

@ -1,11 +1,209 @@
[ [
{ {
"id": 0, "id": 0,
"languages": [
{
"lang": "en",
"message": "%userId% has come online"
}
]
},
{
"id": 1,
"languages": [
{
"lang": "en",
"message": "%userId% has created the role %roleId%"
}
]
},
{
"id": 2,
"languages": [
{
"lang": "en",
"message": "%userId% has updated the role %roleId% with the following changes: %changes%"
}
]
},
{
"id": 3,
"languages": [
{
"lang": "en",
"message": "%userId% has changed the sorting order of role %roleId% to %sortingOrder%"
}
]
},
{
"id": 4,
"languages": [
{
"lang": "en",
"message": "%userId% has deleted the role %roleId%"
}
]
},
{
"id": 5,
"languages": [
{
"lang": "en",
"message": "%userId% has assigned the role %roleId% to %targetUserId%"
}
]
},
{
"id": 6,
"languages": [
{
"lang": "en",
"message": "%userId% has created the user %targetUserId% with the assigned role %roleId%"
}
]
},
{
"id": 7,
"languages": [
{
"lang": "en",
"message": "%userId% has deleted the user %targetUserId%"
}
]
},
{
"id": 8,
"languages": [
{
"lang": "en",
"message": "SERVER has started"
}
]
},
{
"id": 9,
"languages": [
{
"lang": "en",
"message": "%userId% has changed the deactivation status of %targetUserId% to %deactivated%"
}
]
},
{
"id": 10,
"languages": [
{
"lang": "en",
"message": "Scanner %scannerId% is now used by %userId%"
}
]
},
{
"id": 11,
"languages": [
{
"lang": "en",
"message": "Scanner %scannerId% is not longer used"
}
]
},
{
"id": 12,
"languages": [
{
"lang": "en",
"message": "%userId% has changed his password"
}
]
},
{
"id": 13,
"languages": [
{
"lang": "en",
"message": "%userId% has updated his account with the following changes: %changes%"
}
]
},
{
"id": 14,
"languages": [
{
"lang": "en",
"message": "Scanner %scannerId% %scannerName% was registered"
}
]
},
{
"id": 15,
"languages": [
{
"lang": "en",
"message": "Scanner %scannerId% has scanned %scanResult%"
}
]
},
{
"id": 16,
"languages": [
{
"lang": "en",
"message": "Scanner %scannerId% was deleted"
}
]
},
{
"id": 17,
"languages": [
{
"lang": "en",
"message": "%userId% has viewed %logType% logs of the date %logDate%"
}
]
},
{
"id": 18,
"languages": [
{
"lang": "en",
"message": "%userId% has gone offline"
}
]
},
{
"id": 19,
"languages": [ "languages": [
{ {
"lang": "en", "lang": "en",
"message": "%userId% has logged in" "message": "%userId% has logged in"
} }
] ]
},
{
"id": 20,
"languages": [
{
"lang": "en",
"message": "%userId% has logged out"
}
]
},
{
"id": 21,
"languages": [
{
"lang": "en",
"message": "%userId% has changed his avatar"
}
]
},
{
"id": 22,
"languages": [
{
"lang": "en",
"message": "%userId% has logged out one of his account sessions"
}
]
} }
] ]