They don't have a value yet and cannot be edited.
Signed-off-by: Francois Gouget fgouget@codeweavers.com --- testbot/lib/ObjectModel/CGI/ItemPage.pm | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/testbot/lib/ObjectModel/CGI/ItemPage.pm b/testbot/lib/ObjectModel/CGI/ItemPage.pm index 940115475f..a178aa6e09 100644 --- a/testbot/lib/ObjectModel/CGI/ItemPage.pm +++ b/testbot/lib/ObjectModel/CGI/ItemPage.pm @@ -99,13 +99,16 @@ sub DisplayProperty($$) my ($self, $PropertyDescriptor) = @_;
my $Display = $self->SUPER::DisplayProperty($PropertyDescriptor); - if ($Display eq "rw" && ! $self->{Item}->GetIsNew() && - $PropertyDescriptor->GetIsKey()) - { - $Display = ""; - } - - return $Display; + return # Don't show autoincrement fields of new items: they don't have a + # value yet and cannot be edited anyway so there is no point. + ($PropertyDescriptor->GetClass() eq "Basic" and + $PropertyDescriptor->GetType() eq "S" and + $self->{Item}->GetIsNew()) ? "" : + # Don't allow editing key attributes of existing items. Furthermore + # the item is identified in the page title so hide them altogether. + ($PropertyDescriptor->GetIsKey() and !$self->{Item}->GetIsNew() and + $Display eq "rw") ? "" : + $Display; }
sub GetActions($)