From 37f392b4c849c4723b79a9f2f331561d79baaddf Mon Sep 17 00:00:00 2001 From: Doug Bell Date: Wed, 16 Feb 2011 17:11:11 -0600 Subject: [PATCH] migrate Wizard getForm to FormBuilder --- lib/WebGUI/Wizard.pm | 6 +-- lib/WebGUI/Wizard/HomePage.pm | 20 +++++---- lib/WebGUI/Wizard/Setup.pm | 81 ++++++++++++++++++----------------- t/Wizard.t | 6 +-- 4 files changed, 59 insertions(+), 54 deletions(-) diff --git a/lib/WebGUI/Wizard.pm b/lib/WebGUI/Wizard.pm index ca8feffdd..5f07f981d 100644 --- a/lib/WebGUI/Wizard.pm +++ b/lib/WebGUI/Wizard.pm @@ -18,7 +18,7 @@ WebGUI::Wizard -- Generate wizards # Show a form for the first step sub www_step1 { my ( $self ) = @_; - my $f = $self->getForm; # Get a WebGUI::HTMLForm + my $f = $self->getForm; # Get a WebGUI::FormBuilder $f->text( name => "user" ); return $f->print; } @@ -244,14 +244,14 @@ sub getCurrentStep { =head2 getForm ( [step] ) -Get a WebGUI::HTMLForm object for a given step, defaulting to the current step. +Get a WebGUI::FormBuilder object for a given step, defaulting to the current step. =cut sub getForm { my ( $self, $step ) = @_; $step ||= $self->getCurrentStep; - my $form = WebGUI::HTMLForm->new( $self->session, + my $form = WebGUI::FormBuilder->new( $self->session, action => $self->getStepUrl( $step ), ); return $form; diff --git a/lib/WebGUI/Wizard/HomePage.pm b/lib/WebGUI/Wizard/HomePage.pm index d7be561d4..936310553 100644 --- a/lib/WebGUI/Wizard/HomePage.pm +++ b/lib/WebGUI/Wizard/HomePage.pm @@ -188,17 +188,21 @@ sub www_pickStyle { $synopsis =~ s{(https?://\S+)}{$1}g; $synopsis = WebGUI::HTML::format( $synopsis ); - $f->raw( - '
' - . '
' + my $label = '' + . '
' . $style->getTitle . '
' + . '
' . $synopsis . '
' + ; + + $f->addField( "radio", + name => "styleTemplateId", + value => $style->getId, + subtext => $label, + rowClass => 'stylePicker' . $class, + extras => 'onclick="this.form.submit()"', ); } - $f->submit; - $output .= $f->print; + $output .= $f->toHtml; return $output . '
 
'; } diff --git a/lib/WebGUI/Wizard/Setup.pm b/lib/WebGUI/Wizard/Setup.pm index 503e9ad79..5baede6df 100644 --- a/lib/WebGUI/Wizard/Setup.pm +++ b/lib/WebGUI/Wizard/Setup.pm @@ -148,40 +148,40 @@ sub www_adminAccount { my $legend = $i18n->get('admin account'); my $u = WebGUI::User->new( $session, '3' ); my $f = $self->getForm; - $f->text( - -name => "username", - -value => $u->username, - -label => $i18n->get(50), - -hoverHelp => $i18n->get('50 setup description'), + $f->addField( "text", + name => "username", + value => $u->username, + label => $i18n->get(50), + hoverHelp => $i18n->get('50 setup description'), ); - $f->text( - -name => "identifier", - -value => "123qwe", - -label => $i18n->get(51), - -hoverHelp => $i18n->get('51 description'), - -subtext => '
(' . $i18n->get("password clear text") . ')
' + $f->addField( "text", + name => "identifier", + value => "123qwe", + label => $i18n->get(51), + hoverHelp => $i18n->get('51 description'), + subtext => '
(' . $i18n->get("password clear text") . ')
' ); - $f->email( - -name => "email", - -value => $u->get("email"), - -label => $i18n->get(56), - -hoverHelp => $i18n->get('56 description'), + $f->addField( "email", + name => "email", + value => $u->get("email"), + label => $i18n->get(56), + hoverHelp => $i18n->get('56 description'), ); - $f->timeZone( - -name => "timeZone", - -value => $u->get("timeZone"), - -label => $i18n->get( 'timezone', 'DateTime' ), - -hoverHelp => $i18n->get('timezone help'), + $f->addField( "timeZone", + name => "timeZone", + value => $u->get("timeZone"), + label => $i18n->get( 'timezone', 'DateTime' ), + hoverHelp => $i18n->get('timezone help'), ); - $f->selectBox( - -name => "language", - -value => $u->get("language"), - -label => $i18n->get('304'), - -hoverHelp => $i18n->get('language help'), - -options => $i18n->getLanguages(), + $f->addField( "selectBox", + name => "language", + value => $u->get("language"), + label => $i18n->get('304'), + hoverHelp => $i18n->get('language help'), + options => $i18n->getLanguages(), ); - $f->submit; - return '

' . $legend . '

' . $f->print; + $f->addField( "submit", name => "submit" ); + return '

' . $legend . '

' . $f->toHtml; } #---------------------------------------------------------------------------- @@ -252,26 +252,26 @@ sub www_companyInformation { my $output = '

' . $i18n->get('company information') . '

'; my $f = $self->getForm; - $f->text( + $f->addField( "text", name => "companyName", value => $session->setting->get("companyName"), label => $i18n->get(125), hoverHelp => $i18n->get('125 description'), ); - $f->email( + $f->addField( "email", name => "companyEmail", value => $session->setting->get("companyEmail"), label => $i18n->get(126), hoverHelp => $i18n->get('126 description'), ); - $f->url( + $f->addField( "url", name => "companyURL", value => $session->setting->get("companyURL"), label => $i18n->get(127), hoverHelp => $i18n->get('127 description'), ); - $f->submit; - $output .= $f->print; + $f->addField( "submit", name => "submit" ); + $output .= $f->toHtml; return $output; } @@ -310,18 +310,18 @@ sub www_siteStats { my $i18n = WebGUI::International->new( $session, "WebGUI" ); my $enableForm = $self->getForm; - $enableForm->hidden( name => "enableStats", value => 1 ); - $enableForm->submit( value => $i18n->get( 'enable', 'Activity_SendWebguiStats' ) ); + $enableForm->addField( "hidden", name => "enableStats", value => 1 ); + $enableForm->addField( "submit", name => 'submit', value => $i18n->get( 'enable', 'Activity_SendWebguiStats' ) ); my $disableForm = $self->getForm; - $disableForm->hidden( name => "enableStats", value => 0 ); - $disableForm->submit( value => $i18n->get( 'disable', 'Activity_SendWebguiStats' ) ); + $disableForm->addField( "hidden", name => "enableStats", value => 0 ); + $disableForm->addField( "submit", name => 'submit', value => $i18n->get( 'disable', 'Activity_SendWebguiStats' ) ); my $output = '

' . $i18n->get( 'topicName', 'Activity_SendWebguiStats' ) . '

'; $output .= '

' . $i18n->get( 'why to send', 'Activity_SendWebguiStats' ) . '

' . $i18n->get( 'would you participate', 'Activity_SendWebguiStats' ) . '

-
' . $enableForm->print . '
' - . $disableForm->print +
' . $enableForm->toHtml . '
' + . $disableForm->toHtml . '
' . '
 
' ; @@ -341,6 +341,7 @@ sub www_siteStatsSave { my ( $self ) = @_; my $session = $self->session; my $form = $session->form; + use WebGUI::Operation::Statistics; WebGUI::Operation::Statistics::www_enableSendWebguiStats($session) if ( $form->get("enableStats") ); return; } diff --git a/t/Wizard.t b/t/Wizard.t index 47dccb693..b9da7cca1 100644 --- a/t/Wizard.t +++ b/t/Wizard.t @@ -50,12 +50,12 @@ is( $wizard->getCurrentStep, "one", "SetCurrentStep" ); # Form Start and End my $f = $wizard->getForm; -isa_ok( $f, 'WebGUI::HTMLForm' ); -my $html = $f->print; +isa_ok( $f, 'WebGUI::FormBuilder' ); +my $html = $f->toHtml; like( $html, qr/wizard_class.+WebGUI::Wizard/, 'getFormStart wizard_class' ); like( $html, qr/wizard_step.+one/, 'getFormStart wizard_step' ); -$html = $wizard->getForm( "two" )->print; +$html = $wizard->getForm( "two" )->toHtml; like( $html, qr/wizard_step.+two/, 'getFormStart wizard_step override step' ); #----------------------------------------------------------------------------