X-Git-Url: http://git.ieval.ro/?p=webservice-tdwtf.git;a=blobdiff_plain;f=lib%2FWebService%2FTDWTF.pm;h=fe9ea4da73a9e4b02f48b624c2bb116848907d49;hp=0aa6dff1f5e5674a0ec4f17ecd76a2396c3ae98a;hb=8773c4ec2c066ec03cb01a646f1f8b05b3497bde;hpb=be354e3bc99d180e08c7bf6a62e0bdff7d07f56f diff --git a/lib/WebService/TDWTF.pm b/lib/WebService/TDWTF.pm index 0aa6dff..fe9ea4d 100644 --- a/lib/WebService/TDWTF.pm +++ b/lib/WebService/TDWTF.pm @@ -11,7 +11,7 @@ use JSON::MaybeXS qw/decode_json/; use Scalar::Util qw/looks_like_number/; use WebService::TDWTF::Article; -my @subs = qw/article list_recent list_series list_author/; +my @subs = qw/article list_recent list_series list_author series/; our @EXPORT = map { "tdwtf_$_" } @subs; our @EXPORT_OK = (@EXPORT, @subs); our %EXPORT_TAGS = (all => [@EXPORT_OK]); @@ -57,11 +57,14 @@ sub list_recent { my $url = @_ == 2 ? 'articles' : 'articles/recent'; _list $url sub list_series { _list 'series', @_ } sub list_author { _list 'author', @_ } +sub series { @{_query "$BASE_URL/series/"} } + BEGIN { *tdwtf_article = \&article; *tdwtf_list_recent = \&list_recent; *tdwtf_list_series = \&list_series; *tdwtf_list_author = \&list_author; + *tdwtf_series = \&series; } 1; @@ -100,6 +103,13 @@ WebService::TDWTF - retrieve articles from thedailywtf.com # All Error'd articles published in January 2014 my @jan14_errord = tdwtf_list_series 'errord', 2014, 1; + my @series = series; # List of all series + my $series = series; # Number of series ($series == @series) + print $series[0]->Slug; # alexs-soapbox + print $series[0]->Title; # Alex's Soapbox + print $series[0]->Description; # + print $series[0]->CssClass; # tales + =head1 DESCRIPTION WebService::TDWTF is an interface to the API of L. @@ -192,6 +202,16 @@ With two arguments, returns all articles by the given author published in the given month of the given year. I<$month> is an integer between 1 and 12. +=item B + +=item B + +In list context, returns a list of all existing article series. Each +series is an unblessed hashref with the keys C, C, +C<Description> and C<CssClass>. + +In scalar context, returns the number of existing article series. + =back =head1 NOTES