5.20 Sun Apr 24 17:00:00 2005
- improved uploads and parameters
- - added $c->req->protocol and $c->req->secure
+ - added $c->req->protocol, $c->req->secure and $c->req->user
- improved error message when forwarding to unknown module
- fixed win32 installer
- added deep recursion detection
sub prepare_uploads { }
-=item $c->retrieve_components
-
-Retrieve Components.
-
-=cut
-
-sub retrieve_components {
- my $self = shift;
-
- my $class = ref $self || $self;
- eval <<"";
- package $class;
- import Module::Pluggable::Fast
- name => '_components',
- search => [
- '$class\::Controller', '$class\::C',
- '$class\::Model', '$class\::M',
- '$class\::View', '$class\::V'
- ],
- require => 1;
-
- if ( my $error = $@ ) {
- chomp $error;
- die qq/Couldn't load components "$error"/;
- }
-
- return $self->_components;
-}
-
=item $c->run
Starts the engine.
sub setup_components {
my $self = shift;
-
+
# Components
my $class = ref $self || $self;
eval <<"";
$c->request->address( $c->apache->connection->remote_ip );
$c->request->hostname( $c->apache->connection->remote_host );
$c->request->protocol( $c->apache->protocol );
-
+ $c->request->user( $c->apache->user );
+
if ( $ENV{HTTPS} || $c->apache->get_server_port == 443 ) {
$c->request->secure(1);
}
=over 4
-=item $c->prepare_request($r)
-
-=cut
-
-sub prepare_request {
- my ( $c, $r ) = @_;
- $c->apache( Apache::Request->new($r) );
-}
-
-
=item $c->prepare_parameters
=cut
$c->request->param(@params);
}
+=item $c->prepare_request($r)
+
+=cut
+
+sub prepare_request {
+ my ( $c, $r ) = @_;
+ $c->apache( Apache::Request->new($r) );
+}
+
=item $c->prepare_uploads
=cut
use CGI;
+our @compile = qw[
+ delete
+ http
+ new_MultipartBuffer
+ param
+ parse_keywordlist
+ read_from_client
+ read_multipart
+ tmpFileName
+ uploadInfo
+ url_param
+ user_agent
+];
+
+CGI->compile(@compile);
+
__PACKAGE__->mk_accessors('cgi');
=head1 NAME
=head1 DESCRIPTION
This is the Catalyst engine specialized for the CGI environment (using the
-C<CGI> and C<CGI::Cookie> modules). Normally Catalyst will select the
-appropriate engine according to the environment that it detects, however you
-can force Catalyst to use the CGI engine by specifying the following in your
-application module:
-
- use Catalyst qw(-Engine=CGI);
-
-The performance of this way of using Catalyst is not expected to be
-useful in production applications, but it may be helpful for development.
+C<CGI> and C<CGI::Cookie> modules).
=head1 METHODS
$c->request->address( $ENV{REMOTE_ADDR} );
$c->request->hostname( $ENV{REMOTE_HOST} );
$c->request->protocol( $ENV{SERVER_PROTOCOL} );
+ $c->request->user( $ENV{REMOTE_USER} );
if ( $ENV{HTTPS} || $ENV{SERVER_PORT} == 443 ) {
$c->request->secure(1);
__PACKAGE__->mk_accessors(
qw/action address arguments body base cookies headers hostname match
- method parameters path protocol secure snippets uploads/
+ method parameters path protocol secure snippets uploads user/
);
*args = \&arguments;
$req->snippets;
$req->upload;
$req->uploads;
- $req->user_agent
+ $req->user;
+ $req->user_agent;
See also L<Catalyst>.
my $upload = $c->request->uploads->{field};
my $upload = $c->request->uploads->{field}->[0];
+=item $req->user
+
+Contains the user name of user if authentication check was successful.
+
=item $req->user_agent
Shortcut to $req->headers->user_agent. User Agent version string.