From: Dobrica Pavlinusic Date: Wed, 25 Jul 2012 23:18:35 +0000 (+0200) Subject: collect ticket numbers from tags X-Git-Url: http://git.rot13.org/?p=ILL-Zotero-RT;a=commitdiff_plain;h=d92a5e66f48321625ae4ebc5f8458a533e29a7cc;hp=384448dd114cbf95bc4e0598ab77131015688436 collect ticket numbers from tags --- diff --git a/zotero.pl b/zotero.pl index 6194153..6cbb8bb 100755 --- a/zotero.pl +++ b/zotero.pl @@ -26,16 +26,17 @@ my $feed = XMLin( $file ); #warn "# feed ",dump($feed); my $tree; +my $ticket; foreach my $entry ( keys %{ $feed->{entry} } ) { - warn "ENTRY $entry\n"; + warn "# entry $entry ",dump($entry); my $id = $entry; $id =~ s{.+/items/}{}; # leave just ID - my $e = $feed->{entry}->{$entry}; + my $item = $feed->{entry}->{$entry}; - foreach my $link ( @{ $e->{link} } ) { - warn "# link ",dump($link); + foreach my $link ( @{ $item->{link} } ) { + warn "# link $id ",dump($link); if ( $link->{rel} eq 'up' ) { my $up = $link->{href}; $up =~ s{.+/items/}{}; @@ -44,14 +45,23 @@ foreach my $entry ( keys %{ $feed->{entry} } ) { } } - if ( $e->{content}->{'zapi:type'} eq 'json' ) { - my $json = $e->{content}->{content}; + if ( $item->{content}->{'zapi:type'} eq 'json' ) { + my $json = $item->{content}->{content}; warn "# $json\n"; - $e->{json} = decode_json $json; - warn ">> $id ", dump $e->{json}; - } + $json = $item->{json} = decode_json $json; + warn "# json $id ", dump $json; + + foreach my $tag ( @{ $json->{tags} } ) { + $tag = $tag->{tag}; + warn "# tag $id $tag\n"; + next unless $tag =~ m/#(\d+)/; + push @{ $ticket->{$1} }, $id; + } + } } warn "# tree ",dump( $tree ); + +warn "# ticket ",dump( $ticket );