Lemonldap-Portal-Standard
view release on metacpan or search on metacpan
examples/accueil.pl view on Meta::CPAN
my $ligne=Dumper(\%params);
my $FILE = "/usr/local/apache2/lemonldap/application.xml" ;
my $DOMAIN="int.noisiel.dgi";
my $conf= Lemonldap::Config::Parameters->new (
file => $FILE ,
cache => 'CONF' );
my $config= $conf->getDomain($DOMAIN) ;
$template_config=$config->{templates_options};
my $tempopt= 'templates_dir';
my $valeur= $config->{$tempopt};
my $templates_opt=$conf->formateLineHash($template_config,$tempopt,$valeur);
my $ligne=Dumper($templates_opt);
$template_config= $templates_opt;
$applications_list_url = $config->{Menu};
$login= $config->{Portal};
$cookie_name= $config->{Cookie};
$inactivity = $config->{InactivityTimeout};
$domain= ".".$DOMAIN;
$path= "/";
$ldap_server= $config->{ldap_server};
$ldap_branch_people=$config->{ldap_branch_people};
my $sessionrr= $conf->findParagraph('session','memcached');
my $serveur= $conf->formateLineHash($sessionrr->{SessionParams});
my $dnmanager= $config->{DnManager} ;
my $pass = $config->{passwordManager};
#######################
# exemple of call back
#######################
my $mess= {1 => 'Votre connexion a expiré vous devez vous authentifier de nouveau',
2 => 'Les champs "Identifiant" et "Mot de passe" doivent être remplis',
3 => 'Wrong directory manager account or password' ,
4 => ' n\'a pas été trouvé dans l\'annuaire',
5 => 'Mot de passe erroné' ,
};
#######################
#######################
#sub id_massage {
# my $self = shift;
#my $ligne=Dumper ($self);
# my $user =$self->{user} ;
# $user.= "-cp" if $user !~ /-cp$/;
# $self->{user} = $user;
#
#}
sub my_session {
###################
# initial operation
###################
my $self=shift;
my %session;
my $entry=$self->{entry} ;
$session{dn} = $entry->dn();
$self->{dn} = $entry->dn();
$session{uid} = $entry->get_value('uid');
# $session{cn} = $entry->get_value('cn');
# $session{personaltitle} = $entry->get_value('personaltitle');
# $session{mail} = $entry->get_value('mail');
# $session{title} = $entry->get_value('title');
## my overlay
# $session{departement} = $entry->get_value('departement');
# $session{codique} = $entry->get_value('codique');
# $session{boitier} = "lemonintimpots";
# $session{grade} = $entry->get_value('grade');
# $session{fonction} = $entry->get_value('fonction');
# $session{igap} = $entry->get_value('igap');
# my @mefiapplidgcp = $entry->get_value('mefiapplidgcp');
# my @mefiappliapt = $entry->get_value('mefiapplihabilitdgcp');
# my @mefiapplidgi = $entry->get_value('mefiapplidgi');
my @profilapplicatif = $entry->get_value('profilapplicatif');
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
( run in 1.699 second using v1.01-cache-2.11-cpan-8f98c5d2c55 )