feat: Notify when updating comment (not just commenting)

This commit is contained in:
xmppftw xmppftw 2026-06-23 17:29:43 +02:00
commit 732f77f141
3 changed files with 12 additions and 3 deletions

View file

@ -77,6 +77,7 @@ impl From<FjIssue> for Note {
.comment
.map(|c| c.html_url)
.unwrap_or(other.issue.html_url),
is_update: other.action == FjIssueAction::Edited,
}
}
}

View file

@ -109,19 +109,26 @@ pub fn format_hook(hook: &Hook) -> Option<String> {
if note.snippet {
return None;
}
let updated_fmt = if note.is_update {
"updated comment"
} else {
"commented"
};
if let Some(commit) = &note.commit {
format!(
"[{}] {} commented on commit {:?} <{}>",
"[{}] {} {updated_fmt} on commit {:?} <{}>",
note.repository.name, note.author.name, commit.ref_, commit.url,
)
} else if let Some(issue) = &note.issue {
format!(
"[{}] {} commented on issue {}: {} <{}>",
"[{}] {} {updated_fmt} on issue {}: {} <{}>",
note.repository.name, note.author.name, issue.id, issue.title, note.url,
)
} else if let Some(mr) = &note.merge_request {
format!(
"[{}] {} commented on merge request {}: {} <{}>",
"[{}] {} {updated_fmt} on merge request {}: {} <{}>",
note.repository.name, note.author.name, mr.id, mr.title, note.url,
)
} else {

View file

@ -116,6 +116,7 @@ pub struct Note {
pub repository: Repository,
pub author: User,
pub url: String,
pub is_update: bool,
}
#[derive(Debug, Clone, PartialEq)]