
| Current Path : /var/www/web-klick.de/dsh/90_akt/PPLTest.old/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/web-klick.de/dsh/90_akt/PPLTest.old/action.cgi |
#!/usr/bin/perl
use lib qw(/akt/appserv);
use CGI;
use CGI::Ajax;
use DivBasicF::FileComSimple;
use DivBasicF::COMGUI;
use Data::Dumper;
use strict;
#$main::___gui___ = IUI_Test::AutoTestGUI->new([]);
$main::___gui___ = DivBasicF::COMGUI->new([]);
$main::___url___ = "http://127.0.0.1/iuitest/cgi-bin/action.cgi";
my $o; my @parnames; $main::___vars___ = [];
my $query = CGI->new();
@parnames = $query->param();
foreach $o (sort @parnames) { push(@$main::___vars___,$o,$query->param($o)); }
@parnames = $query->cookie();
$o = { @$main::___vars___ };
$main::___session___ = $o->{'session'};
foreach $o (sort @parnames) {
next if ($o eq "session" and $main::___session___);
push(@$main::___vars___,$o,$query->cookie($o));
}
$o = { @$main::___vars___ };
#print Dumper($o);
#if ($o->{'session'} eq "..") {
# $o->{'session'} = ".";
# unlink("session.txt");
#}
#if ($o->{'session'} eq ".") {
# $main::___session___ = "";
# if (-f "session.txt") {
# open(FFILE,"<session.txt");
# $main::___session___ = join("",<FFILE>);
# close(FFILE);
# if ($main::___session___ =~ /session(.*?)([a-z0-9]+)/) {
# $main::___session___ = $2;
# }
# unlink("session.txt");
# }
# $o->{'session'} = $main::___session___;
# $main::___session___ = ".";
#}
$main::___session___ = $o->{'session'};
my $text = "";
#if (1) {
my $ajax = CGI::Ajax->new("jfunc" => \&ajax_func, "skip_header" => 1);
$text = $ajax->build_html($query,\&site);
if ($main::___session___) {
$main::___session___ = "" if ($main::___session___ eq "___DELETE___");
$text = $query->header(-cookie =>
$query->cookie(-name => "session",
-value => $main::___session___)) . $text;
} else {
$text = $query->header() . $text;
}
#} else {
# $text = site();
#}
#if ($main::___session___) {
# open(FFILE,">session.txt");
# print FFILE $text;
# close(FFILE);
#}
print $text;
sub site { return(ajax_func(0,@$main::___vars___)); }
sub ajax_func {
my @text = @_;
my $erg = [];
my $com = DivBasicF::FileComSimple->new(["xtest.db,cxtest",67002000,100,2]);
if ($main::___session___) {
$com->connection($main::___session___);
}
if (!($text[0])) { # Wenn html-Eingabe (parse_html)
shift(@text);
my $pars = { @text };
@text = ();
foreach $o (sort keys %$pars) {
next if ($o !~ /^p/);
push(@text,$pars->{$o});
}
}
$erg = $com->msg(["step",@text]);
if ($erg =~ /^NOT FOUND/) {
$main::___session___ = "___DELETE___";
return("<HTML><BODY>Connection lost.</BODY></HTML>");
}
$erg = $com->get();
if ($main::___gui___) {
if ($erg->[2] =~ /\[QUERY\_([a-zA-Z0-9\_]+)\]/) {
$erg = $main::___gui___->query([$1,@$erg]);
}
}
# return("<HTML>$erg END</HTML>");
if (!(ref($erg)) or $erg->[0] !~ /\<HTML\>/) {
if (!(ref($erg))) { $erg = ["Kein Rueckgabewert"]; }
$main::___session___ = "___DELETE___";
return("<HTML><BODY><H4>Interner Server antwortet nicht</H4>\n" .
"<P>Fehlermeldung:</P>\n<P>".$erg->[0]."</P></BODY></HTML>");
} else {
$main::___session___ = $com->get_connection();
if ($erg->[0] =~ s/---SESSION---/$main::___session___/g) {
$main::___session___ = "";
}
$erg->[0] =~ s/---URL---/$main::___url___/gs;
}
return($erg->[0]);
}