webgui for windows changes

This commit is contained in:
JT Smith 2006-07-21 20:42:50 +00:00
parent db204ea1d1
commit 9f3ff77dbd
5 changed files with 123 additions and 120 deletions

View file

@ -86,7 +86,8 @@ sub contentHandler {
### nstantiate the API for this httpd instance.
my $s = Apache2::ServerUtil->server;
### Open new or existing user session based on user-agent's cookie.
my $session = WebGUI::Session->open($s->dir_config('WebguiRoot'),$configFile,$r, $s);
my $request = Apache2::Request->new($r);
my $session = WebGUI::Session->open($s->dir_config('WebguiRoot'),$configFile, $request, $s);
if ($session->env->get("HTTP_X_MOZ") eq "prefetch") { # browser prefetch is a bad thing
$session->http->setStatus("403","We don't allow prefetch, because it increases bandwidth, hurts stats, and can break web sites.");
$session->http->sendHeader;
@ -411,7 +412,8 @@ sub uploadsHandler {
my @privs = split("\n",$fileContents);
unless ($privs[1] eq "7" || $privs[1] eq "1") {
my $s = Apache2::ServerUtil->server;
my $session = WebGUI::Session->open($s->dir_config('WebguiRoot'),$configFile,$r, $s);
my $request = Apache2::Request->new($r);
my $session = WebGUI::Session->open($s->dir_config('WebguiRoot'),$configFile, $request, $s);
my $hasPrivs = ($session->var->get("userId") eq $privs[0] || $session->user->isInGroup($privs[1]) || $session->user->isInGroup($privs[2]));
$session->close();
if ($hasPrivs) {

View file

@ -15,7 +15,6 @@ package WebGUI::Session;
=cut
use strict;
use Apache2::Request;
use WebGUI::Config;
use WebGUI::SQL;
use WebGUI::User;
@ -368,7 +367,7 @@ sub open {
my $config = WebGUI::Config->new($webguiRoot,$configFile);
my $self = {_config=>$config, _server=>$server};
bless $self , $class;
$self->{_request} = Apache2::Request->new($request) if (defined $request);
$self->{_request} = $request if (defined $request);
my $sessionId = shift || $self->http->getCookies->{"wgSession"} || $self->id->generate;
$sessionId = $self->id->generate unless $self->id->valid($sessionId);
my $noFuss = shift;

View file

@ -16,8 +16,6 @@ package WebGUI::Session::Http;
use strict;
use Apache2::Cookie;
use APR::Request::Apache2;
=head1 NAME
@ -78,6 +76,8 @@ Retrieves the cookies from the HTTP header and returns a hash reference containi
sub getCookies {
my $self = shift;
if ($self->session->request) {
# Have to require this instead of using it otherwise it causes problems for command-line scripts on some platforms (namely Windows)
require APR::Request::Apache2;
my $jarHashRef = APR::Request::Apache2->handle($self->session->request)->jar();
return $jarHashRef if $jarHashRef;
return {};
@ -267,6 +267,7 @@ sub setCookie {
my $ttl = shift;
$ttl = (defined $ttl ? $ttl : '+10y');
if ($self->session->request) {
require Apache2::Cookie;
my $cookie = Apache2::Cookie->new($self->session->request,
-name=>$name,
-value=>$value,

View file

@ -24,8 +24,6 @@ use Storable qw(nstore retrieve);
use strict;
use warnings;
use WebGUI::Utility;
use Apache2::Request;
use Apache2::Upload;
=head1 NAME
@ -198,6 +196,8 @@ sub addFileFromFormPost {
my $formVariableName = shift;
my $attachmentLimit = shift || 99999;
return "" if ($self->session->http->getStatus() =~ /^413/);
require Apache2::Request;
require Apache2::Upload;
my $filename;
my $attachmentCount = 1;
foreach my $upload ($self->session->request->upload($formVariableName)) {