Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision e6491c8e

Von Sven Schöling vor mehr als 3 Jahren hinzugefügt

  • ID e6491c8ee7bf0ca7c28e4d6da4f0239e039b7325
  • Vorgänger 2b8ec027
  • Nachfolger dae5fe9b

Form::_get_request_uri nach SL::Request::request_uri verschoben.

Form::_add_to_request_uri ersatzlos gelöscht.

Unterschiede anzeigen:

SL/Request.pm
7 7
use List::Util qw(first max min sum);
8 8
use List::MoreUtils qw(all any apply);
9 9
use Exporter qw(import);
10
use URI;
10 11

  
11 12
use SL::Common;
12 13
use SL::JSON;
......
21 22
use Rose::Object::MakeMethods::Generic
22 23
(
23 24
  scalar                  => [ qw(applying_database_upgrades post_data) ],
24
  'scalar --get_set_init' => [ qw(cgi layout presenter is_ajax type cookies) ],
25
  'scalar --get_set_init' => [ qw(cgi layout presenter is_ajax type cookies request_uri) ],
25 26
);
26 27

  
27 28
sub init_cgi {
......
399 400
  return $target;
400 401
}
401 402

  
403
sub init_request_uri {
404
  return URI->new($ENV{HTTP_REFERER})->canonical() if $ENV{HTTP_X_FORWARDED_FOR};
405
  return URI->new                                  if !$ENV{REQUEST_URI}; # for testing
406

  
407
  my $scheme =  $::request->is_https ? 'https' : 'http';
408
  my $port   =  $ENV{SERVER_PORT};
409
  $port      =  undef if (($scheme eq 'http' ) && ($port == 80))
410
                      || (($scheme eq 'https') && ($port == 443));
411

  
412
  my $uri    =  URI->new("${scheme}://");
413
  $uri->scheme($scheme);
414
  $uri->port($port);
415
  $uri->host($ENV{HTTP_HOST} || $ENV{SERVER_ADDR});
416
  $uri->path_query($ENV{REQUEST_URI});
417
  $uri->query('');
418

  
419
  return $uri;
420
}
421

  
402 422
1;
403 423

  
404 424
__END__

Auch abrufbar als: Unified diff