# ---- CGI my $cgi = CGI->new();                                                           # neues CGI-Objekt erzeugen my $query = $cgi->Vars();                                                       # Parameter in Hash einlesen # ---- SESSION - Settings (wird erst nach Login erstellt) $ldata->{'data'}->{'sessionFolder'} = File::Spec->tmpdir() if File::Spec->tmpdir(); my $session = new CGI::Session(undef, $cgi, {Directory=>$ldata->{'data'}->{'sessionFolder'}}); $session->name("sid"); $session->expire($ldata->{'data'}->{'sessionExpires'}); $session->load_param($cgi); # felder angeben? # ---- TEMPLATE my $template = HTML::Template->new(    filename => $ldata->{'data'}->{'main_template'},    die_on_bad_params => $ldata->{'data'}->{'template'}->{'die_on_bad_params'},    vanguard_compatibility_mode => $ldata->{'data'}->{'template'}->{'vanguard_compatibility_mode'},    strict => $ldata->{'data'}->{'template'}->{'strict'},    associate => [$cgi, $session],    case_sensitive => 1, ); # $ldata->setGlobTemplateVars( $template ); # -------------------------------------------------------- # LOGIK # -------------------------------------------------------- if( $session->param('logedIn') ) { # wenn session existiert # -------------- main-logic-part $ldata->setSeite( $template, 'Administration', "Session: $session->id(); Status: " . $session->param('logedIn') ); # -------------- /main-logic-part }else{ #wenn keine session existiert / session nicht gültig ist if(exists($query->{'action'}) and defined($query->{'action'}) and $query->{'action'} eq 'login' and exists($query->{'usn'}) and defined($query->{'usn'}) and exists($query->{'pwd'}) and defined($query->{'usn'}) ){ # Wenn Login, Action, USN und PWD übergeben, Validate! if( main::login( $query->{'usn'}, $ldata, $dbh ) ){ # Fehler beim Login (falscher USN | falsches PWD), erneut einloggen $ldata->setSeite( $template, 'Login - Fehler', main::getTemplate('s_login', $ldata, [$template]) ); }else{ # Login ok, weiter main::setLoginDaten( $session, $cgi ); # -- Ausgabe setzen $ldata->setSeite( $template, 'Login erfolgreich', main::getTemplate('s_login_succes', $ldata, [$template]) ); } }else{ # Erstaufruf Login-Form $ldata->setSeite( $template, 'Login', main::getTemplate('s_login', $ldata, [$template]) ); } } # -- Ausgabe print $cgi->header(-expires=>'+1s', -type=>'text/html', -cookie=> $cgi->cookie( 'sid' => $session->id() ), ); warningsToBrowser(1); main::setBenchmark( $template ); # Benchmark print $template->output();