diff --git a/models/secret.go b/models/secret.go index 51ba1b6..0cf104e 100644 --- a/models/secret.go +++ b/models/secret.go @@ -96,33 +96,34 @@ func SecretsGetAllowed(s *Secret, userId int) ([]UserSecret, error) { query += " AND secrets.UserName LIKE ? " queryArgs = append(queryArgs, s.UserName) } + /* + // Query for user access + query += ` + UNION + SELECT users.UserId, users.GroupId, permissions.ReadOnly, safes.SafeName, secrets.* + FROM users + INNER JOIN permissions ON users.UserId = permissions.UserId + INNER JOIN safes on permissions.SafeId = safes.SafeId + INNER JOIN secrets on secrets.SafeId = safes.SafeId + WHERE users.UserId = ?` + queryArgs = append(queryArgs, userId) - // Query for user access - query += ` - UNION - SELECT users.UserId, users.GroupId, permissions.ReadOnly, safes.SafeName, secrets.* - FROM users - INNER JOIN permissions ON users.UserId = permissions.UserId - INNER JOIN safes on permissions.SafeId = safes.SafeId - INNER JOIN secrets on secrets.SafeId = safes.SafeId - WHERE users.UserId = ?` - queryArgs = append(queryArgs, userId) + // Add any other arguments to the query if they were specified + if s.DeviceName != "" { + query += " AND DeviceName LIKE ? " + queryArgs = append(queryArgs, s.DeviceName) + } - // Add any other arguments to the query if they were specified - if s.DeviceName != "" { - query += " AND DeviceName LIKE ? " - queryArgs = append(queryArgs, s.DeviceName) - } + if s.DeviceCategory != "" { + query += " AND DeviceCategory LIKE ? " + queryArgs = append(queryArgs, s.DeviceCategory) + } - if s.DeviceCategory != "" { - query += " AND DeviceCategory LIKE ? " - queryArgs = append(queryArgs, s.DeviceCategory) - } - - if s.UserName != "" { - query += " AND secrets.UserName LIKE ? " - queryArgs = append(queryArgs, s.UserName) - } + if s.UserName != "" { + query += " AND secrets.UserName LIKE ? " + queryArgs = append(queryArgs, s.UserName) + } + */ // Execute the query log.Printf("SecretsGetAllowedForGroup query string : '%s'\n%+v\n", query, queryArgs) @@ -140,6 +141,7 @@ func SecretsGetAllowed(s *Secret, userId int) ([]UserSecret, error) { log.Printf("SecretsGetAllowedForGroup error parsing sql record : '%s'\n", err) return secretResults, err } + log.Printf("r: %v\n", r) /* // Decrypt the secret