#!/usr/local/bin/perl require Base; require URI::Escape; package Cookie; @ISA = qw( Base ); sub new { my $this = shift; my $class = ref($this) || $this; my $self = new Base; bless $self, $class; my ($key,$val) = (); foreach (split(/; /,$ENV{HTTP_COOKIE})) { ($key,$val) = split(/=/,$_); $self->set( $key => URI::Escape::uri_unescape($val)); } my $record = $self->get(cookie_record); my @fields = split(/\|/,$self->get(cookie_fields)); foreach (split(/\|/,$record)) { $self->set(shift(@fields) => $_); } return $self; } 1;