mirror of
https://github.com/pragma-/pbot.git
synced 2024-12-25 04:02:37 +01:00
926d57990b
- convert several plugins to use named-parameters - misc clean-ups in unrelated files
38 lines
905 B
Perl
38 lines
905 B
Perl
# File: ParseDate.pm
|
|
#
|
|
# Purpose: Just a simple interface to test/play with PBot::Core::Utils::ParseDate
|
|
# and make sure it's working properly.
|
|
#
|
|
# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com>
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
package PBot::Plugin::ParseDate;
|
|
use parent 'PBot::Plugin::Base';
|
|
|
|
use PBot::Imports;
|
|
|
|
use Time::Duration qw/duration/;
|
|
|
|
sub initialize {
|
|
my ($self, %conf) = @_;
|
|
$self->{pbot}->{commands}->add(
|
|
name => 'pd',
|
|
help => 'Simple command to test ParseDate interface',
|
|
subref =>sub { return $self->cmd_parsedate(@_) },
|
|
);
|
|
}
|
|
|
|
sub unload {
|
|
my $self = shift;
|
|
$self->{pbot}->{commands}->remove('pd');
|
|
}
|
|
|
|
sub cmd_parsedate {
|
|
my ($self, $context) = @_;
|
|
my ($seconds, $error) = $self->{pbot}->{parsedate}->parsedate($context->{arguments});
|
|
return $error if defined $error;
|
|
return duration $seconds;
|
|
}
|
|
|
|
1;
|