libwekan

package module
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2023 License: MIT Imports: 12 Imported by: 3

README

libwekan

libwekan est un package golang embarquant un sous-ensemble de fonctions destinées à traiter les intéractions avec Wekan dans les différentes briques logicielles de Signaux-Faibles.

lancer les tests

go test

lancer les tests d'intégration

go test -tags integration

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Action added in v0.0.2

type Action struct {
	ID          ActionID  `bson:"_id" json:"_id,omitempty"`
	ActionType  string    `bson:"actionType" json:"actionType,omitempty"`
	Username    Username  `bson:"username" json:"username,omitempty"`
	BoardID     BoardID   `bson:"boardId" json:"boardId,omitempty"`
	Description string    `bson:"desc" json:"desc,omitempty"`
	CreatedAt   time.Time `bson:"createdAt" json:"createdAt,omitempty"`
	ModifiedAt  time.Time `bson:"modifiedAt" json:"modifiedAt,omitempty"`
}

type ActionID added in v0.0.2

type ActionID string

type ActionNotFoundError added in v0.0.2

type ActionNotFoundError struct {
	// contains filtered or unexported fields
}

func (ActionNotFoundError) Error added in v0.0.2

func (e ActionNotFoundError) Error() string

type Activity added in v0.0.2

type Activity struct {
	ID             ActivityID   `bson:"_id" json:"_id,omitempty"`
	UserID         UserID       `bson:"userId,omitempty" json:"userId,omitempty"`
	Username       Username     `bson:"username,omitempty" json:"username,omitempty"`
	Type           string       `bson:"type,omitempty" json:"type,omitempty"`
	AssigneeID     UserID       `bson:"assigneeId,omitempty" json:"assigneeId,omitempty"`
	MemberID       UserID       `bson:"memberId,omitempty" json:"memberId,omitempty"`
	ActivityType   string       `bson:"activityType,omitempty" json:"activityType,omitempty"`
	ActivityTypeID string       `bson:"activityTypeId,omitempty" json:"activityTypeId,omitempty"`
	BoardID        BoardID      `bson:"boardId,omitempty" json:"boardId,omitempty"`
	BoardLabelID   BoardLabelID `bson:"labelId,omitEmpty" json:"labelId,omitempty"`
	CardTitle      string       `bson:"cardTitle,omitempty" json:"cardTitle,omitempty"`
	ListID         ListID       `bson:"listId,omitempty" json:"listId,omitempty"`
	OldListID      ListID       `bson:"oldListId,omitempty" json:"oldListId,omitempty"`
	ListName       string       `bson:"listName,omitempty" json:"listName,omitempty"`
	CardID         CardID       `bson:"cardId,omitempty" json:"cardId,omitempty"`
	CommentID      CommentID    `bson:"commentId, omitempty"`
	SwimlaneID     SwimlaneID   `bson:"swimlaneId,omitempty" json:"swimlaneId,omitempty"`
	OldSwimlaneID  SwimlaneID   `bson:"oldSwimlaneId,omitempty" json:"oldSwimlaneId,omitempty"`
	SwimlaneName   string       `bson:"swimlaneName,omitempty" json:"swimlaneName,omitempty"`
	CreatedAt      time.Time    `bson:"createdAt" json:"createdAt,omitempty"`
	ModifiedAt     time.Time    `bson:"modifiedAt" json:"modifiedAt,omitempty"`
}

type ActivityID added in v0.0.2

type ActivityID string

func (ActivityID) Check added in v0.0.6

func (activityID ActivityID) Check(ctx context.Context, wekan *Wekan) error

func (ActivityID) GetDocument added in v0.0.6

func (activityID ActivityID) GetDocument(ctx context.Context, wekan *Wekan) (Activity, error)

type ActivityNotFoundError added in v0.5.0

type ActivityNotFoundError struct {
	// contains filtered or unexported fields
}

func (ActivityNotFoundError) Error added in v0.5.0

func (e ActivityNotFoundError) Error() string

type AlreadySetActivityError added in v0.0.2

type AlreadySetActivityError struct {
	// contains filtered or unexported fields
}

func (AlreadySetActivityError) Error added in v0.0.2

func (e AlreadySetActivityError) Error() string

type Board

type Board struct {
	ID                         BoardID       `bson:"_id" json:"_id,omitempty"`
	Title                      BoardTitle    `bson:"title" json:"title,omitempty"`
	Permission                 string        `bson:"permission" json:"permission,omitempty"`
	Sort                       float64       `bson:"sort" json:"sort,omitempty"`
	Archived                   bool          `bson:"archived" json:"archived,omitempty"`
	CreatedAt                  time.Time     `bson:"createdAt" json:"createdAt,omitempty"`
	ModifiedAt                 time.Time     `bson:"modifiedAt" json:"modifiedAt,omitempty"`
	Stars                      int           `bson:"stars" json:"stars,omitempty"`
	Labels                     []BoardLabel  `bson:"labels" json:"labels,omitempty"`
	Members                    []BoardMember `bson:"members" json:"members,omitempty"`
	Color                      string        `bson:"color" json:"color,omitempty"`
	SubtasksDefaultBoardId     *string       `bson:"subtasksDefaultBoardId" json:"subtasksDefaultBoardId,omitempty"`
	SubtasksDefaultListId      *string       `bson:"subtasksDefaultListId" json:"subtasksDefaultListId,omitempty"`
	DateSettingsDefaultBoardId *string       `bson:"dateSettingsDefaultBoardId" json:"dateSettingsDefaultBoardId,omitempty"`
	DateSettingsDefaultListId  *string       `bson:"dateSettingsDefaultListId" json:"dateSettingsDefaultListId,omitempty"`
	AllowsSubtasks             bool          `bson:"allowsSubtasks" json:"allowsSubtasks,omitempty"`
	AllowsAttachments          bool          `json:"allowsAttachments"`
	AllowsChecklists           bool          `json:"allowsChecklists"`
	AllowsComments             bool          `json:"allowsComments"`
	AllowsDescriptionTitle     bool          `json:"allowsDescriptionTitle"`
	AllowsDescriptionText      bool          `json:"allowsDescriptionText"`
	AllowsActivities           bool          `json:"allowsActivities"`
	AllowsLabels               bool          `json:"allowsLabels"`
	AllowsAssignee             bool          `json:"allowsAssignee"`
	AllowsMembers              bool          `json:"allowsMembers"`
	AllowsRequestedBy          bool          `json:"allowsRequestedBy"`
	AllowsAssignedBy           bool          `json:"allowsAssignedBy"`
	AllowsReceivedDate         bool          `json:"allowsReceivedDate"`
	AllowsStartDate            bool          `json:"allowsStartDate"`
	AllowsEndDate              bool          `json:"allowsEndDate"`
	AllowsDueDate              bool          `json:"allowsDueDate"`
	PresentParentTask          string        `bson:"presentParentTask" json:"presentParentTask,omitempty"`
	IsOvertime                 bool          `bson:"isOvertime" json:"isOvertime,omitempty"`
	Type                       string        `bson:"type" json:"type,omitempty"`
	Slug                       BoardSlug     `bson:"slug" json:"slug,omitempty"`
	Watchers                   []interface{} `bson:"watchers" json:"watchers,omitempty"`
	AllowsCardNumber           bool          `bson:"allowsCardNumber" json:"allowsCardNumber,omitempty"`
	AllowsShowLists            bool          `bson:"allowsShowLists" json:"allowsShowLists,omitempty"`
}

Board représente un objet de la collection `boards`

func BuildBoard added in v0.0.6

func BuildBoard(title string, slug string, boardType string) Board

func (Board) BuildActionAddMember added in v0.1.2

func (board Board) BuildActionAddMember(username Username) Action

func (Board) BuildActionRemoveMember added in v0.1.2

func (board Board) BuildActionRemoveMember(username Username) Action

func (Board) BuildRuleAddMember added in v0.1.2

func (board Board) BuildRuleAddMember(user User, labelName BoardLabelName) Rule

func (Board) BuildRuleRemoveMember added in v0.1.2

func (board Board) BuildRuleRemoveMember(user User, labelName BoardLabelName) Rule

func (Board) BuildTriggerAddedLabel added in v0.1.2

func (board Board) BuildTriggerAddedLabel(label BoardLabel) Trigger

func (Board) BuildTriggerRemovedLabel added in v0.1.2

func (board Board) BuildTriggerRemovedLabel(label BoardLabel) Trigger

func (Board) GetLabelByID added in v0.0.2

func (board Board) GetLabelByID(id BoardLabelID) BoardLabel

GetLabelByID retourne l'objet BoardLabel correspondant à l'ID, vide si absent

func (Board) GetLabelByName added in v0.0.2

func (board Board) GetLabelByName(name BoardLabelName) BoardLabel

GetLabelByName retourne l'objet BoardLabel correspondant au nom, vide si absent

func (Board) GetMember added in v0.0.6

func (board Board) GetMember(userID UserID) BoardMember

GetMember teste si l'utilisateur fait partie de l'array members

func (Board) HasAllLabelNames added in v0.2.0

func (board Board) HasAllLabelNames(names []BoardLabelName) bool

func (Board) HasAnyLabelNames added in v0.2.0

func (board Board) HasAnyLabelNames(names []BoardLabelName) bool

func (Board) HasLabelName added in v0.2.0

func (board Board) HasLabelName(name BoardLabelName) bool

HasLabelName est vrai lorsque la board dispose du labelName passé en paramètre

func (Board) UserIsActiveMember added in v0.0.2

func (board Board) UserIsActiveMember(user User) bool

UserIsActiveMember teste si l'utilisateur est activé sur la board, s'il est absent il est alors considéré comme inactif

func (Board) UserIsMember

func (board Board) UserIsMember(user User) bool

UserIsMember teste si l'utilisateur est membre de la board, activé ou non

type BoardID added in v0.0.2

type BoardID string

func (BoardID) Check added in v0.0.6

func (boardID BoardID) Check(ctx context.Context, wekan *Wekan) error

func (BoardID) GetDocument added in v0.0.6

func (boardID BoardID) GetDocument(ctx context.Context, wekan *Wekan) (Board, error)

type BoardLabel

type BoardLabel struct {
	ID    BoardLabelID   `bson:"_id" json:"_id,omitempty"`
	Name  BoardLabelName `bson:"name" json:"name,omitempty"`
	Color string         `bson:"color" json:"color,omitempty"`
}

func NewBoardLabel added in v0.0.2

func NewBoardLabel(name string, color string) BoardLabel

NewBoardLabel retourne un objet BoardLabel

type BoardLabelAlreadyExistsError added in v0.0.2

type BoardLabelAlreadyExistsError struct {
	// contains filtered or unexported fields
}

func (BoardLabelAlreadyExistsError) Error added in v0.0.2

type BoardLabelID added in v0.0.2

type BoardLabelID string

type BoardLabelName added in v0.0.2

type BoardLabelName string

type BoardLabelNotFoundError added in v0.0.6

type BoardLabelNotFoundError struct {
	// contains filtered or unexported fields
}

func (BoardLabelNotFoundError) Error added in v0.0.6

func (e BoardLabelNotFoundError) Error() string

type BoardMember

type BoardMember struct {
	UserID        UserID `bson:"userId" json:"userId,omitempty"`
	IsAdmin       bool   `bson:"isAdmin" json:"isAdmin,omitempty"`
	IsActive      bool   `bson:"isActive" json:"isActive,omitempty"`
	IsNoComments  bool   `bson:"isNoComments" json:"isNoComments,omitempty"`
	IsCommentOnly bool   `bson:"isCommentOnly" json:"isCommentOnly,omitempty"`
	IsWorker      bool   `bson:"isWorker" json:"isWorker,omitempty"`
}

type BoardNotFoundError added in v0.0.6

type BoardNotFoundError struct {
	// contains filtered or unexported fields
}

func (BoardNotFoundError) Error added in v0.0.6

func (e BoardNotFoundError) Error() string

func (BoardNotFoundError) Unwrap added in v0.1.0

func (e BoardNotFoundError) Unwrap() error

type BoardSlug added in v0.0.2

type BoardSlug string

type BoardTitle added in v0.0.2

type BoardTitle string

type Card added in v0.0.2

type Card struct {
	ID               CardID            `bson:"_id" json:"_id,omitempty"`
	Title            string            `bson:"title" json:"title,omitempty"`
	Members          []UserID          `bson:"members" json:"members,omitempty"`
	LabelIDs         []BoardLabelID    `bson:"labelIds" json:"labelIds,omitempty"`
	CustomFields     []CardCustomField `bson:"customFields" json:"customFields,omitempty"`
	ListID           ListID            `bson:"listId" json:"listId,omitempty"`
	BoardID          BoardID           `bson:"boardId" json:"boardId,omitempty"`
	Sort             float64           `bson:"sort" json:"sort,omitempty"`
	SwimlaneID       SwimlaneID        `bson:"swimlaneId" json:"swimlaneId,omitempty"`
	Type             string            `bson:"type" json:"type,omitempty"`
	Archived         bool              `bson:"archived" json:"archived,omitempty"`
	ParentID         CardID            `bson:"parentId,omitempty" json:"parentId,omitempty"`
	CoverID          string            `bson:"coverId" json:"coverId,omitempty"`
	CreatedAt        time.Time         `bson:"createdAt" json:"createdAt,omitempty"`
	ModifiedAt       time.Time         `bson:"modifiedAt" json:"modifiedAt,omitempty"`
	DateLastActivity time.Time         `bson:"dateLastActivity" json:"dateLastActivity,omitempty"`
	Description      string            `bson:"description" json:"description,omitempty"`
	RequestedBy      UserID            `bson:"requestedBy" json:"requestedBy,omitempty"`
	AssignedBy       UserID            `bson:"assignedBy" json:"assignedBy,omitempty"`
	Assignees        []UserID          `bson:"assignees" json:"assignees,omitempty"`
	SpentTime        int               `bson:"spentTime" json:"spentTime,omitempty"`
	IsOverTime       bool              `bson:"isOvertime" json:"isOvertime,omitempty"`
	UserID           UserID            `bson:"userId" json:"userId,omitempty"`
	SubtaskSort      int               `bson:"subtaskSort" json:"subtaskSort,omitempty"`
	LinkedID         CardID            `bson:"linkedId" json:"linkedId,omitempty"`
	Vote             Vote              `bson:"vote" json:"vote,omitempty"`
	Poker            Poker             `bson:"poker" json:"poker,omitempty"`
	TargetIDGantt    []string          `bson:"targetId_gantt" json:"targetId_gantt,omitempty"`
	LinkTypeGantt    []string          `bson:"linkType_gantt" json:"linkType_gantt,omitempty"`
	LinkIDGantt      []string          `bson:"linkId_gantt" json:"linkId_gantt,omitempty"`
	StartAt          time.Time         `bson:"startAt" json:"startAt,omitempty"`
	EndAt            *time.Time        `bson:"endAt" json:"endAt,omitempty"`
}

func BuildCard added in v0.0.2

func BuildCard(boardID BoardID, listID ListID, swimlaneID SwimlaneID, title string, description string, userID UserID) Card

func (*Card) AddMember added in v0.0.2

func (card *Card) AddMember(memberID UserID)

type CardCustomField added in v0.2.0

type CardCustomField struct {
	ID    CardCustomFieldID `bson:"_id" json:"_id,omitempty"`
	Value string            `bson:"value" json:"value,omitempty"`
}

type CardCustomFieldID added in v0.2.0

type CardCustomFieldID string

type CardID added in v0.0.2

type CardID string

func (CardID) Check added in v0.0.6

func (cardID CardID) Check(ctx context.Context, wekan *Wekan) error

func (CardID) GetDocument added in v0.0.6

func (cardID CardID) GetDocument(ctx context.Context, wekan *Wekan) (Card, error)

type CardNotFoundError added in v0.0.2

type CardNotFoundError struct {
	// contains filtered or unexported fields
}

func (CardNotFoundError) Error added in v0.0.2

func (e CardNotFoundError) Error() string

type CardWithComments added in v0.2.0

type CardWithComments struct {
	Card     Card      `bson:"card" json:"card,omitempty"`
	Comments []Comment `bson:"comments" json:"comments,omitempty"`
}

type Comment added in v0.2.0

type Comment struct {
	ID         CommentID `bson:"_id" json:"_id,omitempty"`
	BoardID    BoardID   `bson:"boardId" json:"boardId,omitempty"`
	CardID     CardID    `bson:"cardId" json:"cardId,omitempty"`
	CreatedAt  time.Time `bson:"createdAt" json:"createdAt,omitempty"`
	ModifiedAt time.Time `bson:"modifiedAt" json:"modifiedAt,omitempty"`
	Text       string    `bson:"text" json:"text,omitempty"`
	UserID     UserID    `bson:"userId" json:"userId,omitempty"`
}

type CommentID added in v0.0.2

type CommentID string

type Config added in v0.2.0

type Config struct {
	Boards map[BoardID]ConfigBoard `bson:"boards" json:"boards,omitempty"`
	Users  map[UserID]User         `bson:"users" json:"users,omitempty"`
}

func (*Config) Copy added in v0.2.0

func (config *Config) Copy() Config

func (*Config) CustomFieldWithName added in v0.3.0

func (config *Config) CustomFieldWithName(card Card, name string) string

func (*Config) GetCardCustomFieldByName added in v0.2.0

func (config *Config) GetCardCustomFieldByName(card Card, name string) (string, bool)

func (*Config) GetUserByUsername added in v0.2.0

func (config *Config) GetUserByUsername(username Username) (User, bool)

type ConfigBoard added in v0.2.0

type ConfigBoard struct {
	Board        Board                   `bson:"board" json:"board,omitempty"`
	Swimlanes    map[SwimlaneID]Swimlane `bson:"swimlanes" json:"swimlanes,omitempty"`
	Lists        map[ListID]List         `bson:"lists" json:"lists,omitempty"`
	CustomFields ConfigCustomFields      `bson:"customFields" json:"customFields,omitempty"`
}

type ConfigCustomFields added in v0.2.0

type ConfigCustomFields map[CardCustomFieldID]CustomField

func (ConfigCustomFields) CustomFieldID added in v0.2.0

func (fields ConfigCustomFields) CustomFieldID(fieldName string) CardCustomFieldID

type CustomField added in v0.0.2

type CustomField struct {
	ID                  CardCustomFieldID `bson:"_id" json:"_id,omitempty"`
	Name                string
	Type                string
	Settings            CustomFieldSettings
	ShowOnCard          bool
	ShowLabelOnMiniCard bool
	AutomaticallyOnCard bool
	BoardIDs            []BoardID
	CreatedAt           time.Time
	ModifiedAt          time.Time
	ShowSumAtTopOfList  bool
}

type CustomFieldSettings added in v0.2.0

type CustomFieldSettings struct {
	DropdownItems []struct {
		ID   string `bson:"_id" json:"_id,omitempty"`
		Name string `bson:"name" json:"name,omitempty"`
	} `bson:"dropdownItems" json:"dropdownItems,omitempty"`
}

type Document added in v0.0.6

type Document interface {
	Check(context.Context, *Wekan) error
}

type ForbiddenOperationError added in v0.0.2

type ForbiddenOperationError struct {
	// contains filtered or unexported fields
}

func (ForbiddenOperationError) Error added in v0.0.2

func (e ForbiddenOperationError) Error() string

func (ForbiddenOperationError) Unwrap added in v0.0.6

func (e ForbiddenOperationError) Unwrap() error

type InsertEmptyRuleError added in v0.0.2

type InsertEmptyRuleError struct {
}

func (InsertEmptyRuleError) Error added in v0.0.2

func (e InsertEmptyRuleError) Error() string

type InvalidMongoConfigurationError added in v0.0.2

type InvalidMongoConfigurationError struct {
	// contains filtered or unexported fields
}

func (InvalidMongoConfigurationError) Error added in v0.0.2

func (InvalidMongoConfigurationError) Unwrap added in v0.0.2

type List added in v0.0.2

type List struct {
	ID         ListID       `bson:"_id" json:"_id,omitempty"`
	Title      string       `bson:"title" json:"title,omitempty"`
	BoardID    BoardID      `bson:"boardId" json:"boardId,omitempty"`
	Sort       float64      `bson:"sort" json:"sort,omitempty"`
	Type       string       `bson:"type" json:"type,omitempty"`
	Starred    bool         `bson:"starred" json:"starred,omitempty"`
	Archived   bool         `bson:"archived" json:"archived,omitempty"`
	SwimlaneID string       `bson:"swimlaneId" json:"swimlaneId,omitempty"`
	Width      string       `bson:"width" json:"width,omitempty"`
	CreatedAt  time.Time    `bson:"createdAt" json:"createdAt,omitempty"`
	UpdatedAt  time.Time    `bson:"updatedAt" json:"updatedAt,omitempty"`
	ModifiedAt time.Time    `bson:"modifiedAt" json:"modifiedAt,omitempty"`
	WipLimit   ListWipLimit `bson:"wipLimit" json:"wipLimit,omitempty"`
}

func BuildList added in v0.0.2

func BuildList(boardID BoardID, title string, sort float64) List

type ListID added in v0.0.2

type ListID string

ListID porte bien son nom

func (ListID) Check added in v0.0.6

func (listID ListID) Check(ctx context.Context, wekan *Wekan) error

func (ListID) GetDocument added in v0.0.6

func (listID ListID) GetDocument(ctx context.Context, wekan *Wekan) (List, error)

type ListNotFoundError added in v0.5.0

type ListNotFoundError struct {
	// contains filtered or unexported fields
}

func (ListNotFoundError) Error added in v0.5.0

func (e ListNotFoundError) Error() string

type ListWipLimit added in v0.0.2

type ListWipLimit struct {
	Value   int  `bson:"value" json:"value,omitempty"`
	Enabled bool `bson:"enabled" json:"enabled,omitempty"`
	Soft    bool `bson:"soft" json:"soft,omitempty"`
}

type NotImplemented added in v0.0.2

type NotImplemented struct {
	// contains filtered or unexported fields
}

func (NotImplemented) Error added in v0.0.2

func (e NotImplemented) Error() string

type NotPrivilegedError added in v0.0.6

type NotPrivilegedError struct {
	// contains filtered or unexported fields
}

func (NotPrivilegedError) Error added in v0.0.6

func (e NotPrivilegedError) Error() string

func (NotPrivilegedError) Unwrap added in v0.0.6

func (e NotPrivilegedError) Unwrap() error

type NothingDoneError added in v0.0.6

type NothingDoneError struct{}

func (NothingDoneError) Error added in v0.0.6

func (e NothingDoneError) Error() string

type Pipeline added in v0.2.0

type Pipeline bson.A

func (*Pipeline) AppendPipeline added in v0.2.0

func (p *Pipeline) AppendPipeline(pipeline Pipeline)

func (*Pipeline) AppendStage added in v0.2.0

func (p *Pipeline) AppendStage(stage bson.M)

func (*Pipeline) PrependPipeline added in v0.2.0

func (p *Pipeline) PrependPipeline(pipeline Pipeline)

func (*Pipeline) PrependStage added in v0.2.0

func (p *Pipeline) PrependStage(stage bson.M)

type Poker added in v0.0.2

type Poker struct {
	Question             bool     `bson:"question" json:"question,omitempty"`
	One                  []string `bson:"one" json:"one,omitempty"`
	Two                  []string `bson:"two" json:"two,omitempty"`
	Three                []string `bson:"three" json:"three,omitempty"`
	Five                 []string `bson:"five" json:"five,omitempty"`
	Eight                []string `bson:"eight" json:"eight,omitempty"`
	Thirteen             []string `bson:"thirteen" json:"thirteen,omitempty"`
	Twenty               []string `bson:"twenty" json:"twenty,omitempty"`
	Forty                []string `bson:"forty" json:"forty,omitempty"`
	OneHundred           []string `bson:"oneHundred" json:"oneHundred,omitempty"`
	Unsure               []string `bson:"unsure" json:"unsure,omitempty"`
	End                  *bool    `bson:"end" json:"end,omitempty"`
	AllowNonBoardMembers bool     `bson:"allowNonBoardMembers" json:"allowNonBoardMembers,omitempty"`
}

type ProtectedUserError added in v0.0.6

type ProtectedUserError struct {
	// contains filtered or unexported fields
}

func (ProtectedUserError) Error added in v0.0.6

func (e ProtectedUserError) Error() string

type Rule added in v0.0.2

type Rule struct {
	ID         RuleID     `bson:"_id" json:"_id,omitempty"`
	Title      string     `bson:"title" json:"title,omitempty"`
	TriggerID  *TriggerID `bson:"triggerId" json:"triggerId,omitempty"`
	ActionID   *ActionID  `bson:"actionId" json:"actionId,omitempty"`
	BoardID    BoardID    `bson:"boardId" json:"boardId,omitempty"`
	CreatedAt  time.Time  `bson:"createdAt" json:"createdAt,omitempty"`
	ModifiedAt time.Time  `bson:"modifiedAt" json:"modifiedAt,omitempty"`
	Action     Action     `bson:"-" json:"-"`
	Trigger    Trigger    `bson:"-" json:"-"`
}

type RuleID added in v0.0.2

type RuleID string

func (RuleID) Check added in v0.0.6

func (ruleID RuleID) Check(ctx context.Context, wekan *Wekan) error

func (RuleID) GetDocument added in v0.0.6

func (ruleID RuleID) GetDocument(ctx context.Context, wekan *Wekan) (Rule, error)

type RuleNotFoundError added in v0.0.2

type RuleNotFoundError struct {
	// contains filtered or unexported fields
}

func (RuleNotFoundError) Error added in v0.0.2

func (e RuleNotFoundError) Error() string

type Rules added in v0.0.2

type Rules []Rule

func (Rules) SelectAddMemberToTaskforceRule added in v0.1.2

func (rules Rules) SelectAddMemberToTaskforceRule() Rules

func (Rules) SelectBoardLabelName added in v0.1.2

func (rules Rules) SelectBoardLabelName(boardLabelID BoardLabelID) Rules

func (Rules) SelectRemoveMemberFromTaskforceRule added in v0.1.2

func (rules Rules) SelectRemoveMemberFromTaskforceRule() Rules

type Swimlane added in v0.0.2

type Swimlane struct {
	ID         SwimlaneID `bson:"_id" json:"_id,omitempty"`
	Title      string     `bson:"title" json:"title,omitempty"`
	BoardID    BoardID    `bson:"boardId" json:"boardId,omitempty"`
	Sort       float64    `bson:"sort" json:"sort,omitempty"`
	Type       string     `bson:"type" json:"type,omitempty"`
	Archived   bool       `bson:"archived" json:"archived,omitempty"`
	CreatedAt  time.Time  `bson:"createdAt" json:"createdAt,omitempty"`
	UpdatedAt  time.Time  `bson:"updatedAt" json:"updatedAt,omitempty"`
	ModifiedAt time.Time  `bson:"modifiedAt" json:"modifiedAt,omitempty"`
}

func BuildSwimlane added in v0.0.6

func BuildSwimlane(boardID BoardID, swimlaneType string, title string, sort float64) Swimlane

type SwimlaneID added in v0.0.2

type SwimlaneID string

func (SwimlaneID) Check added in v0.0.6

func (swimlaneID SwimlaneID) Check(ctx context.Context, wekan *Wekan) error

func (SwimlaneID) GetDocument added in v0.0.6

func (swimlaneID SwimlaneID) GetDocument(ctx context.Context, wekan *Wekan) (Swimlane, error)

type Trigger added in v0.0.2

type Trigger struct {
	ID           TriggerID    `bson:"_id" json:"_id,omitempty"`
	ActivityType string       `bson:"activityType" json:"activityType,omitempty"`
	BoardID      BoardID      `bson:"boardId" json:"boardId,omitempty"`
	LabelID      BoardLabelID `bson:"labelId" json:"labelId,omitempty"`
	Description  string       `bson:"desc" json:"desc,omitempty"`
	UserID       UserID       `bson:"userId" json:"userId,omitempty"`
	CreatedAt    time.Time    `bson:"createdAt" json:"createdAt,omitempty"`
	ModifiedAt   time.Time    `bson:"modifiedAt" json:"modifiedAt,omitempty"`
}

type TriggerID added in v0.0.2

type TriggerID string

type TriggerNotFoundError added in v0.0.2

type TriggerNotFoundError struct {
	// contains filtered or unexported fields
}

func (TriggerNotFoundError) Error added in v0.0.2

func (e TriggerNotFoundError) Error() string

type UnexpectedMongoDecodeError added in v0.2.0

type UnexpectedMongoDecodeError struct {
	// contains filtered or unexported fields
}

func (UnexpectedMongoDecodeError) Error added in v0.2.0

func (UnexpectedMongoDecodeError) Unwrap added in v0.2.0

func (e UnexpectedMongoDecodeError) Unwrap() error

type UnexpectedMongoError added in v0.0.2

type UnexpectedMongoError struct {
	// contains filtered or unexported fields
}

func (UnexpectedMongoError) Error added in v0.0.2

func (e UnexpectedMongoError) Error() string

func (UnexpectedMongoError) Unwrap added in v0.0.6

func (e UnexpectedMongoError) Unwrap() error

type UnreachableMongoError added in v0.0.2

type UnreachableMongoError struct {
	// contains filtered or unexported fields
}

func (UnreachableMongoError) Error added in v0.0.2

func (e UnreachableMongoError) Error() string

func (UnreachableMongoError) Unwrap added in v0.0.2

func (e UnreachableMongoError) Unwrap() error

type User

type User struct {
	ID                   UserID       `bson:"_id" json:"_id,omitempty"`
	CreatedAt            time.Time    `bson:"createAt" json:"createAt,omitempty"`
	Services             UserServices `bson:"services" json:"services,omitempty"`
	Username             Username     `bson:"username" json:"username,omitempty"`
	Emails               []UserEmail  `bson:"emails" json:"emails,omitempty"`
	Profile              UserProfile  `bson:"profile" json:"profile,omitempty"`
	AuthenticationMethod string       `bson:"authenticationMethod" json:"authenticationMethod,omitempty"`
	ModifiedAt           time.Time    `bson:"modifiedAt" json:"modifiedAt,omitempty"`
	IsAdmin              bool         `bson:"isAdmin" json:"isAdmin,omitempty"`
	LoginDisabled        bool         `bson:"loginDisabled" json:"loginDisabled,omitempty"`
}

func BuildUser added in v0.0.2

func BuildUser(email, initials, fullname string) User

BuildUser retourne un objet User à insérer/updater avec la fonction Wekan.UpsertUser

func (User) Admin added in v0.2.0

func (user User) Admin(admin bool) User

func (*User) BuildTemplates added in v0.0.2

func (user *User) BuildTemplates() UserTemplates

func (User) GetID added in v0.1.0

func (user User) GetID() UserID

func (User) GetUsername added in v0.1.0

func (user User) GetUsername() Username

type UserAlreadyExistsError added in v0.0.2

type UserAlreadyExistsError struct {
	// contains filtered or unexported fields
}

func (UserAlreadyExistsError) Error added in v0.0.2

func (e UserAlreadyExistsError) Error() string

type UserEmail added in v0.0.2

type UserEmail struct {
	Address  string `json:"address"`
	Verified bool   `json:"verified"`
}

type UserID added in v0.0.2

type UserID string

func (UserID) Check added in v0.0.6

func (userId UserID) Check(ctx context.Context, wekan *Wekan) error

func (UserID) GetDocument added in v0.0.6

func (userId UserID) GetDocument(ctx context.Context, wekan *Wekan) (User, error)

func (UserID) String added in v0.0.6

func (userId UserID) String() string

type UserIsNotMemberError added in v0.0.6

type UserIsNotMemberError struct {
	// contains filtered or unexported fields
}

func (UserIsNotMemberError) Error added in v0.0.6

func (e UserIsNotMemberError) Error() string

type UserNotFoundError added in v0.0.6

type UserNotFoundError struct {
	// contains filtered or unexported fields
}

func (UserNotFoundError) Error added in v0.0.6

func (e UserNotFoundError) Error() string

func (UserNotFoundError) Unwrap added in v0.1.0

func (e UserNotFoundError) Unwrap() error

type UserProfile

type UserProfile struct {
	Initials                 string                    `bson:"initials" json:"initials,omitempty"`
	Fullname                 string                    `bson:"fullname" json:"fullname,omitempty"`
	BoardView                string                    `bson:"boardView" json:"boardView,omitempty"`
	ListSortBy               string                    `bson:"-modifiedAt" json:"-"`
	TemplatesBoardId         BoardID                   `bson:"templatesBoardId" json:"templatesBoardId,omitempty"`
	CardTemplatesSwimlaneId  SwimlaneID                `bson:"cardTemplatesSwimlaneId" json:"cardTemplatesSwimlaneId,omitempty"`
	ListTemplatesSwimlaneId  SwimlaneID                `bson:"listTemplatesSwimlaneId" json:"listTemplatesSwimlaneId,omitempty"`
	BoardTemplatesSwimlaneId SwimlaneID                `bson:"boardTemplatesSwimlaneId" json:"boardTemplatesSwimlaneId,omitempty"`
	InvitedBoards            []string                  `bson:"invitedBoards" json:"invitedBoards,omitempty"`
	StarredBoards            []string                  `bson:"starredBoards" json:"starredBoards,omitempty"`
	Language                 string                    `bson:"language" json:"language,omitempty"`
	CardMaximized            bool                      `bson:"cardMaximized" json:"cardMaximized,omitempty"`
	EmailBuffer              []string                  `bson:"emailBuffer" json:"emailBuffer,omitempty"`
	Notifications            []UserProfileNotification `bson:"notifications" json:"notifications,omitempty"`
	HiddenSystemMessages     bool                      `bson:"hiddenSystemMessages" json:"hiddenSystemMessages,omitempty"`
}

type UserProfileNotification added in v0.0.2

type UserProfileNotification struct {
	Activity string `bson:"activity" json:"activity,omitempty"`
}

type UserServices

type UserServices struct {
	OIDC     UserServicesOIDC     `bson:"oidc" json:"oidc,omitempty"`
	Resume   UserServicesResume   `bson:"resume" json:"resume,omitempty"`
	Password UserServicesPassword `bson:"password" json:"-"`
}

type UserServicesOIDC added in v0.0.2

type UserServicesOIDC struct {
	ID           string   `bson:"id" json:"id,omitempty"`
	Username     Username `bson:"username" json:"username,omitempty"`
	Fullname     string   `bson:"fullname" json:"fullname,omitempty"`
	AccessToken  string   `bson:"accessToken" json:"-"`
	ExpiresAt    int      `bson:"expiresAt" json:"-"`
	Email        string   `bson:"email" json:"email,omitempty"`
	RefreshToken string   `bson:"refreshToken" json:"-"`
}

type UserServicesPassword added in v0.0.2

type UserServicesPassword struct {
	Bcrypt string `bson:"bcrypt" json:"-"`
}

type UserServicesResume added in v0.0.2

type UserServicesResume struct {
	LoginTokens []UserServicesResumeLoginToken `json:"-"`
}

type UserServicesResumeLoginToken added in v0.0.2

type UserServicesResumeLoginToken struct {
	When        time.Time `bson:"when" json:"when,omitempty"`
	HashedToken string    `bson:"hashedToken" json:"-"`
}

type UserTemplates added in v0.0.2

type UserTemplates struct {
	TemplateBoard         Board
	CardTemplateSwimlane  Swimlane
	ListTemplateSwimlane  Swimlane
	BoardTemplateSwimlane Swimlane
}

type Username added in v0.0.2

type Username string

func (Username) String added in v0.1.0

func (username Username) String() string

type Users added in v0.0.2

type Users []User

type Vote added in v0.0.2

type Vote struct {
	Question             string   `bson:"question" json:"question,omitempty"`
	Positive             []string `bson:"positive" json:"positive,omitempty"`
	Negative             []string `bson:"negative" json:"negative,omitempty"`
	End                  *bool    `bson:"end" json:"end,omitempty"`
	Public               bool     `bson:"public" json:"public,omitempty"`
	AllowNonBoardMembers bool     `bson:"allowNonBoardMembers" json:"allowNonBoardMembers,omitempty"`
}

type Wekan

type Wekan struct {
	// contains filtered or unexported fields
}

func Init added in v0.0.2

func Init(ctx context.Context, uri string, databaseName string, adminUsername Username, slugDomainRegexp string) (Wekan, error)

Init retourne un objet de type `Wekan`

func (*Wekan) AddAssigneeToCard added in v0.6.0

func (wekan *Wekan) AddAssigneeToCard(ctx context.Context, card Card, user User, assignee User) error

func (*Wekan) AddLabelToCard added in v0.0.6

func (wekan *Wekan) AddLabelToCard(ctx context.Context, cardID CardID, labelID BoardLabelID) error

func (*Wekan) AddMemberToBoard added in v0.0.2

func (wekan *Wekan) AddMemberToBoard(ctx context.Context, boardID BoardID, boardMember BoardMember) error

AddMemberToBoard ajoute un objet BoardMember sur la board

func (*Wekan) AddMemberToCard added in v0.0.6

func (wekan *Wekan) AddMemberToCard(ctx context.Context, card Card, user User, member User) error

func (*Wekan) AddSelfMemberToCard added in v0.5.0

func (wekan *Wekan) AddSelfMemberToCard(ctx context.Context, card Card, member User) error

func (*Wekan) AdminID added in v0.0.2

func (wekan *Wekan) AdminID() UserID

func (*Wekan) AdminUsername added in v0.0.2

func (wekan *Wekan) AdminUsername() Username

func (*Wekan) ArchiveCard added in v0.4.0

func (wekan *Wekan) ArchiveCard(ctx context.Context, cardID CardID) error

func (*Wekan) AssertPrivileged added in v0.0.6

func (wekan *Wekan) AssertPrivileged(ctx context.Context) error

AssertPrivileged s'assure que l'utilisateur déclaré dans la propriété Wekan.adminUsername est bien un utilisateur admin dans la base de données

func (*Wekan) BuildCardFromCustomTextFieldPipeline added in v0.2.0

func (wekan *Wekan) BuildCardFromCustomTextFieldPipeline(name string, value string) Pipeline

func (*Wekan) BuildCardFromCustomTextFieldsPipeline added in v0.3.0

func (wekan *Wekan) BuildCardFromCustomTextFieldsPipeline(name string, values []string) Pipeline

func (*Wekan) BuildDomainCardsPipeline added in v0.2.0

func (wekan *Wekan) BuildDomainCardsPipeline() Pipeline

func (*Wekan) CheckDocuments added in v0.0.6

func (wekan *Wekan) CheckDocuments(ctx context.Context, documents ...Document) error

func (*Wekan) DisableBoardMember added in v0.0.2

func (wekan *Wekan) DisableBoardMember(ctx context.Context, boardID BoardID, userID UserID) error

DisableBoardMember desactive l'utilisateur dans la propriété `member` d'une board

func (*Wekan) DisableUser added in v0.0.2

func (wekan *Wekan) DisableUser(ctx context.Context, user User) error

DisableUser désactive l'utilisateur dans la base `users` et désactive la participation à tous les tableaux

func (*Wekan) DisableUsers added in v0.0.2

func (wekan *Wekan) DisableUsers(ctx context.Context, users Users) error

func (*Wekan) EnableBoardMember added in v0.0.2

func (wekan *Wekan) EnableBoardMember(ctx context.Context, boardID BoardID, userID UserID) error

EnableBoardMember active l'utilisateur dans la propriété `member` d'une board

func (*Wekan) EnableUser added in v0.0.2

func (wekan *Wekan) EnableUser(ctx context.Context, user User) error

EnableUser active un utilisateur dans la base `users` et active la participation à son tableau templates

func (*Wekan) EnableUsers added in v0.0.2

func (wekan *Wekan) EnableUsers(ctx context.Context, users Users) error

func (*Wekan) EnsureAssigneeOutOfCard added in v0.6.0

func (wekan *Wekan) EnsureAssigneeOutOfCard(ctx context.Context, card Card, user User, assignee User) (bool, error)

func (*Wekan) EnsureMemberInCard added in v0.0.6

func (wekan *Wekan) EnsureMemberInCard(ctx context.Context, card Card, user User, member User) (bool, error)

func (*Wekan) EnsureMemberOutOfCard added in v0.0.6

func (wekan *Wekan) EnsureMemberOutOfCard(ctx context.Context, card Card, user User, member User) (bool, error)

func (*Wekan) EnsureMoveCardList added in v0.5.0

func (wekan *Wekan) EnsureMoveCardList(ctx context.Context, cardID CardID, listID ListID, userID UserID) error

func (*Wekan) EnsureRuleAddTaskforceMemberExists added in v0.1.2

func (wekan *Wekan) EnsureRuleAddTaskforceMemberExists(ctx context.Context, user User, board Board, boardLabel BoardLabel) (bool, error)

func (*Wekan) EnsureRuleRemoveTaskforceMemberExists added in v0.1.2

func (wekan *Wekan) EnsureRuleRemoveTaskforceMemberExists(ctx context.Context, user User, board Board, boardLabel BoardLabel) (bool, error)

func (*Wekan) EnsureUserIsActiveBoardMember added in v0.0.2

func (wekan *Wekan) EnsureUserIsActiveBoardMember(ctx context.Context, boardID BoardID, userID UserID) (bool, error)

EnsureUserIsActiveBoardMember fait en sorte de rendre l'utilisateur participant et actif à une board

func (*Wekan) EnsureUserIsBoardAdmin added in v0.0.2

func (wekan *Wekan) EnsureUserIsBoardAdmin(ctx context.Context, boardID BoardID, userID UserID) (bool, error)

func (*Wekan) EnsureUserIsInactiveBoardMember added in v0.0.2

func (wekan *Wekan) EnsureUserIsInactiveBoardMember(ctx context.Context, boardID BoardID, userID UserID) (bool, error)

EnsureUserIsInactiveBoardMember fait en sorte de désactiver un utilisateur sur une board lorsqu'il est participant

func (*Wekan) GetActivityFromID added in v0.0.6

func (wekan *Wekan) GetActivityFromID(ctx context.Context, activityID ActivityID) (Activity, error)

func (*Wekan) GetBoardFromID

func (wekan *Wekan) GetBoardFromID(ctx context.Context, id BoardID) (Board, error)

GetBoardFromID retourne l'objet board à partir du champ ._id

func (*Wekan) GetBoardFromSlug

func (wekan *Wekan) GetBoardFromSlug(ctx context.Context, slug BoardSlug) (Board, error)

GetBoardFromSlug retourne l'objet board à partir du champ .slug

func (*Wekan) GetBoardFromTitle

func (wekan *Wekan) GetBoardFromTitle(ctx context.Context, title BoardTitle) (Board, error)

GetBoardFromTitle retourne l'objet board à partir du champ title

func (*Wekan) GetCardFromID added in v0.0.2

func (wekan *Wekan) GetCardFromID(ctx context.Context, cardID CardID) (Card, error)

func (*Wekan) GetCardWithCommentsFromID added in v0.5.0

func (wekan *Wekan) GetCardWithCommentsFromID(ctx context.Context, cardID CardID) (CardWithComments, error)

func (*Wekan) GetListFromID added in v0.0.2

func (wekan *Wekan) GetListFromID(ctx context.Context, listID ListID) (List, error)

func (*Wekan) GetSwimlaneFromID added in v0.0.6

func (wekan *Wekan) GetSwimlaneFromID(ctx context.Context, swimlaneID SwimlaneID) (Swimlane, error)

func (*Wekan) GetSwimlanesFromBoardID added in v0.0.6

func (wekan *Wekan) GetSwimlanesFromBoardID(ctx context.Context, boardID BoardID) ([]Swimlane, error)

func (*Wekan) GetUserFromID

func (wekan *Wekan) GetUserFromID(ctx context.Context, id UserID) (User, error)

GetUserFromID retourne l'objet utilisateur correspond au champ ._id

func (*Wekan) GetUserFromUsername

func (wekan *Wekan) GetUserFromUsername(ctx context.Context, username Username) (User, error)

GetUserFromUsername retourne l'objet utilisateur correspond au champ .username

func (*Wekan) GetUsers added in v0.0.2

func (wekan *Wekan) GetUsers(ctx context.Context) (Users, error)

GetUsers retourne tous les utilisateurs

func (*Wekan) GetUsersFromIDs added in v0.0.2

func (wekan *Wekan) GetUsersFromIDs(ctx context.Context, userIDs []UserID) ([]User, error)

GetUsersFromIDs retourne les objets users correspondant aux usernames en une seule requête

func (*Wekan) GetUsersFromUsernames added in v0.0.2

func (wekan *Wekan) GetUsersFromUsernames(ctx context.Context, usernames []Username) ([]User, error)

GetUsersFromUsernames retourne les objets users correspondant aux usernames en une seule requête

func (*Wekan) InsertAction added in v0.0.2

func (wekan *Wekan) InsertAction(ctx context.Context, action Action) error

func (*Wekan) InsertBoard added in v0.0.2

func (wekan *Wekan) InsertBoard(ctx context.Context, board Board) error

func (*Wekan) InsertBoardLabel added in v0.0.2

func (wekan *Wekan) InsertBoardLabel(ctx context.Context, board Board, boardLabel BoardLabel) error

func (*Wekan) InsertCard added in v0.0.2

func (wekan *Wekan) InsertCard(ctx context.Context, card Card) error

func (*Wekan) InsertList added in v0.0.2

func (wekan *Wekan) InsertList(ctx context.Context, list List) error

func (*Wekan) InsertRule added in v0.0.2

func (wekan *Wekan) InsertRule(ctx context.Context, rule Rule) error

func (*Wekan) InsertSwimlane added in v0.0.2

func (wekan *Wekan) InsertSwimlane(ctx context.Context, swimlane Swimlane) error

func (*Wekan) InsertTemplates added in v0.0.2

func (wekan *Wekan) InsertTemplates(ctx context.Context, templates UserTemplates) error

func (*Wekan) InsertTrigger added in v0.0.2

func (wekan *Wekan) InsertTrigger(ctx context.Context, trigger Trigger) error

func (*Wekan) InsertUser added in v0.0.2

func (wekan *Wekan) InsertUser(ctx context.Context, user User) error

func (*Wekan) InsertUsers added in v0.0.6

func (wekan *Wekan) InsertUsers(ctx context.Context, users Users) error

func (*Wekan) ListUsers

func (wekan *Wekan) ListUsers(ctx context.Context) ([]User, error)

ListUsers returns all wekan users

func (*Wekan) Ping added in v0.0.2

func (wekan *Wekan) Ping(ctx context.Context) error

func (*Wekan) RemoveAssigneeFromCard added in v0.6.0

func (wekan *Wekan) RemoveAssigneeFromCard(ctx context.Context, card Card, user User, assignee User) error

func (*Wekan) RemoveMemberFromCard added in v0.0.6

func (wekan *Wekan) RemoveMemberFromCard(ctx context.Context, card Card, user User, member User) error

func (*Wekan) RemoveRuleWithID added in v0.0.2

func (wekan *Wekan) RemoveRuleWithID(ctx context.Context, ruleID RuleID) error

func (*Wekan) RemoveSelfMemberFromCard added in v0.5.0

func (wekan *Wekan) RemoveSelfMemberFromCard(ctx context.Context, card Card, member User) error

func (*Wekan) SelectActivitiesFromBoardID added in v0.0.6

func (wekan *Wekan) SelectActivitiesFromBoardID(ctx context.Context, boardID BoardID) ([]Activity, error)

func (*Wekan) SelectActivitiesFromCardID added in v0.5.0

func (wekan *Wekan) SelectActivitiesFromCardID(ctx context.Context, cardID CardID) ([]Activity, error)

func (*Wekan) SelectActivitiesFromQuery added in v0.0.6

func (wekan *Wekan) SelectActivitiesFromQuery(ctx context.Context, query bson.M) ([]Activity, error)

func (*Wekan) SelectBoardsFromMemberID added in v0.0.2

func (wekan *Wekan) SelectBoardsFromMemberID(ctx context.Context, memberID UserID) ([]Board, error)

SelectBoardsFromMemberID retourne les boards où on trouve le memberID passé en paramètre

func (*Wekan) SelectCardsFromBoardID added in v0.0.2

func (wekan *Wekan) SelectCardsFromBoardID(ctx context.Context, boardID BoardID) ([]Card, error)

func (*Wekan) SelectCardsFromCustomTextField added in v0.2.0

func (wekan *Wekan) SelectCardsFromCustomTextField(ctx context.Context, name string, value string) ([]Card, error)

func (*Wekan) SelectCardsFromListID added in v0.0.2

func (wekan *Wekan) SelectCardsFromListID(ctx context.Context, listID ListID) ([]Card, error)

func (*Wekan) SelectCardsFromMemberID added in v0.0.2

func (wekan *Wekan) SelectCardsFromMemberID(ctx context.Context, userID UserID) ([]Card, error)

func (*Wekan) SelectCardsFromPipeline added in v0.2.0

func (wekan *Wekan) SelectCardsFromPipeline(ctx context.Context, collection string, pipeline Pipeline) ([]Card, error)

SelectCardsFromPipeline retourne les objets correspondant au modèle Card à partir d'un pipeline mongodb

func (*Wekan) SelectCardsFromQuery added in v0.0.2

func (wekan *Wekan) SelectCardsFromQuery(ctx context.Context, query bson.M) ([]Card, error)

func (*Wekan) SelectCardsFromSwimlaneID added in v0.0.2

func (wekan *Wekan) SelectCardsFromSwimlaneID(ctx context.Context, swimlaneID SwimlaneID) ([]Card, error)

func (*Wekan) SelectCardsFromUserID added in v0.0.2

func (wekan *Wekan) SelectCardsFromUserID(ctx context.Context, userID UserID) ([]Card, error)

func (*Wekan) SelectCardsWithCommentsFromPipeline added in v0.2.0

func (wekan *Wekan) SelectCardsWithCommentsFromPipeline(ctx context.Context, collection string, pipeline Pipeline) ([]CardWithComments, error)

SelectCardsWithCommentsFromPipeline retourne les objets correspondant au modèle CardWithComments à partir d'un pipeline mongodb

func (*Wekan) SelectConfig added in v0.2.0

func (wekan *Wekan) SelectConfig(ctx context.Context) (Config, error)

func (*Wekan) SelectDomainBoards added in v0.0.2

func (wekan *Wekan) SelectDomainBoards(ctx context.Context) ([]Board, error)

SelectDomainBoards retourne les boards correspondant à la slugDomainRegexp

func (*Wekan) SelectListsFromBoardID added in v0.0.2

func (wekan *Wekan) SelectListsFromBoardID(ctx context.Context, boardID BoardID) ([]List, error)

func (*Wekan) SelectRuleFromID added in v0.0.2

func (wekan *Wekan) SelectRuleFromID(ctx context.Context, ruleID RuleID) (Rule, error)

func (*Wekan) SelectRulesFromBoardID added in v0.0.2

func (wekan *Wekan) SelectRulesFromBoardID(ctx context.Context, boardID BoardID) (Rules, error)

func (*Wekan) SetCardEndAt added in v0.5.0

func (wekan *Wekan) SetCardEndAt(ctx context.Context, cardID CardID, endAt *time.Time) error

func (*Wekan) SetCardStartAt added in v0.5.0

func (wekan *Wekan) SetCardStartAt(ctx context.Context, cardID CardID, startAt *time.Time) error

func (*Wekan) UnarchiveCard added in v0.2.0

func (wekan *Wekan) UnarchiveCard(ctx context.Context, cardID CardID) error

func (*Wekan) UpdateCardDescription added in v0.3.0

func (wekan *Wekan) UpdateCardDescription(ctx context.Context, cardID CardID, description string) error

TODO: écrire un test

func (*Wekan) UsernameExists added in v0.0.2

func (wekan *Wekan) UsernameExists(ctx context.Context, username Username) (bool, error)

Jump to

Keyboard shortcuts

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