migrate IOB selectDelegates to FormBuilder
This commit is contained in:
parent
ed718c1891
commit
603ad39e3b
2 changed files with 44 additions and 19 deletions
|
|
@ -352,26 +352,24 @@ sub www_selectDelegates {
|
|||
$self->session->db->quote($self->session->user->userId), $self->session->db->quote($self->getId);
|
||||
my $delegates = $self->session->db->buildArrayRef($sql);
|
||||
my $i18n = WebGUI::International->new($self->session,"Asset_InOutBoard");
|
||||
my $f = WebGUI::HTMLForm->new($self->session,-action=>$self->getUrl);
|
||||
$f->hidden(
|
||||
-name => "func",
|
||||
-value => "selectDelegatesEditSave"
|
||||
my $f = WebGUI::FormBuilder->new($self->session,action=>$self->getUrl);
|
||||
$f->addField( "hidden",
|
||||
name => "func",
|
||||
value => "selectDelegatesEditSave"
|
||||
);
|
||||
$f->selectList(
|
||||
-name => "delegates",
|
||||
-label => $i18n->get('in/out status delegates'),
|
||||
-hoverHelp => $i18n->get('in/out status delegates description','Asset_InOutBoard'),
|
||||
-options => \%userNames,
|
||||
-multiple => 1, ##Multiple select
|
||||
-size => 10, ##Multiple select
|
||||
-sortByValue => 1,
|
||||
-value => $delegates, ##My current delegates, if any
|
||||
-subtext => $i18n->get('in/out status delegates subtext'),
|
||||
$f->addField( "selectList",
|
||||
name => "delegates",
|
||||
label => $i18n->get('in/out status delegates'),
|
||||
hoverHelp => $i18n->get('in/out status delegates description','Asset_InOutBoard'),
|
||||
options => \%userNames,
|
||||
multiple => 1, ##Multiple select
|
||||
size => 10, ##Multiple select
|
||||
sortByValue => 1,
|
||||
value => $delegates, ##My current delegates, if any
|
||||
subtext => $i18n->get('in/out status delegates subtext'),
|
||||
);
|
||||
$f->submit;
|
||||
my $ac = $self->getAdminConsole;
|
||||
return $ac->render($f->print,
|
||||
$i18n->get('select delegate'));
|
||||
$f->addField( "submit", name => "submit" );
|
||||
return '<h1>' . $i18n->get('select delegate') . '</h1> ' . $f->toHtml;
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ use WebGUI::Test;
|
|||
use WebGUI::Test::MockAsset;
|
||||
use WebGUI::Test::Mechanize;
|
||||
use WebGUI::Session;
|
||||
use Test::More tests => 15; # increment this value for each test you create
|
||||
use Test::More tests => 19; # increment this value for each test you create
|
||||
use Test::Deep;
|
||||
use Data::Dumper;
|
||||
|
||||
|
|
@ -172,3 +172,30 @@ $count = $session->db->quickScalar('select count(*) from InOutBoard_status where
|
|||
is ($count, 0, 'purge: cleans up status table');
|
||||
$count = $session->db->quickScalar('select count(*) from InOutBoard_statusLog where assetId=?',[$boardId]);
|
||||
is ($count, 0, '... cleans up statusLog table');
|
||||
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# selectDelegates
|
||||
$board = WebGUI::Test->asset(
|
||||
className => 'WebGUI::Asset::Wobject::InOutBoard',
|
||||
inOutGroup => '7', # everyone
|
||||
);
|
||||
|
||||
my $mech = WebGUI::Test::Mechanize->new( config => WebGUI::Test->file );
|
||||
$mech->get_ok( '/' );
|
||||
$mech->session->user({ user => $users[0] });
|
||||
|
||||
$mech->get_ok( $board->getUrl( 'func=selectDelegates' ) );
|
||||
$mech->submit_form_ok({
|
||||
fields => {
|
||||
delegates => $users[1]->getId,
|
||||
},
|
||||
}, "add a delegate" );
|
||||
|
||||
my $hasDelegate = $session->db->quickScalar(
|
||||
"SELECT COUNT(*) FROM InOutBoard_delegates WHERE userId=? AND
|
||||
delegateUserId=? AND assetId=?",
|
||||
[ $users[0]->getId, $users[1]->getId, $board->getId ],
|
||||
);
|
||||
ok( $hasDelegate, "delegate saved in db" );
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue