package Module; use Contize; use Template; use Carp; sub new { my $proto = shift; my $class = ref($proto) || $proto; my $self = {}; bless $self, $class; $self = new Contize($self); return $self; } sub display { my ($self, $content) = @_; print $content; $self->suspend; } sub disp { my ($self, $content) = @_; $self->display($content); my $form = $::q->Vars(); return $form; } sub dispTemplate { my ($self, $file, %params) = @_; my $tpl = new Template($file); foreach my $name (keys %params) { $tpl->set($name => $params{$name}); } my $content = $tpl->render(); # This copies the result instead of returning the same ref my $f = { %{$self->disp($content)} }; return $f; } 1;