commit b017d04575d36612f1d04d5de25c54f3cd90e26d
parent 4562f0eaec77f2a6ee960ade415b2053e808b449
Author: boredpasta <boredpasta@tutanota.com>
Date: Sun, 16 Mar 2025 23:25:25 +0200
refactor to use more returns to reduce indentation in `sub respond'
Diffstat:
1 file changed, 15 insertions(+), 13 deletions(-)
diff --git a/mata_bot.pl b/mata_bot.pl
@@ -64,27 +64,27 @@ sub respond {
} else {
msg($sock, "${sender_nick} meant to say something but idk lol <[>~<]> (``$toreplace'' doesn't exist in their last message)");
}
- return;
+ return 1;
} elsif ($message =~ m,watch\?v=([a-zA-Z0-9-]+),) {
# post youtube video titles from video ID
my $video_id = $1;
my $response = HTTP::Tiny->new->get("https://fuyt.lab8.cz/?s=${video_id}&o=relevance");
- if (not $response->{success}) {
+ unless ($response->{success}) {
msg($sock, "failed to get title of video $video_id <[x~x]> ($response->{status} $response->{reason}!)");
- return;
- } elsif (not length $response->{content}) {
+ return 0;
+ }
+ unless (length $response->{content}) {
msg($sock, "failed to get title of youtube video $video_id <[x~x]> (HTTP response empty!)");
- return;
+ return 0;
+ }
+ my $content = $response->{content};
+ if ($content =~ m,<span class="title"><a href="https://www\.youtube\.com/watch\?v=$video_id" accesskey="0">([^<]+)</a>,) {
+ msg($sock, "YouTube: $title");
} else {
- my $content = $response->{content};
- if ($content =~ m,<span class="title"><a href="https://www\.youtube\.com/watch\?v=$video_id" accesskey="0">([^<]+)</a>,) {
- msg($sock, "YouTube: $1");
- } else {
- msg($sock, "failed to get title of video $video_id <[x~x]> (no videos matching ID $video_id!)");
- }
+ msg($sock, "failed to get title of video $video_id <[x~x]> (no videos matching ID $video_id!)");
}
}
- $subbuffer{$sender_nick} = $message;
+ return 0;
}
# process args
@@ -160,6 +160,8 @@ while (1) {
# if we got a message to our chan. read and act accordingly
my $sender_nick = $1;
my $sender_message = $2;
- respond($sock, $sender_nick, $sender_message);
+ unless (respond($sock, $sender_nick, $sender_message)) {
+ $subbuffer{$sender_nick} = $sender_message;
+ }
}
}