Fix the WikiPage title auto fill-in by using a Moose builder method that can be overridden by child classes.

This commit is contained in:
Colin Kuskie 2011-11-24 10:31:10 -08:00
parent ce15690523
commit e4de128f76
2 changed files with 15 additions and 1 deletions

View file

@ -33,8 +33,14 @@ property title => (
label => ['99','Asset'],
hoverHelp => ['99 description','Asset'],
fieldType => 'text',
default => 'Untitled',
builder => '_default_title',
lazy => 1,
);
sub _default_title {
return 'Untitled';
}
around title => sub {
my $orig = shift;
my $self = shift;

View file

@ -51,6 +51,12 @@ property isFeatured => (
noFormPost => 1,
);
override _default_title => sub {
my $self = shift;
my $title = $self->session->form->get('title') || super();
return $title;
};
with 'WebGUI::Role::Asset::AlwaysHidden';
with 'WebGUI::Role::Asset::Subscribable';
with 'WebGUI::Role::Asset::Comments';
@ -193,6 +199,8 @@ sub getEditTemplate {
protectQuestionLabel => $i18n->get("protectQuestionLabel"),
isProtected => $self->isProtected
};
$session->log->warn("title form variable". $form->get('title', 'text'));
$session->log->warn("title form element". $var->{formTitle});
my $children = [];
if ($self->getId eq "new") {
$var->{formHeader} .= WebGUI::Form::hidden($session, { name=>"assetId", value=>"new" })