--- tamtam/tamtam2socialtext.pl 2007/12/12 17:14:58 13 +++ tamtam/tamtam2socialtext.pl 2007/12/12 17:56:54 14 @@ -30,7 +30,7 @@ return if $name =~ m/^TamSystem/; - my $date = $ref->{meta}->{LastModified}; + my $date = $ref->{meta}->{LastModified}->{value}; if ( ! $date ) { warn "SKIP: no LastModified in $path $name"; return; @@ -40,13 +40,10 @@ $ref->{widgets}->{widget}->{Body}->{data} || die "no data in $path ",dump( $ref ); - $data .= qq{ ----- - -Original: http://www.razmjenavjestina.org/$path -}; - - $page->{ $name } = [ $data, $date ]; + $page->{ $name } = { + content => convert_markup( $data ), + date => time2str( $date ), + }; # strip path from page name $name =~ s,^.+/([^/]+)$,$1,; @@ -92,13 +89,8 @@ return '.pre' . $text . '.pre'; } -my $count = 0; - -foreach my $name ( keys %$page ) { - last if $count++ == $max; - - my ( $body, $date ) = @{ $page->{$name} }; - $date = time2str( $date ); +sub convert_markup { + my $body = shift; $body =~ s/\Q[[TableOfContents]]\E/{toc}/gs; $body =~ s/\Q[[BR]]\E/\n/gs; @@ -115,9 +107,22 @@ $body =~ s/\["([^"]+)"\]/[$1]/gs; $body =~ s,\[(http://\S+)\s+([^\]]+)\],"$2"<$1>,gs; $body =~ s,\[(http://[^\]]+)\],$1,gs; - $body =~ s,$page_link_re,[$1],gs; - Encode::_utf8_off( $body ); + # fix hr + $body =~ s,(\S+)----,$1\n----,gs; + $body =~ s,----(\S+),----\n$1,gs; + + return $body; +} + +my $count = 0; + +foreach my $name ( keys %$page ) { + last if $count++ == $max; + + my $p = $page->{$name}; + my $body = $p->{content} || die "no content?"; + my $date = $p->{date} || die "no date?"; my @tags = ( 'TamTam' ); @@ -127,11 +132,22 @@ push @tags, @page_tags; } + # link named pages + $body =~ s,$page_link_re,[$1],gs; + + $body .= qq{ +---- + +Original: http://www.razmjenavjestina.org/$name +}; + + Encode::_utf8_off( $body ); + $Rester->put_page( $name, { content => $body, date => $date, }); - print "+ $name\n"; + print "+ $name $date\n"; foreach ( @tags ) { $Rester->put_pagetag( $name, $_ ); print "+ $name [$_]\n";