".gettext("Popup")."";
// test existence message
if(isset($message)) {
$file = fopen("/tmp/popup.txt","w+");
fwrite($file,($message));
fclose($file);
}
// recuperation du champ hidden de pop_group.php
$filter= $_POST['nomgroupe'];
$group=search_groups ("(cn=".$filter.")");
$uids = search_uids ("(cn=".$filter.")");
$people = search_people_groups ($uids,"(sn=*)","cat");
#$TimeStamp_1=microtime();
#############
# DEBUG #
#############
#echo "debug :Temps de recherche = ".duree($TimeStamp_0,$TimeStamp_1)." s
";
#############
# Fin DEBUG #
#############
if (count($people)) {
// affichage des r?sultats
// Nettoyage des _ dans l'intitul? du groupe
$intitule = strtr($filter,"_"," ");
echo "
".gettext("Pop Up vers")." $intitule ".$group[0]["description"]."
\n";
echo "".gettext("Il y a ").count($people).gettext(" membre");
if ( count($people) >1 ) echo "s";
echo gettext(" dans ce groupe.")."
\n";
echo "".gettext("Les résultats du Pop Up sont :")."
";
$nmbconnect=0;
for ($loop=0; $loop < count($people); $loop++) {
$uid=$people[$loop]["uid"];
$connect=`smbstatus -u $uid|grep $uid`;
if (empty($connect)) {
// echo "Pop Down :-)
";
// echo "
";
// echo "
";
// echo $people[$loop]["fullname"]."
pas de session ouverte | | \n";
} else {
$nmbconnect=$nmbconnect +1;
// recherche de la machine sur laquelle est connecte
// l'utilisateur et envoi du pop up
if (($tri=="") OR (($tri != 0) AND ($tri != 2)) ) $tri=2; // tri par ip par defaut
// modif du tri
// /usr/bin/smbstatus -S| awk 'NF>6 {print $2,$5,$6}'|sort -u +2
// le +POS de la fin donne le rang de la variable de tri (0,1,2...)
if ("$smbversion" == "samba3") {
exec ("/usr/bin/smbstatus -b | grep -v root | grep -v nobody | awk 'NF>4 {print $2,$4,$5}' | sort -u",$out); }
elseif ($tri == 0) {
exec ("/usr/bin/smbstatus -S | grep -v root | grep -v nobody | awk 'NF>6 {print $2,$5,$6}' | sort -u",$out);
} else {
exec ("/usr/bin/smbstatus -S | grep -v root | grep -v nobody | awk 'NF>6 {print $2,$5,$6}' | sort -u +2",$out);
}
for ($i = 0; $i < count($out) ; $i++) {
$test=explode(" ",$out[$i]);
$test[2]=strtr($test[2],"()"," ");
$test[2]=trim($test[2]);
$uidtest=$test[0];
$machine=$test[1];
$ip=$test[2];
if ("$uid" == "$uidtest") {
exec ("cat /tmp/popup.txt|smbclient -U 'Administrateur Samba Edu 3' -M $test[1]");
echo "".$machine."".gettext(" est destinataire du Pop Up (session ouverte par")." ".$people[$loop]["fullname"]." )\n";
echo "
";
}
}
} //fin else { $nmbconnect=$nmbconnect +1;
} //fin for ($loop=0; $loop < count($people); $loop++)
} else {
echo " ".gettext("Pas de membres")."".gettext(" dans le groupe")." $filter.
";
}
if ($nmbconnect==0) {
echo"".gettext("pas d'émission de Pop Up car il n'y aucun membre du groupe connecté !")."";
} else {
echo "".gettext("Nombre total de Pop Up émis:")." $nmbconnect
\n";
}
}
include ("pdp.inc.php");
?>