Help us shape the future of Go! Take the 2026 Go Developer Survey

tags

package
v0.4.4 Latest Latest
Warning

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

Go to latest
Published: Mar 26, 2025 License: MIT Imports: 7 Imported by: 0

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