Lemonldap-Portal-Standard
view release on metacpan or search on metacpan
examples/accueil.pl view on Meta::CPAN
my $ligne = Dumper ($entry) ;
#print STDERR "on cherche le profil : $ligne\n";
#
# construction tableau applidgcp
# foreach my $ligne (@mefiapplidgcp)
# {
# my @tab = split ';' ,$ligne;
# my $cle = 'APT_'.$tab[0];
# my $valeur = $ligne;
# $session{$cle} = $valeur;
# }
# foreach my $ligne (@mefiappliapt)
# {
# my ($arg,$arg2) = ( $ligne =~ /^(.+?);(.+?)$/ );
# $arg =~ s/ //g;
# $session{dgcp}{$arg} = $arg2;
# }
#
# mefiapplidgi
foreach my $ligne (@profilapplicatif)
{
my ($arg1,$arg2,$arg3) = ( $ligne =~ /^(.+?);(.+?);(.+)/ );
$arg1=~ s/ //g;
# $complement=":$suite";
$session{profilapplicatif}{$arg1} = $arg2;
}
# all is done
my $ligne = Dumper (%session) ;
$self->{infosession}= \%session;
}
#################
# end of example
#################
my $stack_user= Lemonldap::Portal::Standard->new('msg' => $mess,
# 'formateUser' => \&id_massage,
'setSessionInfo' => \&my_session
);
my $urlc;
my $urldc;
$retour=$stack_user->process(param => \%params,
server => $ldap_server,
port => $ldap_port,
DnManager => $dnmanager,
passwordManager => $pass,
branch => $ldap_branch_people
);
if ($retour) {
$message=$retour->message;
$erreur=$retour->error;
}
if ($erreur) {
my $ident = $retour->user;
my ($urlc,$urldc ) = $stack_user->getAllRedirection;
### il n y rien de passee , afficher la grille
##------------------------------------------------------------------------------
## Génération du HTML de la page de formulaire
##------------------------------------------------------------------------------
my $data = {
'urlc' => $urlc,
'urldc' => $urldc,
'message' => $message,
'identifiant' => $ident,
};
my $template=Template->new( $template_config );
print CGI::header();
$template->process( 'login.thtml', $data ) or die($template->error());
##==============================================================================
## Fin du fichier
##==============================================================================
exit;
}
##==============================================================================## Ici tout est ok il faut creer le hash sur la session
##==============================================================================
my $monhash= $retour->infoSession;
my %session;
tie %session, 'Apache::Session::Memorycached', undef, $serveur;
foreach (keys %{$monhash}) {
$session{$_}=$monhash->{$_} if $monhash->{$_} ;
}
my $session_id = $session{_session_id};
my $ligne = Dumper (%session) ;
my $urldc ;
my $urldc=$retour->getRedirection ;
untie( %session );
##---------------------------------------------------------------------------
## Création du cookie
##---------------------------------------------------------------------------
print STDERR "cook : $cookie_name - $domain - $path - $session_id \n";
#Positionnement de la valeur time_end
my $val_test;
if(defined($config->{InactivityTimeout}) && $inactivity!=0 ){
my $time_end = time() + $inactivity;
if (defined($config->{Encryptionkey})){
$timeout_key = $config->{Encryptionkey};
my $cipher = new Crypt::CBC(-key => $timeout_key,-cipher => 'Blowfish',-iv => 'lemonlda',-header => 'none');
$time_end = $cipher->encrypt_hex($time_end);
}
#Chaine utilise comme separateur entre l'id de session et le time_end
$sep = "sep";
#concatenation des deux valeurs
$val_test = $session_id.$sep.$time_end;
}else{
$val_test = $session_id;
}
my $cookie = CGI::cookie(
-name => $cookie_name,
( run in 0.558 second using v1.01-cache-2.11-cpan-5735350b133 )