<% $DIGITS_LINE %>\ % if (defined $alpha) { %delete $local_params->{alpha}; <a href="<% $href %>?<% join('&', map { "$_=$local_params->{$_}" } keys %$local_params) %>">уВТПУ</a>\ % } <br> <% $EN_ALPHA_LINE %> <br> <% $RU_ALPHA_LINE %> <%args> $alpha => undef $href => undef $params => {} $delimiter => ' | ' </%args> <%ONCE> my @digits=qw(0 1 2 3 4 5 6 7 8 9); my @en_alpha=qw(A B C D E F G H I J K L M N O P Q R S T U V W X Y Z); my @ru_alpha=qw(б в ч з д е ц ъ й к л м н о п р т у ф х ж и г ю ы э ь а с & ' "); #' - restore vim syntax highlighting </%ONCE> <%init> my $local_params={%$params}; $local_params->{p}=1; delete $local_params->{search_by} if exists $local_params->{search_by}; delete $local_params->{search} if exists $local_params->{search}; # ЕУМЙ !$href Й ЖБКМ УФТБОЙГЩ ОЕ СЧМСЕФУС DirectoryIndex, ОБРТ: # .../../gallery.html. Б УУЩМЛБ Ч ОЕН ПФОПУЙФЕМШОБС, ОБРТ: <a href="?param=1">, # ФП IE РЕТЕКДЕФ ОБ .../../gallery.html?param=1., Б NN (4.x) РЕТЕКДЕФ ОБ # .../../?param=1.., УМЕДХАЭЙК ВМПЛ ЧЩФБЭЙФ Й РПДУФБЧЙФ ОХЦОПЕ ЙНС ЖБКМБ. if (!$href) { $href = $r->uri(); $href =~ s/\/([\w]{1,}(\.[sp]?html?))//; $href = $1; if ($href =~ /(index|default|main)$2/ ){ $href = ''; } } my @parts=(); foreach my $pn (@digits) { $local_params->{alpha} = $pn; push @parts, ($pn eq $alpha) ? $pn : "<a href=\"$href?".join('&', map { "$_=$local_params->{$_}" } keys %$local_params)."\">$pn</a>"; } my $DIGITS_LINE=join($delimiter,@parts); @parts=(); foreach my $pn (@en_alpha) { $local_params->{alpha} = $pn; push @parts, ($pn eq $alpha) ? $pn : "<a href=\"$href?".join('&', map { "$_=$local_params->{$_}" } keys %$local_params)."\">$pn</a>"; } my $EN_ALPHA_LINE=join($delimiter,@parts); @parts=(); foreach my $pn (@ru_alpha) { $local_params->{alpha} = $pn; push @parts, ($pn eq $alpha) ? $pn : "<a href=\"$href?".join('&', map { "$_=".$m->interp->apply_escapes($local_params->{$_}, 'u') } keys %$local_params)."\">$pn</a>"; } my $RU_ALPHA_LINE=join($delimiter,@parts); </%init> <%doc> уФБОДБТФОБС БМЖБЧЙФОБС МЙОЕЕЮЛБ </%doc>