r8684@llin: dpavlin | 2005-10-25 10:42:58 +0200
authordpavlin <dpavlin@8392b6e1-25fa-0310-8288-cc32f8e212ea>
Tue, 25 Oct 2005 09:30:51 +0000 (09:30 +0000)
committerdpavlin <dpavlin@8392b6e1-25fa-0310-8288-cc32f8e212ea>
Tue, 25 Oct 2005 09:30:51 +0000 (09:30 +0000)
 added unicode arrows to show sort order, cleanup sort_header a bit

git-svn-id: svn+ssh://llin/home/dpavlin/private/svn/BackupPC/trunk@229 8392b6e1-25fa-0310-8288-cc32f8e212ea

lib/BackupPC/SearchLib.pm

index b07213c..edf4860 100644 (file)
@@ -918,20 +918,35 @@ sub displayGrid($) {
        sub sort_header($$$$) {
                my ($param, $display, $name, $align) = @_;
 
-               my ($sort_what, $sort_dir) = split(/_/,$param->{'sort'},2);
+               my ($sort_what, $sort_direction) = split(/_/,$param->{'sort'},2);
 
                my $old_sort = $param->{'sort'};
 
                my $html = qq{<td align="$align"};
+               my $arrow = '';
+
                if (lc($sort_what) eq lc($name)) {
-                       my $dir = lc($sort_dir);
-                       $dir =~ tr/ad/da/;
-                       $param->{'sort'} = $name . '_' . $dir;
+                       my $direction = lc($sort_direction);
+
+                       # swap direction or fallback to default
+                       $direction =~ tr/ad/da/;
+                       $direction = 'a' unless ($direction =~ /[ad]/);
+
+                       $param->{'sort'} = $name . '_' . $direction;
                        $html .= ' style="border: 1px solid #808080;"';
+               
+                       # add unicode arrow for direction
+                       $arrow .= '&nbsp;';
+                       $arrow .= $direction eq 'a'  ?  '&#9650;'
+                               : $direction eq 'd'  ?  '&#9660;'
+                               :                       ''
+                               ;
+
                } else {
                        $param->{'sort'} = $name . '_a';
                }
-               $html .= '><a href="' . page_uri($param) . '">' . $display . '</a></td>';
+
+               $html .= '><a href="' . page_uri($param) . '">' . $display . '</a>' . $arrow . '</td>';
                $param->{'sort'} = $old_sort;
 
                return $html;