--- test/html-webhacc/WebHACC/Output.pm 2008/08/15 12:11:56 1.18 +++ test/html-webhacc/WebHACC/Output.pm 2008/08/17 05:06:21 1.22 @@ -181,7 +181,7 @@ if ($self->{section_rank} == 2 or length $opt{parent_id}) { my $st = $opt{short_title} || $opt{title}; push @{$self->{nav}}, - [$id => $st => $opt{text}]; + [$id => $st => $opt{text}] if $self->{section_rank} == 2; $self->start_tag ('script'); $self->html (qq[ addSectionLink ('$id', ']); @@ -341,6 +341,13 @@ $self->html (''); } # xref +sub xref_text ($$%) { + my ($self, $content, %opt) = @_; + $self->html (''); + $self->text ($content); + $self->html (''); +} # xref + sub link_to_webhacc ($$%) { my ($self, $content, %opt) = @_; $opt{url} = './?uri=' . $self->encode_url_component ($opt{url}); @@ -394,7 +401,8 @@ sub node_link ($$) { my ($self, $node) = @_; if ($node->isa ('Message::IF::Node')) { - $self->xref ($get_node_path->($node), target => 'node-' . refaddr $node); + $self->xref_text ($get_node_path->($node), + target => 'node-' . refaddr $node); } else { $self->html ($get_object_path->($node)); } @@ -425,45 +433,35 @@ my ($self, $type, %opt) = @_; my $node = $opt{node}; - my @arg; - { - if (defined $Msg->{$type}) { - my $msg = $Msg->{$type}->[1]; - if ($msg =~ //) { - $msg =~ s{\$([0-9]+)}{ - defined $arg[$1] ? $htescape->($arg[$1]) : '(undef)'; - }ge; - $msg =~ s{{\@([A-Za-z0-9:_.-]+)}}{ - UNIVERSAL::can ($node, 'get_attribute_ns') - ? $htescape->($node->get_attribute_ns (undef, $1)) : '' - }ge; - $msg =~ s{{\@}}{ - UNIVERSAL::can ($node, 'value') ? $htescape->($node->value) : '' - }ge; - $msg =~ s{{text}}{ - defined $opt{text} ? $htescape->($opt{text}) : '' - }ge; - $msg =~ s{{value}}{ - defined $opt{value} ? $htescape->($opt{value}) : '' - }ge; - $msg =~ s{{local-name}}{ - UNIVERSAL::can ($node, 'manakai_local_name') + if (defined $Msg->{$type}) { + my $msg = $Msg->{$type}->[1]; + if ($msg =~ //) { + $msg =~ s{{\@([A-Za-z0-9:_.-]+)}}{ + UNIVERSAL::can ($node, 'get_attribute_ns') + ? $htescape->($node->get_attribute_ns (undef, $1)) : '' + }ge; + $msg =~ s{{\@}}{ + UNIVERSAL::can ($node, 'value') ? $htescape->($node->value) : '' + }ge; + $msg =~ s{{text}}{ + defined $opt{text} ? $htescape->($opt{text}) : '' + }ge; + $msg =~ s{{value}}{ + defined $opt{value} ? $htescape->($opt{value}) : '' + }ge; + $msg =~ s{{local-name}}{ + UNIVERSAL::can ($node, 'manakai_local_name') ? $htescape->($node->manakai_local_name) : '' - }ge; - $msg =~ s{{element-local-name}}{ - (UNIVERSAL::can ($node, 'owner_element') and - $node->owner_element) + }ge; + $msg =~ s{{element-local-name}}{ + (UNIVERSAL::can ($node, 'owner_element') and $node->owner_element) ? $htescape->($node->owner_element->manakai_local_name) : '' - }ge; - } - $self->html ($msg); - return; - } elsif ($type =~ s/:([^:]*)$//) { - unshift @arg, $1; - redo; + }ge; } + $self->html ($msg); + } else { + $self->text ($type); } - $self->text ($type); } # nl_text } @@ -545,13 +543,14 @@ $out->select ([ {value => '', label => 'As specified'}, {value => 'application/atom+xml'}, + {value => 'text/cache-manifest'}, + {value => 'text/css'}, + {value => 'text/x-h2h'}, + {value => 'text/html'}, + {value => 'text/x-webidl'}, {value => 'application/xhtml+xml'}, {value => 'application/xml'}, - {value => 'text/html'}, {value => 'text/xml'}, - {value => 'text/css'}, - {value => 'text/cache-manifest'}, - {value => 'text/x-webidl'}, ], name => 'i', selected => scalar $cgi->get_parameter ('i')); $out->end_tag ('label');