Merge branch '8' into psgi

Conflicts:
	lib/WebGUI/Asset/Template.pm
	lib/WebGUI/Session/Scratch.pm
This commit is contained in:
Doug Bell 2010-04-21 13:03:03 -05:00
commit cb3f83a93e
45 changed files with 987 additions and 860 deletions

View file

@ -66,7 +66,7 @@ sub delete {
my $value = delete $self->{_data}{$name};
my $session = $self->session;
my $id = $session->getId;
eval{$session->cache->set(["sessionscratch",$id], $self->{_data}, $session->setting->get('sessionTimeout'))};
$session->cache->set("sessionscratch_".$id, $self->{_data}, $session->setting->get('sessionTimeout'));
$session->db->write("delete from userSessionScratch where name=? and sessionId=?", [$name, $id]);
return $value;
}
@ -85,7 +85,7 @@ sub deleteAll {
delete $self->{_data};
my $session = $self->session;
my $id = $session->getId;
eval{$session->cache->delete(["sessionscratch",$id])};
$session->cache->remove("sessionscratch_".$id);
$session->db->write("delete from userSessionScratch where sessionId=?", [$id]);
}
@ -108,7 +108,7 @@ sub deleteName {
return undef unless ($name);
delete $self->{_data}{$name};
my $session = $self->session;
eval{$session->cache->flush};
$session->cache->clear;
$session->db->write("delete from userSessionScratch where name=?", [$name]);
}
@ -135,7 +135,7 @@ sub deleteNameByValue {
return undef unless ($name and defined $value);
delete $self->{_data}{$name} if ($self->{_data}{$name} eq $value);
my $session = $self->session;
eval{$session->cache->flush};
$session->cache->clear;
$session->db->write("delete from userSessionScratch where name=? and value=?", [$name,$value]);
}
@ -186,7 +186,7 @@ sub new {
my ($class, $session) = @_;
my $self = bless { _session => $session }, $class;
weaken $self->{_session};
my $scratch = eval{$session->cache->get(["sessionscratch",$session->getId])};
my $scratch = $session->cache->get("sessionscratch_".$session->getId);
unless (ref $scratch eq "HASH") {
$scratch = $session->db->buildHashRef("select name,value from userSessionScratch where sessionId=?",[$session->getId], {noOrder => 1});
}
@ -242,7 +242,7 @@ sub set {
$self->{_data}{$name} = $value;
my $session = $self->session;
my $id = $session->getId;
eval{$session->cache->set(["sessionscratch",$id], $self->{_data}, $session->setting->get('sessionTimeout'))};
$session->cache->set("sessionscratch_".$id, $self->{_data}, $session->setting->get('sessionTimeout'));
$session->db->write("replace into userSessionScratch (sessionId, name, value) values (?,?,?)", [$id, $name, $value]);
}

View file

@ -59,7 +59,7 @@ sub end {
my $self = shift;
my $session = $self->session;
my $id = $self->getId;
eval{$session->cache->delete(['session',$id])};
$session->cache->remove($id);
$session->scratch->deleteAll;
$session->db->write("delete from userSession where sessionId=?",[$id]);
delete $session->{_user};
@ -164,7 +164,7 @@ sub new {
$self->start(1);
}
else { ##existing session requested
$self->{_var} = eval{$session->cache->get(['session',$sessionId])};
$self->{_var} = $session->cache->get($sessionId);
unless ($self->{_var}{sessionId} eq $sessionId) {
$self->{_var} = $session->db->quickHashRef("select * from userSession where sessionId=?",[$sessionId]);
}
@ -190,7 +190,7 @@ sub new {
}
else {
$self->{_var}{nextCacheFlush} = $time + $session->config->get("hotSessionFlushToDb");
eval{$session->cache->set(['session',$sessionId], $self->{_var}, $timeout)};
$session->cache->set($sessionId, $self->{_var}, $timeout);
}
$self->session->{_sessionId} = $self->{_var}{sessionId};
return $self;
@ -252,7 +252,7 @@ sub start {
userId => $userId
};
$self->session->{_sessionId} = $sessionId;
eval{$session->cache->set(['session',$sessionId], $self->{_var}, $timeout)};
$session->cache->set($sessionId, $self->{_var}, $timeout);
delete $self->{_var}{nextCacheFlush};
$session->db->setRow("userSession","sessionId",$self->{_var},$sessionId);
$self->{_sessionId} = $sessionId;
@ -271,7 +271,7 @@ sub switchAdminOff {
my $self = shift;
$self->{_var}{adminOn} = 0;
my $session = $self->session;
eval{$session->cache->set(['session',$self->getId], $self->{_var}, $session->setting->get('sessionTimeout'))};
$session->cache->set($self->getId, $self->{_var}, $session->setting->get('sessionTimeout'));
delete $self->{_var}{nextCacheFlush};
$session->db->setRow("userSession","sessionId", $self->{_var});
}
@ -288,7 +288,7 @@ sub switchAdminOn {
my $self = shift;
$self->{_var}{adminOn} = 1;
my $session = $self->session;
eval{$session->cache->set(['session',$self->getId], $self->{_var}, $session->setting->get('sessionTimeout'))};
$session->cache->set($self->getId, $self->{_var}, $session->setting->get('sessionTimeout'));
delete $self->{_var}{nextCacheFlush};
$self->session->db->setRow("userSession","sessionId", $self->{_var});
}