[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 #!/usr/bin/perl -w 2 3 # $Id: invertClasses.pl 7061 2012-04-02 09:22:45Z dbo $ 4 # Met à jour l'arborescence des partages Classes 5 # en en inversant le nom et le prenom dans le cas d'un login prenom.nom 6 # 7 # - eleve : login d'un eleve, la Classe est lue dans l'annuaire 8 # 9 # Denis Bonnenfant (denis.bonnenfant@diderot.org) 7 septembre 2007 : ajoût d'un cas possible de migration 10 11 # supprime les Warnings du module Se.pm 12 BEGIN { $SIG{'__WARN__'} = sub { warn $_[0] if $DOWARN } } 13 use Se; 14 $DOWARN = 1; # Warnings activés à nouveau 15 16 $PathClasses = '/var/se3/Classes'; 17 die("Syntaxe : invertClasses.pl login") if ($#ARGV != 0); 18 ($LOGIN) = @ARGV; 19 20 $lcs_ldap = Net::LDAP->new("$slapdIp"); 21 $lcs_ldap->bind( 22 dn => $adminDn, 23 password => $adminPw, 24 version => '3'); 25 26 # Recherche du dossier Eleve 27 # test de l'inversion prenom.nom 28 @NOM = split(/\./, $LOGIN); 29 if ( @NOM == 2 ) { 30 # on inverse 31 $ELEVE = @NOM[1] . "." . @NOM[0]; 32 @REP = <$PathClasses/Classe_*/$LOGIN>; 33 @REPINV = <$PathClasses/Classe_*/$ELEVE>; 34 if ( @REP > 0 ) { 35 foreach $rep (@REP) { 36 # print "inversion : " . ( 1 + $#REP ) ." répertoires trouvés pour $LOGIN !<br>\n"; 37 # print "$rep\n"; 38 $tmpClasse = $rep; 39 $tmpClasse =~ s!^$PathClasses/Classe_(.+)/$LOGIN$!$1!; 40 $res = $lcs_ldap->search(base => "$groupsDn", 41 scope => 'one', 42 filter => "(&(cn=Classe_*)(memberUid=$LOGIN))"); 43 warn $res->error if $res->code; 44 if ( ($res->entries) == 1 ) { 45 print "Inversion de $prenom.$nom -> $ELEVE<br>\n"; 46 system("/bin/mv '$PathClasses/Classe_$tmpClasse/$LOGIN' '$PathClasses/Classe_$tmpClasse/$ELEVE'") == 0 or warn " Erreur: /bin/mv '$PathClasses/Classe_$tmpClasse/$LOGIN' '$PathClasses/Classe_$tmpClasse/$ELEVE'\n"; 47 print "classe : $tmpClasse\n"; 48 print "inversion de " . $PathClasses . "/Classe_" . $tmpClasse . "/" . $LOGIN . " avec " . $ELEVE . " faite<br>\n"; 49 } 50 } 51 } 52 } 53 exit 0 ;
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |