package cookieprob; use strict; use base 'CGI::Application'; use HTML::Template; use CGI::Application::Plugin::Session; sub setup { my $self=shift; $self->start_mode('add'); $self->run_modes('add' => 'add_mode'); $self->tmpl_path('../tmpl');#('/.'); } sub cgiapp_init { my $self = shift; # Configure the session $self->session_config( CGI_SESSION_OPTIONS => [ "driver:file", $self->query, {Directory=>'../tmp'}], DEFAULT_EXPIRY => '+1w', COOKIE_PARAMS => { -expires => '+1h', -path => '../tmp', }, SEND_COOKIE => 1 ); } sub add_mode { my $self = shift; my $qry = $self->query(); my $messageOut; # Load the template my $template = $self->load_tmpl('add.tmpl.html'); my $remember = $qry->param("remember"); if(!$remember) { $template->param(debugmessage => "No 'remember' parameter"); return $template->output; } $template->param(asin => $remember); my $session = $self->session; my @vals; if($session->param("values")) { @vals = split(/,/, $session->param("values")); } push(@vals, $remember); # add new value to list of vals. my $valueList = join(",", @vals); $session->param("values", $valueList); $messageOut = $valueList; #$template->param("debugmessage" => $valueList); #my $temp; # Retrieve session info and stick on screen foreach my $key (keys(%{$session->dataref()})) { $messageOut=$messageOut."
$key = ".$session->param($key); } $template->param(debugmessage => $messageOut); # return the template output return $template->output; } 1;