migrate Product www_editFeature to FormBuilder
This commit is contained in:
parent
eda2756d76
commit
f157ddfe58
2 changed files with 72 additions and 19 deletions
|
|
@ -1237,28 +1237,28 @@ sub www_editFeature {
|
||||||
return $self->session->privilege->insufficient() unless ($self->canEdit);
|
return $self->session->privilege->insufficient() unless ($self->canEdit);
|
||||||
my $data = $self->getCollateral('featureJSON', 'featureId', $fid);
|
my $data = $self->getCollateral('featureJSON', 'featureId', $fid);
|
||||||
my $i18n = WebGUI::International->new($self->session,'Asset_Product');
|
my $i18n = WebGUI::International->new($self->session,'Asset_Product');
|
||||||
my $f = WebGUI::HTMLForm->new($self->session,-action=>$self->getUrl);
|
my $f = WebGUI::FormBuilder->new($self->session,action=>$self->getUrl);
|
||||||
$f->hidden(
|
$f->addField( "hidden",
|
||||||
-name => 'fid',
|
name => 'fid',
|
||||||
-value => $fid,
|
value => $fid,
|
||||||
);
|
);
|
||||||
$f->hidden(
|
$f->addField( "hidden",
|
||||||
-name => 'func',
|
name => 'func',
|
||||||
-value => 'editFeatureSave',
|
value => 'editFeatureSave',
|
||||||
);
|
);
|
||||||
$f->text(
|
$f->addField( "text",
|
||||||
-name => 'feature',
|
name => 'feature',
|
||||||
-label => $i18n->get(23),
|
label => $i18n->get(23),
|
||||||
-hoverHelp => $i18n->get('23 description'),
|
hoverHelp => $i18n->get('23 description'),
|
||||||
-value => $data->{feature},
|
value => $data->{feature},
|
||||||
);
|
);
|
||||||
$f->yesNo(
|
$f->addField( "yesNo",
|
||||||
-name => 'proceed',
|
name => 'proceed',
|
||||||
-label => $i18n->get(24),
|
label => $i18n->get(24),
|
||||||
-hoverHelp => $i18n->get('24 description'),
|
hoverHelp => $i18n->get('24 description'),
|
||||||
);
|
);
|
||||||
$f->submit;
|
$f->addField( "submit", name => "submit" );
|
||||||
return $self->getAdminConsole->render($f->print, 'product feature add/edit');
|
return $f->toHtml;
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------
|
#-------------------------------------------------------------------
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ my $session = WebGUI::Test->session;
|
||||||
#----------------------------------------------------------------------------
|
#----------------------------------------------------------------------------
|
||||||
# Tests
|
# Tests
|
||||||
|
|
||||||
plan tests => 40; # Increment this number for each test you create
|
plan tests => 49; # Increment this number for each test you create
|
||||||
|
|
||||||
#----------------------------------------------------------------------------
|
#----------------------------------------------------------------------------
|
||||||
# put your tests here
|
# put your tests here
|
||||||
|
|
@ -296,3 +296,56 @@ cmp_deeply(
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# editFeature
|
||||||
|
my $mech = WebGUI::Test::Mechanize->new( config => WebGUI::Test->file );
|
||||||
|
$mech->get_ok( '/' );
|
||||||
|
$mech->session->user({ userId => 3 });
|
||||||
|
$mech->get_ok( $product->getUrl( 'func=editFeature' ) );
|
||||||
|
|
||||||
|
$mech->submit_form_ok({
|
||||||
|
fields => {
|
||||||
|
feature => 'One new feature',
|
||||||
|
proceed => 1,
|
||||||
|
},
|
||||||
|
}, 'add one new feature');
|
||||||
|
|
||||||
|
$product = $product->cloneFromDb;
|
||||||
|
cmp_deeply(
|
||||||
|
$product->getAllCollateral( 'featureJSON' ),
|
||||||
|
[ { feature => 'One new feature', featureId => ignore() } ],
|
||||||
|
);
|
||||||
|
|
||||||
|
$mech->submit_form_ok({
|
||||||
|
fields => {
|
||||||
|
feature => 'Two new feature',
|
||||||
|
proceed => 0,
|
||||||
|
},
|
||||||
|
}, 'add one more new feature' );
|
||||||
|
|
||||||
|
$product = $product->cloneFromDb;
|
||||||
|
cmp_deeply(
|
||||||
|
$product->getAllCollateral( 'featureJSON' ),
|
||||||
|
[
|
||||||
|
{ feature => 'One new feature', featureId => ignore() },
|
||||||
|
{ feature => 'Two new feature', featureId => ignore() },
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
my $feature = $product->getAllCollateral( 'featureJSON' )->[0];
|
||||||
|
$mech->get_ok( $product->getUrl( 'func=editFeature;fid=' . $feature->{featureId} ) );
|
||||||
|
|
||||||
|
$mech->submit_form_ok( {
|
||||||
|
fields => {
|
||||||
|
feature => 'One edited feature',
|
||||||
|
},
|
||||||
|
}, 'edit an existing feature' );
|
||||||
|
$product = $product->cloneFromDb;
|
||||||
|
cmp_deeply(
|
||||||
|
$product->getAllCollateral( 'featureJSON' ),
|
||||||
|
[
|
||||||
|
{ feature => 'One edited feature', featureId => ignore() },
|
||||||
|
{ feature => 'Two new feature', featureId => ignore() },
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue