Apache-SWIT
view release on metacpan or search on metacpan
t/T/DBPage.pm view on Meta::CPAN
use strict;
use warnings FATAL => 'all';
package T::DBPage::DB;
use base 'Apache::SWIT::DB::Base';
__PACKAGE__->set_up_table('dbp');
package T::DBPage;
use base 'Apache::SWIT::HTPage';
use HTML::Tested qw(HTV HT);
sub swit_startup {
my $rc = shift()->ht_make_root_class('HTML::Tested::ClassDBI');
$rc->ht_add_widget(HTV."::Hidden", id => cdbi_bind => 'Primary');
$rc->ht_add_widget(HTV."::EditBox", val => cdbi_bind => '');
$rc->ht_add_widget(HTV."::DropDown", 'sel');
$rc->ht_add_widget(HTV."::Marked", dt => is_datetime => 1);
$rc->bind_to_class_dbi("T::DBPage::DB");
my $c = $rc->ht_add_widget(HT."::List", 'arr')->containee;
$c->ht_add_widget(HTV."::Marked", "val");
}
sub ht_swit_render {
my ($class, $r, $root) = @_;
$root->cdbi_load;
$root->arr([ $root->arr_containee->new({ val => $root->val }) ]);
$root->sel([ [ 1, $root->val || "ded" ], [ 2, 'baba', 1 ] ]);
$root->dt(DateTime->now);
return $root;
}
sub ht_swit_update {
my ($class, $r, $root) = @_;
$root->cdbi_create_or_update;
return $root->ht_make_query_string("r", "id");
}
1;
( run in 2.143 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )