<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<id>tag:old.nabble.com,2006:forum-13612</id>
	<title>Nabble - Perl - Cgi-Application</title>
	<updated>2009-12-07T12:25:08Z</updated>
	<link rel="self" type="application/atom+xml" href="http://old.nabble.com/Perl---Cgi-Application-f13612.xml" />
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Perl---Cgi-Application-f13612.html" />
	<subtitle type="html">For discussion of the use and development of the CGI::Application module, and related systems. CGI::Application is a framework for building web-based applications in Perl.</subtitle>
	
<entry>
	<id>tag:old.nabble.com,2006:post-26683537</id>
	<title>CAP::RateLimit question -- REMOTE_IP</title>
	<published>2009-12-07T12:25:08Z</published>
	<updated>2009-12-07T12:25:08Z</updated>
	<author>
		<name>Mark Rajcok</name>
	</author>
	<content type="html">I'm looking at CAP::RateLimit and I have a question about REMOTE_IP. &amp;nbsp;My
&lt;br&gt;apache server doesn't have that environment variable defined (nor is
&lt;br&gt;REMOTE_USER defined for my app -- so the remote user is not being
&lt;br&gt;identified. &amp;nbsp;REMOTE_ADDR is defined.) &amp;nbsp;How does one get REMOTE_IP to be
&lt;br&gt;defined?
&lt;br&gt;&lt;br&gt;REMOTE_IP is not on this (old?) CGI reference page:
&lt;br&gt;&lt;a href=&quot;http://hoohoo.ncsa.illinois.edu/cgi/env.html&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://hoohoo.ncsa.illinois.edu/cgi/env.html&lt;/a&gt;&lt;br&gt;&lt;br&gt;-- Mark
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CAP%3A%3ARateLimit-question----REMOTE_IP-tp26683537p26683537.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26653221</id>
	<title>Re: CAP::Security::CSRF -- useful?</title>
	<published>2009-12-04T22:01:24Z</published>
	<updated>2009-12-04T22:01:24Z</updated>
	<author>
		<name>Mark Rajcok</name>
	</author>
	<content type="html">To complete this one-man dialogue, the code below seems to work well, but I
&lt;br&gt;had to change the if statement to
&lt;br&gt;&amp;nbsp; &amp;nbsp;if(defined $self-&amp;gt;{'__DFV_RESULT'}) {
&lt;br&gt;to guard against a scenario where CAP::ValidateRM is loaded, but neither
&lt;br&gt;check_rm() nor validate_rm() was called (i.e., ValidateRM was not used to
&lt;br&gt;validate the form). &amp;nbsp;In this scenario, dfv_results() calls 'die' -- not
&lt;br&gt;good.
&lt;br&gt;&lt;br&gt;I assume this is a bit chummy -- a module shouldn't be looking at another
&lt;br&gt;module's &amp;quot;private&amp;quot; data -- but there is no method in CAP::ValidateRM that
&lt;br&gt;indicates if check_rm() or validate_rm() was called.
&lt;br&gt;&lt;br&gt;I ended up writing my own CSRF Plugin. &amp;nbsp;It borrows some good ideas from
&lt;br&gt;ProtectCSRF in that it uses attribute handlers and adds the hidden form
&lt;br&gt;field to the HTML. &amp;nbsp;If I ever decide to put it up on CPAN, maybe then I'd
&lt;br&gt;ask Mark S. to add a new method to CAP::ValidateRM.
&lt;br&gt;&lt;br&gt;-- Mark
&lt;br&gt;&lt;br&gt;On Thu, Dec 3, 2009 at 9:29 PM, Mark Rajcok &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26653221&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mrajcok@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; A possible solution: &amp;nbsp;the postrun callback for ProtectCSRF runmodes could
&lt;br&gt;&amp;gt; be enhanced to detect that ValidateRM was used, and that there were errors
&lt;br&gt;&amp;gt; on the form. Something like this:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; if($self-&amp;gt;can('dfv_results')) { &amp;nbsp;# hmm, using CAP::ValidateRM
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; my $r = $self-&amp;gt;dfv_results;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if($r-&amp;gt;has_missing or $r-&amp;gt;has_invalid) {
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; # &amp;nbsp;the form has errors, assume we need to generate an new CSRF
&lt;br&gt;&amp;gt; token:
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; # ... code here to generate a new token and add it to the HTML
&lt;br&gt;&amp;gt; ...
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CAP%3A%3ASecurity%3A%3ACSRF----useful--tp26557947p26653221.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26637385</id>
	<title>Re: CAP::Security::CSRF -- useful?</title>
	<published>2009-12-03T19:24:48Z</published>
	<updated>2009-12-03T19:24:48Z</updated>
	<author>
		<name>Mark Rajcok</name>
	</author>
	<content type="html">Hi Cosimo,
&lt;br&gt;Since I use CAP::Config::Simple, $self-&amp;gt;config() won't work in my app. Your
&lt;br&gt;comment caused me to go look at what other CSRF modules do.
&lt;br&gt;CAP::ProtectCSRF does this:
&lt;br&gt;&lt;br&gt;my @words = ('A'..'Z', 'a'..'z', 0..9, '/', '.');
&lt;br&gt;my $salt = join &amp;quot;&amp;quot;, @words[ map { sprintf( &amp;quot;%d&amp;quot;, rand(scalar @words) ) } 1..2 ];
&lt;br&gt;my $csrf_id = sha1_hex($salt . time . $$ . rand(10000));
&lt;br&gt;&lt;br&gt;and a similar Catalyst module, Catalyst::Controller::RequestToken, does
&lt;br&gt;this:
&lt;br&gt;&lt;br&gt;my $digest = _find_digest();
&lt;br&gt;my $seed = join( time, rand(10000), $$, {} );
&lt;br&gt;$digest-&amp;gt;add($seed);
&lt;br&gt;my $token = $digest-&amp;gt;hexdigest;
&lt;br&gt;&lt;br&gt;I did modify my module to add some more randomness.
&lt;br&gt;Thanks for the suggestion.
&lt;br&gt;&lt;br&gt;-- Mark
&lt;br&gt;&lt;br&gt;On Sun, Nov 29, 2009 at 8:46 AM, Cosimo Streppone &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26637385&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;cosimo@...&lt;/a&gt;&amp;gt;wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; In the token generation, I would try to be less predictable,
&lt;br&gt;&amp;gt; and inject a secret string coming from a config file, something like:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; my $token = sha1_base64( join '/',
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; $self-&amp;gt;config('csrf-seed'),
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;$self-&amp;gt;session-&amp;gt;param('_SESSION_ID'),
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; time
&lt;br&gt;&amp;gt; &amp;nbsp; );
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; So even if you know that a specific app is made with CGI::Application
&lt;br&gt;&amp;gt; and it uses CSRF protection, you have lower chances of
&lt;br&gt;&amp;gt; predicting the exact sha1 hash that will be generated.
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CAP%3A%3ASecurity%3A%3ACSRF----useful--tp26557947p26637385.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26637019</id>
	<title>Re: CAP::Security::CSRF -- useful?</title>
	<published>2009-12-03T18:29:16Z</published>
	<updated>2009-12-03T18:29:16Z</updated>
	<author>
		<name>Mark Rajcok</name>
	</author>
	<content type="html">A possible solution: &amp;nbsp;the postrun callback for ProtectCSRF runmodes could be
&lt;br&gt;enhanced to detect that ValidateRM was used, and there were errors on the
&lt;br&gt;form. Something like this:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; if($self-&amp;gt;can('dfv_results')) { &amp;nbsp;# hmm, using CAP::ValidateRM
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; my $r = $self-&amp;gt;dfv_results;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; if($r-&amp;gt;has_missing or $r-&amp;gt;has_invalid) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; # &amp;nbsp;the form has errors, assume we need to generate an new CSRF
&lt;br&gt;token:
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; # ... code here to generate a new token and add it to the HTML
&lt;br&gt;...
&lt;br&gt;&lt;br&gt;I'm not sure if a new token should be generated, or the existing one should
&lt;br&gt;be (re)used. &amp;nbsp;At a minimum, the hidden field with the token needs to be
&lt;br&gt;added to the HTML again.
&lt;br&gt;&lt;br&gt;For CA apps that don't use ValidateRM, we could add a new method to
&lt;br&gt;CAP::ProtectCSRF that would set some kind of flag so that the postrun
&lt;br&gt;callback would know to generate a token and add it to the HTML. The app
&lt;br&gt;developer would have to remember to call it though -- it wouldn't happen
&lt;br&gt;behind the scenes like above. Something like this:
&lt;br&gt;&lt;br&gt;sub create_check : Runmode :ProtectCSRF {
&lt;br&gt;&amp;nbsp; &amp;nbsp; my $self = shift;
&lt;br&gt;&amp;nbsp; &amp;nbsp; # check the form without using my ValidateRM
&lt;br&gt;&amp;nbsp; &amp;nbsp; $self-&amp;gt;add_csrf_id_to_html();
&lt;br&gt;&amp;nbsp; &amp;nbsp; # and maybe $self-&amp;gt;generate_csrf_token();
&lt;br&gt;&amp;nbsp; &amp;nbsp; # ... code to re-generate the original form with errors ...
&lt;br&gt;} &amp;nbsp;&amp;lt;--- the postrun callback/hook would do the real work, if the flag was
&lt;br&gt;set
&lt;br&gt;&lt;br&gt;Comments?
&lt;br&gt;-- Mark
&lt;br&gt;&lt;br&gt;On Thu, Dec 3, 2009 at 1:16 AM, Mark Rajcok &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26637019&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mrajcok@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; Anyone see a solution to this problem? &amp;nbsp;(other than abandoning attribute
&lt;br&gt;&amp;gt; handlers and requiring functions like create() above to explicitly call
&lt;br&gt;&amp;gt; _publish_csrf_id() and _add_csrf_id())
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CAP%3A%3ASecurity%3A%3ACSRF----useful--tp26557947p26637019.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26621534</id>
	<title>Re: CAP::Security::CSRF -- useful?</title>
	<published>2009-12-02T22:16:25Z</published>
	<updated>2009-12-02T22:16:25Z</updated>
	<author>
		<name>Mark Rajcok</name>
	</author>
	<content type="html">I tried using CAP::ProtectCSRF and ran into a problem.
&lt;br&gt;The plugin uses attribute handlers, which work great when a form is
&lt;br&gt;initially displayed -- postrun callback _add_csrf_id() is magically called
&lt;br&gt;to add the token (as a hidden field) to the HTML form, based on the
&lt;br&gt;&amp;quot;PublishCSRFID&amp;quot; attribute being present:
&lt;br&gt;&lt;br&gt;sub create : Runmode :PublishCSRFID {
&lt;br&gt;&amp;nbsp; &amp;nbsp; my ($self, $errs) = @_;
&lt;br&gt;&amp;nbsp; &amp;nbsp; my $t = $self-&amp;gt;load_tmpl('request_form.html');
&lt;br&gt;...
&lt;br&gt;&amp;nbsp; &amp;nbsp;$t-&amp;gt;output
&lt;br&gt;} &amp;nbsp;# &amp;lt;------ _add_csrf_id() gets called
&lt;br&gt;&lt;br&gt;sub create_check : Runmode :ProtectCSRF {
&lt;br&gt;&amp;nbsp; &amp;nbsp; my $self = shift;
&lt;br&gt;&amp;nbsp; &amp;nbsp; my $dfv_results = $self-&amp;gt;check_rm('create', Request::dfv_create_rules)
&lt;br&gt;||
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return $self-&amp;gt;check_rm_error_page; &amp;nbsp;# &amp;lt;----- &amp;nbsp;_add_csrf_id() does
&lt;br&gt;not get called
&lt;br&gt;...
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;If there is a problem with the form, check_rm_error_page() calls create()
&lt;br&gt;and the form will be redisplayed to the user with errors, but the postrun
&lt;br&gt;callback does not get executed, so the HTML form will not have the hidden
&lt;br&gt;field with the token. &amp;nbsp;Trying to submit a corrected form then fails with a
&lt;br&gt;CSRF error, since there is no CSRF token in the submitted form.
&lt;br&gt;(I suppose this is a ProtectCSRF bug, since I don't think I'm doing anything
&lt;br&gt;odd here.)
&lt;br&gt;&lt;br&gt;Anyone see a solution to this problem? &amp;nbsp;(other than abandoning attribute
&lt;br&gt;handlers and requiring functions like create() above to explicitly call
&lt;br&gt;_publish_csrf_id() and _add_csrf_id())
&lt;br&gt;&lt;br&gt;The above may boil down to this general issue/question: &amp;nbsp;if a plugin
&lt;br&gt;installs a (say prerun) callback for (say) rm2, and rm1 calls rm2 directly,
&lt;br&gt;is there any way to force the callbacks to be executed for rm2 (without
&lt;br&gt;using a redirect)? &amp;nbsp;For example:
&lt;br&gt;&lt;br&gt;sub rm1 { &amp;nbsp;# does not require authentication
&lt;br&gt;&amp;nbsp; ...
&lt;br&gt;&amp;nbsp; $self-&amp;gt;rm2; &amp;nbsp; # &amp;lt;--- no callbacks are executed for rm2 -- sometimes that's
&lt;br&gt;a problem
&lt;br&gt;}
&lt;br&gt;sub rm2 { # requires authentication and uses a prerun callback to enforce it
&lt;br&gt;...
&lt;br&gt;}
&lt;br&gt;&lt;br&gt;-- Mark
&lt;br&gt;&lt;br&gt;On Sat, Nov 28, 2009 at 10:08 PM, Mark Rajcok &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26621534&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mrajcok@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I should have searched CPAN some more first:
&lt;br&gt;&amp;gt; &amp;nbsp;&lt;a href=&quot;http://search.cpan.org/perldoc?CGI::Application::Plugin::ProtectCSRF&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://search.cpan.org/perldoc?CGI::Application::Plugin::ProtectCSRF&lt;/a&gt;&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; On Sat, Nov 28, 2009 at 6:21 PM, Mark Rajcok &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26621534&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mrajcok@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I want to guard against multiple form submissions (reload, resubmit, etc.)
&lt;br&gt;&amp;gt;&amp;gt; and CSRF in my app:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CAP%3A%3ASecurity%3A%3ACSRF----useful--tp26557947p26621534.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26619975</id>
	<title>Re: [PATCH] C::A::Plugin::PageBuilder bug #48498</title>
	<published>2009-12-02T18:15:19Z</published>
	<updated>2009-12-02T18:15:19Z</updated>
	<author>
		<name>Steve Bertrand-2</name>
	</author>
	<content type="html">Steve Bertrand wrote:
&lt;br&gt;&amp;gt; CGI::Application::Plugin::PageBuilder bug #48498.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; The following patch allows the Plugin to pass tests, install correctly
&lt;br&gt;&amp;gt; and work properly on perl-5.10.1,
&lt;br&gt;&lt;br&gt;Hi all,
&lt;br&gt;&lt;br&gt;I'm readying a project that I want to up to the CPAN, in which
&lt;br&gt;CAP::PageBuilder is intrinsic to it.
&lt;br&gt;&lt;br&gt;I have not heard back from the developer regarding the patch. How would
&lt;br&gt;one go about having the patch integrated (or at least investigated) in
&lt;br&gt;this case?
&lt;br&gt;&lt;br&gt;Steve
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-PATCH--C%3A%3AA%3A%3APlugin%3A%3APageBuilder-bug--48498-tp26519971p26619975.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26562183</id>
	<title>Re: CAP::Security::CSRF -- useful?</title>
	<published>2009-11-29T05:46:12Z</published>
	<updated>2009-11-29T05:46:12Z</updated>
	<author>
		<name>Cosimo Streppone</name>
	</author>
	<content type="html">In data 29 novembre 2009 alle ore 00:21:13, Mark Rajcok &amp;nbsp;
&lt;br&gt;&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26562183&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mrajcok@...&lt;/a&gt;&amp;gt; ha scritto:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; I want to guard against multiple form submissions (reload, resubmit, &amp;nbsp;
&lt;br&gt;&amp;gt; etc.)
&lt;br&gt;&amp;gt; and CSRF in my app:
&lt;br&gt;&amp;gt; &amp;nbsp; &lt;a href=&quot;http://en.wikipedia.org/wiki/Cross-site_request_forgery&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://en.wikipedia.org/wiki/Cross-site_request_forgery&lt;/a&gt;&lt;br&gt;&amp;gt; &amp;nbsp; &lt;a href=&quot;http://www.perlmonks.org/?node_id=606832&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.perlmonks.org/?node_id=606832&lt;/a&gt;&lt;br&gt;&amp;gt; I hacked up a simple plugin. Do you think it would be useful? or might
&lt;br&gt;&amp;gt; something like this already exist?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; [...]
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&amp;gt; # generate a new token for this new form
&lt;br&gt;&amp;gt; my $token = sha1_base64($self-&amp;gt;session-&amp;gt;param('_SESSION_ID') . time);
&lt;br&gt;&lt;br&gt;Hi,
&lt;br&gt;&lt;br&gt;I think the idea is really good.
&lt;br&gt;In the token generation, I would try to be less predictable,
&lt;br&gt;and inject a secret string coming from a config file,
&lt;br&gt;something like:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;my $token = sha1_base64( join '/',
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;$self-&amp;gt;config('csrf-seed'),
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;$self-&amp;gt;session-&amp;gt;param('_SESSION_ID'),
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;time
&lt;br&gt;&amp;nbsp; &amp;nbsp;);
&lt;br&gt;&lt;br&gt;So even if you know that a specific app is made with CGI::Application
&lt;br&gt;and it uses CSRF protection, you have lower chances of
&lt;br&gt;predicting the exact sha1 hash that will be generated.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Cosimo
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CAP%3A%3ASecurity%3A%3ACSRF----useful--tp26557947p26562183.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26559029</id>
	<title>Re: CAP::Security::CSRF -- useful?</title>
	<published>2009-11-28T19:08:56Z</published>
	<updated>2009-11-28T19:08:56Z</updated>
	<author>
		<name>Mark Rajcok</name>
	</author>
	<content type="html">I should have searched CPAN some more first:
&lt;br&gt;&amp;nbsp;&lt;a href=&quot;http://search.cpan.org/perldoc?CGI::Application::Plugin::ProtectCSRF&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://search.cpan.org/perldoc?CGI::Application::Plugin::ProtectCSRF&lt;/a&gt;&lt;br&gt;&lt;br&gt;On Sat, Nov 28, 2009 at 6:21 PM, Mark Rajcok &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26559029&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mrajcok@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; I want to guard against multiple form submissions (reload, resubmit, etc.)
&lt;br&gt;&amp;gt; and CSRF in my app:
&lt;br&gt;&amp;gt;
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CAP%3A%3ASecurity%3A%3ACSRF----useful--tp26557947p26559029.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26557947</id>
	<title>CAP::Security::CSRF -- useful?</title>
	<published>2009-11-28T15:21:13Z</published>
	<updated>2009-11-28T15:21:13Z</updated>
	<author>
		<name>Mark Rajcok</name>
	</author>
	<content type="html">I want to guard against multiple form submissions (reload, resubmit, etc.)
&lt;br&gt;and CSRF in my app:
&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://en.wikipedia.org/wiki/Cross-site_request_forgery&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://en.wikipedia.org/wiki/Cross-site_request_forgery&lt;/a&gt;&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://www.perlmonks.org/?node_id=606832&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.perlmonks.org/?node_id=606832&lt;/a&gt;&lt;br&gt;&lt;br&gt;I hacked up a simple plugin. Do you think it would be useful? or might
&lt;br&gt;something like this already exist?
&lt;br&gt;&lt;br&gt;package CGI::Application::Plugin::Security::CSRF;
&lt;br&gt;use strict;
&lt;br&gt;use warnings;
&lt;br&gt;use base 'Exporter';
&lt;br&gt;use CGI::Application;
&lt;br&gt;use CGI::Application::Plugin::Session;
&lt;br&gt;use Digest::SHA1 qw(sha1_base64);
&lt;br&gt;&lt;br&gt;use vars qw($VERSION @EXPORT);
&lt;br&gt;@EXPORT = qw(csrf_insert_token csrf_attack);
&lt;br&gt;$VERSION = '1.0';
&lt;br&gt;&lt;br&gt;sub csrf_insert_token {
&lt;br&gt;&amp;nbsp; &amp;nbsp; my ($self, $token_name, $tmpl) = @_;
&lt;br&gt;&amp;nbsp; &amp;nbsp; if($self-&amp;gt;query-&amp;gt;param('csrf_token')) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; # reuse the token that was submitted with the form; don't generate a
&lt;br&gt;new one
&lt;br&gt;&amp;nbsp; &amp;nbsp; } else {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; # generate a new token for this new form
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; my $token = sha1_base64($self-&amp;gt;session-&amp;gt;param('_SESSION_ID') .
&lt;br&gt;time);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; # TBD: below, what if the app is not using HTML::Template ??
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; $tmpl-&amp;gt;param(csrf_token =&amp;gt; $token);
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; $self-&amp;gt;session-&amp;gt;param($token_name =&amp;gt; $token);
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;}
&lt;br&gt;sub csrf_attack {
&lt;br&gt;&amp;nbsp; &amp;nbsp; my ($self, $token_name) = @_;
&lt;br&gt;&amp;nbsp; &amp;nbsp; if( ($self-&amp;gt;query-&amp;gt;request_method ne 'POST') &amp;nbsp; # ensure the form was
&lt;br&gt;POSTed
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;|| ($self-&amp;gt;session-&amp;gt;param($token_name) ne
&lt;br&gt;$self-&amp;gt;query-&amp;gt;param('csrf_token')) ) {
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return 1
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; $self-&amp;gt;session-&amp;gt;clear($token_name);
&lt;br&gt;&amp;nbsp; &amp;nbsp; return 0
&lt;br&gt;}
&lt;br&gt;1;
&lt;br&gt;&lt;br&gt;Example usage:
&lt;br&gt;&lt;br&gt;sub edit_account_form : Runmode {
&lt;br&gt;&amp;nbsp; &amp;nbsp; my $self = shift;
&lt;br&gt;&amp;nbsp; &amp;nbsp; my $errs = shift; # created by edit_check()
&lt;br&gt;&amp;nbsp; &amp;nbsp; my $t = $self-&amp;gt;load_tmpl('account_form.html');
&lt;br&gt;...
&lt;br&gt;&amp;nbsp; &amp;nbsp; $t-&amp;gt;param(rm =&amp;gt; 'edit_check');
&lt;br&gt;&amp;nbsp; &amp;nbsp; $self-&amp;gt;csrf_insert_token('edit_account_token', $t); &amp;nbsp; &amp;lt;&amp;lt;-------------
&lt;br&gt;&amp;nbsp; &amp;nbsp; $t-&amp;gt;param($errs) if $errs;
&lt;br&gt;&amp;nbsp; &amp;nbsp; $t-&amp;gt;output
&lt;br&gt;}
&lt;br&gt;#------------------------------------------------------------------------------
&lt;br&gt;sub edit_check : Runmode {
&lt;br&gt;&amp;nbsp; &amp;nbsp; my $self = shift;
&lt;br&gt;&amp;nbsp; &amp;nbsp; my $dfv_results = $self-&amp;gt;check_rm('edit_account_form',
&lt;br&gt;my_dfv_edit_rules) ||
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return $self-&amp;gt;check_rm_error_page;
&lt;br&gt;&amp;nbsp; &amp;nbsp; if($self-&amp;gt;csrf_attack('edit_acount_token')) { &amp;nbsp; &amp;nbsp; &amp;lt;&amp;lt;------------------
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return $self-&amp;gt;custom_error_page(msg =&amp;gt;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;'It seems you may have been performing a similar operation in
&lt;br&gt;multiple windows'
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; .' (which is not supported for security reasons),'
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; .' or you tried to submit or reload the same form twice.');
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;# or there was a real CSRF attack attempt, in which case no
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;# one will ever see this error message
&lt;br&gt;&amp;nbsp; &amp;nbsp; }
&lt;br&gt;&amp;nbsp; &amp;nbsp; ...
&lt;br&gt;&lt;br&gt;Each HTML form that uses this plugin will need the following hidden field:
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;csrf_token&amp;quot; value=&amp;quot;&amp;lt;tmpl_var token&amp;gt;&amp;quot; /&amp;gt;
&lt;br&gt;&lt;br&gt;Current limitations:
&lt;br&gt;&lt;br&gt;1. csrf_insert_token() assumes/requires HTML::Template. &amp;nbsp;Can a plugin
&lt;br&gt;determine if a different template system is in use?
&lt;br&gt;If so, the $tmpl argument could be optional, and if it is not present, the
&lt;br&gt;method could return the generated token. &amp;nbsp;The app developer would then need
&lt;br&gt;to use whatever template system method is appropriated to add the token to
&lt;br&gt;the form.
&lt;br&gt;&lt;br&gt;2. tokens are stored in the session object. A token is removed on a
&lt;br&gt;successful form submission. &amp;nbsp;They remain otherwise. &amp;nbsp;So tokens could collect
&lt;br&gt;over time, but only if the user visited form pages and did not submit them
&lt;br&gt;successfully. &amp;nbsp;For apps that have a lot of forms that use this plugin, this
&lt;br&gt;could be an issue.
&lt;br&gt;&lt;br&gt;3. As the error message implies in the edit_check() rm above, using a fixed
&lt;br&gt;token name like 'edit_account_token' will not allow a user to have two
&lt;br&gt;windows open to the same form and successfully submit both forms. &amp;nbsp;Only the
&lt;br&gt;form that was opened last will succeed. For most apps, I would consider this
&lt;br&gt;a feature, not a bug (i.e., the &amp;quot;older&amp;quot; window becomes stale/unusable). But
&lt;br&gt;for certain apps, maybe this would be a problem.
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CAP%3A%3ASecurity%3A%3ACSRF----useful--tp26557947p26557947.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26519971</id>
	<title>[PATCH] C::A::Plugin::PageBuilder bug #48498</title>
	<published>2009-11-25T12:43:49Z</published>
	<updated>2009-11-25T12:43:49Z</updated>
	<author>
		<name>Steve Bertrand-2</name>
	</author>
	<content type="html">CGI::Application::Plugin::PageBuilder bug #48498.
&lt;br&gt;&lt;br&gt;The following patch allows the Plugin to pass tests, install correctly
&lt;br&gt;and work properly on perl-5.10.1, on:
&lt;br&gt;&lt;br&gt;% uname -a
&lt;br&gt;FreeBSD acct.eagle.ca 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Fri May &amp;nbsp;1
&lt;br&gt;08:49:13 UTC 2009
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26519971&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;root@...&lt;/a&gt;:/usr/obj/usr/src/sys/GENERIC &amp;nbsp;i386
&lt;br&gt;&lt;br&gt;Steve
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;--- CGI-Application-Plugin-PageBuilder-0.97/lib/CGI/Application/Plugin/PageBuilder.pm &amp;nbsp; 2006-09-15 13:21:26.000000000 -0400
&lt;br&gt;+++ CGI-Application-Plugin-PageBuilder-0.97.good/lib/CGI/Application/Plugin/PageBuilder.pm &amp;nbsp; &amp;nbsp; &amp;nbsp;2009-11-25 15:30:16.000000000 -0500
&lt;br&gt;@@ -116,7 +116,7 @@
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; my( $self, $param, $value ) = @_;
&lt;br&gt;&amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return unless $value;
&lt;br&gt;- &amp;nbsp; &amp;nbsp; &amp;nbsp; ${$self-&amp;gt;{__PB_TEMPLATE_LIST}}[$#{@{$self-&amp;gt;{__PB__TEMPLATE_LIST}}}]-&amp;gt;param( $param, $value );
&lt;br&gt;+ &amp;nbsp; &amp;nbsp; &amp;nbsp; $self-&amp;gt;{__PB_TEMPLATE_LIST}-&amp;gt;[-1]-&amp;gt;param( $param, $value );
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; return $self-&amp;gt;pb_build();
&lt;br&gt;&amp;nbsp;}&lt;br /&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/-PATCH--C%3A%3AA%3A%3APlugin%3A%3APageBuilder-bug--48498-tp26519971p26519971.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26470053</id>
	<title>Re: is my app caching db connection ?</title>
	<published>2009-11-22T14:06:14Z</published>
	<updated>2009-11-22T14:06:14Z</updated>
	<author>
		<name>Mark Rajcok</name>
	</author>
	<content type="html">Thanks to the archives I found this thread related to persistent DB
&lt;br&gt;connections when using CAP::DBH and FastCGI. &amp;nbsp; I changed my cgiapp_init()
&lt;br&gt;code from:
&lt;br&gt;&amp;nbsp; &amp;nbsp;$self-&amp;gt;dbh_config(
&lt;br&gt;&lt;br&gt;$self-&amp;gt;config_param('dsn'),$self-&amp;gt;config_param('user'),$self-&amp;gt;config_param('password')
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ,{PrintError =&amp;gt; 0, RaiseError =&amp;gt; 0}
&lt;br&gt;&amp;nbsp; &amp;nbsp; );
&lt;br&gt;to:
&lt;br&gt;&amp;nbsp; &amp;nbsp; $self-&amp;gt;dbh_config(sub { DBI-&amp;gt;connect_cached(
&lt;br&gt;&lt;br&gt;$self-&amp;gt;config_param('dsn'),$self-&amp;gt;config_param('user'),$self-&amp;gt;config_param('password')
&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ,{PrintError =&amp;gt; 0, RaiseError =&amp;gt; 0}
&lt;br&gt;&amp;nbsp; &amp;nbsp; ); });
&lt;br&gt;and I now get persistent DB connections. &amp;nbsp;Very nice.
&lt;br&gt;&lt;br&gt;However, I would prefer if CAP:DBH did this automatically. &amp;nbsp;If I leave my
&lt;br&gt;cgiapp_init() code as it was originally, and instead change DBH to use
&lt;br&gt;connect_cached() instead of connect(), I also get persistent DB
&lt;br&gt;connections. &amp;nbsp;In addition to FastCGI, connect_cached() works with plain CGI
&lt;br&gt;and (according to the DBI documentation) with Apache::DBI.
&lt;br&gt;&lt;br&gt;Are there any reasons DBH should not be using connect_cached()?
&lt;br&gt;&lt;br&gt;BTW, I have a unit test script that uses Test::WWW::Mechanize to test my
&lt;br&gt;CGI::App application and when I moved over to FastCGI, it ran 11 times
&lt;br&gt;faster -- 12 seconds instead of 130. &amp;nbsp;I should have started to use FastCGI a
&lt;br&gt;long time ago...
&lt;br&gt;&lt;br&gt;The CA wiki is still not editable. &amp;nbsp;Is anyone looking into fixing it?
&lt;br&gt;&lt;br&gt;On Mon, Jul 28, 2008 at 1:53 PM, Dan Horne &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26470053&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;dan.horne@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I believe the way around this is to use the package variable approach Mark
&lt;br&gt;&amp;gt; suggests with a C::A::P::DBH callback. DBI's connect_cached option, is
&lt;br&gt;&amp;gt; designed to handle the stale connection problem (I use DBI directly, but the
&lt;br&gt;&amp;gt; principle is the same):
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;# Use a callback to create your own handle that is still lazy loaded
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;$self-&amp;gt;dbh_config(sub { DBI-&amp;gt;connect_cached(); });
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/is-my-app-caching-db-connection---tp18675557p26470053.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26424887</id>
	<title>Re: UTF-8 output</title>
	<published>2009-11-19T03:50:03Z</published>
	<updated>2009-11-19T03:50:03Z</updated>
	<author>
		<name>Mike Tonks-2</name>
	</author>
	<content type="html">I have the following in my cgiapp_init:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; binmode STDOUT, &amp;quot;:utf8&amp;quot;; # Explicitly output utf8 - this is critical
&lt;br&gt;&lt;br&gt;probably totally wrong, but it works for me...
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;2009/11/4 Michael Lackhoff &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26424887&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;lackhoff@...&lt;/a&gt;&amp;gt;:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On 04.11.2009 12:19 Cees Hek wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; You mean something like this:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; __PACKAGE__-&amp;gt;add_callback('postrun', sub {
&lt;br&gt;&amp;gt;&amp;gt;     my $self = shift;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;     # Make sure the output is utf8 encoded if it needs it
&lt;br&gt;&amp;gt;&amp;gt;     if ( $_[0] &amp;&amp; ${$_[0]} &amp;&amp; utf8::is_utf8(${$_[0]}) ){
&lt;br&gt;&amp;gt;&amp;gt;         utf8::encode( ${$_[0]} );
&lt;br&gt;&amp;gt;&amp;gt;     }
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;     return;
&lt;br&gt;&amp;gt;&amp;gt; });
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I have that in my CGI::App base class.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; As time goes by my base class gets more and more pieces of yours ;-)
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Thanks
&lt;br&gt;&amp;gt; -Michael
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; #####  CGI::Application community mailing list  ################
&lt;br&gt;&amp;gt; ##                                                            ##
&lt;br&gt;&amp;gt; ##  To unsubscribe, or change your message delivery options,  ##
&lt;br&gt;&amp;gt; ##  visit:  &lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp;   ##
&lt;br&gt;&amp;gt; ##                                                            ##
&lt;br&gt;&amp;gt; ##  Web archive:   &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp;  ##
&lt;br&gt;&amp;gt; ##  Wiki:          &lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp;                ##
&lt;br&gt;&amp;gt; ##                                                            ##
&lt;br&gt;&amp;gt; ################################################################
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/UTF-8-output-tp26158630p26424887.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26423793</id>
	<title>Re: CGI::Simple as replacement for CGI not working?</title>
	<published>2009-11-19T02:19:42Z</published>
	<updated>2009-11-19T02:19:42Z</updated>
	<author>
		<name>Jolly.Tall</name>
	</author>
	<content type="html">Richard Jones wrote:
&lt;br&gt;&amp;gt; App working fine with default CGI, but decided to see if it works with 
&lt;br&gt;&amp;gt; CGI::Simple using the cgiapp_get_query() override. But instead of 
&lt;br&gt;&amp;gt; rendering the page I get a popup: 'you have chosen to open 
&lt;br&gt;&amp;gt; myapp_server.pl which is a Perl script ... what should Firefox do with 
&lt;br&gt;&amp;gt; this file'. I can't fathom where the problem lies. Anyone been there before?
&lt;br&gt;&lt;br&gt;OK, more info. The app does actually work OK with CGI::Simple, but I'm 
&lt;br&gt;using the expression $self-&amp;gt;query-&amp;gt;url() a lot to generate links within 
&lt;br&gt;the app, and when I dump $self-&amp;gt;query-&amp;gt;url() to stdout, for CGI::Simple 
&lt;br&gt;I get this: &lt;a href=&quot;http://localhost:8080script/lims_server.pl&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://localhost:8080script/lims_server.pl&lt;/a&gt;&lt;br&gt;instead of the correct url (as with CGI.pm): &lt;a href=&quot;http://localhost:8080/hmds&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://localhost:8080/hmds&lt;/a&gt;&lt;br&gt;&lt;br&gt;That appears to be what is causing the problem. If I hover over the urls 
&lt;br&gt;generated by the app using CGI::Simple, I get things like 
&lt;br&gt;&lt;a href=&quot;http://localhost:8080/lims_server.pl/user/change_password&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://localhost:8080/lims_server.pl/user/change_password&lt;/a&gt;&lt;br&gt;and if I change 'lims_server.pl' to 'hmds' (as generated by CGI.pm) in 
&lt;br&gt;the browser address, the page renders fine (but still generates 
&lt;br&gt;incorrectly formatted urls).
&lt;br&gt;&lt;br&gt;lims_server.pl is the name of the script which starts the development 
&lt;br&gt;server on port 8080.
&lt;br&gt;&lt;br&gt;my $server = CGI::Application::Server-&amp;gt;new();
&lt;br&gt;$server-&amp;gt;document_root(&amp;quot;$Bin/../static&amp;quot;);
&lt;br&gt;$server-&amp;gt;entry_points( { '/hmds' =&amp;gt; 'LIMS::Dispatch' } ); # CAD class
&lt;br&gt;$server-&amp;gt;run;
&lt;br&gt;&lt;br&gt;Hope this is more helpful.
&lt;br&gt;-- 
&lt;br&gt;Richard Jones
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CGI%3A%3ASimple-as-replacement-for-CGI-not-working--tp26413636p26423793.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26417094</id>
	<title>Re: CGI::Simple as replacement for CGI not working?</title>
	<published>2009-11-18T14:40:26Z</published>
	<updated>2009-11-18T14:40:26Z</updated>
	<author>
		<name>Jolly.Tall</name>
	</author>
	<content type="html">Cees Hek wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Thu, Nov 19, 2009 at 5:59 AM, Richard Jones &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26417094&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ra.jones@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; App working fine with default CGI, but decided to see if it works with
&lt;br&gt;&amp;gt;&amp;gt; CGI::Simple using the cgiapp_get_query() override. But instead of
&lt;br&gt;&amp;gt;&amp;gt; rendering the page I get a popup: 'you have chosen to open
&lt;br&gt;&amp;gt;&amp;gt; myapp_server.pl which is a Perl script ... what should Firefox do with
&lt;br&gt;&amp;gt;&amp;gt; this file'. I can't fathom where the problem lies. Anyone been there before?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I seems like maybe you aren't sending a content type header...
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; LWP comes with a command line script called GET which is handy for
&lt;br&gt;&amp;gt; fetching pages and looking at headers (there are also useful firefox
&lt;br&gt;&amp;gt; plugins for this too). &amp;nbsp;Try this from your shell:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp;GET -ed &lt;a href=&quot;http://mysite/myapp_server.pl&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mysite/myapp_server.pl&lt;/a&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; That will dump the response headers to the screen. &amp;nbsp;Check to make sure
&lt;br&gt;&amp;gt; the content-type is correct.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Cheers,
&lt;br&gt;&amp;gt; 
&lt;/div&gt;Hi Cees,
&lt;br&gt;&lt;br&gt;Emulating the url I would use in the browser:
&lt;br&gt;GET -ed &lt;a href=&quot;http://localhost:8080/hmds&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://localhost:8080/hmds&lt;/a&gt;&lt;br&gt;&lt;br&gt;produced:
&lt;br&gt;&lt;br&gt;Connection: close
&lt;br&gt;Date: Wed, 18 Nov 2009 22:30:17 GMT
&lt;br&gt;Content-Length: 4920
&lt;br&gt;Content-Type: text/html; charset=ISO-8859-1
&lt;br&gt;Client-Date: Wed, 18 Nov 2009 22:30:17 GMT
&lt;br&gt;Client-Peer: 127.0.0.1:8080
&lt;br&gt;Client-Response-Num: 1
&lt;br&gt;Link: &amp;lt;&lt;a href=&quot;http://localhost:8080/css/lims.css&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://localhost:8080/css/lims.css&lt;/a&gt;&amp;gt;; rel=&amp;quot;stylesheet&amp;quot;; 
&lt;br&gt;type=&amp;quot;text/css&amp;quot;
&lt;br&gt;Link: &amp;lt;/css/autosuggest_inquisitor.css&amp;gt;; charset=&amp;quot;utf-8&amp;quot;; 
&lt;br&gt;media=&amp;quot;screen&amp;quot;; rel=&amp;quot;stylesheet&amp;quot;; type=&amp;quot;text/css&amp;quot;
&lt;br&gt;Link: &amp;lt;/css/print.css&amp;gt;; media=&amp;quot;print&amp;quot;; rel=&amp;quot;stylesheet&amp;quot;; type=&amp;quot;text/css&amp;quot;
&lt;br&gt;Set-Cookie: CGISESSID=1459; path=/; expires=Thu, 19-Nov-2009 22:30:17 GMT
&lt;br&gt;Title: HMDS Information Management System
&lt;br&gt;&lt;br&gt;I'm not familiar with the output of the GET command-line, but I think 
&lt;br&gt;the content-type looks OK (text/html) - no?
&lt;br&gt;-- 
&lt;br&gt;Richard Jones
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CGI%3A%3ASimple-as-replacement-for-CGI-not-working--tp26413636p26417094.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26416947</id>
	<title>Re: CGI::Simple as replacement for CGI not working?</title>
	<published>2009-11-18T14:28:29Z</published>
	<updated>2009-11-18T14:28:29Z</updated>
	<author>
		<name>P Kishor-3</name>
	</author>
	<content type="html">On Wed, Nov 18, 2009 at 3:18 PM, Richard Jones &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26416947&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ra.jones@...&lt;/a&gt;&amp;gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26416947&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ron@...&lt;/a&gt; wrote:
&lt;br&gt;&amp;gt;&amp;gt; Hi Richard
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; Quoting &amp;quot;Richard Jones&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26416947&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ra.jones@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; App working fine with default CGI, but decided to see if it works with
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; CGI::Simple using the cgiapp_get_query() override. But instead of
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; rendering the page I get a popup: 'you have chosen to open
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; myapp_server.pl which is a Perl script ... what should Firefox do with
&lt;br&gt;&amp;gt;&amp;gt;&amp;gt; this file'. I can't fathom where the problem lies. Anyone been there before?
&lt;br&gt;&amp;gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; My guess is that when you saved your edits, the execute bit on the
&lt;br&gt;&amp;gt;&amp;gt; file was turned off.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Hi Ron,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Good idea but it can't be that as it's an actively developed app which
&lt;br&gt;&amp;gt; has edits saved many times per day. And in fact I'm using
&lt;br&gt;&amp;gt; CGI::App:Dispatch and CGI::App::Server so the MyApp.pm part (where the
&lt;br&gt;&amp;gt; cgiapp_get_query method sits) isn't executable anyway. Maybe something
&lt;br&gt;&amp;gt; to do with CAD?
&lt;/div&gt;&lt;br&gt;&lt;br&gt;I work everyday with C::A, C::A::D, CGI::Simple. No problem at all.
&lt;br&gt;You will have to give a lot more information to help others debug your
&lt;br&gt;problem, but it does smell of wrong headers/mime type, etc.
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CGI%3A%3ASimple-as-replacement-for-CGI-not-working--tp26413636p26416947.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26416507</id>
	<title>Re: CGI::Simple as replacement for CGI not working?</title>
	<published>2009-11-18T13:56:16Z</published>
	<updated>2009-11-18T13:56:16Z</updated>
	<author>
		<name>Cees Hek</name>
	</author>
	<content type="html">On Thu, Nov 19, 2009 at 5:59 AM, Richard Jones &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26416507&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ra.jones@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; App working fine with default CGI, but decided to see if it works with
&lt;br&gt;&amp;gt; CGI::Simple using the cgiapp_get_query() override. But instead of
&lt;br&gt;&amp;gt; rendering the page I get a popup: 'you have chosen to open
&lt;br&gt;&amp;gt; myapp_server.pl which is a Perl script ... what should Firefox do with
&lt;br&gt;&amp;gt; this file'. I can't fathom where the problem lies. Anyone been there before?
&lt;br&gt;&lt;br&gt;I seems like maybe you aren't sending a content type header...
&lt;br&gt;&lt;br&gt;LWP comes with a command line script called GET which is handy for
&lt;br&gt;fetching pages and looking at headers (there are also useful firefox
&lt;br&gt;plugins for this too). &amp;nbsp;Try this from your shell:
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp;GET -ed &lt;a href=&quot;http://mysite/myapp_server.pl&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mysite/myapp_server.pl&lt;/a&gt;&lt;br&gt;&lt;br&gt;That will dump the response headers to the screen. &amp;nbsp;Check to make sure
&lt;br&gt;the content-type is correct.
&lt;br&gt;&lt;br&gt;Cheers,
&lt;br&gt;&lt;br&gt;Cees
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CGI%3A%3ASimple-as-replacement-for-CGI-not-working--tp26413636p26416507.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26416921</id>
	<title>Re: CGI::Simple as replacement for CGI not working?</title>
	<published>2009-11-18T13:18:53Z</published>
	<updated>2009-11-18T13:18:53Z</updated>
	<author>
		<name>Jolly.Tall</name>
	</author>
	<content type="html">&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26416921&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ron@...&lt;/a&gt; wrote:
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi Richard
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Quoting &amp;quot;Richard Jones&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26416921&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ra.jones@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt;&amp;gt; App working fine with default CGI, but decided to see if it works with
&lt;br&gt;&amp;gt;&amp;gt; CGI::Simple using the cgiapp_get_query() override. But instead of
&lt;br&gt;&amp;gt;&amp;gt; rendering the page I get a popup: 'you have chosen to open
&lt;br&gt;&amp;gt;&amp;gt; myapp_server.pl which is a Perl script ... what should Firefox do with
&lt;br&gt;&amp;gt;&amp;gt; this file'. I can't fathom where the problem lies. Anyone been there before?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; My guess is that when you saved your edits, the execute bit on the &amp;nbsp;
&lt;br&gt;&amp;gt; file was turned off.
&lt;/div&gt;&lt;br&gt;Hi Ron,
&lt;br&gt;&lt;br&gt;Good idea but it can't be that as it's an actively developed app which 
&lt;br&gt;has edits saved many times per day. And in fact I'm using 
&lt;br&gt;CGI::App:Dispatch and CGI::App::Server so the MyApp.pm part (where the 
&lt;br&gt;cgiapp_get_query method sits) isn't executable anyway. Maybe something 
&lt;br&gt;to do with CAD?
&lt;br&gt;-- 
&lt;br&gt;Richard Jones
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CGI%3A%3ASimple-as-replacement-for-CGI-not-working--tp26413636p26416921.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26415608</id>
	<title>Re: CGI::Simple as replacement for CGI not working?</title>
	<published>2009-11-18T12:56:55Z</published>
	<updated>2009-11-18T12:56:55Z</updated>
	<author>
		<name>Ron Savage</name>
	</author>
	<content type="html">Hi Richard
&lt;br&gt;&lt;br&gt;&lt;br&gt;Quoting &amp;quot;Richard Jones&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26415608&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ra.jones@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&lt;br&gt;&amp;gt; App working fine with default CGI, but decided to see if it works with
&lt;br&gt;&amp;gt; CGI::Simple using the cgiapp_get_query() override. But instead of
&lt;br&gt;&amp;gt; rendering the page I get a popup: 'you have chosen to open
&lt;br&gt;&amp;gt; myapp_server.pl which is a Perl script ... what should Firefox do with
&lt;br&gt;&amp;gt; this file'. I can't fathom where the problem lies. Anyone been there before?
&lt;br&gt;&lt;br&gt;My guess is that when you saved your edits, the execute bit on the &amp;nbsp;
&lt;br&gt;file was turned off.
&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CGI%3A%3ASimple-as-replacement-for-CGI-not-working--tp26413636p26415608.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26413636</id>
	<title>CGI::Simple as replacement for CGI not working?</title>
	<published>2009-11-18T10:59:14Z</published>
	<updated>2009-11-18T10:59:14Z</updated>
	<author>
		<name>Jolly.Tall</name>
	</author>
	<content type="html">App working fine with default CGI, but decided to see if it works with 
&lt;br&gt;CGI::Simple using the cgiapp_get_query() override. But instead of 
&lt;br&gt;rendering the page I get a popup: 'you have chosen to open 
&lt;br&gt;myapp_server.pl which is a Perl script ... what should Firefox do with 
&lt;br&gt;this file'. I can't fathom where the problem lies. Anyone been there before?
&lt;br&gt;-- 
&lt;br&gt;Richard Jones
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/CGI%3A%3ASimple-as-replacement-for-CGI-not-working--tp26413636p26413636.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26393752</id>
	<title>multi-threading</title>
	<published>2009-11-17T09:10:59Z</published>
	<updated>2009-11-17T09:10:59Z</updated>
	<author>
		<name>NP Bamber</name>
	</author>
	<content type="html">I would have thought it would be more scaleable to set up a server 
&lt;br&gt;process (perhaps POE) with a SOAP or HTTP interface to do the threading.
&lt;br&gt;Another possibility might be AJAX.
&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Message: 2
&lt;br&gt;&amp;gt; Date: Tue, 17 Nov 2009 11:22:59 +0000
&lt;br&gt;&amp;gt; From: Mike Tonks &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26393752&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;fluffymike@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; Subject: [cgiapp] Threading Question
&lt;br&gt;&amp;gt; To: CGI Application &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26393752&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;cgiapp@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; Message-ID:
&lt;br&gt;&amp;gt; 	&amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26393752&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;727692630911170322u459084f2yfc98bbc2a8e69925@...&lt;/a&gt;&amp;gt;
&lt;br&gt;&amp;gt; Content-Type: text/plain; charset=ISO-8859-1
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Hi Folks,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; I'm just considering a problem that I think requires a bit of multi-threading.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; It's a new one for me so wondered if anyone has advice or experience
&lt;br&gt;&amp;gt; of using threading with CGI::Application.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Scenario is: We have 5 database servers at different sites. &amp;nbsp;We would
&lt;br&gt;&amp;gt; like to create a search function that queries all of the databases.
&lt;br&gt;&amp;gt; The web server is on an intranet and can open connections to all of
&lt;br&gt;&amp;gt; the database servers.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; So - I imagine it would be sensible to fire 5 queries on 5 threads,
&lt;br&gt;&amp;gt; and wait for them all to return? &amp;nbsp;Then combine the results in some
&lt;br&gt;&amp;gt; way. &amp;nbsp;The results sets will be fairly small, say no more than 50
&lt;br&gt;&amp;gt; records.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Seems likely to be quicker than to fire one, wait for it, fire
&lt;br&gt;&amp;gt; another, and so on.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Also I guess there could be server issues with the use of multiple threads?
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; cheers,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; mike
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;nbsp; 
&lt;br&gt;&amp;gt;
&lt;/div&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/multi-threading-tp26393752p26393752.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26391900</id>
	<title>Re: Threading Question</title>
	<published>2009-11-17T07:31:02Z</published>
	<updated>2009-11-17T07:31:02Z</updated>
	<author>
		<name>Kurt Lidl</name>
	</author>
	<content type="html">On Tue, Nov 17, 2009 at 11:22:59AM +0000, Mike Tonks wrote:
&lt;br&gt;&amp;gt; I'm just considering a problem that I think requires a bit of multi-threading.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; It's a new one for me so wondered if anyone has advice or experience
&lt;br&gt;&amp;gt; of using threading with CGI::Application.
&lt;br&gt;&lt;br&gt;I expect that you'll run afoul of DBI's limitation on working
&lt;br&gt;with threaded perl. &amp;nbsp;While it kinda works, the DBI documentation
&lt;br&gt;says that using threads with DBI (even if you work around
&lt;br&gt;the various issues with making it work) isn't recommended for
&lt;br&gt;production environments.
&lt;br&gt;&lt;br&gt;&amp;gt; Scenario is: We have 5 database servers at different sites. &amp;nbsp;We would
&lt;br&gt;&amp;gt; like to create a search function that queries all of the databases.
&lt;br&gt;&amp;gt; The web server is on an intranet and can open connections to all of
&lt;br&gt;&amp;gt; the database servers.
&lt;br&gt;&lt;br&gt;Why not just open up 5 database handles and execute the queries.
&lt;br&gt;The queries should run in parallel, and you can choose how to
&lt;br&gt;interleave the processsing of the result sets however you want.
&lt;br&gt;&lt;br&gt;&amp;gt; Also I guess there could be server issues with the use of multiple threads?
&lt;br&gt;&lt;br&gt;There's also the DBIx::Threaded stuff, which spawns off additional
&lt;br&gt;threads and gives you an API for accessing those threads (and the
&lt;br&gt;database handles bound to them), but it all looks pretty scary to me.
&lt;br&gt;&lt;br&gt;-Kurt
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Threading-Question-tp26388279p26391900.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26388279</id>
	<title>Threading Question</title>
	<published>2009-11-17T03:22:59Z</published>
	<updated>2009-11-17T03:22:59Z</updated>
	<author>
		<name>Mike Tonks-2</name>
	</author>
	<content type="html">Hi Folks,
&lt;br&gt;&lt;br&gt;I'm just considering a problem that I think requires a bit of multi-threading.
&lt;br&gt;&lt;br&gt;It's a new one for me so wondered if anyone has advice or experience
&lt;br&gt;of using threading with CGI::Application.
&lt;br&gt;&lt;br&gt;Scenario is: We have 5 database servers at different sites. &amp;nbsp;We would
&lt;br&gt;like to create a search function that queries all of the databases.
&lt;br&gt;The web server is on an intranet and can open connections to all of
&lt;br&gt;the database servers.
&lt;br&gt;&lt;br&gt;So - I imagine it would be sensible to fire 5 queries on 5 threads,
&lt;br&gt;and wait for them all to return? &amp;nbsp;Then combine the results in some
&lt;br&gt;way. &amp;nbsp;The results sets will be fairly small, say no more than 50
&lt;br&gt;records.
&lt;br&gt;&lt;br&gt;Seems likely to be quicker than to fire one, wait for it, fire
&lt;br&gt;another, and so on.
&lt;br&gt;&lt;br&gt;Also I guess there could be server issues with the use of multiple threads?
&lt;br&gt;&lt;br&gt;cheers,
&lt;br&gt;&lt;br&gt;mike
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/Threading-Question-tp26388279p26388279.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26375747</id>
	<title>can't search or edit the wiki; CGI::Simple difference</title>
	<published>2009-11-16T09:14:53Z</published>
	<updated>2009-11-16T09:14:53Z</updated>
	<author>
		<name>Mark Rajcok</name>
	</author>
	<content type="html">I get errors if I try to search or edit the wiki, e.g.
&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://cgi-app.org/index.cgi?action=edit&amp;page_name=CGIpmAlternatives&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgi-app.org/index.cgi?action=edit&amp;page_name=CGIpmAlternatives&lt;/a&gt;&lt;br&gt;&lt;br&gt;I sent email to &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26375747&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;webmaster@...&lt;/a&gt; but it bounced.
&lt;br&gt;&lt;br&gt;&lt;br&gt;I wanted to make a note on the wiki about a difference I found between
&lt;br&gt;CGI::Simple and normal CGI.
&lt;br&gt;I'm using apache mod_rewrite and PATH_INFO to get &amp;quot;clean URLs&amp;quot;, e.g.
&lt;br&gt;&amp;nbsp;&lt;a href=&quot;http://mysite.com/account/edit&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://mysite.com/account/edit&lt;/a&gt;&lt;br&gt;turns into a call to account.cgi, and runmode &amp;quot;edit&amp;quot; is executed.
&lt;br&gt;&lt;br&gt;I was also guarding against cross site scripting by doing something like the
&lt;br&gt;following
&lt;br&gt;sub edit {
&lt;br&gt;&amp;nbsp; &amp;nbsp;...
&lt;br&gt;&amp;nbsp; &amp;nbsp;if($self-&amp;gt;query-&amp;gt;url_param &amp;gt; 0) &amp;nbsp;{ &amp;nbsp;error condition, looks like x-site
&lt;br&gt;scripting }
&lt;br&gt;&lt;br&gt;With CGI::Simple, the above works.
&lt;br&gt;&lt;br&gt;I recently switched over to Fast::CGI and following the wiki instructions
&lt;br&gt;&amp;nbsp; &lt;a href=&quot;http://cgi-app.org/index.cgi?FastCGI&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgi-app.org/index.cgi?FastCGI&lt;/a&gt;&lt;br&gt;I'm no longer using CGI::Simple.
&lt;br&gt;&lt;br&gt;The above &amp;quot;if&amp;quot; statement started triggering in my unit test code.
&lt;br&gt;&lt;br&gt;url_param() is returning a parameter named &amp;quot;keywords&amp;quot;. &amp;nbsp;I finally tracked
&lt;br&gt;this down to &amp;quot;If the script was invoked as an &amp;lt;ISINDEX&amp;gt; script and contains
&lt;br&gt;a string without ampersands (e.g. &amp;quot;value1+value2+value3&amp;quot;) , there will be a
&lt;br&gt;single parameter named &amp;quot;keywords&amp;quot; containing the &amp;quot;+&amp;quot;-delimited keywords.&amp;quot;
&lt;br&gt;&lt;br&gt;I guess this is because I'm using PATH_INFO... not sure. &amp;nbsp;CGI::Simple
&lt;br&gt;doesn't return a &amp;quot;keywords&amp;quot; param, but CGI.pm does.
&lt;br&gt;&lt;br&gt;So, the fix is
&lt;br&gt;&amp;nbsp; &amp;nbsp;if($self-&amp;gt;query-&amp;gt;url_param &amp;gt; 1) &amp;nbsp;{ &amp;nbsp;error condition }
&lt;br&gt;&amp;nbsp; &amp;nbsp; # note, param &amp;quot;keywords&amp;quot; is present when using CGI.pm, but not when
&lt;br&gt;using CGI::Simple
&lt;br&gt;&lt;br&gt;-- Mark
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/can%27t-search-or-edit-the-wiki--CGI%3A%3ASimple-difference-tp26375747p26375747.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26311599</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T16:52:26Z</published>
	<updated>2009-11-11T16:52:26Z</updated>
	<author>
		<name>Alex-539</name>
	</author>
	<content type="html">&lt;div class='shrinkable-quote'&gt;&amp;gt; &amp;gt; This is a pathetic argument!
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; If die_on_bad_params makes it harder for designers to use and less like 
&lt;br&gt;&amp;gt; the tools they are used to using, how can that be a &amp;quot;pathetic&amp;quot; argument.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; &amp;gt; Just because X is non-strict does not justify refusing to use strict
&lt;br&gt;&amp;gt; &amp;gt; in Y, when the whole point of strictness is to help improve software
&lt;br&gt;&amp;gt; &amp;gt; reliability.
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; Looking back at all of my projects that use HTML::Template I can 
&lt;br&gt;&amp;gt; honestly say that die_on_bad_params has caused more problems then it's 
&lt;br&gt;&amp;gt; fixed for me. It's not an argument against reliability but rather for 
&lt;br&gt;&amp;gt; it. If a valid template change causes an ISE (rather than just an 
&lt;br&gt;&amp;gt; invalid display) I'd say your software is less reliable. You now need a 
&lt;br&gt;&amp;gt; developer to fix what was supposed to be a design problem.
&lt;/div&gt;&lt;br&gt;That ist he argument I always hear from people not using strict when getting
&lt;br&gt;the advice to use strict. Of course, if no strict was used, using strict
&lt;br&gt;causes problems, e.g. by aborting for each non declared variable. But that
&lt;br&gt;is not the point. The point is, to avoid errors and bugs and unvorseen
&lt;br&gt;behavior by using strict in the first place.
&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26311599.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26310115</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T14:42:44Z</published>
	<updated>2009-11-11T14:42:44Z</updated>
	<author>
		<name>Ron Savage</name>
	</author>
	<content type="html">Hi Michael
&lt;br&gt;&lt;br&gt;&amp;gt; Looking back at all of my projects that use HTML::Template I can
&lt;br&gt;&amp;gt; honestly say that die_on_bad_params has caused more problems then it's
&lt;br&gt;&amp;gt; fixed for me. It's not an argument against reliability but rather for
&lt;br&gt;&amp;gt; it. If a valid template change causes an ISE (rather than just an
&lt;br&gt;&amp;gt; invalid display) I'd say your software is less reliable. You now need a
&lt;br&gt;&amp;gt; developer to fix what was supposed to be a design problem.
&lt;br&gt;&lt;br&gt;Oh. I go by the fact that at least 99% of the template problems I've &amp;nbsp;
&lt;br&gt;caught by testing, i.e. before putting the template into production.
&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26310115.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26309950</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T14:30:59Z</published>
	<updated>2009-11-11T14:30:59Z</updated>
	<author>
		<name>Michael Peters</name>
	</author>
	<content type="html">On 11/11/2009 05:02 PM, &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26309950&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ron@...&lt;/a&gt; wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; This is a pathetic argument!
&lt;br&gt;&lt;br&gt;If die_on_bad_params makes it harder for designers to use and less like 
&lt;br&gt;the tools they are used to using, how can that be a &amp;quot;pathetic&amp;quot; argument.
&lt;br&gt;&lt;br&gt;&amp;gt; Just because X is non-strict does not justify refusing to use strict
&lt;br&gt;&amp;gt; in Y, when the whole point of strictness is to help improve software
&lt;br&gt;&amp;gt; reliability.
&lt;br&gt;&lt;br&gt;Looking back at all of my projects that use HTML::Template I can 
&lt;br&gt;honestly say that die_on_bad_params has caused more problems then it's 
&lt;br&gt;fixed for me. It's not an argument against reliability but rather for 
&lt;br&gt;it. If a valid template change causes an ISE (rather than just an 
&lt;br&gt;invalid display) I'd say your software is less reliable. You now need a 
&lt;br&gt;developer to fix what was supposed to be a design problem.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Michael Peters
&lt;br&gt;Plus Three, LP
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26309950.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26309502</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T14:02:59Z</published>
	<updated>2009-11-11T14:02:59Z</updated>
	<author>
		<name>Ron Savage</name>
	</author>
	<content type="html">Hi Michael
&lt;br&gt;&lt;br&gt;Quoting &amp;quot;Michael Peters&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26309502&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mpeters@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&lt;br&gt;&amp;gt; On 11/11/2009 10:46 AM, P Kishor wrote:
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt;&amp;gt; I use it exclusively, under the assumption that, like 'use strict', it
&lt;br&gt;&amp;gt;&amp;gt; is just best practice,
&lt;br&gt;&amp;gt;
&lt;br&gt;&amp;gt; But a real question I have is, should designers (who are the ones
&lt;br&gt;&amp;gt; creating these, or at least that's one of it's benefits is that they
&lt;br&gt;&amp;gt; can) be burdened with &amp;quot;strict&amp;quot; when the environment they operate in
&lt;br&gt;&amp;gt; (HTML, CSS) is inherently not &amp;quot;strict&amp;quot;.
&lt;br&gt;&lt;br&gt;This is a pathetic argument!
&lt;br&gt;&lt;br&gt;Just because X is non-strict does not justify refusing to use strict &amp;nbsp;
&lt;br&gt;in Y, when the whole point of strictness is to help improve software &amp;nbsp;
&lt;br&gt;reliability.
&lt;br&gt;&lt;br&gt;I.e. it's not a case of less strictness is better, but rather, more is &amp;nbsp;
&lt;br&gt;- without being fanatical of course...
&lt;br&gt;&lt;br&gt;Strictness is not the burden, bugs are :-).
&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26309502.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26306438</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T10:43:48Z</published>
	<updated>2009-11-11T10:43:48Z</updated>
	<author>
		<name>Bugzilla from mark@summersault.com</name>
	</author>
	<content type="html">On Wed, 11 Nov 2009 02:30:21 +0000
&lt;br&gt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26306438&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ron@...&lt;/a&gt; wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; Hi Mark
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Quoting &amp;quot;Mark Stosberg&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26306438&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; To proceed, I'd like to hear at least a small chorus of voices &amp;nbsp;
&lt;br&gt;&amp;gt; &amp;gt; claiming that the they use
&lt;br&gt;&amp;gt; &amp;gt; the die_on_bad_params feature.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I always use it, since in testing I want to know immediately if there &amp;nbsp;
&lt;br&gt;&amp;gt; is a problem.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; I assume those who don't use it do so in order to avoid having to set &amp;nbsp;
&lt;br&gt;&amp;gt; every parameter in the template. Is that right?
&lt;/div&gt;&lt;br&gt;As a standard part of our toolkit, we make all of our config variables
&lt;br&gt;always available to the template, with a cfg_ prefix appended to their
&lt;br&gt;name. 
&lt;br&gt;&lt;br&gt;So, the designer knows for instance she has the option to put 
&lt;br&gt;&amp;lt;!-- tmpl_var cfg_root_uri --&amp;gt;
&lt;br&gt;in the template, but it is not required on every page. 
&lt;br&gt;&lt;br&gt;If we need to precisely test the template, we can use a simple regex
&lt;br&gt;match to check that tokens appear in the file, our we can use
&lt;br&gt;html_tmpl_class() and HTML::Template::Dumper for a more formal
&lt;br&gt;approach. 
&lt;br&gt;&lt;br&gt;&amp;nbsp; &amp;nbsp; Mark
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;&amp;nbsp;. . . . . . . . . . . . . . . . . . . . . . . . . . . 
&lt;br&gt;&amp;nbsp; &amp;nbsp;Mark Stosberg &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Principal Developer &amp;nbsp;
&lt;br&gt;&amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26306438&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt; &amp;nbsp; &amp;nbsp; Summersault, LLC &amp;nbsp; &amp;nbsp; 
&lt;br&gt;&amp;nbsp; &amp;nbsp;765-939-9301 ext 202 &amp;nbsp; &amp;nbsp; database driven websites
&lt;br&gt;&amp;nbsp;. . . . . &lt;a href=&quot;http://www.summersault.com/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.summersault.com/&lt;/a&gt;&amp;nbsp;. . . . . . . .
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26306438.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26303834</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T08:02:17Z</published>
	<updated>2009-11-11T08:02:17Z</updated>
	<author>
		<name>Michael Peters</name>
	</author>
	<content type="html">On 11/11/2009 10:46 AM, P Kishor wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; I use it exclusively, under the assumption that, like 'use strict', it
&lt;br&gt;&amp;gt; is just best practice,
&lt;br&gt;&lt;br&gt;But a real question I have is, should designers (who are the ones 
&lt;br&gt;creating these, or at least that's one of it's benefits is that they 
&lt;br&gt;can) be burdened with &amp;quot;strict&amp;quot; when the environment they operate in 
&lt;br&gt;(HTML, CSS) is inherently not &amp;quot;strict&amp;quot;.
&lt;br&gt;&lt;br&gt;&amp;gt; &amp;nbsp;may make my code faster
&lt;br&gt;&lt;br&gt;I seriously doubt this. Especially if your code has to do lots of 
&lt;br&gt;$tmpl-&amp;gt;query() stuff to make sure that a variable is present before 
&lt;br&gt;doing a $tmpl-&amp;gt;param().
&lt;br&gt;&lt;br&gt;&amp;gt; and less error-ridden,
&lt;br&gt;&lt;br&gt;The only error I know that this catches is a misspelling on the 
&lt;br&gt;programmer's side. Which I'll admit is a real problem. But in most of my 
&lt;br&gt;cases, it's a problem that's easily seen because the data does not show 
&lt;br&gt;up where it should.
&lt;br&gt;&lt;br&gt;&amp;gt; and may endow me with good looks and untold riches
&lt;br&gt;&lt;br&gt;Maybe if you rub Sam Tregar's belly. But I'd be careful, he's got a mean 
&lt;br&gt;right hook :)
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Michael Peters
&lt;br&gt;Plus Three, LP
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26303834.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26303530</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T07:46:01Z</published>
	<updated>2009-11-11T07:46:01Z</updated>
	<author>
		<name>P Kishor-3</name>
	</author>
	<content type="html">..
&lt;br&gt;&amp;gt;&amp;gt; I don't know how many people use die_on_bad_params, so I don't
&lt;br&gt;&amp;gt;&amp;gt; know how worth it it is to modify the core.
&lt;br&gt;..
&lt;br&gt;&lt;br&gt;I use it exclusively, under the assumption that, like 'use strict', it
&lt;br&gt;is just best practice, may make my code faster and less error-ridden,
&lt;br&gt;and may endow me with good looks and untold riches. I have no
&lt;br&gt;scientific basis for the above assumptions.
&lt;br&gt;&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Puneet Kishor &lt;a href=&quot;http://www.punkish.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.punkish.org&lt;/a&gt;&lt;br&gt;Carbon Model &lt;a href=&quot;http://carbonmodel.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://carbonmodel.org&lt;/a&gt;&lt;br&gt;Charter Member, Open Source Geospatial Foundation &lt;a href=&quot;http://www.osgeo.org&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.osgeo.org&lt;/a&gt;&lt;br&gt;Science Commons Fellow, &lt;a href=&quot;http://sciencecommons.org/about/whoweare/kishor&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://sciencecommons.org/about/whoweare/kishor&lt;/a&gt;&lt;br&gt;Nelson Institute, UW-Madison &lt;a href=&quot;http://www.nelson.wisc.edu&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.nelson.wisc.edu&lt;/a&gt;&lt;br&gt;-----------------------------------------------------------------------
&lt;br&gt;Assertions are politics; backing up assertions with evidence is science
&lt;br&gt;=======================================================================
&lt;br&gt;Sent from Madison, Wisconsin, United States
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26303530.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26303445</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T07:41:00Z</published>
	<updated>2009-11-11T07:41:00Z</updated>
	<author>
		<name>Gurunandan R. Bhat-2</name>
	</author>
	<content type="html">On Tue, 2009-11-10 at 20:56 -0500, Mark Stosberg wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; To proceed, I'd like to hear at least a small chorus of voices claiming that the they use
&lt;br&gt;&amp;gt; the die_on_bad_params feature. 
&lt;br&gt;&amp;gt; 
&lt;br&gt;&lt;br&gt;&lt;br&gt;I use it all the time as an alternative to an if-then-else: if a piece
&lt;br&gt;of content is not to be displayed, I just dont define its template
&lt;br&gt;variable.
&lt;br&gt;But from the tone of your and following messages, I sense that I am
&lt;br&gt;doing something Seriously Bad (TM). If that is the case, I would be
&lt;br&gt;happy to hear reasons.
&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26303445.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26301969</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T06:17:17Z</published>
	<updated>2009-11-11T06:17:17Z</updated>
	<author>
		<name>Michael Peters</name>
	</author>
	<content type="html">On 11/10/2009 08:56 PM, Mark Stosberg wrote:
&lt;br&gt;&lt;br&gt;&amp;gt; To proceed, I'd like to hear at least a small chorus of voices claiming that the they use
&lt;br&gt;&amp;gt; the die_on_bad_params feature.
&lt;br&gt;&lt;br&gt;I use it sometimes, but grudgingly. If the goal is to separate the 
&lt;br&gt;design from the application behind that design, then this feature fails. 
&lt;br&gt;My designer has to include everything I pass to him in his template 
&lt;br&gt;somewhere. Even if we decide that something isn't necessary any more on 
&lt;br&gt;a certain page then he still has to include it or things break.
&lt;br&gt;&lt;br&gt;Of course we can update the backend code too, but then you can't update 
&lt;br&gt;one without updating the other. It makes phased rollouts difficult. And 
&lt;br&gt;if you have several sites with different templates using the same 
&lt;br&gt;backend code it gets even worse.
&lt;br&gt;&lt;br&gt;-- 
&lt;br&gt;Michael Peters
&lt;br&gt;Plus Three, LP
&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26301969.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26298657</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-11T01:49:17Z</published>
	<updated>2009-11-11T01:49:17Z</updated>
	<author>
		<name>Alex-539</name>
	</author>
	<content type="html">Hi!
&lt;br&gt;&lt;br&gt;Mostly the same here. I like it for testing and the only reason I can think
&lt;br&gt;of why it should be disabled is that you want to avoid setting params
&lt;br&gt;specific for your template.
&lt;br&gt;I kind of like the strict behavior on a second way: it remind me of &amp;quot;use
&lt;br&gt;strict&amp;quot; with scopes 'n stuff, but that may be just a subjective preference.
&lt;br&gt;&lt;br&gt;Hth, Alex
&lt;br&gt;&lt;br&gt;-----Ursprüngliche Nachricht-----
&lt;br&gt;Von: &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26298657&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;cgiapp-bounces@...&lt;/a&gt;
&lt;br&gt;[mailto:&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26298657&amp;i=1&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;cgiapp-bounces@...&lt;/a&gt;] Im Auftrag von &lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26298657&amp;i=2&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;ron@...&lt;/a&gt;
&lt;br&gt;Gesendet: Mittwoch, 11. November 2009 03:30
&lt;br&gt;An: CGI Application
&lt;br&gt;Betreff: Re: [cgiapp] proposal for new cgiapp hook: loaded_html_tmpl
&lt;br&gt;&lt;br&gt;Hi Mark
&lt;br&gt;&lt;br&gt;Quoting &amp;quot;Mark Stosberg&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26298657&amp;i=3&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&lt;br&gt;&amp;gt; To proceed, I'd like to hear at least a small chorus of voices &amp;nbsp;
&lt;br&gt;&amp;gt; claiming that the they use
&lt;br&gt;&amp;gt; the die_on_bad_params feature.
&lt;br&gt;&lt;br&gt;I always use it, since in testing I want to know immediately if there &amp;nbsp;
&lt;br&gt;is a problem.
&lt;br&gt;&lt;br&gt;I assume those who don't use it do so in order to avoid having to set &amp;nbsp;
&lt;br&gt;every parameter in the template. Is that right?
&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;Eingehende eMail ist virenfrei.
&lt;br&gt;Von AVG überprüft - www.avg.de 
&lt;br&gt;Version: 9.0.704 / Virendatenbank: 270.14.59/2494 - Ausgabedatum: 11/10/09
&lt;br&gt;08:38:00 
&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26298657.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26295823</id>
	<title>Re: Is C::A::PSGI available?</title>
	<published>2009-11-10T20:18:50Z</published>
	<updated>2009-11-10T20:18:50Z</updated>
	<author>
		<name>Gurunandan R. Bhat-2</name>
	</author>
	<content type="html">Indeed, now it does. 
&lt;br&gt;Thanks. 
&lt;br&gt;&lt;br&gt;&lt;br&gt;On Tue, 2009-11-10 at 20:39 -0500, Mark Stosberg wrote:
&lt;br&gt;&lt;div class='shrinkable-quote'&gt;&lt;br&gt;&amp;gt; On Sat, 07 Nov 2009 10:48:02 +0530
&lt;br&gt;&amp;gt; &amp;quot;Gurunandan R. Bhat&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26295823&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;guru@...&lt;/a&gt;&amp;gt; wrote:
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; Hi,
&lt;br&gt;&amp;gt; &amp;gt; 
&lt;br&gt;&amp;gt; &amp;gt; &amp;nbsp; &amp;nbsp; Is CGI::Application::PSGI available? The link from the Plack website
&lt;br&gt;&amp;gt; &amp;gt; gives a 404.
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; Are you referring to this link?
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &lt;a href=&quot;http://search.cpan.org/dist/CGI-Application-PSGI&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://search.cpan.org/dist/CGI-Application-PSGI&lt;/a&gt;&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; It works now. Miyagawa wrote the module, but asked me to upload and maintain it. 
&lt;br&gt;&amp;gt; I endorse the Plack/PSGI project ( &lt;a href=&quot;http://www.plackperl.org/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.plackperl.org/&lt;/a&gt;&amp;nbsp;)
&lt;br&gt;&amp;gt; 
&lt;br&gt;&amp;gt; &amp;nbsp; &amp;nbsp; Mark
&lt;br&gt;&amp;gt; 
&lt;/div&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/UTF-8-output-tp26158630p26295823.html" />
</entry>

<entry>
	<id>tag:old.nabble.com,2006:post-26295051</id>
	<title>Re: proposal for new cgiapp hook: loaded_html_tmpl</title>
	<published>2009-11-10T18:30:21Z</published>
	<updated>2009-11-10T18:30:21Z</updated>
	<author>
		<name>Ron Savage</name>
	</author>
	<content type="html">Hi Mark
&lt;br&gt;&lt;br&gt;Quoting &amp;quot;Mark Stosberg&amp;quot; &amp;lt;&lt;a href=&quot;http://old.nabble.com/user/SendEmail.jtp?type=post&amp;post=26295051&amp;i=0&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;mark@...&lt;/a&gt;&amp;gt;:
&lt;br&gt;&lt;br&gt;&amp;gt; To proceed, I'd like to hear at least a small chorus of voices &amp;nbsp;
&lt;br&gt;&amp;gt; claiming that the they use
&lt;br&gt;&amp;gt; the die_on_bad_params feature.
&lt;br&gt;&lt;br&gt;I always use it, since in testing I want to know immediately if there &amp;nbsp;
&lt;br&gt;is a problem.
&lt;br&gt;&lt;br&gt;I assume those who don't use it do so in order to avoid having to set &amp;nbsp;
&lt;br&gt;every parameter in the template. Is that right?
&lt;br&gt;&lt;br&gt;&lt;br&gt;##### &amp;nbsp;CGI::Application community mailing list &amp;nbsp;################
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;To unsubscribe, or change your message delivery options, &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;visit: &amp;nbsp;&lt;a href=&quot;http://www.erlbaum.net/mailman/listinfo/cgiapp&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/mailman/listinfo/cgiapp&lt;/a&gt;&amp;nbsp; &amp;nbsp; ##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Web archive: &amp;nbsp; &lt;a href=&quot;http://www.erlbaum.net/pipermail/cgiapp/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://www.erlbaum.net/pipermail/cgiapp/&lt;/a&gt;&amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp;Wiki: &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://cgiapp.erlbaum.net/&quot; target=&quot;_top&quot; rel=&quot;nofollow&quot;&gt;http://cgiapp.erlbaum.net/&lt;/a&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;## &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;##
&lt;br&gt;################################################################
&lt;br&gt;&lt;br&gt;&lt;p&gt;From forum: &lt;a href=&quot;http://old.nabble.com/cgiapp%40lists.erlbaum.net-f13613.html&quot; embed=&quot;fixTarget[13613]&quot; target=&quot;_top&quot; &gt;cgiapp@lists.erlbaum.net&lt;/a&gt;&lt;/p&gt;</content>
	<link rel="alternate" type="text/html" href="http://old.nabble.com/proposal-for-new-cgiapp-hook%3A-loaded_html_tmpl-tp26033423p26295051.html" />
</entry>

</feed>
