Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 5494f687

Von Sven Schöling vor etwa 13 Jahren hinzugefügt

  • ID 5494f687372570c9d1c5eb5c6aad73767e50820a
  • Vorgänger a064deaf
  • Nachfolger 3b9a5301

$::cgi entfernt.

Verfahren:
- Für alle Vorkommen von "my $cgi = $::cgi;":
ersetzt durch my $cgi = $::request->{cgi}->new({}) ersetzt

- Wenn in einer Datei alle my $cgi rausgefallen sind auch use CGI entfernt.

- Initialisierung von $::cgi in scripts und Dispatcher entfernt und in dei
Initialisierung von $::request eingebaut.

- cgi aus der Liste der kanonischen globals genommen.

Zu CGI:
- CGI::func und CGI->func sind beides valide Werte, sind aber intern buggy wie
Hölle. CGI:: erzeugt ein Dummyobjekt mit CGI->new, und klobbert damit
cookies. CGI-> ist noch schlimmer und ruft ${CGI}->{.cookies} auf.
- CGI->new({}) ist schneller als CGI->new(''), deshalb habe ich diese version genommen.
Auf meinem Rechner schafft die erste Version etwa 32k/s, die zweite 28k/s.
- CGI kompiliert benötigte Funktionen beim ersten Aufruf über AUTOLOAD.
- cookie benötigen ein $cgi Objekt.

Unterschiede anzeigen:

SL/Form.pm
464 464
  my $self = shift;
465 465

  
466 466
  if (@_) {
467
    map({ print($main::cgi->hidden("-name" => $_, "-default" => $self->{$_}) . "\n"); } @_);
467
    map({ print($::request->{cgi}->hidden("-name" => $_, "-default" => $self->{$_}) . "\n"); } @_);
468 468
  } else {
469 469
    for (sort keys %$self) {
470 470
      next if (($_ eq "header") || (ref($self->{$_}) ne ""));
471
      print($main::cgi->hidden("-name" => $_, "-default" => $self->{$_}) . "\n");
471
      print($::request->{cgi}->hidden("-name" => $_, "-default" => $self->{$_}) . "\n");
472 472
    }
473 473
  }
474 474
  $main::lxdebug->leave_sub();
......
624 624
  my $self     = shift;
625 625
  my %params   = @_;
626 626

  
627
  my $cgi      = $main::cgi;
628
  $cgi       ||= CGI->new('');
627
  my $cgi      = $::request->{cgi};
629 628

  
630 629
  my $session_cookie;
631 630
  if (defined $main::auth) {
......
762 761
  my ($self) = @_;
763 762

  
764 763
  my $db_charset = $::lx_office_conf{system}->{dbcharset} || Common::DEFAULT_CHARSET;
765
  my $cgi        = $main::cgi || CGI->new('');
766
  my $output     = $cgi->header('-charset' => $db_charset);
764
  my $output     = $::request->{cgi}->header('-charset' => $db_charset);
767 765

  
768 766
  $main::lxdebug->leave_sub();
769 767

  
......
780 778
  die "Headers already sent" if $self->{header};
781 779
  $self->{header} = 1;
782 780

  
783
  my $cgi = $main::cgi || CGI->new('');
784
  return $cgi->redirect($new_uri);
781
  return $::request->{cgi}->redirect($new_uri);
785 782
}
786 783

  
787 784
sub set_standard_title {

Auch abrufbar als: Unified diff