You are viewing a plain text version of this content. The canonical link for it is here.
Posted to embperl-cvs@perl.apache.org by ri...@apache.org on 2002/10/22 07:45:23 UTC

cvs commit: embperl/test/html2 asp.htm binary.htm callsub.htm changeattr.htm chdir.htm clearsess.htm crypto.htm delrdsess.htm delsess.htm delwrsess.htm discard.htm div.htm errmsg.htm errmsg2.htm error.htm errormismatch.htm errormismatchcmd.htm escape.htm escraw.htm execfirst.htm execgetsess.htm execnotfound.htm execprint.htm execsecond.htm executesub.htm execviamod.htm exit.htm exit2.htm exit3.htm exitcomp.htm exitreq.htm exitsub.htm getbsess.htm getdelsess.htm getnosess.htm getsess.htm heredoc.htm hidden.htm hostconfig.htm http.htm if.htm ifperl.htm importmodule.htm importsub.htm importsub2.htm inc.htm incerr.htm incif.htm include.htm includeerr1.htm includeerr2.htm includeerrbt.htm incparam.htm incperl.htm incsub.htm inctext.htm incxmlLibXSLT.htm incxmlXalanXSLT.htm input.htm inputdisable.htm inputjava.htm inputjs2.htm java.htm keepreq.htm lists.htm loop.htm loopperl.htm mail.htm mailformto.htm mdatsess.htm mix.htm nesting.htm nooutput.htm object.htm plain.htm plainblock.htm post.htm pure.htm recursexec.htm reqrec.htm setbadsess.htm setsess.htm setunknownsess.htm spaces.htm sub.htm subexec.htm subimp.htm subtab.htm subtextarea.htm syntax.htm table.htm tabmode.htm tagintag.htm tagscan.htm tagscandisable.htm taint.htm unclosed.htm upload.htm var.htm varepvar.htm varerr.htm

richter     2002/10/21 22:45:23

  Added:       .        Doxyfile README.v2
               driver   epcurl.c eplibxslt.MAKEPL eplibxslt.c
                        epxalan.MAKEPL epxalan.cpp
               eg/images back-expander.gif but.gif frame.jpg h_content.gif
                        h_current-v.gif h_news.gif hintergrund-nav.gif
                        i-nav-over.gif i-sub-off.gif i-sub-on.gif
                        i-sub-open.gif i-sub-over.gif kopf-links.gif
                        kopf-mitte.jpg kopf-rechts-deutsch.jpg
                        kopf-rechts-engl.jpg linie-nav.gif linie-news.gif
                        transp.gif
               podsrc   Config.spod s2pod.pl
               test/cmp2 Execute.htm allform.htm asp.htm binary.htm
                        callsub.htm changeattr.htm chdir.htm clearsess.htm
                        crypto.htm delrdsess.htm delsess.htm delwrsess.htm
                        discard.htm div.htm epobase.htm epobaselib.htm
                        epobless.htm epobless2.htm epobless3.htm epodiv.htm
                        epoincdiv.htm eponotfound.htm epoobj1.htm
                        epoobj2.htm epoobj3.htm epoobj4.htm epopage1.htm
                        epopage2.htm epostopdir.htm eposubsub.htm
                        eposubsub2.htm errdoc.htm errdoc2.htm error.htm
                        errormismatch.htm errormismatchcmd.htm errpage.htm
                        escape.htm escraw.htm execfirst.htm execgetsess.htm
                        execnotfound.htm execprint.htm execsecond.htm
                        executesub.htm execviamod.htm exit.htm exit2.htm
                        exit3.htm exitcomp.htm exitreq.htm getbsess.htm
                        getdelsess.htm getnosess.htm getnourlsess.htm
                        getsdaturlsess.htm getsess.htm geturlsess.htm
                        heredoc.htm hidden.htm hostconfig.htm http.htm
                        i18n.htm if.htm ifperl.htm importmodule.htm
                        importsub.htm importsub2.htm incif.htm include.htm
                        includeerr1.htm includeerr2.htm includeerrbt.htm
                        incperl.htm inctext.htm incxmlLibXSLT.htm
                        incxmlXalanXSLT.htm input.htm inputjava.htm
                        inputjs2.htm java.htm keepreq.htm lists.htm
                        loop.htm loopperl.htm mail.htm mailformto.htm
                        mdatsess.htm mix.htm nesting.htm nochdir.htm
                        noerrpage.htm nooutput.htm npherr.htm nphinc.htm
                        object.htm opmask.htm opmasktrap.htm plain.htm
                        plainblock.htm pod.asc.htm pod.asc.xalan.htm
                        post.htm pure.htm rawinput.htm recursexec.htm
                        reggetsess.htm reqrec.htm safe.htm setbadsess.htm
                        setsdaturlsess.htm setsess.htm setunknownsess.htm
                        seturlsess.htm spaces.htm ssibasic.htm ssiep.htm
                        stdout.htm sub.htm subtab.htm subtextarea.htm
                        syntax.htm table.htm tabmode.htm tagintag.htm
                        tagscan.htm tagscandisable.htm taint.htm tied.htm
                        unclosed.htm upload.htm var.htm varepvar.htm
                        varerr.htm
               test/html2 asp.htm binary.htm callsub.htm changeattr.htm
                        chdir.htm clearsess.htm crypto.htm delrdsess.htm
                        delsess.htm delwrsess.htm discard.htm div.htm
                        errmsg.htm errmsg2.htm error.htm errormismatch.htm
                        errormismatchcmd.htm escape.htm escraw.htm
                        execfirst.htm execgetsess.htm execnotfound.htm
                        execprint.htm execsecond.htm executesub.htm
                        execviamod.htm exit.htm exit2.htm exit3.htm
                        exitcomp.htm exitreq.htm exitsub.htm getbsess.htm
                        getdelsess.htm getnosess.htm getsess.htm
                        heredoc.htm hidden.htm hostconfig.htm http.htm
                        if.htm ifperl.htm importmodule.htm importsub.htm
                        importsub2.htm inc.htm incerr.htm incif.htm
                        include.htm includeerr1.htm includeerr2.htm
                        includeerrbt.htm incparam.htm incperl.htm
                        incsub.htm inctext.htm incxmlLibXSLT.htm
                        incxmlXalanXSLT.htm input.htm inputdisable.htm
                        inputjava.htm inputjs2.htm java.htm keepreq.htm
                        lists.htm loop.htm loopperl.htm mail.htm
                        mailformto.htm mdatsess.htm mix.htm nesting.htm
                        nooutput.htm object.htm plain.htm plainblock.htm
                        post.htm pure.htm recursexec.htm reqrec.htm
                        setbadsess.htm setsess.htm setunknownsess.htm
                        spaces.htm sub.htm subexec.htm subimp.htm
                        subtab.htm subtextarea.htm syntax.htm table.htm
                        tabmode.htm tagintag.htm tagscan.htm
                        tagscandisable.htm taint.htm unclosed.htm
                        upload.htm var.htm varepvar.htm varerr.htm
  Log:
  move Embperl 2 to HEAD revision
  
  Revision  Changes    Path
  1.2       +823 -0    embperl/Doxyfile
  
  
  
  
  1.2       +872 -0    embperl/README.v2
  
  
  
  
  1.2       +288 -0    embperl/driver/epcurl.c
  
  
  
  
  1.2       +174 -0    embperl/driver/eplibxslt.MAKEPL
  
  
  
  
  1.2       +1198 -0   embperl/driver/eplibxslt.c
  
  
  
  
  1.2       +147 -0    embperl/driver/epxalan.MAKEPL
  
  
  
  
  1.2       +1133 -0   embperl/driver/epxalan.cpp
  
  
  
  
  1.2       +1 -0      embperl/eg/images/back-expander.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      embperl/eg/images/but.gif
  
  	<<Binary file>>
  
  
  1.2       +6 -0      embperl/eg/images/frame.jpg
  
  	<<Binary file>>
  
  
  1.2       +6 -0      embperl/eg/images/h_content.gif
  
  	<<Binary file>>
  
  
  1.2       +7 -0      embperl/eg/images/h_current-v.gif
  
  	<<Binary file>>
  
  
  1.2       +4 -0      embperl/eg/images/h_news.gif
  
  	<<Binary file>>
  
  
  1.2       +5 -0      embperl/eg/images/hintergrund-nav.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      embperl/eg/images/i-nav-over.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      embperl/eg/images/i-sub-off.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      embperl/eg/images/i-sub-on.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      embperl/eg/images/i-sub-open.gif
  
  	<<Binary file>>
  
  
  1.2       +2 -0      embperl/eg/images/i-sub-over.gif
  
  	<<Binary file>>
  
  
  1.2       +50 -0     embperl/eg/images/kopf-links.gif
  
  	<<Binary file>>
  
  
  1.2       +6 -0      embperl/eg/images/kopf-mitte.jpg
  
  	<<Binary file>>
  
  
  1.2       +47 -0     embperl/eg/images/kopf-rechts-deutsch.jpg
  
  	<<Binary file>>
  
  
  1.2       +38 -0     embperl/eg/images/kopf-rechts-engl.jpg
  
  	<<Binary file>>
  
  
  1.2       +2 -0      embperl/eg/images/linie-nav.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      embperl/eg/images/linie-news.gif
  
  	<<Binary file>>
  
  
  1.2       +1 -0      embperl/eg/images/transp.gif
  
  	<<Binary file>>
  
  
  1.2       +1496 -0   embperl/podsrc/Config.spod
  
  
  
  
  1.2       +46 -0     embperl/podsrc/s2pod.pl
  
  
  
  
  1.1                  embperl/test/cmp2/Execute.htm
  
  Index: Execute.htm
  ===================================================================
  <HTML><TITLE>Test for Embperl::Execute</TITLE><BODY>
  <H1> 1.) Include from memory</H1>
  <P>Here is some text</P>
  <H1> 2.) Include from memory with some Embperl code</H1>
  ^<table> ?<tr> ?<td>a1</td> ?<td>b2</td> ?<td>c3</td> ?</tr> ?</table> ?</P>
  <H1> 3.) Include from memory with passing of variables</H1>
  <P>Transfer some vars Some Var !</P>
  <H1> 4.) Change the variable, but not the code</H1>
  <P>Transfer some vars Do it again !</P>
  <H1> 5.) Use @param to pass parameters</H1>
  <P>Use @param to transfer some data (1 2 3 4) !</P>
  <H1> 6.) Use @param to pass parameters and return it</H1>
  <H3> $p[0] is vara and $p[1] is varb<H3><P>Got data in @param (vara varb) !</P><P>Change data in @param to (newA newB) !</P>
  <H3> $p[0] is now newA and $p[1] is now newB<H3><H1> 7.) Presetup %fdat and @ffld</H1>
  <P><table><tr><td>fdat</td><td>text</td></tr><tr><td>test</td><td>value</td></tr></table></P>
  <H1> 8.) Inculde a file</H1>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined at the first include and
  apear at the second include:
  <P>
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  SELECT *  FROM a ORDER BY b USING &lt;; Hi There&gt;
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  SELECT * FROM a ORDER BY b USING &lt;; Hi There&gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  <P>Ok.<P>
  
  
  <H1> 9.) Inculde a file and return output in a scalar</H1>
  <H3>
  Here it starts with some HTML Text<P>
  
  All values should be undefined at the first include and
  apear at the second include:
  <P>
  
  $a = <BR>
  $b = <BR>
  $c = <BR>
  $d = <BR>
  $e = <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  SELECT *  FROM a ORDER BY b USING &lt;; Hi There&gt;
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  SELECT * FROM a ORDER BY b USING &lt;; Hi There&gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  <P>Ok.<P>
  
  
  </H3>
  <H1> 10.) Done :-)</H1>
  </body></html>
  
  
  
  1.1                  embperl/test/cmp2/allform.htm
  
  Index: allform.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - optAllFormData</title>
  </head>
  
  
  <body>
  
  
  optAllFormData: 1 <BR>
  
  <table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	
  		<tr>
  			<td>b</td><td>2</td>
  		</tr>
  	
  		<tr>
  			<td>c</td><td></td>
  		</tr>
  	
  		<tr>
  			<td>d</td><td></td>
  		</tr>
  	
  		<tr>
  			<td>f</td><td>5</td>
  		</tr>
  	
  		<tr>
  			<td>h</td><td>7</td>
  		</tr>
  	</table>
  
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/asp.htm
  
  Index: asp.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - use ASP syntax</title>
  </head>
  
  <body>
  
  <table border=1>
      <tr>
              <td>1</td>
              <td>3</td>
          </tr>
      <tr>
              <td>2</td>
              <td>5</td>
          </tr>
      <tr>
              <td>3</td>
              <td>7</td>
          </tr>
      <tr>
              <td>4</td>
              <td>9</td>
          </tr>
      <tr>
              <td>5</td>
              <td>11</td>
          </tr>
      </table>
  
  <a href="11">
  <a href="p%25u%26g%3D%E4%F6%FC">
  <a p%u&amp;g=&auml;&ouml;&uuml; href="xxx">
  esc = p%u&amp;g=&auml;&ouml;&uuml;
  </body>
  </html>
  
  
  
  
  
  1.1                  embperl/test/cmp2/binary.htm
  
  	<<Binary file>>
  
  
  1.1                  embperl/test/cmp2/callsub.htm
  
  Index: callsub.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Embperl sub Metacommand</title>
  </head>
  
  
  <body>
  
  <h1>Tests for Embperl - Embperl sub Metacommand</h1>
  
  Now we call the first sub via Execute:
  
  
  *txt* 
  *txt* <h2>Here goes some normal html text <h2>
  *txt* 
  
  And now the second via Execute:
  
  
  *perl_code* 
  *perl_code* Here comes some perl:
  *perl_code* 
  *perl_code* *perl_code* 
  *perl_code* foo = Hello world<br>
  *perl_code* testdata = abcd<br>
  *perl_code* 
  
  Now we call the first sub via Perl:
  
  
  *txt* 
  *txt* <h2>Here goes some normal html text <h2>
  *txt* 
  And now the second via Perl:
  
  
  *perl_code* 
  *perl_code* Here comes some perl:
  *perl_code* 
  *perl_code* *perl_code* 
  *perl_code* foo = Hello world<br>
  *perl_code* testdata = abcd<br>
  *perl_code* 
  -> Second time, other order:
  
  And now the second via Perl:
  
  
  *perl_code* 
  *perl_code* Here comes some perl:
  *perl_code* 
  *perl_code* *perl_code* 
  *perl_code* foo = Hello world<br>
  *perl_code* testdata = abcd<br>
  *perl_code* 
  Now we call the first sub via Perl:
  
  
  *txt* 
  *txt* <h2>Here goes some normal html text <h2>
  *txt* 
  -> And Execute again, but other order
  
  And now the second via Execute:
  
  
  *perl_code* 
  *perl_code* Here comes some perl:
  *perl_code* 
  *perl_code* *perl_code* 
  *perl_code* foo = Hello world<br>
  *perl_code* testdata = abcd<br>
  *perl_code* 
  
  Now we call the first sub via Execute:
  
  
  *txt* 
  *txt* <h2>Here goes some normal html text <h2>
  *txt* 
  
  And done!
  
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/changeattr.htm
  
  Index: changeattr.htm
  ===================================================================
  
  <!-- 1 qq -->
  
  <qq href="**ab**12**">dairy</qq>
  
  <!-- 2 qq -->
  
  <qq href="**http://dairy milk**12**">dairy</qq>
  
  <!-- 1 a -->
  
  <a href="**ab**12**">dairy</a>
  
  <!-- 2 a -->
  
  <a href="**http://dairy milk**12**">dairy</a>
  
  
  <!-- foreach a -->
  
  <a href="**a**12**">XX</a>
  <a href="**b**12**">XX</a>
  <!-- if inside href -->
  
  <a href="**before http://dairy milk after **12**"> ooooh </a>
  
  <!-- end -->
  
  
  
  1.1                  embperl/test/cmp2/chdir.htm
  
  Index: chdir.htm
  ===================================================================
  <html>
  <head>
  <title>Some tests for Embperl</title>
  </head>
  
  
  <body>
  
  ^Script  CWD: 
  ^Embperl CWD: 
  ^\$0:
  ^\$0 \(absolut\):
  Equal: No<BR>
  ^Diff CWD:
  ^Diff \$0: 
  Test/html: yes
  
  <table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	
  		<tr>
  			<td>b</td><td>2</td>
  		</tr>
  	
  		<tr>
  			<td>f</td><td>5</td>
  		</tr>
  	
  		<tr>
  			<td>h</td><td>7</td>
  		</tr>
  	</table>
  
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/clearsess.htm
  
  Index: clearsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Clear Session Data</title>
  </head>
  
  
  <body>
  	</body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/crypto.htm
  
  Index: crypto.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <!-- Here is a comment -->
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  ARRAY @d =  num = 0 <BR>
  ARRAY @x =  num = 0 <BR>
  HASH  %a =  num = 0 <BR>
  HASH  %y =  num = 0 <BR>
  
  
  First of all assign a value:
  <BR>
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  ARRAY @d = 1 2 3 num = 3 <BR>
  ARRAY @x = 9 8 7 num = 3 <BR>
  HASH  %a = 1 2 3 a b c num = 3 <BR>
  HASH  %y = 7 8 9 x y z num = 3 <BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  SELECT *  FROM a ORDER BY b USING &lt;; Hi There&gt;
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  SELECT * FROM a ORDER BY b USING &lt;; Hi There&gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  Input Separator = 10<br>
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/delrdsess.htm
  
  Index: delrdsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Delete Session Data</title>
  </head>
  
  
  <body>
  
  	udat before:<br>
  	<table>
  		<tr>
  			<td>b</td><td>2</td>
  		</tr>
  	</table>
  
  	ok (num=1)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
      $udat{cnt} = -- <br>
  
  	udat after:<br>
  	<table></table>
  
  	ok (num=1)<p>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/delsess.htm
  
  Index: delsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Delete Session Data</title>
  </head>
  
  
  <body>
  
  	udat before:<br>
  	<table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	</table>
  
  	ok (num=1)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
      $udat{cnt} = -- <br>
  
  	</body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/delwrsess.htm
  
  Index: delwrsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Delete Session Data</title>
  </head>
  
  
  <body>
  
  	udat before:<br>
  	<table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	</table>
  
  	ok (num=1)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
      $udat{cnt} = -- <br>
  
  	udat after:<br>
  	<table></table>
  
  	ok (num=1)<p>
  
  	2	udat after write:<br>
  	<table>
  		<tr>
  			<td>b</td><td>2</td>
  		</tr>
  	</table>
  
  	ok (num=1)<p>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/discard.htm
  
  Index: discard.htm
  ===================================================================
  <HTML><HEAD><TITLE>Embperl Error</TITLE></HEAD><BODY bgcolor="#FFFFFF">
  <H1>Internal Server Error</H1>
  The server encountered an internal error or misconfiguration and was unable to complete your request.<P>
  ^Please contact the server administrator\,.*?and inform them of the time the error occurred\, and anything you might have done that may have caused the error\.<P><P>
  ^-\[.*?\]ERR\:  \d+\:  Warning in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^\[.*?\]ERR\:  \d+\:  Error in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^-\[.*?\]ERR\:  \d+\:  Warning in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^\[.*?\]ERR\:  \d+\:  Error in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^\[.*?\]ERR\:  \d+\:  Error in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^\[.*?\]ERR\:  \d+\:  Error in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^\[.*?\]ERR\:  \d+\:  Error in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^-\[.*?\]ERR\:  \d+\:  Warning in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^\[.*?\]ERR\:  \d+\:  Error in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^-\[.*?\]ERR\:  \d+\:  Warning in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^\[.*?\]ERR\:  \d+\:  Error in Perl code\: 	\(in cleanup\) Can't find string terminator '&quot;' anywhere before EOF at
  ^ HTML\:\:Embperl.*?<P>
  </BODY></HTML>
  
  
  
  
  
  1.1                  embperl/test/cmp2/div.htm
  
  Index: div.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  a <br>
  a <br>
  a <br>
      b is null <br>
      a <br>
      b is null <br>
      a<br>
      b is null <br>
      <table></table>
  
  
  <p> $tabmode = default <p>
  
  <hr><p>Display an two dimensional array with one, two and three columns !<BR>
  Please take a look at the source in your browser to see the difference<BR>
  
  $a[0][0] = '1/1' ;<BR>
     $a[1][0] = '2/1' ;<BR>
     $a[1][1] = '2/2' ;<BR>
     $a[2][0] = '3/1' ;<BR>
     $a[2][1] = '3/2' ;<BR>
     $a[2][2] = '3/3' ;<BR>
  
  <P>$tabmode = default <P>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table>
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a1/1 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/2 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/2 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/3 </td>
      </tr> 
  </table>
  
  ^<P>.*?<P>
  
  <P>17<P>
  <P>1<P>
  
  <P>
  
  <table>
      <tr>
              <td>ii[0] = 0 </td>
      </tr> 
  
      <tr>
              <td>ii[1] = 1 </td>
      </tr> 
  
      <tr>
              <td>ii[2] = 2 </td>
      </tr> 
  
      <tr>
              <td>ii[3] = 3 </td>
      </tr> 
  
      <tr>
              <td>ii[4] = 4 </td>
      </tr> 
  
      <tr>
              <td>ii[5] = 5 </td>
      </tr> 
  
      <tr>
              <td>ii[6] = 6 </td>
      </tr> 
  
      <tr>
              <td>ii[7] = 7 </td>
      </tr> 
  
      <tr>
              <td>ii[8] = 8 </td>
      </tr> 
  
      <tr>
              <td>ii[9] = 9 </td>
      </tr> 
  </table>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/cmp2/epobase.htm
  
  Index: epobase.htm
  ===================================================================
  <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
  <HTML><HEAD>
  <TITLE>403 Forbidden</TITLE>
  </HEAD><BODY>
  <H1>Forbidden</H1>
  ^.*?You don't have permission to access /embperl/EmbperlObject/epobase.htm
  ^on this server
  </BODY></HTML>
  
  
  
  
  
  1.1                  embperl/test/cmp2/epobaselib.htm
  
  Index: epobaselib.htm
  ===================================================================
   <html>
   <head>
   <title>Tests for Embperl - EmbperlObject - base 3 from lib</title>
   </head>
   <body>
    <h1>head from foo</h1>
  
   PAGE with base from lib
  
   PAGE from lib
  
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/epobless.htm
  
  Index: epobless.htm
  ===================================================================
   <html>
   <head>
   <title>Example</title>
   </head>
   <body>
    <h1>another head from sub</h1>
  
  
  txt1: txt1 from same dir <br>
  
  txt2: txt2 from base dir <br>
  
  
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.2       +30 -0     embperl/test/cmp2/epobless2.htm
  
  
  
  
  1.2       +21 -0     embperl/test/cmp2/epobless3.htm
  
  
  
  
  1.2       +462 -0    embperl/test/cmp2/epodiv.htm
  
  
  
  
  1.2       +469 -0    embperl/test/cmp2/epoincdiv.htm
  
  
  
  
  1.1                  embperl/test/cmp2/eponotfound.htm
  
  Index: eponotfound.htm
  ===================================================================
   <html>
   <head>
   <title>Example</title>
   </head>
   <body>
    <h1>another head from sub</h1>
  
   Fallback PAGE 
  
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/epoobj1.htm
  
  Index: epoobj1.htm
  ===================================================================
  
  <html>
   <head>
   <title>Example using Objects: default</title>
   </head>
   <body>
   <h1>head from foo</h1>
  
   <font size=1>title = default<br>
  -----------------------------
   
  
   PAGE 1
  
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/epoobj2.htm
  
  Index: epoobj2.htm
  ===================================================================
  
  <html>
   <head>
   <title>Example using Objects: epoobj2 -&gt; page2</title>
   </head>
   <body>
   <h1>head from foo</h1>
  
   <font size=1>title = epoobj2 -&gt; page2<br>
  -----------------------------
   
  
   PAGE 2
  
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/epoobj3.htm
  
  Index: epoobj3.htm
  ===================================================================
  
  <html>
   <head>
   <title>Example using Objects: epoobj3 -&gt; page3</title>
   </head>
   <body>
   <h1>head from foo</h1>
  
   <font size=5>title = epoobj3 -&gt; page3<br>
  -----------------------------
   
  
   PAGE 3
   <hr> Footer <hr>
   
   Gerald Richter / ecos (c) 2000
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/epoobj4.htm
  
  Index: epoobj4.htm
  ===================================================================
  
  <html>
   <head>
   <title>Example using Objects: <b>Embperl sub in title </b>0</title>
   </head>
   <body>
   <h1>head from foo</h1>
  
   <font size=9>title = <b>Embperl sub in title </b>0<br>
  -----------------------------
   
  
   PAGE 4
   <hr> Footer <hr>
   
   Gerald Richter / ecos (c) 2000 [page 4]
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/epopage1.htm
  
  Index: epopage1.htm
  ===================================================================
   <html>
   <head>
   <title>Example</title>
   </head>
   <body>
    <h1>head from foo</h1>
  
   PAGE 1
  
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/epopage2.htm
  
  Index: epopage2.htm
  ===================================================================
   <html>
   <head>
   <title>Example</title>
   </head>
   <body>
    <h1>another head from sub</h1>
  
   PAGE 2
  
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/epostopdir.htm
  
  Index: epostopdir.htm
  ===================================================================
   <html>
   <head>
   <title>Tests for Embperl - EmbperlObject - base 2</title>
   </head>
   <body>
    <h1>head from foo</h1>
  
   PAGE 1 (Header and Footer found with STOPDIR)
  
  
   PAGE from lib
  
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/eposubsub.htm
  
  Index: eposubsub.htm
  ===================================================================
   <html>
   <head>
   <title>Example</title>
   </head>
   <body>
    <h1>another head from sub</h1>
  
  --->
  
  eposubsub in sub/subsub 
  
  ../*
  eposubsub in base dir
  
  
  
  epopage1
   PAGE 1
  
  ../epopage1
   PAGE 1
  
  epopage2
   PAGE 2
  
  ../epopage2
   PAGE 2
  
  ../sub/epopage2
   PAGE 2
  
  ../eposubsub
  eposubsub in base dir
  
  
  
  <---
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/eposubsub2.htm
  
  Index: eposubsub2.htm
  ===================================================================
   <html>
   <head>
   <title>Example</title>
   </head>
   <body>
    <h1>another head from sub</h1>
  
  --->
  
  eposubsub2 in sub/subsub/subsubsub
  
  ../eposubsub2
  --->
  
  eposubsub2 in sub
  
  ../eposubsub2
  --->
  
  eposubsub2 in /
  
  
  <---
  <---
  <---
   <hr> Footer <hr>
   
   
  
  </body>
   </html>
  
  
  
  
  1.1                  embperl/test/cmp2/errdoc.htm
  
  Index: errdoc.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - ErrorDocument</title>
  </head>
  
  <body>
  
  This page is shown due to an ErrorDocument redirection<p>
  
  </body>
  </html>
  
  
  
  1.2       +32 -0     embperl/test/cmp2/errdoc2.htm
  
  
  
  
  1.2       +43 -0     embperl/test/cmp2/error.htm
  
  
  
  
  1.2       +16 -0     embperl/test/cmp2/errormismatch.htm
  
  
  
  
  1.2       +16 -0     embperl/test/cmp2/errormismatchcmd.htm
  
  
  
  
  1.1                  embperl/test/cmp2/errpage.htm
  
  Index: errpage.htm
  ===================================================================
  <HTML><TITLE>Test for HTML::Embperl::Execute and errors</TITLE><BODY>
  <H1> 1.) The next one produces an error page</H1>
  <H3><HTML><HEAD><TITLE>Embperl Error</TITLE></HEAD><BODY bgcolor="#FFFFFF">
  <H1>Internal Server Error</H1>
  The server encountered an internal error or misconfiguration and was unable to complete your request.<P>
  ^Please contact the server administrator\,.*?and inform them of the time the error occurred\, and anything you might have done that may have caused the error\.
  ^\[.*?\]ERR\:  32\: Line 13\: Warning in Perl code\: Use of uninitialized value
  ^\[.*?\]ERR\:  32\: Line 14\: Warning in Perl code\: Use of uninitialized value
  ^\[.*?\]ERR\:  32\: Line 15\: Warning in Perl code\: Use of uninitialized value
  ^\[.*?\]ERR\:  32\: Line 16\: Warning in Perl code\: Use of uninitialized value
  ^\[.*?\]ERR\:  32\: Line 17\: Warning in Perl code\: Use of uninitialized value
  ^^\[.*?\]ERR\:  32\: Line 21\: Warning in Perl code\: Unquoted string &quot;qqqqqqqqqqqqqq&quot; may clash with future reserved word at .*? line \d*\.
  ^\[.*?\]ERR\:  24\: Line 21\: Error in Perl code\: syntax error at .*? line \d*\, at EOF
  ^\[.*?\]ERR\:  24\: Line 32\: Error in Perl code\: syntax error at .*? line \d*\, at EOF
  ^\[.*?\]ERR\:  24\: Line 32\: Error in Perl code\: Can.*?
  ^\[.*?\]ERR\:  32\: Line 32\: Warning in Perl code\: Use of uninitialized value
  ^^\[.*?\]ERR\:  32\: Line 46\: Warning in Perl code\: Bareword found where operator expected at .*?
  ^^\[.*?\]ERR\:  32\: Line 46\: Warning in Perl code\: 	\(Missing operator before is\?\)
  ^\[.*?\]ERR\:  24\: Line 46\: Error in Perl code\: syntax error at .*? line \d*\, near \&quot\;\$error is here \&quot\;
  ^<br>&nbsp;&nbsp;&nbsp;&nbsp;Missing right.*?bracket
  ^<br>&nbsp;&nbsp;&nbsp;&nbsp;syntax error at .*? line \d*\, at EOF
  ^\[.*?\]ERR\:  20\: Line 58\: \&lt\;\/tr\&gt\; without \&lt\;tr\&gt\;
  ^\[.*?\]ERR\:  45\: Line 58\: Unclosed HTML tag &lt;table&gt; at end of file
  ^ HTML\:\:Embperl.*?<P>
  </BODY></HTML>
  
  
  </H3>
  <H1> 2.) The next one produces an errors, but error page is disabled</H1>
  <H3>
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  Here we will see an error:
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Second Error:<BR>
   <BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  Tag missmatch:
  
  <table>
  
  </H3>
  <H1> 3.) Done :-)</H1>
  </body></html>
  ^HTTP
  ^Date
  ^Server
  ^Connection
  ^Content-Type: text/html
  
  ^^<!DOCTYPE
  <HTML><HEAD>
  ^<TITLE>
  </HEAD><BODY>
  ^<H1>
  The server encountered an internal error or
  misconfiguration and was unable to complete
  your request.<P>
  Please contact the server administrator,
  ^ .*? and inform them of the time the error occurred,
  and anything you might have done that may have
  caused the error.<P>
  ^^More information about this error may be available
  ^^in the server error log.<P>
  ^^<P>Additionally, a 500 Internal Server Error
  ^^error was encountered while trying to use an ErrorDocument to handle the request.
  </BODY></HTML>
  
  
  
  1.1                  embperl/test/cmp2/escape.htm
  
  Index: escape.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some tests for Embperl escaping</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+  <BR>
  
  What is the EscMode? 7
  Let's set the EscMode to 3
  What is the EscMode now? 3
  Now a Url: <A HREF="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521">Here it goes</A>
  A Tag 2:   <A HREF="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521" TARGET="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This is a text ? &amp; + - %21">a2</A>
  A Tag 3:   <A  TARGET="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This is a text ? &amp; + - %21" HREF="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521" TARGET="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This is a text ? &amp; + - %21">a3</A>
  A Tag 4:   <A TARGET="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This is a text ? &amp; + - %21" HREF="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521">a4</A>
  A Tag 5:   <A  TARGET="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This is a text ? &amp; + - %21">a5</A>
  A Tag 6:   <A >a6</A>
  A Tag 7:   <A  HREF="7">x</A>
  A Tag 8:   <A TARGET=8 HREF="8">x</A>
  A Tag 9:   <A HREF="9" TARGET="9">x</A>
  A Tag 10:  <A TARGET="10" HREF="10" TARGET="10">x</A>
  A Tag 11:  <A  HREF="11"  >x</A>
  ^A Tag 12\:  <A HREF=(12|\"12\")>x<\/A>
  ^A Tag 12b\:  <A HREF=(12b|\"12b\") >x<\/A>
  A Tag 13:  <A HREF="abcd%20%3E">x</A>
  A Tag 14:  <A HREF="abcd%20%3E">x</A>
  FRAME:	   <FRAME SRC="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521"  name="%20foo">
  IFRAME:    <IFRAME SRC="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521" name="%20foo">
  EMBED:     <EMBED SRC="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521"  name="%20foo">
  LAYER:	   <LAYER SRC="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521"  name="%20foo">
  IMG:	   <IMG SRC="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521"    name="%20foo">
  FORM:	   <FORM action="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521"    name="%20foo">
  
  Hash in  A <a href="http://localhost/tests?A=1&amp;B=2">
  Array in A <a href="http://localhost/tests?X=9&amp;Y=8&amp;Z=7">
  
  Hash in  H <a href="http://localhost/tests?A=1&amp;B=2">
  ^Array in H \<a href\=\"http\:\/\/localhost\/tests\?(X=9&amp;Y=8&amp;Z=7)|(Z=7&amp;X=9&amp;Y=8)\"\>
  
  ^<a href="tst.html\?(par1=1&amp;par2=2)|(par2=2&amp;par1=1)">1</a>
  <a href="tst.html?par1=1&amp;par2=2&amp;par3=3">2</a>
  <a href="tst.html?par1=1&amp;par2=2">3</a>
  <a href="tst.html?par1=1&amp;par2=2&amp;par3=3">4</a>
  
  
  
  			
  1
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+  <BR>
  
  What is the EscMode? 1
  Now a Url: <A HREF="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This is a text ? &amp; + - %21">Here it goes</A>
  
  2
  Now lets look what we are getting from this:<BR>
  (this%20is%20the%20value%20in%20%24a) (this%20is%20the%20value%20in%20%24a)%20%E4%F6%FC%E4%F6%FC%3F%3F%3F%3C%26%2B%20%20<BR>
  
  What is the EscMode? 2
  Now a Url: <A HREF="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521">Here it goes</A>
  
  0
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) ������???<&+  <BR>
  
  What is the EscMode? 0
  Now a Url: <A HREF="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This is a text ? & + - %21">Here it goes</A>
  
  3
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+  <BR>
  
  What is the EscMode? 3
  Now a Url: <A HREF="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521">Here it goes</A>
  
  What is the EscMode? 3
  15
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) ������???&lt;&amp;+   &apos;&quot;&lt;&gt;<BR>
  
  What is the EscMode? 15
  Now a Url: <a href="http://localhost/tests?id=abcdefghijklmnopqrstuvwxyz&text=This%20is%20a%20text%20%3F%20%26%20%2B%20-%20%2521 %27%22%3C%3E">Here it goes</A>
  
  What is the EscMode? 15
  file.html?name=abcd&amp;data=xyz
  Now we localy set $escmode:<BR>
  (this is the value in $a) ������???<&+    \<a><BR>
  (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+    <a&gt;<BR>
  (this%20is%20the%20value%20in%20%24a)%20%E4%F6%FC%E4%F6%FC%3F%3F%3F%3C%26%2B%20%20%20%20<a%3E<BR>
  (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+    <a&gt;<BR>
  (this is the value in $a) ������???<&+    \<a><BR>
  (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+    \&lt;a&gt;<BR>
  (this%20is%20the%20value%20in%20%24a)%20%E4%F6%FC%E4%F6%FC%3F%3F%3F%3C%26%2B%20%20%20%20%5C%3Ca%3E<BR>
  (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+    \&lt;a&gt;<BR>
  
  Same without local:
  (this is the value in $a) ������???<&+    \<a><BR>
  (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+    <a&gt;<BR>
  (this%20is%20the%20value%20in%20%24a)%20%E4%F6%FC%E4%F6%FC%3F%3F%3F%3C%26%2B%20%20%20%20<a%3E<BR>
  (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+    <a&gt;<BR>
  (this is the value in $a) ������???<&+    \<a><BR>
  (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+    \&lt;a&gt;<BR>
  (this%20is%20the%20value%20in%20%24a)%20%E4%F6%FC%E4%F6%FC%3F%3F%3F%3C%26%2B%20%20%20%20%5C%3Ca%3E<BR>
  (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+    \&lt;a&gt;<BR>
  
  
  Control Chars 0x80-0x9f:
  &#128;&#129;&#130;&#131;&#132;&#133;&#134;&#135;&#136;&#137;&#138;&#139;&#140;&#141;&#142;&#143;&#144;&#145;&#146;&#147;&#148;&#149;&#150;&#151;&#152;&#153;&#154;&#155;&#156;&#157;&#158;&#159;&nbsp;<BR>
  
  Control Chars 129 & 130:
  &amp;#129;&amp;#130;<BR>
  
  0
  ^<A HREF=('http://host/script\?name=My%20Name%20%F6%E4%FC'|"http://host/script\?name=My%20Name%20%F6%E4%FC")>
  
  ^<A HREF=('http://host/script\?name=My%20Name%20%F6%E4%FC'|"http://host/script\?name=My%20Name%20%F6%E4%FC")>
  
  0
  ^<A HREF=('http://host/script\?name=My%20Name%20%F6%E4%FC'|"http://host/script\?name=My%20Name%20%F6%E4%FC")>
  
  ^<A HREF=('http://host/script\?name=My Name ���'|"http://host/script\?name=My Name ���")>
  
  <br>
  
  
  We can avoid interpreting [- foo -] with a double [[ <br>
  
  This should also work for [* foo *]  <br>
  
  
  <A HREF="abcd%20>">x</A>
  
  <table>
  <TR>
   <TD><a href="1">Link</a></TD>
  </TR>
  
  <TR>
   <TD><a href="2">Link</a></TD>
  </TR>
  
  <TR>
   <TD><a href="3">Link</a></TD>
  </TR>
  </table>
  
  <table>
  <TR>
   <TD><a href="1">Link</a></TD>
  </TR>
  
  <TR>
   <TD><a href="2">Link</a></TD>
  </TR>
  
  <TR>
   <TD><a href="3">Link</a></TD>
  </TR>
  </table>
  
  Escape method:
  
  0: (this is the value in $a) ������???<&+  
  1: (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+  
  2: (this%20is%20the%20value%20in%20%24a)%20%E4%F6%FC%E4%F6%FC%3F%3F%3F%3C%26%2B%20%20
  3: (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+  
  4: (this is the value in $a) ������???<&+  
  5: (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+  
  6: (this%20is%20the%20value%20in%20%24a)%20%E4%F6%FC%E4%F6%FC%3F%3F%3F%3C%26%2B%20%20
  7: (this is the value in $a) &auml;&ouml;&uuml;&auml;&ouml;&uuml;???&lt;&amp;+  
  print OUT:
  
  7: &eacute;ric
  0: �ric
  7: &eacute;ric
  0: �ric
  7: &eacute;ric
  0: �ric
  7: &eacute;ric
  0: �ric
  ^<a href="0\?(!Table=interface,router&amp;\$where=interface.router_id=router.id|\$where=interface.router_id=router.id&amp;!Table=interface,router)">
  
  ^<a href="7\?(!Table=interface%2Crouter&amp;%24where=interface.router_id%3Drouter.id|%24where=interface.router_id%3Drouter.id&amp;!Table=interface%2Crouter)">
    
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/escraw.htm
  
  Index: escraw.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some tests for Embperl escaping</title>
  </head>
  
  <body>
  
  
  $optRawInput  0
  $escmode      0
  'here is a \ '              -> here is a \ 
  'here is a \\ '             -> here is a \ 
  'here is a \\\ '            -> here is a \\ 
  'here is a \\\\ '           -> here is a \\ 
  'here is a <tag> '          -> here is a 
  'here is a \<tag> '         -> here is a <tag>
  'here is a \\<tag> '        -> here is a \<tag>
  'here is a \\\<tag> '       -> here is a \<tag>
  'here is a \\\\<tag> '      -> here is a \\<tag>
  'here is a \<tag\> '        -> here is a <tag\>
  'here is a \\<tag\\> '      -> here is a \<tag\>
  'here is a \\\<tag\\\> '    -> here is a \<tag\\>
  'here is a \\\\<tag\\\\> '  -> here is a \\<tag\\>
  $optRawInput  1
  $escmode      0
  'here is a \ '              -> here is a \ 
  'here is a \\ '             -> here is a \ 
  'here is a \\\ '            -> here is a \\ 
  'here is a \\\\ '           -> here is a \\ 
  'here is a <tag> '          -> here is a <tag>
  'here is a \<tag> '         -> here is a \<tag>
  'here is a \\<tag> '        -> here is a \<tag>
  'here is a \\\<tag> '       -> here is a \\<tag>
  'here is a \\\\<tag> '      -> here is a \\<tag>
  'here is a \<tag\> '        -> here is a \<tag\>
  'here is a \\<tag\\> '      -> here is a \<tag\>
  'here is a \\\<tag\\\> '    -> here is a \\<tag\\>
  'here is a \\\\<tag\\\\> '  -> here is a \\<tag\\>
  $optRawInput  0
  $escmode      1
  'here is a \ '              -> here is a  
  'here is a \\ '             -> here is a  
  'here is a \\\ '            -> here is a \ 
  'here is a \\\\ '           -> here is a \ 
  'here is a <tag> '          -> here is a 
  'here is a \<tag> '         -> here is a &lt;tag&gt;
  'here is a \\<tag> '        -> here is a <tag&gt;
  'here is a \\\<tag> '       -> here is a <tag&gt;
  'here is a \\\\<tag> '      -> here is a \&lt;tag&gt;
  'here is a \<tag\> '        -> here is a &lt;tag>
  'here is a \\<tag\\> '      -> here is a <tag>
  'here is a \\\<tag\\\> '    -> here is a <tag\&gt;
  'here is a \\\\<tag\\\\> '  -> here is a \&lt;tag\&gt;
  $optRawInput  1
  $escmode      1
  'here is a \ '              -> here is a  
  'here is a \\ '             -> here is a  
  'here is a \\\ '            -> here is a \ 
  'here is a \\\\ '           -> here is a \ 
  'here is a <tag> '          -> here is a &lt;tag&gt;
  'here is a \<tag> '         -> here is a <tag&gt;
  'here is a \\<tag> '        -> here is a <tag&gt;
  'here is a \\\<tag> '       -> here is a \&lt;tag&gt;
  'here is a \\\\<tag> '      -> here is a \&lt;tag&gt;
  'here is a \<tag\> '        -> here is a <tag>
  'here is a \\<tag\\> '      -> here is a <tag>
  'here is a \\\<tag\\\> '    -> here is a \&lt;tag\&gt;
  'here is a \\\\<tag\\\\> '  -> here is a \&lt;tag\&gt;
  
  
  
  1.1                  embperl/test/cmp2/execfirst.htm
  
  Index: execfirst.htm
  ===================================================================
   <h1>head from foo</h1>
  
  
  
  
  
  1.1                  embperl/test/cmp2/execgetsess.htm
  
  Index: execgetsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Execute Get Session Data</title>
  </head>
  
  
  <body>
  
  	<html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table></table>
  
  	udat:<br>
  	<table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	</table>
  
  ^	ok \(num=\d+\)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
          $udat{cnt} = -- <br>
  
  
  	sessions:
  ^	<table>
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	<\/table>
  	<a href="cont.htm">continue</a>
  	<a href="cont.htm?q=1">continue</a>
  	<a href="cont.htm?q=1&b=2">continue</a>
  	<form action="cont.htm">
  	</form>
  
  </body>
  </html>
  
  fdat:<br>
  	<table></table>
  
  	udat:<br>
  	<table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	</table>
  
  ^	ok \(num=(1|6)\)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
          $udat{cnt} = -- <br>
  
  
  	<html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table></table>
  
  	udat:<br>
  	<table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	</table>
  
  ^	ok \(num=(1|6)\)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
          $udat{cnt} = -- <br>
  
  
  	sessions:
  ^	<table>
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		<\/tr>
  ^-	<\/table>
  	<a href="cont.htm">continue</a>
  	<a href="cont.htm?q=1">continue</a>
  	<a href="cont.htm?q=1&b=2">continue</a>
  	<form action="cont.htm">
  	</form>
  
  </body>
  </html>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/execnotfound.htm
  
  Index: execnotfound.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Execute non exitent file</title>
  </head>
  
  
  <body>
  
   
  rc = 12<br>
    
  <p>Done.</p>
  </body></html>
  
  
  
  
  1.1                  embperl/test/cmp2/execprint.htm
  
  Index: execprint.htm
  ===================================================================
  * <h1>head from foo</h1>
  *without print...
  
   <h1>head from foo</h1>
   <h1>head from foo</h1>
   <h1>head from foo</h1>
  without print...
  
  ### 1
   <h1>head from foo</h1>
  ###
  ### 2
   <h1>head from foo</h1>
  ###
  ### 3
   <h1>head from foo</h1>
  ###
  with print in different blocks ...
  
  * 1 * <h1>head from foo</h1>
  ** 2 * <h1>head from foo</h1>
  ** 3 * <h1>head from foo</h1>
  *with print...
  
  * 1 * <h1>head from foo</h1>
  ** 2 * <h1>head from foo</h1>
  ** 3 * <h1>head from foo</h1>
  *
  
  
  
  1.1                  embperl/test/cmp2/execsecond.htm
  
  Index: execsecond.htm
  ===================================================================
  
   <h1>head from foo</h1>
  
  
  
  
  
  1.1                  embperl/test/cmp2/executesub.htm
  
  Index: executesub.htm
  ===================================================================
  <html>  
  <head>
  <title>Tests for Embperl - Execute subs</title>
  </head>
  
  
  <body>
  
  <h1>Tests for Embperl - Execute subs</h1>
  
  
  First sub:
  *1*
  *1*<h2>1.) Here goes some normal html text <h2>
  *1*
  
  Second sub:
  *2*
  *2*2.) Here comes some perl:
  *2*
  *2**2*
  *2*foo = Hello world<br>
  *2*testdata = <br>
  *2*
  
  Second sub:
  *2*
  *2*2.) Here comes some perl:
  *2*
  *2**2*
  *2*foo = Hello world<br>
  *2*testdata = <br>
  *2*
  
  First sub:
  *1*
  *1*<h2>1.) Here goes some normal html text <h2>
  *1*
  
  And done!
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/execviamod.htm
  
  Index: execviamod.htm
  ===================================================================
  <html>  
  <head>
  <title>Tests for Embperl - Execute via an intermediate module</title>
  </head>
  
  
  <body>
  
  <h1>Tests for Embperl - Execute via an intermediate module</h1>
  
  
  begin execviamod
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <!-- Here is a comment -->
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  ARRAY @d =  num = 0 <BR>
  ARRAY @x =  num = 0 <BR>
  HASH  %a =  num = 0 <BR>
  HASH  %y =  num = 0 <BR>
  
  
  First of all assign a value:
  <BR>
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  ARRAY @d = 1 2 3 num = 3 <BR>
  ARRAY @x = 9 8 7 num = 3 <BR>
  HASH  %a = 1 2 3 a b c num = 3 <BR>
  HASH  %y = 7 8 9 x y z num = 3 <BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  SELECT *  FROM a ORDER BY b USING &lt;; Hi There&gt;
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  SELECT * FROM a ORDER BY b USING &lt;; Hi There&gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  Input Separator = 10<br>
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  middle execviamod
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <!-- Here is a comment -->
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  ARRAY @d = 1 2 3 num = 3 <BR>
  ARRAY @x =  num = 3 <BR>
  HASH  %a = 1 2 3 a b c num = 3 <BR>
  HASH  %y = 7 8 9 x y z num = 3 <BR>
  
  
  First of all assign a value:
  <BR>
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  ARRAY @d = 1 2 3 num = 3 <BR>
  ARRAY @x = 9 8 7 num = 3 <BR>
  HASH  %a = 1 2 3 a b c num = 3 <BR>
  HASH  %y = 7 8 9 x y z num = 3 <BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  SELECT *  FROM a ORDER BY b USING &lt;; Hi There&gt;
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  SELECT * FROM a ORDER BY b USING &lt;; Hi There&gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  Input Separator = 10<br>
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  end execviamod
  Now without output
   
  
  <html>
  <head>
  <title>Some Plain tests Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  a <br>
  a <br>
  a <br>
      b is null <br>
      a <br>
      b is null <br>
      a<br>
      b is null <br>
      <table></table>
  
  
  <p> $tabmode = default <p>
  
  <hr><p>Display an two dimensional array with one, two and three columns !<BR>
  Please take a look at the source in your browser to see the difference<BR>
  
  $a[0][0] = '1/1' ;<BR>
     $a[1][0] = '2/1' ;<BR>
     $a[1][1] = '2/2' ;<BR>
     $a[2][0] = '3/1' ;<BR>
     $a[2][1] = '3/2' ;<BR>
     $a[2][2] = '3/3' ;<BR>
  
  <P>$tabmode = default <P>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table>
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a1/1 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/2 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/2 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/3 </td>
      </tr> 
  </table>
  
  <P><P>
  
  <P>17<P>
  <P>1<P>
  
  <P>
  
  <table>
      <tr>
              <td>ii[0] = 0 </td>
      </tr> 
  
      <tr>
              <td>ii[1] = 1 </td>
      </tr> 
  
      <tr>
              <td>ii[2] = 2 </td>
      </tr> 
  
      <tr>
              <td>ii[3] = 3 </td>
      </tr> 
  
      <tr>
              <td>ii[4] = 4 </td>
      </tr> 
  
      <tr>
              <td>ii[5] = 5 </td>
      </tr> 
  
      <tr>
              <td>ii[6] = 6 </td>
      </tr> 
  
      <tr>
              <td>ii[7] = 7 </td>
      </tr> 
  
      <tr>
              <td>ii[8] = 8 </td>
      </tr> 
  
      <tr>
              <td>ii[9] = 9 </td>
      </tr> 
  </table>
  
  </body>
  </html>
  
  <html>
  <head>
  <title>Some Plain tests Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a = 1 <BR>
  $b =  <BR>
  $c = 5 <BR>
  $d = txt <BR>
  $e = 2 <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  a <br>
  a <br>
  a <br>
      b is null <br>
      a <br>
      b is null <br>
      a<br>
      b is null <br>
      <table></table>
  
  
  <p> $tabmode = default <p>
  
  <hr><p>Display an two dimensional array with one, two and three columns !<BR>
  Please take a look at the source in your browser to see the difference<BR>
  
  $a[0][0] = '1/1' ;<BR>
     $a[1][0] = '2/1' ;<BR>
     $a[1][1] = '2/2' ;<BR>
     $a[2][0] = '3/1' ;<BR>
     $a[2][1] = '3/2' ;<BR>
     $a[2][2] = '3/3' ;<BR>
  
  <P>$tabmode = default <P>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table>
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a1/1 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/2 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/2 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/3 </td>
      </tr> 
  </table>
  
  <P><P>
  
  <P>17<P>
  <P>1<P>
  
  <P>
  
  <table>
      <tr>
              <td>ii[0] = 0 </td>
      </tr> 
  
      <tr>
              <td>ii[1] = 1 </td>
      </tr> 
  
      <tr>
              <td>ii[2] = 2 </td>
      </tr> 
  
      <tr>
              <td>ii[3] = 3 </td>
      </tr> 
  
      <tr>
              <td>ii[4] = 4 </td>
      </tr> 
  
      <tr>
              <td>ii[5] = 5 </td>
      </tr> 
  
      <tr>
              <td>ii[6] = 6 </td>
      </tr> 
  
      <tr>
              <td>ii[7] = 7 </td>
      </tr> 
  
      <tr>
              <td>ii[8] = 8 </td>
      </tr> 
  
      <tr>
              <td>ii[9] = 9 </td>
      </tr> 
  </table>
  
  </body>
  </html>
  And done!
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/cmp2/exit.htm
  
  Index: exit.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - component exit</title>
  </head>
  
  
  <body>
  
  Before Exit
  
  
  
  
  
  1.1                  embperl/test/cmp2/exit2.htm
  
  Index: exit2.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Apache::Exit</title>
  </head>
  
  
  <body>
  
  Before Exit
  
  
  
  
  
  1.1                  embperl/test/cmp2/exit3.htm
  
  Index: exit3.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - exit in sub</title>
  </head>
  
  
  <body>
  
  Before Exit
  
  
  
  
  
  
  
  1.1                  embperl/test/cmp2/exitcomp.htm
  
  Index: exitcomp.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - component exit</title>
  </head>
  
  
  <body>
  
  Before Exit Main
  
  <html>
  <head>
  <title>Tests for Embperl - request exit sub</title>
  </head>
  
  
  <body>
  
  Before Exit
  
  After Exit Main
  
  perl after exit main
  </body>
  
  
  
  1.1                  embperl/test/cmp2/exitreq.htm
  
  Index: exitreq.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - request exit</title>
  </head>
  
  
  <body>
  
  Before Exit Main
  
  <html>
  <head>
  <title>Tests for Embperl - request exit sub</title>
  </head>
  
  
  <body>
  
  Before Exit
  
  
  
  
  1.1                  embperl/test/cmp2/getbsess.htm
  
  Index: getbsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table></table>
  
  	udat:<br>
  	<table>
  		<tr>
  			<td>b</td><td>2</td>
  		</tr>
  	</table>
  
  ^	ok \(num=\d+\)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
          $udat{cnt} = -- <br>
  
  
  	sessions:
  ^	<table>
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-	</table>
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/getdelsess.htm
  
  Index: getdelsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table></table>
  
  	udat:<br>
  	<table></table>
  
  	Not a session hash (num=0)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
          $udat{cnt} = -- <br>
  
  
  	sessions:
  ^	<table>
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-	</table>
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/getnosess.htm
  
  Index: getnosess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table>
  		<tr>
  			<td>nocookie</td><td>2</td>
  		</tr>
  	</table>
  
  	udat:<br>
  	<table></table>
  
  	Not a session hash (num=0)<p>
  
  	sessions:
  ^	<table>
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-	</table>
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/getnourlsess.htm
  
  Index: getnourlsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table>
  		<tr>
  			<td>nocookie</td><td>2</td>
  		</tr>
  	</table>
  
  	udat:<br>
  	<table></table>
  
  	ok (num=1)<p>
  
  	sessions:
  	<table></table>
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/getsdaturlsess.htm
  
  Index: getsdaturlsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Get State Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table></table>
  
  	sdat:<br> 
  	<table>
  		<tr>
  			<td>sdat</td><td>99</td>
  		</tr>
  	</table>
  
  	ok (num=1)<p>
  
  ^ 	<a href=\"cont\.htm\?EMBPERL_UID=[a-f0-9]+\">continue</a>
  ^	<a href=\"cont.htm\?q=1&EMBPERL_UID=[a-f0-9]+\">continue</a>
  ^	<a href=\"cont.htm\?q=1&b=2&EMBPERL_UID=[a-f0-9]+\">continue</a>
  ^	<form action="cont.htm"><input type=\"hidden\" name=\"EMBPERL_UID\" value=\"[a-f0-9]+\">
      </form>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/getsess.htm
  
  Index: getsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table></table>
  
  	udat:<br>
  	<table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	</table>
  
  ^	ok \(num=\d+\)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
          $udat{cnt} = -- <br>
  
  
  	sessions:
  ^	<table>
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-	</table>
  	<a href="cont.htm">continue</a>
  	<a href="cont.htm?q=1">continue</a>
  	<a href="cont.htm?q=1&b=2">continue</a>
  	<form action="cont.htm">
  	</form>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/geturlsess.htm
  
  Index: geturlsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  	
  	fdat:<br>
  	<table>
  		<tr>
  			<td>foo</td><td>1</td>
  		</tr>
  	</table>
  
  	udat:<br>
  	<table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	</table>
  
  	ok (num=1)<p>
  
  ^	\$mdat\{cnt\} = -\d- <br>
      $udat{cnt} = -- <br>
  
  
  	sessions:
  	<table></table>
  
  ^ 	<a href=\"cont\.htm\?EMBPERL_UID=[a-f0-9]*?:[a-f0-9]+\">continue</a>
  ^	<a href=\"cont.htm\?q=1&EMBPERL_UID=[a-f0-9]*?:[a-f0-9]+\">continue</a>
  ^	<a href=\"cont.htm\?q=1&b=2&EMBPERL_UID=[a-f0-9]*?:[a-f0-9]+\">continue</a>
  ^	<form action="cont.htm"><input type=\"hidden\" name=\"EMBPERL_UID\" value=\"[a-f0-9]*?:[a-f0-9]+\">
      </form>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/heredoc.htm
  
  Index: heredoc.htm
  ===================================================================
  <HTML>
  HELLO
  To Create a duplicate entry you must first fill in the units field.
  
  </HTML>
  
  
  
  
  1.2       +74 -0     embperl/test/cmp2/hidden.htm
  
  
  
  
  1.1                  embperl/test/cmp2/hostconfig.htm
  
  Index: hostconfig.htm
  ===================================================================
  
  
  appname = Embperl<br>
  
  
  
  input_escmode = 7<br>
  
  
  
  object_base = <br>
  
  
  
  
  
  
  1.1                  embperl/test/cmp2/http.htm
  
  Index: http.htm
  ===================================================================
  <html>
  <head>
  <title>Setup http header</title>
  </head>
  
  
  <body>
  
  
  <meta http-equiv="Formatter" content="Embperl">
  
  <table>
  	<tr>
  		<td>Formatter</td><td>Embperl</td>
  	</tr>
  
  	<tr>
  		<td>Locationx</td><td>http://www.ecos.de/embperl/</td>
  	</tr>
  
  	<tr>
  		<td>h1</td><td>v0</td>
  	</tr>
  
  	<tr>
  ^ 		<td>h2<\/td><td>ARRAY\(.*?\)<\/td>
  	</tr>
  </table>
  
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/i18n.htm
  
  Index: i18n.htm
  ===================================================================
  <table width="100%">
      <tr bgcolor="#fefcad">
          <td><font size="4">Hinzuf&uuml;gen eines neuen Eintrages zu News</font></td>
      </tr>
  </table>
  
  
  
  <form action="show.epl"  method="POST">
  
  Bitte geben Sie die Beschreibung in so vielen Sprachen wie Ihnen m&ouml;glich ein.<br>Falls Sie die &Uuml;bersetzung nicht wissen, lassen Sie das entsprechende Eingabefeld leer.<br><br>
  
  <table>
      <tr>
          <td>URL:</td><td><input type="text" name="url" size=80 value=""></td>
      </tr>
  </table>
  
  <table width="100%">
      <tr bgcolor="#fefcad"><font size="3">
          <td>Deutsch</td>
      </tr>
      <tr>
          <td>
              <table>
                  <tr>
                      <td>&Uuml;berschrift:</td><td><input type="text" name="heading_de" size=80 value=""></td>
                  </tr>
                  <tr>
                      <td>URL:</td><td><input type="text" name="url_de" size=80 value=""></td>
                  </tr>
                  <tr>
                      <td>description:</td><td><textarea name="description_de" cols=60 rows=10></textarea></td>
                  </tr>
              </table>
          </td>
      </tr>
  
      <tr bgcolor="#fefcad"><font size="3">
          <td>English</td>
      </tr>
      <tr>
          <td>
              <table>
                  <tr>
                      <td>&Uuml;berschrift:</td><td><input type="text" name="heading_en" size=80 value=""></td>
                  </tr>
                  <tr>
                      <td>URL:</td><td><input type="text" name="url_en" size=80 value=""></td>
                  </tr>
                  <tr>
                      <td>description:</td><td><textarea name="description_en" cols=60 rows=10></textarea></td>
                  </tr>
              </table>
          </td>
      </tr>
  </table>
  
  <br><br>
  &nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" name="-add_item" value="Add to News">
  
  <input type="hidden" name="category_id" value="">
  
  Use gettext:
  
  description = description
  heading =     &Uuml;berschrift
  add3 =        Add to
  </form>
               
  
  
  
  1.2       +89 -0     embperl/test/cmp2/if.htm
  
  
  
  
  1.1                  embperl/test/cmp2/ifperl.htm
  
  Index: ifperl.htm
  ===================================================================
  
  <html>
  <head>
  <title>IF Metacommand in Embperl</title>
  </head>
  
  <body>
  
  a1
  a <br>
  a2
  a <br>
  a3
  a <br>
  a4
  a <br>
  a5
  a <br>
      b is null <br>
      a <br>
      b is null <br>
      a<br>
      b is null <br>
      a <br>
      b is null <br>
      ttrue = true
  tfalse = false
  </body>
  </html>
  
  
  
  
  
  1.2       +40 -0     embperl/test/cmp2/importmodule.htm
  
  
  
  
  1.2       +50 -0     embperl/test/cmp2/importsub.htm
  
  
  
  
  1.2       +43 -0     embperl/test/cmp2/importsub2.htm
  
  
  
  
  1.1                  embperl/test/cmp2/incif.htm
  
  Index: incif.htm
  ===================================================================
  Hello World
  
  
  
  
  1.1                  embperl/test/cmp2/include.htm
  
  Index: include.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Tests - Include other Embperl pages via Execute</title>
  </head>
  
  <h1>Embperl Tests - Include other Embperl pages via Execute</h1>
  
  
  <H1> 1.) Include from memory</H1>
  
  <P>Here is some text</P>
  <H1> 2.) Include from memory with some Embperl code</H1>
  
  <table><tr><td>a1</td> <td>b2</td> <td>c3</td> </tr> </table> </P>
  <H1> 3.) Include from memory with passing of variables</H1>
  
  
  <P>Transfer some vars Some Var !</P>
  <H1> 4.) Change the variable, but not the code</H1>
  
  <P>Transfer some vars Do it again !</P>
  <H1> 5a.) Use  method -> param to pass parameters</H1>
  
  
  <P>Use method -> param to transfer some data (1 2 3 4) !</P>
  <H1> 5.) Use \@param to pass parameters</H1>
  
  
  <P>Use @param to transfer some data (1 2 3 4) !</P>
  <H1> 6.) Use \@param to pass parameters and return it</H1>
  
  <H3> $p[0] is vara and $p[1] is varb<H3>
  
  <P>Got data in @param (vara varb) !</P><P>Change data in @param to (newA newB) !</P>
  <H3> $p[0] is now newA and $p[1] is now newB <H3>
  
  <H1> 7.) Presetup \%fdat and \@ffld</H1>
  
  <P><table><tr><td>fdat</td><td>text</td></tr><tr><td>test</td><td>value</td></tr></table></P>
  <H1> 7a.) Presetup my \%fdat and my \@ffld</H1>
  
  <P><table><tr><td>fdat1</td><td>text1</td></tr><tr><td>test1</td><td>value1</td></tr></table></P>
  <H1> 7b.) Presetup \%fdat</H1>
  
  <P><table><tr><td>fdat2</td><td>text2</td></tr><tr><td>test2</td><td>value2</td></tr></table></P>
  <H1> 7c.) Presetup  \@ffld</H1>
  
  <P><table></table></P> @ffld = fdat3 test3
  <H1> 8a.) Include a file</H1>
  
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined at the first include and
  apear at the second include:
  <P>
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  SELECT *  FROM a ORDER BY b USING &lt;; Hi There&gt;
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  SELECT * FROM a ORDER BY b USING &lt;; Hi There&gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  <P>Ok.<P>
  
  
  <H1> 8b.) Include again the same file </H1> 
   
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined at the first include and
  apear at the second include:
  <P>
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  SELECT *  FROM a ORDER BY b USING &lt;; Hi There&gt;
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  SELECT * FROM a ORDER BY b USING &lt;; Hi There&gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  <P>Ok.<P>
  
  
  <H1> 9.) Include a file and return output in a scalar</H1>
  
  
  
  <H3> 
  Here it starts with some HTML Text&lt;P&gt;
  
  All values should be undefined at the first include and
  apear at the second include:
  &lt;P&gt;
  
  $a = (this is the value in $a) &lt;BR&gt;
  $b = (this is the value in $a) &amp;auml;&amp;ouml;&amp;uuml; &lt;BR&gt;
  $c = 57 &lt;BR&gt;
  $d = 1 &lt;BR&gt;
  $e = 2 &lt;BR&gt;
  
  
  First of all assign a value:
  &lt;BR&gt;
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:&lt;BR&gt;
  (this is the value in $a) (this is the value in $a) &amp;auml;&amp;ouml;&amp;uuml;&lt;BR&gt;
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &amp;auml;&amp;ouml;&amp;uuml;&lt;P&gt;
  
  Here we have some HTML tags within the perl code, Embperl will delete them!&lt;BR&gt;
  
  57
  SELECT *  FROM a ORDER BY b USING &amp;lt;; Hi There&amp;gt;
  Here we have something which looks like a HTML tag, but does not start with&lt;br&gt;
  a character, Embperl does not change them!&lt;BR&gt;
  
  SELECT * FROM a ORDER BY b USING &amp;lt;; Hi There&amp;gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;amp;lt; 6 will get the perl expression $a &amp;lt; 6: &lt;BR&gt;
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) &lt;BR&gt;
  $b = (this is the value in $a) &amp;auml;&amp;ouml;&amp;uuml; &lt;BR&gt;
  $c = 57 &lt;BR&gt;
  $d = 1 &lt;BR&gt;
  $e = 2 &lt;BR&gt;
  
  &lt;P&gt;Ok.&lt;P&gt;
  
  
   </H3>
  
  
  <H1> 10.) Include inside a table</H1>
  
  <table>
      <tr>
  	<td>
  	    m1 : Start include
  <table>
      <tr>
  	<td>
  	    m1 - s1	</td>
      
  	<td>
  	    m1 - s2	</td>
      
  	<td>
  	    m1 - s3	</td>
      </tr>
  </table>
  Parameters:<BR>
  <table>
      <tr>
  	<td>
  	    m1	</td>
      
  	<td>
  	    main	</td>
      </tr>
  </table>
  p0	    m1
  p1	    main
  End include
  
  </td>
      </tr>
  
      <tr>
  	<td>
  	    m2 : Start include
  <table>
      <tr>
  	<td>
  	    m2 - s1	</td>
      
  	<td>
  	    m2 - s2	</td>
      
  	<td>
  	    m2 - s3	</td>
      </tr>
  </table>
  Parameters:<BR>
  <table>
      <tr>
  	<td>
  	    m2	</td>
      
  	<td>
  	    main	</td>
      </tr>
  </table>
  p0	    m2
  p1	    main
  End include
  
  </td>
      </tr>
  
      <tr>
  	<td>
  	    m3 : Start include
  <table>
      <tr>
  	<td>
  	    m3 - s1	</td>
      
  	<td>
  	    m3 - s2	</td>
      
  	<td>
  	    m3 - s3	</td>
      </tr>
  </table>
  Parameters:<BR>
  <table>
      <tr>
  	<td>
  	    m3	</td>
      
  	<td>
  	    main	</td>
      </tr>
  </table>
  p0	    m3
  p1	    main
  End include
  
  </td>
      </tr>
  </table>
  
  
  <H1> 11.) Include a file with parameters</H1>
  
  Here is param[0] -> 0<br>
  Here is param[1] -> B<br>
  Here is param[2] -> three<br>
  Here is param[3] -> dddd<br>
  Here is param[4] -> 555<br>
  
  
  
  <H1> 12.) Include a file and write outputfile</H1>
  
  <H1> 12.) Done :-)</H1>
  
  <br>
  
  
  <p><hr>
  
  <small>Embperl (c) 1997-2002 G.Richter</small>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/includeerr1.htm
  
  Index: includeerr1.htm
  ===================================================================
  <HTML><HEAD><TITLE>Embperl Error</TITLE></HEAD><BODY bgcolor="#FFFFFF">
  <H1>Internal Server Error</H1>
  The server encountered an internal error or misconfiguration and was unable to complete your request.<P>
  ^Please contact the server administrator\,.*?and inform them of the time the error occurred\, and anything you might have done that may have caused the error
  <table cellspacing='2' cellpadding='5'>
  <tr bgcolor='#eeeeee'><td>
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code: 
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  24\:  Error in Perl code: Can't locate object method &quot;is&quot; via package &quot;here&quot;
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  </td></tr>
  </table>
  <br>
  
  ^Embperl
  </BODY></HTML>
  
  
  
  
  
  1.1                  embperl/test/cmp2/includeerr2.htm
  
  Index: includeerr2.htm
  ===================================================================
  <HTML><HEAD><TITLE>Embperl Error</TITLE></HEAD><BODY bgcolor="#FFFFFF">
  <H1>Internal Server Error</H1>
  The server encountered an internal error or misconfiguration and was unable to complete your request.<P>
  ^Please contact the server administrator\,.*?and inform them of the time the error occurred\, and anything you might have done that may have caused the error
  <table cellspacing='2' cellpadding='5'>
  <tr bgcolor='#eeeeee'><td>
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code: Use of uninitialized value
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code: Use of uninitialized value
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code: Use of uninitialized value
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code: Use of uninitialized value
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  24\:  Error in Perl code: Can't locate object method &quot;is&quot; via package &quot;here&quot;
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code: Use of uninitialized value
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  24\:  Error in Perl code: Can't locate object method &quot;is&quot; via package &quot;here&quot;
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code: Use of uninitialized value
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  24\:  Error in Perl code: Can't locate object method &quot;is&quot; via package &quot;here&quot;
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code: Use of uninitialized value
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  32\:  Warning in Perl code\: Unquoted string &quot;table&quot; may clash with future reserved word at 
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  32\:  Warning in Perl code\: Unquoted string &quot;td&quot; may clash with future reserved word at 
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  32\:  Warning in Perl code\:\s+\(in cleanup\) Transliteration replacement not terminated at
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  24\:  Error in Perl code\: syntax error at 
  ^\<br\>&nbsp;&nbsp;&nbsp;&nbsp;\s+\(in cleanup\) Transliteration replacement not terminated at
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  32\:  Warning in Perl code\: Unquoted string &quot;table&quot; may clash with future reserved word at
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  32\:  Warning in Perl code\: Unquoted string &quot;td&quot; may clash with future reserved word at
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  32\:  Warning in Perl code\:\s+\(in cleanup\) Transliteration replacement not terminated at
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^-</td></tr>
  ^-<tr bgcolor='#eeeeee'><td>
  ^-<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  24\:  Error in Perl code\: syntax error at
  ^<br>&nbsp;&nbsp;&nbsp;&nbsp;	\(in cleanup\) Transliteration replacement not terminated at
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  </td></tr>
  </table>
  <br>
  
  ^Embperl
  </BODY></HTML>
  
  
  
  
  
  1.1                  embperl/test/cmp2/includeerrbt.htm
  
  Index: includeerrbt.htm
  ===================================================================
  <HTML><HEAD><TITLE>Embperl Error</TITLE></HEAD><BODY bgcolor="#FFFFFF">
  <H1>Internal Server Error</H1>
  The server encountered an internal error or misconfiguration and was unable to complete your request.<P>
  ^Please contact the server administrator\,.*?and inform them of the time the error occurred\, and anything you might have done that may have caused the error
  <table cellspacing='2' cellpadding='5'>
  <tr bgcolor='#eeeeee'><td>
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[\d+\]ERR:  24:  Error in Perl code: Can\'t locate object method &quot;is&quot; via package &quot;here&quot;
  ^<br>&nbsp;&nbsp;&nbsp;&nbsp;    \* .*?incerr.htm
  ^<br>&nbsp;&nbsp;&nbsp;&nbsp;    \* .*?includeerrbt.htm
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  </td></tr>
  </table>
  <br>
  
  ^Embperl
  </BODY></HTML>
  
  
  
  
  
  1.1                  embperl/test/cmp2/incperl.htm
  
  Index: incperl.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - Include perl script</title>
  </head>
  
  <body>
  
  
  Start
  Embperl Tests - Includeded perl script - Start
  0 = a
  1 = b
  2 = c
  Embperl Tests - Includeded perl script - End
  
  End
  </body>
  </html>
  
  
  
  
  
  1.1                  embperl/test/cmp2/inctext.htm
  
  Index: inctext.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - Include literal text</title>
  </head>
  
  <body>
  
  
  Start
  <html>
  
  <head>
  <title>Embperl Tests - Mixed Embperl and SSI syntax</title>
  </head>
  
  <body>
  
  <!-- Normal Comment -->
  
  <!--#set var="EPSSITEST" value="1 + foo + bar" -->
  
  EPSSITEST 1 SSI: <!--#echo  var="EPSSITEST" -->
  
  
  EPSSITEST 1 EP:  [+ $ENV{EPSSITEST} +]
  
  [- @X = ('a', 'b', 'c') ; -]
  
  <table>
      <tr>
          <td>Embperl</td><td>[+ $ENV{X} = $X[$row] +]</td> 
          <td>SSI</td>    <td><!--#echo  var="X" --></td> 
      </tr>
  </table>
  
  Embperl inside  SSI: <!--#echo  var="[+ 'EP' . 'SSI' . 'TEST' +]" -->
  
  </body>
  </html>
  
  
  End
  </body>
  </html>
  
  
  
  
  
  1.1                  embperl/test/cmp2/incxmlLibXSLT.htm
  
  Index: incxmlLibXSLT.htm
  ===================================================================
  
  
  <html><head><title>Include POD via XSLT</title></head>
  
  <body>
  
  <h1>Start pod.xml</h1>
  
  <?xml version="1.0" encoding="iso-8859-1"?>
  <html xmlns="http://www.w3.org/TR/xhtml1/strict">
  <head>
  <title>POD</title>
  </head>
  <body>
  <h1>HEAD1</h1>
  some text under HEAD1
  
  <h2><img src="sq.gif" width="16" height="16" alt="-"/>HEAD2</h2><p/>
  some text under HEAD2
  
  HEAD3
  some text under HEAD3
  
  format bold <code>code</code> italic underline
  
  <ul>
  <li><b>first item</b></li><br/>
  text 1
  
  <li><b>second item</b></li><br/>
  text 2
  
  </ul>
  
  <ul>
  first item
  text 1
  
  second item
  text 2
  
  </ul>
  
  </body>
  </html>
  <h1>Start kfdres.xml</h1>
  
  <?xml version="1.0"?>
  <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td class="bar01"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="9" height="1"/></td></tr><tr><td class="bar01" height="26"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="8" height="1"/><font class="lighttextbold">Henderson North American</font></td></tr><tr><td class="bar01"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="9" height="1"/></td></tr><tr height="10"/><tr height="25"><td class="blank"><font class="textblueboldsmaller">Manager / Authorised Corporate Director:
  </font><br/><font class="text">Henderson Investment Funds Limited<br/>4 Broadgate<br/>London<br/>EC2M 2DA<br/>UK<br/></font><br/></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Name of Trustee/Depositary:</font><br/><font class="text">Chase Manhattan Trustees Limited<br/><br/></font></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Fund Investment Objective:</font><br/><font class="text">To provide capital growth by investing in North American companies. The Fund will primarily invest in larger companies.<br/><br/></font></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Initial Charge:</font>&nbsp;<font class="text">1.00%</font></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Annual Charge:</font>&nbsp;<font class="text">1.50%</font></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Other Charges:</font>&nbsp;<font class="text">0.11%</font></td></tr></table><br/><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td class="tablebar"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="9" height="1"/><font class="lighttextbold">Units or shares purchased within an ISA :</font><table width="100%" cellpadding="2" cellspacing="1" border="0"><tr><td class="tablebar" colspan="9"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="1" height="7"/></td></tr><tr align="center"><td class="blank"><font class="textbold">At end of year</font></td><td class="blank"><font class="textbold">Investment to date</font></td><td class="blank"><font class="textbold">Income to date</font></td><td class="blank"><font class="textbold">Effect of deductions to date</font></td><td class="blank"><font class="textbold">What you might get back at 7%</font></td></tr><tr align="center"><td class="blank"><font class="text">1</font></td><td class="blank" align="right"><font class="text">&pound;1,000.00</font></td><td class="blank" align="right"><font class="text">&pound;0.00</font></td><td class="blank" align="right"><font class="text">&pound;27.63</font></td><td class="blank" align="right"><font class="text">&pound;1,042.37</font></td></tr><tr align="center"><td class="blank"><font class="text">3</font></td><td class="blank" align="right"><font class="text">&pound;1,000.00</font></td><td class="blank" align="right"><font class="text">&pound;0.00</font></td><td class="blank" align="right"><font class="text">&pound;69.47</font></td><td class="blank" align="right"><font class="text">&pound;1,155.57</font></td></tr><tr align="center"><td class="blank"><font class="text">5</font></td><td class="blank" align="right"><font class="text">&pound;1,000.00</font></td><td class="blank" align="right"><font class="text">&pound;0.00</font></td><td class="blank" align="right"><font class="text">&pound;121.49</font></td><td class="blank" align="right"><font class="text">&pound;1,281.06</font></td></tr><tr align="center"><td class="blank"><font class="text">10</font></td><td class="blank" align="right"><font class="text">&pound;1,000.00</font></td><td class="blank" align="right"><font class="text">&pound;0.00</font></td><td class="blank" align="right"><font class="text">&pound;309.46</font></td><td class="blank" align="right"><font class="text">&pound;1,657.69</font></td></tr></table></td></tr><tr><td class="blank"><font class="text"><br/>The last line in the table shows that over ten years the effect of the total charges and expenses could amount to &pound;309.46.  Putting it another way, this would have the same effect as bringing the illustrated investment growth from 7% a year down to 5.18%.</font></td></tr></table><br/>
  <h1>END</h1>
  
  </body>
  </html>
  
  
  
  
  
  
  1.1                  embperl/test/cmp2/incxmlXalanXSLT.htm
  
  Index: incxmlXalanXSLT.htm
  ===================================================================
  
  
  <html><head><title>Include POD via XSLT</title></head>
  
  <body>
  
  <h1>Start pod.xml</h1>
  
  <?xml version="1.0" encoding="iso-8859-1"?>
  <html xmlns="http://www.w3.org/TR/xhtml1/strict">
  <head>
  <title>POD</title>
  </head>
  <body>
  <h1>HEAD1</h1>
  some text under HEAD1
  
  <h2>
  <img src="sq.gif" width="16" height="16" alt="-"/>HEAD2</h2>
  <p/>
  some text under HEAD2
  
  HEAD3
  some text under HEAD3
  
  format bold <code>code</code> italic underline
  
  <ul>
  <li>
  <b>first item</b>
  </li>
  <br/>
  text 1
  
  <li>
  <b>second item</b>
  </li>
  <br/>
  text 2
  
  </ul>
  
  <ul>
  first item
  text 1
  
  second item
  text 2
  
  </ul>
  
  </body>
  </html>
  <h1>Start kfdres.xml</h1>
  
  <?xml version="1.0" encoding="UTF-8"?>
  <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td class="bar01"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="9" height="1"/></td></tr><tr><td class="bar01" height="26"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="8" height="1"/><font class="lighttextbold">Henderson North American</font></td></tr><tr><td class="bar01"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="9" height="1"/></td></tr><tr height="10"/><tr height="25"><td class="blank"><font class="textblueboldsmaller">Manager / Authorised Corporate Director:
  </font><br/><font class="text">Henderson Investment Funds Limited<br/>4 Broadgate<br/>London<br/>EC2M 2DA<br/>UK<br/></font><br/></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Name of Trustee/Depositary:</font><br/><font class="text">Chase Manhattan Trustees Limited<br/><br/></font></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Fund Investment Objective:</font><br/><font class="text">To provide capital growth by investing in North American companies. The Fund will primarily invest in larger companies.<br/><br/></font></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Initial Charge:</font>&nbsp;<font class="text">1%</font></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Annual Charge:</font>&nbsp;<font class="text">1.5%</font></td></tr><tr height="25"><td class="blank"><font class="textblueboldsmaller">Other Charges:</font>&nbsp;<font class="text">0.11%</font></td></tr></table><br/><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td class="tablebar"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="9" height="1"/><font class="lighttextbold">Units or shares purchased within an ISA :</font><table width="100%" cellpadding="2" cellspacing="1" border="0"><tr><td class="tablebar" colspan="9"><img src="[ImageDir]/1pixel.gif/$FILE/1pixel.gif" width="1" height="7"/></td></tr><tr align="center"><td class="blank"><font class="textbold">At end of year</font></td><td class="blank"><font class="textbold">Investment to date</font></td><td class="blank"><font class="textbold">Income to date</font></td><td class="blank"><font class="textbold">Effect of deductions to date</font></td><td class="blank"><font class="textbold">What you might get back at 7%</font></td></tr><tr align="center"><td class="blank"><font class="text">1</font></td><td class="blank" align="right"><font class="text">&pound;1,000.00</font></td><td class="blank" align="right"><font class="text">&pound;0</font></td><td class="blank" align="right"><font class="text">&pound;27.6295</font></td><td class="blank" align="right"><font class="text">&pound;1042.3705</font></td></tr><tr align="center"><td class="blank"><font class="text">3</font></td><td class="blank" align="right"><font class="text">&pound;1,000.00</font></td><td class="blank" align="right"><font class="text">&pound;0</font></td><td class="blank" align="right"><font class="text">&pound;69.4737</font></td><td class="blank" align="right"><font class="text">&pound;1155.5693</font></td></tr><tr align="center"><td class="blank"><font class="text">5</font></td><td class="blank" align="right"><font class="text">&pound;1,000.00</font></td><td class="blank" align="right"><font class="text">&pound;0</font></td><td class="blank" align="right"><font class="text">&pound;121.4905</font></td><td class="blank" align="right"><font class="text">&pound;1281.0612</font></td></tr><tr align="center"><td class="blank"><font class="text">10</font></td><td class="blank" align="right"><font class="text">&pound;1,000.00</font></td><td class="blank" align="right"><font class="text">&pound;0</font></td><td class="blank" align="right"><font class="text">&pound;309.4566</font></td><td class="blank" align="right"><font class="text">&pound;1657.6948</font></td></tr></table></td></tr><tr><td class="blank"><font class="text"><br/>The last line in the table shows that over ten years the effect of the total charges and expenses could amount to &pound;309.4566.  Putting it another way, this would have the same effect as bringing the illustrated investment growth from 7% a year down to 5.18%.</font></td></tr></table><br/><h1>END</h1>
  
  </body>
  </html>
  
  
  
  
  
  
  1.2       +574 -0    embperl/test/cmp2/input.htm
  
  
  
  
  1.1                  embperl/test/cmp2/inputjava.htm
  
  Index: inputjava.htm
  ===================================================================
    <html>
    <body>
      <form action="script.htm" method="POST">
  ^      <input type=(hidden|"hidden") name="Screen" value="1">
  
        Screen 1<br>
  ^      <input type=(submit|"submit") name="Command" value="Start" onClick="document.forms\[0\].Command.action = 'Start'">
  ^      <input type=(submit|"submit") name="Command" value="Next" onClick="document.forms\[0\].Command.action = 'Next'">
      </form>
      <select name="foo" onChange="javascript:this.value=this.value.toUpperCase();"> </select>
  	<foo name="foo" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<select name="foo" bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"  bla="xxx"> </select>
  	<foo name="foo"  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" bla="xxx">
  
  	<select bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"   name="xxx"> </select>
  	<foo  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" name="xxx">
  
  	<input type="text" name="titleref" value=""  SIZE="20"    
          MAXSIZE="20" onChange="javascript:this.value=this.value.toUpperCase();">
  
  ^	<input type=("text"|'text') name="titleref" value=""  SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase();'>
  
  ^	<input type=("text"|'text') name="titleref" value=""  SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase(1);'>
  
      </body>
    </html>
  
  
  
  
  1.1                  embperl/test/cmp2/inputjs2.htm
  
  Index: inputjs2.htm
  ===================================================================
  	<select name="foo"  onChange="javascript:this.value=this.value.toUpperCase();"> </select>
  	<foo name="foo" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<select name="foo"  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"  bla="xxx"> </select>
  	<foo name="foo"  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" bla="xxx">
  
  	<select bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" name="xxx"> </select>
  	<foo  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" name="xxx">
  
  	<input type="text" name="titleref" value=""  SIZE="20"    
          MAXSIZE="20" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<input type='text' name="titleref" value=""  SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase();'>
  
  	<input type='text' name="titleref" value=""  SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase(1);'>
  
  	<select name="foo"  onChange="javascript:this.value=this.value.toUpperCase();"> </select>
  	<foo name="foo" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<select name="foo"  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"  bla="xxx"> </select>
  	<foo name="foo"  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" bla="xxx">
  
  	<select bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" name="xxx"> </select>
  	<foo  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" name="xxx">
  
  	<input type="text" name="titleref" value  SIZE="20"    
          MAXSIZE="20" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<input type='text' name="titleref" value  SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase();'>
  
  	<input type='text' name="titleref" value  SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase([+ '1' +]);'>
  
  
  
  
  
  1.1                  embperl/test/cmp2/java.htm
  
  Index: java.htm
  ===================================================================
   <html>
    <script language="JavaScript">
    var ReqFields = new init_reqfields('F1', 'F2');
  
    function init_reqfields() {
      window.alert("Initializing global required fields\n");
  
      this.length = init_reqfields.arguments.length;
      for (var i = 0; i < this.length; i++)
        this[i] = init_reqfields.arguments[i];
    };
  
    function print_reqfields() {
      var result = "<table><tr><td>1</td></tr><tr><td>2</td></tr></table>";
  
      for (i = 0;  i < ReqFields.length; i++)
        result += ReqFields[i] + "\n";
  
      window.alert(result);
    };
    </script>
  
  
    <script>
      for (var j = 0; j < select2loc[i].length; j++){   }
    </script>
  
  
    </html>
  
  
  
  
  1.1                  embperl/test/cmp2/keepreq.htm
  
  Index: keepreq.htm
  ===================================================================
  
  r before 
  global:
  ^lokal:  Embperl::Req=HASH
  p before 
  global:
  ^lokal:  Embperl::Req::Param=HASH
  r after 
  ^global: Embperl::Req=HASH
  ^lokal:  Embperl::Req=HASH
  p after
  ^global: Embperl::Req::Param=HASH
  ^lokal:  Embperl::Req::Param=HASH
  
  
  
  1.2       +215 -0    embperl/test/cmp2/lists.htm
  
  
  
  
  1.2       +140 -0    embperl/test/cmp2/loop.htm
  
  
  
  
  1.1                  embperl/test/cmp2/loopperl.htm
  
  Index: loopperl.htm
  ===================================================================
  
  <html>
  <head>
  <title>Test for Embperl - Loop Metacommand</title>
  </head>
  
  <body>
  
  erstes = Hallo	Wert2 0 <BR>
      zweites = Leer zeichen 0 1 <BR>
      drittes = !&quot;# 0 1 2 <BR>
      0
  1
  2
  A = 1<br>
  B = 2<br>
  C = 3<br>
  @a[0] = a<br>
  	@a[1] = b<br>
  	@a[2] = c<br>
  	@a[3] = d<br>
  	@a[0] = a<br>
  	@a[1] = b<br>
  	@a[2] = c<br>
  	@a[3] = d<br>
  	a <br>
  b <br>
  c <br>
  d <br>
  1 <br>
  3 <br>
  5 <br>
  7 <br>
  9 <br>
  1 <br>
  2 <br>
  3 <br>
  4 <br>
  5 <br>
  6 <br>
  7 <br>
  8 <br>
  9 <br>
  10 <br>
  @a[0] = a<br>
  	A = 1<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			B = 2<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			C = 3<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			@a[1] = b<br>
  	A = 1<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			B = 2<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			C = 3<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			@a[2] = c<br>
  	A = 1<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			B = 2<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			C = 3<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			@a[3] = d<br>
  	A = 1<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			B = 2<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			C = 3<br>
  		1 <br>
  		3 <br>
  		5 <br>
  		7 <br>
  		9 <br>
  		1 <br>
  			</body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/mail.htm
  
  Index: mail.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - use Mail taglib</title>
  </head>
  
  <body>
  
  
    
  
    tagend<br>
  
    $? = 0<br>
  
    <h2>Your mail was successfully delivered</h2>
    </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/mailformto.htm
  
  Index: mailformto.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - use MailFormTo</title>
  </head>
  
  <body>
  
  $? = 0<br>
  
  <h2>Your mail was successfully delivered</h2>
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/mdatsess.htm
  
  Index: mdatsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Session Data (%mdat)</title>
  </head>
  
  
  <body>
  
  ^        \$mdat\{cnt\} = \d+ <br>
  ^        \$fdat\{cnt\} = \d+ <br>
  
          equal ? yes <br>
  
  ^		ok \(num\=(1|6)\)<p>
  
          </body>
  </html>
  
  
  
  
  1.2       +57 -0     embperl/test/cmp2/mix.htm
  
  
  
  
  1.1                  embperl/test/cmp2/nesting.htm
  
  Index: nesting.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Nesting of html and meta commands</title>
  </head>
  
  
  <body>
  
  <table>
  	<tr>
  		<td>aa</td><td>11</td>
  	</tr>
  
  	<tr>
  		<td>bb</td><td>22</td>
  	</tr>
  
  	<tr>
  		<td>cc</td><td>33</td>
  	</tr>
  
  	<tr>
  		<td>dd</td><td>44</td>
  	</tr>
  </table>
  
  
  <table>
  	<tr>
  <td>aa</td><td>11</td>
  </tr>
  
  	<tr>
  <td>bb</td><td>22</td>
  </tr>
  
  	<tr>
  <td>cc</td><td>33</td>
  </tr>
  
  	<tr>
  <td>dd</td><td>44</td>
  </tr>
  </table>
  <td>aa</td><td>11</td>
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/nochdir.htm
  
  Index: nochdir.htm
  ===================================================================
  <html>
  <head>
  <title>Some tests for Embperl</title>
  </head>
  
  
  <body>
  
  optDisableChdir:1 <BR>
  optDisableFormData: 1 <BR>
  ^Script  CWD: 
  ^Embperl CWD: 
  
  ^Equal:
  ^Diff CWD: 
  Test/html: no
  
  <table></table>
  
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/noerrpage.htm
  
  Index: noerrpage.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  Here we will see an error:
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Second Error:<BR>
   <BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  Tag missmatch:
  
  <table>
  
  
  
  
  1.1                  embperl/test/cmp2/nooutput.htm
  
  Index: nooutput.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Some Perl, but no output</title>
  </head>
  
  
  <body>
  
  1 2 3 </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/npherr.htm
  
  Index: npherr.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  Here we will see an error:
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Second Error:<BR>
   <BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  Tag missmatch:
  
  <table>
  
  
  1.1                  embperl/test/cmp2/nphinc.htm
  
  Index: nphinc.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Tests - Include with optEarlyHttpHeaders</title>
  </head>
  
  <body>
  
  <h1>Embperl Tests - Include with optEarlyHttpHeaders</h1>
  
  forinc in main = <br>
  
  Before Execute<br>
  <b>Inside Execute</b><br>
  forinc in include = <br>
  
  After Execute
  
  forinc in main = message<br>
  
  <table>
  <tr><td>
  In Table Before Execute<br>
  <b>In Table Inside Execute</b><br>
  forinc in include = message<br>
  
  In Table After Execute
  </td></tr>
  </table>
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/object.htm
  
  Index: object.htm
  ===================================================================
  <html>
  <head>
  <title>Some tests for Embperl</title>
  </head>
  
  
  <body>
  
  <TABLE BORDER=0 WIDTH=90%>
  	<TR>
  		<TD>
  			<A HREF="index.html?id=id%200">name 0</A>
  		</TD>
  	</TR>
  
  	<TR>
  		<TD>
  			<A HREF="index.html?id=id%201">name 1</A>
  		</TD>
  	</TR>
  
  	<TR>
  		<TD>
  			<A HREF="index.html?id=id%202">name 2</A>
  		</TD>
  	</TR>
  
  	<TR>
  		<TD>
  			<A HREF="index.html?id=id%203">name 3</A>
  		</TD>
  	</TR>
  </TABLE>
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/opmask.htm
  
  Index: opmask.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  a <br>
  a <br>
  a <br>
      b is null <br>
      a <br>
      b is null <br>
      a<br>
      b is null <br>
      <table></table>
  
  
  <p> $tabmode = default <p>
  
  <hr><p>Display an two dimensional array with one, two and three columns !<BR>
  Please take a look at the source in your browser to see the difference<BR>
  
  $a[0][0] = '1/1' ;<BR>
     $a[1][0] = '2/1' ;<BR>
     $a[1][1] = '2/2' ;<BR>
     $a[2][0] = '3/1' ;<BR>
     $a[2][1] = '3/2' ;<BR>
     $a[2][2] = '3/3' ;<BR>
  
  <P>$tabmode = default <P>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <th>1</th>
          <th>2</th>
          <th>3</th>
      </tr> 
      <tr>
          <td>a1/1 </td>
      </tr> 
   
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
   
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <th>b3/1</th>
      
          <th>b3/2</th>
      
          <th>b3/3</th>
      </tr> 
      <tr>
          <td>a1/1 </td>
      </tr> 
   
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
   
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table>
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a1/1 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/2 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/2 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/3 </td>
      </tr> 
  </table>
  
      Shared data: Shared Data <br>
  Not Shared data:  <br>
  
  <P><P>
  
  <P>17<P>
  <P>1<P>
  
  <P>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/opmasktrap.htm
  
  Index: opmasktrap.htm
  ===================================================================
  <HTML><HEAD><TITLE>Embperl Error</TITLE></HEAD><BODY bgcolor="#FFFFFF">
  <H1>Internal Server Error</H1>
  The server encountered an internal error or misconfiguration and was unable to complete your request.<P>
  ^Please contact the server administrator\,.*?and inform them of the time the error occurred\, and anything you might have done that may have caused the error\.
  ^\[.*?\]ERR\:  32\:  Warning in Perl code\: Use of uninitialized value
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code
  ^\[.*?]ERR\:  24\:  Error in Perl code\: 
  ^\[.*?\]ERR\:  24\:  Error in Perl code\: syntax error at .*? line \d*\, near \&quot\;package main\&quot\;
  ^ HTML\:\:Embperl.*?<P>
  </BODY></HTML>
  
  
  
  
  
  1.1                  embperl/test/cmp2/plain.htm
  
  Index: plain.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <!-- Here is a comment -->
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  ARRAY @d =  num = 0 <BR>
  ARRAY @x =  num = 0 <BR>
  HASH  %a =  num = 0 <BR>
  HASH  %y =  num = 0 <BR>
  
  
  First of all assign a value:
  <BR>
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  ARRAY @d = 1 2 3 num = 3 <BR>
  ARRAY @x = 9 8 7 num = 3 <BR>
  HASH  %a = 1 2 3 a b c num = 3 <BR>
  HASH  %y = 7 8 9 x y z num = 3 <BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  SELECT *  FROM a ORDER BY b USING &lt;; Hi There&gt;
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  SELECT * FROM a ORDER BY b USING &lt;; Hi There&gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  Input Separator = 10<br>
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/plainblock.htm
  
  Index: plainblock.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  SELECT *  FROM a ORDER BY b USING &lt;; Hi There&gt;
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  SELECT * FROM a ORDER BY b USING &lt;; Hi There&gt;
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/pod.asc.htm
  
  Index: pod.asc.htm
  ===================================================================
  <?xml version="1.0" encoding="iso-8859-1"?>
  <html xmlns="http://www.w3.org/TR/xhtml1/strict">
  <head>
  <title>Test pod for Embperl</title>
  </head>
  <body>Test pod for Embperl<h1>HEAD1</h1>
  
  <p>some text under HEAD1</p>
  
  
  <p>more text under HEAD1</p>
  <pre>  some verbatim
    paragraph</pre><p>normal text 
  wraps around</p><pre> verbatim col 1
   line 2
   line 3</pre><pre>   verbatim col 3
     lin2
     lin3</pre><pre>   again col 3</pre><p>para text goes here</p>
  <h2>HEAD2</h2><p>some text under HEAD2</p><h2>second HEAD2 which
  wraps to the next line</h2><p>some text under HEAD2 which
  also warps to the next line</p><p>another paragraph is
  this</p><h2>HEAD3</h2><p>some text under HEAD3</p><h2>third HEAD2 which
  wraps to the next line</h2><p>some text under HEAD2 which
  also warps to the next line</p><p>format 
  <b>bold</b> 
  <code>code</code> 
  <i>italic</i> 
  <u>underline</u></p><ul><li><b>first item<p>text 1</p></b></li><br/><li><b>second item<p>text 2</p></b></li><br/></ul>
  
  <ul><li><b>first item<p>text 1
  two lines</p></b></li><br/><li><b>second item<p>text 2
  two lines</p>
  <ul><li><b>nested list item 1
  
  <p>text 1</p><p>line 2</p>
  
  </b></li><br/><li><b>nested list item 2
  
  <p>text 2</p><p>line 2</p>
  
  </b></li><br/></ul>
  
  
  </b></li><br/></ul>
  
  <h1>again HEAD1
  and second line of title</h1><p>again some text under HEAD1</p>
  <h2>again HEAD2</h2><p>again some text under HEAD2</p>
  <h1>restart</h1><p>some text</p><h1>restart 2</h1><h2>restart 2 Head 2</h2><p>text</p><h1>restart 2</h1><h2>restart 2 Head 2</h2><h2>restart 3 Head 2</h2><p>end</p><p><a href="test">test</a> <a href="yyy">xxx</a> <a href="http://www.ecos.de">http://www.ecos.de</a> <a href="ftp://ftp.dev.ecos.de">ftp://ftp.dev.ecos.de</a>
  <a href="test">test</a> <a href="yyy 2">xxx 2</a> <a href="http://www.ecos.de">http://www.ecos.de</a> <a href="ftp://ftp.dev.ecos.de">ftp://ftp.dev.ecos.de</a></p><h1>ID Test head1</h1><h2>ID Test head2</h2><p>ID Test para</p>
  </body>
  </html>
  
  
  
  1.1                  embperl/test/cmp2/pod.asc.xalan.htm
  
  Index: pod.asc.xalan.htm
  ===================================================================
  <?xml version="1.0" encoding="iso-8859-1"?>
  <html xmlns="http://www.w3.org/TR/xhtml1/strict">
  <head>
  <title>Test pod for Embperl</title>
  </head>
  <body>Test pod for Embperl<h1>HEAD1</h1>
  
  <p>some text under HEAD1</p>
  
  
  <p>more text under HEAD1</p>
  <pre>  some verbatim
    paragraph</pre>
  <p>normal text 
  wraps around</p>
  <pre> verbatim col 1
   line 2
   line 3</pre>
  <pre>   verbatim col 3
     lin2
     lin3</pre>
  <pre>   again col 3</pre>
  <p>para text goes here</p>
  <h2>HEAD2</h2>
  <p>some text under HEAD2</p>
  <h2>second HEAD2 which
  wraps to the next line</h2>
  <p>some text under HEAD2 which
  also warps to the next line</p>
  <p>another paragraph is
  this</p>
  <h2>HEAD3</h2>
  <p>some text under HEAD3</p>
  <h2>third HEAD2 which
  wraps to the next line</h2>
  <p>some text under HEAD2 which
  also warps to the next line</p>
  <p>format 
  <b>bold</b> 
  <code>code</code> 
  <i>italic</i> 
  <u>underline</u>
  </p>
  <ul>
  <li>
  <b>first item<p>text 1</p>
  </b>
  </li>
  <br/>
  <li>
  <b>second item<p>text 2</p>
  </b>
  </li>
  <br/>
  </ul>
  
  <ul>
  <li>
  <b>first item<p>text 1
  two lines</p>
  </b>
  </li>
  <br/>
  <li>
  <b>second item<p>text 2
  two lines</p>
  <ul>
  <li>
  <b>nested list item 1
  
  <p>text 1</p>
  <p>line 2</p>
  
  </b>
  </li>
  <br/>
  <li>
  <b>nested list item 2
  
  <p>text 2</p>
  <p>line 2</p>
  
  </b>
  </li>
  <br/>
  </ul>
  
  
  </b>
  </li>
  <br/>
  </ul>
  
  <h1>again HEAD1
  and second line of title</h1>
  <p>again some text under HEAD1</p>
  <h2>again HEAD2</h2>
  <p>again some text under HEAD2</p>
  <h1>restart</h1>
  <p>some text</p>
  <h1>restart 2</h1>
  <h2>restart 2 Head 2</h2>
  <p>text</p>
  <h1>restart 2</h1>
  <h2>restart 2 Head 2</h2>
  <h2>restart 3 Head 2</h2>
  <p>end</p>
  <p>
  <a href="test">test</a> <a href="yyy">xxx</a> <a href="http://www.ecos.de">http://www.ecos.de</a> <a href="ftp://ftp.dev.ecos.de">ftp://ftp.dev.ecos.de</a>
  <a href="test">test</a> <a href="yyy 2">xxx 2</a> <a href="http://www.ecos.de">http://www.ecos.de</a> <a href="ftp://ftp.dev.ecos.de">ftp://ftp.dev.ecos.de</a>
  </p>
  <h1>ID Test head1</h1>
  <h2>ID Test head2</h2>
  <p>ID Test para</p>
  </body>
  </html>
  
  
  
  1.1                  embperl/test/cmp2/post.htm
  
  Index: post.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Show posted data</title>
  </head>
  
  
  <body>
  
  <table>
  	<tr>
  		<td>f1</td><td>Length=4</td><td>abc1</td>
  	</tr>
  
  	<tr>
  		<td>f2</td><td>Length=10</td><td>1234567890</td>
  	</tr>
  
  	<tr>
  		<td>f3</td><td>Length=8192</td><td>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</td>
  	</tr>
  </table>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/pure.htm
  
  Index: pure.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some tests for Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  This pure HTML Text. Nothing todo for Embperl,<BR>
  
  just pass it thru...
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  
  1.2       +82 -0     embperl/test/cmp2/rawinput.htm
  
  
  
  
  1.1                  embperl/test/cmp2/recursexec.htm
  
  Index: recursexec.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Recursion via Execute</title>
  </head>
  
  <body>
  <h1>Tests for Embperl - Recursion via Execute</h1>
  
  Call Execute; deep = 1<br>
      <html>
  <head>
  <title>Tests for Embperl - Recursion via Execute</title>
  </head>
  
  <body>
  <h1>Tests for Embperl - Recursion via Execute</h1>
  
  Call Execute; deep = 2<br>
      <html>
  <head>
  <title>Tests for Embperl - Recursion via Execute</title>
  </head>
  
  <body>
  <h1>Tests for Embperl - Recursion via Execute</h1>
  
  Call Execute; deep = 3<br>
      <html>
  <head>
  <title>Tests for Embperl - Recursion via Execute</title>
  </head>
  
  <body>
  <h1>Tests for Embperl - Recursion via Execute</h1>
  
  Call Execute; deep = 4<br>
      <html>
  <head>
  <title>Tests for Embperl - Recursion via Execute</title>
  </head>
  
  <body>
  <h1>Tests for Embperl - Recursion via Execute</h1>
  
  End Recursion; deep = 5<br>
  </body>
  </html>
  
  End Execute; deep = 4<br>
  </body>
  </html>
  
  End Execute; deep = 3<br>
  </body>
  </html>
  
  End Execute; deep = 2<br>
  </body>
  </html>
  
  End Execute; deep = 1<br>
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/reggetsess.htm
  
  Index: reggetsess.htm
  ===================================================================
  <HTML><TITLE>Test for HTML::Embperl::Req::SetupSession</TITLE><BODY>
  a = 1 <BR>
  <P>Here is some text inside of Execute</P>
  </BODY></HTML>
  
  
  
  1.1                  embperl/test/cmp2/reqrec.htm
  
  Index: reqrec.htm
  ===================================================================
  
  <html>
  <head>
  <title>Test for $req_rec in Embperl</title>
  </head>
  
  $conf =  <br> 
  ^\$_\[0\] = Embperl::Req=HASH\(0x.*?\) <br> 
  $_[1] =  <br> 
  
  ^\$rec_rec  = Apache(::RequestRec)?=SCALAR\(0x.*?\)<br>
  ^\$\$rec_rec = \d+<br>
  
  ^Apache->request    = Apache(::RequestRec)?=SCALAR\(0x.*?\)<br>
  ^\$\{Apache->request\} = \d+<br>
  
  ${Apache->request} = $$req_rec ?  yes <br>
  
  ^.*?test\/html\/reqrec\.htm
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/safe.htm
  
  Index: safe.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  a <br>
  a <br>
  a <br>
      b is null <br>
      a <br>
      b is null <br>
      a<br>
      b is null <br>
      <table></table>
  
  
  <p> $tabmode = default <p>
  
  <hr><p>Display an two dimensional array with one, two and three columns !<BR>
  Please take a look at the source in your browser to see the difference<BR>
  
  $a[0][0] = '1/1' ;<BR>
     $a[1][0] = '2/1' ;<BR>
     $a[1][1] = '2/2' ;<BR>
     $a[2][0] = '3/1' ;<BR>
     $a[2][1] = '3/2' ;<BR>
     $a[2][2] = '3/3' ;<BR>
  
  <P>$tabmode = default <P>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <th>1</th>
          <th>2</th>
          <th>3</th>
      </tr> 
      <tr>
          <td>a1/1 </td>
      </tr> 
   
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
   
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <th>b3/1</th>
      
          <th>b3/2</th>
      
          <th>b3/3</th>
      </tr> 
      <tr>
          <td>a1/1 </td>
      </tr> 
   
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
   
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table>
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a1/1 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a2/2 </td>
      </tr> 
  
      <tr>
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/1 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/2 </td>
      
          <td>
              <table>
      		<tr>
                      <td>b1/1 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b2/1 </td>
      		
                      <td>b2/2 </td>
      		</tr> 
  	    
      		<tr>
                      <td>b3/1 </td>
      		
                      <td>b3/2 </td>
      		
                      <td>b3/3 </td>
      		</tr> 
  	    </table>
  
          a3/3 </td>
      </tr> 
  </table>
  
  <P><P>
  
  <P>17<P>
  <P>1<P>
  
  <P>
  
  <table>
      <tr>
              <td>ii[0] = 0 </td>
      </tr> 
  
      <tr>
              <td>ii[1] = 1 </td>
      </tr> 
  
      <tr>
              <td>ii[2] = 2 </td>
      </tr> 
  
      <tr>
              <td>ii[3] = 3 </td>
      </tr> 
  
      <tr>
              <td>ii[4] = 4 </td>
      </tr> 
  
      <tr>
              <td>ii[5] = 5 </td>
      </tr> 
  
      <tr>
              <td>ii[6] = 6 </td>
      </tr> 
  
      <tr>
              <td>ii[7] = 7 </td>
      </tr> 
  
      <tr>
              <td>ii[8] = 8 </td>
      </tr> 
  
      <tr>
              <td>ii[9] = 9 </td>
      </tr> 
  </table>
  
  1
  
      10
  
      100
  
      1000
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/setbadsess.htm
  
  Index: setbadsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data (with bad cookie)</title>
  </head>
  
  <body>
  ^\s+[a-fA-F0-9]+$
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/setsdaturlsess.htm
  
  Index: setsdaturlsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set State Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table>
  		<tr>
  			<td>sdat</td><td>99</td>
  		</tr>
  	</table>
  
  	sdat:<br> 
  	<table></table>
  
  	ok (num=1)<p>
  
  ^ 	<a href=\"cont\.htm\?EMBPERL_UID=[a-f0-9]+\">continue</a>
  ^	<a href=\"cont.htm\?q=1&EMBPERL_UID=[a-f0-9]+\">continue</a>
  ^	<a href=\"cont.htm\?q=1&b=2&EMBPERL_UID=[a-f0-9]+\">continue</a>
  ^	<form action="cont.htm"><input type=\"hidden\" name=\"EMBPERL_UID\" value=\"[a-f0-9]+\">
      </form>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/setsess.htm
  
  Index: setsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	</table>
  
  	udat:<br>
  	<table></table>
  
  	Not a session hash (num=0)<p>
  
  	sessions:
  ^	<table>
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-
  ^-		<tr>
  ^-			<td>.*?<\/td><td>HASH.*?<\/td>
  ^-		</tr>
  ^-	</table>
  	<a href="cont.htm">continue</a>
  	<a href="cont.htm?q=1">continue</a>
  	<a href="cont.htm?q=1&b=2">continue</a>
  	<form action="cont.htm">
  	</form>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/setunknownsess.htm
  
  Index: setunknownsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data (unknown cookie)</title>
  </head>
  
  <body>
  ^\s+[a-fA-F0-9]+$
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/seturlsess.htm
  
  Index: seturlsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	<table>
  		<tr>
  			<td>a</td><td>1</td>
  		</tr>
  	</table>
  
  	udat:<br> 
  	<table></table>
  
  	ok (num=1)<p>
  
  	sessions:
  	<table></table>
  
  ^ 	<a href=\"cont\.htm\?EMBPERL_UID=[a-f0-9]*?:[a-f0-9]+\">continue</a>
  ^	<a href=\"cont.htm\?q=1&EMBPERL_UID=[a-f0-9]*?:[a-f0-9]+\">continue</a>
  ^	<a href=\"cont.htm\?q=1&b=2&EMBPERL_UID=[a-f0-9]*?:[a-f0-9]+\">continue</a>
  ^	<form action="cont.htm"><input type=\"hidden\" name=\"EMBPERL_UID\" value=\"[a-f0-9]*?:[a-f0-9]+\">
          </form>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/spaces.htm
  
  Index: spaces.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - optKeepSpaces</title>
  </head>
  
  
  <body>
  
  0
  1
  <pre>
  A:     4
  B:     6
         8
  C:     10
  D:     12
  </pre>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/ssibasic.htm
  
  Index: ssibasic.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - SSI Tags</title>
  </head>
  
  <body>
  
  <!-- Normal Comment -->
  
  
  
  EPSSITEST 1: 1
  
  
  
  EPSSITEST 2: 1+1
  
  
  
  EPSSITEST 3: 1+1+1
  
  
  
  EPSSITEST 4: 1+1+1 + 1
  
  
  
  EPSSITEST 5: 1+1+1 + 1 + 1
  
  
  
  EPSSITEST 6: 1+1+1 + 1 + 1 + 1
  
  
  ^DATE_GMT:		 ... ... \d+ \d+:\d+:\d+ 2\d+
  ^DATE_LOCAL:		 ... ... \d+ \d+:\d+:\d+ 2\d+
  ^DOCUMENT_NAME:	 ssibasic.htm
  ^DOCUMENT_URI:	 
  ^LAST_MODIFIED:	 ... ... \d+ \d+:\d+:\d+ 2\d+
  
  
  sizefmt=bytes
  
  
  ^fsize self: (2232|2121)
  ^fsize file ssiinc.htm (22|21)
  ^fsize virtual ssiinc.htm (22|21)
  
  ^flastmod self: ... ... \d+ \d+:\d+:\d+ 2\d+
  ^flastmod file ssiinc.htm ... ... \d+ \d+:\d+:\d+ 2\d+
  ^flastmod virtual ssiinc.htm ... ... \d+ \d+:\d+:\d+ 2\d+
  
  sizefmt=abbrev
  
  
  
  fsize self:    2k
  fsize file ssiinc.htm    1k
  fsize virtual ssiinc.htm    1k
  ^flastmod self: \d+:\d+:\d+ 2\d+
  ^flastmod file ssiinc.htm \d+:\d+:\d+ 2\d+
  ^flastmod virtual ssiinc.htm \d+:\d+:\d+ 2\d+
  
  --INCLUDE-->
  
  < Some inc for SSI >
  
  
  <--INCLUDE--
  
  
  if 1
  1
  if 2
  EPSSITEST
  if 3
  ! NOT EPSSITEST
  if 4
  1
  Some Embperl command that should _not_ executed here:
  
  [- hallo -] [+ foo +]
  
  
  </body>
  </html>
  
  
  
  
  
  
  
  
  1.1                  embperl/test/cmp2/ssiep.htm
  
  Index: ssiep.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - Mixed Embperl and SSI syntax</title>
  </head>
  
  <body>
  
  <!-- Normal Comment -->
  
  
  
  EPSSITEST 1 SSI: 1 + foo + bar
  
  
  EPSSITEST 1 EP:  1 + foo + bar
  <table>
      <tr>
          <td>Embperl</td><td>a</td> 
          <td>SSI</td>    <td>a</td> 
      </tr>
  
      <tr>
          <td>Embperl</td><td>b</td> 
          <td>SSI</td>    <td>b</td> 
      </tr>
  
      <tr>
          <td>Embperl</td><td>c</td> 
          <td>SSI</td>    <td>c</td> 
      </tr>
  </table>
  
  Embperl inside  SSI: 1 + foo + bar
  
  </body>
  </html>
  
  
  
  
  
  1.1                  embperl/test/cmp2/stdout.htm
  
  Index: stdout.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - print to stdout </title>
  </head>
  
  
  <body>
  
  optRedirectStdout: 1 <BR>
  
  Here goes some text via [ + ... + ] <BR>
  
  Now we print to filehandle OUT<BR>
  
  And Now we print to STDOUT<BR>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/sub.htm
  
  Index: sub.htm
  ===================================================================
  
  <html>
  <head>
  <title>Define a SUbroutine within Embperl</title>
  </head>
  
  <body>
  
  
  Here we define a subroutine<P>
  
  NOTE: It must be defined within [! ... !] to avoid redefinition!
  
  Now we call the subroutine: Hello world <P>
  
  $XXXXXX::var =  <br>
  
  Setup some variable outside our namespace, which should not be cleaned up<br>
  
  $XXXXXX::var = 1 <br>
  
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/subtab.htm
  
  Index: subtab.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Test - Subs and Tables</title>
  </head>
  
  <body>
  
  
  <table>
  	<tr>
  
      <td bgcolor="#1" align=left> <table> <tr>
  				<td><a href="epl_ober.htm?id=1&bereich_id=b" onMouseOut='hidePopup()'><img border=0  src="/images/belegt_rotxxx.gif"></td>
                  <td bgcolor="#00ff00"><a href="epl_ober.htm?id=1&bereich_id=b" onMouseOut='hidePopup()'><small><strong><font face="" color="#000000">&nbsp;bu&nbsp;</td>
  					<td bgcolor="#00ff00"><a href="epl_ober.htm?id=1&bereich_id=b" onMouseOut='hidePopup()'><small><strong><font face="" color="#000000">&nbsp;bu&nbsp;</td>
  					</tr> </table> </td>
          
  		<td bgcolor="#1" align=left> <table> <tr>
  				<td><a href="epl_ober.htm?id=1&bereich_id=b" onMouseOut='hidePopup()'><img border=0  src="/images/belegt_rotxxx.gif"></td>
                  <td bgcolor="#00ff00"><a href="epl_ober.htm?id=1&bereich_id=b" onMouseOut='hidePopup()'><small><strong><font face="" color="#000000">&nbsp;bu&nbsp;</td>
  					<td bgcolor="#00ff00"><a href="epl_ober.htm?id=1&bereich_id=b" onMouseOut='hidePopup()'><small><strong><font face="" color="#000000">&nbsp;bu&nbsp;</td>
  					</tr> </table> </td>
          
  		</tr>
  </table>    			
  
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/subtextarea.htm
  
  Index: subtextarea.htm
  ===================================================================
  <html>
  <head>
  <title>Embperl Tests</title>
  </head>
  <body bgcolor="#ffffff">
  
      summary = a1<br>
      title = b2<br>
      pubdate = c3<br>
      content = d4<br>
      more = e5<br>
      
  
      <form method=post  action="ta3.htm">
           <textarea name="summary" rows=4 cols=45>a1</textarea>
           <br>
  
           <input name="title" type="text" size=40 maxlength=255 value="b2"><br>
       <input name="pubdate" type="text" size=40 maxlength=255 value="c3"><br>
       <br>
           <textarea name="content" rows=15 cols=45>d4</textarea>
  
           <input name="more" value="e5">
  
          <input type="submit">
      </form>
  
  </body>
  
  
  1.1                  embperl/test/cmp2/syntax.htm
  
  Index: syntax.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - Switch syntax</title>
  </head>
  
  <body>
  
  
  
  --- syntax Default ---
  
  	embperl 1	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  --- syntax SSI ---
  
  [+ $a = 'embperl 1' +]
  
  	
  	ssi 1
  
  
  --- syntax Embperl ---
  
  embperl 1	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  --- syntax Embperl SSI ---
  
  embperl 1	
  	ssi 1
  
  --- syntax - SSI = Embperl ---
  
  embperl 1	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  --- syntax + SSI =  Embperl SSI ---
  
  embperl 1	
  	ssi 1
  
  
  --- syntax - Embperl = SSI ---
  
  [+ $a = 'embperl 1' +]
  
  	
  	ssi 1
  
  
  --- syntax Text ---
  
  [+ $a = 'embperl 1' +]
  
  	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  
  </body>
  </html>
  
  
  
  
  1.2       +565 -0    embperl/test/cmp2/table.htm
  
  
  
  
  1.1                  embperl/test/cmp2/tabmode.htm
  
  Index: tabmode.htm
  ===================================================================
  
  
  $a[0][0] = '1/1' ;<BR>
     $a[1][0] = '2/1' ;<BR>
     $a[1][1] = '2/2' ;<BR>
     $a[2][0] = '3/1' ;<BR>
     $a[2][1] = '3/2' ;<BR>
     $a[2][2] = '3/3' ;<BR>
  
  <P>$tabmode = default <P>
  
  
  <table>
      <tr>
          <td>a1/1</td>
      </tr> 
  
      <tr>
          <td>a2/1</td>
      </tr> 
  
      <tr>
          <td>a3/1</td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <th>1</th>
          <th>2</th>
          <th>3</th>
      </tr> 
      <tr>
          <td>a1/1 </td>
      </tr> 
   
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
   
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  <table border="3" width="100%">
      <tr>
          <th>b3/1</th>
      
          <th>b3/2</th>
      
          <th>b3/3</th>
      </tr> 
      <tr>
          <td>a1/1 </td>
      </tr> 
   
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      </tr> 
   
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      </tr> 
  </table>
  
  
  
  <hr><P>$tabmode=3 + 48 ; $maxcol = 4; $maxrow = 4 <P>
  <table>
      <tr>
          <td>a1/1 </td>
      
          <td> </td>
      
          <td> </td>
      
          <td> </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      
          <td> </td>
      
          <td> </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      
          <td> </td>
      </tr> 
  
      <tr>
          <td> </td>
      
          <td> </td>
      
          <td> </td>
      
          <td> </td>
      </tr> 
  </table>
  
  <hr><p> $tabmode=1 + 32 ; <p>
  <table>
      <tr>
          <td>a1/1 </td>
      
          <td> </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      
          <td> </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      
          <td> </td>
      </tr> 
  
      <tr>
          <td> </td>
      </tr> 
  </table>
  
  optDisableTableScan is now: 0 <BR>
  optDisableTableScan is set now to: 1 <BR>
  optDisableTableScan is now: 1 <BR>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      </tr> 
  </table>
  
  optDisableTableScan is now: 1 <BR>
  optDisableTableScan is set now to: 0 <BR>
  optDisableTableScan is now: 0 <BR>
  
  <table border="2" width="100%">
      <tr>
          <td>a1/1 </td>
      
          <td> </td>
      </tr> 
  
      <tr>
          <td>a2/1 </td>
      
          <td>a2/2 </td>
      
          <td> </td>
      </tr> 
  
      <tr>
          <td>a3/1 </td>
      
          <td>a3/2 </td>
      
          <td>a3/3 </td>
      
          <td> </td>
      </tr> 
  
      <tr>
          <td> </td>
      </tr> 
  </table>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/tagintag.htm
  
  Index: tagintag.htm
  ===================================================================
  
  
  test syntax undef
  
  <input name="test syntax undef" value="">
  
  <img src="test syntax undef">
  
  <img width="test syntax undef">
  
  <img test syntax undef>
  
  test syntax 'x'
  
  <input name="test syntax 'x'" value="">
  
  <img src="test syntax 'x'">
  
  <img width="test syntax 'x'">
  
  <img test syntax 'x'>
  
  
  
  
  
  1.2       +114 -0    embperl/test/cmp2/tagscan.htm
  
  
  
  
  1.1                  embperl/test/cmp2/tagscandisable.htm
  
  Index: tagscandisable.htm
  ===================================================================
  
  
  optDisableHtmlScan is now: 0 <BR>
  optDisableHtmlScan is set now to: 1 <BR>
  optDisableHtmlScan is now: 1 <BR>
  
  
  blabla2
  blabla6 <input type="text" name="feld1" value="Wert1">
      <input type="text" name="feld2">
      <input type="text" size=10 name="feld3">
      <input type="text" name="feld4" size=10>
      
  	<input type="text" name="feld5" value="Wert5">
      <input type="text" name="feld6">
      <input type="text" size=10 name="feld7">
      <input type="text" name="feld8" size=10>
  	<table>
  		<tr>
  			<td></td><td></td>
  		</tr>
  	</table>
  
  	<table>
  	<tr>
  		<td>feld2</td><td>blabla2</td>
  	</tr>
  </table>
  
  optDisableHtmlScan is now: 1 <BR>
  optDisableHtmlScan is set now to: 0 <BR>
  optDisableHtmlScan is now: 0 <BR>
  
  	<table>
  	<tr>
  		<td>feld2</td><td>blabla2</td>
  	</tr>
  
  	<tr>
  		<td>feld6</td><td>blabla6</td>
  	</tr>
  </table>
  
      <input type="text" name="feld1" value="Wert1">
      <input type="text" name="feld2" value="blabla2">
      <input type="text" size=10 name="feld3">
      <input type="text" name="feld4" size=10>
      
  	<input type="text" name="feld5" value="Wert5">
      <input type="text" name="feld6" value="blabla6">
      <input type="text" size=10 name="feld7">
      <input type="text" name="feld8" size=10>
  
  	<table>
  		<tr>
  			<td>feld1</td><td>Wert1</td>
  		</tr>
  	
  		<tr>
  			<td>feld2</td><td>blabla2</td>
  		</tr>
  	
  		<tr>
  			<td>feld5</td><td>Wert5</td>
  		</tr>
  	
  		<tr>
  			<td>feld6</td><td>blabla6</td>
  		</tr>
  	</table>
  
  	<table>
  		<tr>
  			<td>feld2</td><td>blabla2</td>
  		</tr>
  	
  		<tr>
  			<td>feld6</td><td>blabla6</td>
  		</tr>
  	</table>
  
  
  
  
  
  1.1                  embperl/test/cmp2/taint.htm
  
  Index: taint.htm
  ===================================================================
  <HTML><HEAD><TITLE>Embperl Error</TITLE></HEAD><BODY bgcolor="#FFFFFF">
  <H1>Internal Server Error</H1>
  The server encountered an internal error or misconfiguration and was unable to complete your request.<P>
  ^Please contact the server administrator\,.*?and inform them of the time the error occurred\, and anything you might have done that may have caused the error\.
  <table cellspacing='2' cellpadding='5'>
  <tr bgcolor='#eeeeee'><td>
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  ^\[.*?\]ERR\:  24\:  Error in Perl code\: Insecure \$ENV\{PATH\} while running
  ^-\[.*?\]ERR\:  32\:  Warning in Perl code\: Use of uninitialized value
  <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
  </td></tr>
  </table>
  <br>
  
  ^Embperl
  </BODY></HTML>
  
  
  
  
  
  1.2       +23 -0     embperl/test/cmp2/tied.htm
  
  
  
  
  1.2       +15 -0     embperl/test/cmp2/unclosed.htm
  
  
  
  
  1.1                  embperl/test/cmp2/upload.htm
  
  Index: upload.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Tests - File-Upload</title>
  </head>
  
  <h1>Embperl Tests - File-Upload</h1>
  
  Content-Disposition Content-Type
  ^Filename:       \d*upload-filename<br>
  Content-Type:	test/plain<br>
  ^CGI-Version
  ^cgiok           
  Your file has been the content
  ----------
  f1=abc1
  &amp;f2=1234567890&amp;f3=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  ----------
  
  <hr>
  
  content: Hi there! <br>
  
  multval: A;B;C <br>
  
  single: S <br>
  
  <br>
  
  <p><hr>
  
  <small>HTML::Embperl (c) 1997-1998 G.Richter</small>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/var.htm
  
  Index: var.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  
  All values should be undefined:
  
  $a =  <BR>
  $b =  <BR>
  $c =  <BR>
  $d =  <BR>
  $e =  <BR>
  
  
  First of all assign a value:
  <BR>
  
  Now we have some 'Umlaute':
  
  
  Now lets look what we are getting from this:<BR>
  (this is the value in $a) (this is the value in $a) &auml;&ouml;&uuml;<BR>
  
  And now a and b together: (this is the value in $a)(this is the value in $a) &auml;&ouml;&uuml;<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  57
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  1
  Now they should have a value
  
  $a = (this is the value in $a) <BR>
  $b = (this is the value in $a) &auml;&ouml;&uuml; <BR>
  $c = 57 <BR>
  $d = 1 <BR>
  $e = 2 <BR>
  
  <P>Ok.<P>
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/cmp2/varepvar.htm
  
  Index: varepvar.htm
  ===================================================================
  
  <html>
  <head>
  <title>Test for predefined Embperl variables and [ $ var $ ]</title>
  </head>
  
  $conf =  <br> 
  ^\$_\[0\] = Embperl::Req=HASH\(0x.*?\) <br> 
  $_[1] =  <br> 
  
  ^\$rec_rec  = Apache(::RequestRec)?=SCALAR\(0x.*?\)<br>
  ^\$\$rec_rec = \d+<br>
  
  ^Apache->request    = Apache(::RequestRec)?=SCALAR\(0x.*?\)<br>
  ^\$\{Apache->request\} = \d+<br>
  
  ${Apache->request} = $$req_rec ?  yes <br>
  
  ^.*?test\/html\/varepvar\.htm
  
  <table>
      <tr><td>a</td><td>1 </td></tr>
  
      <tr><td>b</td><td>2 </td></tr>
  </table>
  
  </body>
  </html>
  
  
  
  
  1.2       +22 -0     embperl/test/cmp2/varerr.htm
  
  
  
  
  1.1                  embperl/test/html2/asp.htm
  
  Index: asp.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - use ASP syntax</title>
  </head>
  
  <body>
  
  [$ syntax ASP EmbperlHTML $]
  
  <% $a = 1 ; %>
  <table border=<%= $a %>>
      <% foreach (1..5) { %>
          <tr>
              <td><%= $_ %></td>
              <td><%= $a += 2 %></td>
          </tr>
      <% } %>
  </table>
  
  <a href="<%= $a %>">
  <% $esc = 'p%u&g=���' ; %>
  <a href="<%= $esc %>">
  <a <%= $esc %> href="xxx">
  esc = <%= $esc %>
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/html2/binary.htm
  
  Index: binary.htm
  ===================================================================
  [- $escmode = 0 -][+ "Some binary data" +][- for ($i = 0; $i < 256; $i++) { print OUT chr($i) } -][$foreach $i (0..255)$][+ chr($i) +][$endforeach$]
  
  
  
  1.1                  embperl/test/html2/callsub.htm
  
  Index: callsub.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Embperl sub Metacommand</title>
  </head>
  
  
  <body>
  
  [###### first sub #####]
  [$sub txt$]
  *txt* 
  *txt* <h2>Here goes some normal html text <h2>
  *txt* 
  [$endsub$]
  
  
  [###### second sub #####]
  [$sub perl_code $]
  *perl_code* 
  *perl_code* Here comes some perl:
  *perl_code* 
  *perl_code* [- $foo = 'Hello world' -]
  *perl_code* 
  *perl_code* foo = [+ $foo +]<br>
  *perl_code* testdata = [+ $testdata +]<br>
  *perl_code* 
  [$endsub$]
  
  [###### main page #####]
  
  
  <h1>Tests for Embperl - Embperl sub Metacommand</h1>
  
  [- $testdata = 'abcd' -]
  
  Now we call the first sub via Execute:
  
  [- Execute ('#txt') -]
  
  And now the second via Execute:
  
  [- Execute ('#perl_code') -]
  
  Now we call the first sub via Perl:
  
  [- txt -]
  
  And now the second via Perl:
  
  [- perl_code -]
  
  -> Second time, other order:
  
  And now the second via Perl:
  
  [- perl_code -]
  
  Now we call the first sub via Perl:
  
  [- txt -]
  
  -> And Execute again, but other order
  
  And now the second via Execute:
  
  [- Execute ('#perl_code') -]
  
  Now we call the first sub via Execute:
  
  [- Execute ('#txt') -]
  
  
  
  And done!
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/changeattr.htm
  
  Index: changeattr.htm
  ===================================================================
  
  [$ syntax + Test2 $]
  
  
  [- $candy = "http://dairy milk"; -]
  
  <!-- 1 qq -->
  
  <qq href="ab">dairy</qq>
  
  <!-- 2 qq -->
  
  <qq href="[+ $candy +]">dairy</qq>
  
  <!-- 1 a -->
  
  <a href="ab">dairy</a>
  
  <!-- 2 a -->
  
  <a href="[+ $candy +]">dairy</a>
  
  
  <!-- foreach a -->
  
  [$ foreach $s ('a','b') $]
  <a href="[+ $s +]">XX</a>
  [$ endforeach $]
  
  <!-- if inside href -->
  
  <a href=" [$ if 1 $] before [+ $candy +] after [$ else $] never [$ endif$]"> ooooh </a>
  
  <!-- end -->
  
  
  
  1.1                  embperl/test/html2/chdir.htm
  
  Index: chdir.htm
  ===================================================================
  <html>
  <head>
  <title>Some tests for Embperl</title>
  </head>
  
  
  <body>
  
  [- use Cwd  ;
  $r = shift -]
  
  Script  CWD: [+ $script = $r -> component -> cwd +][#getcwd #] <BR>
  Embperl CWD: [+ $ep =     $HTML::Embperl::cwd +] <BR>
  $0: [+ $abs = $0 +]
  
  [- $abs = $ep . '/' . $0  if (!($0 =~ /^\//)) ; -]
  $0 (absolut): [+ $abs +]
  
  Equal: [+ $script eq $ep?'Yes':'No' +]<BR>
  Diff CWD: [+ do { $script =~ /$ep/ ; ">$'<" } +]<BR>
  Diff $0: [+ do { $abs =~ /$ep/ ; ">$'<" } +]<BR>
  Test/html: [+ $script =~ /test(?:\/|\\)html$/?'yes':'no' +]
  
  [- @ks = sort keys %fdat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/clearsess.htm
  
  Index: clearsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Clear Session Data</title>
  </head>
  
  
  <body>
  	[- $Apache::Session::MemoryStore::store = {} ; $Apache::Session::Win32::sessions = {} -]
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/crypto.htm
  
  	<<Binary file>>
  
  
  1.1                  embperl/test/html2/delrdsess.htm
  
  Index: delrdsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Delete Session Data</title>
  </head>
  
  
  <body>
  
  	udat before:<br>
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - $#ks - 1 ; -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $num > 0?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
      $mdat{cnt} = -[+ $mdat{cnt}  +]- <br>
      $udat{cnt} = -[+ $udat{cnt}  +]- <br>
  
  	[- $_[0] -> DeleteSession (1) ; -]
  
  	udat after:<br>
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - $#ks - 1 ; -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $num > 0?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/delsess.htm
  
  Index: delsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Delete Session Data</title>
  </head>
  
  
  <body>
  
  	udat before:<br>
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - $#ks - 1 ; -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $num > 0?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
      $mdat{cnt} = -[+ $mdat{cnt}  +]- <br>
      $udat{cnt} = -[+ $udat{cnt}  +]- <br>
  
  	[- $_[0] -> DeleteSession (1) ; -]
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/delwrsess.htm
  
  Index: delwrsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Delete Session Data</title>
  </head>
  
  
  <body>
  
  	udat before:<br>
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - $#ks - 1 ; -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $num > 0?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
      $mdat{cnt} = -[+ $mdat{cnt}  +]- <br>
      $udat{cnt} = -[+ $udat{cnt}  +]- <br>
  
  	[- $_[0] -> DeleteSession (1) ; -]
  
  	udat after:<br>
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - $#ks - 1 ; -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $num > 0?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
  	[+ $udat{b} = 2 +]
  	udat after write:<br>
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - $#ks - 1 ; -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $num > 0?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/discard.htm
  
  Index: discard.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - discarding errors</title>
  </head>
  
  
  <body>
  
  [!
  
  package test::discard ;
  
  sub id
  	{
  	my $self = shift ;
  	
  	return "id $self->{n}" ;
  	}
  
  sub name
  	{
  	my $self = shift ;
  	
  	return "name $self->{n}" ;
  	}
  
  sub new
  	{
  	my $class = shift ;
  	my $n     = shift ;
  	my $self  = {n=>$n} ;
  	bless $self, $class ;
  	return $self ;
  	}
  
  !]
  
  
  [-
  $obj[0] = test::discard->new (0) ;
  $obj[1] = test::discard->new (1) ;
  $obj[2] = test::discard->new (2) ;
  $obj[3] = test::discard->new (3) ;
  -]
  
  <TABLE BORDER=0 WIDTH=90%>
  	<TR><TH COLSPAN=2><H2>Objects</H2></TH></TR>
  	<TR>
  		<TD>
  			[- $o = $obj[$col] -]
  			<A HREF="index.html?id=[+ $o->id+]">[+$o->name+]</A>
  		</TD>
  		<TD>
  			[- $o = $obj[$col+5] -]
  			<A HREF="index.html?id=[+ $o->id+]">[+$o->name+]</A>
  		</TD>
  	</TR>
  </TABLE>
  
  [- "blabla -]
  [- $maxrow = 1 -]
  
  <TABLE BORDER=0 WIDTH=90%>
  	<TR><TH COLSPAN=2><H2>Objects</H2></TH></TR>
  	<TR>
  		<TD>
  			[- $o = $obj[$col] -][+ $o -> id +]
  			[- "blabla -]
  		</TD>
  	</TR>
  	[- $xyz[$row] = $row>0?undef:"blabla" -]
  	[- "blabla -]
  </TABLE>
  
  
  <TABLE BORDER=0 WIDTH=90%>
  	<TR><TH COLSPAN=2><H2>Objects</H2></TH></TR>
  	[- "blabla -]
  	<TR>
  		<TD>
  			[- $o = $obj[$col] -][+ $o -> id +]
  		</TD>
  	</TR>
  	[- $xyz[$row] = $row>0?undef:"blabla" -]
  </TABLE>
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/div.htm
  
  Index: div.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a = [+ $a || ''  +] <BR>
  $b = [+ $b || ''  +] <BR>
  $c = [+ $c || ''  +] <BR>
  $d = [+ $d || ''  +] <BR>
  $e = [+ $e || ''  +] <BR>
  
  
  First of all assign a value:
  [- $a = '(this is the value in $a)' -] <BR>
  
  Now we have some 'Umlaute':
  
  
  [- $b = "$a &auml;&ouml;&uuml;" -]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  And now a and b together: [+ "$a$b" +]<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  [+ $c = <BR> 6 + 17 <font size="3"> * 3 +]
  
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  [- $e = 2 -]
  [+ $d = $e &lt; 6 +]
  
  Now they should have a value
  
  $a = [+ $a +] <BR>
  $b = [+ $b +] <BR>
  $c = [+ $c +] <BR>
  $d = [+ $d +] <BR>
  $e = [+ $e +] <BR>
  
  [- $a = 1; $b = 0; $c = 5; $d = 'txt' -]
  
  
  [$if $a$]
      a <br>
  [$ endif$]
  
  
  [$if $a $]
      a <br>
  [$else$]
      not a<br>
  [$ endif $]
  
  
  [$ if $a$]
      a <br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ else$]
      not a<br>
  [$ endif $]
  
  
  [$ if $a$]
      a <br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ else$]
      not a<br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ endif $]
  
  
  [$ if !$a$]
      not a <br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ else$]
      a<br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ endif $]
  
  
  [- $i = 0 -]
  [$ while $i &lt;= $#ffld $]
      [+ $ffld[$i] +] = [+ $fdat{$ffld[$i]} +]
      [- $j = 0 -]
      [$ while $j &lt;= $i $]
          [+ $j++ +] 
      [$ endwhile $]
      <BR>
      [- $i++ -]
  [$ endwhile $]
  
  
  
  <table>
      <tr>
          <td>[+ $c[$row][$col] +] </td>
      </tr> 
  </table>
  
  
  <p> $tabmode = default <p>
  
  <hr><p>Display an two dimensional array with one, two and three columns !<BR>
  Please take a look at the source in your browser to see the difference<BR>
  
  [-
     undef @a ;
     undef @b ;
  
     $a[0][0] = 'a1/1' ;
     $a[1][0] = 'a2/1' ;
     $a[1][1] = 'a2/2' ;
     $a[2][0] = 'a3/1' ;
     $a[2][1] = 'a3/2' ;
     $a[2][2] = 'a3/3' ;
  
     $b[0][0] = 'b1/1' ;
     $b[1][0] = 'b2/1' ;
     $b[1][1] = 'b2/2' ;
     $b[2][0] = 'b3/1' ;
     $b[2][1] = 'b3/2' ;
     $b[2][2] = 'b3/3' ;
  
     $maxcol=99 ;
  -]
     $a[0][[0] = '1/1' ;<BR>
     $a[1][[0] = '2/1' ;<BR>
     $a[1][[1] = '2/2' ;<BR>
     $a[2][[0] = '3/1' ;<BR>
     $a[2][[1] = '3/2' ;<BR>
     $a[2][[2] = '3/3' ;<BR>
  
  <P>$tabmode = default <P>
  
  <table border="2" width="100%">
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  <table>
      <tr>
          <td>
              <table>
      		<tr>
                      <td>[+ $b[$row][$col] +] </td>
      		</tr> 
  	    </table>
  
          [+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  <P>[+ $HTML::Embperl::VERSION +]<P>
  
  <P>[+ $tabmode || 17 +]<P>
  <P>[+ local $tabmode = 1 +]<P>
  
  <P>
  
  [- $i = 0 ; while ($i < 10) { $ii[$i++] = "ii[$i] = $i" ; } -]
  
  <table>
      <tr>
              <td>[+ $ii[$row] +] </td>
      </tr> 
  </table>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/errmsg.htm
  
  Index: errmsg.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - ErrorDocument</title>
  </head>
  
  <body>
  
  This page is shown due to an ErrorDocument redirection<p>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/errmsg2.htm
  
  Index: errmsg2.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - ErrorDocument</title>
  </head>
  
  <body>
  
  This page is shown due to an ErrorDocument redirection<p>
  
  
  main: [+ $req_rec -> main +]
  prev: [+ $req_rec -> prev +]
  next: [+ $req_rec -> next +]
  
  [-
  $errors = $req_rec -> prev -> pnotes('EMBPERL_ERRORS') ;
  -]
  
  There are [+ scalar(@$errors) +] errormessages:
  
  <table border=1>
  	<tr><td>[+ $errors -> [$row] +]</td></tr>
  </table>
  
  </body>
  </html>
  
  
  
  1.2       +60 -0     embperl/test/html2/error.htm
  
  
  
  
  1.2       +19 -0     embperl/test/html2/errormismatch.htm
  
  
  
  
  1.2       +23 -0     embperl/test/html2/errormismatchcmd.htm
  
  
  
  
  1.1                  embperl/test/html2/escape.htm
  
  Index: escape.htm
  ===================================================================
  [- $r = shift -]
  <html>
  <head>
  <title>Some tests for Embperl escaping</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  First of all assign a value:
  [- $a = '(this is the value in $a)' -] <BR>
  
  Now we have some 'Umlaute':
  
  
  [- $b = "$a &auml;&ouml;&uuml;���???&lt;\&+  " -]
  [- $id = "abcdefghijklmnopqrstuvwxyz" ; $text = "This is a text ? \& + - %21" -]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  What is the EscMode? [+ $escmode +]
  Let's set the EscMode to [+ $escmode = 3 +]
  What is the EscMode now? [+ $escmode +]
  
  Now a Url: <A HREF="http://localhost/tests?id=[+%20$id +]&text=[+$text+]">Here it goes</A>
  A Tag 2:   <A HREF="http://localhost/tests?id=[+%20$id +]&text=[+$text+]" TARGET="http://localhost/tests?id=[+$id +]&text=[+$text+]">a2</A>
  A Tag 3:   <A  TARGET="http://localhost/tests?id=[+$id +]&text=[+$text+]" HREF="http://localhost/tests?id=[+%20$id +]&text=[+$text+]" TARGET="http://localhost/tests?id=[+ $id +]&text=[+$text+]">a3</A>
  A Tag 4:   <A TARGET="http://localhost/tests?id=[+ $id +]&text=[+$text+]" HREF="http://localhost/tests?id=[+%20$id +]&text=[+$text+]">a4</A>
  A Tag 5:   <A  TARGET="http://localhost/tests?id=[+ $id +]&text=[+$text+]">a5</A>
  A Tag 6:   <A>a6</A>
  A Tag 7:   <A  HREF="7">x</A>
  A Tag 8:   <A TARGET=8 HREF="8">x</A>
  A Tag 9:   <A HREF="9" TARGET="9">x</A>
  A Tag 10:  <A TARGET="10" HREF="10" TARGET="10">x</A>
  A Tag 11:  <A  HREF="11"  >x</A>
  A Tag 12:  <A HREF=12>x</A>
  A Tag 12b: <A HREF=12b >x</A>
  A Tag 13:  <A HREF="[+ "abcd"+]%20[+ "%3e" +]">x</A>
  A Tag 14:  <A HREF="[+ "abcd"+]%20[+ "&gt;" +]">x</A>
  FRAME:	   <FRAME SRC="http://localhost/tests?id=[+%20$id +]&text=[+$text+]"  name="%20foo">
  IFRAME:    <IFRAME SRC="http://localhost/tests?id=[+%20$id +]&text=[+$text+]" name="%20foo">
  EMBED:     <EMBED SRC="http://localhost/tests?id=[+%20$id +]&text=[+$text+]"  name="%20foo">
  LAYER:	   <LAYER SRC="http://localhost/tests?id=[+%20$id +]&text=[+$text+]"  name="%20foo">
  IMG:	   <IMG SRC="http://localhost/tests?id=[+%20$id +]&text=[+$text+]"    name="%20foo">
  FORM:	   <FORM action="http://localhost/tests?id=[+%20$id +]&text=[+$text+]"    name="%20foo">
  
  [- %A = (A => 1, B => 2) ; @A = (X, 9, Y, 8, Z, 7) -]
  Hash in  A <A HREF="http://localhost/tests?[+ [ %A ] +]">
  Array in A <A HREF="http://localhost/tests?[+ \@A +]">
  
  [- %H = (A => 1, B => 2) ; @H = (X, 9, Y, 8, Z, 7) -]
  Hash in  H <A HREF="http://localhost/tests?[+ \\%H +]">
  Array in H <A HREF="http://localhost/tests?[+ scalar { @H } +]">
  
  
  [-
  %fdat = ( par1 => 1, par2 => 2 );
  -]
  
  
  <a href="tst.html?[+ \\%fdat +]">1</a>
  <a href="tst.html?[+ scalar ({ par3 => 3, %fdat }) +]">2</a>
  <a href="tst.html?[+ scalar ({ %fdat }) +]">3</a>
  <a href="tst.html?[+ scalar ({ %fdat, par3 => 3 }) +]">4</a>
  
  
  		
  [+ $escmode = 1 +]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  What is the EscMode? [+ $escmode +]
  
  Now a Url: <A HREF="http://localhost/tests?id=[+%20$id +]&text=[+$text+]">Here it goes</A>
  
  [+ $escmode = 2 +]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  What is the EscMode? [+ $escmode +]
  
  Now a Url: <A HREF="http://localhost/tests?id=[+%20$id +]&text=[+$text+]">Here it goes</A>
  
  [+ $escmode = 0 +]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  What is the EscMode? [+ $escmode +]
  
  Now a Url: <A HREF="http://localhost/tests?id=[+%20$id +]&text=[+$text+]">Here it goes</A>
  
  [+ $escmode = 3 +]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  What is the EscMode? [+ $escmode +]
  
  Now a Url: <A HREF="http://localhost/tests?id=[+%20$id +]&text=[+$text+]">Here it goes</A>
  
  What is the EscMode? [+ $escmode +]
  
  [+ $escmode = 15 +]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +] [+ q{'"<>} +]<BR>
  
  What is the EscMode? [+ $escmode +]
  
  Now a Url: <A HREF="http://localhost/tests?id=[+%20$id +]&text=[+$text+] [+ q{'"<>} +]">Here it goes</A>
  
  What is the EscMode? [+ $escmode +]
  
  [!
      sub foo($)
          {
      	my @name ;
      	my @data ;
      
      	$name[0] = 'abcd' ;
      	$data[0] = 'xyz' ;
      
          my $bar = $_[0];
          return "file.html?name=$name[$bar]&data=$data[$bar]";
          }
  !]
  
  
  [+ foo (0) +]
  
  Now we localy set $escmode:<BR>
  [+  do { local $escmode = 0 ; $b . "  \\\\<a>" } +]<BR>
  [+  do { local $escmode = 1 ; $b . "  \\\\<a>" } +]<BR>
  [+  do { local $escmode = 2 ; $b . "  \\\\<a>" } +]<BR>
  [+  do { local $escmode = 3 ; $b . "  \\\\<a>" } +]<BR>
  [+  do { local $escmode = 4 ; $b . "  \\\\<a>" } +]<BR>
  [+  do { local $escmode = 5 ; $b . "  \\\\<a>" } +]<BR>
  [+  do { local $escmode = 6 ; $b . "  \\\\<a>" } +]<BR>
  [+  do { local $escmode = 7 ; $b . "  \\\\<a>" } +]<BR>
  
  Same without local:
  [+  $escmode = 0 , $b . "  \\\\<a>" +]<BR>
  [+  $escmode = 1 , $b . "  \\\\<a>"  +]<BR>
  [+  $escmode = 2 , $b . "  \\\\<a>"  +]<BR>
  [+  $escmode = 3 , $b . "  \\\\<a>"  +]<BR>
  [+  $escmode = 4 , $b . "  \\\\<a>"  +]<BR>
  [+  $escmode = 5 , $b . "  \\\\<a>"  +]<BR>
  [+  $escmode = 6 , $b . "  \\\\<a>"  +]<BR>
  [+  $escmode = 7 , $b . "  \\\\<a>"  +]<BR>
  
  
  Control Chars 0x80-0x9f:
  [+  do { local $escmode = 7 ; foreach (127..160) { $cc .= chr ($_) }; $cc } +]<BR>
  
  Control Chars 129 & 130:
  [+  do  { local $escmode = 7 ; "&#129;&#130;" } +]<BR>
  
  [+ $n = 'My Name ���' , $escmode = 0 +]
  
  <A HREF='http://host/script?name=[+ $escmode=3, $n +]'>
  
  <A HREF='http://host/script?name=[+ $n+]'>
  
  [+ $escmode = 0 +]
  
  <A HREF='http://host/script?name=[+ do { local $escmode=3; $n } +]'>
  
  <A HREF='http://host/script?name=[+ $n +]'>
  
  <br>
  
  
  We can avoid interpreting [[- foo -] with a double [[[[ <br>
  
  This should also work for [[* foo *]  <br>
  
  
  <A HREF="[+ "abcd"+]%20[+ "%3e" +]">x</A>
  
  [- $dat = [[1], [2], [3]] -]
  
  <table>
  <TR>
   <TD><a href="[+$dat-&gt;[$row][0]+]">Link</a></TD>
  </TR>
  </table>
  
  <table>
  <TR>
   <TD><a href="[+$dat-%3e[$row][0]+]">Link</a></TD>
  </TR>
  </table>
  
  Escape method:
  
  [- $escmode = 0 -]
  
  0: [+ $r -> Escape($b, 0) +] 
  1: [+ $r -> Escape($b, 1) +] 
  2: [+ $r -> Escape($b, 2) +] 
  3: [+ $r -> Escape($b, 3) +] 
  4: [+ $r -> Escape($b, 4) +] 
  5: [+ $r -> Escape($b, 5) +] 
  6: [+ $r -> Escape($b, 6) +] 
  7: [+ $r -> Escape($b, 7) +] 
  
  print OUT:
  
  [-
  local $escmode = 7;
  print OUT "7: �ric\n";
  local $escmode = 0;
  print OUT "0: �ric\n";
  -]
  
  [-
  $escmode = 7;
  print OUT "7: �ric\n";
  $escmode = 0;
  print OUT "0: �ric\n";
  -]
  
  
  [-
  $escmode = 7;
  print OUT "7: �ric\n";
  -]
  
  [-
  $escmode = 0;
  print OUT "0: �ric\n";
  -]
  
  
  [-
  local $escmode = 7;
  print OUT "7: �ric\n";
  -]
  
  
  [-
  local $escmode = 0;
  print OUT "0: �ric\n";
  -]
  
  
  
  
  [- 
  $find_if = 
  { '!Table'     => 'interface,router',
  '$where'     => 'interface.router_id=router.id',
  #'!LongNames' => 1,
   }; 
  -]
  
  [-
  $escmode = 0;
  -]
  <A HREF="0?[+ $find_if +]">
  
  [-
  $escmode = 7;
  -]
  <A HREF="7?[+ $find_if +]">
    
  
  [- 
  $fdat{esc} = 'environment of the &lt;font color="red"&gt;Sample Company&lt;/font&gt;' ;
  $fdat{null} = 0 ;
  -]
  [#
  escmode = [+ $escmode = 7 +]
  
  <input name="esc">
  <input name="null">
  #]
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/escraw.htm
  
  Index: escraw.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some tests for Embperl escaping</title>
  </head>
  
  <body>
  
  
  [- $optRawInput = 0 -]
  [- $escmode = 0 -]
  $optRawInput  [+ $optRawInput +]
  $escmode      [+ $escmode  +]
  'here is a \ '              -> [+ 'here is a \ ' +] 
  'here is a \\ '             -> [+ 'here is a \\ ' +]
  'here is a \\\ '            -> [+ 'here is a \\\ ' +]
  'here is a \\\\ '           -> [+ 'here is a \\\\ ' +]
  'here is a <tag> '          -> [+ 'here is a <tag>' +] 
  'here is a \<tag> '         -> [+ 'here is a \<tag>' +] 
  'here is a \\<tag> '        -> [+ 'here is a \\<tag>' +]
  'here is a \\\<tag> '       -> [+ 'here is a \\\<tag>' +]
  'here is a \\\\<tag> '      -> [+ 'here is a \\\\<tag>' +]
  'here is a \<tag\> '        -> [+ 'here is a \<tag\>' +] 
  'here is a \\<tag\\> '      -> [+ 'here is a \\<tag\\>' +]
  'here is a \\\<tag\\\> '    -> [+ 'here is a \\\<tag\\\>' +]
  'here is a \\\\<tag\\\\> '  -> [+ 'here is a \\\\<tag\\\\>' +]
  
  
  [- $optRawInput = 1 -]
  [- $escmode = 0 -]
  $optRawInput  [+ $optRawInput +]
  $escmode      [+ $escmode  +]
  'here is a \ '              -> [+ 'here is a \ ' +] 
  'here is a \\ '             -> [+ 'here is a \\ ' +]
  'here is a \\\ '            -> [+ 'here is a \\\ ' +]
  'here is a \\\\ '           -> [+ 'here is a \\\\ ' +]
  'here is a <tag> '          -> [+ 'here is a <tag>' +] 
  'here is a \<tag> '         -> [+ 'here is a \<tag>' +] 
  'here is a \\<tag> '        -> [+ 'here is a \\<tag>' +]
  'here is a \\\<tag> '       -> [+ 'here is a \\\<tag>' +]
  'here is a \\\\<tag> '      -> [+ 'here is a \\\\<tag>' +]
  'here is a \<tag\> '        -> [+ 'here is a \<tag\>' +] 
  'here is a \\<tag\\> '      -> [+ 'here is a \\<tag\\>' +]
  'here is a \\\<tag\\\> '    -> [+ 'here is a \\\<tag\\\>' +]
  'here is a \\\\<tag\\\\> '  -> [+ 'here is a \\\\<tag\\\\>' +]
  
  [- $optRawInput = 0 -]
  [- $escmode = 1 -]
  $optRawInput  [+ $optRawInput +]
  $escmode      [+ $escmode  +]
  'here is a \ '              -> [+ 'here is a \ ' +] 
  'here is a \\ '             -> [+ 'here is a \\ ' +]
  'here is a \\\ '            -> [+ 'here is a \\\ ' +]
  'here is a \\\\ '           -> [+ 'here is a \\\\ ' +]
  'here is a <tag> '          -> [+ 'here is a <tag>' +] 
  'here is a \<tag> '         -> [+ 'here is a \<tag>' +] 
  'here is a \\<tag> '        -> [+ 'here is a \\<tag>' +]
  'here is a \\\<tag> '       -> [+ 'here is a \\\<tag>' +]
  'here is a \\\\<tag> '      -> [+ 'here is a \\\\<tag>' +]
  'here is a \<tag\> '        -> [+ 'here is a \<tag\>' +] 
  'here is a \\<tag\\> '      -> [+ 'here is a \\<tag\\>' +]
  'here is a \\\<tag\\\> '    -> [+ 'here is a \\\<tag\\\>' +]
  'here is a \\\\<tag\\\\> '  -> [+ 'here is a \\\\<tag\\\\>' +]
  
  [- $optRawInput = 1 -]
  [- $escmode = 1 -]
  $optRawInput  [+ $optRawInput +]
  $escmode      [+ $escmode  +]
  'here is a \ '              -> [+ 'here is a \ ' +] 
  'here is a \\ '             -> [+ 'here is a \\ ' +]
  'here is a \\\ '            -> [+ 'here is a \\\ ' +]
  'here is a \\\\ '           -> [+ 'here is a \\\\ ' +]
  'here is a <tag> '          -> [+ 'here is a <tag>' +] 
  'here is a \<tag> '         -> [+ 'here is a \<tag>' +] 
  'here is a \\<tag> '        -> [+ 'here is a \\<tag>' +]
  'here is a \\\<tag> '       -> [+ 'here is a \\\<tag>' +]
  'here is a \\\\<tag> '      -> [+ 'here is a \\\\<tag>' +]
  'here is a \<tag\> '        -> [+ 'here is a \<tag\>' +] 
  'here is a \\<tag\\> '      -> [+ 'here is a \\<tag\\>' +]
  'here is a \\\<tag\\\> '    -> [+ 'here is a \\\<tag\\\>' +]
  'here is a \\\\<tag\\\\> '  -> [+ 'here is a \\\\<tag\\\\>' +]
  
  
  
  
  1.1                  embperl/test/html2/execfirst.htm
  
  Index: execfirst.htm
  ===================================================================
  [- Execute ('EmbperlObject/epohead.htm') -]
  
  
  1.1                  embperl/test/html2/execgetsess.htm
  
  Index: execgetsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Execute Get Session Data</title>
  </head>
  
  
  <body>
  
  	[- Execute ('getsess.htm') ; -]
  
  	fdat:<br>
  	[- @ks = sort keys %fdat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	udat:<br>
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - $#ks - 1 ; -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $num > 0?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
  	[- 
  	while (($k, $v) = each (%fdat))
  		{
  		$udat{$k} = $fdat{$k} ;
  		}
  	-]
  
  
          $mdat{cnt} = -[+ $mdat{cnt}  +]- <br>
          $udat{cnt} = -[+ $udat{cnt}  +]- <br>
  
  
  	[- Execute ('getsess.htm') ; -]
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/execnotfound.htm
  
  Index: execnotfound.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Execute non exitent file</title>
  </head>
  
  
  <body>
  
   
  [- 
  $r = shift ;
  $rc = Execute ({ inputfile => 'notfound.htm', options => 262144 }) ;
  
  -]
  
  
  rc = [+ $rc +]<br>
    
  <p>Done.</p>
  </body></html>
  
  
  
  1.1                  embperl/test/html2/execprint.htm
  
  Index: execprint.htm
  ===================================================================
  [- 
  print OUT "*" ;
  Execute ('EmbperlObject/epohead.htm') ;
  print OUT "*" ;
  -]
  
  without print...
  
  [$foreach $i (1..3) $]
  [- 
  Execute ('EmbperlObject/epohead.htm') ;
  -]
  [$endforeach$]
  
  without print...
  
  [$foreach $i (1..3) $]
  ### [+ $i +] 
  [- 
  Execute ('EmbperlObject/epohead.htm') ;
  -]
  ###
  [$endforeach$]
  
  
  
  with print in different blocks ...
  
  [$foreach $i (1..3) $]
  [- print OUT "* $i *" ; -]
  [- Execute ('EmbperlObject/epohead.htm') ; -]
  [- print OUT "*" ; -]
  [$endforeach$]
  
  
  with print...
  
  [$foreach $i (1..3) $]
  [- 
  print OUT "* $i *" ;
  Execute ('EmbperlObject/epohead.htm') ;
  print OUT "*" ;
  -]
  [$endforeach$]
  
  
  
  
  1.1                  embperl/test/html2/execsecond.htm
  
  Index: execsecond.htm
  ===================================================================
  
  [- Execute ('EmbperlObject/epohead.htm') -]
  
  
  1.1                  embperl/test/html2/executesub.htm
  
  Index: executesub.htm
  ===================================================================
  <html>  
  <head>
  <title>Tests for Embperl - Execute subs</title>
  </head>
  
  
  <body>
  
  <h1>Tests for Embperl - Execute subs</h1>
  
  
  First sub:
  [- Execute ('subexec.htm#tfirst') -]
  
  Second sub:
  [- Execute ('subexec.htm#tsecond') -]
  
  Second sub:
  [- Execute ('subexec.htm#tsecond') -]
  
  First sub:
  [- Execute ('subexec.htm#tfirst') -]
  
  
  And done!
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/execviamod.htm
  
  Index: execviamod.htm
  ===================================================================
  <html>  
  <head>
  <title>Tests for Embperl - Execute via an intermediate module</title>
  </head>
  
  
  <body>
  
  <h1>Tests for Embperl - Execute via an intermediate module</h1>
  
  
  [-
  my $dir = $_[0] -> component -> cwd ;
  require "$dir/execviamod.pm" ;
  
  execviamod() ;
  -]
  
  Now without output
   
  [-
  execviamod2() ;
  -]
  
  And done!
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/exit.htm
  
  Index: exit.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - component exit</title>
  </head>
  
  
  <body>
  
  Before Exit
  
  [- exit  -]
  
  After Exit
  
  [+ "perl after exit" +]
  
  </body>
  
  
  
  1.1                  embperl/test/html2/exit2.htm
  
  Index: exit2.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Apache::Exit</title>
  </head>
  
  
  <body>
  
  Before Exit
  
  [- exit -]
  
  After Exit
  
  </body>
  
  
  
  1.1                  embperl/test/html2/exit3.htm
  
  Index: exit3.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - exit in sub</title>
  </head>
  
  
  [$ sub x $]
  
  [- exit -]
  
  [$endsub$]
  
  <body>
  
  Before Exit
  
  [- x -]
  
  After Exit
  
  </body>
  
  
  
  1.1                  embperl/test/html2/exitcomp.htm
  
  Index: exitcomp.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - component exit</title>
  </head>
  
  
  <body>
  
  Before Exit Main
  
  [- Execute('exitsub.htm') -]
  
  After Exit Main
  
  [+ "perl after exit main" +]
  
  </body>
  
  
  
  1.1                  embperl/test/html2/exitreq.htm
  
  Index: exitreq.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - request exit</title>
  </head>
  
  
  <body>
  
  Before Exit Main
  
  [- Execute('exitsub.htm', 200) -]
  
  After Exit Main
  
  [+ "perl after exit main" +]
  
  </body>
  
  
  
  1.1                  embperl/test/html2/exitsub.htm
  
  Index: exitsub.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - request exit sub</title>
  </head>
  
  
  <body>
  
  Before Exit
  
  [- 
  if ($param[0])
      {
      exit (200) ;
      }
  else
      {
      exit ;
      }
          
      -]
  
  After Exit
  
  [+ "perl after exit" +]
  
  </body>
  
  
  
  1.1                  embperl/test/html2/getbsess.htm
  
  Index: getbsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	[- @ks = sort keys %fdat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	udat:<br>
  	[- $off = 0 ; $off-- if ($HTML::Embperl::SessionMgnt == 2 && !defined (tied (%udat) -> getid)) ; -]
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - $#ks - 1 + $off ; -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $num > 0?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
  	[- 
  	while (($k, $v) = each (%fdat))
  		{
  		$udat{$k} = $fdat{$k} ;
  		}
  	-]
  
  
          $mdat{cnt} = -[+ $mdat{cnt}  +]- <br>
          $udat{cnt} = -[+ $udat{cnt}  +]- <br>
  
  
  	[- $s = $Apache::Session::Win32::sessions  || $Apache::Session::MemoryStore::store  -]
  
  	[- @ks = sort keys %$s -]
  
  	sessions:
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $s -> {$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/getdelsess.htm
  
  Index: getdelsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	[- @ks = sort keys %fdat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	udat:<br>
  	[- $id = tied (%udat) -> getid -]
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - @ks - ($id?0:1) -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $id?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
  	[- 
  	while (($k, $v) = each (%fdat))
  		{
  		$udat{$k} = $fdat{$k} ;
  		}
  	-]
  
  
          $mdat{cnt} = -[+ $mdat{cnt}  +]- <br>
          $udat{cnt} = -[+ $udat{cnt}  +]- <br>
  
  
  	[- $s = $Apache::Session::Win32::sessions  || $Apache::Session::MemoryStore::store  -]
  
  	[- @ks = sort keys %$s -]
  
  	sessions:
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $s -> {$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/getnosess.htm
  
  Index: getnosess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	[- @ks = sort keys %fdat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	udat:<br>
  	[- $id = tied (%udat) -> getid -]
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - @ks - ($id?0:1) -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $id?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
  	[- 
  	while (($k, $v) = each (%fdat))
  		{
  		$udat{$k} = $fdat{$k} ;
  		}
  	-]
  
  
  
  	[- $s = $Apache::Session::Win32::sessions  || $Apache::Session::MemoryStore::store -]
  
  	[- @ks = sort keys %$s -]
  
  	sessions:
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $s -> {$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/getsess.htm
  
  Index: getsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  	
  	[#
  	[- $s = $Apache::Session::Win32::sessions  || $Apache::Session::MemoryStore::store  -]
  	[- @ks = sort keys %$s -]
  	sessions:
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $sh = $s -> {$ks[$row] || ''} +]</td><td>[$if ref($sh) eq 'HASH' $][+ do { my @tmp = map { "$_ = $sh->{$_}" } keys (%$sh) ; join (', ', @tmp) } +][$endif$]</td>
  		</tr>
  	</table>
  
  		tied (%mdat) [+ $m = tied (%mdat) +]  <br>
  		ref          [+ ref ($m) +]  <br>
  		content      [+ do { my @tmp = map { "$_ = $mdat{$_}" } keys (%mdat) ; join (', ', @tmp) } +]  <br>
  		tied (%udat) [+ $u = tied (%udat) +]  <br>
  		ref          [+ ref ($u) +]  <br>
  		content      [+ do { my @tmp = map { "$_ = $udat{$_}" } keys (%udat) ; join (', ', @tmp) } +]  <br>
  
  	a=[+ scalar (do {$udat{'a'}}) +][+ $aa +]
  	#]
  
  	fdat:<br>
  	[- @ks = sort keys %fdat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	udat:<br>
  	[- $id = tied (%udat) -> getid -]
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - @ks - ($id?0:1) -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $id?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
  	[- 
  	while (($k, $v) = each (%fdat))
  		{
  		$udat{$k} = $fdat{$k} ;
  		}
  	-]
  
  
          $mdat{cnt} = -[+ $mdat{cnt}  +]- <br>
          $udat{cnt} = -[+ $udat{cnt}  +]- <br>
  
  
  	[- $s = $Apache::Session::Win32::sessions  || $Apache::Session::MemoryStore::store  -]
  	[- @ks = sort keys %$s -]
  	sessions:
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $sh = $s -> {$ks[$row] || ''} +]</td><td>[$if ref($sh) eq 'HASH' $][+ do { my @tmp = map { "$_ = $sh->{$_}" } keys (%$sh) ; join (', ', @tmp) } +][$endif$]</td>
  		</tr>
  	</table>
  
  	<a href="cont.htm">continue</a>
  	<a href="cont.htm?q=1">continue</a>
  	<a href="cont.htm?q=1&b=2">continue</a>
  	<form action="cont.htm">
  	</form>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/heredoc.htm
  
  Index: heredoc.htm
  ===================================================================
  [-
  sub error_check {
          $error = &lt;&lt;END if ($units == 0);
  To Create a duplicate entry you must first fill in the units field.
  END
          }
  
  -]
  <HTML>
  HELLO
  [- error_check -]
  [+ $error +]
  </HTML>
  
  
  
  1.1                  embperl/test/html2/hidden.htm
  
  Index: hidden.htm
  ===================================================================
  <html>
  
  <head>
  <title>Test for hidden meta command</title>
  </head>
  
  
  [-
  $regs{feld1} = 'Pfalz' ;
  $regs{feld2} = 'Rheinhessen' ;
  
  $kats{feld1} = 'Kultur' ;
  
  $sort[0] = 'feld4' ;
  $sort[1] = 'feld3' ;
  $sort[2] = 'feld2' ;
  $sort[3] = 'feld1' ;
  
  -]
  
  <form action="inhalt.htm" method="POST">
      <p>&nbsp;</p>
  
  	a1[$hidden$]
  	a2[$hidden regs $]
  	a3[$hidden regs, kats $]
  	a4[$hidden regs, kats, sort $]
  	a5[$hidden %regs $]
  	a6[$hidden %regs, %kats $]
  	a7[$hidden %regs, %kats, @sort $]
  	a8[$hidden %fdat, %idat, @sort $]
      
  	<input type="text" name="feld1">
  
  	b1[$hidden$]
  	b2[$hidden regs $]
  	b3[$hidden regs, kats $]
  	b4[$hidden regs, kats, sort $]
  	b5[$hidden %regs $]
  	b6[$hidden %regs, %kats $]
  	
  
      <input type="text" name="feld2">
      
  	c1[$hidden$]
  	c2[$hidden regs $]
  	c3[$hidden regs, kats $]
  	c4[$hidden regs, kats, sort $]
  	c5[$hidden %regs $]
  	c6[$hidden %regs, %kats $]
  
  	<input type="text" name="feld3">
      <input type="text" name="feld4">
      
  	d1[$hidden$]
  	d2[$hidden regs $]
  	d3[$hidden regs, kats $]
  	d4[$hidden regs, kats, sort $]
  	d5[$hidden %regs $]
  	d6[$hidden %regs, %kats $]
  	d7[$hidden %regs, %kats, @sort $]
  
  
  	[- $fdat{empty1} = undef ; push @ffld, 'empty1' ; -]
  	[- $fdat{empty2} = '' ;    push @ffld, 'empty2' ; -]
  
  	e1[$hidden $]
  	e2[$hidden %fdat, %idat, @ffld $]
  	optNoHiddenEmptyValue is now [+ $optNoHiddenEmptyValue +]
  	[- $optNoHiddenEmptyValue = 1 -]
  	optNoHiddenEmptyValue is now [+ $optNoHiddenEmptyValue +]
  	e1[$hidden $]
  	e2[$hidden %fdat, %idat, @ffld $]
  	[- $optNoHiddenEmptyValue = 0 -]
  	optNoHiddenEmptyValue is now [+ $optNoHiddenEmptyValue +]
  	e1[$hidden $]
  	e2[$hidden %fdat, %idat, @ffld $]
  
  </form>
  
  
  [$foreach $i (1..4)$]
  <form>
  	l1[$hidden $]
  </form>
  [$endforeach$]
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/hostconfig.htm
  
  Index: hostconfig.htm
  ===================================================================
  
  appname = [+ $_[0] -> app -> config -> app_name +]<br>
  
  input_escmode = [+ $_[0] -> component -> config -> input_escmode +]<br>
  
  object_base = [+ $_[0] -> app -> config -> object_base +]<br>
  
  
  
  
  1.1                  embperl/test/html2/http.htm
  
  Index: http.htm
  ===================================================================
  <html>
  <head>
  <title>Setup http header</title>
  </head>
  
  
  <body>
  
  
  <meta http-equiv="Formatter" content="Embperl">
  
  [- 
  $http_headers_out{'Locationx'} = "http://www.ecos.de/embperl/" ;
  $http_headers_out{'h1'} = "v0" ;
  $http_headers_out{'h2'} = ['v1', 'v2'] ;
  -]
  
  
  [- @ks = sort keys %http_headers_out -]
  <table>
  	<tr>
  		<td>[+ $ks[$row] +]</td><td>[+ $http_headers_out{$ks[$row]} +]</td>
  	</tr>
  </table>
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/if.htm
  
  Index: if.htm
  ===================================================================
  <html>
  <head>
  <title>IF Metacommand in Embperl</title>
  </head>
  
  <body>
  
  [- $a = 1; $b = 0; $c = 5; $d = 'txt' -]
  
  a1
  [$if $a$]
      a <br>
  [$ endif$]
  
  a2
  [$if $a $]
      a <br>
  [$else$]
      not a<br>
  [$ endif $]
  
  a3
  [$if $a<br> $]
      a <br>
  [$else<br>$]
      not a<br>
  [$ endif <br>$]
  
  a4
  [#
  [$<br>if $a $]
      a <br>
  [$ <br> else<br>$]
      not a<br>
  [$ <br>endif $]
  #]
  a5
  [$ if $a$]
      a <br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ else$]
      not a<br>
  [$ endif $]
  
  
  [$ if $a$]
      a <br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ else$]
      not a<br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ endif $]
  
  
  [$ if !$a$]
      not a <br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ else$]
      a<br>
      [$if $b == 0$]
          b is null <br>
      [$else$]    
          b is not null <br>
      [$endif$]
  [$ endif $]
  
  
  [$ if $a$]
      a <br>
      [$if $b == 0$]
          b is null <br>
      [$elsif $c == 5 $]
          b is not null and c is 5 <br>
      [$elsif $d eq 'txt'$]
          b is not null and c is not 5, but d is 'txt' <br>
      [$else$]    
          b is not null and c is not 5 and d is not 'txt' <br>
      [$endif$]
  [$ else$]
      not a<br>
  [$ endif $]
  
  
  [$ if $a$]
      a <br>
      [$if $b == 0$]
          b is null <br>
      [$elsif $c == 5 $]
          b is not null and c is 5 <br>
      [$elsif $d eq 'txt'$]
          b is not null and c is not 5, but d is 'txt' <br>
      [$else$]    
          b is not null and c is not 5 and d is not 'txt' <br>
      [$endif$]
  [$ else$]
      not a<br>
      [$if $b == 0$]
          b is null <br>
      [$elsif $c == 5 $]
          b is not null and c is 5 <br>
      [$elsif $d eq 'txt'$]
          b is not null and c is not 5, but d is 'txt' <br>
      [$else$]    
          b is not null and c is not 5 and d is not 'txt' <br>
      [$endif$]
  [$ endif $]
  
  
  [$ if $a == 0 $]
      a is null <br>
      [$if $b != 0$]
          b not is null <br>
      [$elsif $c == 5 $]
          b is null and c is 5 <br>
      [$elsif $d eq 'txt'$]
          b is null and c is not 5, but d is 'txt' <br>
      [$else$]    
          b is null and c is not 5 and d is not 'txt' <br>
      [$endif$]
  [$ else$]
      a is not null <br>
      [$if $b != 0$]
          b is not null <br>
      [$elsif $c == 5 $]
          b is null and c is 5 <br>
      [$elsif $d eq 'txt'$]
          b is null and c is not 5, but d is 'txt' <br>
      [$else$]    
          b is null and c is not 5 and d is not 'txt' <br>
      [$endif$]
  [$ endif $]
  
  
  [$ if $a == 0 $]
      a is null <br>
      [$if $b != 0$]
          b not is null <br>
      [$elsif $c == 5 $]
          b is null and c is 5 <br>
      [$elsif $d eq 'txt'$]
          b is null and c is not 5, but d is 'txt' <br>
      [$else$]    
          b is null and c is not 5 and d is not 'txt' <br>
      [$endif$]
  [$ else$]
      a is not null <br>
      [$if $b != 0$]
          b is not null <br>
      [$elsif $c != 5 $]
          b is null and c is not 5 <br>
      [$elsif $d ne 'txt'$]
          b is null and c is not 5, but d is not 'txt' <br>
      [$else$]    
          b is null and c is 5 and d is 'txt' <br>
      [$endif$]
  [$ endif $]
  
  
  
  [$ if $a == 0 $]
      a is null <br>
      [$if $b != 0$]
          b not is null <br>
      [$elsif $c == 5 $]
          b is null and c is 5 <br>
      [$elsif $d eq 'txt'$]
          b is null and c is not 5, but d is 'txt' <br>
      [$else$]    
          b is null and c is not 5 and d is not 'txt' <br>
      [$endif$]
  [$ else$]
      a is not null <br>
      [$if $b != 0$]
          b is not null <br>
      [$elsif $c != 5 $]
          b is null and c is not 5 <br>
      [$elsif $d ne 'txt'$]
          b is null and c is not 5, but d is not 'txt' <br>
      [$else$]    
          b is null and c is 5 and d is 'txt' <br>
          [$if $b != 0$]
              b is not null <br>
          [$elsif $c != 5 $]
              b is null and c is not 5 <br>
          [$elsif $d eq 'txt'$]
              b is null and c is not 5, but d is 'txt' <br>
              [$if $d eq 'txt'$]
                  If we get to here it looks good with the tests <br>
              [$else$]
                  No not go to here, something is wrong! <br>
              [$endif$]
              
          [$else$]    
              b is null and c is 5 and d is 'txt' <br>
          [$endif$]
      [$endif$]
  [$ endif $]
  
  
  
  
  [$ if $a == 0 $]
      a is null <br>
      [$if $b != 0$]
          b not is null <br>
      [$elsif $c == 5 $]
          b is null and c is 5 <br>
      [$elsif $d eq 'txt'$]
          b is null and c is not 5, but d is 'txt' <br>
      [$else$]    
          b is null and c is not 5 and d is not 'txt' <br>
      [$endif$]
  [$ else$]
      a is not null <br>
      [$if $b != 0$]
          b is not null <br>
          [$if $d eq 'txt'$]
              No not go to here, something is wrong! (a) <br>
          [$else$]
              No not go to here, something is wrong! (b) <br>
          [$endif$]
      [$elsif $c != 5 $]
          b is null and c is not 5 <br>
          [$if $d eq 'txt'$]
              No not go to here, something is wrong! (a) <br>
          [$else$]
              No not go to here, something is wrong! (b) <br>
          [$endif$]
      [$elsif $d ne 'txt'$]
          b is null and c is not 5, but d is not 'txt' <br>
          [$if $d eq 'txt'$]
              No not go to here, something is wrong! (a) <br>
          [$else$]
              No not go to here, something is wrong! (b) <br>
          [$endif$]
      [$else$]    
          b is null and c is 5 and d is 'txt' <br>
          [$if $b != 0$]
              b is not null <br>
              [$if $d eq 'txt'$]
                  No not go to here, something is wrong! (a) <br>
              [$else$]
                  No not go to here, something is wrong! (b) <br>
              [$endif$]
          [$elsif $c != 5 $]
              b is null and c is not 5 <br>
              [$if $d eq 'txt'$]
                  No not go to here, something is wrong! (a) <br>
              [$else$]
                  No not go to here, something is wrong! (b) <br>
              [$endif$]
          [$elsif $d eq 'txt'$]
              b is null and c is not 5, but d is 'txt' <br>
              [$if $d eq 'txt'$]
                  If we get to here it looks good with the tests <br>
              [$else$]
                  No not go to here, something is wrong! <br>
              [$endif$]
              
          [$else$]    
              b is null and c is 5 and d is 'txt' <br>
              [$if $d eq 'txt'$]
                  No not go to here, something is wrong! (a) <br>
              [$else$]
                  No not go to here, something is wrong! (b) <br>
              [$endif$]
          [$endif$]
      [$endif$]
  [$ endif $]
  
  
  
  [- $ttrue = 'true'; $tfalse = '' -]
  
  [$if $ttrue $]
  ttrue = true
  [$else$]
  ttrue = false
  [$endif$]
  
  [$if $tfalse $]
  tfalse = true
  [$else$]
  tfalse = false
  [$endif$]
  
  The following HTML tags schould be ignored by Embperl
  
  <if 0>
  
  Ignored, ok!
  
  <else>
  
  Not ignored, ERROR!
  
  <endif> 
  
  
  
  <TABLE WIDTH="530" BORDER="0">
   <TR>
    <TD ALIGN="LEFT">
     [$ if ($badge eq "iit") $]
  	<A HREF="/iit/">
     [$ else $]
  	<A HREF="/">
     [$ endif $]
    <IMG SRC="[$ if (($server_type eq "iii.co.uk")) $]/i/www.[+ $server_type +]/[+ $badge || "iiilogo_narrow" +].gif[$ else $]/icons/[+ $badge || "iiilogo_narrow" +].gif[$ endif $]"
    WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0" 
     [$ if ($badge eq "iit") $]
  	ALT="iit logo"
     [$ else $]
  	ALT="iii logo"
     [$ endif $]
     [$ if (($badge eq "iit") && ($badge ne $cookie_badge) && !$cookie_to) $]
          onload="window.open('/iit/welcometoiit.epl','dis','status=no,scrollbars=no,resizable=yes,width=390,height=410,screenX=50,screenY=50,top=50,left=50'); return false"
     [$ elsif (($badge eq "") && ($cookie_badge eq "iit") && !$cookie_from) $]
          onload="window.open('/iit/leavingiit.epl','dis','status=no,scrollbars=no,resizable=yes,width=370,height=320,screenX=100,screenY=100,top=100,left=100'); return false"
     [$ endif $] qqq >
  
    </TD>
  </TR>
  </TABLE>
  
  [- $cookie_badge = "iit" ; 
     $server_type = "iii.co.uk" ; 
     $icon_width = 1 ; 
     $icon_height=2; -]
  <TABLE WIDTH="530" BORDER="0">
   <TR>
    <TD ALIGN="LEFT">
     [$ if ($badge eq "iit") $]
  	<A HREF="/iit/">
     [$ else $]
  	<A HREF="/">
     [$ endif $]
    <IMG SRC="[$ if (($server_type eq "iii.co.uk")) $]/i/www.[+ $server_type +]/[+ $badge || "iiilogo_narrow" +].gif[$ else $]/icons/[+ $badge || "iiilogo_narrow" +].gif[$ endif $]"
    WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0" 
     [$ if ($badge eq "iit") $]
  	ALT="iit logo"
     [$ else $]
  	ALT="iii logo"
     [$ endif $]
     [$ if (($badge eq "iit") && ($badge ne $cookie_badge) && !$cookie_to) $]
          onload="window.open('/iit/welcometoiit.epl','dis','status=no,scrollbars=no,resizable=yes,width=390,height=410,screenX=50,screenY=50,top=50,left=50'); return false"
     [$ elsif (($badge eq "") && ($cookie_badge eq "iit") && !$cookie_from) $]
          onload="window.open('/iit/leavingiit.epl','dis','status=no,scrollbars=no,resizable=yes,width=370,height=320,screenX=100,screenY=100,top=100,left=100'); return false"
     [$ endif $]>
  
    </TD>
  </TR>
  </TABLE>
  
  
  [- $icon_width = 5 ; $icon_height=10; -]
  
  <IMG 
  [$ if (($server_type eq "iii")) $]
  SRC="/i/www.[+ $server_type +]/[+ $badge || "iiilogo_narrow_if" +].gif" WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0"
  [$ else $]
  SRC="/icons/[+ $badge || "iiilogo_narrow_else" +].gif" WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0" 
  [$ endif $]
  [$ if ($badge eq "iit") $]
  	ALT="iit logo"
  [$ else $]
  	ALT="iii logo"
  [$ endif $]>
  
  [- $icon_width = 6 ; $icon_height=11; $server_type="iii" ; $badge = "iit" -]
  
  <IMG 
  [$ if (($server_type eq "iii")) $]
  SRC="/i/www.[+ $server_type +]/[+ $badge || "iiilogo_narrow_if" +].gif" WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0"
  [$ else $]
  SRC="/icons/[+ $badge || "iiilogo_narrow_else" +].gif" WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0" 
  [$ endif $]
  [$ if ($badge eq "iit") $]
  	ALT="iit logo"
  [$ else $]
  	ALT="iii logo"
  [$ endif $]>
  
  <IMG 
  [$ if (($server_type eq "iii")) $]
  SRC="/i/www.[+ $server_type +]/[+ $badge || "iiilogo_narrow_if" +].gif" WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0"
  [$ else $]
  SRC="/icons/[+ $badge || "iiilogo_narrow_else" +].gif" WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0" 
  [$ endif $]
  [$ if ($badge eq "iit") $]
  	ALT="iit logo"
  [$ else $]
  	ALT="iii logo"
  [$ endif $]
  qqq>
  
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/html2/ifperl.htm
  
  Index: ifperl.htm
  ===================================================================
  
  <html>
  <head>
  <title>IF Metacommand in Embperl</title>
  </head>
  
  <body>
  
  [- $a = 1; $b = 0; $c = 5; $d = 'txt' -]
  
  a1
  [* if ($a) { *]
      a <br>
  [* } *]
  
  a2
  [* if ( $a) { *]
      a <br>
  [* } else { *]
      not a<br>
  [* } *]
  
  a3
  [* if ( $a<br>) { *]
      a <br>
  [* } else { <br>*]
      not a<br>
  [* } <br>*]
  
  a4
  [*<br>if ($a) { *]
      a <br>
  [* <br> } else { <br>*]
      not a<br>
  [* <br>} *]
  
  a5
  [* if ($a) {*]
      a <br>
      [* if ( $b == 0) {*]
          b is null <br>
      [* } else { *]    
          b is not null <br>
      [* } *]
  [* } else{*]
      not a<br>
  [* } *]
  
  
  [* if ($a) {*]
      a <br>
      [* if ( $b == 0) {*]
          b is null <br>
      [* } else { *]    
          b is not null <br>
      [* } *]
  [* } else {*]
      not a<br>
      [* if ( $b == 0) {*]
          b is null <br>
      [* } else { *]    
          b is not null <br>
      [* } *]
  [* } *]
  
  
  [* if (!$a) {*]
      not a <br>
      [* if ( $b == 0) {*]
          b is null <br>
      [* } else { *]    
          b is not null <br>
      [* } *]
  [* } else {*]
      a<br>
      [* if ( $b == 0) {*]
          b is null <br>
      [* } else { *]    
          b is not null <br>
      [* } *]
  [* } *]
  
  
  [* if ($a) {*]
      a <br>
      [* if ( $b == 0) {*]
          b is null <br>
      [* } elsif ($c == 5) { *]
          b is not null and c is 5 <br>
      [* } elsif ($d eq 'txt') {*]
          b is not null and c is not 5, but d is 'txt' <br>
      [* } else { *]    
          b is not null and c is not 5 and d is not 'txt' <br>
      [* } *]
  [* } else {*]
      not a<br>
  [* } *]
  
  
  [- $ttrue = 'true'; $tfalse = '' -]
  
  [* if ( $ttrue) { *]
  ttrue = true
  [* } else { *]
  ttrue = false
  [* } *]
  
  [* if ( $tfalse) { *]
  tfalse = true
  [* } else { *]
  tfalse = false
  [* } *]
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/html2/importmodule.htm
  
  Index: importmodule.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Importing subs from a Perl module</title>
  </head>
  
  
  <body>
  
  <h1>Tests for Embperl - Importing  from a Perl module</h1>
  
  [! 
  use lib qw{ . } ;
  use subimp ;
  !]
  
  First sub:
  [- tfirst -]
  
  Second sub:
  params in main  = [+ "@_" +]
  
  [- tsecond (1, 2, 3) -]
  
  
  [- @cell = (['a1', 'a2'], ['b1', 'b2']) -]
  
  And now a table splitted into several subs:
  
  <table>
  <tr><th>1</th><th>2></th></tr>
  <tr>
  [- tabcell (\@cell) -]
  </tr>
  </table>
  
  And done!
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/importsub.htm
  
  Index: importsub.htm
  ===================================================================
  <html>  
  <head>
  <title>Tests for Embperl - Importing subs</title>
  </head>
  
  
  <body>
  
  <h1>Tests for Embperl - Importing subs</h1>
  
  [! Execute({inputfile => 'subimp.htm', import => 1}) !]
  
  First sub:
  [- tfirst -]
  
  Second sub:
  [- tsecond -]
  
  
  [- @cell = (['a1', 'a2'], ['b1', 'b2']) -]
  
  And now a table splitted into several subs:
  
  <table>
  <tr><th>1</th><th>2></th></tr>
  <tr>
  [- tabcell (\@cell)-]
  </tr>
  </table>
  
  
  req_rec sub:
  <h2>$req_rec = [+ $req_rec +] $$req_rec = [+ $$req_rec +]<h2>
  [- trr -]
  
  And done!
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/importsub2.htm
  
  Index: importsub2.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Importing subs 2</title>
  </head>
  
  
  <body>
  
  <h1>Tests for Embperl - Importing subs</h1>
  
  [! Execute({inputfile => 'subimp.htm', import => 1}) !]
  
  
  Second sub:
  [- tsecond -]
  
  First sub:
  [- tfirst -]
  
  [- @cell = (['2a1', '2a2'], ['2b1', '2b2']) -]
  
  And now a table splitted into several subs:
  
  <table>
  <tr><th>1</th><th>2></th></tr>
  <tr>
  [- tabcell (\@cell) -]
  </tr>
  </table>
  
  And done!
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/inc.htm
  
  Index: inc.htm
  ===================================================================
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined at the first include and
  apear at the second include:
  <P>
  
  $a = [+ $a || '' +] <BR>
  $b = [+ $b || '' +] <BR>
  $c = [+ $c || '' +] <BR>
  $d = [+ $d || '' +] <BR>
  $e = [+ $e || '' +] <BR>
  
  
  First of all assign a value:
  [- $a = '(this is the value in $a)' -] <BR>
  
  Now we have some 'Umlaute':
  
  
  [- $b = "$a &auml;&ouml;&uuml;" -]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  And now a and b together: [+ "$a$b" +]<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  [+ $c =  6 + 17 * 3 +]
  [+ "SELECT * <br> FROM a ORDER BY b USING <; Hi There>" +]
  
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  [+ "SELECT * FROM a ORDER BY b USING <; Hi There>" +]
  
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  [- $e = 2 -]
  [+ $d = $e < 6 +]
  
  Now they should have a value
  
  $a = [+ $a +] <BR>
  $b = [+ $b +] <BR>
  $c = [+ $c +] <BR>
  $d = [+ $d +] <BR>
  $e = [+ $e +] <BR>
  
  <P>Ok.<P>
  
  
  
  
  1.1                  embperl/test/html2/incerr.htm
  
  Index: incerr.htm
  ===================================================================
  [+ "Start include" +]
  [- @a = ('s1', 's2', 's3') -]
  <table>
      <tr>
  	<td>
  	    [+ Syntax error is here "$param[0] - " +][+ $a[$col] +]
  	</td>
      </tr>
  </table>
  [+ "End include" +]
  
  
  
  1.1                  embperl/test/html2/incif.htm
  
  Index: incif.htm
  ===================================================================
  [$ if 1 $]
      [$ if 1 $]
           [# FUNKY HTML NAV #]
      [$ endif $]
      [$ if 1 $]
          [- $xxx = 'Hello World' ; Execute({inputfile => 'xxx', 'input' => \$xxx}) -]
      [$ else $]
      [$ endif $]
  [$ endif $]
  
  
  
  
  
  1.1                  embperl/test/html2/include.htm
  
  Index: include.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Tests - Include other Embperl pages via Execute</title>
  </head>
  
  <h1>Embperl Tests - Include other Embperl pages via Execute</h1>
  
  
  [- $optRawInput = 1 -]
  
  [- $tst1 = '<P>Here is some text</P>' ; -]
  
  
  <H1> 1.) Include from memory</H1>
  
  [-		       Execute ({input		=> \$tst1,
  						 mtime      => 1,  
  						 inputfile	=> 'Some text',
  						 }) ;
  -]
  
  <H1> 2.) Include from memory with some Embperl code</H1>
  
  [- Execute ({input		=> \('[- @ar = (a1, b2, c3) -' . ']<table><tr><td>[+$ar[$col]+]</td> </tr> </table> </P>'),
  						 mtime      => 1,  
  						 inputfile	=> 'table',
  						 }) ;
  -]
  
  <H1> 3.) Include from memory with passing of variables</H1>
  
  
  [- $MyPackage::Interface::Var = 'Some Var' ; -]
  
  [- Execute ({input		=> \'<P>Transfer some vars [+ $Var +] !</P>',
  						 inputfile	=> 'Var',
  						 mtime      => 1,
  						 'package'  => 'MyPackage::Interface',
  						 }) ;
  -]
  
  <H1> 4.) Change the variable, but not the code</H1>
  
  [-
  
  $MyPackage::Interface::Var = 'Do it again' ;
  
  # code is the same, so give the same mtime and inputfile to avoid recompile
  # Note you get problems is you change the code, but did not restart the server or
  # change the value in mtime. So make sure if you change something also change mtime!
  
  Execute ({input		=> \'<P>Transfer some vars [+ $Var +] !</P>',
  						 inputfile	=> 'Var2',
  						 mtime      => 1,  
  						 'package'  => 'MyPackage::Interface',
  						 req_rec    => $req_rec}) ;
  -]
  
  <H1> 5.) Use \@param to pass parameters</H1>
  
  
  [-
  Execute ({input		=> \'<P>Use @param to transfer some data ([+ "@param" +]) !</P>',
  						 inputfile	=> 'Param',
  						 param      => [1, 2, 3, 4] }
  						 ) ;
  -]
  
  <H1> 6.) Use \@param to pass parameters and return it</H1>
  
  [- @p = ('vara', 'varb') ; -]
  
  <H3> $p[0] is [+ $p[0] +] and $p[1] is [+ $p[1] +]<H3>
  
  [-
  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    => $req_rec,
  						 param      => \@p }
  						 ) ;
  -]
  
  <H3> $p[0] is now [+ $p[0] +] and $p[1] is now [+ $p[1] +] <H3>
  
  <H1> 7.) Presetup \%fdat and \@ffld</H1>
  
  [- %myfdat = ('test' => 'value',
                'fdat' => 'text') ;
                
  @myffld = sort keys %myfdat ;             
  
  Execute ({input		=> \'<P><table><tr><td>[+ $ffld[$row] +]</td><td>[+ do { local $^W = 0 ; $fdat{$ffld[$row]} } +]</td></tr></table></P>',
  						 inputfile	=> 'fdat & ffld',
  						 req_rec    => $req_rec,
  						 fdat  => \%myfdat,
  						 ffld  => \@myffld}
  						 ) ;
  
  -]
  
  <H1> 8a.) Include a file</H1>
  
  [- Execute ('inc.htm') -]
  
  <H1> 8b.) Include again the same file </H1>
  
  [- Execute ('inc.htm') -]
  
  <H1> 9.) Include a file and return output in a scalar</H1>
  
  
  
  [- Execute ({inputfile	=> 'inc.htm',
  						 output     => \$out,
  						 req_rec    => $req_rec}) ;
  -]
  
  <H3> [+ $out +] </H3>
  
  
  <H1> 10.) Include inside a table</H1>
  
  [- @a = ('m1', 'm2', 'm3') -]
  
  <table>
      <tr>
  	<td>
  	    [+ $a[$row] +] : [- Execute ({inputfile => 'incsub.htm', req_rec => $req_rec, param => [$a[$row], 'main']}) -]
  	</td>
      </tr>
  </table>
  
  
  <H1> 11.) Include a file with parameters</H1>
  
  [- Execute ('incparam.htm', 0, 'B', 'three', 'dddd', '555') -]
  
  <H1> 12.) Include a file and write outputfile</H1>
  
  [# - Execute ({inputfile	=> 'inc.htm',
  			 outputfile     => "../tmp/incout.htm",
  						 }) ;
  - #]
  
  
  <H1> 12.) Done :-)</H1>
  
  <br>
  
  
  <p><hr>
  
  <small>HTML::Embperl (c) 1997-1998 G.Richter</small>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/includeerr1.htm
  
  Index: includeerr1.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Tests - Errors in Include other Embperl pages via Execute 1</title>
  </head>
  
  <h1>Embperl Tests - Errors in Include other Embperl pages via Execute 1</h1>
  
  
  [- Execute ( syntax error is here {inputfile => 'incsub.htm', req_rec => $req_rec, param => [$a[$row], 'main']}) -]
  
  
  <br>
  
  
  <p><hr>
  
  <small>HTML::Embperl (c) 1997-1998 G.Richter</small>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/includeerr2.htm
  
  Index: includeerr2.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Tests - Errors in Include other Embperl pages via Execute 2</title>
  </head>
  
  <h1>Embperl Tests - Errors in Include other Embperl pages via Execute 2</h1>
  
  
  [- Execute ( {inputfile => 'incsub.htm', req_rec => $req_rec, param => [undef, 'main']}) -]
  
  [# cause runtime error #]
  [- Execute ( {inputfile => 'incerr.htm', req_rec => $req_rec, param => ['err', 'main']}) -]
  
  [- Execute ( {inputfile => 'incerr.htm', debug => 0x7ffffffe} ) -]
  
  [# cause compiletime error #]
  [- Execute ( {inputfile => 'incerr.htm', debug => 0x7ffffffe, syntax => 'Perl'} ) -]
  
  [- Execute ( {inputfile => 'incerr.htm', debug => 0x7ffffffe, syntax => 'Perl'} ) -]
  
  [- Execute ( {inputfile => 'inc.htm', req_rec => $req_rec}) -]
  
  
  <br>
  
  
  <p><hr>
  
  <small>HTML::Embperl (c) 1997-1998 G.Richter</small>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/includeerrbt.htm
  
  Index: includeerrbt.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Tests - Errors in Include with backtrace</title>
  </head>
  
  <h1>Embperl Tests - Errors in Include with backtrace</h1>
  
  
  [- Execute ( {inputfile => 'incerr.htm', param => ['err', 'main'], options => Embperl::Constant::optShowBacktrace}) -]
  
  
  <br>
  
  
  <p><hr>
  
  <small>Embperl (c) 1997-2002 G.Richter</small>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/incparam.htm
  
  Index: incparam.htm
  ===================================================================
  Here is param[0] -> [+ $param[0] +]<br>
  Here is param[1] -> [+ $param[1] +]<br>
  Here is param[2] -> [+ $param[2] +]<br>
  Here is param[3] -> [+ $param[3] +]<br>
  Here is param[4] -> [+ $param[4] +]<br>
  
  
  
  
  
  1.1                  embperl/test/html2/incperl.htm
  
  Index: incperl.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - Include perl script</title>
  </head>
  
  <body>
  
  
  [- $a = 'Start' ; $b = 'End' -]
  
  [+ $a +]
  [- Execute ({inputfile => 'registry/script.pl', syntax => 'Perl', param => ['a', 'b', 'c']}) ; -]
  [+ $b +]
  
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/html2/incsub.htm
  
  Index: incsub.htm
  ===================================================================
  [+ "Start include" +]
  [- @a = ('s1', 's2', 's3') -]
  <table>
      <tr>
  	<td>
  	    [+ "$param[0] - " +][+ $a[$col] +]
  	</td>
      </tr>
  </table>
  Parameters:<BR>
  <table>
      <tr>
  	<td>
  	    [+ $param[$col] +]
  	</td>
      </tr>
  </table>
  p0	    [+ $param[0] +]
  p1	    [+ $param[1] +]
  [+ "End include" +]
  
  
  
  1.1                  embperl/test/html2/inctext.htm
  
  Index: inctext.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - Include literal text</title>
  </head>
  
  <body>
  
  
  [- $a = 'Start' ; $b = 'End' -]
  
  [+ $a +]
  [- Execute ({inputfile => 'SSIEP/ssiep.htm', syntax => 'Text'}) ; -]
  [+ $b +]
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/html2/incxmlLibXSLT.htm
  
  Index: incxmlLibXSLT.htm
  ===================================================================
  
  
  <html><head><title>Include POD via XSLT</title></head>
  
  <body>
  
  <h1>Start pod.xml</h1>
  
  [- Execute ({inputfile => 'xml/pod.xml', recipe => 'EmbperlLibXSLT', xsltstylesheet =>
  'xml/podold.xsl'}) ; -]
  
  <h1>Start kfdres.xml</h1>
  
  [- Execute ({inputfile => 'xml/kfdres.xml', recipe => 'EmbperlLibXSLT', xsltstylesheet =>
  'xml/kfd.xsl'}) ; -]
  
  
  <h1>END</h1>
  
  </body>
  </html>
  
  
  
  
  
  1.1                  embperl/test/html2/incxmlXalanXSLT.htm
  
  Index: incxmlXalanXSLT.htm
  ===================================================================
  
  
  <html><head><title>Include POD via XSLT</title></head>
  
  <body>
  
  <h1>Start pod.xml</h1>
  
  [- Execute ({inputfile => 'xml/pod.xml', recipe => 'EmbperlXalanXSLT', xsltstylesheet =>
  'xml/podold.xsl'}) ; -]
  
  <h1>Start kfdres.xml</h1>
  
  [- Execute ({inputfile => 'xml/kfdres.xml', recipe => 'EmbperlXalanXSLT', xsltstylesheet =>
  'xml/kfd.xsl'}) ; -]
  
  
  <h1>END</h1>
  
  </body>
  </html>
  
  
  
  
  
  1.1                  embperl/test/html2/input.htm
  
  Index: input.htm
  ===================================================================
  <html>
  <head>
  <title>Test for interpretation of input tag</title>
  </head>
  
  [-
  @regs = () ;
  $regs[0]{Id} = 'Pfalz' ;
  $regs[1]{Id} = 'Rheinhessen' ;
  
  @kats = () ;
  $kats[0]{Id} = 'Kultur' ;
  $kats[1]{Id} = 'Sport' ;
  $kats[2]{Id} = 'Veranstaltungen' ;
  
  -]
  
  <form action="inhalt.htm" method="POST">
      <p>&nbsp;</p>
  
      <input name=neu1 value="[+ 1 > 2?'yes':'no' +]" >
      <input name=[+ $name || 'undef' +] value="[+ 1 > 2?'yes':'no' +]">
  
      <input>
      <input  >
      <input name="feld1">
      <input name="feld5">
      <input name="feld1" value="Wert1">
      <input name="feld5" value="Wert15">
      <input name="feld5a" value="a&quot;b">
      <input name="feld5b" value="a'b&amp;c">
      <input name="feld5a">
      <input name="feld5b">
      <input name="feld1" value="">
      <input name="feld5" value="">
      <input type="text">
      <input type = "text">
      <input typo="text2">
      <input typo = "text2" >
      <input foo>
      <input foo >
    
      <input name=neu2 value="[+ 1 > 2 +]">
      <input name='neu3' value=">>">
    
      <input type="text" name="feld1" value="Wert1">
      <input type="text" name="feld2">
      <input type="text" size=10 name="feld3">
      <input type="text" name="feld4" size=10>
      
  	<input type="text" name="feld5" value="Wert5">
      <input type="text" name="feld6">
      <input type="text" size=10 name="feld7">
      <input type="text" name="feld8" size=10>
      
  	
  	<input type="checkbox" value="cbv1" name="cb1" checked>
      <input type="checkbox" checked name="cb2" value="cbv2">
      <input type="checkbox" name="cb3" value="cbv3">
      <input type="checkbox" value="cbv4" name="cb4">
      
  	<input type="checkbox" value="cbv5" name="cb5" checked>
      <input type="checkbox" checked name="cb6" value="cbv6">
      <input type="checkbox" name="cb7" value="cbv7">
      <input type="checkbox" value="cbv8" name="cb8">
      
  	<input type="checkbox" value="cbv9" name="cb9" checked>
  	<input type="checkbox" checked name="cb10" value="cbv10">
      <input type="checkbox" name="cb11" checked value="cbv11">
  
  
      [- $fdat{dec} = 'a & b' -]	
      <input type="checkbox" name="dec" checked value="a & b">
      <input type="checkbox" name="dec" checked value="a &amp; b">
  
  
      <textarea Name=feld1></textarea>
      <textarea Name=feld5></textarea>
  
      <textarea Name=feld1>text1</textarea>
      <textarea Name=feld5>text5</textarea>
  
  
      <table border="0" width="100%">
          <tr>
              <td><table border="0">
                  <tr>
                      <td valign="top"><input type="checkbox"
                      name="Region"
                      value="[+$regs[$row]{Id}+]"><a 
                      href="inhalt.htm?Region=[+$regs[$row]{Id}+]">[+$regs[$row]{Id}+]</a></td>
                  </tr>
              </table>
              </td>
              <td><table border="0">
                  <tr>
                      <td valign="top"><p align="left"><input  
                      type="checkbox" name="Kategorie"
                      value="[+$kats[$row]{Id}+]"><a 
                      href="inhalt.htm?Kategorie=[+$kats[$row]{Id}+]">[+$kats[$row]{Id}+]</a></p>
                      </td>
                  </tr>
              </table>
              </td>
          </tr>
      </table>
  
  	<select name="foo">
  		<option value="feld1">feld1</option>
  		<option value="feld2">feld2</option>
  		<option value="feld3">feld3</option>
  		<option value="feld4">feld4</option>
  		<option value="feld5">feld5</option>
  		<option value="feld6">feld6</option>
  		<option value="feld7">feld7</option>
  		<option value="feld8">feld8</option>
  	</select>
  
  	<select name="feld5">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  	<select name="feld5">
  		<option value="Wert3">Wert3
  		<option value="Wert4">Wert4
  		<option value="Wert5">Wert5
  	</select>
  
  	<select name="feld5">
  		<option>Wert3</option>
  		<option>Wert4</option>
  		<option>Wert5</option>
  	</select>
  
  	<select name="feld5">
  		<option>Wert3
  		<option>Wert4
  		<option>Wert5
  	</select>
  
  	<select name="feld5a">
  		<option>Wert3'x</option>
  		<option>Wert4'y'r</option>
  		<option>Wert5\#\\'#''</option>
  	</select>
  
  	<select name="feld5a">
  		<option>Wert3'x
  		<option>Wert4'y'r
  		<option>Wert5\#\\'#''
  	</select>
  
  	<select name="mult" multiple>
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  	<select name="mult" multiple>
  		<option value="Wert1" selected>Wert1</option>
  		<option value="Wert2" selected>Wert2</option>
  		<option value="Wert3" selected>Wert3</option>
  		<option value="Wert4" selected>Wert4</option>
  		<option value="Wert5" selected>Wert5</option>
  		<option value="Wert6" selected>Wert6</option>
  		<option value="Wert7" selected>Wert7</option>
  		<option value="Wert8" selected>Wert8</option>
  	</select>
  
  	
  	ks = [+ do { @ks = sort keys %idat ; "@ks" } +]<p>
  
  	<table border=9>
  		<tr>
  			<td>[+ $ks[$i=$row] +]</td><td>[+ $idat{$ks[$i] || '<undef>'} +]</td>
  		</tr>
  	</table>
  
  
  
  	<select name="feld5">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  	<select name="[- $eld = 'eld' -]f[+ $eld +][+ 5 +]">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
      [- @ksall = qw{Wert1 Wert2 Wert3 Wert4 Wert5 Wert6 Wert7 Wert8} ; -]
  	<select name="[- $eld = 'eld' -]f[+ $eld +][+ 5 +]">
  		<option value="[+ $ksall[$row] +]">[+ $ksall[$row] +]</option>
  	</select>
  
  
  	<input type="checkbox" value="Wert1" name="mult" checked>
  	<input type="checkbox" value="Wert1" name="mult">
  	<input type="checkbox" value="Wert2" name="mult" checked>
  	<input type="checkbox" value="Wert2" name="mult">
  	<input type="checkbox" value="Wert3" name="mult" checked>
  	<input type="checkbox" value="Wert3" name="mult">
  	<input type="checkbox" value="Wert4" name="mult" checked>
  	<input type="checkbox" value="Wert4" name="mult">
  	<input type="checkbox" value="Wert5" name="mult" checked>
  	<input type="checkbox" value="Wert5" name="mult">
  	<input type="checkbox" value="Wert6" name="mult" checked>
  	<input type="checkbox" value="Wert6" name="mult">
  	<input type="checkbox" value="Wert7" name="mult" checked>
  	<input type="checkbox" value="Wert7" name="mult">
      
  
  	<input type="checkbox" value="cbv1" name="cb1">
  		<input type="checkbox" value="cbv1" name="cb1">
  		<input type="checkbox" value="cbv2" name="cb1">
  		<input type="checkbox" value="cbv3" name="cb1">
  		<input type="checkbox" value="cbv4" name="cb1">
  		<input type="checkbox" value="cbv5" name="cb1">
  		<input type="checkbox" value="cbv6" name="cb1">
  	<input type="checkbox" value="cbv5" name="cb5">
  		<input type="checkbox" value="cbv1" name="cb5">
  		<input type="checkbox" value="cbv2" name="cb5">
  		<input type="checkbox" value="cbv3" name="cb5">
  		<input type="checkbox" value="cbv4" name="cb5">
  		<input type="checkbox" value="cbv5" name="cb5">
  		<input type="checkbox" value="cbv6" name="cb5">
  
  
  	<INPUT TYPE="CHECKBOX" VALUE="cbv1" NAME="cb1">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv1" NAME="cb1">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv2" NAME="cb1">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv3" NAME="cb1">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv4" NAME="cb1">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv5" NAME="cb1">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv6" NAME="cb1">
  	<INPUT TYPE="CHECKBOX" VALUE="cbv5" NAME="cb5">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv1" NAME="cb5">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv2" NAME="cb5">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv3" NAME="cb5">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv4" NAME="cb5">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv5" NAME="cb5">
  		<INPUT TYPE="CHECKBOX" VALUE="cbv6" NAME="cb5">
  
  
  
  	<input type="checkbox" value="cbv2" name="cb2">
  		<input type="checkbox" value="cbv1" name="cb2">
  		<input type="checkbox" value="cbv2" name="cb2">
  		<input type="checkbox" value="cbv3" name="cb2">
  		<input type="checkbox" value="cbv4" name="cb2">
  		<input type="checkbox" value="cbv5" name="cb2">
  		<input type="checkbox" value="cbv6" name="cb2">
  	<input type="checkbox" value="cbv6" name="cb6">
  		<input type="checkbox" value="cbv1" name="cb6">
  		<input type="checkbox" value="cbv2" name="cb6">
  		<input type="checkbox" value="cbv3" name="cb6">
  		<input type="checkbox" value="cbv4" name="cb6">
  		<input type="checkbox" value="cbv5" name="cb6">
  		<input type="checkbox" value="cbv6" name="cb6">
  
  
  	[$ foreach $i (1,5,2,6) $]
  		<input type="checkbox" value="cbv[+ $i +]" name="cb[+ $i +]">
  		<input type="checkbox" value="cbv1" name="cb[+ $i +]">
  		<input type="checkbox" value="cbv2" name="cb[+ $i +]">
  		<input type="checkbox" value="cbv3" name="cb[+ $i +]">
  		<input type="checkbox" value="cbv4" name="cb[+ $i +]">
  		<input type="checkbox" value="cbv5" name="cb[+ $i +]">
  		<input type="checkbox" value="cbv6" name="cb[+ $i +]">
  		<input type="text"     name="feld[+ $i +]" value="[+ $i > 2?"feld$i":'' +]">
          <input type="text"     name="feld[+ $i +]">
  
  	[$endforeach$]
  
  	[$ foreach $i (1,5,2,6) $]
  		<textarea name="feld[+ $i +]">[+ $i > 2?"feld$i":'' +]</textarea>
          <textarea name="feld[+ $i +]"></textarea>
  
  	[$endforeach$]
  
          [- @order = (1,5,2,6) -]
          <table><tr><td>
  		<textarea name="feld[+ $i = $order[$row] +]">[+ $i > 2?"feld$i":'' +]</textarea>
                  <textarea name="feld[+ $i +]"></textarea>
          </td></tr></table>
  
          <table><tr><td>
                  <textarea name="feld6"></textarea>
          </td></tr></table>
  
          [- $fdat{ta} = 'blabla' -]
          <table><tr><td>
                  <textarea name="ta"></textarea>
          </td></tr></table>
  
          <table>
              <tr><td><input name="feld1"></td></tr>
              <tr><td><input name="feld2"></td></tr>
              <tr><td><input name="feld5"></td></tr>
              <tr><td><input name="feld6"></td></tr>
              <tr><td><textarea name="ta"></textarea></td></tr>
          </table>
  
  
  	[$ foreach $i (5,2,6,1) $]
          <p>
          i = [+ $i +] fdat{feld5} [+ $fdat{feld5} +]<br>
  		<input type="checkbox" value="cbv[+ $i +]" name="cb[+ $i +]">
  		<input type="text"     name="feld[+ $i +]" value="[+ $i > 2?"feld$i":'' +]">
  		<input type="text"     name="feld[+ $i +]">
          </p>
  	[$endforeach$]
  
  
  	ks = [+ do { @ks = sort keys %idat ; "@ks" } +]<p>
  
  	<table border=10>
  		<tr>
  			<td>[+ $ks[$i=$row] +]</td><td>[+ $idat{$ks[$i] || '<undef>'} +]</td>
  		</tr>
  	</table>
  
  </form>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/inputdisable.htm
  
  Index: inputdisable.htm
  ===================================================================
  
  	[- @ks = sort keys %idat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $idat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  
  
  
  
  optDisableInputScan is now: [+ $optDisableInputScan +] <BR>
  optDisableInputScan is set now to: [+ $optDisableInputScan = 1 +] <BR>
  optDisableInputScan is now: [+ $optDisableInputScan +] <BR>
  
      <input type="text" name="feld1" value="Wert1">
      <input type="text" name="feld2">
      <input type="text" size=10 name="feld3">
      <input type="text" name="feld4" size=10>
      
  	<input type="text" name="feld5" value="Wert5">
      <input type="text" name="feld6">
      <input type="text" size=10 name="feld7">
      <input type="text" name="feld8" size=10>
      
  	<select name="feld5">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $idat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  optDisableInputScan is now: [+ $optDisableInputScan +] <BR>
  optDisableInputScan is set now to: [+ $optDisableInputScan = 0 +] <BR>
  optDisableInputScan is now: [+ $optDisableInputScan +] <BR>
  
  
      <input type="text" name="feld1" value="Wert1">
      <input type="text" name="feld2">
      <input type="text" size=10 name="feld3">
      <input type="text" name="feld4" size=10>
      
  	<input type="text" name="feld5" value="Wert5">
      <input type="text" name="feld6">
      <input type="text" size=10 name="feld7">
      <input type="text" name="feld8" size=10>
      
  	<select name="feld5">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $idat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  
  optUndefToEmptyValue is now: [+ $optUndefToEmptyValue +] <BR>
  optUndefToEmptyValue is set now to: [+ $optUndefToEmptyValue = 1 +] <BR>
  optUndefToEmptyValue is now: [+ $optUndefToEmptyValue +] <BR>
  
      <input type="text" name="qqfeld1" value="Wert1">
      <input type="text" name="qqfeld2">
      <input type="text" size=10 name="qqfeld3">
      <input type="text" name="qqfeld4" size=10>
      
      <input type="checkbox" name="qqfeld1" value="Wert1">
      <input type="checkbox" name="qqfeld2">
      <input type="checkbox" size=10 name="qqfeld3">
      <input type="checkbox" name="qqfeld4" size=10>
  
  optUndefToEmptyValue is now: [+ $optUndefToEmptyValue +] <BR>
  optUndefToEmptyValue is set now to: [+ $optUndefToEmptyValue = 0 +] <BR>
  optUndefToEmptyValue is now: [+ $optUndefToEmptyValue +] <BR>
  
  
  [- $fdat{mult2} = "Wert2\tWert5\tWert6" ; -]
  [- $fdat{mult3} = "Wert4" ; -]
  [- $fdat{mult4} = "Wert1\tWert2\tWert7" ; -]
  [- $fdat{mult5} = "Wert3" ; -]
  
  	<input type="checkbox" value="Wert1" name="mult2" checked>
  	<input type="checkbox" value="Wert1" name="mult2">
  	<input type="checkbox" value="Wert2" name="mult2" checked>
  	<input type="checkbox" value="Wert2" name="mult2">
  	<input type="checkbox" value="Wert3" name="mult2" checked>
  	<input type="checkbox" value="Wert3" name="mult2">
  	<input type="checkbox" value="Wert4" name="mult2" checked>
  	<input type="checkbox" value="Wert4" name="mult2">
  	<input type="checkbox" value="Wert5" name="mult2" checked>
  	<input type="checkbox" value="Wert5" name="mult2">
  	<input type="checkbox" value="Wert6" name="mult2" checked>
  	<input type="checkbox" value="Wert6" name="mult2">
  	<input type="checkbox" value="Wert7" name="mult2" checked>
  	<input type="checkbox" value="Wert7" name="mult2">
  
  
  	<input type="checkbox" value="Wert1" name="mult3" checked>
  	<input type="checkbox" value="Wert1" name="mult3">
  	<input type="checkbox" value="Wert2" name="mult3" checked>
  	<input type="checkbox" value="Wert2" name="mult3">
  	<input type="checkbox" value="Wert3" name="mult3" checked>
  	<input type="checkbox" value="Wert3" name="mult3">
  	<input type="checkbox" value="Wert4" name="mult3" checked>
  	<input type="checkbox" value="Wert4" name="mult3">
  	<input type="checkbox" value="Wert5" name="mult3" checked>
  	<input type="checkbox" value="Wert5" name="mult3">
  	<input type="checkbox" value="Wert6" name="mult3" checked>
  	<input type="checkbox" value="Wert6" name="mult3">
  	<input type="checkbox" value="Wert7" name="mult3" checked>
  	<input type="checkbox" value="Wert7" name="mult3">
  
  	<select name="mult2">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  	<select name="mult3">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  	<select name="mult4">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  	<select name="mult5">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  
  	[- $fdat{mycheck} = 'N' -]
      <input type=checkbox name=mycheck value=N checked>
  
  	<select name="esc">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="a&lt;b">a&lt;b</option>
  		<option value="a&gt;b">a&lt;b</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  	<select name="escmult">
  		<option value="Wert1">Wert1</option>
  		<option value="Wert2">Wert2</option>
  		<option value="Wert3">Wert3</option>
  		<option value="Wert4">Wert4</option>
  		<option value="Wert5">Wert5</option>
  		<option value="Wert6">Wert6</option>
  		<option value="Wert7">Wert7</option>
  		<option value="a&lt;b">a&lt;b</option>
  		<option value="a&gt;b">a&gt;b</option>
  		<option value="Wert8">Wert8</option>
  	</select>
  
  optRawInput is now: [+ $optRawInput +] <BR>
  optRawInput is set now to: [+ $optRawInput = 1 +] <BR>
  optRawInput is now: [+ $optRawInput +] <BR>
  
      <input type="text" name="feld1" value="Wert1">
      <input type="text" name="feld2">
      <input type="text" size=10 name="feld3">
      <input type="text" name="feld4" size=10>
      
      <input type="text" name="feld5" value="Wert5">
      <input type="text" name="feld6">
      <input type="text" size=10 name="feld7">
      <input type="text" name="feld8" size=10>
  
      <input type="text" name="feld1" value="Wert&lt;1">
      <input type="text" name="feld5" value="Wert&lt;5">
  
      <p><input type="submit" name="Search" value="Absenden"></p>
  
  
  
  1.1                  embperl/test/html2/inputjava.htm
  
  Index: inputjava.htm
  ===================================================================
    <html>
    <body>
      [- $s = "script.htm" -]
      [$ if (($fdat{'Screen'} || 0) != 1) $]
      <form action="[+ $s +]" method="POST">
        <input type=hidden name="Screen" value="1">
  
        Screen 1<br>
        <input type=submit name="Command" value="Start" onClick="document.forms[0].Command.action = 'Start'">
        <input type=submit name="Command" value="Next" onClick="document.forms[0].Command.action = 'Next'">
      </form>
      [$ else $]
      <form action="[+ $s +]" method="POST">
        <input type=hidden name="Screen" value="2">
  
        Screen 2<br>
        <input type=submit name="Command" value="Back" onClick="document.forms[0].Command.action = 'Back'">
        <input type=submit name="Command" value="Done" onClick="document.forms[0].Command.action = 'Done'">
      </form>
      [$ endif $]
  
  	<select name="foo" onChange="javascript:this.value=this.value.toUpperCase();"> </select>
  	<foo name="foo" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<select name="foo" bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"  bla="xxx"> </select>
  	<foo name="foo"  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" bla="xxx">
  
  	<select  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"  name="xxx"> </select>
  	<foo  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" name="xxx">
  
  	<INPUT TYPE="text" NAME="titleref" VALUE="" SIZE="20"    
          MAXSIZE="20" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<INPUT TYPE='text' NAME="titleref" VALUE="" SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase();'>
  
  	<INPUT TYPE='text' NAME="titleref" VALUE="" SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase([+ '1' +]);'>
  
    </body>
    </html>
  
  
  
  1.1                  embperl/test/html2/inputjs2.htm
  
  Index: inputjs2.htm
  ===================================================================
  	<select name="foo" onChange="javascript:this.value=this.value.toUpperCase();"> </select>
  	<foo name="foo" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<select name="foo" bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"  bla="xxx"> </select>
  	<foo name="foo"  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" bla="xxx">
  
  	<select  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"  name="xxx"> </select>
  	<foo  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" name="xxx">
  
  	<INPUT TYPE="text" NAME="titleref" VALUE="" SIZE="20"    
          MAXSIZE="20" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<INPUT TYPE='text' NAME="titleref" VALUE="" SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase();'>
  
  	<INPUT TYPE='text' NAME="titleref" VALUE="" SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase([+ '1' +]);'>
  
  	[$syntax EmbperlHTML$]
  
  	<select name="foo" onChange="javascript:this.value=this.value.toUpperCase();"> </select>
  	<foo name="foo" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<select name="foo" bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"  bla="xxx"> </select>
  	<foo name="foo"  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" bla="xxx">
  
  	<select  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();"  name="xxx"> </select>
  	<foo  bla="xxx" onChange="javascript:this.value=this.value.toUpperCase();" name="xxx">
  
  	<INPUT TYPE="text" NAME="titleref" VALUE="" SIZE="20"    
          MAXSIZE="20" onChange="javascript:this.value=this.value.toUpperCase();">
  
  	<INPUT TYPE='text' NAME="titleref" VALUE="" SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase();'>
  
  	<INPUT TYPE='text' NAME="titleref" VALUE="" SIZE='20'    
          MAXSIZE="20" onChange='javascript:this.value=this.value.toUpperCase([+ '1' +]);'>
  
  
  
  
  1.1                  embperl/test/html2/java.htm
  
  Index: java.htm
  ===================================================================
   <html>
    <script language="JavaScript">
    var ReqFields = new init_reqfields('F1', 'F2');
  
    function init_reqfields() {
      window.alert("Initializing global required fields\n");
  
      this.length = init_reqfields.arguments.length;
      for (var i = 0; i < this.length; i++)
        this[i] = init_reqfields.arguments[i];
    };
  
    [- $java = () ; $java[0] = 1; $java[1] = 2; -]
    function print_reqfields() {
      var result = "<table><tr><td>[+$java[$row]+]</td></tr></table>";
  
      for (i = 0;  i < ReqFields.length; i++)
        result += ReqFields[i] + "\n";
  
      window.alert(result);
    };
    </script>
  
  
    <script>
      for (var j = 0; j < select2loc[i].length; j++){   }
    </script>
  
  
    </html>
  
  
  
  1.1                  embperl/test/html2/keepreq.htm
  
  Index: keepreq.htm
  ===================================================================
  
  [-
  
  $r = shift ;
  $p = $r -> param ;
  
  -]
  
  r before 
  global: [+ $Embperl::TEST::r +] 
  lokal:  [+ $r +]
  
  p before 
  global: [+ $Embperl::TEST::p +] 
  lokal:  [+ $p +]
  
  [-
  
  $Embperl::TEST::r = $r ;
  $Embperl::TEST::p = $p ;
  
  -]
  
  r after 
  global: [+ $Embperl::TEST::r +] 
  lokal:  [+ $r +]
  
  p after
  global: [+ $Embperl::TEST::p +] 
  lokal:  [+ $p +]
  
  
  
  1.1                  embperl/test/html2/lists.htm
  
  Index: lists.htm
  ===================================================================
  <html>
  
  <head>
  <meta http-equiv="Content-Type"
  content="text/html; charset=iso-8859-1">
  <title>Lists</title>
  </head>
  
  <body bgcolor="#FFFFFF">
  
  [- @k = (1, 2, 3, 4, 5, 6) -]
  [- @v = ('A', 'B', 'C', 'D', 'E', 'F') -]
  </p>
  <hr>
  <P>OL Tag</P>
  <ol>
      <li>[+ $k[$row] +] = [+ $v[$row] +]</li>
  </ol>
  
  <hr>
  <P>UL Tag</P>
  <ul>
      <li>[+ $k[$row] +] = [+ $v[$row] +]</li>
  </ul>
  
  <hr>
  <form method="POST">
    <P>Select Tag</P>
  
      If you request this document with list.htm?sel=n you can specify that the
      nth element of the dropdownlist is initialy selected
      
  
      <p><select name="D1" size="1">
          <option value="[+ $v[$row] +]" [+ $row + 1 == $fdat{sel}?'SELECTED':'' +]>[+ $k[$row] +]</option>
      </select></p>
  </form>
  
  
  <form method="POST">
    <P>Select Tag</P>
  
      If you request this document with list.htm?sel1=x you can specify that the
      element of the dropdownlist is initialy selected
      
  
      <p><select name="SEL1">
          <option value="[+ $v[$row] +]">[+ $k[$row] +]</option>
      </select></p>
  </form>
  
  <form method="POST">
    <P>Select Tag</P>
  
      If you request this document with list.htm?sel2=x you can specify that the
      element of the dropdownlist is initialy selected
      
  
      <p><select name="SEL2">
          <option selected value="[+ $v[$row] +]">[+ $k[$row] +]</option>
          <option value="[+ $v[$row] +]" selected>[+ $k[$row] +]</option>
          <option value="[+ $v[$row] +]" selected size=5>[+ $k[$row] +]</option>
      </select></p>
      <p><select name="SEL3">
          <option selected value="[+ $v[$row] +]">[+ $k[$row] +]</option>
          <option value="[+ $v[$row] +]" selected>[+ $k[$row] +]</option>
          <option value="[+ $v[$row] +]" selected size=5>[+ $k[$row] +]</option>
      </select></p>
      <p><select name="SEL4">
          <option selected value="aa">aaaa</option>
          <option value="bb" selected>bbbb</option>
          <option value="cc" selected size=5>cccc</option>
          <option value="dd">aaaa</option>
          <option value="ee">bbbb</option>
          <option value="cc" size=5>cccc</option>
      </select></p>
  </form>
  
  
  
  <hr>
  <P>DL Tag</P>
  <dl>
      <dt>[+ $k[$row] +]</dt>
      <dd>[+ $v[$row] +]</dd>
  </dl>
  
  <hr>
  <P>MENU Tag</P>
  <menu>
      <li>[+ $k[$row] +] = [+ $v[$row] +]</li>
  </menu>
  
  <hr>
  <P>DIR Tag</P>
  <dir>
      <li>[+ $k[$row] +] = [+ $v[$row] +]</li>
  </dir>
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/loop.htm
  
  Index: loop.htm
  ===================================================================
  
  <html>
  <head>
  <title>Test for Embperl - Loop Metacommand</title>
  </head>
  
  <body>
  
  [- $i = 0 -]
  [$ while($i &lt;= 2)$]
      [+ $i++ +]
  [$ endwhile $]
  
  [- $i = 0 -]
  [$ while $i &lt;= $#ffld $]
      [+ $ffld[$i] +] = [+ $fdat{$ffld[$i]} +]
      [- $j = 0 -]
      [$ while $j &lt;= $i $]
          [+ $j++ +] 
      [$ endwhile $]
      <BR>
      [- $i++ -]
  [$ endwhile $]
  
  
  [- %h = ('A' => 1, 'B' => 2, 'C' => 3) ; -]
  [- @a = ('a', 'b', 'c', 'd') ; -]
  
  [- @hh = map { $_ => $h{$_} } sort keys %h  -]  
  [$ while ($v = shift @hh, $k = shift @hh) $]
      [+ "$v = $k" +]<br>
  [$ endwhile $]
  
  [- $i = 0 -]
  [$ while $i <= $#a $]
      [+ "\@a[$i] = $a[$i]" +]<br>
  	[- $i++ -]
  [$ endwhile $]
  
  [- $i = 0 -]
  [$ do $]
      [+ "\@a[$i] = $a[$i]" +]<br>
  	[- $i++ -]
  [$ until $i > $#a $]
  
  [$ foreach $v (@a) $]
  	[+ $v +] <br>
  [$ endforeach $]
  
  [$ foreach $v (1, 3, 5, 7, 9) $]
  	[+ $v +] <br>
  [$ endforeach $]
  
  [$ foreach $v (1..10) $]
  	[+ $v +] <br>
  [$ endforeach $]
  
  [$ foreach $v(1..5) $]
  	2:[+ $v +] <br>
  [$ endforeach $]
  
  [- $i = 0 -]
  [$ do $]
      [+ "\@a[$i] = $a[$i]" +]<br>
  	[- @hh = map { $_ => $h{$_} } sort keys %h  -]  
  	[$ while ($v = shift @hh, $k = shift @hh) $]
  		[+ "$v = $k" +]<br>
  		[$ foreach $fv (1, 3, 5, 7, 9) $]
  			[+ $fv +] <br>
  		[$ endforeach $]
  		[$ foreach $fv (()) $]
  			[+ $fv +] <br>
  			[- @hhh = map { $_ => $h{$_} } sort keys %h  -]  
  			[$ while ($wv = shift @hhh, $wk = shift @hhh) $]
  				[+ "$wv = $wk" +]<br>
  			[$ endwhile $]
  		[$ endforeach $]
  	[$ endwhile $]
  	[- $i++ -]
  [$ until $i > $#a $]
  
  
  [- undef @a ; undef @b -]
  
  [$ if 1 $]
  
  x
  
   [$ foreach $a (@a) $]
     [$ foreach $b (@b) $]
     [$ endforeach $]
   [$ endforeach $]
  
  y
  
  [$ endif $]
  
  
  [- @bar = ('a', 'b', 'c'); -]
  [$ foreach $foo (@bar) $]
    [* next if ($foo eq 'c'); *]
    [+ $foo +]
  [$ endforeach $]
  
  [$ foreach $foo (@bar) $]
    [* next if ($foo eq 'c'); *]
    x = [+ $foo +] = z
  [$ endforeach $]
  
  [$ foreach $foo (@bar) $]
    [$if ($foo eq 'c') $][$ last $][$endif$]
    last = [+ $foo +] = z
  [$ endforeach $]
  
  [$ foreach $foo (@bar) $]
    [$if ($foo eq 'b') $][$ next $][$endif$]
    next = [+ $foo +] = z
  [$ endforeach $]
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/loopperl.htm
  
  Index: loopperl.htm
  ===================================================================
  
  <html>
  <head>
  <title>Test for Embperl - Loop Metacommand</title>
  </head>
  
  <body>
  
  [- $i = 0 -]
  [* while ($i &lt;= $#ffld) { *]
      [+ $ffld[$i] +] = [+ $fdat{$ffld[$i]} +]
      [- $j = 0 -]
      [* while ($j &lt;= $i) { *]
          [+ $j++ +] 
      [* } *]
      <BR>
      [- $i++ -]
  [* }  *]
  
  [- $i = 0 -]
  [* while($i &lt;= 2) {*]
      [+ $i++ +]
  [* } *]
  
  
  [- %h = ('A' => 1, 'B' => 2, 'C' => 3) ; -]
  [- @a = ('a', 'b', 'c', 'd') ; -]
  
  [* @hh = map { $_ => $h{$_} } sort keys %h ;   
     while ($v = shift @hh, $k = shift @hh) { *]
      [+ "$v = $k" +]<br>
  [* } *]
  
  [- $i = 0 -]
  [* while ($i <= $#a) { *]
      [+ "\@a[$i] = $a[$i]" +]<br>
  	[- $i++ -]
  [* } *]
  
  [- $i = 0 -]
  [* do { *]
      [+ "\@a[$i] = $a[$i]" +]<br>
  	[- $i++ -]
  [* } until ($i > $#a) ; *]
  
  [* foreach $v (@a) { *]
  	[+ $v +] <br>
  [* } *]
  
  [* foreach $v (1, 3, 5, 7, 9) { *]
  	[+ $v +] <br>
  [* } *]
  
  [* foreach $v (1..10) { *]
  	[+ $v +] <br>
  [* } *]
  
  [- $i = 0 -]
  [* do { *]
      [+ "\@a[$i] = $a[$i]" +]<br>
  	[* @hh = map { $_ => $h{$_} } sort keys %h ;   
  	   while (($v = shift @hh, $k = shift @hh)) { *]
  		[+ "$v = $k" +]<br>
  		[* foreach $fv (1, 3, 5, 7, 9) { *]
  			[+ $fv +] <br>
  		[* } *]
  		[* foreach $fv (1) { *]
  			[+ $fv +] <br>
  			[- @hhh = map { $_ => $h{$_} } sort keys %hhh ; -]   
  			[* while (($wv = shift @hhh, $wk = shift @hhh)) { *]
  				[+ "$wv = $wk" +]<br>
  			[* } *]
  		[* } *]
  	[* } *]
  	[- $i++ -]
  [* } until ($i > $#a) ; *]
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/mail.htm
  
  Index: mail.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - use Mail taglib</title>
  </head>
  
  <body>
  
  
    [$ syntax + Mail $]
  
    <mail:send to="richter@ecos.de" subject="Testmail" mailhost="mail.i.ecos.de">
      Hi,
      this is a test for a new mail tag
      it is send at [+ scalar(localtime) +]
      from Embperl's Mail taglib.
    </mail:send>
  
    [+ "tagend" +]<br>
  
    $? = [+ $? +]<br>
  
    [$ if $? $]
  		<h2>Sorry, there was an error, your mail couldn't be send</h2>
    [$else$]
  		<h2>Your mail was successfully delivered</h2>
    [$endif$]
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/html2/mailformto.htm
  
  Index: mailformto.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - use MailFormTo</title>
  </head>
  
  <body>
  
  [-
  
  $MailTo = 'richter@ecos.de' ;
  
  $fdat{email} = 'test_mailformto' ;
  $fdat{msg}   = 'Embperl tests' ;
  
  @ffld = keys %fdat ;
  
  -]
  
  
  [- MailFormTo ($MailTo,'Embperl TEST Formdata','email') -]
  
  $? = [+ $? +]<br>
  
  [$ if $? $]
  	    <h2>Sorry, there was an error, your mail couldn't be send</h2>
  [$else$]
  	    <h2>Your mail was successfully delivered</h2>
  [$endif$]
  
  
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/html2/mdatsess.htm
  
  Index: mdatsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Session Data (%mdat)</title>
  </head>
  
  
  <body>
  
          [- if ($fdat{cnt} == 0)
  			{
  			$Apache::Session::Win32::sessions = {} if ($HTML::Embperl::TEST::loop++) ;
  			$mdat{cnt} = 0 ;
  			}
  		-]
  
          $mdat{cnt} = [+ $mdat{cnt}  +] <br>
          $fdat{cnt} = [+ $fdat{cnt}  +] <br>
  
          equal ? [+ ($mdat{cnt} == $fdat{cnt})?'yes':'no'  +] <br>
  
  		[- @ks = grep (!/^_/, sort (keys %mdat)) ; $num = keys (%mdat) - $#ks - 1 ; -]
  		[+ $num > 0?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
          [- $mdat{cnt}++  -]
  
  		[#
  		tied (%mdat) [+ $m = tied (%mdat) +]  <br>
  		ref          [+ ref ($m) +]  <br>
  		content      [+ do { my @tmp = map { "$_ = $mdat{$_}" } keys (%mdat) ; join (', ', @tmp) } +]  <br>
  		tied (%udat) [+ $u = tied (%udat) +]  <br>
  		ref          [+ ref ($u) +]  <br>
  		content      [+ do { my @tmp = map { "$_ = $udat{$_}" } keys (%udat) ; join (', ', @tmp) } +]  <br>
  		#]
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/mix.htm
  
  Index: mix.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Tests - Mix top level perl, with subroutines and metacommands</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  [* $a = 'global value' ; *] <BR>
  
  global value: $a = [+ $a || ''  +] <BR>
  
  [* { local $a ; *]
  
  $a = [+ $a || ''  +] <BR>
  
  [* $a = 'lokal value' ; *] <BR>
  
  lokal value: $a = [+ $a || ''  +] <BR>
  
  [* } *]
  
  again global value: $a = [+ $a || ''  +] <BR>
  
  [* @x = (1, 4 ,8, 17) ; *]
  
  [- $i = 0 -]
  [$ while $i &lt;= $#x $]
      [+ $i +] = [+ $x[$i] +] <br>
      [* $j = 0 ; *]
      [$ while $j &lt;= $i $]
          [+ $j++ +] 
      [$ endwhile $]
      <BR>
      [* $i++ ; *]
  [$ endwhile $]
  
  
  [-
     undef @b ;
  
     $b[0][0] = 'b1/1' ;
     $b[1][0] = 'b2/1' ;
     $b[1][1] = 'b2/2' ;
     $b[2][0] = 'b3/1' ;
     $b[2][1] = 'b3/2' ;
     $b[2][2] = 'b3/3' ;
  
  -]
  
  <table>
      <tr>
          <td>[* $i = $row ; *][+ $i +]</td><td>[+ $b[$row][$col] +] </td>
      </tr> 
  </table>
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/nesting.htm
  
  Index: nesting.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Nesting of html and meta commands</title>
  </head>
  
  
  <body>
  
  [-
  $fdat{aa} = 11 ;
  $fdat{bb} = 22 ;
  $fdat{cc} = 33 ;
  $fdat{dd} = 44 ;
  
  $t = 1 ;
  $f = 0 ;
  
  -]
  [- @ks = sort keys %fdat -]
  
  <table>
  	<tr>
  		<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  	</tr>
  </table>
  
  
  [$if $t $]
  <table>
  	<tr>
  [$endif$]
  		<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  [$if $t $]
  	</tr>
  </table>
  [$endif$]
  
  
  [$if $f $]
  <table>
  	<tr>
  [$endif$]
  		<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  [$if $f $]
  	</tr>
  </table>
  [$endif$]
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/nooutput.htm
  
  Index: nooutput.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Some Perl, but no output</title>
  </head>
  
  
  <body>
  
  1 [- $a = 5 -]
  
  2 [- $x = localtime -]
  
  3 [- $b = $x . $a -]
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/object.htm
  
  Index: object.htm
  ===================================================================
  <html>
  <head>
  <title>Some tests for Embperl</title>
  </head>
  
  
  <body>
  
  [-
  
  package test::object ;
  
  sub id
  	{
  	my $self = shift ;
  	
  	return "id $self->{n}" ;
  	}
  
  sub name
  	{
  	my $self = shift ;
  	
  	return "name $self->{n}" ;
  	}
  
  sub new
  	{
  	my $class = shift ;
  	my $n     = shift ;
  	my $self  = {n=>$n} ;
  	bless $self, $class ;
  	return $self ;
  	}
  
  -]
  
  
  [-
  test::object->new (0) ;
  -]
  
  [-
  $obj[0] = 1 ;
  -]
  
  [-
  $obj[0] = test::object->new (0) ;
  
  
  
  $obj[1] = test::object->new (1) ;
  $obj[2] = test::object->new (2) ;
  $obj[3] = test::object->new (3) ;
  -]
  
  <TABLE BORDER=0 WIDTH=90%>
  	<TR>
  		[- $o = $obj[$row] -]
  		<TD>
  			<A HREF="index.html?id=[+ $o->id+]">[+$o->name+]</A>
  		</TD>
  	</TR>
  </TABLE>
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/plain.htm
  
  Index: plain.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <!-- Here is a comment -->
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a = [+ $a || '' +] <BR>
  $b = [+ $b || '' +] <BR>
  $c = [+ $c || '' +] <BR>
  $d = [+ $d || '' +] <BR>
  $e = [+ $e || '' +] <BR>
  
  ARRAY @d = [+ do { my @tmp1 = @d; "@tmp1" } +] num = [+ @d +] <BR>
  ARRAY @x = [+ do { my @tmp1 = %x; "@tmp1" } +] num = [+ @x +]  <BR>
  HASH  %a = [+ do { my @tmp1 = %a; my @tmp11 = sort @tmp1 ; "@tmp11" } +]  num = [+ keys %a +] <BR>
  HASH  %y = [+ do { my @tmp2 = %y; my @tmp21 = sort @tmp2 ; "@tmp21" } +]  num = [+ keys %y +] <BR>
  
  
  First of all assign a value:
  [- $a = '(this is the value in $a)' -] <BR>
  [- @d = (1, 2, 3) ; @x = (9, 8, 7) -]
  [- %a = (1 => 'a', 2 => 'b', 3 => 'c') ; %y = (9 => 'x', 8 => 'y', 7 => 'z') -]
  
  
  Now we have some 'Umlaute':
  
  
  [- $b = "$a &auml;&ouml;&uuml;" -]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  ARRAY @d = [+ "@d" +] num = [+ @d +] <BR>
  ARRAY @x = [+ "@x" +] num = [+ @x +]  <BR>
  HASH  %a = [+ do { my @tmp1 = %a; my @tmp11 = sort @tmp1 ; "@tmp11" } +]  num = [+ keys %a +] <BR>
  HASH  %y = [+ do { my @tmp2 = %y; my @tmp21 = sort @tmp2 ; "@tmp21" } +]  num = [+ keys %y +] <BR>
  
  And now a and b together: [+ "$a$b" +]<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  [+ $c = <BR> 6 + 17 <font size="3"> * 3 </font> &nbsp;&nbsp; + 0 +]
  [+ "SELECT * <br> FROM a ORDER BY b USING <; Hi There>" +]
  
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  [+ "SELECT * FROM a ORDER BY b USING <; Hi There>" +]
  
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  [- $e = 2 # here is a perl comment -]
  [+ $d = $e &lt; 6 +]
  
  Now they should have a value
  
  $a = [+ $a +] <BR>
  $b = [+ $b +] <BR>
  $c = [+ $c +] <BR>
  $d = [+ $d +] <BR>
  $e = [+ $e +] <BR>
  
  Input Separator = [+ ord($/) +]<br>
  
  [-=pod
  
  blabla
  
  =cut-]
  
  [-
  =pod
  
  blabla
  
  =cut
  -]
  
  
  
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/plainblock.htm
  
  Index: plainblock.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  All values should be undefined:
  
  $a = [+ $a || '' +] <BR>
  $b = [+ $b || '' +] <BR>
  $c = [+ $c || '' +] <BR>
  $d = [+ $d || '' +] <BR>
  $e = [+ $e || '' +] <BR>
  
  
  First of all assign a value:
  [* $a = '(this is the value in $a)' ; *] <BR>
  
  Now we have some 'Umlaute':
  
  
  [* $b = "$a &auml;&ouml;&uuml;" ; *]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  And now a and b together: [+ "$a$b" +]<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  [+ $c = <BR> 6 + 17 <font size="3"> * 3 </font> &nbsp;&nbsp; + 0 +]
  [+ "SELECT * <br> FROM a ORDER BY b USING <; Hi There>" +]
  
  Here we have something which looks like a HTML tag, but does not start with<br>
  a character, Embperl does not change them!<BR>
  
  [+ "SELECT * FROM a ORDER BY b USING <; Hi There>" +]
  
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  [* $e = 2 ; *]
  [+ $d = $e &lt; 6 +]
  
  Now they should have a value
  
  $a = [+ $a +] <BR>
  $b = [+ $b +] <BR>
  $c = [+ $c +] <BR>
  $d = [+ $d +] <BR>
  $e = [+ $e +] <BR>
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/post.htm
  
  Index: post.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Show posted data</title>
  </head>
  
  
  <body>
  
  [- @ks = sort keys %fdat -]
  
  <table>
  	<tr>
  		<td>[+ $ks[$row] +]</td><td>Length=[+ length ($fdat{$ks[$row] || ''}) +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  	</tr>
  </table>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/pure.htm
  
  Index: pure.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some tests for Embperl</title>
  </head>
  
  <body>
  
  Here it starts with some HTML Text<P>
  
  This pure HTML Text. Nothing todo for Embperl,<BR>
  
  just pass it thru...
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/recursexec.htm
  
  Index: recursexec.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Recursion via Execute</title>
  </head>
  
  <body>
  <h1>Tests for Embperl - Recursion via Execute</h1>
  
  [* local $deep ; *]
  
  [- $deep = $param[0] -]
  
  [$if $deep++ < 4 $]
      Call Execute; deep = [+ $deep +]<br>
      [- Execute ('recursexec.htm', $deep) -]
      End Execute; deep = [+ $deep +]<br>
  [$else$]
      End Recursion; deep = [+ $deep +]<br>
  [$endif$]
  
  [$if $deep > 5 $]
  	Endless Recursion; deep = [+ $deep +]<br> 
  [$endif$]
      
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/reqrec.htm
  
  Index: reqrec.htm
  ===================================================================
  
  <html>
  <head>
  <title>Test for $req_rec in Embperl</title>
  </head>
  
  $conf = [+ defined ($conf)?$conf:'<undef>' +] <br> 
  $_[0] = [+ defined ($_[0])?$_[0]:'<undef>' +] <br> 
  $_[1] = [+ defined ($_[1])?$_[1]:'<undef>' +] <br> 
  
  $rec_rec  = [+ $req_rec +]<br>
  $$rec_rec = [+ $$req_rec +]<br>
  
  [- $ar = Apache->request -]
  
  Apache->request    = [+ $ar +]<br>
  ${Apache->request} = [+ $$ar +]<br>
  
  ${Apache->request} = $$req_rec ?  [+ ($$ar == $$req_rec)?'yes':'no' +] <br>
  
  [+ $req_rec -> filename +]
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/setbadsess.htm
  
  Index: setbadsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data (with bad cookie)</title>
  </head>
  
  <body>
  	[- 
  	while (($k, $v) = each (%fdat))
  		{
  		$udat{$k} = $fdat{$k} ;
  		}
  	-]
  	[+ $udat{_session_id} +]
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/setsess.htm
  
  Index: setsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data</title>
  </head>
  
  
  <body>
  
  
  	fdat:<br>
  	[- @ks = sort keys %fdat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	udat:<br> 
  	[- $id = tied (%udat) -> getid -]
  	[- @ks = grep (!/^_/, sort (keys %udat)) ; $num = keys (%udat) - @ks - ($id?0:1) -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $udat{$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	[+ $id?"ok (num=$num)":"Not a session hash (num=$num)" +]<p>
  
  	[- 
  	while (($k, $v) = each (%fdat))
  		{
  		$udat{$k} = $fdat{$k} ;
  		}
  	-]
  
  
  
  	[- $s = $Apache::Session::MemoryStore::store || $Apache::Session::Win32::sessions  -]
  
  	[- @ks = sort keys %$s -]
  
  	sessions:
  	<table>
  		<tr>
  			<td>[+ $ks[$row] +]</td><td>[+ $s -> {$ks[$row] || ''} +]</td>
  		</tr>
  	</table>
  
  	<a href="cont.htm">continue</a>
  	<a href="cont.htm?q=1">continue</a>
  	<a href="cont.htm?q=1&b=2">continue</a>
  	<form action="cont.htm">
  	</form>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/setunknownsess.htm
  
  Index: setunknownsess.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Set Session Data (unknown cookie)</title>
  </head>
  
  <body>
  	[- 
  	while (($k, $v) = each (%fdat))
  		{
  		$udat{$k} = $fdat{$k} ;
  		}
  	-]
  	[+ $udat{_session_id} +]
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/spaces.htm
  
  Index: spaces.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - optKeepSpaces</title>
  </head>
  
  
  <body>
  
  [+ $optKeepSpaces +]
  [- $optKeepSpaces = 1 -]
  [+ $optKeepSpaces  +]
  <pre>
  A:     [+ 2+2 +]
  B:     [+ 3+3 +]
         [+ 4+4 +]
  C:     [+ 5+5 +]
  D:     [+ 6+6 +]
  </pre>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/sub.htm
  
  Index: sub.htm
  ===================================================================
  
  <html>
  <head>
  <title>Define a SUbroutine within Embperl</title>
  </head>
  
  <body>
  
  
  Here we define a subroutine<P>
  
  NOTE: It must be defined within [[! ... !] to avoid redefinition!
  
  [!
  
  # Here we add a comment
  
  sub Hello
  
  	{
      # not much to do ...
  	return 'Hello world' ;
  	}
  	
  !]
  
  Now we call the subroutine: [+ Hello () +] <P>
  
  $XXXXXX::var = [+ defined ($XXXXXX::var)?$XXXXXX::var:'<undef>' +] <br>
  
  Setup some variable outside our namespace, which should not be cleaned up<br>
  
  [- $XXXXXX::var = 1 -]
  
  $XXXXXX::var = [+ defined ($XXXXXX::var)?$XXXXXX::var:'<undef>' +] <br>
  
  
  [! sub CLEANUP
  	{
  	print LOG "This will be called before variable cleanup\n" ;
  	undef $XXXXXX::var ;
  	}
  !]
  
   
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/subexec.htm
  
  Index: subexec.htm
  ===================================================================
  
  [###### first sub #####]
  [$sub tfirst$]
  *1*
  *1*<h2>1.) Here goes some normal html text <h2>
  *1*
  [$endsub$]
  
  [###### second sub #####]
  [$sub tsecond $]
  *2*
  *2*2.) Here comes some perl:
  *2*
  *2*[- $foo = 'Hello world' -]
  *2*
  *2*foo = [+ $foo +]<br>
  *2*testdata = [+ $testdata +]<br>
  *2*
  [$endsub$]
  
  
  
  1.1                  embperl/test/html2/subimp.htm
  
  Index: subimp.htm
  ===================================================================
  
  [###### first sub #####]
  [$sub tfirst$]
  *1*
  *1*<h2>1.) Here goes some normal html text <h2>
  *1*
  [$endsub$]
  [###### second sub #####]
  [$sub tsecond $]
  *2*
  *2*2.) Here comes some perl:
  *2*
  *2*[- $foo = 'Hello world' -]
  *2*
  *2*foo = [+ $foo +]<br>
  *2*testdata = [+ $testdata +]<br>
  *2*
  [$endsub$]
  [###### table header #####]
  [$sub tabheader $]
  
  <txable>
  <txr><th>1</th><th>2></th></txr>
  <txr>
  
  [$endsub$]
  [###### table cell #####]
  [$sub tabcell $]
  *4*
  *4*<td>[+ $_[0] -> [$row][$col] +]<td>
  *4*
  [$endsub$]
  [###### table footer #####]
  [$sub tabfooter $]
  
  </txr>
  </txable>
  
  [$endsub$]
  [###### req_rec #####]
  [$sub trr$]
  *6*
  *6*<h2>$req_rec = [+ $req_rec +] $$req_rec = [+ $$req_rec +]<h2>
  *6*
  [$endsub$]
  
  
  
  1.1                  embperl/test/html2/subtab.htm
  
  Index: subtab.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Test - Subs and Tables</title>
  </head>
  
  <body>
  
  
  [###############################################################################################]
  
  [$ sub Kurslink $]<a href="epl_ober.htm?id=[+ $rec->{id} +]&bereich_id=[+ $fdat{bereich_id} +]" onMouseOut='hidePopup()'>[$endsub$]
  
  [###############################################################################################]
  
  [$ sub cell $]
  		[$if !$rec -> {id} $]
          
  			<td bgcolor="[+ $bgcol +]" align=center>[- Neulink -]<img border=0 src="/images/leer.gif"><img border=0 src="/images/leer.gif"><img border=0 src="/images/leer.gif"></td>
          
  		[$ elsif $fdat{bereich_id} eq 'f' || !$kurs -> {-gebucht} || $xkurs $]
  		
  			[$if $xkurs $]
  				<td bgcolor="[+ $bgcol +]" align="[+ $fdat{bereich_id} eq 'f'?'center':'left' +]">&nbsp;[- Kurslink -]<img  border=0 src="[+ $mainrec?"/images/leer2_gelb.gif":($xkurs -> {-gebucht}?"/images/leer_rot.gif":"/images/leer_gelb.gif") +]"></td>
              [$else$]
  				<td bgcolor="[+ $bgcol +]" align="[+ $fdat{bereich_id} eq 'f'?'center':'left' +]">&nbsp;[- Kurslink -]<img  border=0 src="[+ $kurs -> {-gebucht}?"/images/belegt_rot$gifext.gif":"/images/reserv_gelb$gifext.gif" +]"></td>
  			[$endif$]
  		
  		[$ elsif $fdat{bereich_id} eq 'b' $]
  		
              [- $n = 2 -]
  			<td bgcolor="[+ $bgcol +]" align=left> <table> <tr>
  				<td>[- Kurslink -]<img  border=0 src="[+ $kurs -> {-gebucht}?"/images/belegt_rot$gifext.gif":"/images/reserv_gelb$gifext.gif" +]"></td>
                  [$ while ($n--) $]
                      [-  
                      $banzahl = 1 ;
                      $sanzahl = 5 ;
  					-]
                      [$ if $banzahl > 0  $]
  						<td bgcolor="[+ $subbgcol = $sanzahl == 0?'#ff0000':($sanzahl < $banzahl?'#ffff00':'#00ff00') +]">[- Kurslink (($sanzahl || 0) . "/$banzahl") -]<small><strong><font face="[+ $fontface +]" color="[+ $xkurs?$subbgcol:($subbgcol eq '#ff0000'?'#ffffff':'#000000') +]">&nbsp;[+ $brec -> {bereichkurz} +]&nbsp;</td>
  					[$endif$]
                  [$endwhile$]
  			</tr> </table> </td>
          
  		[$ endif $]
  [$endsub $]
  
  [###############################################################################################]
  
  [-
  
  $rec  = { id => 1 } ;
  $kurs = { -gebucht => 1 } ;
  $brec = { id => 2, bereichkurz => 'bu' } ;
  
  $fdat{bereich_id} = 'b' ;
  $bgcol = '#1' ;
  $gifext = 'xxx' ;
  $l = 2 ;
  
  -]
  
  <table>
  	<tr>
  
      [$ while ($l-- > 0) $]
          [- cell -]
      [$endwhile$]
  
      </tr>
  </table>    			
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/subtextarea.htm
  
  Index: subtextarea.htm
  ===================================================================
  <html>
  <head>
  <title>Embperl Tests</title>
  </head>
  <body bgcolor="#ffffff">
  
      [$ foreach $k (@ffld) $]
          [+ $k +] = [+ $fdat{$k} +]<br>
      [$endforeach$]
  
       [$ sub EntryRow $]
           <input name="[+ $_[1] +]" type=text size=40 maxlength=255><br>
       [$ endsub $]
  
      <form method=post action="ta3.htm">
           <textarea name="summary" rows=4 cols=45></textarea>
           <br>
  
           [- EntryRow('Title*', 'title') -]
           [- EntryRow('Pub. Date*', 'pubdate', '(m/d/y, "today"...)') -]
  
           <br>
           <textarea name="content" rows=15 cols=45></textarea>
  
           <input name="more">
  
          <input type="submit">
      </form>
  
  </body>
  
  
  1.1                  embperl/test/html2/syntax.htm
  
  Index: syntax.htm
  ===================================================================
  <html>
  
  <head>
  <title>Embperl Tests - Switch syntax</title>
  </head>
  
  <body>
  
  
  
  --- syntax Default ---
  
  	[+ $a = 'embperl 1' +]
  
  	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  --- syntax SSI ---
  
  [$ syntax SSI $]
  
  	[+ $a = 'embperl 1' +]
  
  	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  --- syntax Embperl ---
  
  <!--#syntax type="Embperl" -->
  
  	[+ $a = 'embperl 1' +]
  
  	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  --- syntax Embperl SSI ---
  
  [$ syntax Embperl SSI $]
  
  	[+ $a = 'embperl 1' +]
  
  	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  --- syntax - SSI = Embperl ---
  
  [$ syntax - SSI $]
  
  	[+ $a = 'embperl 1' +]
  
  	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  --- syntax + SSI =  Embperl SSI ---
  
  [$ syntax + SSI $]
  
  	[+ $a = 'embperl 1' +]
  
  	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  --- syntax - Embperl = SSI ---
  
  [$ syntax - Embperl $]
  
  	[+ $a = 'embperl 1' +]
  
  	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  --- syntax Text ---
  
  <!--#syntax type="Text" -->
  
  	[+ $a = 'embperl 1' +]
  
  	<!--#set var="a" value="ssi 1" -->
  	<!--#echo var="a" -->
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/table.htm
  
  Index: table.htm
  ===================================================================
  <html>
  <head>
  <title>HTML table tag in Embperl</title>
  </head>
  
  <body>
  
  
  <p> $tabmode = default <p>
  
  <hr><p>Display an two dimensional array with one, two and three columns !<BR>
  Please take a look at the source in your browser to see the difference<BR>
  
  [-
     undef @a ;
     undef @b ;
  
     $a[0][0] = 'a1/1' ;
     $a[1][0] = 'a2/1' ;
     $a[1][1] = 'a2/2' ;
     $a[2][0] = 'a3/1' ;
     $a[2][1] = 'a3/2' ;
     $a[2][2] = 'a3/3' ;
  
     $b[0][0] = 'b1/1' ;
     $b[1][0] = 'b2/1' ;
     $b[1][1] = 'b2/2' ;
     $b[2][0] = 'b3/1' ;
     $b[2][1] = 'b3/2' ;
     $b[2][2] = 'b3/3' ;
  
     $maxcol=99 ;
  -]
     $a[0][[0] = '1/1' ;<BR>
     $a[1][[0] = '2/1' ;<BR>
     $a[1][[1] = '2/2' ;<BR>
     $a[2][[0] = '3/1' ;<BR>
     $a[2][[1] = '3/2' ;<BR>
     $a[2][[2] = '3/3' ;<BR>
  
  <P>$tabmode = default <P>
  
  <table>
      <tr>
          <td>[+ $a[$row][0] +]</td>
      </tr> 
  </table>
  <table>
      <tr>
          <td>[+ $a[2][$col] +]</td>
      </tr> 
  </table>
  
  
  <table>
      <tr>
          <td>before[+ $a[$row][0] +]</td>
      </tr> 
  </table>
  <table>
      <tr>
          <td>before[+ $a[2][$col] +]</td>
      </tr> 
  </table>
  
  <table>
      <tr>
          <td>[+ $a[$row][0] +]after</td>
      </tr> 
  </table>
  <table>
      <tr>
          <td>[+ $a[2][$col] +]after</td>
      </tr> 
  </table>
  <table>
      <tr>
          <td>before[+ $a[$row][0] +]after</td>
      </tr> 
  </table>
  <table>
      <tr>
          <td>before[+ $a[2][$col] +]after</td>
      </tr> 
  </table>
  
  <table>
      <tr>
          <td>[+ $c[$row] +]</td>
      </tr> 
  </table>
  <table>
      <tr>
          <td>[+ $c[$col] +]</td>
      </tr> 
  </table>
  
  
  <table border="1" width="100%">
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  
  
  <table border="4">
      <tr>
          <td>
              <table>
      		<tr>
                      <td>[+ $b[$row][$col] +] </td>
      		</tr> 
  	    </table>
  
          [+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  <table border="5" width="100%">
      <tr>
          <td>[+ $b[2][$col] +]</td>
      </tr> 
      <tr>
          <td>[+ $a[2][$col] +] </td>
      </tr> 
  </table>
  
  <table border="6" width="100%">
      <tr>
          <td>[+ $a[$row+1][0] +]</td>
      </tr> 
      <tr>
          <td>[+ $a[$row][0] +] </td>
      </tr> 
  </table>
  
  <table border="6.1" width="100%">
      <tr>
          <td>[+ $a[$rows+1][0] +]</td>
      </tr> 
      <tr>
          <td>[+ $a[$rows][0] +] </td>
      </tr> 
      <tr>
          <td>[+ $rows +] </td>
      </tr> 
  </table>
  
  <table border="7">
      <tr>
          <TD BGCOLOR="[+ ($row & 1)?(($col&1)?'#7CFC00':'#A4A4B4'):(($col&1)?'#FFFF00':'#F4A460') +]">[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  
  [-    $a[0][1] = 'a1/2' ; -]
  
  <table border="8">
      <tr>
          <TD BGCOLOR="#F4A460">[+ $a[$row*2][$col*2] +] </td>
          <TD BGCOLOR="#FFFF00">[+ $a[$row*2][$col*2+1] +] </td>
      </tr> 
      <tr>
          <TD BGCOLOR="#A4A4B4">[+ $a[$row*2+1][$col*2] +] </td>
          <TD BGCOLOR="#7CFC00">[+ $a[$row*2+1][$col*2+1] +] </td>
      </tr> 
  </table>
  
  [-     $a[0][1] = undef ; -]
  
  
  [-
  
  undef @regs ;
  undef @kats ;
  
  $regs[0]{Id} = 'Pfalz' ;
  $regs[1]{Id} = 'Rheinhessen' ;
  
  $kats[0]{Id} = 'Kultur' ;
  $kats[1]{Id} = 'Sport' ;
  
  -]
      <table border="9" width="100%">
          <tr>
              <td><table border="10">
                  <tr>
                      <td valign="top">
                      <a href="inhalt.htm?Region=[+$regs[$row]{Id}+]">[+$regs[$row]{Id}+]</a></td>
                  </tr>
              </table>
              </td>
              <td><table border="11">
                  <tr>
                      <td valign="top"><p align="left">
                      <a href="inhalt.htm?Kategorie=[+$kats[$row]{Id}+]">[+$kats[$row]{Id}+]</a></p>
                      </td>
                  </tr>
              </table>
              </td>
          </tr>
      </table>
  
  [-
  $kats[2]{Id} = 'Veranstaltungen' ;
  $kats[3]{Id} = '' ;
  
  -]
  
      <table border="12" width="100%">
          <tr>
              <td><table border="13">
                  <tr>
                      <td valign="top">
                      [- print LOG "row= $row  regs=$regs[0]{Id}\n" ; 1 ; -]
  					[- print LOG "1row= $row  regs=$regs[0]{Id}\n" ; $cmp = $regs[0]->{Id} ;  print LOG "2row= $row  regs=$regs[0]{Id}\n" ; 1 ; -]
                      [- while (($k, $v) = each (%{$regs[0]})) { print LOG "$v=$k;\n" ; } -]
  					[$if ($cmp || '') ne '' $] 
                      <a href="inhalt.htm?Region=[+ do { print LOG "row= $row  regs=$regs[0]{Id}\n" ; $regs[$row]{Id} } +]">[+$regs[$row]{Id}+]</a></td>
                      [$endif$]
                  </tr>
              </table>
              </td>
              <td><table border="14">
                  <tr>
                      <td valign="top"><p align="left">
                      [- print LOG "row= $row  regs=$kats[0]{Id}\n" ; 1 ; -]
                      [- $cmp = $kats[$row]{Id} -]
                      [$if ($cmp || '') ne '' $] 
                      <a href="inhalt.htm?Kategorie=[+$kats[$row]{Id}+]">[+$kats[$row]{Id}+]</a></p>
  		    [$endif$]
                      </td>
                  </tr>
              </table>
              </td>
          </tr>
      </table>
  
  [- 
  # build tight loop table with array data, multidimensional 5x6
  @array = sort ("Hello", "World", "2000", "Hello", "World", "2000");
  @multi = (\@array, \@array, \@array, \@array, \@array);
  -]
  <table>
     <tr bgcolor="[+ $row % 2?'gray':'white' +]">
       <td align="center"><font size="+1">[+ $multi[$row][$col] +]</font></td>
     </tr>
  </table>
  
  
  <table border="14"><tr><td>[+ $a[$row][0] +]</td></tr></table>
  <table border="15"><tr><td>[+ $a[2][$col] +]</td></tr></table>
  <table border="16"><tr><td>[+ $a[$row][$col] +]</td></tr> </table>
  
  <table border="17">
    <tr>
  	<td>[+ $a[$icon_height=$row][0] +]</td>
  	<td>
  		[- $icon_width = 5 ; -]
  
  		<IMG 
  		[$ if (($server_type eq "iii")) $]
  		SRC="/i/www.[+ $server_type +]/[+ $badge || "iiilogo_narrow_if" +].gif" WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0"
  		[$ else $]
  		SRC="/icons/[+ $badge || "iiilogo_narrow_else" +].gif" WIDTH="[+ $icon_width +]" HEIGHT="[+ $icon_height +]" BORDER="0" 
  		[$ endif $]
  		[$ if ($badge eq "iit") $]
  			ALT="iit logo"
  		[$ else $]
  			ALT="iii logo"
  		[$ endif $]>
  	</td>
    </tr>
  </table>
  
  <table>
      <tr>
          <td>[+ $a[$row][0] +]</td>
      </tr> 
  </table>
  <table>
      <tr>
          <td>[+ $a[2][$col] +]</td>
      </tr> 
  </table>
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/tabmode.htm
  
  Index: tabmode.htm
  ===================================================================
  
  
  [-
     undef @a ;
     undef @b ;
  
     $a[0][0] = 'a1/1' ;
     $a[1][0] = 'a2/1' ;
     $a[1][1] = 'a2/2' ;
     $a[2][0] = 'a3/1' ;
     $a[2][1] = 'a3/2' ;
     $a[2][2] = 'a3/3' ;
  
     $b[0][0] = 'b1/1' ;
     $b[1][0] = 'b2/1' ;
     $b[1][1] = 'b2/2' ;
     $b[2][0] = 'b3/1' ;
     $b[2][1] = 'b3/2' ;
     $b[2][2] = 'b3/3' ;
  
     $maxcol=99 ;
  -]
     $a[0][[0] = '1/1' ;<BR>
     $a[1][[0] = '2/1' ;<BR>
     $a[1][[1] = '2/2' ;<BR>
     $a[2][[0] = '3/1' ;<BR>
     $a[2][[1] = '3/2' ;<BR>
     $a[2][[2] = '3/3' ;<BR>
  
  <P>$tabmode = default <P>
  
  
  <table>
      <tr>
          <td>[+ $a[$row][0] +]</td>
      </tr> 
  </table>
  
  <table border="2" width="100%">
      <tr>
          <th>1</th>
          <th>2</th>
          <th>3</th>
      </tr> 
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  <table border="3" width="100%">
      <tr>
          <th>[+ $b[2][$col] +]</th>
      </tr> 
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  
  
  <hr><P>$tabmode=3 + 48 ; $maxcol = 4; $maxrow = 4 <P>
  [- $tabmode=3 + 48 ; $maxcol = 4; $maxrow = 4 -]
  
  <table>
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  <hr><p> $tabmode=1 + 32 ; <p>
  [- $tabmode=1 + 32 ; -]
  
  <table>
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  optDisableTableScan is now: [+ $optDisableTableScan +] <BR>
  optDisableTableScan is set now to: [+ $optDisableTableScan = 1 +] <BR>
  optDisableTableScan is now: [+ $optDisableTableScan +] <BR>
  
  <table border="2" width="100%">
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  optDisableTableScan is now: [+ $optDisableTableScan +] <BR>
  optDisableTableScan is set now to: [+ $optDisableTableScan = 0 +] <BR>
  optDisableTableScan is now: [+ $optDisableTableScan +] <BR>
  
  <table border="2" width="100%">
      <tr>
          <td>[+ $a[$row][$col] +] </td>
      </tr> 
  </table>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/tagintag.htm
  
  Index: tagintag.htm
  ===================================================================
  
  
  [$syntax + Test $]
  
  <testname>
  
  <input name="<testname>">
  
  <img src="<testname>">
  
  <img width="<testname>">
  
  <img <testname>>
  
  <testname type="x">
  
  <input name="<testname type="x">">
  
  <img src="<testname type="x">">
  
  <img width="<testname type="x">">
  
  <img <testname type="x">>
  
  
  
  
  1.1                  embperl/test/html2/tagscan.htm
  
  Index: tagscan.htm
  ===================================================================
  <html bgcolor="[+ 'blue' +]">
  <head bgcolor="[+ 'blue' +]">
  <title>Some tests for Embperl</title>
  </head bgcolor="[+ 'blue' +]">
  
  [- $a = ' and more' -]
  
  <body  bgcolor="[+ 'blue' +]">
  <table  bgcolor="[+ 'blue'. $a +]">
  <tr  bgcolor="[+ 'blue' +]">
  <td bgcolor="[+ 'blue' +]">
  </td bgcolor="[+ 'blue' +]">
  </tr bgcolor="[+ 'blue' +]">
  </table bgcolor="[+ 'blue' +]">
  
  <dir bgcolor="[+ 'blue' +]">
  </dir bgcolor="[+ 'blue' +]">
  
  <dl bgcolor="[+ 'blue' +]">
  </dl bgcolor="[+ 'blue' +]">
  
  <menu bgcolor="[+ 'blue' +]">
  </menu bgcolor="[+ 'blue' +]">
  
  <ol bgcolor="[+ 'blue' +]">
  </ol bgcolor="[+ 'blue' +]">
  
  <select bgcolor="[+ 'blue' +]">
  </select bgcolor="[+ 'blue' +]">
  
  <textarea bgcolor="[+ 'blue' +]">
  Hallo
  </textarea bgcolor="[+ 'blue' +]">
  
  <ul bgcolor="[+ 'blue' +]">
  </ul bgcolor="[+ 'blue' +]">
  
  <input bgcolor="[+ 'blue' +]">
  <input bgcolor="[+ 'var->blue' +]">
  <input bgcolor="[- 'var->blue' -]">
  
  Here it starts with some HTML Text<P bgcolor="[+ 'blue' +]">
  
  [- $aaa = 1 -]
  <body  [$if $aaa $] bgcolor="[+ 'blue' +]" [$endif$]>
  <body  [$if !$aaa $] bgcolor="[+ 'blue' +]" [$endif$]>
  
  <body [$if $aaa $]bgcolor="[+ 'blue' +]"[$endif$]>
  <body [$if !$aaa $]bgcolor="[+ 'blue' +]"[$endif$]>
  
  
  [- $fdat{ VERSION } = 3 -]
  <IMG SRC="img.gif" [$ if $fdat{ VERSION } >= 3 $]
  		WIDTH=35 [$ endif $]>
  
  <IMG SRC="img.gif" [$ if $fdat{ VERSION } >= 4 $]
  		WIDTH=35 [$ endif $]>
  
  <A HREF="" [$ if $fdat{ VERSION } >= 3 $]
  		foo="" [$ endif $]>
  
  <A HREF="" [$ if $fdat{ VERSION } >= 4 $]
  		foo="" [$ endif $]>
  
  [- @ks = sort keys %idat -]
  
  <table>
  	<tr>
  		<td>[+ $ks[$row] +]</td><td>[+ $fdat{$ks[$row] || ''} +]</td>
  	</tr>
  </table>
  
  [- $stuff = ("X" x 79 . "\n") x 26; -]
  Testing ... length of STUFF=[+ length($stuff) +]<p>
  <input type="hidden" name="STUFF" value="[+ $stuff +]">
  
  [- $stuff = "X" x 2046; -]
  Testing ... length of STUFF=[+ length($stuff) +]<p>
  <input type="hidden" name="STUFF" value="[+ $stuff +]">
  
  [- $stuff = "X" x 2047; -]
  Testing ... length of STUFF=[+ length($stuff) +]<p>
  <input type="hidden" name="STUFF" value="[+ $stuff +]">
  
  [- $stuff = "X" x 2048; -]
  Testing ... length of STUFF=[+ length($stuff) +]<p>
  <input type="hidden" name="STUFF" value="[+ $stuff +]">
  
  [- $stuff = "X" x 2049; -]
  Testing ... length of STUFF=[+ length($stuff) +]<p>
  <input type="hidden" name="STUFF" value="[+ $stuff +]">
  
  [- $stuff = "X" x 2050; -]
  Testing ... length of STUFF=[+ length($stuff) +]<p>
  <input type="hidden" name="STUFF" value="[+ $stuff +]">
  
  
  [- $stuff = "X" x 30000; -]
  Testing ... length of STUFF=[+ length($stuff) +]<p>
  <input type="hidden" name="STUFF" value="[+ $stuff +]">
  
  <[+ 'b' +]>
  
  [$ foreach $tag ('a', 'b', 'c') $]
      <[+ $tag +]>
  [$endforeach$]
  
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/tagscandisable.htm
  
  Index: tagscandisable.htm
  ===================================================================
  
  
  optDisableHtmlScan is now: [+ $optDisableHtmlScan +] <BR>
  optDisableHtmlScan is set now to: [+ $optDisableHtmlScan = 1 +] <BR>
  optDisableHtmlScan is now: [+ $optDisableHtmlScan +] <BR>
  
  
  [+ $fdat{feld2} = 'blabla2' ; +]
  [+ $fdat{feld6} = 'blabla6' ; +]
  
      <input type="text" name="feld1" value="Wert1">
      <input type="text" name="feld2">
      <input type="text" size=10 name="feld3">
      <input type="text" name="feld4" size=10>
      
  	<input type="text" name="feld5" value="Wert5">
      <input type="text" name="feld6">
      <input type="text" size=10 name="feld7">
      <input type="text" name="feld8" size=10>
  	[- @ks = sort keys %idat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$i=$row] +]</td><td>[+ $idat{$ks[$i]} || '<undef>' +]</td>
  		</tr>
  	</table>
  
  	[- @ks = sort keys %fdat -]
  
  <table>
  	<tr>
  		<td>[+ $ks[$i=$row] +]</td><td>[+ $fdat{$ks[$i]} || '<undef>' +]</td>
  	</tr>
  </table>
  
  optDisableHtmlScan is now: [+ $optDisableHtmlScan +] <BR>
  optDisableHtmlScan is set now to: [+ $optDisableHtmlScan = 0 +] <BR>
  optDisableHtmlScan is now: [+ $optDisableHtmlScan +] <BR>
  
  	[- @ks = sort keys %fdat -]
  
  <table>
  	<tr>
  		<td>[+ $ks[$i=$row] +]</td><td>[+ $fdat{$ks[$i]} || '<undef>' +]</td>
  	</tr>
  </table>
  
      <input type="text" name="feld1" value="Wert1">
      <input type="text" name="feld2">
      <input type="text" size=10 name="feld3">
      <input type="text" name="feld4" size=10>
      
  	<input type="text" name="feld5" value="Wert5">
      <input type="text" name="feld6">
      <input type="text" size=10 name="feld7">
      <input type="text" name="feld8" size=10>
  
  	[- @ks = sort keys %idat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$i=$row] +]</td><td>[+ $idat{$ks[$i]} || '<undef>' +]</td>
  		</tr>
  	</table>
  
  	[- @ks = sort keys %fdat -]
  
  	<table>
  		<tr>
  			<td>[+ $ks[$i=$row] +]</td><td>[+ $fdat{$ks[$i]} || '<undef>' +]</td>
  		</tr>
  	</table>
  
  
  
  
  1.1                  embperl/test/html2/taint.htm
  
  Index: taint.htm
  ===================================================================
  
  <html>
  <head>
  <title>Check Tainiting for Embperl</title>
  </head>
  
  <body>
  
  This is a test if tainting works with Embperl<P>
  
  The following code should be trapped by the perl interpreter <BR>
  when running with -T option or PaintTaintCheck on <P>
  
  
  [+ do { system ('echo blabla') ;}  +]
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/unclosed.htm
  
  Index: unclosed.htm
  ===================================================================
  <html>
  <head>
  <title>Tests for Embperl - Unclosed if</title>
  </head>
  
  
  <body>
  
  [$ if 1 $]
  
  </body>
  </html>
  
  
  
  
  1.1                  embperl/test/html2/upload.htm
  
  Index: upload.htm
  ===================================================================
  
  <html>
  <head>
  <title>Embperl Tests - File-Upload</title>
  </head>
  
  <h1>Embperl Tests - File-Upload</h1>
  
  [+ do { $cgiok = $CGI::VERSION > 2.45 ; @info = sort keys %{$fdat{-upload}} ; $cgiok?"@info":'Content-Disposition Content-Type' } +]
  Filename:       [+ $cgiok?$fdat{upload}:'upload-filename' +]<br>
  Content-Type:	[+ $cgiok?$fdat{-upload} -> {'Content-Type'}:'test/plain' +]<br>
  CGI-Version:    [+ $CGI::VERSION +]
  cgiok           [+ $cgiok +]
  [- 
  	$buf .= $buffer while read($fdat{upload}, $buffer, 32768);
  -]
  
  
  Your file has been the content
  ----------
  [+ $buf +]
  ----------
  
  <hr>
  
  content: [+ $fdat{content} +] <br>
  
  multval: [+ join (';', split ("\t", $fdat{multval})) +] <br>
  
  single: [+ $fdat{single} +] <br>
  
  <br>
  
  [#
  eval 'use IO::Handle' ;
  $h = undef ;
  eval '$h = IO::Handle -> new_from_fd (fileno ($fdat{upload}), "r")' ;
  -]
  [+ if ($h) { @s = $h -> stat ; $s[7]} else { '8219' } +]
  #]
  <p><hr>
  
  <small>HTML::Embperl (c) 1997-1998 G.Richter</small>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/var.htm
  
  Index: var.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <body>
  
  [$VAR $a $b $c $d $e $]
  
  Here it starts with some HTML Text<P>
  
  
  All values should be undefined:
  
  $a = [+ $a || '' +] <BR>
  $b = [+ $b || '' +] <BR>
  $c = [+ $c || '' +] <BR>
  $d = [+ $d || '' +] <BR>
  $e = [+ $e || '' +] <BR>
  
  
  First of all assign a value:
  [- $a = '(this is the value in $a)' -] <BR>
  
  Now we have some 'Umlaute':
  
  
  [- $b = "$a &auml;&ouml;&uuml;" -]
  
  Now lets look what we are getting from this:<BR>
  [+ $a +] [+ $b +]<BR>
  
  And now a and b together: [+ "$a$b" +]<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  [+ $c = <BR> 6 + 17 <font size="3"> * 3 +]
  
  Embperl will also translate HMTL escapes to the right characters i.e. $a &amp;lt; 6 will get the perl expression $a &lt; 6: <BR>
  
  [- $e = 2 -]
  [+ $d = $e &lt; 6 +]
  
  Now they should have a value
  
  $a = [+ $a +] <BR>
  $b = [+ $b +] <BR>
  $c = [+ $c +] <BR>
  $d = [+ $d +] <BR>
  $e = [+ $e +] <BR>
  
  <P>Ok.<P>
  
  [#
  This is an Embperl comment
  it will totaly removed from the html source
  #]
  
  [#  [+ "blabla" +] it will also hide perl code #]
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/varepvar.htm
  
  Index: varepvar.htm
  ===================================================================
  
  <html>
  <head>
  <title>Test for predefined Embperl variables and [ $ var $ ]</title>
  </head>
  
  [$ var $conf $ar $]
  
  $conf = [+ defined ($conf)?$conf:'<undef>' +] <br> 
  $_[0] = [+ defined ($_[0])?$_[0]:'<undef>' +] <br> 
  $_[1] = [+ defined ($_[1])?$_[1]:'<undef>' +] <br> 
  
  $rec_rec  = [+ $req_rec +]<br>
  $$rec_rec = [+ $$req_rec +]<br>
  
  [- $ar = eval { Apache->request } ; $@ = '' -]
  
  Apache->request    = [+ $ar +]<br>
  ${Apache->request} = [+ $$ar +]<br>
  
  ${Apache->request} = $$req_rec ?  [+ ($$ar == $$req_rec)?'yes':'no' +] <br>
  
  [+ $req_rec -> filename +]
  
  <table>
      <tr><td>[+ $ffld[$row] +]</td><td>[+ $fdat{$ffld[$row]} +] </td></tr>
  </table>
  
  </body>
  </html>
  
  
  
  1.1                  embperl/test/html2/varerr.htm
  
  Index: varerr.htm
  ===================================================================
  
  <html>
  <head>
  <title>Some Plain tests for Embperl</title>
  </head>
  
  <body>
  
  [$VAR $vara $varb $c $]
  
  Here it starts with some HTML Text<P>
  
  
  All values should be undefined:
  
  $vara = [+ $vara +] <BR>
  $varb = [+ $varb +] <BR>
  $c = [+ $c +] <BR>
  $d = [+ $d +] <BR>
  $e = [+ $e +] <BR>
  
  
  First of all assign a value:
  [- $vara = '(this is the value in $vara)' -] <BR>
  
  Now we have some 'Umlaute':
  
  
  [- $varb = "$vara &auml;&ouml;&uuml;" -]
  
  Now lets look what we are getting from this:<BR>
  [+ $vara +] [+ $varb +]<BR>
  
  And now a and b together: [+ "$vara$varb" +]<P>
  
  Here we have some HTML tags within the perl code, Embperl will delete them!<BR>
  
  [+ $c = <BR> 6 + 17 <font size="3"> * 3 +]
  
  Embperl will also translate HMTL escapes to the right characters i.e. $vara &amp;lt; 6 will get the perl expression $vara &lt; 6: <BR>
  
  [- $e = 2 -]
  [+ $d = $e &lt; 6 +]
  
  Now they should have a value
  
  $vara = [+ $vara +] <BR>
  $varb = [+ $varb +] <BR>
  $c = [+ $c +] <BR>
  $d = [+ $d +] <BR>
  $e = [+ $e +] <BR>
  
  <P>Ok.<P>
  
  
  </body>
  </html>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-cvs-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-cvs-help@perl.apache.org