if ($_GET['bannew'] == 4 || $_GET['bannew'] == 5) { crime('recordaction', $member['uid'], $_GET['bannew'] == 4 ? 'crime_banspeak' : 'crime_banvisit', $reason); } acpmsg('modcp_member_ban_succeed', "{$cpscript}?mod=modcp&action={$_GET['action']}&op={$op}"); } } elseif ($op == 'ipban' && $_G['group']['allowbanip']) { require_once libfile('function/misc'); $iptoban = getgpc('ip') ? dhtmlspecialchars(explode('.', getgpc('ip'))) : array('', '', '', ''); $updatecheck = $addcheck = $deletecheck = $adderror = 0; if (submitcheck('ipbansubmit')) { $_GET['delete'] = isset($_GET['delete']) ? $_GET['delete'] : ''; if ($_GET['delete']) { $deletecheck = C::t('common_banned')->delete_by_id($_GET['delete'], $_G['adminid'], $_G['username']); } if ($_GET['ip1new'] != '' && $_GET['ip2new'] != '' && $_GET['ip3new'] != '' && $_GET['ip4new'] != '') { $addcheck = ipbanadd($_GET['ip1new'], $_GET['ip2new'], $_GET['ip3new'], $_GET['ip4new'], $_GET['validitynew'], $adderror); if (!$addcheck) { $iptoban = array($_GET['ip1new'], $_GET['ip2new'], $_GET['ip3new'], $_GET['ip4new']); } } if (!empty($_GET['expirationnew']) && is_array($_GET['expirationnew'])) { foreach ($_GET['expirationnew'] as $id => $expiration) { if ($expiration == intval($expiration)) { $expiration = $expiration > 1 ? TIMESTAMP + $expiration * 86400 : TIMESTAMP + 86400; $updatecheck = C::t('common_banned')->update_expiration_by_id($id, $expiration, $_G['adminid'], $_G['username']); } } } if ($deletecheck || $addcheck || $updatecheck) { require_once libfile('function/cache'); updatecache('ipbanned');
} DB::query("UPDATE " . DB::table('common_member_field_forum') . " SET groupterms='" . ($member['groupterms'] ? addslashes(serialize($member['groupterms'])) : '') . "' WHERE uid='{$member['uid']}'"); acpmsg('modcp_member_ban_succeed', "{$cpscript}?mod=modcp&action={$_G['gp_action']}&op={$op}"); } } elseif ($op == 'ipban' && $_G['group']['allowbanip']) { require_once libfile('function/misc'); $iptoban = getgpc('ip') ? dhtmlspecialchars(explode('.', getgpc('ip'))) : array('', '', '', ''); $updatecheck = $addcheck = $deletecheck = $adderror = 0; if (submitcheck('ipbansubmit')) { $_G['gp_delete'] = isset($_G['gp_delete']) ? $_G['gp_delete'] : ''; if ($ids = dimplode($_G['gp_delete'])) { DB::query("DELETE FROM " . DB::table('common_banned') . " WHERE id IN ({$ids}) AND ('{$_G['adminid']}'='1' OR admin='{$_G['username']}')"); $deletecheck = DB::affected_rows(); } if ($_G['gp_ip1new'] != '' && $_G['gp_ip2new'] != '' && $_G['gp_ip3new'] != '' && $_G['gp_ip4new'] != '') { $addcheck = ipbanadd($_G['gp_ip1new'], $_G['gp_ip2new'], $_G['gp_ip3new'], $_G['gp_ip4new'], $_G['gp_validitynew'], $adderror); if (!$addcheck) { $iptoban = array($_G['gp_ip1new'], $_G['gp_ip2new'], $_G['gp_ip3new'], $_G['gp_ip4new']); } } if (!empty($_G['gp_expirationnew']) && is_array($_G['gp_expirationnew'])) { foreach ($_G['gp_expirationnew'] as $id => $expiration) { if ($expiration == intval($expiration)) { $expiration = $expiration > 1 ? TIMESTAMP + $expiration * 86400 : TIMESTAMP + 86400; DB::query("UPDATE " . DB::table('common_banned') . " SET expiration='{$expiration}' WHERE id='{$id}' AND ('{$_G['adminid']}'='1' OR admin='{$_G['username']}')"); empty($updatecheck) && ($updatecheck = DB::affected_rows()); } } } if ($deletecheck || $addcheck || $updatecheck) { require_once libfile('function/cache');
} elseif($op == "ipban" && $allowbanip) { require_once DISCUZ_ROOT.'./include/misc.func.php'; $iptoban = isset($ip) ? dhtmlspecialchars(explode('.', $ip)) : array('','','',''); $updatecheck = $addcheck = $deletecheck = $adderror = 0; if(submitcheck('ipbansubmit')) { if($ids = implodeids($delete)) { $db->query("DELETE FROM {$tablepre}banned WHERE id IN ($ids) AND ('$adminid'='1' OR admin='$discuz_user')"); $deletecheck = $db->affected_rows(); } if($ip1new != '' && $ip2new != '' && $ip3new != '' && $ip4new != '') { $addcheck = ipbanadd($ip1new, $ip2new, $ip3new, $ip4new, $validitynew, $adderror); if(!$addcheck) { $iptoban = array($ip1new, $ip2new, $ip3new, $ip4new); } } if(!empty($expirationnew) && is_array($expirationnew)) { foreach($expirationnew as $id => $expiration) { $db->query("UPDATE {$tablepre}banned SET expiration='".strtotime($expiration)."' WHERE id='$id' AND ('$adminid'='1' OR admin='$discuz_user')"); empty($updatecheck) && $updatecheck = $db->affected_rows(); } } if($deletecheck || $addcheck || $updatecheck) { require_once(DISCUZ_ROOT.'./include/cache.func.php'); updatecache('ipbanned');