Date-Lectionary-Daily
view release on metacpan or search on metacpan
=encoding utf8
=head1 NAME
Date::Lectionary::Daily - Daily Readings for the Christian Lectionary
=head1 VERSION
Version 1.20200102
=cut
=head1 SYNOPSIS
use Time::Piece;
use Date::Lectionary::Daily;
#Using the old ACNA Liturgical Daily Lectionary
my $dailyReading = Date::Lectionary::Daily->new(
'date' => Time::Piece->strptime("2017-12-24", "%Y-%m-%d"),
'lectionary' => 'acna-xian'
);
say $dailyReading->readings->{evening}->{1}; #First lesson for evening prayer, Isaiah 51
#Using the new ACNA Secular/Civil Daily Lectionary
my $dailyNewReading = Date::Lectionary::Daily->new(
'date' => Time::Piece->strptime( "2018-03-12", "%Y-%m-%d" ),
'lectionary' => 'acna-sec'
);
say $dailyNewReading->readings->{morning}->{2}; #Second lesson for morning prayer, Matthew 5
=head1 DESCRIPTION
Date::Lectionary::Daily takes a Time::Piece date and returns readings for morning and evening prayer for that date.
=head2 CONSTRUCTOR ATTRIBUTES
=head3 date
The Time::Piece object date of the day you woudl like the lessons for.
=head3 lectionary
One of two choices `acna-sec` for the new secular calendar based ACNA daily lectionary or `acna-xian` for the previous liturgically-based ACNA daily lectionary.
If lectionary is not given at construction, the ACNA secular daily lectionary â `acna-sec` â will be used.
=head2 ATTRIBUTES
=head3 week
The name of the liturgical week in the lectionary; e.g. `The First Sunday in Lent`.
=head3 day
The name of the day of the week; e.g. `Sunday`.
=head3 tradition
Presently only returns `acna`. Future version of the module may include daily lectionary from other traditions.
=head3 type
Returns `secular` for daily lectionaries based on the secular/civil calendar and `liturgical` for daily lectionaries based on the liturgical calendar.
=head3 readings
A hasref of the readings for the day.
=cut
=head1 SUBROUTINES/METHODS
=cut
=head2 BUILD
Constructor for the Date::Lectionary object. Takes a Time::Piect object, C<date>, to create the object.
=cut
=head2 _buildType
Private method to determine if the daily lectionary follows the secular calendar or the liturgical calendar.
=cut
=head2 _buildTradition
Private method to determine the Sunday lectionary tradition of the daily lectionary selected. Used to determine the liturgical week the day falls within.
=cut
=head2 _parseLectDB
Private method to open and parse the lectionary XML to be used by other methods to XPATH queries.
=cut
=head2 _checkFixed
Private method to determine if the day given is a fixed holiday rather than a standard day.
=cut
=head2 _buildReadingsLiturgical
Private method that returns an ArrayRef of strings for the lectionary readings associated with the date according to the liturgical calendar.
=cut
=head2 _buildReadingsSecular
Private method that returns an ArrayRef of strings for the lectionary readings associated with the date according to the secular calendar.
=cut
=head1 AUTHOR
Michael Wayne Arnold, C<< <michael at rnold.info> >>
=head1 BUGS
=for html <a href="https://travis-ci.org/marmanold/Date-Lectionary-Daily"><img src="https://travis-ci.org/marmanold/Date-Lectionary-Daily.svg?branch=master"></a>
=for html <a href='https://coveralls.io/github/marmanold/Date-Lectionary-Daily?branch=master'><img src='https://coveralls.io/repos/github/marmanold/Date-Lectionary-Daily/badge.svg?branch=master' alt='Coverage Status' /></a>
Please report any bugs or feature requests to C<bug-date-lectionary-daily at rt.cpan.org>, or through
the web interface at L<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Date-Lectionary-Daily>. I will be notified, and then you'll
automatically be notified of progress on your bug as I make changes.
=head1 SUPPORT
You can find documentation for this module with the perldoc command.
perldoc Date::Lectionary::Daily
You can also look for information at:
=over 4
=item * RT: CPAN's request tracker (report bugs here)
L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Date-Lectionary-Daily>
=item * AnnoCPAN: Annotated CPAN documentation
L<http://annocpan.org/dist/Date-Lectionary-Daily>
=item * CPAN Ratings
L<http://cpanratings.perl.org/d/Date-Lectionary-Daily>
=item * Search CPAN
L<http://search.cpan.org/dist/Date-Lectionary-Daily/>
=back
=head1 ACKNOWLEDGEMENTS
Many thanks to my beautiful wife, Jennifer, my amazing daughter, Rosemary, and my sweet son, Oliver. But, above all, SOLI DEO GLORIA!
=head1 LICENSE
Copyright 2017-2020 MICHAEL WAYNE ARNOLD
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
( run in 1.156 second using v1.01-cache-2.11-cpan-99c4e6809bf )