v2zgo.at/goatcounter/v2/widgets Index | Files

package widgets

import "zgo.at/goatcounter/v2/widgets"

Index

Variables

var (
	FilterInternal zint.Bitflag8 = 0b0001
)

Types

type Args

type Args struct {
	Rng         ztime.Range
	Offset      int
	PathFilter  []int64
	Daily       bool
	ForcedDaily bool
	ShowRefs    string
}

type Browsers

type Browsers struct {
	Limit  int
	Detail string
	Stats  goatcounter.HitStats
	// contains filtered or unexported fields
}

func (Browsers) Err

func (w Browsers) Err() error

func (*Browsers) GetData

func (w *Browsers) GetData(ctx context.Context, a Args) (more bool, err error)

func (Browsers) HTML

func (w Browsers) HTML() template.HTML

func (Browsers) ID

func (w Browsers) ID() int

func (Browsers) Label

func (w Browsers) Label(ctx context.Context) string

func (Browsers) Name

func (w Browsers) Name() string

func (Browsers) RenderHTML

func (w Browsers) RenderHTML(ctx context.Context, shared SharedData) (string, interface{})

func (*Browsers) SetErr

func (w *Browsers) SetErr(h error)

func (*Browsers) SetHTML

func (w *Browsers) SetHTML(h template.HTML)

func (*Browsers) SetSettings

func (w *Browsers) SetSettings(s goatcounter.WidgetSettings)

func (Browsers) Settings

func (w Browsers) Settings() goatcounter.WidgetSettings

func (Browsers) Type

func (w Browsers) Type() string

type Languages

type Languages struct {
	Limit int
	Stats goatcounter.HitStats
	// contains filtered or unexported fields
}

func (Languages) Err

func (w Languages) Err() error

func (*Languages) GetData

func (w *Languages) GetData(ctx context.Context, a Args) (more bool, err error)

func (Languages) HTML

func (w Languages) HTML() template.HTML

func (Languages) ID

func (w Languages) ID() int

func (Languages) Label

func (w Languages) Label(ctx context.Context) string

func (Languages) Name

func (w Languages) Name() string

func (Languages) RenderHTML

func (w Languages) RenderHTML(ctx context.Context, shared SharedData) (string, interface{})

func (*Languages) SetErr

func (w *Languages) SetErr(h error)

func (*Languages) SetHTML

func (w *Languages) SetHTML(h template.HTML)

func (*Languages) SetSettings

func (w *Languages) SetSettings(s goatcounter.WidgetSettings)

func (Languages) Settings

func (w Languages) Settings() goatcounter.WidgetSettings

func (Languages) Type

func (w Languages) Type() string

type List

type List []Widget

func FromSiteWidgets

func FromSiteWidgets(ctx context.Context, www goatcounter.Widgets, params zint.Bitflag8) List

func ListAllWidgets

func ListAllWidgets() List

ListAllWidgets returns a static list of all widgets that this user can add.

func (List) Get

func (l List) Get(name string) List

Get all widgets from the list by name.

func (List) GetOne

func (l List) GetOne(name string) Widget

GetOne gets the first widget in the list by name.

You usually want to use Get()! Only intended to get "internal" widgets where you know it will always have exactly one in the list.

func (List) InitialAndLazy

func (l List) InitialAndLazy() (initial List, lazy List)

Initial gets all widgets that should be loaded on the initial pageview (all internal widgets + the first one).

type Locations

type Locations struct {
	Limit  int
	Detail string
	Stats  goatcounter.HitStats
	// contains filtered or unexported fields
}

func (Locations) Err

func (w Locations) Err() error

func (*Locations) GetData

func (w *Locations) GetData(ctx context.Context, a Args) (more bool, err error)

func (Locations) HTML

func (w Locations) HTML() template.HTML

func (Locations) ID

func (w Locations) ID() int

func (Locations) Label

func (w Locations) Label(ctx context.Context) string

func (Locations) Name

func (w Locations) Name() string

func (Locations) RenderHTML

func (w Locations) RenderHTML(ctx context.Context, shared SharedData) (string, interface{})

func (*Locations) SetErr

func (w *Locations) SetErr(h error)

func (*Locations) SetHTML

func (w *Locations) SetHTML(h template.HTML)

func (*Locations) SetSettings

func (w *Locations) SetSettings(s goatcounter.WidgetSettings)

func (Locations) Settings

func (w Locations) Settings() goatcounter.WidgetSettings

func (Locations) Type

func (w Locations) Type() string

type Max

type Max struct {
	Max int
	// contains filtered or unexported fields
}

func (Max) Err

func (w Max) Err() error

func (*Max) GetData

func (w *Max) GetData(ctx context.Context, a Args) (more bool, err error)

func (Max) HTML

func (w Max) HTML() template.HTML

func (Max) ID

func (w Max) ID() int

func (Max) Label

func (w Max) Label(ctx context.Context) string

func (Max) Name

func (w Max) Name() string

func (Max) RenderHTML

func (w Max) RenderHTML(context.Context, SharedData) (string, interface{})

func (*Max) SetErr

func (w *Max) SetErr(h error)

func (*Max) SetHTML

func (w *Max) SetHTML(h template.HTML)

func (*Max) SetSettings

func (w *Max) SetSettings(s goatcounter.WidgetSettings)

func (Max) Settings

func (w Max) Settings() goatcounter.WidgetSettings

func (Max) Type

func (w Max) Type() string

type Pages

type Pages struct {
	Ref                    string
	Style                  string
	Limit, LimitRefs       int
	Display, UniqueDisplay int
	More                   bool
	Pages                  goatcounter.HitLists
	Refs                   goatcounter.HitStats
	Max                    int
	Exclude                []int64
	// contains filtered or unexported fields
}

func (Pages) Err

func (w Pages) Err() error

func (*Pages) GetData

func (w *Pages) GetData(ctx context.Context, a Args) (bool, error)

func (Pages) HTML

func (w Pages) HTML() template.HTML

func (Pages) ID

func (w Pages) ID() int

func (Pages) Label

func (w Pages) Label(ctx context.Context) string

func (Pages) Name

func (w Pages) Name() string

func (Pages) RenderHTML

func (w Pages) RenderHTML(ctx context.Context, shared SharedData) (string, interface{})

func (*Pages) SetErr

func (w *Pages) SetErr(h error)

func (*Pages) SetHTML

func (w *Pages) SetHTML(h template.HTML)

func (*Pages) SetSettings

func (w *Pages) SetSettings(s goatcounter.WidgetSettings)

func (Pages) Settings

func (w Pages) Settings() goatcounter.WidgetSettings

func (Pages) Type

func (w Pages) Type() string

type SharedData

type SharedData struct {
	Site *goatcounter.Site
	User *goatcounter.User
	Args Args

	RowsOnly          bool
	Total             int
	TotalUnique       int
	TotalUniqueUTC    int
	TotalEvents       int
	TotalEventsUnique int
}

SharedData gets passed to every widget.

type Sizes

type Sizes struct {
	Limit  int
	Detail string
	Stats  goatcounter.HitStats
	// contains filtered or unexported fields
}

func (Sizes) Err

func (w Sizes) Err() error

func (*Sizes) GetData

func (w *Sizes) GetData(ctx context.Context, a Args) (more bool, err error)

func (Sizes) HTML

func (w Sizes) HTML() template.HTML

func (Sizes) ID

func (w Sizes) ID() int

func (Sizes) Label

func (w Sizes) Label(ctx context.Context) string

func (Sizes) Name

func (w Sizes) Name() string

func (Sizes) RenderHTML

func (w Sizes) RenderHTML(ctx context.Context, shared SharedData) (string, interface{})

func (*Sizes) SetErr

func (w *Sizes) SetErr(h error)

func (*Sizes) SetHTML

func (w *Sizes) SetHTML(h template.HTML)

func (*Sizes) SetSettings

func (w *Sizes) SetSettings(s goatcounter.WidgetSettings)

func (Sizes) Settings

func (w Sizes) Settings() goatcounter.WidgetSettings

func (Sizes) Type

func (w Sizes) Type() string

type Systems

type Systems struct {
	Limit  int
	Detail string
	Stats  goatcounter.HitStats
	// contains filtered or unexported fields
}

func (Systems) Err

func (w Systems) Err() error

func (*Systems) GetData

func (w *Systems) GetData(ctx context.Context, a Args) (more bool, err error)

func (Systems) HTML

func (w Systems) HTML() template.HTML

func (Systems) ID

func (w Systems) ID() int

func (Systems) Label

func (w Systems) Label(ctx context.Context) string

func (Systems) Name

func (w Systems) Name() string

func (Systems) RenderHTML

func (w Systems) RenderHTML(ctx context.Context, shared SharedData) (string, interface{})

func (*Systems) SetErr

func (w *Systems) SetErr(h error)

func (*Systems) SetHTML

func (w *Systems) SetHTML(h template.HTML)

func (*Systems) SetSettings

func (w *Systems) SetSettings(s goatcounter.WidgetSettings)

func (Systems) Settings

func (w Systems) Settings() goatcounter.WidgetSettings

func (Systems) Type

func (w Systems) Type() string

type TopRefs

type TopRefs struct {
	Limit   int
	Ref     string
	TopRefs goatcounter.HitStats
	// contains filtered or unexported fields
}

func (TopRefs) Err

func (w TopRefs) Err() error

func (*TopRefs) GetData

func (w *TopRefs) GetData(ctx context.Context, a Args) (more bool, err error)

func (TopRefs) HTML

func (w TopRefs) HTML() template.HTML

func (TopRefs) ID

func (w TopRefs) ID() int

func (TopRefs) Label

func (w TopRefs) Label(ctx context.Context) string

func (TopRefs) Name

func (w TopRefs) Name() string

func (TopRefs) RenderHTML

func (w TopRefs) RenderHTML(ctx context.Context, shared SharedData) (string, interface{})

func (*TopRefs) SetErr

func (w *TopRefs) SetErr(h error)

func (*TopRefs) SetHTML

func (w *TopRefs) SetHTML(h template.HTML)

func (*TopRefs) SetSettings

func (w *TopRefs) SetSettings(s goatcounter.WidgetSettings)

func (TopRefs) Settings

func (w TopRefs) Settings() goatcounter.WidgetSettings

func (TopRefs) Type

func (w TopRefs) Type() string

type TotalCount

type TotalCount struct {
	goatcounter.TotalCount

	NoEvents bool
	// contains filtered or unexported fields
}

func (TotalCount) Err

func (w TotalCount) Err() error

func (*TotalCount) GetData

func (w *TotalCount) GetData(ctx context.Context, a Args) (more bool, err error)

func (TotalCount) HTML

func (w TotalCount) HTML() template.HTML

func (TotalCount) ID

func (w TotalCount) ID() int

func (TotalCount) Label

func (w TotalCount) Label(ctx context.Context) string

func (TotalCount) Name

func (w TotalCount) Name() string

func (TotalCount) RenderHTML

func (w TotalCount) RenderHTML(context.Context, SharedData) (string, interface{})

func (*TotalCount) SetErr

func (w *TotalCount) SetErr(h error)

func (*TotalCount) SetHTML

func (w *TotalCount) SetHTML(h template.HTML)

func (*TotalCount) SetSettings

func (w *TotalCount) SetSettings(s goatcounter.WidgetSettings)

func (TotalCount) Settings

func (w TotalCount) Settings() goatcounter.WidgetSettings

func (TotalCount) Type

func (w TotalCount) Type() string

type TotalPages

type TotalPages struct {
	Align, NoEvents bool
	Style           string
	Max             int
	Total           goatcounter.HitList
	// contains filtered or unexported fields
}

func (TotalPages) Err

func (w TotalPages) Err() error

func (*TotalPages) GetData

func (w *TotalPages) GetData(ctx context.Context, a Args) (more bool, err error)

func (TotalPages) HTML

func (w TotalPages) HTML() template.HTML

func (TotalPages) ID

func (w TotalPages) ID() int

func (TotalPages) Label

func (w TotalPages) Label(ctx context.Context) string

func (TotalPages) Name

func (w TotalPages) Name() string

func (TotalPages) RenderHTML

func (w TotalPages) RenderHTML(ctx context.Context, shared SharedData) (string, interface{})

func (*TotalPages) SetErr

func (w *TotalPages) SetErr(h error)

func (*TotalPages) SetHTML

func (w *TotalPages) SetHTML(h template.HTML)

func (*TotalPages) SetSettings

func (w *TotalPages) SetSettings(s goatcounter.WidgetSettings)

func (TotalPages) Settings

func (w TotalPages) Settings() goatcounter.WidgetSettings

func (TotalPages) Type

func (w TotalPages) Type() string

type Widget

type Widget interface {
	GetData(context.Context, Args) (bool, error)
	RenderHTML(context.Context, SharedData) (string, interface{})

	SetHTML(template.HTML)
	HTML() template.HTML
	SetErr(error)
	Err() error
	SetSettings(goatcounter.WidgetSettings)
	Settings() goatcounter.WidgetSettings
	ID() int

	Name() string
	Type() string // "full-width", "hchart"
	Label(context.Context) string
}

func FromSiteWidget

func FromSiteWidget(ctx context.Context, w goatcounter.Widget) Widget

func NewWidget

func NewWidget(name string, id int) Widget

Source Files

browsers.go internal.go languages.go locations.go pages.go sizes.go systems.go toprefs.go total_pages.go widgets.go

Version
v2.2.3
Published
Feb 16, 2022
Platform
linux/amd64
Imports
10 packages
Last checked
2 hours ago

Tools for package owners.