3
0
mirror of https://github.com/pragma-/pbot.git synced 2024-11-14 16:09:34 +01:00
pbot/lib/PBot/Plugin/ParseDate.pm

38 lines
910 B
Perl
Raw Normal View History

2021-07-11 00:00:22 +02:00
# File: ParseDate.pm
#
2021-07-24 04:22:25 +02:00
# Purpose: Just a simple interface to test/play with PBot::Core::Utils::ParseDate
2021-07-11 00:00:22 +02:00
# and make sure it's working properly.
#
2023-02-21 06:31:52 +01:00
# SPDX-FileCopyrightText: 2017-2023 Pragmatic Software <pragma78@gmail.com>
2021-07-11 00:00:22 +02:00
# SPDX-License-Identifier: MIT
2017-09-04 05:46:34 +02:00
2021-07-14 04:45:56 +02:00
package PBot::Plugin::ParseDate;
use parent 'PBot::Plugin::Base';
2017-09-04 05:46:34 +02:00
2021-06-19 06:23:34 +02:00
use PBot::Imports;
2017-09-04 05:46:34 +02:00
use Time::Duration qw/duration/;
sub initialize {
2020-02-15 23:38:32 +01:00
my ($self, %conf) = @_;
$self->{pbot}->{commands}->add(
name => 'pd',
help => 'Simple command to test ParseDate interface',
subref =>sub { return $self->cmd_parsedate(@_) },
);
2017-09-04 05:46:34 +02:00
}
sub unload {
2020-02-15 23:38:32 +01:00
my $self = shift;
$self->{pbot}->{commands}->remove('pd');
2017-09-04 05:46:34 +02:00
}
sub cmd_parsedate {
my ($self, $context) = @_;
my ($seconds, $error) = $self->{pbot}->{parsedate}->parsedate($context->{arguments});
2020-02-15 23:38:32 +01:00
return $error if defined $error;
return duration $seconds;
2017-09-04 05:46:34 +02:00
}
1;