[yast-commit] r48419 - /trunk/users/src/UsersCache.pm
Author: jsuchome Date: Thu Jun 19 12:38:49 2008 New Revision: 48419 URL: http://svn.opensuse.org/viewcvs/yast?rev=48419&view=rev Log: add spaces before uid/gid parts of table items so the sorting looks better (bnc#399215) Modified: trunk/users/src/UsersCache.pm Modified: trunk/users/src/UsersCache.pm URL: http://svn.opensuse.org/viewcvs/yast/trunk/users/src/UsersCache.pm?rev=48419&r1=48418&r2=48419&view=diff ============================================================================== --- trunk/users/src/UsersCache.pm (original) +++ trunk/users/src/UsersCache.pm Thu Jun 19 12:38:49 2008 @@ -1,4 +1,3 @@ -#! /usr/bin/perl -w # # UsersCache module written in Perl # @@ -94,6 +93,9 @@ my $customized_usersview = 1; my $customized_groupsview = 1; +# the length of UID/GID string item +my $uid_length = 6; + # the final answer ;-) my $the_answer = 42; @@ -694,13 +696,32 @@ $group_type = $_[0]; } +# Add spaces before the text to make it long enough. +# Used for creating UID/GID items with same length, so they can be sorted +# "as integers" (bnc#399215). +sub PadBefore { + + my $text = shift; + $text = "" if !defined $text; + + my $rest = $uid_length - length ($text); + my $pad = ""; + + while ($rest > 0) { + $pad = $pad." "; + $rest = $rest - 1; + } + return $pad.$text; +} + + ##------------------------------------ # build item for one user sub BuildUserItem { my $self = shift; my %user = %{$_[0]}; - my $uid = $user{"uidnumber"}; + my $uid = PadBefore ($user{"uidnumber"}); my $username = $user{"uid"} || ""; my $full = $user{"cn"} || ""; if (defined $user{"gecos"} && $user{"gecos"} ne "") { @@ -769,7 +790,7 @@ my $self = shift; my %group = %{$_[0]}; - my $gid = $group{"gidnumber"}; + my $gid = PadBefore ($group{"gidnumber"}); my $groupname = $group{"cn"} || ""; my %userlist = (); -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org
participants (1)
-
jsuchome@svn.opensuse.org