Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
canifa_note
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vũ Hoàng Anh
canifa_note
Commits
2e0619b4
Unverified
Commit
2e0619b4
authored
Jan 19, 2024
by
Elliot Chen
Committed by
GitHub
Jan 19, 2024
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: add a webhook action for deleted memos (#2791)
parent
c9146bc7
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
24 additions
and
0 deletions
+24
-0
memo.go
api/v1/memo.go
+12
-0
memo_service.go
api/v2/memo_service.go
+12
-0
No files found.
api/v1/memo.go
View file @
2e0619b4
...
...
@@ -625,6 +625,13 @@ func (s *APIV1Service) DeleteMemo(c echo.Context) error {
return
echo
.
NewHTTPError
(
http
.
StatusUnauthorized
,
"Unauthorized"
)
}
if
memoMessage
,
err
:=
s
.
convertMemoFromStore
(
ctx
,
memo
);
err
==
nil
{
// Try to dispatch webhook when memo is deleted.
if
err
:=
s
.
DispatchMemoDeletedWebhook
(
ctx
,
memoMessage
);
err
!=
nil
{
log
.
Warn
(
"Failed to dispatch memo deleted webhook"
,
zap
.
Error
(
err
))
}
}
if
err
:=
s
.
Store
.
DeleteMemo
(
ctx
,
&
store
.
DeleteMemo
{
ID
:
memoID
,
});
err
!=
nil
{
...
...
@@ -958,6 +965,11 @@ func (s *APIV1Service) DispatchMemoUpdatedWebhook(ctx context.Context, memo *Mem
return
s
.
dispatchMemoRelatedWebhook
(
ctx
,
memo
,
"memos.memo.updated"
)
}
// DispatchMemoDeletedWebhook dispatches webhook when memo is deletedd.
func
(
s
*
APIV1Service
)
DispatchMemoDeletedWebhook
(
ctx
context
.
Context
,
memo
*
Memo
)
error
{
return
s
.
dispatchMemoRelatedWebhook
(
ctx
,
memo
,
"memos.memo.deleted"
)
}
func
(
s
*
APIV1Service
)
dispatchMemoRelatedWebhook
(
ctx
context
.
Context
,
memo
*
Memo
,
activityType
string
)
error
{
webhooks
,
err
:=
s
.
Store
.
ListWebhooks
(
ctx
,
&
store
.
FindWebhook
{
CreatorID
:
&
memo
.
CreatorID
,
...
...
api/v2/memo_service.go
View file @
2e0619b4
...
...
@@ -346,6 +346,13 @@ func (s *APIV2Service) DeleteMemo(ctx context.Context, request *apiv2pb.DeleteMe
return
nil
,
status
.
Errorf
(
codes
.
PermissionDenied
,
"permission denied"
)
}
if
memoMessage
,
err
:=
s
.
convertMemoFromStore
(
ctx
,
memo
);
err
==
nil
{
// Try to dispatch webhook when memo is deleted.
if
err
:=
s
.
DispatchMemoDeletedWebhook
(
ctx
,
memoMessage
);
err
!=
nil
{
log
.
Warn
(
"Failed to dispatch memo deleted webhook"
,
zap
.
Error
(
err
))
}
}
if
err
=
s
.
Store
.
DeleteMemo
(
ctx
,
&
store
.
DeleteMemo
{
ID
:
request
.
Id
,
});
err
!=
nil
{
...
...
@@ -740,6 +747,11 @@ func (s *APIV2Service) DispatchMemoUpdatedWebhook(ctx context.Context, memo *api
return
s
.
dispatchMemoRelatedWebhook
(
ctx
,
memo
,
"memos.memo.updated"
)
}
// DispatchMemoDeletedWebhook dispatches webhook when memo is deleted.
func
(
s
*
APIV2Service
)
DispatchMemoDeletedWebhook
(
ctx
context
.
Context
,
memo
*
apiv2pb
.
Memo
)
error
{
return
s
.
dispatchMemoRelatedWebhook
(
ctx
,
memo
,
"memos.memo.deleted"
)
}
func
(
s
*
APIV2Service
)
dispatchMemoRelatedWebhook
(
ctx
context
.
Context
,
memo
*
apiv2pb
.
Memo
,
activityType
string
)
error
{
webhooks
,
err
:=
s
.
Store
.
ListWebhooks
(
ctx
,
&
store
.
FindWebhook
{
CreatorID
:
&
memo
.
CreatorId
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment