[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 <?php 2 3 4 /** 5 6 * Expedie une popup a un group 7 * @Version $Id: respop_group.php 2932 2008-05-04 08:12:26Z plouf $ 8 9 * @Projet LCS / SambaEdu 10 11 * @auteurs Philippe Peter 12 * @auteurs Equipe Tice academie de Caen 13 14 * @Licence Distribue selon les termes de la licence GPL 15 16 * @note 17 */ 18 19 /** 20 21 * @Repertoire: annu 22 * file: respop_group.php 23 */ 24 25 26 27 28 include "entete.inc.php"; 29 include "ldap.inc.php"; 30 include "ihm.inc.php"; 31 32 require_once ("lang.inc.php"); 33 bindtextdomain('se3-annu',"/var/www/se3/locale"); 34 textdomain ('se3-annu'); 35 36 37 if ((is_admin("annu_can_read",$login)=="Y") || (is_admin("Annu_is_admin",$login)=="Y") || (is_admin("savajon_is_admin",$login)=="Y")) { 38 39 $messsage=$_POST['message']; 40 41 // Aide 42 $_SESSION["pageaide"]="Annuaire"; 43 44 echo "<h1>".gettext("Popup")."</h1>"; 45 46 47 // test existence message 48 49 if(isset($message)) { 50 $file = fopen("/tmp/popup.txt","w+"); 51 fwrite($file,($message)); 52 fclose($file); 53 } 54 55 // recuperation du champ hidden de pop_group.php 56 $filter= $_POST['nomgroupe']; 57 $group=search_groups ("(cn=".$filter.")"); 58 $uids = search_uids ("(cn=".$filter.")"); 59 $people = search_people_groups ($uids,"(sn=*)","cat"); 60 61 #$TimeStamp_1=microtime(); 62 ############# 63 # DEBUG # 64 ############# 65 #echo "<u>debug</u> :Temps de recherche = ".duree($TimeStamp_0,$TimeStamp_1)." s<BR><BR>"; 66 ############# 67 # Fin DEBUG # 68 ############# 69 70 if (count($people)) { 71 // affichage des r?sultats 72 // Nettoyage des _ dans l'intitul? du groupe 73 $intitule = strtr($filter,"_"," "); 74 echo "<H1>".gettext("Pop Up vers")." $intitule <font size=\"-2\">".$group[0]["description"]."</font></H1>\n"; 75 echo "<H3>".gettext("Il y a ").count($people).gettext(" membre"); 76 if ( count($people) >1 ) echo "s"; 77 echo gettext(" dans ce groupe.")."</H3>\n"; 78 79 echo "<H3>".gettext("Les résultats du Pop Up sont :")."</H3>"; 80 $nmbconnect=0; 81 82 for ($loop=0; $loop < count($people); $loop++) { 83 84 $uid=$people[$loop]["uid"]; 85 $connect=`smbstatus -u $uid|grep $uid`; 86 87 if (empty($connect)) { 88 // echo "<H1>Pop Down :-)</H1><P>"; 89 // echo "<br>"; 90 // echo "<br>"; 91 // echo $people[$loop]["fullname"]."</TD><TD>pas de session ouverte</TD><TD></TD>\n"; 92 } else { 93 $nmbconnect=$nmbconnect +1; 94 95 // recherche de la machine sur laquelle est connecte 96 // l'utilisateur et envoi du pop up 97 if (($tri=="") OR (($tri != 0) AND ($tri != 2)) ) $tri=2; // tri par ip par defaut 98 // modif du tri 99 // /usr/bin/smbstatus -S| awk 'NF>6 {print $2,$5,$6}'|sort -u +2 100 // le +POS de la fin donne le rang de la variable de tri (0,1,2...) 101 if ("$smbversion" == "samba3") { 102 exec ("/usr/bin/smbstatus -b | grep -v root | grep -v nobody | awk 'NF>4 {print $2,$4,$5}' | sort -u",$out); } 103 elseif ($tri == 0) { 104 exec ("/usr/bin/smbstatus -S | grep -v root | grep -v nobody | awk 'NF>6 {print $2,$5,$6}' | sort -u",$out); 105 } else { 106 exec ("/usr/bin/smbstatus -S | grep -v root | grep -v nobody | awk 'NF>6 {print $2,$5,$6}' | sort -u +2",$out); 107 } 108 109 for ($i = 0; $i < count($out) ; $i++) { 110 $test=explode(" ",$out[$i]); 111 $test[2]=strtr($test[2],"()"," "); 112 $test[2]=trim($test[2]); 113 114 $uidtest=$test[0]; 115 $machine=$test[1]; 116 $ip=$test[2]; 117 118 if ("$uid" == "$uidtest") { 119 exec ("cat /tmp/popup.txt|smbclient -U 'Administrateur Samba Edu 3' -M $test[1]"); 120 echo "<li><small><b>".$machine."</b>".gettext(" est destinataire du Pop Up (session ouverte par")." <b>".$people[$loop]["fullname"]." </b>)</small></li>\n"; 121 echo "<br>"; 122 } 123 } 124 } //fin else { $nmbconnect=$nmbconnect +1; 125 } //fin for ($loop=0; $loop < count($people); $loop++) 126 127 } else { 128 echo " <STRONG>".gettext("Pas de membres")."</STRONG>".gettext(" dans le groupe")." $filter.<BR>"; 129 } 130 131 if ($nmbconnect==0) { 132 echo"<b><small>".gettext("pas d'émission de Pop Up car il n'y aucun membre du groupe connecté !")."</small></b>"; 133 } else { 134 echo "<H3>".gettext("Nombre total de Pop Up émis:")." $nmbconnect </H3>\n"; 135 } 136 137 } 138 include ("pdp.inc.php"); 139 ?>
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 |