my
(
$r
) =
@_
;
$HTML::Embperl::DebugDefault
= 811005 ;
$tst1
=
'<P>Here is some text</P>'
;
$r
-> status (200) ;
$r
-> send_http_header () ;
print
"<HTML><TITLE>Test for HTML::Embperl::Execute</TITLE><BODY>\n"
;
print
"<H1> 1.) Include from memory</H1>\n"
;
HTML::Embperl::Execute ({
input
=> \
$tst1
,
mtime
=> 1,
inputfile
=>
'Some text'
,
req_rec
=>
$r
}) ;
print
"<H1> 2.) Include from memory with some Embperl code</H1>\n"
;
HTML::Embperl::Execute ({
input
=> \
'[- @ar = (a1, b2, c3) -]<table><tr><td>[+$ar[$col]+]</td></tr></table></P>'
,
mtime
=> 1,
inputfile
=>
'table'
,
req_rec
=>
$r
}) ;
print
"<H1> 3.) Include from memory with passing of variables</H1>\n"
;
$MyPackage::Interface::Var
=
'Some Var'
;
HTML::Embperl::Execute ({
input
=> \
'<P>Transfer some vars [+ $Var +] !</P>'
,
inputfile
=>
'Var'
,
mtime
=> 1,
'package'
=>
'MyPackage::Interface'
,
req_rec
=>
$r
}) ;
print
"<H1> 4.) Change the variable, but not the code</H1>\n"
;
$MyPackage::Interface::Var
=
'Do it again'
;
HTML::Embperl::Execute ({
input
=> \
'<P>Transfer some vars [+ $Var +] !</P>'
,
inputfile
=>
'Var2'
,
mtime
=> 1,
'package'
=>
'MyPackage::Interface'
,
req_rec
=>
$r
}) ;
print
"<H1> 5.) Use \@param to pass parameters</H1>\n"
;
HTML::Embperl::Execute ({
input
=> \
'<P>Use \@param to transfer some data ([+ " @param " +]) !</P>'
,
inputfile
=>
'Param'
,
req_rec
=>
$r
,
param
=> [1, 2, 3, 4] }
) ;
print
"<H1> 6.) Use \@param to pass parameters and return it</H1>\n"
;
my
@p
= (
'vara'
,
'varb'
) ;
print
"<H3> \$p[0] is $p[0] and \$p[1] is $p[1]<H3>"
;
HTML::Embperl::Execute ({
input
=> \
'<P>Got data in @param ([+ "@param" +]) !</P>[- $param[0] = "newA" ; $param[1] = "newB" ; -]<P>Change data in @param to ([+ "@param" +]) !</P>'
,
inputfile
=>
'Param & Return'
,
req_rec
=>
$r
,
param
=> \
@p
}
) ;
print
"<H3> \$p[0] is now $p[0] and \$p[1] is now $p[1]<H3>"
;
print
"<H1> 7.) Presetup \%fdat and \@ffld</H1>\n"
;
my
%myfdat
= (
'test'
=>
'value'
,
'fdat'
=>
'text'
) ;
my
@myffld
=
sort
keys
%myfdat
;
HTML::Embperl::Execute ({
input
=> \
'<P><table><tr><td>[+ $k = $ffld[$row] +]</td><td>[+ $fdat{$k} +]</td></tr></table></P>'
,
inputfile
=>
'fdat & ffld'
,
req_rec
=>
$r
,
fdat
=> \
%myfdat
,
ffld
=> \
@myffld
}
) ;
print
"<H1> 8.) Inculde a file</H1>\n"
;
HTML::Embperl::Execute ({
inputfile
=>
'../inc.htm'
,
req_rec
=>
$r
}) ;
print
"<H1> 9.) Inculde a file and return output in a scalar</H1>\n"
;
my
$out
;
HTML::Embperl::Execute ({
inputfile
=>
'../inc.htm'
,
output
=> \
$out
,
req_rec
=>
$r
}) ;
print
"<H3>$out</H3>\n"
;
print
"<H1> 10.) Done :-)</H1>\n"
;
print
"</body></html>\n"
;