Changeset 63
- Timestamp:
- 09/05/08 01:24:19 (4 months ago)
- Files:
-
- trunk/admin.asradius.html.php (modified) (5 diffs)
- trunk/admin.asradius.php (modified) (17 diffs)
- trunk/asradius.config.php (modified) (1 diff)
- trunk/asradius.html.php (modified) (1 diff)
- trunk/asradius.xml (modified) (1 diff)
- trunk/changelog.txt (modified) (1 diff)
- trunk/lang/admin.french.php (modified) (1 diff)
- trunk/toolbar.asradius.html.php (modified) (6 diffs)
- trunk/toolbar.asradius.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/admin.asradius.html.php
r59 r63 46 46 47 47 function maj($option, $text_maj, $isupdate) 48 /** 49 * SE : Verifie si le composant est a jour sur le site dedie. 50 * SI : 51 */ 48 52 { 49 53 global $confManager; … … 115 119 <input type="hidden" name="boxchecked" value="0" /> 116 120 <input type="hidden" name="hidemainmenu" value="0" /> 121 </form> 122 <?php 123 } 124 125 function cleanAllAcct(& $lists, $option) 126 /** 127 * SE : affiche le formulaire de validation de la suppression des informations 128 * d'accounting pour l'ensemble des abonnes du reseau. 129 * SI : 130 */ 131 132 { 133 134 ?> 135 <form action="index2.php?option=<?php echo $option; ?>&task=traitecleanallacct" method="post" name="adminForm" id="adminForm"> 136 <table width="100%"> 137 <tr> 138 <td align="center"> 139 <h2 align="center"><?php echo _ASR_CLEANALLACCT; ?></h2> 140 141 <div style='text-align: left;margin: 0px auto; width: 600px;'> 142 143 <h3 align="center"><?php echo _ASR_CLEANALLACCT_RESUME; ?></h3> 144 145 <fieldset> 146 <legend><strong><?php echo _ASR_CLEANALLACCT_SECTION; ?></strong></legend> 147 <?php echo _ASR_CLEANALLACCT_SECTION_DESC; ?> 148 </fieldset> 149 <br /> 150 <?php echo _ASR_CLEANALLACCT_SECTION_AREYOUSURE; ?> <?= $lists['areyousure']; ?> 151 </div> 152 </td> 153 </tr> 154 </table> 155 <input type="hidden" name="task" value=""> 156 <input type="hidden" name="option" value="<?= $option; ?>"> 117 157 </form> 118 158 <?php … … 150 190 <div style='text-align: left;margin: 0px auto; width: 600px;'> 151 191 152 <form action="index2.php?option=<?php echo $option; ?>&task=save Client" method="post" name="adminForm" id="adminForm">192 <form action="index2.php?option=<?php echo $option; ?>&task=saveclient" method="post" name="adminForm" id="adminForm"> 153 193 <h3 align="center"><?=$lists['cliprenom'];?> <?=$lists['clinom'];?></h3> 154 194 … … 268 308 } 269 309 270 function showListasradius($lists, &$rows, &$pageNav, $search, $option)310 function listasradius($lists, &$rows, &$pageNav, $search, $option) 271 311 /** 272 312 * SE : Affiche la liste des abonnés. … … 516 556 </tr> 517 557 </table> 518 <form action="index2.php?option=<?php echo $option; ?>&task=save Config" method="post" name="adminForm" id="adminForm">558 <form action="index2.php?option=<?php echo $option; ?>&task=saveconfig" method="post" name="adminForm" id="adminForm"> 519 559 520 560 <?php trunk/admin.asradius.php
r59 r63 74 74 /* Routage en fonction de la tache */ 75 75 switch ($task) { 76 case "save Config" :76 case "saveconfig" : 77 77 saveConfig($option); 78 78 break; 79 79 80 case "save Client" :80 case "saveclient" : 81 81 saveClient($option); 82 82 break; 83 83 84 case "show Config" :84 case "showconfig" : 85 85 showConfig($option); 86 86 break; 87 87 88 case "editClient" : 88 case "cleanacct" : 89 cleanAcct($option); 90 break; 91 92 case "cleanallacct" : 93 showCleanAllAcct($option); 94 break; 95 96 case "savecleanallacct" : 97 traiteCleanAllAcct($option); 98 break; 99 100 case "majasradius" : 101 majasradius($option); 102 break; 103 104 case "editclient" : 89 105 editClient($cid, $option); 90 106 break; … … 118 134 break; 119 135 120 case "majasradius" : 121 majasradius($option); 122 break; 123 124 case "delConfig" : 136 case "delconfig" : 125 137 delConfig($option); 126 138 break; … … 141 153 142 154 function delConfig($option) 155 /** 156 * SE : Efface la configuration enregistree dans la base de donnees du composant. 157 * SI : 158 */ 159 143 160 { 144 161 global $database; … … 146 163 $database->setQuery("DROP TABLE #__asradiusconfig"); 147 164 $result = $database->query(); 148 mosRedirect("index2.php?option=$option&task=showConfig"); 165 mosRedirect("index2.php?option=$option&task=showconfig"); 166 } 167 168 function cleanAcct($option) 169 /** 170 * SE : Efface tous les enregistrements d'accounting de la table radacct de freeradius 171 * sauf ceux dont la connexion est active. 172 * SI : Realise cette operation si on ne travail pas en mode simulation 173 */ 174 { 175 global $confManager; 176 177 if ($confManager->_config->allowActiveRadius == 1) 178 { 179 $linkidACCT = _isDBradius (); 180 if ($linkidACCT) 181 { 182 mysql_select_db($confManager->_config->nomBDradius, $linkidACCT); 183 $sqlACCT = "DELETE FROM ".$confManager->_config->tableBDradiusAcct." WHERE AcctTerminateCause <> '';"; 184 $resACCT = mysql_query ($sqlACCT, $linkidACCT); 185 if ($resACCT) 186 { 187 mysql_free_result($resACCT); 188 mosRedirect("index2.php?option=$option&task=listasradius", _ASR_CLEANACCT_OK); 189 } 190 else 191 { 192 mosRedirect("index2.php?option=$option&task=listasradius", _ASR_CLEANACCT_ERROR); 193 } 194 } 195 } 196 else 197 { 198 mosRedirect( "index2.php?option=$option&task=showconfig", _ASR_ALLOW_NOACTIVE_RADIUS ); 199 } 200 } 201 202 function showCleanAllAcct($option) 203 /** 204 * SE : Appel la page de confirmation, puis efface tous les enregistrements 205 * d'accounting de la table radacct de freeradius 206 * pour ceux dont la connexion est active. 207 * SI : Realise cette operation si on ne travail pas en mode simulation 208 * et si le serveur radius est accesssible. 209 */ 210 { 211 global $confManager; 212 213 if ($confManager->_config->allowActiveRadius == 1 && $confManager->isRadiusResponse ()) { 214 $lists = array (); 215 $lists['areyousure'] = mosHTML :: yesnoRadioList('areyousure', '', '0'); 216 HTML_asradius :: cleanAllAcct($lists, $option); 217 } 218 } 219 220 function traiteCleanAllAcct($option) 221 /** 222 * SE : Efface tous les enregistrements d'accounting de la table radacct de freeradius 223 * pour ceux dont la connexion est active. 224 * SI : Realise cette operation si on ne travail pas en mode simulation 225 */ 226 { 227 global $tools, $confManager; 228 229 $lists = array (); 230 231 foreach ($_POST as $key => $value) { 232 /* On recupere la liste du tableau nomme venant du post $lists['cliprenom'], etc */ 233 $lists[$key] = $value; 234 } 235 236 /* Verification de securite des champs saisie par l'utilisateur */ 237 $tools->entry_correct ($lists, TRUE ); 238 239 240 if ($lists['areyousure'] == 1) 241 { 242 if ($confManager->_config->allowActiveRadius == 1 && $confManager->isRadiusResponse ()) 243 { 244 $linkidACCT = _isDBradius (); 245 if ($linkidACCT) 246 { 247 mysql_select_db($confManager->_config->nomBDradius, $linkidACCT); 248 $sqlACCT = "DELETE FROM ".$confManager->_config->tableBDradiusAcct." WHERE AcctTerminateCause = '';"; 249 $resACCT = mysql_query ($sqlACCT, $linkidACCT); 250 if ($resACCT) 251 { 252 mysql_free_result($resACCT); 253 mosRedirect("index2.php?option=$option&task=listasradius", _ASR_CLEANALLACCT_OK); 254 } 255 else 256 { 257 mosRedirect("index2.php?option=$option&task=showconfig", _ASR_CLEANALLACCT_ERROR); 258 } 259 } 260 else 261 { 262 mosRedirect("index2.php?option=$option&task=showconfig", _ASR_CLEANALLACCT_ERROR); 263 } 264 } 265 else 266 { 267 mosRedirect( "index2.php?option=$option&task=showconfig", _ASR_ALLOW_NOACTIVE_RADIUS ); 268 } 269 } 270 else 271 { 272 mosRedirect("index2.php?option=$option&task=listasradius", _ASR_CLEANALLACCT_ABORT); 273 } 149 274 } 150 275 … … 235 360 if ($confManager->saveConfig()) { 236 361 if ($confManager->isRadiusResponse ()) { 237 mosRedirect("index2.php?option=$option&task=show Config", _ASR_CONFIG_UPDATED);362 mosRedirect("index2.php?option=$option&task=showconfig", _ASR_CONFIG_UPDATED); 238 363 } else { 239 mosRedirect("index2.php?option=$option&task=show Config", _ASR_CONFIG_ERROR_RADIUS);364 mosRedirect("index2.php?option=$option&task=showconfig", _ASR_CONFIG_ERROR_RADIUS); 240 365 } 241 366 } else { 242 mosRedirect("index2.php?option=$option&task=show Config", _ASR_CONFIG_ERROR);367 mosRedirect("index2.php?option=$option&task=showconfig", _ASR_CONFIG_ERROR); 243 368 } 244 369 } … … 366 491 mosRedirect("index2.php?option=$option&task=listasradius", _ASR_CLIENT_UPDATED); 367 492 } else { 368 mosRedirect("index2.php?option=$option&task= listasradius", _ASR_BD_ERROR);493 mosRedirect("index2.php?option=$option&task=showconfig", _ASR_BD_ERROR); 369 494 } 370 495 } … … 390 515 * clitype = 1 ---> mode manuel (saisie des login/pass et de la MAC). 391 516 * clitype = 2 ---> mode superviseur (saisie des login/pass) 517 * clitype = 3 ---> mode fantome (saisie des login/pass) considere comme un mode 1 cache 392 518 */ 393 519 { … … 465 591 } 466 592 467 468 593 /* Seul le SU peut s'editer et ceux de privileges inferieurs */ 469 594 if ($traiteok == 1) … … 473 598 else 474 599 { 475 mosRedirect( "index2.php?option=$option&task=show Config", '1' . _ASR_TOOL_DENIED );600 mosRedirect( "index2.php?option=$option&task=showconfig", '1' . _ASR_TOOL_DENIED ); 476 601 } 477 602 } … … 545 670 $lists['use_pagination'] = $use_pagination; 546 671 547 HTML_asradius:: showListasradius($lists, $rows, $pageNav, $search, $option);672 HTML_asradius::listasradius($lists, $rows, $pageNav, $search, $option); 548 673 } 549 674 … … 557 682 * typecli = 1 ---> mode manuel (saisie des login/pass et de la MAC). 558 683 * typecli = 2 ---> mode superviseur (saisie des login/pass) 684 * clitype = 3 ---> mode fantome (saisie des login/pass) 559 685 */ 560 686 { … … 643 769 } else /* if ($confManager->_config->allowActiveRadius != 1) */ 644 770 { 645 mosRedirect( "index2.php?option=$option&task=show Config", _ASR_ALLOW_NOACTIVE_RADIUS );771 mosRedirect( "index2.php?option=$option&task=showconfig", _ASR_ALLOW_NOACTIVE_RADIUS ); 646 772 } 647 773 } else /* if (($traiteok == 1) && */ … … 652 778 if ($opdenied > 0) 653 779 { 654 mosRedirect( "index2.php?option=$option&task=show Config", $opdenied . _ASR_TOOL_DENIED );780 mosRedirect( "index2.php?option=$option&task=showconfig", $opdenied . _ASR_TOOL_DENIED ); 655 781 } 656 782 } /* if (count( $cid )) */ … … 1182 1308 } else /* if ($confManager->_config->allowActiveRadius != 1) */ 1183 1309 { 1184 mosRedirect( "index2.php?option=$option&task=show Config", _ASR_ALLOW_NOACTIVE_RADIUS );1310 mosRedirect( "index2.php?option=$option&task=showconfig", _ASR_ALLOW_NOACTIVE_RADIUS ); 1185 1311 } 1186 1312 } else /* if (($traiteok == 1) && */ … … 1198 1324 if ($opdenied > 0) 1199 1325 { 1200 mosRedirect( "index2.php?option=$option&task=show Config", $opdenied . _ASR_TOOL_DENIED );1326 mosRedirect( "index2.php?option=$option&task=showconfig", $opdenied . _ASR_TOOL_DENIED ); 1201 1327 } 1202 1328 … … 1233 1359 $coderetour = traiteSyncStatusasRadius ($cid); 1234 1360 } else { 1235 mosRedirect( "index2.php?option=$option&task=show Config", _ASR_ALLOW_NOACTIVE_RADIUS );1361 mosRedirect( "index2.php?option=$option&task=showconfig", _ASR_ALLOW_NOACTIVE_RADIUS ); 1236 1362 } 1237 1363 } … … 1269 1395 $coderetour = traiteChangeCheckMac ($cid, $activer); 1270 1396 } else { 1271 mosRedirect( "index2.php?option=$option&task=show Config", _ASR_ALLOW_NOACTIVE_RADIUS );1397 mosRedirect( "index2.php?option=$option&task=showconfig", _ASR_ALLOW_NOACTIVE_RADIUS ); 1272 1398 } 1273 1399 } trunk/asradius.config.php
r38 r63 43 43 // Derniere modification le : Thu, 2008-May-22 11:38 44 44 // par : admin 45 var $version = "1.5. 1.1";45 var $version = "1.5.2.1"; 46 46 var $phase = "alpha"; 47 47 var $authorMail = "thierry@airmesh.eu"; trunk/asradius.html.php
r60 r63 281 281 * clitype = 1 ---> mode manuel (saisie des login/pass et de la MAC). 282 282 * clitype = 2 ---> mode superviseur (saisie des login/pass) 283 * clitype = 3 ---> mode manuel fantome (saisie des login/pass) 283 284 284 285 */ trunk/asradius.xml
r38 r63 8 8 <authorEmail>thierry@airmesh.eu</authorEmail> 9 9 <authorUrl>www.airmesh.eu</authorUrl> 10 <version>1.5. 1.1</version>10 <version>1.5.2.1</version> 11 11 <installfile>install.asradius.php</installfile> 12 12 <uninstallfile>uninstall.asradius.php</uninstallfile> trunk/changelog.txt
r60 r63 35 35 */ 36 36 37 _________________________________________________________________________ 38 5 Septembre 2008 39 40 Refactorisation sommaire du code 41 Ajout de 2 fonctionnalites : 42 1/ Nettoyer les accountings abonnes (non connectes) 43 2/ Supprimer les accountings abonnes (connecte) avec formulaire de confirmation. 44 _________________________________________________________________________ 37 45 17 aout 2008 38 46 trunk/lang/admin.french.php
r48 r63 39 39 // no direct access 40 40 defined( '_VALID_MOS' ) or die( 'Accès refusé' ); 41 42 define('_ASR_TOOL_CLEANACCT', 'Nettoyer accounting'); 43 define('_ASR_TOOL_CLEANALLACCT', 'Vider accounting'); 44 45 define('_ASR_CLEANALLACCT', 'Suppression des accountings'); 46 define('_ASR_CLEANALLACCT_RESUME', 'ATTENTION, cette opération supprime l\'ensemble des accountings des abonnés connectés à votre réseau !'); 47 define('_ASR_CLEANALLACCT_SECTION', 'Détails de l\'opération'); 48 define('_ASR_CLEANALLACCT_SECTION_DESC', ' 49 <ul> 50 <li>Assurez vous qu\'aucun abonné n\'est actif 51 sur chaque émetteur de votre réseau. Vous pouvez alors valider cette opération. 52 Cela synchronisera votre liste d\'abonnés sur le composant.</li> 53 <li>Si vous avez des abonnés connectés (sur fond vert) dans la liste, et que ceux-çi ne sont pas actifs sur vos émetteurs, 54 vous désirez supprimer ces incohérences provoquées par un mauvais paramétrages de vos émetteurs. 55 Vous êtes conscient que cela aura également comme conséquence de désynchroniser tous les abonnés actifs sur vos émetteurs 56 et ceux connectés (sur fond vert) dans votre liste d\'abonnés sur votre composant. La synchronisation ne se fera que lorsque les abonnés 57 se déconnecteront de leur émetteur respectif, et se reconnecteront. Validez alors cette opération 58 dans le pire des cas.</li> 59 <li>Dans tous les autres cas, ne validez pas cette opération.</li> 60 </ul> 61 '); 62 define('_ASR_CLEANALLACCT_SECTION_AREYOUSURE', 'Etes vous sur de vouloir valider cette opération en cliquant sur le bouton Sauver ?'); 63 define('_ASR_CLEANACCT_OK', 'Les informations d\'accounting de tous les abonnés ont été nettoyé, sauf celles de ceux qui sont connectés.'); 64 define('_ASR_CLEANACCT_ERROR', 'Imposssible de nettoyer les accountings des abonnés: Erreur d\'accès au serveur d\'authentification !'); 65 define('_ASR_CLEANALLACCT_OK', 'Toutes les informations d\'accounting des abonnés connectés ont été supprimé !!!'); 66 define('_ASR_CLEANALLACCT_ERROR', 'Imposssible de supprimer les accountings des abonnés: Erreur d\'accès au serveur d\'authentification !'); 67 define('_ASR_CLEANALLACCT_ABORT', 'Cette opération de suppression des accountings des abonnés a été abandonné. Aucune modification effectuée.'); 41 68 42 69 define('_ASR_TOOL_SYNC', 'Synchro'); trunk/toolbar.asradius.html.php
r32 r63 54 54 { 55 55 mosMenuBar::startTable(); 56 mosMenuBar::custom( 'showConfig', 'tool.png', 'tool_f2.png', _ASR_TOOL_CONFIG, false );57 mosMenuBar::spacer();58 56 mosMenuBar::custom( 'listasradius', 'copy.png', 'copy_f2.png', _ASR_TOOL_LIST, false ); 59 mosMenuBar::spacer();60 mosMenuBar::custom( 'majasradius', 'search.png', 'search_f2.png', _ASR_TOOL_MAJ, false );61 57 mosMenuBar::spacer(); 62 58 mosMenuBar::endTable(); … … 70 66 { 71 67 mosMenuBar::startTable(); 72 mosMenuBar::customX( 'show Config', 'tool.png', 'tool_f2.png', _ASR_TOOL_CONFIG, false );68 mosMenuBar::customX( 'showconfig', 'tool.png', 'tool_f2.png', _ASR_TOOL_CONFIG, false ); 73 69 mosMenuBar::spacer(); 74 70 mosMenuBar::custom( 'listasradius', 'copy.png', 'copy_f2.png', _ASR_TOOL_LIST, false ); 75 71 mosMenuBar::spacer(); 76 mosMenuBar::custom ( 'majasradius', 'search.png', 'search_f2.png', _ASR_TOOL_MAJ, false );72 mosMenuBar::customX( 'majasradius', 'search.png', 'search_f2.png', _ASR_TOOL_MAJ, false ); 77 73 mosMenuBar::spacer(); 78 74 mosMenuBar::endTable(); 79 75 } 80 76 77 function _CLEANALLACCT() 78 /** 79 * SE : Choix de la page CleanAllAcct 80 * SI : 81 */ 82 { 83 mosMenuBar::startTable(); 84 mosMenuBar::save( 'savecleanallacct' ); 85 mosMenuBar::spacer(); 86 mosMenuBar::custom( 'listasradius', 'copy.png', 'copy_f2.png', _ASR_TOOL_LIST, false ); 87 mosMenuBar::spacer(); 88 mosMenuBar::endTable(); 89 } 90 81 91 function _EDITCONFIG() 82 92 /** … … 86 96 { 87 97 mosMenuBar::startTable(); 88 mosMenuBar::save( 'save Config' );98 mosMenuBar::save( 'saveconfig' ); 89 99 mosMenuBar::spacer(); 90 100 mosMenuBar::custom( 'listasradius', 'copy.png', 'copy_f2.png', _ASR_TOOL_LIST, false ); 91 101 mosMenuBar::spacer(); 92 mosMenuBar::custom ( 'majasradius', 'search.png', 'search_f2.png', _ASR_TOOL_MAJ, false );102 mosMenuBar::customX( 'majasradius', 'search.png', 'search_f2.png', _ASR_TOOL_MAJ, false ); 93 103 mosMenuBar::spacer(); 94 104 mosMenuBar::endTable(); … … 102 112 { 103 113 mosMenuBar::startTable(); 104 mosMenuBar::save( 'save Client' );114 mosMenuBar::save( 'saveclient' ); 105 115 mosMenuBar::spacer(); 106 116 mosMenuBar::cancel(); … … 119 129 mosMenuBar::startTable(); 120 130 mosMenuBar::spacer(); 121 mosMenuBar::custom ( 'majasradius', 'search.png', 'search_f2.png', _ASR_TOOL_MAJ, false );131 mosMenuBar::customX( 'majasradius', 'search.png', 'search_f2.png', _ASR_TOOL_MAJ, false ); 122 132 mosMenuBar::spacer(); 123 133 if ($my->usertype == 'Super Administrator') { 134 mosMenuBar::customX( 'cleanallacct', 'configuration.png', 'configuration_f2.png', _ASR_TOOL_CLEANALLACCT, false ); 135 mosMenuBar::spacer(); 136 mosMenuBar::custom( 'cleanacct', 'configuration.png', 'configuration_f2.png', _ASR_TOOL_CLEANACCT, false ); 137 mosMenuBar::spacer(); 124 138 mosMenuBar::custom( 'sync', 'download.png', 'download_f2.png', _ASR_TOOL_SYNC, true ); 125 139 mosMenuBar::spacer(); … … 135 149 mosMenuBar::custom( 'reset', 'reload.png', 'reload_f2.png', _ASR_TOOL_RESET, true ); 136 150 mosMenuBar::spacer(); 137 mosMenuBar::customX( 'edit Client', 'edit.png', 'edit_f2.png', _ASR_TOOL_EDIT, true );151 mosMenuBar::customX( 'editclient', 'edit.png', 'edit_f2.png', _ASR_TOOL_EDIT, true ); 138 152 mosMenuBar::spacer(); 139 153 mosMenuBar::deleteList(); 140 154 mosMenuBar::spacer(); 141 mosMenuBar::customX( 'show Config', 'tool.png', 'tool_f2.png', _ASR_TOOL_CONFIG, false );155 mosMenuBar::customX( 'showconfig', 'tool.png', 'tool_f2.png', _ASR_TOOL_CONFIG, false ); 142 156 mosMenuBar::spacer(); 143 157 mosMenuBar::custom( 'listasradius', 'copy.png', 'copy_f2.png', _ASR_TOOL_LIST, false ); trunk/toolbar.asradius.php
r2 r63 56 56 break; 57 57 58 case 'cleanallacct' : 59 TOOLBAR_asradius::_CLEANALLACCT(); 60 break; 61 58 62 case 'majasradius' : 59 63 TOOLBAR_asradius::_MAJ(); 60 64 break; 61 65 62 case 'show Config' :66 case 'showconfig' : 63 67 TOOLBAR_asradius::_EDITCONFIG(); 64 68 break; 65 69 66 case 'edit Client' :70 case 'editclient' : 67 71 TOOLBAR_asradius::_EDITCLIENT(); 68 72 break;
