diff options
Diffstat (limited to 'lib/WebCoso')
-rw-r--r-- | lib/WebCoso/Common.pm | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/WebCoso/Common.pm b/lib/WebCoso/Common.pm index eed6f3a..46f63b6 100644 --- a/lib/WebCoso/Common.pm +++ b/lib/WebCoso/Common.pm @@ -138,6 +138,25 @@ sub getDatesFor { } } +sub getTagsFor { + my ($fc,$lang,$path,$name)=@_; + + DEBUG("getTagsFor($lang,$path,$name)"); + my $doc_name=srcXMLFor($lang,$path,$name); + my $doc=$fc->get($doc_name); + unless ($doc) { + LOGWARN("No document for <$doc_name>, returning <>"); + return; + } + + my @tags=map {$_->textContent} + $xpath->findnodes( + q{/document/docinfo/field[field_name='tags']/field_body/*/list_item|/document/docinfo/field[field_name='tags']/field_body/paragraph}, + $doc); + chomp for @tags; + return @tags; +} + sub getDates { my ($fc,@docs)=@_; |