3
0
mirror of https://github.com/pragma-/pbot.git synced 2025-02-13 12:00:54 +01:00
pbot/lib/PBot/Plugin/ParseDate.pm

38 lines
905 B
Perl
Raw Normal View History

2021-07-10 15:00:22 -07:00
# File: ParseDate.pm
#
2021-07-23 19:22:25 -07:00
# Purpose: Just a simple interface to test/play with PBot::Core::Utils::ParseDate
2021-07-10 15:00:22 -07:00
# and make sure it's working properly.
#
# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com>
# SPDX-License-Identifier: MIT
2017-09-03 20:46:34 -07:00
2021-07-13 19:45:56 -07:00
package PBot::Plugin::ParseDate;
use parent 'PBot::Plugin::Base';
2017-09-03 20:46:34 -07:00
2021-06-18 21:23:34 -07:00
use PBot::Imports;
2017-09-03 20:46:34 -07:00
use Time::Duration qw/duration/;
sub initialize {
2020-02-15 14:38:32 -08: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-03 20:46:34 -07:00
}
sub unload {
2020-02-15 14:38:32 -08:00
my $self = shift;
$self->{pbot}->{commands}->remove('pd');
2017-09-03 20:46:34 -07:00
}
sub cmd_parsedate {
my ($self, $context) = @_;
my ($seconds, $error) = $self->{pbot}->{parsedate}->parsedate($context->{arguments});
2020-02-15 14:38:32 -08:00
return $error if defined $error;
return duration $seconds;
2017-09-03 20:46:34 -07:00
}
1;