From 76d3c25dc81ccc9f4ba13dd8c7832e3334203b3b Mon Sep 17 00:00:00 2001
From: Alexandre Morignot <erdnaxeli@cervoi.se>
Date: Tue, 12 May 2015 21:08:05 +0200
Subject: [PATCH] when !later, specifies source chan in query

---
 lib/commands/get.pm       | 16 ++++++++++++----
 lib/commands/later.pm     |  2 +-
 lib/sessions/irc.pm       |  2 +-
 lib/sessions/irc/later.pm |  4 ++--
 4 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/lib/commands/get.pm b/lib/commands/get.pm
index bc6de5a..172c6dd 100644
--- a/lib/commands/get.pm
+++ b/lib/commands/get.pm
@@ -14,7 +14,7 @@ our $irc;
 our $log;
 
 sub exec {
-	my ($chan, $msg) = @_;
+	my ($chan, $msg, $chan_src) = @_;
 
     my $query = commands::get::query->new(
         chan => $chan->[0],
@@ -83,9 +83,17 @@ sub exec {
     $content_h{'tags'} = \@tags;
 
     my $irc_msg = utils::print::print(\%content_h);
-    $irc_msg .= ' [' . $rows . ' résultat';
-    $irc_msg .= 's' if ($rows > 1);
-    $irc_msg .= ']';
+
+    # if in query
+    if ($chan !~ /^#/) {
+        $irc_msg .= ' [' . $chan_src->[0] . ']';
+    }
+    else {
+        $irc_msg .= ' [' . $rows . ' résultat';
+        $irc_msg .= 's' if ($rows > 1);
+        $irc_msg .= ']';
+    }
+
     $irc->yield(privmsg => $chan => $irc_msg);
 
     # we save the get like a post
diff --git a/lib/commands/later.pm b/lib/commands/later.pm
index e9675ba..dd978c1 100644
--- a/lib/commands/later.pm
+++ b/lib/commands/later.pm
@@ -17,7 +17,7 @@ sub exec {
 	$sth->execute($id, $nick, time + $time)
         or $log->error("Couldn't finish transaction: " . $dbh->errstr);
     
-    $kernel->delay_set('_later', $time, $nick, $id);
+    $kernel->delay_set('_later', $time, $nick, $id, $chan);
 }
 
 1;
diff --git a/lib/sessions/irc.pm b/lib/sessions/irc.pm
index 21128f3..92c227c 100644
--- a/lib/sessions/irc.pm
+++ b/lib/sessions/irc.pm
@@ -67,7 +67,7 @@ POE::Session->create(
         irc_notice => \&on_notice,
 		_flux	   => \&flux,
         _later     => sub {
-            sessions::irc::later::consume($_[ARG0], $_[ARG1])
+            sessions::irc::later::consume(@_[ARG0, ARG1, ARG2])
         }
 	},
 );
diff --git a/lib/sessions/irc/later.pm b/lib/sessions/irc/later.pm
index 605d107..577f748 100644
--- a/lib/sessions/irc/later.pm
+++ b/lib/sessions/irc/later.pm
@@ -5,9 +5,9 @@ use commands::get;
 
 sub consume
 {
-	my ($nick, $id) = @_;
+	my ($nick, $id, $chan_src) = @_;
 
-    my @args = ([$nick], $id);
+    my @args = ([$nick], $id, $chan_src);
     commands::get::exec(@args);
 }
 
-- 
GitLab