From 69cb88acb7c271b4f10f8b272b4b1c1ac433e648 Mon Sep 17 00:00:00 2001 From: sergiotarxz Date: Tue, 8 Feb 2022 01:28:57 +0100 Subject: [PATCH] Adding /karma command. --- bin/doctor_karma.pl | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/bin/doctor_karma.pl b/bin/doctor_karma.pl index 0e83f2d..1d25e10 100755 --- a/bin/doctor_karma.pl +++ b/bin/doctor_karma.pl @@ -64,9 +64,28 @@ sub process_message_with_text { if ( $text eq '+1' && defined $reply_to_message ) { add_karma_to_replied_message_user($message); } - if ($text eq '-1' && defined $reply_to_message) { - substract_karma_to_replied_message_user ($message); + if ( $text eq '-1' && defined $reply_to_message ) { + substract_karma_to_replied_message_user($message); } + if ( $text eq '/karma' ) { + show_karma($message); + } +} + +sub show_karma { + my $message = shift; + my $reply_to_message = $message->{reply_to_message}; + my $user_id = $reply_to_message->{from}{id} // $message->{from}{id}; + my $chat_id = $message->{chat}{id}; + + my $user_dao = DoctorKarma::DAO::User->new( dbh => $db ); + my $user = $user_dao->recover_id( id => $user_id ); + + $telegram->send_message( + chat_id => $chat_id, + text => +"@{[$user->first_name]} has @{[$user->karma =~ s/-/\\-/r]} points of karma\\." + ); } sub substract_karma_to_replied_message_user {