<?xml version="1.0" encoding="windows-1252"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
	<head>
		<meta http-equiv="content-type" content="text/html; charset=windows-1252" />
		<title>CGI::Application::Framework Example Application #1 -- Hello World</title>
		<link rel="stylesheet" href="<!-- TMPL_VAR NAME="url_examples_css" -->" type="text/css" />
	</head>

  <body>
    <div id="banner">
     <h1>CGI::Application::Framework</h1>
     <h2>Example Pages</h2>
    </div>
	<div id="nav">
		<span class="link"><a href="<!-- TMPL_VAR NAME="url_app_cgi" -->/Example/example_1">One</a></span>
		<span class="link"><a href="<!-- TMPL_VAR NAME="url_app_cgi" -->/Example/example_2a">Two</a></span>
		<span class="link"><a href="<!-- TMPL_VAR NAME="url_app_cgi" -->/Example/example_3">Three</a></span>
		<span class="link"><a href="<!-- TMPL_VAR NAME="url_app_cgi" -->/Example/example_4">Four</a></span>
		<span class="link"><a href="<!-- TMPL_VAR NAME="url_app_cgi" -->/Example/example_5">Five</a></span>
	</div>


    <h1>CGI::Application::Framework Example Application #1 -- Hello World</h1>
    <h2>HTML::Template version</h2>

	<pre>
	<!-- TMPL_INCLUDE NAME="README.txt" -->
	</pre>

	<h2>Authentication and Session Management</h2>

	<a href='<!-- TMPL_VAR NAME="SELF_HREF_LINK" -->'>Reload Page</a>
	
	<p>
	The 'href' link value is: <!-- TMPL_VAR NAME="SELF_HREF_LINK" -->
	</p>
	
	<p>
	If you wait for ( timeout = ) <!-- TMPL_VAR NAME="timeout" -->
	seconds before clicking on the above link then you will be presented with
	a relogin authentication page before continuing.  Once you successfully
	reauthenticate you will return to this page with all of the appropriate
	state information maintained.  (For instance, see the "times you have
	loaded this page" info, below.)
	</p>
	
	<p>
	Hello!  This is the main output.  There are a number of areas of this page
	which were generated by HTML::Template TMPL_VAR and TMPL_LOOP tags, which
	had their values populated by the .pm program that corresponds to the .pl
	file shown in the URL for this page.
	</p>
	
	<b>Number of times you have loaded this page:</b>
	<!-- TMPL_VAR NAME="load_count" -->
	</p>

	<h2>Variable Replacement and Looping</h2>
	
	<p>
	<b>The current time is:</b>
	<!-- TMPL_VAR NAME="current_time" -->
	</p>
	
	<p>
	Here's a table generated by a loop:
	  <table border=1>
		<tr>
		  <th>Key</th>
		  <th>Value</th>
		</tr>
	<!-- TMPL_LOOP NAME="a_random_loop" -->
		<tr>
		  <td align=left valign=top>
	<!-- TMPL_VAR NAME="key" -->
		  </td>
		  <td align=left valign=top>
	<!-- TMPL_VAR NAME="value" -->
		  </td>
		</tr>
	<!-- /TMPL_LOOP -->
	  </table>
	</p>
	
	<hr />
	
	<h3>Stack Trace Dump</h3>
	
	<pre>
	<!-- TMPL_VAR NAME="stack_trace_dump" -->
	</pre>
	
	<hr />
	
	<h3>Self State Dump</h3>
	
	<p>
	Note that the state of the self contains HTML-ish tags and a representation
	of the HTML::Template itself. This is countered by using ESCAPE=HTML to present
	the content filtered by the system with all of the HTML escaped so you can see the tags.
	</p>
	
	<pre>
	<!-- TMPL_VAR NAME="self_state_dump" ESCAPE=HTML-->
	</pre>

  </body>
</html>

