App-JobLog
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
lib/App/JobLog/Command/configure.pm view on Meta::CPAN
package App::JobLog::Command::configure;
$App::JobLog::Command::configure::VERSION = '1.042';
# ABSTRACT: examine or modify App::JobLog configuration
use App::JobLog -command;
use Modern::Perl;
use App::JobLog::Config qw(
day_length
editor
hidden_columns
merge
pay_period_length
precision
start_pay_period
sunday_begins_week
time_zone
workdays
DAYS
HIDABLE_COLUMNS
HOURS
MERGE
NONE_COLUMN
PERIOD
PRECISION
SUNDAY_BEGINS_WEEK
TIME_ZONE
WORKDAYS
);
use autouse 'App::JobLog::TimeGrammar' => qw(parse);
no if $] >= 5.018, warnings => "experimental::smartmatch";
sub execute {
my ( $self, $opt, $args ) = @_;
_list_params() if $opt->list;
if ( defined $opt->precision ) {
my $precision = precision( $opt->precision );
say "precision set to $precision";
}
if ( defined $opt->start_pay_period ) {
eval {
my ($s) = parse( $opt->start_pay_period );
my $d = start_pay_period($s);
say 'beginning of pay period set to ' . $d->strftime('%F');
};
$self->usage_error(
'could not understand date: ' . $opt->start_pay_period )
if $@;
}
if ( defined $opt->length_pay_period ) {
my $length_pp = pay_period_length( $opt->length_pay_period );
say "length of pay period in days set to $length_pp";
}
if ( defined $opt->day_length ) {
my $day_length = day_length( $opt->day_length );
say "length of work day set to $day_length";
}
if ( defined $opt->workdays ) {
my $days = uc $opt->workdays;
my %days = map { $_ => 1 } split //, $days;
my @days;
for ( split //, DAYS ) {
push @days, $_ if $days{$_};
}
$days = join '', @days;
$days = workdays($days);
say "workdays set to $days";
view all matches for this distributionview release on metacpan - search on metacpan
( run in 0.597 second using v1.00-cache-2.02-grep-82fe00e-cpan-d29e8ade9f55 )