// Vikunja is a to-do list application to facilitate your life. // Copyright 2018-2021 Vikunja and contributors. All rights reserved. // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero General Public Licensee as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public Licensee for more details. // // You should have received a copy of the GNU Affero General Public Licensee // along with this program. If not, see . package models import ( "code.vikunja.io/api/pkg/user" ) ///////////////// // Task Events // ///////////////// type TaskCreatedEvent struct { Task *Task Doer *user.User } func (t *TaskCreatedEvent) TopicName() string { return "task.created" } type TaskUpdatedEvent struct { Task *Task Doer *user.User } func (t *TaskUpdatedEvent) TopicName() string { return "task.updated" } type TaskAssigneeCreatedEvent struct { Task *Task Assignee *user.User Doer *user.User } func (t *TaskAssigneeCreatedEvent) TopicName() string { return "task.assignee.created" } type TaskCommentCreatedEvent struct { Task *Task Comment *TaskComment Doer *user.User } func (t *TaskCommentCreatedEvent) TopicName() string { return "task.comment.created" } ////////////////////// // Namespace Events // ////////////////////// type NamespaceCreatedEvent struct { Namespace *Namespace Doer *user.User } func (n *NamespaceCreatedEvent) TopicName() string { return "namespace.created" } type NamespaceUpdatedEvent struct { Namespace *Namespace Doer *user.User } func (n *NamespaceUpdatedEvent) TopicName() string { return "namespace.updated" } ///////////////// // List Events // ///////////////// type ListCreatedEvent struct { List *List Doer *user.User } func (l *ListCreatedEvent) TopicName() string { return "list.created" } type ListUpdatedEvent struct { List *List Doer *user.User } func (l *ListUpdatedEvent) TopicName() string { return "list.updated" } //////////////////// // Sharing Events // //////////////////// type ListSharedWithUserEvent struct { List *List User *user.User Doer *user.User } func (l *ListSharedWithUserEvent) TopicName() string { return "list.shared.user" } type ListSharedWithTeamEvent struct { List *List Team *Team Doer *user.User } func (l *ListSharedWithTeamEvent) TopicName() string { return "list.shared.team" }