func_combine_css(array('id'=>'dst','path'=>ANTIASPI_PATH.'antiaspi.css')); $tabsheet = new tabsheet(); $tabsheet->add('ipban', ' '.l10n('IP addresses'), ANTIASPI_ADMIN . '-ipban'); $tabsheet->add('ipconfig', ' '.l10n('Configuration'), ANTIASPI_ADMIN . '-ipconfig '); $tabsheet->select($page['tab']); $tabsheet->assign(); if ('ipban' == $page['tab']) { $template->assign( 'ipbangest', array( 'A' => 'a', ) ); $query = ' SELECT *, IF (date > SUBTIME(NOW(), "'.$conf['antiaspi']['banned during'].'"), "active", "deprecated") AS status FROM '.ANTIASPI_TABLE.' ORDER BY id DESC ;'; $ipban = pwg_query($query); $antiaspi = safe_unserialize($conf['antiaspi']); $admin_base_url = ANTIASPI_ADMIN . '-ipban'; if (pwg_db_num_rows($ipban)) { while ($ipban2 = pwg_db_fetch_assoc($ipban)) { $items = array( 'ID' => $ipban2['id'], 'IP' => $ipban2['ip'], 'DATE' => $ipban2['date'], 'STATUS' => $ipban2['status'], 'STATUS_LABEL' => l10n('status-'.$ipban2['status']), 'U_DELETE' => $admin_base_url . '&delete=' . $ipban2['id'], ); $template->append('ipban2', $items); } } if (isset($_GET['delete'])) { check_input_parameter('delete', $_GET, false, PATTERN_ID); $query = 'DELETE FROM ' . ANTIASPI_TABLE . ' WHERE id = ' . $_GET['delete'] . ';'; pwg_query($query); $_SESSION['page_infos'] = array(l10n('IP ban deleted')); redirect($admin_base_url); } if (isset($_POST['submitdeleteall'])) { $query = 'DELETE FROM ' . ANTIASPI_TABLE . ';'; pwg_query($query); redirect($admin_base_url); } if (isset($_POST['submitdeletedeprecated'])) { $query = 'DELETE FROM ' . ANTIASPI_TABLE . ' WHERE date < ADDTIME(NOW(), "-' . $antiaspi['banned during'] . '");'; pwg_query($query); redirect($admin_base_url); } $i = 0; while ($i < count($antiaspi['allowed ip'])) { $items = array( 'IP' => $antiaspi['allowed ip'][$i], 'U_DELETE' => $admin_base_url . '&deleteallowed='.$i , ); $template->append('allowip', $items); $i++; } if (isset($_POST['submitaddipallowed'])) { $i = 0; while ($i < count($antiaspi['allowed ip'])) { if ($_POST['insipallowed']==$antiaspi['allowed ip'][$i]) { $_SESSION['page_errors'] = array(l10n('IP already allowed')); redirect($admin_base_url); } $i++; } $antiaspi['allowed ip'][] = $_POST['insipallowed']; conf_update_param('antiaspi', $antiaspi, true); redirect($admin_base_url); } if (isset($_GET['deleteallowed'])) { check_input_parameter('deleteallowed', $_GET, false, PATTERN_ID); unset($antiaspi['allowed ip'][ $_GET['deleteallowed'] ]); $antiaspi['allowed ip'] = array_values($antiaspi['allowed ip']); conf_update_param('antiaspi', $antiaspi); redirect($admin_base_url); } } if ('ipconfig' == $page['tab']) { antiaspi_check_old_conf(); $admin_base_url = ANTIASPI_ADMIN . '-ipconfig'; $antiaspi = safe_unserialize($conf['antiaspi']); $diff = explode(" pages in ", $antiaspi['diff']); $tempsdiff= explode(":", $diff[1]); $tempsdiffsec=$tempsdiff[2]+($tempsdiff[1]*60)+($tempsdiff[0]*60*60); $same = explode(" pages in ", $antiaspi['same']); $tempssame= explode(":", $same[1]); $tempssamesec=$tempssame[2]+($tempssame[1]*60)+($tempssame[0]*60*60); $template->assign( 'ipconfiggest', array( 'DIFFA' => $diff[0], 'DIFFB' => $tempsdiffsec, 'SAMEA' => $same[0], 'SAMEB' => $tempssamesec, 'ONLYGUEST' => $antiaspi['only guest'], 'ONLYPICTURE' => $antiaspi['only picture'], ) ); if (isset($_POST['submitconfban'])) { /*$time = date('h:i:s', $_POST['insdiffb']); revoir fonction date HS ?*/ $antiaspi['diff'] = $_POST['insdiffa'].' pages in '.date('00:i:s', ($_POST['insdiffb'])); $antiaspi['same'] = $_POST['inssamea'].' pages in '.date('00:i:s', ($_POST['inssameb'])); $antiaspi['only guest'] = isset($_POST['insonlyguest']); $antiaspi['only picture'] = isset($_POST['insonlypicture']); conf_update_param('antiaspi', $antiaspi); redirect($admin_base_url); } } $template->set_filenames(array('plugin_admin_content' => dirname(__FILE__) . '/admin.tpl')); $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content'); ?>