diff options
| author | Jokler <jokler.contact@gmail.com> | 2019-12-07 18:51:08 +0100 |
|---|---|---|
| committer | Jokler <jokler.contact@gmail.com> | 2019-12-07 18:51:08 +0100 |
| commit | 0a57d0ee613eb989ce5790d645c06c7817dd0ecc (patch) | |
| tree | 00cc4e6fc160f3a6be36d7fcaf677408b5f537bc /src/plugins/tell/mod.rs | |
| parent | 52d092a7ab6ef20fd142acec8adf1d4b4668bebb (diff) | |
| download | frippy-0a57d0ee613eb989ce5790d645c06c7817dd0ecc.tar.gz frippy-0a57d0ee613eb989ce5790d645c06c7817dd0ecc.zip | |
Tell: List the receivers on successful send
Diffstat (limited to 'src/plugins/tell/mod.rs')
| -rw-r--r-- | src/plugins/tell/mod.rs | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/plugins/tell/mod.rs b/src/plugins/tell/mod.rs index 3c0dc3d..2e3829f 100644 --- a/src/plugins/tell/mod.rs +++ b/src/plugins/tell/mod.rs @@ -43,11 +43,14 @@ impl<T: Database, C: FrippyClient> Tell<T, C> { let mut online = Vec::new(); - let receivers = command.tokens[0].split(',').filter(|&s| !s.is_empty()); + let receivers = command.tokens[0] + .split(',') + .filter(|&s| !s.is_empty()) + .collect::<Vec<_>>(); let sender = command.source; let mut no_receiver = true; - for receiver in receivers { + for receiver in &receivers { if receiver.eq_ignore_ascii_case(client.current_nickname()) || receiver.eq_ignore_ascii_case(&sender) { @@ -96,15 +99,13 @@ impl<T: Database, C: FrippyClient> Tell<T, C> { no_receiver = false; } - Ok(if no_receiver && online.is_empty() { + let resp = if no_receiver { String::from("Invalid receiver.") } else { - match online.len() { - 0 => format!("Got it!"), - 1 => format!("{} is currently online.", online[0]), - _ => format!("{} are currently online.", online.join(", ")), - } - }) + format!("Sending tell to {}.", receivers.join(", ")) + }; + + Ok(resp) } fn on_namelist(&self, client: &C, channel: &str) -> Result<(), FrippyError> { |
