[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 <?php 2 3 /** 4 5 * Configure la synchro unison 6 * @Version $Id: synchro.php 8572 2015-03-15 14:47:16Z plouf $ 7 8 * @Projet LCS / SambaEdu 9 10 * @auteurs Denis Bonnenfant 11 12 * @Licence Distribue selon les termes de la licence GPL 13 14 * @note 15 16 */ 17 18 /** 19 20 * @Repertoire: /unison 21 * file: synchro.php 22 23 */ 24 25 26 require("entete.inc.php"); 27 require ("ihm.inc.php"); 28 29 require_once ("lang.inc.php"); 30 require_once ("ldap.inc.php"); 31 bindtextdomain('se3-infos',"/var/www/se3/locale"); 32 textdomain ('se3-infos'); 33 34 35 36 function modif_loginshell ($uid,$shell) { 37 38 39 /** 40 * Modifie le shell d'un utilisateur 41 42 * @Parametres $uid - Le nom 43 * @Parametres $shell - La valeur a rentrer, si entree vide on met /bin/true 44 * @Return Retourne 1 ou 0 si pas d'erreur 45 */ 46 47 global $ldap_server, $ldap_port, $dn, $defaultshell; 48 global $error; 49 50 if($defaultshell=="/bin/true") { 51 $ds = @ldap_connect ( $ldap_server, $ldap_port ); 52 if ( $ds ) { 53 $adminLdap=get_infos_admin_ldap2(); 54 $r=@ldap_bind($ds,$adminLdap["adminDn"],$adminLdap["adminPw"]); // Bind admin LDAP 55 if ($r) { 56 $uid_entree="uid=$uid,".$dn["people"]; 57 $mod_shell=array(); 58 $mod_shell["loginshell"][0]=$shell; 59 $result = ldap_modify ( $ds, $uid_entree, $mod_shell ); 60 } 61 @ldap_close($ds); 62 } 63 } 64 } 65 66 //aide 67 $_SESSION["pageaide"]="Synchro"; 68 69 if (( is_admin("system_is_admin",$login)!="Y") && ( is_admin("unison_users",$login)!="Y")) 70 die ("<h1>Synchronisation</h1><br>".gettext("Vous n'avez pas les droits suffisants pour accéder à cette fonction")."</BODY></HTML>"); 71 72 $activer = $_POST['activer']; 73 $docs = $_POST['docs']; 74 $classe = $_POST['classe']; 75 $valider = $_POST['valider']; 76 $eleves = $_POST['eleves']; 77 $groupe = $_POST['groupe']; 78 79 if (isset($valider)) { 80 if ("$activer" =="1") { 81 echo "<H4>".gettext("creation de l'installeur pour $login.<br> Un fichier unison_$login.zip est cr�� dans k:\Docs. Copiez ce fichier sur votre disque externe ou votre portable, d�zippez-le, puis lancez setup.exe")."</H4>"; 82 modif_loginshell($login,"/usr/bin/scponly"); 83 exec("/usr/bin/sudo /usr/share/se3/scripts/unison_keys.sh $login"); 84 } 85 if ("$docs" == "1") { 86 echo "<H4>".gettext("activation de la synchro de K:\Docs")."</H4>"; 87 exec("/usr/bin/sudo /usr/share/se3/scripts/unison_links.sh -d $login"); 88 } 89 if ("$classe" == "1") { 90 echo "<H4>".gettext("activation de la synchro de vos classes")."</H4>"; 91 exec("/usr/bin/sudo /usr/share/se3/scripts/unison_links.sh -c $login"); 92 } 93 if ("$classe" == "2") { 94 echo "<H4>".gettext("activation de la synchro de vos classes avec les r�pertoires �l�ves")."</H4>"; 95 exec("/usr/bin/sudo /usr/share/se3/scripts/unison_links.sh -e $login"); 96 } 97 if ("$docs" == "x") { 98 echo "<H4>".gettext("Desactivation de la synchro de K:\Docs")."</H4>"; 99 exec("/usr/bin/sudo /usr/share/se3/scripts/unison_links.sh -k $login"); 100 } 101 if ("$classe" == "x") { 102 echo "<H4>".gettext("Desactivation de la synchro de vos classes")."</H4>"; 103 exec("/usr/bin/sudo /usr/share/se3/scripts/unison_links.sh -x $login"); 104 } 105 if ("$groupe" == "x") { 106 echo "<H4>".gettext("Desactivation de la synchro de vos groupes")."</H4>"; 107 exec("/usr/bin/sudo /usr/share/se3/scripts/unison_links.sh -q $login"); 108 } 109 if ("$groupe" == "1") { 110 echo "<H4>".gettext("Activation de la synchro de vos groupes")."</H4>"; 111 exec("/usr/bin/sudo /usr/share/se3/scripts/unison_links.sh -p $login"); 112 } 113 114 115 require("pdp.inc.php"); 116 } 117 ?> 118 <H1>Synchronisation des dossiers</H1> 119 120 <form method="post" name='synchro' action="synchro.php"> 121 <table width='80%'> 122 <tr> 123 <td><h3>Activer la synchronisation :<br>(création de l'installeur<br> et génération d'une nouvelle clé d'authentification)<br> 124 </h3> 125 </td> 126 <td><input type='radio' name='activer' value=1 ></td> 127 </tr> 128 129 130 <tr><th align="left"><h3>Choisir les dossiers :</h3></th></tr> 131 <tr><td>Mes Documents (K:\Docs) <br><br></td> 132 <?php 133 system("[ -L /var/se3/synchro/$login/Docs ]", $test); 134 if ("$test" == "0"){ 135 echo " <td>Desactiver la synchro <input type='radio' name='docs' value='x' ></td></tr>"; 136 } else { 137 echo " <td>activer la synchro <input type='radio' name='docs' value=1 ></td></tr>"; 138 } 139 ?> 140 <tr><td>Classes <h3>( attention, le volume de données peut être trés important)</h3></td> 141 <?php 142 system("[ -d /var/se3/synchro/$login/Classes ]", $test); 143 if ("$test" == "0") { 144 echo " <td> Desactiver la synchro <input type='radio' name='classe' value='x' ></td></tr>"; 145 } else { 146 if (are_you_in_group($login, profs)) { 147 echo "<td>Activer la synchro <input type='radio' name='classe' value=1 >Classes sans élèves 148 <input type='radio' name='classe' value=2 >Classes avec élèves</td></tr>"; 149 } else { 150 echo "<td>Activer la synchro<input type='radio' name='classe' value=1 ></td></tr>"; 151 } 152 } 153 ?> 154 <tr><td>Groupes de Projets</td> 155 <?php 156 system("[ -d /var/se3/synchro/$login/Groupes ]", $test); 157 if ("$test" == "0") { 158 echo " <td>Desactiver la synchro <input type='radio' name='groupe' value='x' ></td></tr>"; 159 } else { 160 echo "<td>Activer la synchro <input type='radio' name='groupe' value=1 ></td></tr>"; 161 } 162 ?> 163 <tr><br><br><th align="left"><h3>Valider</h3></th> 164 <td><input type='submit' name='valider' value='Valider'> </td> 165 </tr></table></form> 166 <?php 167 require ("pdp.inc.php"); 168 ?>
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 |