tags

package module
v0.0.0-...-94ec48a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 16, 2025 License: MIT Imports: 7 Imported by: 3

Documentation

Index

Constants

View Source
const (
	// DefaultTagIcon as default icon to use for tags
	DefaultTagIcon string = "fas fa-tag"
	// DefaultAutoTagUser as default user ID to be used for auto tagging
	DefaultAutoTagUser uint = 0
	// DefaultAutocreated as default username and description for tags
	DefaultAutocreated = "Autocreated"
	// TagTypeEnv as tag type for environment name
	TagTypeEnv uint = 0
	// TagTypeUUID as tag type for node UUID
	TagTypeUUID uint = 1
	// TagTypePlatform as tag type for node platform
	TagTypePlatform uint = 2
	// TagTypeLocalname as tag type for node localname
	TagTypeLocalname uint = 3
	// TagTypeCustom as tag type for custom tags
	TagTypeCustom uint = 4
	// TagTypeUnknown as tag type for unknown tags
	TagTypeUnknown uint = 5
	// ActionAdd as action to add a tag
	ActionAdd string = "add"
	// ActionEdit as action to edit a tag
	ActionEdit string = "edit"
	// ActionRemove as action to remove a tag
	ActionRemove string = "remove"
)
View Source
const (
	// TagTypeEnvironmentStr is the tag type for environment
	TagTypeEnvironmentStr = "Environment"
	// TagTypeEnvStr is the tag type for shortened environment
	TagTypeEnvStr = "Env"
	// TagTypeUUIDStr is the tag type for UUID
	TagTypeUUIDStr = "UUID"
	// TagTypePlatformStr is the tag type for platform
	TagTypePlatformStr = "Platform"
	// TagTypeLocalnameStr is the tag type for localname
	TagTypeLocalnameStr = "Localname"
	// TagTypeCustomStr is the tag type for custom
	TagTypeCustomStr = "Custom"
	// TagTypeUnknownStr is the tag type for unknown
	TagTypeUnknownStr = "Unknown"
)

Variables

This section is empty.

Functions

func GetHex

func GetHex(num int) string

Helper to get the hex from an int

func RandomColor

func RandomColor() string

Helper to generate a random color in hex for HTML

func TagTypeDecorator

func TagTypeDecorator(tagType uint) string

Helper to convert the tag type to a string

func TagTypeParser

func TagTypeParser(tagType string) uint

Helper to convert the tag type string to a uint

Types

type AdminTag

type AdminTag struct {
	gorm.Model
	Name          string `gorm:"index"`
	Description   string
	Color         string
	Icon          string
	CreatedBy     string
	AutoTag       bool
	EnvironmentID uint
	TagType       uint
}

AdminTag to hold all tags

type AdminTagForNode

type AdminTagForNode struct {
	Tag    AdminTag
	Tagged bool
}

AdminTagForNode to check if this tag is used for an specific node

type TagManager

type TagManager struct {
	DB *gorm.DB
}

TagManager have all tags

func CreateTagManager

func CreateTagManager(backend *gorm.DB) *TagManager

CreateTagManager to initialize the tags struct and tables

func (*TagManager) All

func (m *TagManager) All() ([]AdminTag, error)

All get all tags

func (*TagManager) AutoTagNode

func (m *TagManager) AutoTagNode(env string, node nodes.OsqueryNode, user string) error

AutoTagNode to automatically tag a node based on multiple fields

func (*TagManager) ChangeColor

func (m *TagManager) ChangeColor(tag *AdminTag, color string) error

ChangeColor to update color for a tag

func (*TagManager) ChangeDescription

func (m *TagManager) ChangeDescription(tag *AdminTag, desc string) error

ChangeDescription to update description for a tag

func (*TagManager) ChangeEnvironment

func (m *TagManager) ChangeEnvironment(tag *AdminTag, envID uint) error

ChangeEnvironment to update environment for a tag

func (*TagManager) ChangeGetColor

func (m *TagManager) ChangeGetColor(name, color string, envID uint) error

ChangeGetColor to update color for a tag

func (*TagManager) ChangeGetDescription

func (m *TagManager) ChangeGetDescription(name, description string, envID uint) error

ChangeGetDescription to update description for a tag

func (*TagManager) ChangeGetEnvironment

func (m *TagManager) ChangeGetEnvironment(name string, envID uint) error

ChangeGetEnvironment to update environment for a tag

func (*TagManager) ChangeGetIcon

func (m *TagManager) ChangeGetIcon(name, icon string, envID uint) error

ChangeGetIcon to update icon for a tag

func (*TagManager) ChangeGetTagType

func (m *TagManager) ChangeGetTagType(name string, tagType uint, envID uint) error

ChangeGetTagType to update tag type for a tag

func (*TagManager) ChangeIcon

func (m *TagManager) ChangeIcon(tag *AdminTag, icon string) error

ChangeIcon to update icon for a tag

func (*TagManager) ChangeTagType

func (m *TagManager) ChangeTagType(tag *AdminTag, tagType uint) error

ChangeTagType to update tag type for a tag

func (*TagManager) Create

func (m *TagManager) Create(tag *AdminTag) error

Create new tag

func (*TagManager) Delete

func (m *TagManager) Delete(tag *AdminTag) error

Delete tag by name

func (*TagManager) DeleteGet

func (m *TagManager) DeleteGet(name string, envID uint) error

DeleteGet tag by name

func (*TagManager) Exists

func (m *TagManager) Exists(name string) bool

Exists checks if tag exists

func (*TagManager) ExistsByEnv

func (m *TagManager) ExistsByEnv(name string, envID uint) bool

ExistsByEnv checks if tag exists by environment

func (*TagManager) ExistsGet

func (m *TagManager) ExistsGet(name string, envID uint) (bool, AdminTag)

ExistsGet checks if tag exists and returns the tag

func (*TagManager) Get

func (m *TagManager) Get(name string, envID uint) (AdminTag, error)

Get tag by name

func (*TagManager) GetByEnv

func (m *TagManager) GetByEnv(envID uint) ([]AdminTag, error)

All get all tags by environment

func (*TagManager) GetNodeTags

func (m *TagManager) GetNodeTags(tagged []AdminTag) ([]AdminTagForNode, error)

GetNodeTags to decorate tags for a given node

func (*TagManager) GetTags

func (m *TagManager) GetTags(node nodes.OsqueryNode) ([]AdminTag, error)

GetTags to retrieve the tags of a given node

func (*TagManager) IsTagged

func (m *TagManager) IsTagged(name string, node nodes.OsqueryNode) bool

IsTagged to check if a node is already tagged

func (*TagManager) IsTaggedID

func (m *TagManager) IsTaggedID(name string, nodeID uint) bool

IsTaggedID to check if a node is already tagged by node ID

func (*TagManager) New

func (m *TagManager) New(name, description, color, icon, user string, envID uint, auto bool, tagType uint) (AdminTag, error)

New empty tag

func (*TagManager) NewTag

func (m *TagManager) NewTag(name, description, color, icon, user string, envID uint, auto bool, tagType uint) error

NewTag to create a tag and creates it without returning it

func (*TagManager) TagNode

func (m *TagManager) TagNode(name string, node nodes.OsqueryNode, user string, auto bool, tagType uint) error

TagNode to tag a node TODO use the correct user_id

func (*TagManager) TagNodeMulti

func (m *TagManager) TagNodeMulti(tags []string, node nodes.OsqueryNode, user string, auto bool) error

TagNodeMulti to tag a node with multiple tags TODO use the correct user_id

func (*TagManager) UntagNode

func (m *TagManager) UntagNode(name string, node nodes.OsqueryNode) error

UntagNode to untag a node

type TaggedNode

type TaggedNode struct {
	gorm.Model
	Tag        string
	AdminTagID uint
	NodeID     uint
	AutoTag    bool
	TaggedBy   string
	UserID     uint
}

TaggedNode to hold tagged nodes

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL