Documentation
¶
Overview ¶
Package kanboard implements the Kanboard project management provider.
Index ¶
- Constants
- func GetWebhookToken() string
- type AuthTransport
- type Comment
- type EventResponse
- type File
- type Kanboard
- func (v *Kanboard) Close() error
- func (v *Kanboard) CloseTask(ctx context.Context, taskId int) (result bool, err error)
- func (v *Kanboard) CreateSubtask(ctx context.Context, taskId int, title string, ...) (subtaskId int64, err error)
- func (v *Kanboard) CreateTag(ctx context.Context, projectId int, tag, colorId string) (tagId int64, err error)
- func (v *Kanboard) CreateTask(ctx context.Context, task *Task) (taskId int64, err error)
- func (v *Kanboard) GetAllSubtasks(ctx context.Context, taskId int) (subtasks []*Subtask, err error)
- func (v *Kanboard) GetAllTags(ctx context.Context) (tags []Tag, err error)
- func (v *Kanboard) GetAllTasks(ctx context.Context, projectId int, status StatusId) (tasks []*Task, err error)
- func (v *Kanboard) GetColumns(ctx context.Context, projectId int) (columns []types.KV, err error)
- func (v *Kanboard) GetMe(ctx context.Context) (user *User, err error)
- func (v *Kanboard) GetSubtask(ctx context.Context, subtaskId int) (subtask *Subtask, err error)
- func (v *Kanboard) GetSubtaskTimeSpent(ctx context.Context, subtaskId, userId int) (result float64, err error)
- func (v *Kanboard) GetTagsByProject(ctx context.Context, projectId int) (tags []Tag, err error)
- func (v *Kanboard) GetTask(ctx context.Context, taskId int) (task *Task, err error)
- func (v *Kanboard) GetTaskMetadata(ctx context.Context, taskId int) (metadata []TaskMetadata, err error)
- func (v *Kanboard) GetTaskMetadataByName(ctx context.Context, taskId int, name string) (value string, err error)
- func (v *Kanboard) GetTaskTags(ctx context.Context, taskId int) (tags map[string]string, err error)
- func (v *Kanboard) HasSubtaskTimer(ctx context.Context, subtaskId, userId int) (result bool, err error)
- func (v *Kanboard) MoveTaskPosition(ctx context.Context, projectId, taskId, columnId, position, swimlaneId int) (result bool, err error)
- func (v *Kanboard) OpenTask(ctx context.Context, taskId int) (result bool, err error)
- func (v *Kanboard) RemoveSubtask(ctx context.Context, subtaskId int) (result bool, err error)
- func (v *Kanboard) RemoveTag(ctx context.Context, tagId int) (result bool, err error)
- func (v *Kanboard) RemoveTask(ctx context.Context, taskId int) (result bool, err error)
- func (v *Kanboard) RemoveTaskMetadata(ctx context.Context, taskId int, name string) (result bool, err error)
- func (v *Kanboard) SaveTaskMetadata(ctx context.Context, taskId int, values TaskMetadata) (result bool, err error)
- func (v *Kanboard) SearchTasks(ctx context.Context, projectId int, query string) (tasks []*Task, err error)
- func (v *Kanboard) SetSubtaskEndTime(ctx context.Context, subtaskId, userId int) (result bool, err error)
- func (v *Kanboard) SetSubtaskStartTime(ctx context.Context, subtaskId, userId int) (result bool, err error)
- func (v *Kanboard) SetTaskTags(ctx context.Context, projectId, taskId int, tags []string) (result bool, err error)
- func (v *Kanboard) UpdateSubtask(ctx context.Context, subtaskId, taskId int, title string, ...) (result bool, err error)
- func (v *Kanboard) UpdateTag(ctx context.Context, tagId int, tag, colorId string) (result bool, err error)
- func (v *Kanboard) UpdateTask(ctx context.Context, taskId int, task *Task) (result bool, err error)
- type StatusId
- type Subtask
- type Tag
- type Task
- type TaskClose
- type TaskLink
- type TaskMetadata
- type User
Constants ¶
View Source
const ( ID = "kanboard" EndpointKey = "endpoint" UsernameKey = "username" PasswordKey = "password" WebhookTokenKey = "webhook_token" )
View Source
const ( DefaultProjectId = 1 DefaultPriority = 2 )
View Source
const ( CommentCreateEvent = "comment.create" CommentUpdateEvent = "comment.update" CommentDeleteEvent = "comment.delete" FileCreateEvent = "file.create" TaskMoveProjectEvent = "task.move.project" TaskMoveColumnEvent = "task.move.column" TaskMovePositionEvent = "task.move.position" TaskMoveSwimlaneEvent = "task.move.swimlane" TaskUpdateEvent = "task.update" TaskCreateEvent = "task.create" TaskCloseEvent = "task.close" TaskOpenEvent = "task.open" TaskAssigneeChangeEvent = "task.assignee_change" SubtaskUpdateEvent = "subtask.update" SubtaskCreateEvent = "subtask.create" SubtaskDeleteEvent = "subtask.delete" TaskInternalLinkCreateUpdateEvent = "task_internal_link.create_update" TaskInternalLinkDeleteEvent = "task_internal_link.delete" )
Variables ¶
This section is empty.
Functions ¶
func GetWebhookToken ¶ added in v0.92.0
func GetWebhookToken() string
GetWebhookToken reads the webhook token from the kanboard provider config. The token is passed as a query parameter in Kanboard webhook URLs.
Types ¶
type AuthTransport ¶
type AuthTransport struct {
Transport http.RoundTripper
Username string
Password string
}
type Comment ¶
type Comment struct {
ID int `json:"id,omitempty"`
TaskID int `json:"task_id,omitempty"`
UserID int `json:"user_id,omitempty"`
DateCreation int `json:"date_creation,omitempty"`
DateModification int `json:"date_modification,omitempty"`
Comment string `json:"comment,omitempty"`
Reference string `json:"reference,omitempty"`
Visibility string `json:"visibility,omitempty"`
Username string `json:"username,omitempty"`
Name any `json:"name,omitempty"`
Email any `json:"email,omitempty"`
AvatarPath string `json:"avatar_path,omitempty"`
}
type EventResponse ¶
type File ¶
type File struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Path string `json:"path,omitempty"`
IsImage string `json:"is_image,omitempty"`
TaskID string `json:"task_id,omitempty"`
Date string `json:"date,omitempty"`
UserID string `json:"user_id,omitempty"`
Size string `json:"size,omitempty"`
}
type Kanboard ¶
type Kanboard struct {
// contains filtered or unexported fields
}
func NewKanboard ¶
func (*Kanboard) CreateSubtask ¶ added in v0.92.0
func (*Kanboard) CreateTask ¶
func (*Kanboard) GetAllSubtasks ¶ added in v0.92.0
func (*Kanboard) GetAllTags ¶ added in v0.92.0
func (*Kanboard) GetAllTasks ¶ added in v0.29.3
func (*Kanboard) GetColumns ¶ added in v0.92.0
func (*Kanboard) GetMe ¶ added in v0.97.8
GetMe returns the currently authenticated Kanboard user via JSON-RPC getMe.
func (*Kanboard) GetSubtask ¶ added in v0.92.0
func (*Kanboard) GetSubtaskTimeSpent ¶ added in v0.92.0
func (*Kanboard) GetTagsByProject ¶ added in v0.92.0
func (*Kanboard) GetTaskMetadata ¶ added in v0.92.0
func (*Kanboard) GetTaskMetadataByName ¶ added in v0.92.0
func (*Kanboard) GetTaskTags ¶ added in v0.92.0
func (*Kanboard) HasSubtaskTimer ¶ added in v0.92.0
func (*Kanboard) MoveTaskPosition ¶ added in v0.92.0
func (*Kanboard) RemoveSubtask ¶ added in v0.92.0
func (*Kanboard) RemoveTask ¶ added in v0.92.0
func (*Kanboard) RemoveTaskMetadata ¶ added in v0.92.0
func (*Kanboard) SaveTaskMetadata ¶ added in v0.92.0
func (*Kanboard) SearchTasks ¶ added in v0.92.0
func (*Kanboard) SetSubtaskEndTime ¶ added in v0.92.0
func (*Kanboard) SetSubtaskStartTime ¶ added in v0.92.0
func (*Kanboard) SetTaskTags ¶ added in v0.92.0
func (*Kanboard) UpdateSubtask ¶ added in v0.92.0
type StatusId ¶ added in v0.29.3
type StatusId int
StatusId represents the status of a task: 1 for active, 0 for inactive.
type Subtask ¶
type Subtask struct {
ID string `json:"id,omitempty"`
Title string `json:"title,omitempty"`
Status string `json:"status,omitempty"`
TimeEstimated any `json:"time_estimated,omitempty"`
TimeSpent any `json:"time_spent,omitempty"`
TaskID string `json:"task_id,omitempty"`
UserID string `json:"user_id,omitempty"`
Position string `json:"position,omitempty"`
Username string `json:"username,omitempty"`
Name any `json:"name,omitempty"`
TimerStartDate int `json:"timer_start_date,omitempty"`
StatusName string `json:"status_name,omitempty"`
IsTimerStarted bool `json:"is_timer_started,omitempty"`
}
type Task ¶
type Task struct {
ID int `json:"id,omitempty"`
Title string `json:"title,omitempty"`
Description string `json:"description,omitempty"`
DateCreation int `json:"date_creation,omitempty"`
DateCompleted any `json:"date_completed,omitempty"`
DateDue int `json:"date_due,omitempty"`
ColorID string `json:"color_id,omitempty"`
ProjectID int `json:"project_id,omitempty"`
ColumnID int `json:"column_id,omitempty"`
OwnerID int `json:"owner_id,omitempty"`
Position int `json:"position,omitempty"`
Score int `json:"score,omitempty"`
IsActive int `json:"is_active,omitempty"`
CategoryID int `json:"category_id,omitempty"`
CreatorID int `json:"creator_id,omitempty"`
DateModification int `json:"date_modification,omitempty"`
Reference string `json:"reference,omitempty"`
DateStarted int `json:"date_started,omitempty"`
TimeSpent any `json:"time_spent,omitempty"`
TimeEstimated any `json:"time_estimated,omitempty"`
SwimlaneID int `json:"swimlane_id,omitempty"`
DateMoved int `json:"date_moved,omitempty"`
RecurrenceStatus int `json:"recurrence_status,omitempty"`
RecurrenceTrigger int `json:"recurrence_trigger,omitempty"`
RecurrenceFactor int `json:"recurrence_factor,omitempty"`
RecurrenceTimeframe any `json:"recurrence_timeframe,omitempty"`
RecurrenceBasedate int `json:"recurrence_basedate,omitempty"`
RecurrenceParent any `json:"recurrence_parent,omitempty"`
RecurrenceChild any `json:"recurrence_child,omitempty"`
Priority int `json:"priority,omitempty"`
ExternalProvider any `json:"external_provider,omitempty"`
ExternalURI any `json:"external_uri,omitempty"`
CategoryName any `json:"category_name,omitempty"`
SwimlaneName string `json:"swimlane_name,omitempty"`
ProjectName string `json:"project_name,omitempty"`
ColumnTitle string `json:"column_title,omitempty"`
AssigneeUsername string `json:"assignee_username,omitempty"`
AssigneeName any `json:"assignee_name,omitempty"`
CreatorUsername string `json:"creator_username,omitempty"`
CreatorName any `json:"creator_name,omitempty"`
CategoryDescription any `json:"category_description,omitempty"`
ColumnPosition int `json:"column_position,omitempty"`
Tags []any `json:"tags,omitempty"`
}
type TaskMetadata ¶ added in v0.92.0
Click to show internal directories.
Click to hide internal directories.